Лекція 9. Спілкування в колективі агентів.
9.1. Основна проблема розподілених систем.
9.1.1. Розподілена система складаєься з деякого набору підсистем, поєднаних між собою в такий спосіб, що відстань між підсистемами суттєво перевищує відстані між елементами всередені окремої підсистеми. Основна проблема розподілених систем полягає у неможливості отримання інформації будь-якою підсистемою про стан іншої підсистеми в момент зміни цього стану. Тобто інформація про зміну стану іншої підсистеми завжди надходить з деякою затримкою. При цьому в загальному випадку ця затримка набагато більше часового кроку, з яким змінюються стани підсистеми. В данному випадку система розглядається як колектив, а підсистема як окремий агент.
9.2. Поняття інформаційної зв’язності (як обмінюватись інформацією).
9.2.1. Інформаційна зв’зність колективу визначає можливості агентів що до обміну інформацією з огляду на основну проблему розподілених систем. Рівень інформаційної зв’язності визначається у вигляді одної або декількох числових величин в рамках обраної Моделі Інформаційнох Зв’язності (Agent Communication Model, ACM). Модель інформаційної зв’язності визначає спосіб обміну інформацією між агентами колективу. Рівень інформаційної зв’язності безпосередньо впливає на здатність агентів організовувати спільні дії. Чим нижче рівень інформаційної зв’язності, тим менше можливостей по координації спільних дій.
9.2.2. Приклади моделей інформаційної зв’язності:
детермінована ACM (приклад – статична матриця зв’язків між агентами, величина інформаційної зв’язності визначається зв’зністю відповідного графу міжагентних зв’язків та їх пропускною здатностю),
випадкова ACM (приклад – випадкова парна взаємодія, величина інформаційної зв’язності визначається кількістю агентів, що зустрічаються в одному такті (2,3,4,...) та розміром повідомлення, яким вони обмінюються),
реалістична ACM (приклад - колектив мобільних агентів, охоплених безпровідною мережею, величина інформаційної зв’язності визначається трійкою <Rc, Sc, Dc>:
Rc – радіус видимості засобів зв’язку агентів,
Sc – розмір повідомлень, якими обмінюються агенти за одиницю часу,
Dc – затримка, з якою повідомлення надходять від оного агента до іншого.
9.2.3. Для програмних агентів ACM визначається в термінах операційного середовища (засоби взаємодії процесів (приклад: UNIX IPC – Inter Process Communication), підсистема обміну повідомленнями (приклад: MPI – Message Passing Interface)) та комп’ютерної мережі. (мережева технологія (приклад: Ethernet), стек протоколів (приклад: TCP/IP)).
9.2.4. Осн. задача: дослідити вплив інформаційної зв’язності на еффективність кол. поведінки. Тобто перед розробником стоїть питання: яку модель інформаційної зв’язності з яким рівнем інформаційної зв’язності обрати для вирішення колективом поставлених задач. В даному випадку присутній стримуючий фактор у вигляді ресурсів, що витрачаються на організацію обраної ACM та забезпечення заданого рівня інформаційної зв’язності. Це може бути, наприклад, енергетичний ресурс для робототехнічного агента з радіопередавачем (чим більше радіус видимості, тим більше витрати енергії) або частка мережевого трафіку для програмного агента. Т.ч. виникає питання про знаходження оптимального співвідношення деякого рівня інформаційної зв’язності та кількості ресурсів, що витрачаються на його забезпечення.
9.3. Мови спілкування агентів (якою інформацією омбінюватись).
9.3.1. Мовний акт можна розглядати як дію (speech act theory): мовні акти обираються та реалізуються так само як дії з набору доступних дій (тобто всі можливі варіанти повідомлень додаються до набору дій і обираються блоком прийняття рішень в кожному такті роботи агента).
9.3.2. Інший підхід полягає у розробці та застосуванні в багатоагентих системах стандартизованих мов спілкування. Їх можна поділити на два типи:
1. Мови обміну інформацією та знаннями (communication languages): задають синтаксис та частково семантику інформації, якою обмінюються агенти, приклади:
фіксований набір повідомлень (визначається розробником),
KQML/KIF (KQML – Knowledge Query and Manipulation Language, KIF – Knowledge Interchange Format),
FIPA agent communication languages (ACL) (FIPA – Foundation for Intlligent Phisical Agents).
Приклад KQML-повідомлення:
(ask-one
:content (PRICE IBM ?price)
:reciever stock-server
:language LPROLOG
:ontology NYSE-TICKS )
Програмний агент запитує вказаний сервер (:reciever stock-server) про ціну акцій фірми IBM (:content (PRICE IBM ?price)). При цьому агент хоже отримати лише одну відповідь (ask-one). Мова, на який зроблений запит (LPROLOG) визначається в рядку :language. Термінологія, яка використана в запиті (NYSE-TICKS) визначається в рядку :ontology.
2. Мови координації дій (coordination languages): задають механізм координації дій колективу, в тому числі за допомогою обміну наказами або вимогами, приклади:
системи "чорної дошки" (blackboard systems),
Linda System (система розподілених обчислень, програмні агенти).
9.3.3. Серед осн. напрямків дослдіжень в галузі значення (семантики) спілкування в колективах агентів можна назвати:
- створення та узгодження словників (тезаурусів) агентів (онтології, мовні ігри (language games)),
- зародження та розвиток мови спілкування у колективі агентів,
- трансформація мови спілкування у мову планування індивідуальних дій.