Сравнительный анализ средств разработки мультиагентных систем
Выпуск:
ART 86540
Библиографическое описание статьи для цитирования:
Мовчан
А.
Г. Сравнительный анализ средств разработки мультиагентных систем // Научно-методический электронный журнал «Концепт». –
2016. – Т. 11. – С.
2546–2550. – URL:
http://e-koncept.ru/2016/86540.htm.
Аннотация. Статья посвящена вопросу решения задачи выбора средств разработки мультиагентных систем для дальнейшего практического использования. Авторы проводят анализ мультиагентных систем, делают обзор наиболее популярных средств разработки, выполняют задачу выбора и приводят результаты полученных приоритетов для сформированного перечня альтернатив.
Ключевые слова:
мультиагентные системы, задача выбора, метод выбора, метод анализа иерархий, инструментальные средства
Текст статьи
Мовчан Алексей Геннадьевич,студент 1 курса, группы 2м, обучающийся на кафедре программного обеспечения вычислительной техники, факультета информационных технологий и управления ФГБОУ ВПО «ЮжноРоссийский государственный политехнический университет (НПИ) имени М.И.Платова», г.Новочерсасск.magistormag@rambler.ru
Мохов Василий Александрович,кандидат технических наук, доцент кафедры программного обеспечения вычислительной техники ФГБОУ ВПО «ЮжноРоссийский государственный политехнический университет (НПИ) имени М.И.Платова», г.Новочерсасск.mokhov_v@mail.ru
Сравнительный анализ средств разработки мультиагентных систем
Аннотация.Статья посвящена вопросу решения задачи выбора средствразработки мультиагентных системдля дальнейшего практического использования. Авторыпроводят анализ мультиагентных систем, приводят обзор наиболее популярныхсредств разработки, выполняют задачу выбора и приводят результаты полученныхприоритетов для сформированного перечня альтернатив.Ключевые слова:мультиагентные системы, задача выбора, метод выбора, метод анализа иерархий, инструментальные средства.
В настоящее времямультиагентные системы (МАС) используются для разработки разнообразныхинформационных и промышленных систем. В промышленности мультиагентные системыприменяютсяврешениизадач автоматизации управления сложными системами, для сбора и обработки информации. Мультиагентные технологии применимы в таких сферах, как проектированиеобъектов, промышленное производство, финансовое планирование и анализрисков, распознавание образов, извлечение знаний из данных, понимание текста и решение других сложных проблем[1,2].Определение«агент» удобно воспринимать, опираясьна представления об объекте, определенным с помощьюобъектноориентированного программирования (ООП). Таким образомискусственный агент может восприниматьсякак метаобъект, способный манипулировать другими объектами, создавать и уничтожать их, а также имеющий всевозможныесредства взаимодействиякаксо средой, таки себе подобными. Говоря другимисловами, это «активный объект», находящийся на более высоком уровне сложности по отношению к традиционным объектам в ООП и использующий их для достижения своих целей путем управлениясредой и себе подобных, изменяяих состояниядля достижения поставленной цели. Минимальный набор базовых характеристик произвольного агента включает такиесвойства как:активность, автономность, общительность, целенаправленность[3,4].Наличие у агента механизма целеобразования обеспечивает новый, гораздо высокийуровень автономии. Это значит, что он необязательно выполняет распоряжения какоголибо другого агента или пользователя, а просто зависит от условий среды, в которые входятцели и намерения других агентов. В отличие от объекта агент может принять на себя определенные обязательства или, наоборот, отказаться от выполнения некоторой работы, мотивируя это отсутствием компетентности, занятостью другой задачей и т.п. В то же время, агент может выполнять такие действия,как создание, подавление и замена других агентов, активизация функций (как своих, так и у других агентов), активизация сценария деятельности, запоминание текущего состояния других агентов и пр.В данной работе решается задача выбора средств разработки МАС для дальнейшего практического использования.Для решения задачи был выполнен сбор информации по наиболее распространенным МАС, определеныдостоинстваи недостаткисредств разработки, а так жевыполнен собственно выбор среды разработки при помощи метода иерархийТ.Саати [5].Рассмотрим наиболее популярные средства разработки MAC[6, 7].Java Agent Development Framework(JADE)–широко используемая программная среда для создания мультиагентныхсистем и приложений, поддерживающая FIPAстандарты для интеллектуальных агентов.MadKIT –модульная и масштабируемая мультиагентная платформа, написанная на Java. Поддерживает агентов на разных языках: Java, Python, Jess, Scheme, BeanSchell.AgentBuilder –большой коммерческий продукт. Агенты создаются и общаютсяна языке KQML (Knowledge Query and Manipulation Language) и обладают ментальной моделью.Cougaar –Javaориентированная платформа для построения распределенных мультиагентных систем.NetLogo –кроссплатформенное программируемое окружение для программирования мультиагентных систем.VisualBots –бесплатный мультагентный симулятор в Microsoft Excel с Visual Basic синтаксисом.MASON –Java библиотека для моделирования мультиагентных систем.REPAST –набор инструментов для создания систем, основанных на агентах.Обобщенные сведения о средствах разработки МАС представлены в табл.1.Таблица 1Общие сведения о средствах разработки№ п/пНаименование средыЛицензияПоддерживаемыеязыкипрограммирования1.
JADELGPL V 2Java2.
MadKITLGPL и GPLJVM (Java 2)3.
AgentBuilderЗакрытаяJava; C; C++4.
CougaarCOSLJava5.
NetLogoFree, not open sourceNetLogo6.
VisualBotsНеивестноVisual Basic7.
MASONБесплатная лицензия для учебных заведений
Java8.
REPASTBSDJava, Python, Visual Basic, .Net, C++, J#, C#
Как было отмечено ранее, для решения задачи выбора в работе был определенметод анализа иерархий Т.Саати (МАИ).Данный метот является математическиминструментомсистемного подхода к сложным проблемам принятия решений. Метод анализа иерархийне предписывает лицу, принимающему решение, какоголибо «правильного» решения, а позволяет ему в интерактивном режиме найти такой вариант (альтернативу), который наилучшим образом согласуется с его пониманием сути проблемы и требованиями к ее решению[5].Метод анализа иерархийшироко используется на практике и активно развивается учеными всего мира. В его основу заложены математическиеи психологические аспекты. Метод анализа иерархийпозволяет понятным и рациональным образом структурировать сложную проблему принятия решений в виде иерархии, позволяет проводить сравнительный анализи выполнить количественную оценку альтернативных вариантов решения.Решение задачи было получено в результате выполнения четырех этапов МАИ:1)построение иерархии;2)построение матрицы парных сравнений;3)проверка согласованности матриц;4)синтез приоритетов на иерархии.На основе МАИбыло выполнено сравнение альтернатив из табл.1 по следующим критериям:
наличие лицензия Freeили LGPL;поддержка языка программирования Java;возможность создание приложение под Android;наличие достаточного описания влитератураналичие примеров.Итоговые полученные приоритеты для альтернатив представлены в табл.2.Таблица 2
Итоговые значения приоритетов альтернатив№ п/пНаименование средыВес1.
JADE0,2552.
MadKIT0,1843.
AgentBuilder0,074.
Cougaar0,1145.
NetLogo0,1066.
VisualBots0,0627.
MASON0,1088.
REPAST0,102
Графическая интерпретацияполученных результатов представлена в виде круговой диаграммы на рис. 1.
Рисунок 1–Круговая диаграмма сравнения альтернативJADE26%MadKIT18%AgentBuilder7%Cougaar11%NetLogo11%VisualBots6%MASON11%REPAST10%ВесаОчевидно, что предпочтительнымвариантомвыбора средства разработки МАС является среда JADE, которую можно интегрировать сEclipse.Она поддерживает язык Javaи позволяет создавать приложения на основе мультиагентных систем, функционирующих на различных аппаратных платформах.
Ссылки на источники1.МоховВ.А., ТугузЮ.Р. Применение агентныхмоделей для принятия управленческих решений // Информационные системы, экономика, управление трудом и производством: ученые записки, посвящ. 80летию РГЭУ (РИНХ) // Рост. гос. экон. унт (РИНХ) –РостовнаДону: РИЦ РГЭУ. 2011. Вып. 14. С. 109–114.2.ФедороваН.В., МоховВ.А., БабушкинА.Ю. Анализ зарубежного опыта использования золошлаковых отходов ТЭС и возможностей мультиагентного моделирования процессов утилизации (обзор) // Экология промышленного производства. 2015. № 3 (91). С. 27.3.МоховВ.А., ГеоргицаИ.В., ГончаровС.А. Мультиагентное моделирование сетевой атаки типа DDoS // Инженерный вестник Дона. 2013. Т. 26. № 3 (26). С. 75.4.АндреевВ.В., МинаковИ.А., ПшеничниковВ.В., СимоноваЕ.В., СкобелевП.О. Основы построения мультиагентных систем // Самара 2007 –С. 1475.СаатиТ. Принятие решения. Методы анализа иерархий // Москва «Рабио и связь» –1993г. –С. 2786.АбрамовД.В., АндреевВ.В., СимоноваЕ.В., СкобелевП.О. Открытые мультиагентные системы для принятий решений в задачах динамического распределения ресурсов // Самара 208 –С.2157.ИНТУИТ –Лекции «Разработка приложений для мобильных интеллектуальных систем на платформе Intel Atom» http://www.intuit.ru/studies/courses/10618/1102/lecture/ 17388[17.02.2016]
Мохов Василий Александрович,кандидат технических наук, доцент кафедры программного обеспечения вычислительной техники ФГБОУ ВПО «ЮжноРоссийский государственный политехнический университет (НПИ) имени М.И.Платова», г.Новочерсасск.mokhov_v@mail.ru
Сравнительный анализ средств разработки мультиагентных систем
Аннотация.Статья посвящена вопросу решения задачи выбора средствразработки мультиагентных системдля дальнейшего практического использования. Авторыпроводят анализ мультиагентных систем, приводят обзор наиболее популярныхсредств разработки, выполняют задачу выбора и приводят результаты полученныхприоритетов для сформированного перечня альтернатив.Ключевые слова:мультиагентные системы, задача выбора, метод выбора, метод анализа иерархий, инструментальные средства.
В настоящее времямультиагентные системы (МАС) используются для разработки разнообразныхинформационных и промышленных систем. В промышленности мультиагентные системыприменяютсяврешениизадач автоматизации управления сложными системами, для сбора и обработки информации. Мультиагентные технологии применимы в таких сферах, как проектированиеобъектов, промышленное производство, финансовое планирование и анализрисков, распознавание образов, извлечение знаний из данных, понимание текста и решение других сложных проблем[1,2].Определение«агент» удобно воспринимать, опираясьна представления об объекте, определенным с помощьюобъектноориентированного программирования (ООП). Таким образомискусственный агент может восприниматьсякак метаобъект, способный манипулировать другими объектами, создавать и уничтожать их, а также имеющий всевозможныесредства взаимодействиякаксо средой, таки себе подобными. Говоря другимисловами, это «активный объект», находящийся на более высоком уровне сложности по отношению к традиционным объектам в ООП и использующий их для достижения своих целей путем управлениясредой и себе подобных, изменяяих состояниядля достижения поставленной цели. Минимальный набор базовых характеристик произвольного агента включает такиесвойства как:активность, автономность, общительность, целенаправленность[3,4].Наличие у агента механизма целеобразования обеспечивает новый, гораздо высокийуровень автономии. Это значит, что он необязательно выполняет распоряжения какоголибо другого агента или пользователя, а просто зависит от условий среды, в которые входятцели и намерения других агентов. В отличие от объекта агент может принять на себя определенные обязательства или, наоборот, отказаться от выполнения некоторой работы, мотивируя это отсутствием компетентности, занятостью другой задачей и т.п. В то же время, агент может выполнять такие действия,как создание, подавление и замена других агентов, активизация функций (как своих, так и у других агентов), активизация сценария деятельности, запоминание текущего состояния других агентов и пр.В данной работе решается задача выбора средств разработки МАС для дальнейшего практического использования.Для решения задачи был выполнен сбор информации по наиболее распространенным МАС, определеныдостоинстваи недостаткисредств разработки, а так жевыполнен собственно выбор среды разработки при помощи метода иерархийТ.Саати [5].Рассмотрим наиболее популярные средства разработки MAC[6, 7].Java Agent Development Framework(JADE)–широко используемая программная среда для создания мультиагентныхсистем и приложений, поддерживающая FIPAстандарты для интеллектуальных агентов.MadKIT –модульная и масштабируемая мультиагентная платформа, написанная на Java. Поддерживает агентов на разных языках: Java, Python, Jess, Scheme, BeanSchell.AgentBuilder –большой коммерческий продукт. Агенты создаются и общаютсяна языке KQML (Knowledge Query and Manipulation Language) и обладают ментальной моделью.Cougaar –Javaориентированная платформа для построения распределенных мультиагентных систем.NetLogo –кроссплатформенное программируемое окружение для программирования мультиагентных систем.VisualBots –бесплатный мультагентный симулятор в Microsoft Excel с Visual Basic синтаксисом.MASON –Java библиотека для моделирования мультиагентных систем.REPAST –набор инструментов для создания систем, основанных на агентах.Обобщенные сведения о средствах разработки МАС представлены в табл.1.Таблица 1Общие сведения о средствах разработки№ п/пНаименование средыЛицензияПоддерживаемыеязыкипрограммирования1.
JADELGPL V 2Java2.
MadKITLGPL и GPLJVM (Java 2)3.
AgentBuilderЗакрытаяJava; C; C++4.
CougaarCOSLJava5.
NetLogoFree, not open sourceNetLogo6.
VisualBotsНеивестноVisual Basic7.
MASONБесплатная лицензия для учебных заведений
Java8.
REPASTBSDJava, Python, Visual Basic, .Net, C++, J#, C#
Как было отмечено ранее, для решения задачи выбора в работе был определенметод анализа иерархий Т.Саати (МАИ).Данный метот является математическиминструментомсистемного подхода к сложным проблемам принятия решений. Метод анализа иерархийне предписывает лицу, принимающему решение, какоголибо «правильного» решения, а позволяет ему в интерактивном режиме найти такой вариант (альтернативу), который наилучшим образом согласуется с его пониманием сути проблемы и требованиями к ее решению[5].Метод анализа иерархийшироко используется на практике и активно развивается учеными всего мира. В его основу заложены математическиеи психологические аспекты. Метод анализа иерархийпозволяет понятным и рациональным образом структурировать сложную проблему принятия решений в виде иерархии, позволяет проводить сравнительный анализи выполнить количественную оценку альтернативных вариантов решения.Решение задачи было получено в результате выполнения четырех этапов МАИ:1)построение иерархии;2)построение матрицы парных сравнений;3)проверка согласованности матриц;4)синтез приоритетов на иерархии.На основе МАИбыло выполнено сравнение альтернатив из табл.1 по следующим критериям:
наличие лицензия Freeили LGPL;поддержка языка программирования Java;возможность создание приложение под Android;наличие достаточного описания влитератураналичие примеров.Итоговые полученные приоритеты для альтернатив представлены в табл.2.Таблица 2
Итоговые значения приоритетов альтернатив№ п/пНаименование средыВес1.
JADE0,2552.
MadKIT0,1843.
AgentBuilder0,074.
Cougaar0,1145.
NetLogo0,1066.
VisualBots0,0627.
MASON0,1088.
REPAST0,102
Графическая интерпретацияполученных результатов представлена в виде круговой диаграммы на рис. 1.
Рисунок 1–Круговая диаграмма сравнения альтернативJADE26%MadKIT18%AgentBuilder7%Cougaar11%NetLogo11%VisualBots6%MASON11%REPAST10%ВесаОчевидно, что предпочтительнымвариантомвыбора средства разработки МАС является среда JADE, которую можно интегрировать сEclipse.Она поддерживает язык Javaи позволяет создавать приложения на основе мультиагентных систем, функционирующих на различных аппаратных платформах.
Ссылки на источники1.МоховВ.А., ТугузЮ.Р. Применение агентныхмоделей для принятия управленческих решений // Информационные системы, экономика, управление трудом и производством: ученые записки, посвящ. 80летию РГЭУ (РИНХ) // Рост. гос. экон. унт (РИНХ) –РостовнаДону: РИЦ РГЭУ. 2011. Вып. 14. С. 109–114.2.ФедороваН.В., МоховВ.А., БабушкинА.Ю. Анализ зарубежного опыта использования золошлаковых отходов ТЭС и возможностей мультиагентного моделирования процессов утилизации (обзор) // Экология промышленного производства. 2015. № 3 (91). С. 27.3.МоховВ.А., ГеоргицаИ.В., ГончаровС.А. Мультиагентное моделирование сетевой атаки типа DDoS // Инженерный вестник Дона. 2013. Т. 26. № 3 (26). С. 75.4.АндреевВ.В., МинаковИ.А., ПшеничниковВ.В., СимоноваЕ.В., СкобелевП.О. Основы построения мультиагентных систем // Самара 2007 –С. 1475.СаатиТ. Принятие решения. Методы анализа иерархий // Москва «Рабио и связь» –1993г. –С. 2786.АбрамовД.В., АндреевВ.В., СимоноваЕ.В., СкобелевП.О. Открытые мультиагентные системы для принятий решений в задачах динамического распределения ресурсов // Самара 208 –С.2157.ИНТУИТ –Лекции «Разработка приложений для мобильных интеллектуальных систем на платформе Intel Atom» http://www.intuit.ru/studies/courses/10618/1102/lecture/ 17388[17.02.2016]