Опубликован: 24.08.2014 | Уровень: для всех | Доступ: свободно | ВУЗ: Санкт-Петербургский государственный университет
Лекция 6:

Управление на базе мультиагентных систем

< Лекция 5 || Лекция 6: 1234 || Лекция 7 >
Аннотация: Мультиагентный подход. Агенты и мультиагентные системы. Подход "Агентов и Миров" в разработке МАС. Современные международные стандарты создания агентов и платформы МАS. Применение мультиагентного подхода в бизнесе. Области применения и платформы для разработки МАС. Примеры практического применения технологии МАС в системах управления.
Ключевые слова: mac, MAS, project, agent, technology, OPEN, программа, агент, ПО, парадигма, место, поиск, множества, алгоритм, интеллект, принятия решений, реакция, самоорганизация, группа, список, artificial, intelligence, Computing, distributed, problem, выход, значение, пользователь, метафора, определение, мера, обмен данными, минимум, тупик, класс, механизмы, член группы, кооперация, координация, разрешение конфликтов, контекст, идентификатор, сервер, внутренние параметры, ядро, компонент, мышление, прямой, доступ, торговля, база знаний, процедурные знания, сценарий, архитектура, деятельность, пользовательский интерфейс, операции, поле, меню, менеджер, мультимедиа, очередь, OMG, Object, management, group, intelligent, physical, advanced, agency, DARPA, control, IBM, SUN, транспортная, поддержка, CORBA, IDL, knowledge sharing, effort, syntax, semantics, communication, language, ACL, онтология, API, application, programming, interface, интерфейс, smtp, TCP/IP, HTTP, IIOP, БД, SQL, service, Web, XML, RDF, ORB, Java, RMI, event, аудит, контроль доступа, цикла, Интернет

Мультиагентный подход

Олимпийские спортивные призывы: "Быстрее, Выше, Сильнее" в компьютерной области трансформировались в лозунг: "Быстрее, Мощнее, Миниатюрнее"! На самом деле эти противоречивые цели стыкуются в одном: технологии приближаются к созданию "мобильного" искусственного интеллекта — уже скоро умные встроенные миниатюрные вычислительные устройства, снабженные управляющими системами на базе мультиагентов, смогут выполнять те функции, которые несколько лет назад и "не снились" пользователям больших компьютеров. Под мультиагентными технологиями сейчас часто понимают как технологии разработки и использования мультиагентных систем (MAC, Multiagent Systems — MAS), так и мультиагентное управление (МАУ, Multiagent Conrol — MAC) [Shoham Y., Leyton-Brown K., 2009] .

