9.1.1.       Историческая справка

Проблематика интеллектуальных агентов и мультиагентных систем (MAC) имеет уже почти 40-летнюю историю [Городецкий и др., 1998; Тарасов, 1998] и сформировалась на основе результатов, полученных в рамках работ по распределенному искусственному интеллекту (DAI), распределенному решению задач (DPS) и параллельному искусственному интеллекту (РАІ) [Demazeau et al., 1990; Пэра- нек, 1991; Rasmussen et al., 1991]. Но, пожалуй, лишь в последнее 10-летие она выделилась в самостоятельную область исследований и приложений и все больше претендует на одну из ведущих ролей в рамках интеллектуальных информационных технологий. Спектр работ по данной тематике весьма широк, интегрирует достижения в области компьютерных сетей и открытых систем, искусственного интеллекта и информационных технологий и ряда других исследований, а результаты уже сегодня позволяют говорить о новом качестве получаемых решений.

Понятно, что в рамках данного издания мы не сможем даже обозреть все направления и результаты в области MAC. Поэтому далее сконцентрируемся лишь на тех разделах, которые имеют непосредственное отношение к теме настоящей книги. С учетом сделанных замечаний и с позиций сегодняшнего дня все исследования в этой области можно выделить в две основные фазы: первая охватывает период с 1977 г. по настоящее время, а вторая — с начала 1990 г. по настоящее время.

Работы первого периода концентрировались на исследовании так называемых «смышленых» (smart) агентов, которые были начаты в конце 1970-х годов и продолжаются все 1980-е годы вплоть до наших дней. Первоначально эти работы были сосредоточены на анализе принципов взаимодействия между агентами, на декомпозиции решаемых задач на подзадачи и распределении полученных задач между отдельными агентами, координации и кооперации агентов, разрешении конфликтов путем переговоров и т. п. Цель таких работ — анализ, спецификация, проектирование и реализация систем агентов. На этом же уровне активно велись работы по теории, архитектурам и языкам для программной реализации агентов.

Примерно с 1990 г. стало ясно, что программные агенты могут использоваться в широком спектре применений. Однако потенциал агентных технологий, по-ви- димому, стал в значительной мере осознан не только разработчиками)-но и инвесторами после известного отчета консультативной фирмы Ovum [Ovum, 1994], которая предсказала, что сектор рынка для программных агентов в США и Европе вырастет, по крайней мере, до $3,9 billion к 2000 г. в противовес 1995 г., когда он оценивался в $476 million.

В настоящее время множество исследовательских лабораторий, университетов, фирм и промышленных организаций работают в этой области, и список их постоянно расширяется. Он включает мало известные имена и небольшие коллективы, уже признанные исследовательские центры и организации (например, университет Карнеги Мэллон (CMU) и фирма General Magic), а также огромные транснациональные компании (такие как Apple, AT&T, ВТ, Daimler-Benz, DEC, HP, IBM, Lotus, Microsoft, Oracle, Sharp и др.).: Областями практического использования агентных технологий являются управление информационными потоками (workflow management) и сетями (network management), управление воздушным движением (air-traffic control), информационный поиск (information retrieval), электронная коммерция (e-commerce), обучение (education), электронные библиотеки (digital libraries) и многие-многие другие приложения. Существует несколько причин, почему необходимы и полезны программные агенты, MAC и, более общо, агентные технологии. Основная из них в том, что агенты автономны и могут выполняться в фоновом (background) режиме от лица пользователя при решении разных задач, наиболее важными из которых являются сбор информации, ее фильтрация и использование для принятия решений. Таким образом, основная идея программных агентов — делегирование полномочий. Для того чтобы реализовать эту идею, агент должен иметь возможность взаимодействия со своим владельцем или пользователем для получения соответствующих заданий и возвращения полученных результатов, ориентироваться в среде своего выполнения и принимать решения, необходимые для выполнения поставленных перед ним задач.

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

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

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