Гончаренко А.Н., Галушка Д.П.

Современные средства разработки мультиагентных систем управления горнопромышленным транспортом

НИТУ «МИСиС

На сегодняшний день развитие мультиагентных технологий позволяет решать целый комплекс задач по хранению и обработке информации в области стохастических процессов транспортной сети горнопромышленного предприятия. В этом плане многообещающей является перспектива использования больших сенсорных сетей, представляющих из себя распределённую, самоорганизующуюся сеть множества датчиков (сенсоров) и исполнительных устройств, объединенных между собой посредством радиоканала. Область покрытия подобной сети может составлять от нескольких метров до нескольких километров за счет способности ретрансляции сообщений от одного элемента к другому. Типовыми сенсорами являются датчики местоположения, температуры, давления, освещенности, уровня вибрации и пр. Каждый узел сенсорной сети может содержать различные датчики для контроля внешней среды, микрокомпьютер и радиоприемопередатчик. Использование данного сенсорного оборудования позволить создать мультиагентную систему управления  транспортом горнопромышленного предприятия.

Однако реализация таких систем на сегодняшний день возможна только с  применением современных средств разработки  мультиагентных технологий. Чаще всего в агентных технологиях используются: универсальные языки программирования (Java); а также языки, "ориентированы на знания" — такие, как языки представления знаний (KIF), языки переговоров и обмена знаниями (KQML, AgentSpeak, April). Используются также языки спецификаций агентов; специализированные языки программирования агентов (TeleScript); языки сценариев и Scripting Languages (Tcl/Tk); символьные языки и языки логического программирования (Oz). На сегодняшний день, можно выделить следующие наиболее распространенные агентные платформы для разработки мультиагентных систем управления горнопромышленным транспортом.

1. JADE (Java Agent Development Framework) - широко используемая программная среда для создания мультиагентных систем и приложений, поддерживающая FIPA-стандарты для интеллектуальных агентов. Включает в себя среду выполнения агентов (агенты регистрируются и работают под управлением среды), библиотеку классов, которые используются для разработки агентных систем, набор графических утилит для администрирования и наблюдения за жизнедеятельностью активных агентов. Программная среда JADE подключается к любому проекту на языке Java. Агенты JADE могут быть совершенно разными от простых только реагирующих, до сложных ментальных. Процесс конфигурирования этой платформы достаточно гибкий: ее можно изменить даже во время исполнения программ, для этого необходимо просто переместить агентов с одной машины на другую. Агенты способны обращаться к очереди с помощью комбинации нескольких режимов своей работы: блокирование, голосование, перерыв работе и сопоставление с эталоном (что касается методов поиска ).

2. JACK Intelligent Agents Java - платформа для создания мультиагентных систем. Так же как и JADE, расширяет Java своими классами. JACK одна из немногих платформ, где используются модель логики агентов, основанная убеждениях, желаниях-намерениях, и встроенные формально-логические средства планирования работы агентов.

3. MadKIT - модульная и масштабируемая мультиагентная платформа, написанная на Java. Поддерживает агентов на разных языках: Java. Python, Jess, Scheme, BeanSchell. Красиво визуализирует и позволяет управлять этими агентами.

4. AgentBuilder - большой коммерческий продукт, выпускаемый так же и в Academic Edition. Агенты достаточно интеллектуальны и общаются на языке KQML (Knowledge Query and Manipulation Language) и обладают ментальной моделью. Платформа является Java-ориентированной, то есть все компоненты и наборы инструментов осуществлены с помощью Java, что позволяет использование данного  продукта на любой машине или операционной системе, которая поддерживает Java и имеет соответствующую среду проектирования. При этом разработчики программного обеспечения могут создавать интеллектуальных агентов, способных функционировать на различных компьютерных платформах и операционных системах.

5. Cougaar (Cognitive Agent Architecture) - Java-ориентированная платформа для построения распределенных мультиагентных систем. Включает не только исполняющую систему (run-time engine), но и некоторые средства для визуализации, управления данными и др.

6. Net Logo - кроссплатформенное программируемое окружение для программирования мультиагентных систем.

7. VisualBots - бесплатный мультагентный симулятор в Microsoft Excel с Visual Basic синтаксисом

8. MASON  - Java библиотека для моделирования мультиагентных систем.

9.          REPAST - набор инструментов для создания систем, основанных на агентах.

Таким образом, системы разработки, которые бы полностью соответствовали требованиям построения агентного приложения для управления транспортной сетью горнопромышленного предприятия, должны соответствовать следующим требованиям — доступность и возможность  перенесения кода на различные платформы, используемые на горном предприятии, обеспечение и поддержка сетевого взаимодействия в пределах территории добычи полезного ископаемого (рудника), многопотоковая обработка данных в реальном времени и некоторым другим.