Задачи управления и распределенного взаимодействия в сетях динамических систем привлекают в последнее десятилетие внимание все большего числа исследователей. Во многом это объясняется широким применением мультиагентных систем в разных областях, включая разработку автоматизированных систем управления, автоматическую подстройку нейронных сетей распознавания, управление формациями, роение, распределенные сенсорные сети, управление перегрузкой в сетях связи, взаимодействие групп БПЛА, относительное выравнивание групп спутников, управление движением групп мобильных роботов, синхронизации в энергосистемах и др. [Project of multi-agent technology in difficult systems // Open University of the Netherlands http://www.ouh.nl/].

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

В основе мультиагентного подхода лежит понятие мобильного программного агента, который реализован и функционирует как самостоятельная специализированная компьютерная программа или элемент искусственного интеллекта.

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

На смену таким системам, копирующим централизованную иерархию, быстро пришли распределенные системы, в которых знания и ресурсы распределялись между достаточно "самостоятельными" агентами, но сохранялся общий орган командного управления, принимающий решения в критических или конфликтных ситуациях. Дальнейшим шагом в этом направлении стала парадигма полностью децентрализованных систем, в которых управление происходит только за счет локальных взаимодействий между агентами. При этом узкая функциональная ориентация агента на решение какой-то одной отдельной части общей задачи постепенно стала уступать место универсальной целостности (автономности). Примерами таких децентрализованных организаций отчасти могут служить колонии насекомых, например, пчел или муравьев.

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

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

Значит ли это, что ситуация, когда точный алгоритм решения отсутствует, безнадежна?

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

На рис. 6.1 показаны в сравнении две схемы построения программного обеспечения: традиционная и на базе мультиагентной системы. В MAC каждой сущности ставится в соответствие программный агент, который представляет ее интересы.

Традиционное и мультиагентное построение  программного продукта

Рис. 6.1. Традиционное и мультиагентное построение программного продукта

Человеку присущ интеллект — это его отличает от компьютера, действующего строго по заложенной в него про-грамме. А это то, что позволяет человеку ориентироваться в сложной обстановке, иметь дело с нечетко поставленными задачами, адаптироваться к меняющимся условиям. Неопределенность присутствует чаще всего, когда существует набор альтернатив, и невозможно предсказать, какой из вариантов окажется лучшим по прошествии достаточно длительного времени.

При составлении расписаний движения грузовиков, например, это ситуация, когда существует выбор между несколькими грузовиками, перевозящими грузы, несколькими дорогами, которые могут быть использованы для достижения разных точек назначения, и многими водителями, которые могут управлять грузовиками. Каждый из ресурсов (грузовик, дорога и водитель) имеют различные свойства. Неопределенность возрастает в ситуациях, когда возможны непредсказуемые события, такие как изменения в условиях поставок или спроса, аварии или сбои ресурса, задержки, отмены заказов и тому подобное [Амелина Н., Лада А., Майоров И., Скобелев П., Царев А., 2011].

А есть ли интеллект, скажем, у колонии муравьев или роя пчел? С одной стороны, каждый отдельно взятый муравей или пчела, очевидно, им не обладают. С другой — колония в целом проявляет удивительные образцы поведения, которое во многом может считаться интеллектуальным. Такие ситуации называются проявлением эмерджентного интеллекта, или неожиданных свойств, которыми обладает система, но не обладает ни один входящий в нее отдельный элемент. Возникающий при этом эффект "интеллектуального резонанса" часто так и называют "интеллект роя". Действительно, интеллект и физическая сила одной пчелы не так велики, но рой пчел, согласованно действующий, может победить медведя и даже человека.

Агенты очень похожи на членов команды, которые могут соревноваться друг с другом или сотрудничать в процессе принятия решения. Ключевая особенность эмерджентного интеллекта — динамика и непредсказуемость процесса принятия решений. На практике это означает, что решение достигается за счет сотен и ты-сяч взаимодействий, которые почти невозможно отследить. Но это и не требуется, поскольку агентам дают цели, которые они должны достигать, но не предопределяют сценарии исполнения задач по достижению этих целей.

Эти сценарии формируются и исполняются агентами самостоятельно. На каждом шаге агенты рассматривают входы системы и реагируют на непредсказуемые события (задержки, сбои, изменения). Реакция может быть самостоятельной, или осуществляться во взаимодействии с оператором. Таким образом, эмерджентный интеллект — это не есть какой-либо один новый и специально сконструированный уникальный блок-решатель, добавленный к системе. Напротив, это нечто (результат самоорганизации), что возникает как бы "из воздуха" (за счет множества скрытых или явных условий, сложившихся в ситуации), спонтанно и в заранее не предвиденный момент времени, и так же неожиданно исчезает, но в процессе своего существования определяющим образом руководит работой всей системы. Тут мы имеем дело с возникновением порядка из хаоса, с одним из тех явлений, которые изучали и описывали такие выдающиеся ученые, как Александр Богданов (теория организации), Илья Пригожий (самоорганизация в физических системах), Марвин Минский (психология и теория мышления), Артур Кестлер (биология).

< Лекция 5 || Лекция 6: 1234 || Лекция 7 >