УДК 004.4'22:67.05
ПРИМЕНЕНИЕ МНОГОАГЕНТНЫХ ТЕХНОЛОГИЙ ДЛЯ РЕАЛИЗАЦИИ СИСТЕМЫ УПРАВЛЕНИЯ ВИРТУАЛЬНЫМ ПРЕДПРИЯТИЕМ М.Я. Афанасьев, А.А. Саломатина, Е.Е. Алёшина, Е.И. Яблочников
Рассматривается возможность применения многоагентных технологий для решения задачи анализа заказов на технологическую подготовку производства и выбор исполнителей. Предложена методика многоуровневой оценки условий реализации заказа предприятиями.
Ключевые слова: многоагентные технологии, интегрированная распределенная среда, анализ заказов, выбор исполнителей.
Введение
В процессе технологической подготовки производства (ТПП) приборов используется большой объем информации, применяются различные инструментальные средства и информационные системы. В условиях кооперации предприятий успех проекта зависит от действий всех участников виртуального предприятия (ВП). Отсутствие централизованного управления данными, процессами и специалистами организаций приведет к возникновению неопределенностей по многим показателям (и, как следствие, к увеличению рисков), будет препятствовать эффективному комплексному решению всех задач подготовки производства.
Одной из основных задач системы управления ВП является задача анализа заказа и выбора исполнителей. Реализация методики поиска исполнителей, предложенной в [1], характеризуется множественными решениями и потребует значительного времени, если будет осуществляться исключительно силами специалиста. Для таких задач целесообразно использовать многоагентные технологии, применяемые для динамического управления сетевыми ресурсами, которые имеют преимущества при использовании их в распределенной среде [2]. Предлагается методика выбора исполнителей для решения задач ТПП на основе использования многоагентных технологий.
Выявление функций агентов многоагентной системы
Применительно к решению задачи конфигурирования ВП для поиска исполнителей на программные агенты целесообразно переложить следующие задачи:
- анализ услуг и ресурсов предприятий для поиска потенциальных исполнителей;
- упорядочивание предприятий по «привлекательности» условий реализации заказа для координационного центра.
Рассмотрим принципы построения многоагентной системы (МАС), позволяющей решать указанные задачи на основе децентрализованного управления.
Результатом решения первой задачи должен стать список предприятий, предлагаемые услуги которых соответствуют требованиям заказа. Для этого предлагается поиск исполнителей осуществлять по сопоставлению кодов заказов и кодов услуг, а также на основе анализа требований заказа и характеристик ресурсов компаний. Формализация последовательности данных действий позволит разработать метод для программного агента, по которому последний будет осуществлять преобразование входных данных, а именно - характеристики заказа, в выходную информацию в виде списка предприятия. В основе разрабатываемого метода программного агента лежит алгоритм анализа заказа [1], для уточнения которого необходимо определить функции программного агента. Данный агент, которого условно назовем А, предназначен для выявления круга потенциальных исполнителей для некой работы по ТПП и рассылки им уведомлений о появлении нового заказа. При получении такого сообщения предприятие-партнер может ознакомиться с более подробной информацией о предлагаемой работе на сайте компании-заказчика. Тем самым такой вид агентов позволяет автоматизировать взаимодействие участников виртуального предприятия и ускорить процессы формирования активной сети для совместной реализации какого-либо проекта. Кроме этого, агент А должен активировать к работе и обеспечить входными данными других агентов.
Таким образом, за агентом А закрепляются следующие функции:
- сопоставление значений кодов заказов и услуг и вывод предварительной ведомости с указанием предприятий, услуги которых соответствуют заказам;
- анализ требований заказа и характеристик ресурсов предприятий;
- вывод ведомости предприятий, удовлетворяющих требованиям заказа, в виде перечня идентификаторов предприятий;
- вывод оператору сообщения о завершении анализа;
- активизация последующих агентов.
Процедура поиска исполнителей представлена на рис. 1-3. В данном алгоритме предусмотрена возможность анализа характеристик оборудования не только по количественным, но и качественным
значениям атрибутов. Вместе с тем, реализация процедуры возможна лишь в том случае, если сформирована база правил и определены функции принадлежности нечетких переменных.
Рис. 1. Алгоритм поиска исполнителей программным агентом
По результатам работы агента А специалист ВП осуществляет рассылку уведомлений потенциальным исполнителям. Выполнение данного действия не закрепляется за агентом А, поскольку в алго-
ритме предусмотрен анализ качественных характеристик оборудования, который предполагает принятие решения оператора о возможности реализации заказа предполагаемым исполнителем на основе полученных численных значений параметров ресурсов после выполнения процедуры нечеткого вывода.
По истечении определенного промежутка времени, отведенного на ожидание заявок от предприятий, требуется сформировать ведомость предложений. Мониторинг состояния регистрации предложений в интегрированной распределенной среде (ИРС) ВП от участников на выполнение заказа можно также осуществлять с помощью программного агента, за которым будут закреплены функции отслеживания количества заявок потенциальных исполнителей на выполнение работ по ТПП.
Получив сводную ведомость заявок предприятий на реализацию заказа, оператор должен осуществить выбор в пользу той или иной организации при условии, что на один заказ приходится больше одной компании. Специалист будет принимать решение по результатам анализа условий реализации заказа, которые готовы предложить потенциальные исполнители. Очевидно, что наибольшее значение будет иметь информация о стоимости и времени выполнения работ. Кроме того, возможно, оператору будет интересна дополнительная информация о ресурсах предприятий (текущая загрузка ресурсов, фирма-производитель оборудования и т.п.). На основе анализа предоставляемых данных требуется выявить те компании, условия которых являются наиболее предпочтительными.
Рис. 3. Процедура сопоставления значений атрибута «Материал» программным агентом
Если результат мониторинга заявок показал большое число потенциальных исполнителей, то достаточно сложно обработать предложения от всех предприятий и выявить оптимальный вариант. Решение данной задачи предлагается частично переложить на программного агента, а именно, реализовать автоматическое упорядочивание организаций по рейтингам, рассчитываемым на основе анализа условий выполнения заказа. К ключевым критериям успешности любого проекта относят время, стоимость и качество. В отличие от первых двух характеристик, показатель качества в прямом действии не сводится к количественному критерию и требует уточнения. Качество результатов можно установить по ответной реакции заказчика: при отсутствии возвратов на доработку изделия или ремонт следует считать, что данный участник кооперации «качественно» выполнил заказ. Исходя из этого, качество будет определяться историей работы с соисполнителем.
Методика расчета рейтингов потенциальных исполнителей
Анализ предложений только по приведенным выше параметрам приводит к возникновению крайне затруднительных условий для вступления новых участников в кооперационную среду. В связи с этим следует предусмотреть некий поддерживающий фактор для новых членов кооперации и на поддержку тех участников, которые могли бы выполнить данный заказ, но не имеют в данном виде работ большого опыта (такая поддержка имеет определенную аналогию с принципами антимонопольной политики).
Кроме того, учет такого фактора, как принадлежность организации к отечественной промышленности, позволит снизить риск возникновения дополнительных стоимостных и временных издержек (например, на транспортировку, таможенную пошлину и др.). Принятие во внимание данного критерия не обязательно приведет к однозначному выбору не в пользу предприятия зарубежной промышленности, поскольку услуги таких компаний могут выигрывать в качестве или по другим показателям. Таким образом, оптимальное решение будем определять следующими показателями:
- временем реализации заказа;
- стоимостью реализации заказа;
- наличием положительного опыта работы с соисполнителем;
- периодом времени участия в кооперационной среде;
- принадлежностью к отечественной промышленности.
Степень влияния значений представленных выше параметров на выбор исполнителей определяется весовыми коэффициентами, величины которых в зависимости от текущего заказа (условий заказчика) не всегда будут одними и теми же и в каждой конкретной ситуации могут варьироваться. По этой причине значения весовых коэффициентов показателей приводить не будем.
Рис. 4. Алгоритм мониторинга предложений и расчета рейтингов программным агентом Математически оптимальное решение будет определяться следующим образом:
р = У"
¿-¡ы=1
тах
V
Й, ю с —+—-
,ы Сы
+ Юв X вы +Йд X (й„1 х О,
}д1 •
ы
+ ю
д 2
-.вы )+ю
и х иы
где п - число поступивших предложений от предприятий; ю,,юс,юв,Юд,Юд1,Юд2,&и - весовые коэффициенты; ы, Сы - соответственно значения времени и стоимости, которые предлагает предприятие Ы для реализации заказа; вы - значение, характеризующее наличие положительного опыта работы с предприятием ы (определяется по результатам реализации заказов: каждый успешно выполненный проект увеличивает значение вы . Данный атрибут предусмотрен в паспорте предприятия); Оы - число лет, в течение
которых предприятие М является членом кооперационной среды; Ом - число заказов, выполненных предприятием М ; Ом - значение, характеризующее принадлежность предприятия М к отечественной промышленности (Ом = 1 - для отечественных предприятий и Ом = 0 - для зарубежных предприятий).
и _
Считывание значения атрибута "Время реализации заказа"у объекта "Предложение"
О
2.1. Расчет целевой функции
Считывание значения атрибута "Стоимость реализации заказа"у объекта "Предложение"
Считывание значения атрибута "Опыт
работы с предприятием" у
объекта "Предложение"
Считывание значения атрибута "Период времени участия в
кооперационной среде" у объекта "Предложение"
Значения весовых коэффициентов определены для расчета целевой функции?
Расчет значения целевой функции
Л
Вывод оператору сообщения о прерывании процесса
Сохранение значения целевой функции в буфер
Не? |
Ожидание значений показателей для расчета целевой функции
Значения весовых коэффициентов получены?
Вывод оператору сообщения об аварийном завершении процесса
Считывание значения атрибута "Принадлежность к отечественной промышленности" у объекта "Предложение"
Рис. 5. Алгоритм расчета целевой функции
Таким образом, по представленной выше формуле требуется посчитать значение целевой функции для каждого предприятия, т.е. определить «привлекательность» условий организаций для реализации заказа, а затем отсортировать их по мере уменьшения значений данного показателя.
В результате оператор ВП, определив значения весовых коэффициентов перед запуском мониторинга и анализа предложений от потенциальных исполнителей, получит ведомость предприятий с рассчитанными рейтингами. Компания, рейтинг которой имеет наибольшее значение, будет в первую очередь рассматриваться в качестве исполнителя реализации заказа. На окончательный выбор предприятия специалистом координационного центра может оказать влияние дополнительная, слабо формализуемая
информация о ресурсах компаний, для предоставления которой следует предусмотреть специальные текстовые поля (атрибуты) у объектов в структуре базы данных ИРС.
Следовательно, за программным агентом, которого отнесем к группе В, будут закреплены следующие функции:
- мониторинг заявок от предприятий на реализацию заказа;
- расчет рейтингов предприятий по результатам анализа условий реализации заказа;
- формирование сводной ведомости предприятий и присвоенных рейтингов.
Процедура мониторинга предложений и расчета рейтингов представлена на рис. 4, а расчет целевой функции - на рис. 5.
Реализация описанного алгоритма возможна лишь в том случае, если информация об условиях реализации заказа со стороны предприятий предоставляется в формализованном виде [3]. Оптимальное распределение заказов будет зависеть не только от рейтингов предприятий, но и от того, как сформированы пакеты заказов на выполнение задач ТПП. Очевидно, что заказчику работ по ТПП удобнее иметь дело с меньшим числом исполнителей, т.е. формировать крупные пакеты заказов. Однако далеко не все исполнители могут взяться за выполнение крупных заказов. Причины этого могут быть как в том, что исполнитель не может решить некоторые из входящих в пакет задач, так и в том, что исполнитель не может выполнить крупный заказ в намеченные сроки из-за ограниченных производственных мощностей. Это резко сужает круг возможных исполнителей, в результате чего стоимость выполнения работ по ТПП может оказаться существенно больше той, которая имела бы место при формировании более «мелких» пакетов заказов.
Для решения задачи оптимизации формирования пакетов можно воспользоваться методом полного перебора, но при условии, что число возможных вариантов комплектования заказов не превышает 50. В противном случае должны использоваться различные формы так называемого направленного перебора. В исследовании [4] предлагается методика решения «задачи коммивояжера» с использованием генетических алгоритмов для работ ТПП. В представленном подходе результаты работы схемы не всегда будут корректными, поскольку, как правило, процессы ТПП, а также производство осуществляется на одном предприятии. Применение же данной методологии для выбора исполнителей на реализацию более крупных заказов является вполне оправданным, поскольку позволяет учесть различные варианты распределения работ.
Заключение
Использование многоагентных технологий для анализа заказов на технологическую подготовку производства и ресурсов предприятий позволит сократить время поиска исполнителей заказов. Разработанный алгоритм поиска исполнителей предоставляет возможность анализировать характеристики оборудования не только по количественным, но и по качественным параметрам. В настоящее время ведется исследование практического применения описанной методики.
Литература
1. Саломатина А.А., Субботин И.А., Яблочников Е.И. Разработка алгоритма формирования пакетов заказов // Научно-технический вестник СПбГУ ИТМО. - 2010. - № 5 (69). - С. 72-75.
2. Фомина Ю.Н. Многоагентные технологии при решении производственных задач // Программные продукты и системы. - М.: МНИИПУ, 2008. - № 2. - С. 66-68.
3. Фомина Ю.Н., Яблочников Е.И. Разработка методов и средств построения информационно-управляющей среды для реализации технологической подготовки производства в условиях виртуального предприятия // Вестник компьютерных и информационных технологий. - М.: Машиностроение, 2009. - № 5. - С. 33-40.
4. Саломатина А.А., Фомина Ю.Н., Яблочников Е.И. Оптимизация конфигурирования и распределения заказов виртуального предприятия // Научно-технический вестник СПбГУ ИТМО. - 2008. - Вып. 48. - С. 151-155.
Афанасьев Максим Яковлевич - Санкт-Петербургский государственный университет информационных
технологий, механики и оптики, аспирант, [email protected] Саломатина Анна Алексеевна - Санкт-Петербургский государственный университет информационных
технологий, механики и оптики, аспирант, [email protected] Алешина Екатерина Евгеньевна - Санкт-Петербургский государственный университет информационных
технологий, механики и оптики, аспирант, [email protected] Яблочников Евгений Иванович - Санкт-Петербургский государственный университет информационных
технологий, механики и оптики, кандидат технических наук, доцент, зав. кафедрой, [email protected]