ОПТИМИЗАЦИЯ КОНФИГУРИРОВАНИЯ И РАСПРЕДЕЛЕНИЯ ЗАКАЗОВ ВИРТУАЛЬНОГО ПРЕДПРИЯТИЯ
А.А. Саломатина, Ю.Н. Фомина Научный руководитель - к.т.н., доцент Е.И. Яблочников
Оптимизация распределения заказов при конфигурировании виртуальных предприятий - задача, заслуживающая отдельного внимания. Авторами предлагается решение на основе использования генетических алгоритмов и мультиагентных технологий. В настоящее время проводятся практические исследования данной методики.
Одним из основных этапов создания промышленных изделий является технологическая подготовка производства (ТПП). Недостаточная оснащенность проектирования и производства, а также отсутствие кооперации с другими предприятиями при решении задач ТПП приводит к увеличению сроков запуска новых изделий в производство, неоправданно высоким затратам и снижению качества изделия [1]. Выход из сложившейся ситуации видится в изменении традиционных форм ведения бизнеса, а именно - в переходе к передовым формам кооперации - виртуальным предприятиям (ВП).
В основе функционирования ВП лежит поиск наиболее выгодных и надежных партнеров для производства требуемых изделий. Оптимальное распределение заказов на выполнение работ (проектирование и изготовление нестандартного оборудования, средств технологического оснащения, проектирование различных видов технологических процессов, выполнение определенных технологических операций и др.) зависит не только от выбора исполнителей, но и от того, как сформированы пакеты заказов на выполнение задач ТПП. Задачи анализа ресурсов и загрузки мощностей предприятия с точки зрения эффективности выполнения заказов, также как и задачи формирования пакетов заказов и выбора исполнителей, не имеют универсальных методов решения, поскольку должны в большой степени опираться на специфику рассматриваемой предметной области. В настоящее время пока не найдены методы решения подобных задач для различных работ ТПП. Целью исследования в данном случае является разработка методов оптимизации конфигурирования и распределения заказов при решении задач ТПП в среде ВП на основе использования:
• многоагентных технологий,
• генетического алгоритма.
Многоагентные технологии характеризуются множественными решениями, применяются для динамического управления сетевыми ресурсами. Известно, что мультиа-гентные технологии обладают рядом преимуществ по сравнению с другими способами организации распределенных вычислений. Несмотря на это, разрабатывать методологию на основе использования исключительно этого подхода не представляется возможным. Одна из основных проблем заключается в том, что для сложных изделий число возможных вариантов комплектования заказов на ТПП может быть достаточно велико. При этом оптимальное распределение заказов зависит как от выбора варианта комплектования, так и от выбора исполнителей.
Не секрет, что сложные задачи проще решаются, если представить их в виде ряда более простых задач. Для решения проблемы оптимизации распределения заказов необходимо найти ответы на следующие вопросы.
1. Каким образом потенциальные исполнители узнают о поступившем заказе?
2. Как определить потенциальных исполнителей заказов?
3. Каким образом сформировать пакеты заказов?
4. На основании каких критериев оптимизации необходимо сделать выбор в пользу тех или иных исполнителей?
Функционирование ВП подразумевает работу всех участников в едином информационном пространстве и наличие открытой информационной среды, где каждый сотрудник может свободно пользоваться необходимой информацией о реализуемых проектах и потенциальных исполнителях. В качестве базового инструмента построения единого информационного пространства была выбрана PDM SmarTeam. Здесь не приводится сравнительная характеристика систем класса PDM, поскольку это не является основной задачей данного исследования.
Итак, после того, как головная компания получает заказ, она должна каким-то образом оповестить всех участников ВП. Для решения поставленной задачи предлагается использовать средства Internet. С целью обеспечения информационной целостности представления данных необходимо в PDM-системе реализовать процесс регистрации потенциальных подрядчиков. Помимо этого, требуется определить, какого рода информацию головная компания (или, как ее еще называют в современной литературе, компания-медиатор или OEM-предприятие) должна передать потенциальным исполнителям. Если поместить заказ в первоначальном виде, то может уйти достаточно большое количество времени на анализ всех поступивших предложений от участников и выбор оптимального исполнителя. Предлагается использовать другой подход [2]. Допустим, компания-медиатор получает заказ на изготовление определенного изделия. Тогда на каждый элемент этого изделия специалистами создается ресурсо-независимый технологический процесс (РНТП), который, в свою очередь, детализируется (любая операция РНТП может содержать одну или более заявку на выполнение работ по ТПП на другом предприятии). После этого информация о заказах в таком виде размещается на сайте компании. Идентификационные параметры заказа фиксируются в паспорте «Заказа». Кроме этого, всем участникам, которые способны выполнить заявку, рассылаются уведомления о поступлении нового заказа. Этому предшествует анализ возможностей потенциальных исполнителей на основе той информации, которую участники представили в своем профиле открытой информационной среды. Это, прежде всего, те виды работ, которые способны выполнить предприятия. Очевидно, что число таких участников может быть огромным, поэтому для экономии времени предполагается, что анализ информации об участнике будет выполнять агент в виде программного модуля PDM-системы. В связи с этим требуется предопределить атрибут кода работ в соответствующих классах PDM-системы. Таким образом, получается, что после того, как на предприятии определился пакет заказов на ТПП для субподрядчиков, этот факт фиксируется в PDM-системе как некоторое событие Si, приводящее агентов класса А в активное состояние. То есть выходит, что каждый заказ обрабатывается своим агентом. Каждый агент на основании анализа видов выполняемых предприятиями работ рассылает им уведомления. Общая схема формирования заказа представлена на рис. i.
Другой вопрос, что сформировать РНТП можно различными способами, чем и объясняется многовариантность ТПП. В распределенной производственной среде проектировщик создает универсальный технологический процесс, поскольку не обладает информацией о конкретных доступных возможностях, ресурсах и мощностях потенциальных исполнителей.
Изучив информацию на сайте компании-медиатора, участники предоставляют сведения, на основании которых они готовы выполнить заказ (рис. 2). Это, прежде всего, стоимость выполнения заказа, сроки реализации, используемое оборудование и его текущая загрузка. При истечении определенного промежутка времени агент собирает всю информацию по откликнувшимся исполнителям и составляет сводную ведомость.
Здесь уже возникает следующий вопрос: каким образом разместить заказ, чтобы получить максимальную прибыль? Для этого требуется оценить каждого производителя, опираясь на полученные в ответ предложения об участии. Таких предложений может быть достаточно много, при этом вариантов комплектования - еще больше. Для
сложных изделий число задач ТПП может составлять несколько тысяч. Однако даже в случае несколько сотен задач очевидно, что число возможных вариантов пакетов заказов настолько велико, что задача оптимизации не может быть решена путем простого перебора всех этих вариантов.
нел-
Рис. 1. Формирование заказа
Рис. 2. Атрибуты класса «Предложение»
Как показывает анализ, наибольший экономический эффект при оптимизации распределения заказов достигается за счет использования так называемых генетических алгоритмов. Генетический алгоритм (ГА) - это адаптивный метод функциональной оптимизации, основанный на компьютерном моделировании. Исследование алгоритмов распределения и оптимизации заказов при решении задач ТПП нашло свое отражение в работе [3], в которой представлена методика решения «задачи коммивояжера» с использованием генетических алгоритмов.
ГА представляет собой метод оптимизации, основанный на концепциях естественного отбора и генетики. В этом подходе переменные, характеризующие решение, представлены в виде ген и хромосом. Предлагается на основе анализа поступивших предложений сформировать различные варианты размещения заказа или, используя терминологию ГА, образовать популяцию особей. Затем оценить каждый вариант, т.е. рассчитать целевую функцию особей и популяции в целом. В качестве критериев оценки можно использовать время (ТШсп) и стоимость (СМисп) выполнения заказа, которые
предлагают потенциальные исполнители. Также в качестве критериев оценки могут быть приняты во внимание наличие опыта с данным производителем, используемые технологии и оборудование, наличие склада и др. Для упрощения представления целевой функции в качестве критериев оценки будем использовать только время и стоимость выполнения заказа. В результате функция будет выглядеть следующим образом:
РАл = Ю1 Х
С
С
- + ю2 Х
т
-1 л.
Лшсп
т
Лшсп
т
Л1зак'> Л1зак
- соответственно, стои-
где ю1, ю2 - весовые коэффициенты (ю1 + ю2 = 1); С мость и время выполнения работ, оптимальные для заказчика.
После расчета целевой функции всех особей происходит их упорядочение по мере уменьшения значений этой функции. Затем выполняется выборка из популяции пары особей с наибольшими значениями целевой функции и составление из них комбинаций. Далее происходит опять расчет целевой функции и упорядочение вариантов. Конечно, чтобы избежать зацикливания или достаточно длительных расчетов, предлагается либо определить механизм выхода из цикла, либо задать конечное число итераций, либо же
максимальное время, которое будет отведено на выполнение расчетов. В ^^^^^ ^^^^^
Генетический Формирование Определение Упорядочение Выборка
Формирование начальной популяции
Определение приспособленности каждой особи популяции
вариантов по уменьшению значений целевой функции
родительской пары особей
Выполнение операции кроссинговера
Мутирование особей
Определение приспособляемости новых особей
Упорядочение вариантов по мере убывания целевой функции
О
Выполнено условие останова?
Да
О
Выбор варианта с наибольшим значением целевой функции
Рис. 3. Схема работы генетического алгоритма
Общая схема работы генетического алгоритма (рис. 3) выглядит следующим об-
разом.
(1) Формируется начальная популяция, т.е. массив решений некоторым образом заполняется конкретными решениями (особями). В частности, решения могут генерироваться случайным образом.
(2) Вычисляется приспособленность каждой особи популяции по ее признакам с использованием критериев. Чем лучше значение целевой функции обеспечивает особь, тем выше ее приспособленность.
(3) Особи ранжируются по критерию приспособленности. Из особей с наиболее высоким уровнем приспособленности отбирается определенное число родительских пар (минимум, одна пара).
(4) Выполняется операция кроссинговера, которая состоит в случайном выборе точки на хромосоме, относительно которой будет производиться скрещивание. При скрещивании часть новой особи до этой точки формируется за счет одного родителя, а часть после этой точки - за счет другого родителя.
(5) Новые особи с определенной вероятностью мутируют, т.е. происходит изменение на уровне одного из генов. Вероятность мутации обычно полагают равной порядка 1%.
(6) Вычисляется приспособляемость новых особей, после чего эти особи заменяют в популяции предыдущие наименее приспособленные особи. Очевидно, что если приспособляемость какой-либо новой особи ниже, чем приспособляемость старой, то это особь не попадает в популяцию.
(7) Если самое лучшее решение в популяции не признается удовлетворительным, то осуществляется переход к шагу 3 описанного алгоритма. Если же решение признано удовлетворительным, то алгоритм заканчивает работу.
После достижения критерия останова в качестве оптимального решения отбирается вариант, обладающий лучшим сочетанием интересующих нас качеств [4]. Далее инициируется работа следующего агента, функциями которого является формирование для заказчика «сводной ведомости», содержащей информацию по всем субподрядчикам, определенным для выполнения работ по ТПП данного изделия.
Таким образом, предполагается, что конфигурирование ВП должно осуществляться при помощи использования агентов и генетического алгоритма. На начальном этапе, когда нам требуется собрать сведения о потенциальных исполнителях и разослать уведомления, работу выполняет программный агент. Далее сам анализ происходит на основе использования генетического алгоритма. После выбора конечного производителя составляется сводная ведомость всех участников. В настоящее время проводится практические исследования применимости этой методики.
Литература
1. Зильбербург Л.И., Молочник В.И., Яблочников Е.И. Реинжиниринг и автоматизация технологической подготовки производства в машиностроении. - СПб: Политехника, 2004. - 152 с.
2. Фомина Ю.Н. Исследование алгоритмов оптимизации конфигурирования и распределения заказов при решении задач ТПП в среде виртуального предприятия // Научно-технический вестник СПбГУ ИТМО. - 2007. - Т. 28.
3. Фомина Ю.Н., Яблочников Е.И. Методы распределения заказов на выполнение ТПП в среде виртуального предприятия // Материалы конференции «Фундаментальные и прикладные проблемы надежности и диагностики машин и механизмов» ИПМАШ РАН. - СПб, 2007.
4. Романовский И.В. Алгоритмы решения экстремальных задач - М.: Наука, 1977. -352 с.