Бочкарьов О. Теорія колективної поведінки (Multiagent systems)
Теорія колективної поведінки інтелектуальних систем (ТКП...
13 downloads
346 Views
1MB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
Бочкарьов О. Теорія колективної поведінки (Multiagent systems)
Теорія колективної поведінки інтелектуальних систем (ТКП) Конспект лекцій (22 лекції, 4 курс, КСМ) Частина 1. Основні приципи теорії колективної поведінки (9 лекцій) 1. Предмет і задачі ТКП. Основні ідеї та визначення. 1.1. Предмет і задачі теорії колективної поведінки (ТКП). 1.2. Інтелектуальна система (агент). 1.3. Поняття функціональної цілісності. Принцип колективної дії. 1.4. Поняття елементарного поведінкового акту. Гіпотеза М.Л. Цетліна про простоту. 1.5. Наукові напрямки, що складають ТКП.
2. Поняття агента в ТКП. Узагальнена функціональна структура агента. 2.1. Визначення інтелектуальної системи (агента). 2.2. Поняття середовища агента. Типи середовища. 2.3. Узагальнена функціональна структура агента. 2.4. Формальний опис системи <середовище, колектив>. 2.5. Цільовоа функція агента (agent utility function). 2.6. Класифікація агентів. Приклади змістовної інтерпретації.
3. Поняття колективу в ТКП. 3.1. Визначення колективу агентів (багатоагентної системи). 3.2. Основні характеристики колективу агентів. 3.3. Цільова функція колективу (world utility function). 3.4. Способи опису колективної поведінки. 3.5. Основна проблема ТКП.
4. Децентралізоване та централізоване управління. Самоорганізація. 4.1. Визначення централізованого та децентралізованого управління. 4.2. Порівняння централізованого та децентралізованого управління на прикладі. 4.3. Ентропія (невизначенність) за К. Шеноном (C. Shannon). 4.4. Визначення самоорганізації. Міра порядку (фон Фьорстер). 4.5. Правило самоорганізації.
5. Однорідність та неоднорідність колективу агентів. 1. Поняття однорідності та неоднорідності. 2. Адаптивне управління з механізмом наслідування. 3. Гнучкість та цілеспрямованість колективної поведінки. 4. Приклад моделі колективної поведінки з адаптивним управлінням. 5. Спеціалізація (формування груп взаємодоповнюючих стратегій).
6. Співпраця та суперництво в колективі агентів. 6.1. Поняття співпраці (cooperation) та суперницства (competition). 6.2. Співвідношення між індивідуальною та колективною продуктивністю. 6.3. Ітераційна ділема ув’язненого (Iterated Prisoners Dilemma, IPD).
7. Колективні моделі реальності. Колективне знання. 7.1. Визначення колективної моделі реальності (КМР). 7.2. Приклад організації пам’яті агента на основі його узагальненої функціональної структури. 7.3. Колективне знання. 7.4. Схема утворення колективного знання. 7.5. Способи збереження даних колективних моделей.
8. Колективне прийняття рішень. 8.1. Поняття колективного прийняття рішень. 8.2. Функія колективного вибору. 8.3. Теорема Ерроу про неможливість (парадокс Ерроу, K.J.Arrow).
http://www.lp.edu.ua/Institute/IKT/EOM/html/staff/bochkarev.htm
9. Спілкування в колективі агентів. 9.1. Основна проблема розподілених систем. 9.2. Поняття інформаційної зв’язності. 9.3. Мови спілкування агентів.
Частина 2. Базові алгоритми колективної поведінки (5 лекцій) 10. Утворення колективу. Самоіменування. Самоузгодження. 10.1. Архітектура інтегрального підпорядкування (subsumption architecture, Р.Брукс). 10.2. Основні вимоги до базових алгоритмів колективної поведінки. 10.3. Утворення колективу: самовиявлення (detecting). 10.4. Самоіменування: генерація унікальних імен агентів. 10.5. Самоузгодження: домовленність про однакову для всіх величину.
11. Самоорганізація колективу агентів у просторі (самовпорядкування). 11.1. Загальна постановка задачі самовпорядкування. 11.2. Класифікація задач самовпорядкування за складністю. 11.3. Самоорганізація в задачах самовпорядкування. 11.4. Впорядковане розміщення у просторі (ordered placement). 11.5. Формування правильних геометричних фігур (geometric pattern formation). 11.6. Приклад алгоритму формування сегменту лінії (К.Сугіхара, І.Сузукі). 11.7. Управління впорядкованим переміщенням (motion control). 11.8. Приклад алгоритму узгодженого групового переміщення (Д.Кромбі).
12. Самоорганізація колективу агентів у часі (самосинхронізація). 12.1. Постановка задачі самосинхронізації колективу. 12.2. Дискретний та аналоговий варіанти задачі самосинхронізації. 12.3. Задача синхронізації ланцюжку стрільців (firing squad synchronization problem, Дж. Майхіл). 12.4. Приклад алгоритму самосинхронізації ланцюжку агентів. 12.5. Самосинхронізація агентів поєднаних статичною мережею зв’язків. 12.6. Самосинхронізація агентів за наявності затримок.
13. Навчання з підкріпленням (самонавчання). 13.1. Зміст та елементи навчання з підкріпленням (Р.Саттон, А.Барто). 13.2. Стаціонарне випадкове середовище (n-armed bandit problem). 13.3. Цілеспрямованість поведінки (М.Л.Цетлін). 13.4. Співвідношення долідження (exploring) та користування (exploiting). 13.5. Метод зваженої оцінки дій (Action-Value Method). 13.6. Середовище з перемиканням (Markov Decision Processes). 13.7. Навчання за методом часових різниць (Temporal Difference Learning). 13.8. Q-навчання (Q-learning).
14. Колективне навчання з підкріпленням (колективне самонавчання). 14.1. Проблема формування відгуку середовища (credit-assignment problem). 14.2. Одночасне ізольоване навчання з підкріпленням (concurrent isolated RL). 14.3. Інтерактивне самонавчання узгодженим діям (interactive RL of coordination). 14.4. Самонавчання та спілкування. 14.5. Зменшення спілкування за рахунок навчання. 14.6. Покращення навчання за рахунок спілкування.
Частина 3. Моделі колективної поведінки (8 лекцій) 15. Опис моделей колективної поведінки в термінах теорії ігор. 15.1. Основні властивості ігор з нулевою сумою. Рівновага за Нешем. 15.2. Ігри з послідовним повторенням партій. 15.3. Стохастичні ігри. 15.4. Рекурсивні ігри. 15.5. Ігри на виживання. 15.6. Ігри на виснаження.
15.7. Ігри з непротележними інтересами гравців. 15.8. Кооперативні ігри.
16. Однорідні симетричні ігри цілеспрямованих автоматів. 16.1. Однорідні ігри з обмеженою взаємодією. 16.2. Однорідна гра на колі. 16.3. Гра в розміщення. 16.4. Гра в розподілення. 16.5. Процедура "спільної каси" (common cash). 16.6. Гра Гура. Співпраця та суперництво в грі Гура.
17. Економічні моделі колективної поведінки. 17.1. Поняття ринкової рівноваги (general equilibrium theory). 17.2. Моделі ринкових механізмів (general equilibrium market mechanisms). 17.3. Проблема "відвідування барів" (El Farol Bar problem). 17.4. Мінорна гра (minority game). 17.5. Створення механізмів взаємодії (mechanism design). 17.6. Аукціони (auctions). 17.7. Досягнення домовленностей шляхом переговорів (nagotiations).
18. Еволюційні моделі колективної поведінки. 18.1. Природний відбір. Поняття екологічної рівноваги. 18.2. Штучне життя (Artificial life). Популяційна динаміка. 18.3. Еволюційні обчислення (evolutionary computation). 18.4. Генетичні алгоритми (genetic algorithms). 18.5. Еволюційне програмування (evolutionary programming). 18.6. Генетичне програмування (genetic programming). 18.7. Кліткові автомати (celular automata, Дж. фон Нейман).
19. Методи пошуку припустимого рішення. Колективний пошук в реальному часі. 19.1. Проблема розподіленого пошуку припустимого рішення (constraint satisfaction). 19.2. Методи розподіленого пошуку припустимого рішення. 19.3. Алгоритми пошуку в реальному часі. 19.4. Пошук рухомої цілі (moving target search). 19.5. Співпраця в умовах нестачі інформації. 19.6. Організація колективу для вирішення проблем (forming problem solving organizations). 19.7. Задача побудови башти (tower building task).
20. Задача механічного врівноваження. Узагальнене поняття рівноваги. 20.1. Постановка задачі механічного врівноваження. 20.2. Аналіз задачі врівноваження. Граф розміщень. 20.3. Узагальнене поняття рівноваги. 20.4. Критерії ефективності алгоритмів врівноваження. 20.5. Централізоване врівноваження. 20.6. Децентралізоване врівноваження несамовиявленим колективом. 20.7. Децентралізоване врівноваження самовиявленим колективом.
21. Колективна поведінка обчислювальних агентів. Мобільні обчислення. 21.1. Моделі розподілених обчислень. 21.2. Мобільний код (mobile code) та мобільні агенти (mobile agents). 21.3. Мобільні обчислення (mobile computing). 21.4. Концепція обчислювальних екологій (computational ecologies, XEROX). 21.5. Самоорганізація динамічних розподілених обчислювальних систем (HP). 21.6. Концепція автономних обчислень (autonomic computing, IBM).
22. Колективна поведінка вимірювальних агентів. Мобільні вимірювання. 22.1. Розподілені вимірювально-обчислювальні системи. 22.2. Картографування (mapping). 22.3. Колективний пошук (search), локалізація (localization) та відслідковування траекторій (tracking). 22.4. Розподілені контактні вимірювання (distributed sensing). 22.5. Інтерполяційна модель колективної поведінки вимірювальних агентів.
22.6. Проблема розміщення вимірювальних агентів. 22.7. Алгоритми поведінки вимірювальних агентів.
Бочкарьов О. Теорія колективної поведінки (Multiagent systems)
2004
Лекція 1. Предмет і задачі ТКП. Основні ідеї та визначення. 1.1. Предмет і задачі теорії колективної поведінки (ТКП). 1.1.1. Теорія колективної поведінки = Multiagent Systems. 1.1.2. Основні теорії в яких бере свій початок ТКП: 1. Теорія систем (системотехніка, Уільям Ешбі, Норберт Вінер). Властивості складних систем: унікальність(не існує аналогів), непередбачуваність (неможливо побудувати діючу модель), цілеспрямованість поведінки. Складні системи→ розподілені системи (характеризуються слабкими зв’язками між елементами). 2. Теорія автоматів + теорія ігор. З поєднання цих двох підходів виникли такі напрямки колективи автоматів, ігри автоматів (Поспелов Д.А., Варшавський В.И.). 3. Штучний інтелект → розподілений штучний інтелект. Від теорії систем запозичена методологія та основні (базові) принципи побудови систем, від теорії автоматів і теорії ігор запозичений математичний апарат, від штучного інтелекту – ідеї та принципи колективної поведінки. 1.1.3. Сучасні комп’ютерні системи розвиваються дуже стрімкими темпами. Результат – над велике ускладнення таких систем. Більшість сучасних комп’ютерних систем запрограмовані на вирішення конкретних задач. Якщо перед такою системою виникне нова (непередбачена розробником) задача, то КС буде неспроможна її вирішити, оскільки не буде мати відповідної програми. Способи подолання 1. Створення КС, здатних діяти самостійно (підвищення оперативності управління). 2. Створення КС, які вміють самостійно навчатися (долати нестачу інформації / невизначеність) 3. Створення КС, які здатні діяти узгоджено та цілеспрямовано без централізованого управління. 1.1.4. Основна мета ТКП – створення складних систем здатних самостійно вирішувати задачі без попереднього програмування (інструктажу) людиною за умов нестачі інформації та швидких змін в оточенні системи. Предметом ТКП є принципи і методи побудови таких систем. Основні задачі ТКП: 1. Дослідження співвідношення децентралізованого і централізованого управління 2. Дослідження питань про однорідність та неоднорідність колективної поведінки 3. Дослідження співвідношення співпраці та суперництва в колективі агентів. (співвідношення індивідуальних та колективних виграшів(інтересів)) 4. Дослідження колективних моделей реальності(колективне знання) 5. Питання колективного прийняття рішень(голосування) 6. Питання спілкування (інформаційної взаємодії) колективних агентів. Мови спілкування агентів
1.2. Інтелектуальна система (агент). 1.2.1. Агент (agent) – це сутність, що діє самостійно, але за чиїмось дорученням. "Агентність" (agency) – здатність діяти за власною ініціативою (здатність приймати та реалізувати рішення) → “дієвість”. Інтелектуальна система (агент) – це комп’ютерна система, яка розміщена в деякому середовищі (рис.1) і яка здатна діяти в цьому середовищі автономно (самостійно) для досягнення цілей, які проставлені перед нею її розробником. Послідовність дій агента, спрямованих на досягнення поставленої мети (під впливом середовища), будемо називати його поведінкою.
D → дії агента в середовищі, D={dti} – набір дій
Agent Функціональне кільце
S → Вплив (реакція) середовища, S={stj} – набір впливів, які сприймаються агентом
Environment (E)
Рис.1. Взаємодія агента с середовищем. 1.2.2. Колектив або багатоагентна система (multiagent system) – це набір інтелектуальних систем (агентів), які діють разом для досягнення спільних цілей (рис.2). N – кількість агентів в колективі. Центр/користувач – той хто віддає накази (ставить задачі) колективу.
http://www.lp.edu.ua/Institute/IKT/EOM/html/staff/bochkarev.htm
1
2004 Multiagent system A1
AN
…
Agent
Agent
Environment (E) Рис.2. Взаємодія колективу с середовищем.
1.3. Поняття функціональної цілісності. Принцип колективної дії. Елемент (частина) системи – агент. Система – колектив агентів (багатоагентна система). 1.3.1. Функціональна цілісність системи передбачає такий тип внутрішньої взаємодії її елементів(частин) при якому властивості цілого(тобто всієї системи) не можна звести до суми властивостей елементів (Уільям Ешбі). 1.3.2. Емерджентність (emergence - виникнення) – виникнення (в динаміці) якісно нових властивостей при поєднанні елементів в систему. 1.3.3. Принцип колективної дії (гіпотеза про перевагу колективної дії над індивідуальною [за певних умов]) – колективними діями можна досягнути більших результатів ніж індивідуальними.
1.4. Поняття елементарного поведінкового акту. Гіпотеза М.Л. Цетліна про простоту. 1.4.1. (з точки зору індивідуальної поведінки агента) Уільям Ешбі: Вирішення задач людиною завжди зводиться до вибору одного варіанту з багатьох можливих. Майже кожну поведінкову задачу (що робити?), яку вирішує людина, можна звести до формули: "Вкажіть один елемент з деякої множини". З віком людина навчається як найкраще вирішувати задачу цілеспрямованого вибору. 1.4.2. Клод Шенон (приклад): "Повідомлення про машину, що вирішує лабіринтру задачу". Миша Шенона (знайти найкоротший шлях виходу з лабіринту – метод спроб та помилок): елементарний поведінковий акт: в який коридор лабіринту повертати (Т-лабіринт), складна поведінка (сукупність елементарних поведінкових актів): проходження лабіринту. 1.4.3. Основна проблема, яку вирішує агент – це проблема вибору: яку з усіх доступних дій вибрати та здійснити (реалізувати) для того, щоб досягнути поставлену перед ним мету. Складний поведінковий акт: це послідовність дій (послідовність елементарних виборів у часі). 1.4.4. Гіпотеза М.Л. Цетліна про простоту (з точки зору колективної поведінки агентів): - будь яка складна поведінка складається із сукупності простих поведінкових актів, - сумісна реалізація та локальна взаємодія простих поведінкових актів призводить до виникнення (емерджентість) складного поведінкового процесу, - сумісне функціонування колективу простих агентів в складному середовищі здатне забезпечити виконання колективом поставлених перед ним складних задач.
1.5. Наукові напрямки, що складають ТКП. 1. 2. 3. 4. 5. 6. 7.
Багатоагентні системи, Multyagent Systems (MAS) Розподілений штучний інтелект, Distributed Artificial Intelligence (DAI) Інтелект рою, Swarm Intelligence Розподілена робототехніка, Distributed Robotics Штучне життя, Artificial Life (A-Life) Колективи автоматів, Cooperative automata, Колективний Інтелект, Collective Intelligence (COIN)
2
2004 Лекція 2. Поняття агента в ТКП. Узагальнена функціональна структура агента. 2.1. Визначення інтелектуальної системи (агента). Інтелектуальним називається агент, який здатен діяти автономно та гнучко (flexible) для досягнення поставлених перед ним цілей, при цьому під гнучкістю розуміють: реактивність (reactivity) або дієвість (від "дієвий"): інтелектуальні агенти здатні сприймати (perceive) оточуюче їх середовище і своєчасно реагувати (respond) на зміни, що відбуваються в середовищі, для досягнення поставлених перед ними цілей; про-активність (pro-activity) або цілеспрямованість: інтелектуальні агенти здатні демонструвати цілеспрямовану (goal-directed) поведінку шляхом виявлення ініціативи (taking the initiative) в досягненні поставлених перед ними цілей; здантість до спільної діяльності (social ability) або колективність: інтелектуальні агенти здатні взаємодіяти один з одним (і можливо з людиною) для досягнення поставлених перед ними цілей.
2.2. Поняття середовища агента. Типи середовища. 2.2.1. Середовище можна розглядати як найближче оточення агента, з яким він безпосередньо взаємодіє (приклади: операційне середовище для програмного агента, задана ділянка марсіанської поверхні для Mars Explorer-а). Складність середовища, в якому функціонує агент, впливає на складність процесу прийняття рішення. 2.2.2. З цієї точки зору середовища можна поділити на типи за наступними класифікаційними ознаками [Russel and Norvig, 1995]: 1. Доступне (accessible) / Недоступне (inaccessible). Доступне середовище – це середовище, в якому агент може отримати повну, точну та найновішу інформацію пр стан середовища. Більшість складних середовищ є недоступними. 2. Детерміноване (deterministic) / Недетерміноване (non-deterministic). Детерміноване середовище – це середовище, в якому кожна дія має один і той самий гарантований результат, тобто відсутня невизначеність відносно того, в який стан перейде середовище після реалізації даної дії агента. 3. Епізодичне (episodic) / Не епізодичне (non-episodic). В епізодичному середовищі ефективність дії агента залежить від кількості окремих епізодів взаємодії з середовищем, яки не охоплені причиннонаслідковими зв’язками. При цьому відсутній взаємозв’язок між продуктивністю дій агента і різними сценаріями розвитку подій. В більш складному не епізодичному середовищі агент має враховувати взаємозв’язок між біжучим та наступним епізодами. 4. Статичне (static) / Динамічне (dynamic). Статичне середовище – це середовище, яке не змінюється, якщо агент не здійснює в ньому ніяких дій. Динамічне середовище – це середовище, в якому протікають деякі процеси, що змінюють стан середовища незалежно від дій агента. 5. Дискретне (discrete) / Неперервне (continuous). Середовище називається дискретним якщо існує постійне обмежене число доступних в цьому середовищі дій та характеристик середовища, що розпізнаються (сприймаються) агентом.
2004 2.3. Узагальнена функціональна структура агента. 2.3.1. Узагальнена функціональна структура агента складається з п’яти блоків (рис.1).
стан середовища S
Середовище
Інщі агенти
E
оцінка (виграш)
код обраної дії D
A
Середовище
C
Рис.1. Узагальнена структура вимірювального агента: S – сенсорна система, E – блок оцінки, D – блок прийняття рішень, A – виконавча система, C – блок інформаційної взаємодії з іншими агентами.
S (sense) – сенсорна система; відповідає за отримання інформації про стан середовища, наприклад, у вигляді значень параметрів, що вимірюються давачами сенсорної системи (температура, тиск, радіоактивність), або у вигляді зображень, отриманих за допомогою відеокамери. C (communicate) – блок інформаційної взаємодії з іншими агентами; забезпечує обмін інформацією заданого змісту та формату з сусідніми агентами. E (estimate) – блок оцінки; формує сигнал програшу або виграшу на основі інформації про біжучий стан середовища та інформації від блока інформаційної взаємодії. D (decide) – блок прийняття рішеннь; відповідає за вибір наступної дії, виходячи з інформації про успішність попердніх дій (приклад: автомат з лінійною тактикою, який забезпечує сходимість до виграшного рішення в умовах стаціонарного випадкового середовища). A (actuate) – виконавча система; забезпечує виконання (реалізацію) обраних дій (прийнятих рішень) (наприклад, реалізує переміщення агента у просторі в обраному напрямку).
2.4. Формальний опис системи <середовище, колектив>. В усіх наступних позначеннях верхній індекс задає ідентифікатор {стану, дії}, а нижній індекс – порядковий номер {стану, дії} в часі. 2.4.1. Стани сереовища, дії агента, поведінка. -
E = {e1,e2,….,ek} – множина усіх можливих станів середовища (припускаємо що вона є скінченною), Ac = {d1,d2,….,dn} – набір доступних агенту дій (алфавіт дій), r – поведінка (набір епізодів взаємодії агента з середовищем): d0 d1 d2 d3 dv-1 r: e0→ e1 → e2 → e3→ ... → ev,
-
R – множина усіх можливих скінченних послідовностей (поведінок) для заданих E та Aс, RAc ∈ R – всі послідовності, які завершуютсья дією агента, RЕ ∈ R - всі послідовності, які завершуються станом середовища.
2.4.2. Середовище, агент, колектив. -
τ : RAc → f (E) - функція відображення (функція середовища), відображає поведінку агента (RAс) у деяку підмножину станів середовища, Env = <E, e0, τ>, cередовище – це трійка <E, e0, τ>, де E – множина всіх можливих станів середовища, e0 - початковий стан середовища, τ - функція середовища. Ag : RЕ → Ac - модель (функція) агента, відображае попередню історію розвитку подій (RЕ) у наступні дії агента, MAS = {Agi}, i = 1,…,N - колектив (багатоагентна система), який складається з N агентів, S = <Env, MAS> - загальна система <середовище, колектив>.
2004 2.5. Цільовоа функція агента (agent utility function). 2.5.1. Треба розрізняти функцію оцінки або виграшу (estimation function) та цільову функцію (utility function). Функція оцінки розраховується для кожного біжучого такту взаємодії агента з середовищем, виходячи з сприйнятого агентом стану середовища в цьому такті (функцію оцінки іноді називають відгуком середовища на дію агента). Цільова функція розраховується на основі біжучого значення функції виграшу та значень функції виграшу в попередніх тактах взаємодії. Функція оцінки визначає в який спосіб агент накопичує свій інтегральний ("підсумковий") виграш, на основі якого він приймає рішення про вибір своїх наступних дій. 2.5.2. Звичайний спосіб задання цільової функції полягає в тому, щоб запрограмувати агента, тобто вказати в яких обставинах, яку послідовність дій виконувати (так зване програмне управління). Цей спосіб не підходить, якщо ми маємо справу з непередбачуваними або невідомими наперед обставинами. В цьому випадку нам треба вказати агенту що робити, замість того, щоб вказувати як це робити (в який спосіб). Одним з можливих підходів до цього є непрямий опис задачі за допомогою деякої міри ефективності (задача оптимізації). 2.5.3. Два основних способи визначення функції оцінки (виграшу) як показника ефективності дій агента: 1. Кожному стану середовища (множина E) відповідає деяке числове значення (наприклад, з множини дісних чисел ℜ) показника ефективності. Це значення показує наскільки "добрим" (вигідним) для агента є цей стан середовища. Ця оцінка є локальною за часом.
u1 : E → ℜ. 2. Кожній з усіх мжливих поведінок агента (множина R) відповідає деяке числове значення показника ефективності. Ця оцінка є довготерміновою.
u2 : R → ℜ. 2.5.4. Цільова функція агента визначає в який спосіб показники ефективності по різних станах середовища або по різних поведінках агента об’єднуються в одну величину, яка враховується блоком прийняття рішень при виборі наступних дій агента.
φ(u) Ag: R → Ac E
Як правило, перед агентом ставиться завдання максимізувати значення цільової функції φ(u). Вигляд цільової функції обирається розробником в залежності від задачі, для вирішення якої проектується агент. 2.5.5. Приклади цільових функцій (T-біжуча кількість тактів взаємодії з середовищем, uj – показник ефективності дій агента (виграш) в j–му такті взаємодії з середовищем): 1.
ϕ (u ) = max{u j }, j = 0,..., T - агент "зацікавлений" у знаходжені стану середовища з найбільшим uj,
2.
ϕ (u ) = ∑ u j , j = 0,..., T
e j ∈E
T
- агент "зацікавлений" у максимізації сумарного виграшу,
j =0
3.
ϕ (u ) =
1 T ∑ u j , j = 0,...,T - агент "зацікавлений" у максимізації середнього по часу виграшу. T j =0
2004 2.6. Класифікація агентів. Приклади змістовної інтерпретації. 2.6.1. Розглянемо класифікацію автономних агентів (рис.2), запропоновану С.Франкліном (Stan Franklin) та А.Грассером (Art Graesser).
Рис.2. Класифікація агентів [Stan Franklin and Art Graesser, 1996] 2.6.2. Змістовна інтерпретація. Прикладом робототехнічних агентів (robotics agents) можуть бути - мобільний наземний робот (mobile robot, unmanned ground vehicle (UGV)), - безпілотний літальний апарат (unmanned flying (air) vehicle (UAV)), - автономний підводний апарат (autonomous underwater vehicle (AUV)). Autonomous mobile robot (unmanned ground vehicle, UGV)
Unmanned flying vehicle ("micro" air vehicle, MAV)
Unmanned mini-submarine (autonomous underwater vehicle/ unmanned underwater vehicle, AUV/UUV)
Nomad, Field Robotics Center, The Robotics Institute, Carnegie Mellon University, Pittsburgh PA
The UCS AVATAR (Autonomous Vehicle Aerial Tracking And Reconnaissance), Robotics Research Laboratories, University of Southern California, Los Angeles, CA
Odyssey IIb, The Autonomous Underwater Vehicles Laboratory, Massachusetts Institute of Technology, Cambridge, MA
2.6.3. Приклади задач, які ставляться перед колективами робототехнічних агентв: - виявлення порушника деякого охоронного периметру колективом мобільних роботів, які виконують функції вартових, - виявлення замаскованого командного пункту колективом безпілотних літальних апаратів, - виявлення підводного човна колективом автономних підводних апаратів і т.п. При цьому чітко разрізняють дві дослідницько-конструкторські задачі: розробка конструкції окремого агента (робототехніка) і розробка алгоритмічного забезпечення колективної поведінки агентів (теорія колективної поведінки).
2004 2.6.4. Приклади програмних агентів (software agents): - агенти розподілених обчислювальних систем, - агенти програмних систем управління та моніторингу комп’ютерних мереж, - агенти комп’ютерних ігор. 2.6.5. Приклад класифікації мобільних робототехнічних агентів (mobile robotics agents) за їх можливостями щодо взаємодії між собою (в порядку зростання цих можливостей): 1. Агенти, що не виявляють (не детектують) сусідів і діють в одиночку. Блок C (communicate) відсутній. Вхідні дані містять лише інформацію про стан середовища (блок S (sense)). 2. Агенти, що виявляють (детектують) сусідів, однак не розрізняють їх. Відсутня будь яка додаткова інформація, що пов’язується з сусідами. 3. Агенти, що виявляють (детектують) сусідів і розрізняють їх, пов’язуючи з кожним сусідом деяку додаткову інформацію (наприклад, відстань до j-го сусіда та напрямок на нього). 4. Агенти, що виявляють (детектують) сусідів, розрізняють їх та мають унікальні номери (ідентифікатори) в рамках всього колективу (це, наприклад, різко спрощує процес обміну інформацією). 5. Агенти, що детектують сусідів та розрізняють їх, мають унікальні номери (ідентифікатори) в рамках всього колективу та будують повну матрицю інформаційних зв’язків в колективі (наприклад, у вигляді повної таблиці маршрутизації повідомлень).
2004
Лекція 3. Поняття колективу в ТКП. 3.1. Визначення колективу агентів (багатоагентної системи). Під колективом будемо розуміти розподілену децентралізовану систему, яка здатна змінювати свою структуру (самоорганізовуватись). Розподіленість – обмеженість інформаційної взаємодії агентів (агенти можуть обмінюватись інформацією з порівняно невеликою обмеженою кількістю інших агентів в рамках наявної моделі інформаційної зв’язності). Наприклад, в межах заданого обмеженого радіусу видимості засобів зв’язку та детектування сусідніх агентів. Децентралізованість – кожний агент самостійно приймає та реалізує рішення в умовах повної або часткової відсутності єдиного центру управління. Самоорганізація – система здатна змінювати свою структуру в залежності від - поставлених перед нею задач, - змін в оточуючому середовищі та - накопичених системою відомостей про ці зміни. При цьому загальна мета самоорганізації полягає в отриманні нових функціональних можливостей більш високого порядку, ніж функціональні можливості окремого агента.
3.2. Основні характеристики колективу агентів. 1. Чисельність (розмір) колективу (N) – кількість окремих агентів, що складають колектив. Є чітка різниця між коллективами з надвеликою кількістю агентів (N > 1000) та порівняно малими колективами 10 < N < 100. Для їх дослідження та розробки використовують різні підходи. Як правило, розрізняють малі (N<10), середні (101000) колективи. 2. Склад колективу - однорідний проти неоднорідного колективу. Це функція розподілу агентів колективу по окремих характеристиках їх функціональної структури. Наприклад, у різних агентів – різні набори доступних дій (різні можливості впливати на середовище). Граничний випадок: повністю однорідний колектив, коли всі характеристики функціональної схеми агентів однакові. Однорідний колектив привабливий тим, що достатньо розробити один алгоритм роботи агента, після чого розмножити його на потрібну кількість копій. 3. Зв’язність колективу – ступінь інтегрованості окремих агентів в єдину систему (колектив). В подальшому будемо розглядати інформаційну зв’язність, рахуючи що в інших аспектах (конструктивному, функціональному, енергетичному) агенти повністю автономні. Дві основні форми: несамовиявлений колектив (зв’язок між агентами відсутній) та самовиявлений колектив (є зв’язок між агентами).
3.3. Цільова функція колективу (world utility function). Відображає попередню історію розвитку подій у колективну поведінку. W(U)
AG: R → AD, де AG = {agi}, i = 1,…,N – колектив агентів, R – множина усіх можливих скінчених послідовностей взаємодії агента з середовищем, AD = {Adi}, i = 1,…,N – колективна дія (сукупність дій всіх агентів колективу). Задача колективу максимізувати значення функції W(u), яка залежить від дій усіх агентів. Приклади цільових функцій колективу: - формування правильних геометричних фігур у просторі (pattern formation), - перевезення вантажів, для яких потрібні зусилля декількох роботів-вантажників, - знищення максимальної кількості цілей в заданому районі, - як найшвидше проходження лабіринту, - проходження через мінне поле з найменшою кількістю втрат, - збирання найбільш повної інформації про об’єкт дослідження мобільними вимірювальними агентами (наукова тематика кафедри), - розподілення обчислювальних ресурсів програмними агентами і т.д.
2004 3.4. Способи опису колективної поведінки. Спосіб опису колективної поведінки визначає по-перше, яке представлення обрано для функції W(u), і подруге, який підхід обрано для її аналізу та синтезу. Найбільш розповсюджені способи опису колективної поведінки: 1. 2. 3. 4. 5. 6.
Функціональний аналіз. Марківські випадкові процеси. Теорія автоматів. Теорія ігор. Теорія статистичних рішень. Логіка предикатів.
В рамках обраного способу розробляються - моделі колективної поведінки (МКП), - критерії ефективності колективної поведінки - тестові задачі (Task Environments).
3.5. Основна проблема ТКП. Розробник колективу агентів отримує від замовника інформацію про цільову функцію колективу. Після цього він шукає спосіб відображення цільової функції колективу у цільові функції окремих агентів.
W(u) → {φi(u)}; i = 1,…,N φi(u) можуть бути різними (неоднорідний колектив). Більш складна задача відобразити W(u) у набір однакових цільових функцій агентів:
W(u) → {φ(u)} Якщо вигляд W(u) відомий, то вирішується задача самонавчання (зміна параметрів функцій). В іншому випадку W(u) – функціонал. Вирішується задача самоорганізації, пошуку вигляду W(u).
2004 Лекція 4. Децентралізоване та централізоване управління. Самоорганізація. 4.1. Визначення централізованого та децентралізованого управління 4.1.1. Централізоване управління (рис.1,а) передбачає наявність одного блоку управління, який збирає повну інформацію про всі об’єкти управління і генерує (розраховує, приймає рішення про) сигнали управління для всіх цих об’єктів. Децентралізоване управління (рис.1,б) передбачає, що кожний з об’єктів управління оснащений власним блоком управління, який генерує для нього сигнали управління, виходячи з інформації лише про нього.
БУ
ОУ
БУ
ОУ
ОУ
БУ
ОУ
....
..... БУ
..... ОУ
ОУ а)
б)
Рис.1. Структура а) централізованого та б) децентралізованого управління (БУ – блок управління, ОУ – об’єкт управління) 4.1.2. Існують дві вимоги до систем управління: 1. адекватність (цілеспрямованість, доцільність), 2. оперативність управління (швидкість з якою примаються рішення). Принцип дуальності управління (Фельдбаум) – ці вимоги протирічать одна іншій, в наслідок чого має бути знайдено оптимальне співвідношення цих двох вимог. Це протиріччя набуває особливого змісту для розподілених систем.
4.2. Порівняння централізованого та децентралізованого управління на прикладі 4.2.1. Задача побудови вежі (Tower building task). Розглядається обмежений двовимірний дискретний простір. Перед колективом мобільних агентів ставиться задача побудувати в цьому просторі “вежу”. Кожний з агентів може рухатись в чотирьох напрямках (вверх, вниз, вправо, вліво), а також піднімати та перевозити один вантаж (підняти, покласти) → всього шість команд. Першопочатково “будівельні блоки” розкидані випадковим чином. Стартове розміщення агентів в просторі так само випадкове. Де буде побудована вежа не має значення. Фактично треба зібрати всі блоки до купи. 4.2.2. Алгоритм для централізованого управління (один з можливих): 1. Визначити координату центру вежі. 2. Доки не побудована вежа: Цикл від 1 до N (виконується для кожного агента): 1.1 Якщо агент знайшов блок, то визначити чи належить цей блок до вежі. Якщо так, то шукати далі. Якщо ні, то визначити куди рухатися агенту з блоком (алгоритм №1 додавання блоку до вежі), і віддати відповідний наказ. 1.2 Інакше вибрати напрям руху для агента (алгоритм №2 пошук блоку в просторі) і віддати наказ. 4.2.3. Алгоритм для децентралізованого управління (виконується кожним агентом) 1. Рухатись в будь якому напрямку. 2. Якщо я зустрів вантаж, то якщо я з вантажем, то покласти його біля цього вантажу і перейти до п.1. інакше взяти вантаж і перейти до п.1. 4.2.4. Обидва алгоритми гарантують вирішення задачі. Алгоритм для централізованого управління є складним та більш швидко приводить до результату. Алгоритм для децентралізованого управління дуже простий та працює значно повільніше. Порівнюючи складність та швидкодію цих алгоритмів, можна зробити висновок про доцільність комбінації двох підходів до управління. В цьому аспекті самоорганізація розуміється як пошук оптимального співвідношення централізованого та децентралізованого управління в залежності від поставленою перед системою задачі та умов, в яких ця задача вирішується.
2004 4.3. Ентропія (невизначенність) за Шеноном (C. Shannon) 4.3.1. Нехай ми маємо деяку кількість можливих подій, ймовірності реалізації яких р1, р2,..., рn. Ці ймовірності відомі і не змінюються в чачі (стаціонарний випадковий процес). Виникає питання, чи можна знайти міру того наскільки великим є вибір в цьому наборі подій, або наскільки невизначеним є результат цього вибору. 4.3.2. До цієї міри, яку далі будемо позначати через Н, висуваються наступні вимоги – 1. Н повинно бути неперервною відносно рі; 2. Якщо ймовірності всіх подій рівні рі = 1/n, то Н(n, рі) повинно бути монотонно зростаючою функцією від N; 3. Якщо вибір розпадається на два послідовних вибори то попереднє значення Н має бути зваженою сумою індивідуальних значень Н. 4.3.3. Теорема (Клод Шенон). Існує єдина функція Н, яка задовольняє всі три перераховані вимоги. n
H = −∑ pi lg pi , i =1
де n – кількість подій, рі - ймовірність i-тої події.
4.4. Визначення самоорганізації. Міра порядку (Фьорстер). 4.4.1. Розглянемо деяке скінчене замкнене середовище (всесвіт) в якому розміщена деяка система (Рис.2). всесвіт система Оточення с-ми
Рис.2. Система та її оточення. Границі с-ми розбивають всесвіт на дві частини, власне систему та її оточення. Система може знаходитися в деяких станах (множина S). Якщо система знаходиться в цих станах з одноковою ймовірністю, то вона гранично невпорякована (максимальна ентропія). Якщо дозволити цій системі на протязі малого інтервалу часу здійснювати роботу по самоорганізації, то її ентропія Hs за цей час має зменшитись.
dHs < 0. dt В інакшому випадку це була б механічна система (
dHs dHs = 0 ) або термодинамічна система, для якої > 0. dt dt
Висновок – самоорганізація системи є можливою лише за рахунок дезорганізації її оточення. Нас буде цікавити не енергія, яку відбирає система з оточення, а порядок оточення, який в нього відбирається системою. Тобто розглядається наступне питання: скільки порядку може асимілювати наша система з оточуючою середовища? 4.4.2. Міра порядку (надлишковість за Шенноном) → R
= 1−
H , R ∈ [0;1] де Hm
Hm – максимальна ентропія системи, H – біжуча ентропія системи. R=0 (повна відсутність порядку, хаос, коли H=Hm), R=1 (максимальна впорядкованість системи, H=0)
2004 4.5. Правило самоорганізації. 4.5.1. Швидкість зміни R в с-мі, яка самоорганізується має бути додатньою
dR >0 dt З плином часу dR/dt має зростати. Підставивши замість R значення з вормули (1) і продифференціювавши отримаємо:
dR dR >0⇒ =− dt dt Так як
Hm(
dH dHm ) − H( ) dt dt H 2m
- правило самоорганізації.
H 2 m завжди більше нуля, то вираз правила самоорганізації можна записати в наступному вигляді: dHm dH H > Hm . dt dt
4.5.2. Розглянемо два випадки – 1. Робота внутрішнього демона. Демон – це сутність, яка діє без відома та без вказівок людини.
Hm = const →
dH < 0 - максимальна ентропія є незмінною. dt
В цьому випадку ентропія системи залежить від розподілення ймовірностей станів (елементів), які мають знаходитись в деяких розрізнюваних станах і змінюватися в такий спосіб, щоб значення Н зменшувалося. Фактором, який впливає на розподілення ймовірностей може бути те, що елементи володіють певними керованими характеристиками (наприклад, напрям руху). 2.
робота зовнішнього демона.
H = const →
dHm > 0 - біжуча ентропія є незмінною. dt
Максимальна ентропія системи має зростати. Єдиний шлях збільшення максимальної ентропії - це приєднання до системи нових елементів. Проблема полягає в тому, що біжуча ентропія системи при цьому має не змінюватись (це і розцінюється, як самоорганізація).
2004
Лекція 5. Однорідність та неоднорідність колективу агентів. 1. Поняття однорідності та неоднорідності. В повністю однорідному колективі всі агенти мають однакову цільову функцію та однакові можливості по - сприйняттю станів середовища (сенсорна система: однаковий набір давачів) - навчанню найкращій поведінці (блок прийняття рішення) та - реалізації прийнятих рішень (блок реалізації прийнятих рішень). Неоднорідність колективу можна розглядати на двох рівнях: 1. Різні цільові функції агентів (різне призначення агентів колективу), яким відповідають різні архітектури (способи побудови агентів) → функціональна неоднорідність. 2. Різні типи (можливості) блоків в рамках однакової архітектури агента з однаковою цільовою функцію (наприклад, різні блоки прийняття рішення: різні методи самонавчання) → параметрична неоднорідність. Однорідні та неоднорідні колективи володіють деякими протилежними системними властивостями. Порівняльний аналіз цих властивостей дає змогу визначити за яких обставин який колектив (однорідний чи неоднорідний) найбільш вигідно обрати для вирішення поставленої задачі.
2. Адаптивне управління з механізмом наслідування. Адаптивне управління з механізмом наслідування можна розглядати як модель колективної поведінки для дослідження оптимального співвідношення однорідності та неоднорідності. Разом з адаптивним виділяють наступні три основні способи управління: -
програмне управління (блок управління має набір детальних обов’язкових для виконання інструкцій – програм поведінки по досягненню потрібної мети), застосування: детерміновані (прості) середовища; рефлексивне управління (блок управління “провокує” об’єкт управління на виконання певних дій (наприклад, шляхом дезінформації)), застосування: конфліктні ситуації; адаптивне управління (поведінка об’єкту управління (середовища) досліджується шляхом масових спроб, за рахунок чого виключається невизначеність ситуації), застосування: недетерміновані (складні) середовища.
Приклад адаптивного управління. Адаптивне управління з механізмом наслідування (варіант). Розглянемо N агентів, які розміщенні в середовищі E. В процесі ітераційної взаємодії з середовищем агенти одночасно в кожному такті взаємодії реалізують кожний по одній дії з набору D={d1,d2,…} усіх доступних для них дій, формуючи в такий спосіб колективну дію. Після цього кожний агент отримує відгук середовища ut,i,i=1,…,N (значення функції оцінки, reward function) і пов’язує його з обраною в цьому такті дією dkt,i – (dkt,i, ut,i). При цьому значення {ut,i} можуть бути різними, наприклад, в залежності від розташування i-го агента в середовищі. Модель інформаційної зв’язності – випадкова парна взаємодія: в кожному такті агенти випадковим чином розбиваються на пари, в яких відбувається обмін значеннями (dkt,i, ut,i). Таким чином кожний агент в кожному такті взаємодії окрім інформації про свою дію та її успішність додатково отримує інформацію про дію та успішність цієї дії іншого випадково обраного агента. Цільова функція окремого агента φi(u)– максимізувати свій сумарний виграш (φi(u) = Σut,i). Цільова функція колективу визначається у вигляді суми біжучих значень цільових функцій агентів (WUF = Σφi(u)). Кожний агент (Agi) в своїй поведінці керується двома правилами: 1) Якщо реалізована мною дія принесла більший виграш ніж виграш іншого агента, то повторити свою дію. 2) Інакше (якщо мій виграш менше, то) - з ймовірністю p1 обрати наступну дію випадково, - з ймовірністю p2 повторити дію іншого агента. або те саме в іншому вигляді: 1) Якщо ut,i > ut,j, i≠j, то повторити свою успішну дію dkt+1,i = dkt,i. 2) Якщо ut,i < ut,j, i≠j, то - з ймовірністю p1 випадково обрати будь-яку дію з набору доступних дій D, - з ймовірністю p2 повторити дію іншого агента dkt+1,i = dkt,j.
2004 При цьому p1 + p2 = 1. Тобто кожний агент з ймовірністю p2 наслідує інших агентів, а з ймовірністю p1 діє «самостійно», обираючи свою дію випадково. Т.ч. "успішні" агенти будуть зберігати свою дію на довший час, а "невдахи" будуть змінювати дії, наслідуючи "успішних" агентів. В такий спосіб відбувається пристосування (адаптація) колективу до середовища.
3. Гнучкість та цілеспрямованість колективної поведінки. Однорідність можна розглядати, як потенційну здатність кожного агента виконувати будь яку функцію (дію) з усіх можливих (доступних) в даному середовищі функцій (дій), а неоднорідність – як деякий біжучій розподіл агентів по різним функціям (діям). МКП з адаптивним управлінням дозволяє кількісно та якісно дослідити динаміку співвідношення однорідності та неоднорідності колективу. При цьому однорідність відображається у гнучкість КП, а неоднорідність – у цілеспрямованість КП.
p1
Властивість випадковість
p2
наслідування
Агент індивідуальна свобода дій (однорідність, універсальність, самостійність) залежність від інших агентів (неоднорідність, спеціалізованість, колективізм)
Колектив гнучкість КП
Дія розширює діапазон пошуку ефективної КП
цілеспрямованість КП
підвищує рівень ефективності КП
Пошук ефективної КП (дослідження середовища) потребує деякого часу (це плата за нестачу інформації про середовище). Якщо p1 > p2 (випадковість переважає наслідування), то цей пошук займає мало часу, але і рівень ефективності знайденої КП буде невисоким. В протилежному випадку (p1 < p2) рівень досягнутої ефективності буде високим, але пошук відповідної КП займе багато часу. Припустимо, що колектив досягнув деякого оптимального розподілу функцій між агентами, який забезпечує максимум ефективності КП, тобто досягнув граничного рівня спеціалізації для біжучих характеристик середовища. Але у випадку зміни цих характеристик цілеспрямована зміна досягнутого розподілу функцій може тривати неприпустимо довго. Тому оптимальне управління в деяких випадках є невигідним: колектив не встигає пристосуватись до нових змін у середовищі. Зміни у середовищі викликають потребу виконувати новий пошук ефективної КП. Якщо середовище змінюється швидко, то довгий пошук (коли p1 < p2) є недоцільним. Якщо середовище змінюється повільно, то недоцільним буде швидкий пошук (коли p1 > p2). Висновок: існує деяке оптимальне співвідношення між індивідуальною свободою дій та залежністю від інших агентів (тобто між однорідністю і неоднорідністю колективу).
4. Приклад моделі колективної поведінки з адаптивним управлінням. Розглянемо модель колективної поведінки (МКП), в якій біжучий сумарний виграш агента дорівнює його "життєвій енергії". Тобто виграшні дії збільшують енергію агента, а програшні зменшують. При цьому зміна дії на іншу відбирає в агента деяку частку енергії (тобто зміна поведінки потребує енергетичних затрат). Якщо біжучий рівень енергії Si,t стає меншим за S1, то агент вмирає, а якщо рівень енергії стає більшим за S2, то агент поділяється на двох нових агентів з енергією Si,t/2. Si,t < S1 ⇒ Ai∈∅, i=1,…,N(t), t=1,…,T Si,t > S2 ⇒ Ai→ Ai(Si,t/2), Aj(Si,t/2), i≠j, i,j=1,…,N(t), t=1,…,T Тобто ефективність колективної поведінки відображається у вигляді чисельності колективу. При цьому вкрай низька ефективність призводить до зникнення (загибелі) колективу. а) спеціалізований колектив (p1 < p2) б) менш спеціалізований колектив (p1 ≈ p2) в) неспеціалізований колектив (p1 > p2)
2004
Висновок: Спеціалізований колектив з великим часом адаптації (пошуку ефективної КП) легко впорався з невеликими по інтенсивності протидіями середовища (10%, 30%), однак загинув, коли протидія раптово і сильно зросла (70%). Менш спеціалізовані колективи за рахунок більших можливостей до адаптації впоралися з сильною протидією середовища. Т.ч. якщо нас цікавить ефективність КП на малому проміжку часу T, то перевага на боці неоднорідних (спеціалізованих) колективів, якщо T → ∞, то перевага віддається однорідним (неспеціалізованим) колективам.
5. Спеціалізація (формування груп взаємодоповнюючих стратегій). Ускладнити модель колективної поведінки з адаптивним управлінням можна таким правилом: ті функції (дії), які агент виконує дуже рідко або взагалі не виконує, виключаються з множини всіх доступних для нього дій (тобто з часом агент втрачає здатність виконувати "невживані" ним дії) → реалізується деяка залежність алфавіту (набору) дій агента від часу Di → Di(t). Таким чином можна реалізувати процес формування груп взаємодоповнюючих стратегій (функцій): разом з наслідуванням в процесі випадкового пошуку можуть знаходитись і закріплюватись не подібні, а доповнюючи одна одну дії, тобто такі дії, які підсилюють діяльність інших агентів і колективу в цілому (розподілення взаємодоповнюючих функцій → функціональна емерджентність (У.Ешбі)). Цей підхід можна застосувати при вирішенні задач в недоступному динамічному середовищі → в ньому розміщується однорідний колектив, який з часом самостійно знаходить найкраще для цього середовища розбиття агентів по групам взаємодоповнюючих стратегій (функцій).
2004
Лекція 6. Співпраця та суперництво в колективі агентів. На попередній лекції ми розглянули спосіб як змусити систему самостійно виконати розбиття на взаємодоповнюючі функціональні блоки. На цій лекції ми розглянемо спосіб в який система самостійно визначає ступінь зв’язності (взаємозалежності) блоків (це щось на зразок самостійного визначення співвідношення p1 і p2 в МКП з адаптивним управлінням). Обидва способа дозволяють робити це динамічно в залежності від змін в оточенні системи, чи змін в задачах, які ставить перед системою її користувач.
6.1. Поняття співпраці (cooperation) та суперницства (competition). Агент ставиться в умови вибору між власними інтересами та інтересами колективу (тобто інтресами інших агентів). Це протирічча в поведінці агента використовуюється для знаходження колективом оптимального рівня взаємодії (взаємозалежності) агентів в наперед невідомих умовах (недоступне нестаціонарне середовище), що відповідає максимуму цільової функції колективу. Протидія (протиборство): випадок, коли інтереси агентів антогоністичні (повністю протилежні) → модель: гра з нулевою сумою (zero-sum game) → "неколектив" (гра n гравців з нулевою сумою). Якщо інтереси агентів не протилежні (гра з загальною сумою, general-sum game, колектив), то серед них можна виділити спільні інтереси (предмет співпраці), та протилежні інтереси (предмет суперництва). Сценарій: В кожний момент часу N агентів одночасно реалізують обрані ними дії і отримують відгук середовища. В момент реалізації дії агенту невідомо які дії обрали інщі агенти. При цьому кожний з них зацікавлений в першу чергу величиною власного виграшу (децентралізоване управління) (+володіє достовірною інформацію лише про власний виграш). Розглядається ситуація, коли індивідуальні виграші можуть бути різними (завдяки різним причинам) і дії одних агенів можуть впливати на величину індивідуального виграшу інших агентів. Ключове питання: як агентам співвідносити свої індивідуальні виграші, щоб реалізувати найкращу колективну поведінку?
6.2. Співвідношення між індивідуальною та колективною продуктивністю. Проблема субоптимізації: збільшення індивідуального виграшу (продуктивності) окремого агента не завжди призводить до збільшення колективного виграшу. Приклад: використання обмеженого спільного ресурсу. Можливий вихід (еволюція співпраці, Evolution of Cooperation): Довготривала (стійка) співпраця може призвести до нелінійного зростання сумарного виграшу SΣ(t,N): (synergy), наприклад за рахунок подолання обмежень на спільний ресурс (вовки). Корисність індивідуальних дій (individual utility) – це оцінка внеску даного агнета в загальний результат колективної дії. Приклади: функціональна корисність – об’єм виконаних робіт в порівнянні з іншими агентами (землекопи), інформаційна корисність – "цитатна міра", кількість інформації про середовище, здобута даним агентом в порівнянні з іншими. Ця оцінка може бути використана як складова індивідуальної функції виграшу агента (individual utility function) за принципом: чим більша корисність дій агента для колективу, тим більше його виграш.
6.3. Ітераційна ділема ув’язненого (Iterated Prisoners Dilemma, IPD). Матриця гри для ділеми ув’язненого виглядає наступним чином A2 C
D
C
R1, R2
S1, T2
D
T1, S2
P1, P2
A1
Ділема ув’язненого це гра двох осіб з не нульовою сумою (general-sum game). Кожний з гравців має дві можливості: співпрацювати (C - cooperate) чи протидіяти (D - defect). Ідея гри полягає в тому, що, якщо обидва гравці співпрацюють, то вони виграють (R), але, якщо один з них починає протидіяти, то він виграє більше (T>R). Якщо ж обидва гравці протидіють, то вони програють (P), але не так багато як програє "ошуканий" гравець в першому випадку (S< P).
Ділема ув’язненого має зміст, коли T>R>P>S, де R>(S+T)/2, Приклад: T = 5, R = 3, P = 1, S = 0. Ітераційна ділема ув’язненого (iterated prisoner’s dilemma, IPD) – це гра з багатокроковим повторенням, в якій кожний з опонентів пам’ятає деяку кількість (глибина пам’яті) результатів минулих розіграшів. Згідно теорії ігор оптимальною (стійкою) стратегією в однокроковій IPD є протидія (D) (див. основне припущення ТІ та принцип обережності). В той же час при збільшені кількості кроків виникає задача максимізації середнього виграшу окремого гравця, яка не має тривіального рішення. Це означає, що постійна протидія не гарантує максимального середнього виграшу.
2004
Лекція 7. Колективні моделі реальності. Колективне знання. 7.1. Визначення колективної моделі реальності (КМР). Модель реальності (world model): набір взаємопов’язаних даних про оточення агента та його дії в цьому оточенні. Індивідуальні моделі реальності агентів є вхідною інформацією для побудови КМР. Носіями КМР є окремі агенти. Окрема КМР передбачає наявність однакових для двох або більше агентів структур збереження даних та однакового для двох або більше агентів наповнення цих структур. Самоорганізацію колектива можна розглядати, як розвиток, типізацію та розповсюдження колективних моделей реальності. Колективні моделі реальності визначають напрямок та швидкість самоорганізації та розвтку діяльності колективу. Дослідження агентом середовища та обмін інформацією між агентнами породжує динамізм, видозмінність їхніх індивідуальних моделей реальності. В процесі цих видозмін за певним законом формуюються колективні моделі.
7.2. Приклад організації пам’яті агента на основі його узагальненої функціональної структури. 1. 2. 3. 4. 5.
Модель зовнішнього середовища – будується на основі індивідуальних сенсорних даних та сенсорних даних, отриманих від інших агентів ("сусідів"). Містить дані про середовище. Приклад запису: відлік часу, координата, назва параметру, величина параметру. Модель колективу – будується на основі даних про виявлених сусідніх агентів (вихідна інформація блоку детектування). Містить данні про колектив. Приклад запису: відлік часу, список ID виявлених сусідів. Модель впливів на середовище – будується на основі звітності блоку реалізації прийнятих рішень. Містить дані про реалізовані/не реалізовані дії. Приклад запису: відлік часу, номер дії, відмітка про успішність реалізації. Модель розвитку – будується на основі службових даних блоку прийняття рішень. Містить дані про стратегії поведінки, що їх використовує агент (пам’ять стратегій поведінки). Приклад запису: відлік часу, номер дії, величина виграшу. Модель переконань – будується на основі службових даних блоку оцінки. Містить дані про функції оцінки (системи цінностей), що їх застосовує агент. Приклад запису: відлік часу, номер функції оцінки.
7.3. Колективне знання. Колективне знання – це функціонально повний набір колективних моделей та правил їх використання, що застосовуються усіма агентами колективу. Колективне знання – не сума індивідуальних, а якісно нова інтегральна властивість. Індивідуальна пам’ять агента не здатна вмістити колективне знання. Вона містить або якусь його частину, або відбиває його в деякому узагальненому вигляді (звичайно і те, і інше). Колективне знання є цілістним єдиним утворенням, воно існує як самостійно діюча система, компоненти якої можуть виключатись, замінюватись та додаватись.
7.4. Схема утворення колективного знання. 5 1
2
3
4
6
7
8 1. 2. 3. 4. 5. 6. 7. 8.
Виділення з індивідуальних моделей загальних фрагментів. Уточнення та видалення неспівпадінь (критика та випробування). Інтеграція індивідуальних спеціалізованих моделей. Формування колективних моделей. Оцінка та перевірка ефективності застосування колективних моделей. Генерування індивідуальних рішень щодо модифікації колективної моделі. Стимулювання індивідуальної поведінки щодо розвитку колективної моделі. Контролювання цілістності та коректності колективних моделей.
7.5. Способи збереження даних колективних моделей. 1. 2.
Внутрішнє (колективні моделі зберігаються в індивідуальній пам’яті агентів). Зовнішнє (колектинві моделі зберігаються у середовищі). Приклад (Джонсон).
2004 Лекція 8. Колективне прийняття рішень. 8.1. Поняття колективного прийняття рішень. 8.1.1. Колективний вибір відображає множину індивідуальних вподобань агентів в одне вподобання з цієї множини, яке надалі називається колективним. Багатокрокове повторення колективного вибору будемо низивати процесом колективного прийняття рішень. В найбільш загальному вигляді проблема колективного прийняття рішень полягає у знаходжені "справедливого" (найкращого за низкою умов) методу об’єднання індивідуальних вподобань агентів в єдине вподобання всього колективу. 8.1.2. Формальний опис процесу колективного вибору рішень. - альтернативи: x1, x2, …, xm, m – кількість альтернатив → множина можливих альтернатив: U, приклад: U={x1, x2, x3}; - індивідуальний вибір: з множини альтертатив обирається одна, приклад: {x1, x2, x3} → x2; - індивідуальне вподобання або порядок вподобань Rj: множина альтернатив сортується в порядку зменшення їх переваг, приклад: {x1, x2, x3} → (x2, x3, x1) або {x1, x2, x3} → (x3, x1∼x2), в агента є дві можливості відносно альтернатив: віддавати перевагу + бути байдужим; - множина всеможливих індивідуальних вподобань: R={R1, R2, …, Rm}, приклад: U = {x1, x2}, R1=(x1, x2), R2=(x2,x1), R3=(x1∼x2), R = {R1, R2, R3}; - множина всеможливих впорядкованих систем вподобань R(N) = R×R×…×R, приклад: N=2, U = {x1, x2}, R={R1, R2, R3}, R(2) = R × R; - профіль індивідуальних вподобань rj = (R1, R2, …, RN): елемент множини R(N), приклад: N=2, (R2,R3).
8.2. Функія колективного вибору. 8.2.1. Під функцією колективного вибору (ФКВ) будемо розуміти правило, яке кожному профілю індивідуальних вподобань ставить у відповідність одне (колективне) вподобання з множини R F: (R1, R2, …, RN) → Rj, Rj∈R. (N) Область визначення ФКВ: R , область значень ФКВ: R. Приклади ФКВ: справедлива, нав’язана, диктаторська, випдакова (безглузда) + правило простої більшості 8.2.2. Зостереження, що до питань, які не роглядаються: - випадки навмисного вказання агентом хибного вподобання з метою вплинути на рішення колективу - ймовірністний підхід до прийняття колективного рішення (висуваєься жорстка вимога, щоб ФКВ відображала RxR в R, а не в розподіл ймовірностей на R) - випадки складних вподобань, коли вподобання агентів можуть мати декілько градацій сили та слабкості
8.3. Теорема Ерроу про неможливість (парадокс Ерроу, Arrow K.J.). 8.3.1. Підхід до вирішення проблеми колективного прийняття рішень: замість того, щоб розгядати окремі ФКВ, формується функціонально повний набір (система) вимог до ФКВ. Кожна з вимог відображає свій специфічний аспект справедливості (розумності) ФКВ. 8.3.2. Умови, які має задовільняти ФКВ: 1. Універсальність: N ≥ 2, m ≥ 3, F визначена для всіх можливих rj∈R(N). 2. Додатній зв’зок колективних та індивідуальних вподобань: якщо ФКВ віддає перевагу xi, а не xj для даного профілю r, то ця перевага має зберігатися для всіх інших профілів, в яких індивідуальні вподобання інших альтернатив окрім xi не змінюються + не змінюються або змінюються на користь xi всі парні співвідношення з іншими альтернативами. 3. Незалежність незв’язаних альтернатив: якщо в нас є два профіля, такі, що парне порівняння будь-яких двох альтернатив xi, та xj в цих профілях однакове для всіх агентів, то вподобання колективу для цих двох профілів мають бути так само однакові. 4. Самостійність (незалежність агентів): для кожної пари альтернатив xi і xj, i≠j існує такий профіль r, що колектив віддає перевагу xi, а не xj (ФКВ не є нав’заною зі сторони відносно цієї пари альтернатив). 5. Відсутність диктаторства: не існує такого агента, що якщо він віддає перевагу xi, а не xj, то колектив так само віддає перевагу xi, а не xj, незалежно від вподобань інших агентів. 8.3.3. Теорема Ерроу про неможливість: Умови 1, 2, 3, 4 і 5 є несумісними, тобто не існує ФКВ, яка б задовільняла кожній з цих умов.
2004 8.3.4. Підходи до подолання парадоксу Ерроу: 1. Зберегти формулювання задачі, але відкинути якусь одну з умов, як занадто жорстку. 2. Змінити формулювання задачі шляхом змінення вихідних даних або вимог до ФКВ.
2004
Лекція 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 – затримка, з якою повідомлення надходять від оного агента до іншого. 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).
2004 Приклад KQML-повідомлення: (ask-one :content :reciever :language :ontology )
(PRICE IBM ?price) stock-server LPROLOG 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)), - зародження та розвиток мови спілкування у колективі агентів, - трансформація мови спілкування у мову планування індивідуальних дій.
2004
Лекція 10. Утворення колективу. Самоіменування. Самоузгодження. 10.1. Архітектура інтегрального підпорядкування (subsumption architecture, Р.Брукс). 10.1.1. Відноситься до так званих реактивних або поведінкових архетектур, які базуються на наступних вихідних ідеях: 1. Інтелектуальна (розумна) поведінки нерозривно пов’язана з середовищем, в якому розміщено агента. Ця поведінка є результатом взаємодії агента з його середовищем. 2. Інтелектуальна поведінка виникає сама собою шляхом взаємодії різних простих поведінок. 10.1.2. Дві основні складові архітектури інтегрального підпорядкування: 1. В процесі прийняття рішення використовується набір проблемно-орієнтованих поведінок, кожна з яких є окремою функцією прийняття рішення, яка відображає сприйнятий стан середовища у деяку дію. Кожна з цих поведінок має свою цільову функцію і ініціюється лише при виникненні відповідних умов. 2. Декілько поведінок можуть реалізовуватись одночасно. Визначається механізм узгодження цих поведінок (вибір одної дії з декількох запропонованих) у вигляді ієрархії інтегрального підпорядкування: поведінки розбиваються на рівні. Поведінка нижчого рівня переважує поведінку верхнього рівня: чим нижче рівень, тим більше пріоритет поведінки. Ключова ідея: чим вище рівень, тим більш абстрактною є поведінка + поведінки вищих рівнів користуються результатами поведінок нижчих рівнів. Поведінки нижчих рівнів = базові алгоритми КП.
10.2. Основні вимоги до базових алгоритмів колективної поведінки. 10.2.1. Робота в реальному масштабі часу (on-line, real-time): вибір рішення агентом (колективом) має займати деякий незмінний (constant) проміжок часу, який не перевищує заданої величини затримки. 10.2.2. Локальність поведінки: алгоритм КП має бути поданий у вигляді алгоритмів індивідуальної поведінки агентів (децентралізація). 10.2.3. Локальність взаємодії: алгоритм КП має коректно працювати в умовах обмеженої (локальної) взаємодії агентів, наприклад, в умовах обмеженого радіуса видимості засобів зв’язку. 10.2.4. Уніфікованість (однаковість): всі агенти мають виконувати один і той самий локальний алгоритм (однорідність колективу). 10.2.5. Незалежність від кількості агентів N: алгоритм КП має продовжувати працювати коректно при зміни чисельності колективу, наприклад, після виходу деяких агентів з ладу.
10.3. Утворення колективу: самовиявлення (detecting). 10.3.1. Під утворенням колективу будемо розуміти отримання агентом інформації про інших агентів колективу (тобто перехід від несамовиявленого до самовиявленого колективу). Формат та зміст цієї інформації визначається розробником (див. приклад класифікації агентів за складністю) в рамках моделі інформаційної зв’язності. 10.3.2. Приклад алгоритму самовиявлення (self-detecting) (ts, tw, Z, V, R) [для реалістичної ACM]. 1. Початок. i := 0. 2. Згенерувати широкомовне (broadcast) повідомлення-запит. 3. Перейти в режим очікування повідомлень. ∆t := 0. 4. t1 := gettime(). 5. Якщо отримано нове повідомлення-відповідь, то 5.1. дешифрувати повідомлення (ID сусіда, координати, статус), 5.2. зберегти отриману інфомацію в моделі колективу, 6. Якщо отримано повідомлення-запит, то 6.1. Якщо це новий (необроблений) запит, то - згенерувати повідомлення-відповідь, - запам’ятати цей запит, - записати в лічильник цього запиту одиницю, 6.2. Інакше Якщо значення лічильника цього запиту менше V, то - згенерувати повідомлення-відповідь, - збільшити лічильник запиту на один, Інакше ігнорувати запит. 7. t2 := gettime(). 8. ∆t := ∆t + (t2 – t1). 9. Якщо ∆t < tw, то перейти до п.4., інакше до п.10. 10. Якщо i < Z, то i := i + 1 та перейти до п.2., інакше Кінець.
2004 ts – період самовиявлення (задає періодичність спрацювання алгоритму) tw – час очікування (задає тривалість очікування, що припадає на один запит) V – задає кількість відповідей на один запит (надійність) Z – задає кількість запитів для одного спрацюваня алгоритму R – радіус видимості засобів зв’язку та детектування 10.3.3. Для випадку мобільних агентів ts має залежати від швидкості руху агентів: чим швидше переміщуються агенти, тим частіше має спрацьовувати алгоритм самовиявлення і навпаки. У випадку поганої (неправильної, несвоєчасної, повільної) роботи алгоритму самовиявлення колектив буде отримувати неправдиву інформацію про свою біжучу структуру з усіма випливаючими негативними наслідками. 10.3.4. Програмні агенти: В IP-мережі в якості радіуса видимості може використовуватись деяка відстань від IP-адреси агента (сканування адрес в діапазоні від <моя IP-адреса> - R до <моя IP-адреса> + R). При цьому можна використовувати тактику динамічної зміни радіуса видимості R в залежності від кількості виявлених сусідів (наприклад, збільшувати радіус, якщо не виявлено жодного сусіда). 10.3.5. Супутні задачі: - утримання інформаційної зв’язності колективу - управління інформаційною зв’язністю колективу - локалізація агентів колективу (localization)
10.4. Самоіменування: генерація унікальних імен агентів. 10.4.1. Нехай в нас є N агентів здатних запам’ятовувати своє ім’я. Розглядається ситуація, коли жоден з них першопочатково не має імені (тобто всі агенти названі однаково і не можуть розрізнити один одного). Задача самоіменування (naming) полягає у знаходженні деякого локального уніфікованого алгоритму який би в умовах обмеженого радіусу видимості R породжував у колективі множину унікальних імен (ідентифікаторів) за можливо меншу кількість часових кроків. Додаткова вимога до алгоритму: можливість роботи в умовах популяційної динаміки (вмирання старих + народження нових агентів). 10.4.2. Приклади вирішення: - резервування унікальних імен (мережева технологія Ethernet) - генерація та порівняння випадкових чисел (процедура жеребкування)
10.5. Самоузгодження: домовленність про однакову для всіх величину. 10.5.1. Нехай в нас є N агентів здатних запам’ятовувати значення деякої величини. Розглянемо ситуацію, коли в кожного з них це значення відрізняється від значень інших агентів. Задача самоузгодження полягає у знаходженні деякого локального уніфікованого алгоритму який би в умовах обмеженого радіусу видимості R встановлював однакове для всіх агентів колектива значення заданої величини за можливо меншу кількість часових кроків. Цією величиною може бути деяка константа (наприклад, єдина еталонна міра деякої вимірюваної величини – взірцева величина). 10.5.2. Для вирішення цієї задачі, як правило, використовуються механізми прийняття колективних рішень (ускладнення – обмеженність радіусу видимості → спілкування лише з сусідніми агентами).
2004
Лекція 11. Самоорганізація колективу агентів у просторі (самовпорядкування) 11.1. Постановка задачі самовпорядкування. 11.1.1. Задача самовпорядкування полягає у знаходженні локального уніфікованого алгоритму поведінки окремого агента, який би дозволяв колективу агентів управляти розміщенням та переміщенням своїх представників у геометричному просторі середовища, виходячи з поставленої перед ним задачі більш високого рівня. Конкретна постановка задачі впорядкування залежить від структури (будови) середовища, в якому розміщено колектив. Задача впорядкування має зміст, коли кількість агентів N менша за кількість точок середовища M. В більшості задач самовпорядкування в перший момент часу агенти розміщенні у просторі випадковим чином. 11.1.2. Основні задачі, що вирішуються - впорядковане розміщення у просторі (ordered placement): рівномірне заповнення обмеженого деякими границями простору; формування правильної решітки з заданим кроком; формування гнучкої решітки, форма якої залежить від характеристик середовища (змістовна інтерпретація: розподілені вимірювання, контроль тереторії), - формування правильних геометричних фігур (geometric pattern formation) [спонтанне або за наказом]: лінія (відрізок), коло, квадрат (каре) із заданим кроком міжагентної відстані (змістовна інтерпретація: формування пошукового ланцюжку, створення периметру охорони навколо заданого об’єкту), - впорядковане переміщення у просторі (motion control): узгоджене групове переміщення, лідер-наслідувач (leader-follower), слідування заданій траекторії (path following), - уникнення зіткнень з іншими агентами (collision avoidance), - колективне подолання (обминання) перешкод (obstacle avoidance). 11.1.3. Основний критерій ефективності: час за який агенти вирішують задачу самовпорядкування (мінімізація кількості часових кроків). Додатковий критерій: кількість просторових кроків, які витрачають агенти на вирішення задачі (мінімізація витрат енергоресурсу).
11.2. Класифікація задач самовпорядкування. 11.2.1. За фізичними характеристиками (механіка) - голономність → агент представляється у вигляді геометричної точки, відбувається абстрагування від швидкістних характеристик агента. (Голономна система – це механічна система, в якій всі мезанічні зв’язки є геометричними, тобто такими, що накладають обмеження лише на положення (переміщення) точок або тіл системи, а не на їх швидкості, як це має місце у неголономних системах.) - неголономність → враховуються інерційність руху агента, нездатність до миттєвої зміни напрямку руху, геометричні розміри агента (які, наприклад, можуть заважати детектуванню іншого агента) + агенти не можуть знаходитись в одній геометричній точці простору 11.2.2. За характеристиками засобів детектування сусідніх агентів - в умовах повної видимості чи в умовах обмеженої видимості - вигляд діаграми направленості засобів детектування (повне коло, сектор (<180°), сектор (>180°)) - засіб детектування одного типу чи комбінація декількох засобів детектування різних типів (тактильні, інфрачервоні, ультрозвукові, лазерні, електромагнітні сенсори) 11.2.3. За типом інформаційної взаємодії - з обміном інформацією → колективне прийняття рішень, колективне планування - без обміну інформацією → лише детектування (для вирішення більшості задач самовпорядкування, як правло, достатньо детектування з визначенням відстані та напрямку на сусіда) 11.2.4. За типом вхідної інформації - в абсолютних координатах, - у відностих координатах.
11.3. Приклад алгоритму формування сегменту лінії. 11.3.1. Простий алгоритм (голономність + обмежена видимість). 1. Серед виявлених сусідів визначити найближчого агента A1 та самого дального агента A2. 2. Рухатись к точці P, що є основою перпендикуляру, який опущено з біжучої позиції даного агента на лінію A1A2.
2004 11.3.2. Моделювання цього алгоритма показало, що можливі ситуації, в яких агенти, виконючи цей алгоритм, не вирішують задачу формування лінії у встановлені строки. Як правило, це ситуації, коли декілько агентів знаходяться поруч один з одним. В результаті цього відбувається потсійна зміна агента, що детектується як найближчий (A1), що в свою чергу призводить до постійної зміни напрямку руху окремого агента і “безцільному блуканню” всіх агентів колективу в цілому. Крім цього цей алгоритм не передбачає рівномірного розміщення агентів на лінії з заданим кроком.
A
A2
A1
P
Рис.1. Робота простого алгоритму формування сегменту лінії 11.3.3. Складний алгоритм (голономність + обмежена видимість). Розглянемо вільний від цих недоліків алгоритм формуваняя сегменту лінії. Загальна ідея: агент визначає (обирає) двох сусідів, і, якщо між ними є вільне місце, то намагається встати між ними, інакше він намагається встати поряд з ними. Алгоритм викноується i-им агентом, K – кількість виявлених сусідніх агентів, Ds - задана дистанція між сусідами (відстань, що розділяє сусідніх агентів в сегменті лінії). 1. Якщо ( K = 0 ), то рухатись далі, не змінюючи напрямку руху; 2. Якщо ( K = 1 ), то - визначити відстань D до виявленого сусіднього агента; - Якщо ( D > Ds ), то рухатись до виявленого сусіда (випадок 1, рис.2); Інакше рухатись від нього (випадок 2, рис.3); 3. Якщо ( K = 2 ), то - визначити відстані D1 і D2 до виявлених агентів A1 і A2; - визначити відстань Dm до точки M, що ділить відрізок [A1A2] навпіл по формулі
Dm =
D1 2 + D2 2 + 2 ⋅ D1 ⋅ D2 ⋅ cos(α ) 2
(11.1)
та напрямок на цю точку по формулі
ϕ = arccos
; + 2 ⋅ D1 ⋅ D2 ⋅ cos(α )
D1 2 + D1 ⋅ D2 ⋅ cos(α )
D1 ⋅ D1 2 + D2 2
Якщо ( Dm < D1 і Dm < D2 ), то - рухатись до точки M (рис.4) - Якщо ( D1 > Ds ), то рухатись до точки A1 (випадок 1); Інакше рухатись від точки A1 (випадок 2); - Якщо ( D2 > Ds ), то рухатись до точки A2 (випадок 1); Інакше рухатись від точки A2 (випадок 2); Інакше Якщо ( Dm > D1 ), то - рухатись до точки B1 на лінії A1A2, такій що B1 ∉ [A1A2] і [B1A1] < [B1A2] (рис.5); - Якщо ( D1 > Ds ), то рухатись до точки A1 (випадок 1); Інакше рухатись від точки A1 (випадок 2); Інакше - рухатись до точки B2 на лінії A1A2, такій що B2 ∉ [A1A2] и [B2A1] > [B2A2] (рис.6); - Якщо ( D2 > Ds ), то рухатись до точки A2 (випадок 1); Інакше рухатись від точки A2 (випадок 2); 4. Якщо ( K > 2 ), то визначити двох найближчих агентів: A1, A2 і перейти на крок 3.
(11.2)
2004
A1
Ri
Ds Ai
Рис.2. Випадок, коли агент Ai знаходиться занадто далеко від сусіднього агента А1: D>Ds (Ds - задана умовами задачі розділяюча відстань, Ri - радіус видимості засобів детектування агента Ai)
Ri
A1 Ds Ai
Рис.3. Випадок, коли агент Ai знаходиться занадто близько до сусіднього агента А1: D
2004 Ai
D2
α
A1
D1
ϕ Dm
M A2 Рис.4. Формування колективом агентів сегменту лінії: ситуація, коли Dm
Ai ϕ α D2
Dm
D1 B
A1
M A2 Рис.5. Формування колективом агентів сегменту лінії: ситуація, коли Dm>D1
A1 D1 ϕ α Dm
Ai D2
M
A2
B
Рис.6. Формування колективом агентів сегменту лінії: ситуація, коли Dm>D2
2004 11.3.4. Оскільки в даному випадку сегмент лінії формується в умовах обмеженого радіусу видимості, то алгоритм має ряд обмежень, основним з яких є обмеження на розмір кроку міжагентної відстані в сегменті лінії. Це обмеження має такий вигляд
Ds < Rd
, (11.3) де Rd - радіус видимости засобів детектування агента (розглядається однорідний колектив, в якому цей радіус однаковий для всіх агентів). Тобто крок сегменту лінії не може перевищувати радіусу видимості окремого агента. Крім цього можна вивести залежність розділяючої відстані від радіуса видимості та кількості агентів в колективі N. Ця залежність буде відображати перехід від більш простих умов повної видимості (коли кожний з агентів детектує (виявляє) усіх інших агентів) до більш складних умов обмеженої видимості. Згідно цій залежності, якщо
Ds <
Rd , N −1
(11.4)
то для формування сегменту лінії можна використати більш ефективний алгоритм для умов повної видості (відповідно формування сегменту лінії буде відбуватися швидше).
11.4. Приклад алгоритму узгодженого переміщення колективу. 11.4.1. Узгоджене переміщення агентів колективу в просторі передбачає зглажування траекторії руху кожного з агентів, за рахунок чого досягається більш плавне та стійке переміщення агентів в групі. Для цього кожний агент виконує для кожного свого j-го сусіда додавання двох векторів з використанням вагових коефіцієнтів: − L – вектор вирівнювання руху, який співпадає за напрямком з напрямком руху j-го сусіда, − D – вектор напрямку руху, який регулює дотримання дистанції до j-го сусіда (виходячи з заданої розділяючої відстнані Ds). При цьому вектор D розглядається як два протилежних вектора: 1. Da - вектор зближення (attraction), який відповідає ситуаціям, коли відстань між даним агентом Ai та його j-им “сусідом” Aj [AiAj] > Ds (рис.7) і 2. Dr - вектор відштовхування (repulsion), який відповідає ситуаціям, коли відстань між даним агентом Ai та його j-им “сусідом” Aj [AiAj] < Ds (рис.8). Тобто в першій ситуації (рис.7) результуючий вектор шукається як векторна сума R = wl ⋅ L + wa ⋅ D a , (11.5) а в другій ситуації (рис.8) як векторна сума R = wl ⋅ L + wr ⋅ D r . (11.6) 11.4.2. Використання коефіцієнтів wl, wa, wr дозволяє збільшувати та зменшувати пріоритетність різних дій агента, в залежності від ситуації, що склалася. Наприклад, в ситуації, коли відстань між сусідніми агентами набагато перевищує розділяючу дистанцію, більш важливою задачею для цих агентів є рух в напрямку зближення (вектор Da), ніж рух в напрямку згладжування своїх траекторій (вектор L). Так само, коли відстань між ними набагато менше розділяючої дистанції, то більш важливим для них є рук в напрямку відштовхування (вектор Dr). Одним з можливих рішень проблеми пріоритетності напрямків руху є формування вагових коефіцієнтів наступним чином:
D wr = 200 ⋅ 1 − Ds
2
D − Ds wa = 200 ⋅ Rd − Ds
wl = 100 , де
,
(11.7)
2
,
(11.8)
(11.9)
D – біжуча відстань між Ai і Aj, Rd - радіус видимості засобів детектування сусідніх агентів.
При цьому залежність вагових коефіцієнтів від біжучої відстані між сусідніми агентами буде мати наступний вигляд (рис.9). Ця залежність демонструє в який спосіб вирішується в даному випадку проблема пріоритетності напрямків руху. Зокрема можна побачити, що, коли агент опиняється на заданій розділяючій відстані від сусіда (D = Ds), вагові коефіцієнти wa и wr приймають нульові значення і рух агента здійснюється лише в напрямку вирівнювання траектроії.
2004 Aj
wa ⋅ Da
R
wl ⋅ L
Ai
[Ai Aj] > Ds R = wl ⋅ L + wa ⋅ Da Рис.7. Зглажування траекторії руху агента в групі (ситуація зближення)
Aj
[Ai Aj] < Ds R = wl ⋅ L + wr ⋅ Dr
wl ⋅ L Ai R
wr ⋅ Dr
Рис.8. Зглажування траекторії руху агента в групі (ситуація відштовхування)
Рис.9. Залежність вагових коефіцієнтів wl, wa, wr від відстані D між сусідніми агентами (Ds=60, Rd = 120)
2004
Лекція 12. Самоорганізація колективу агентів у часі (самосинхронізація) 1. Постановка задачі самосинхронізації колективу temporal self-organization → self-synchronization Для вирішення більшості прикладних задач колективу агентів необхідно самоорганізуватися у часі, тобто в той або інший спосіб прийти до єдиної для всіх агентів точки відліку часу. Тобто агенти мають зробити щось одночасно (наприклад, підняти вантаж, вмикнути освітлення) або узгодити свою поведінку в часі (спочатку я зроблю одне, а потім ти зробиш друге) + в багатьох випадках успішність колективної дії залежить від того, скільки агентів реалізували свої індивідуальні дії одночасно. Постановка задачі. В кожного агента є свій внутрішній годинник. На порівняно невеликому проміжку часу при умові попередньої синхнонізації ці годинники показують однаковий час. Після цього їхні покази починають розходитись, внаслідок чого виникає потреба у повторній синхронізації. У випадку повністю децентралізованого колективу відсутня можливість використати для цього т.з. "зовнішній годинник" (тобто деякий аналог центра управління). Т.ч. треба розробити локальний уніфікований алгоритм, який би в умовах локальної взаємодії, дозволяв агентам колективу за злічену кількість часових кроків одночасно встановити внутрішні годинники агентів в нуль. [рисунок 1] До алгоритму самосинхнонізації висуваються вимоги по точності (як правило забезпечується точність до одного часового кроку (такту)). Змістовна інтерпретація: однорідні обчислювальні середовища (Евреинов, Прангишвилли, Варшавский) + FPGA [field programmable gate array] – вентильна матриця з можливістю поточного репрограмування → проблема синхронізації логічних блоків, розташованих на підложці мікросхеми (труднощі, викликані використанням загального(зовнішнього) годинника)) Дискретний та аналоговий варіанти задачі самосинхронізації. - аналоговий → генератори з багатьма зворотніми зв’язками (осцилятори, биття) - дискретний → цифрові автомати
2. Задача синхронізації ланцюжку стрільців (firing squad synchronization problem, Дж. Майхіл) [рисунок 2] Постановка задачі. Розглянемо ланцюжок стрільців, кожний з яких може спілкуватися лише з двома найближчими сусідами. Ланцюжок складається зі скінченної кількості стрільців (N). Обидва крайніх стрільця мають по одному сусіду. Один з крайніх стрільців отримує наказ, після чого стрільці мають домовитись і одночасно дати постріл. Чи існують правила поведінки стрільців, які вирішують цю задачу за тих умов, що кількість слів, якими можуть обмінятись стрільці та об’єм внутрішньої пам’яті кожного з них обмежені і не залежать від N? інформація про існуючі рішення + шляхи ускладнення задачі: віддавати наказ будь-якому стрільцю, інщі структури з’єднань (кільце, однонаправлене кільце, графо-подібні структури), затримка між стрільцями (неоднакова, невідома, змінна у часі), латентна (прихована) затримка (затримка спрацювання).
3. Приклад алгоритму самосинхронізації ланцюжку агентів Розглянемо ланцюжок з N агентів. Позначимо через s0 – деякий початковий стан, в якому знаходяться всі агенти, а через s – стан попередньої готовності. Агенти обмінюються сигналами, кожному з яких поставлена у відповідність певна "швидкість" (кількість тактів, на які агент затримує цей сигнал перед тим як передати його сусіду). Розглянемо алгоритм, в якому агенти обмінюються двома сигналами a1 і a3 зі швидкостями 1 і 1/3 відповідно. Після отримання наказу крайній агент відсилає у ланцюжок обидва сигнали і переходить в стан s. Другий крайній агент переходить в стан s після надходження сигналу a1. Обидва крайні агента після переходу в стан починають "відзеркалювати" (надіслати у зворотньому напрямку) всі сигнали, що до них надходять. Всі інщі агенти виконують наступний алгоритм: Алгоритм. 1. Якщо отримано один сигнал (a1 або a3) і агент знаходиться в стані s0, то передати сигнал далі по ланцюжку. 2. Якщо в одному такті отримано два сигнали, то одночасно "відзеркалити" їх і передати далі + перейти в стан s. 3. Якщо сам агент і обидва його сусіда знаходяться в стані s, то "дати постріл". [рисунок 3]
2004 Таким чином відбувається поділ інтервалу між двома агентами, що знаходяться в стані s навпіл і в центрі цього інтервалу агент так само переходить в стан s. Цей процес відбувається доти, доки усі автомати не перейдуть в стан s, після чого вони одночасно "дають постріл". Доведено, що для алгоритмів цього типу (відсилання сигналів) мінімальний час синхрнонізації ланцюжка T=2N-2. В такий самий спосіб відбувається синхронізація ланцюжка, замкненого в кільце (час синхнонізації T=N)
4. Самосинхронізація агентів поєднаних статичною мережею зв’язків. Розглянемо N агентів, кожний з яких є вершиною довільного зв’язаного неорієнтованого графу. Нехай у відповідність графу поставлена мережа двонаправлених міжагентних зв’язків без затримок з обмеженою пропускною здатністю. Чи існують правила поведінки агента, які б за цих умов, забезпечили самосинхронізацію колективу? Приклад вирішення задачі. 1. На заданому графі зв’язків знайти довільний підграф без циклів, який би охоплював всіх агентів. Розглнянемо два сигнала at – спеціальний сигнал формування дерева (токен), ar – сигнал відповідь. Кожний агент може знаходитись в двох станах s0 – початковий стан, s1 – стан приналежності дереву. Агент-ініціатор синхронізації відсилає всім своїм сусідам спец. сигнал (токен) at. Далі кожний з агентів виконуює такий алгоритм: 1.1. Якщо агент знаходиться в стані і отримано токен at, то - перейти в стан s1 - позначити сусіда, від якого прийшов токен як “батьківський” - пердати токен at далі всім сусідам окрім “батьківського” - “батьківському” сусіду відправити сигнал-відповідь ar. 1.2. Якщо агент знаходиться в стані s1, то ігнорувати надходження токену. 1.3. Якщо агент знаходиться в стані s1 і отримано сигнал-відповідь ar, то позначити сусіда, від якого він прийшов як “синівський” [рисунок 4] Т.ч. сформується граф-дерево найкоротших зв’язків по відношенню до агента-ініціатора. В кожного агента, окрім ініціатора буде один “батьківський” сусід і більше або рівне нулю “синівських” сусідів. 2. Кожному з агентів створити K внутрішніх вузлів, де K – кількість сусідів у створеному графі-дереві. [рисунок 5] 3. Створити простий цикл (ланцюжок замкнений в кільце) на внутрішніх вузлах, який охоплює все дерево. При цьому у створеному кільці буде M=2(N-1) вузлів. [рисунок 6] 4. Виконати алгоритм самосинхронізації кільця. Час синхронізації T=M=2(N-1).
2004
Лекція 13. Навчання з підкріпленням. 1. Зміст навчання з підкріпленням. Розглядається ситуація багатокрокової взаємодії агента з наперед невідомим динамічним середовищем. В процесі цієї взаємодії агент самостійно навчається найкращій (оптимальній) поведінці шляхом спроб та помилок. При цьому розробник вказує агенту що вважати найкращою поведінкою і не вказує як її досягнути. На кожному кроці взаємодії агент обирає та реалізує дію з множини усіх доступних на цьому кроці дій і отримує відгук середовища на цю дію (підкріплення). Приклад: нагорода або покарання. Зміст навчання з підкріпленням полягає у дослідженні агентом характеристик середовища та використанні результатів цього дослідження для вибору дій в наступних кроках взаємодії (набуття та використання досвіду). - відмінність від навчання під керуванням (supervised learning) - стратегія (policy): спосіб відображення (mapping) виміряного стану середовища у дію - функція вийграшу (reward function): миттєва оцінка ефективності дій (вийграш) - функція оцінки (value function): довготермінова оцінка ефективності дій (як акумулювати вийграші) - модель середовища (environment model): планування, прогнозування
2. Класифікація задач самонавчання 1. за моделлю оптимальної поведінки 1.1. модель з обмеженим горизонтом (finite-horizon model) 1.2. модель з необмеженим горизонтом (infinite horizon model) 1.3. модель із середнім виграшем (average-reward model) 2. за складністю середовища 2.1. стаціонарне випадкове середовище 2.2. випадкове середовище з переключенням 2.3. марковський процес прийняття рішень (MDP) 3. за оцінкою ефективності навчання 3.1. кінцева сходимість до оптимльної поведінки (eventual convergence to optimal) 3.2. швидкість сходимості до оптимальної поведінки (speed of convergence to optimal) 3.3. втрати в порівнянні з оптимальною від самого початку поведінкою (regret) 4. за способом використання досвіду 4.1. без моделювання середовища (model-free) 4.2. з моделюванням середовища (model-based)
3. Метод зваженної оцінки дій (Action-Value Method). -
метод зваженної оцінки дій має обмеження, оскількі із збільшенням кількості кроків навчання (k) збільшуєься об’єм необхідної для обчислень пам’яті та об’єми самих обчислень рішення цієї проблеми полягає у модифікації основного рівняння методу зваженної оцінки дій в такий спосіб, щоб зробити його рекурсивним модифікація → потрібна пам’ять лише для Qk і k загальне правило навчання з підкріпленням
4. Марковський процес прийняття рішень (Markov Decision Processes). В загальному випадку проблема RL полягає в тому, що від дії агента залежить не тільки його біжучий виграш, але і наступний стан середовища, в який воно перейде внаслідок цієї дії. Таке середовище можна розглядати як мережу (ланцюжок Маркова) стаціонарних випадкових середовищ (n-armed bandid problems). При цьому агент, обираючи наступну дію, має одночасно брати до уваги очікуваний виграш (r) та можливу зміну стану середовища (s). Внаслідок цього алгоритм RL повинен враховувати відкладене у часі підкріплення (delayed reinforcement): агент навчається найкращми діям, враховуючи виграші, які він отримує в скіль завгодно далекому майбутньому. Тобто відслідковується той факт, що біжучий виграш агента залежить не лише від дії на даному кроці, але й від усіх попердніх дій.
2004 Проблема навчання з відкладеним у часі підкріпленням описується Марківським процесом прийняття рішень (MDP). MDP – це четвірка <S,A,R,T> S – множина станів (в загальному випадку нескінченна) A – множина доступних агенту дій R – функція виграшу R: S×A→ℜ (визначає схему (розподіл) виграшів для кожного стану) T – функція переходу T: S×A→П(S) (визначає розподіл ймовірностей переходу середовища з одного стану в інший під впливом дії агента, тобо це функція від біжучого стану середовища і обраної агентом дії: T(s,a,s')). Процес є марковським, якщо розподіл ймовірностей переходу (функція переходу) не залежить від усіх поперндіх станів середовища та дій агента. Вирішення MDP полягає у знаходженні оптимальної поведінки (policy) π: S→A, яка відображає стани середовища у дії агента і максимізує значення функції оцінки, що відповідає обраній моделі оптимальності (як правило, розглядається модель з необмеженим горизонтом та коефіціентом послаблення минулих виграшів).
5. Навчання зя методом розрізнення у часі (Temporal Difference Learning). Основна проблема: функція розподілу ймовірностей переходу між станами T(s,a,s') невідома агенту наперед (тобто невідома модель середовища). Т.ч. агенту необхідно досліджувати (explore) не тільки схему виграшів для кожного стану, але і вигляд функції переходу. При цьому агент вирішує проблему розподілення виграшу у часі (temporal credit assignment): як визначити, що дія є вдалою, якщо вона має далекойдучі наслідки? або яка з обраних в минулому дій призвела до біжучого виграшу? Загальна ідея: кожному стану середовища ставиться у відповідність пердбачувана вага стану (estimated value of state) V(s), s∈S. На кожному кроці взаємодії ця величина певним чином модифікується в такий спосіб, щоб гарантувати сходимість цієї величини з часом до наперед невідомої дійсної ваги стану V*(s). Значення V(s) модифікується на основі біжучого виграшу та передбачуваної ваги стану, в який перейшло середовище внаслідок реалізації обраної дії.
6. Q-навчання (Q-learning).
2004
Лекція 14. Колективне навчання з підкріпленням. 14.1. Зміст колективного навчання з підкріпленням. 14.1.1. Передбачається, що агенти колективу мають повністю або частково спільну мету навчання (у відповідності до тих задач, що поставлені перед колективом розробником). В такому випадку зміст колективного навчання з підкріпленням полягає у: − здобутті та подальшому використанні досвіду колективних дій (приклад: неявна взаємодія через середовище – діяльністна взаємодія), − використанні одними агентами досвіду набутого іншими агентами (цей досвід, наприклад, може передаватися в явному вигляді як інформаційні повідомлення). 14.1.2. Основний момент полягає в тому, що кожний окремий агент отримує відгук середовища не на власну інидвідуальну дію (див. попередню лекцію), а на сумісні дії всього колективу (або, так звану, колективну дію). За певних умов це може різко ускладнити алгоритм навчання з підкріпленням, оскільки з’являється додаткова невизначенність стосовно того, які дії яких агентів призвели до отриманого колективом виграшу (програшу). З іншого боку висувається припущення, що за рахунок колективних зусиль навчання може відбуватися значно швидше в порівнянні з індивідуальним навчанням без використання досвіду інших агентів. 14.1.3. Порівняння індивідуального та колективного самонавчання на прикладі марківського процесу прийняття рішення (MDP): N – кількість агентів в колективі, Ai – множина доступних i-му агенту дій, S – множина станів середовища, R – функція виграшу, T – функція переходу. Спосіб навчання Individual RL, індивідуальне навчання з підкріпленням Multiagent RL, багатоагентне навчання з підкріпленням
Правило нарахування виграшів (reward rule) та правило переходу (transition rule) R: S×A→ ℜ T: S×A → S
Функція виграшу (reward function) та функція переходу (transition function) R(s,a) → rt , rt∈ℜ T(s,a) → s′, s,s′∈S
R: S× A1×…×AN→ℜ T: S×A1×…×AN → S
R(s,a1,a2,…,aN) → {ri,t} T(s,a1,a2,…,aN) → s′
14.1.4. Замість стохастичних функцій вигаршу та перехду з двома аргументами (Individual RL) розглядаються функції вигаршу та перехду з (N+1) незалежними аргументами. Опосердкований зв’язок цих аргументів (через алгоритми навчання з підкріпленням, що їх виконує кожний агент) визначає два способи колективного навчання: - ізольоване навчання: аргументи a1,a2,…,aN повністю незалежні (явна взаємодія агентів відсутня, приклад: несамовиявлений колектив), - інтерактивне навчання: аргументи a1,a2,…,aN частково залежні внаслідок інформаційної взаємодії агентів колективу (приклади: обмін сенсорною інформацією, обмін досвідом, обмін інструкціями). 14.1.5. Зауваження: - Кожен з агентів може брати участь одночасно у декількох колективних та можливо індивідуальних процесах навчання. Виникає проблема координації (диспетчеризації) цих процесів. - Можна розглядати різні моделі колективної поведінки з різними сценаріями процесу навчання. Наприклад, можна розглядати ситуацію, коли в кожен момент часу дозволяється реалізувати дію лише одному агенту. Відповідно в кожному такті взаємодії з середовищем колектив має обирати найкращого з певних міркувань агента. - Спосіб колективного навчання напряму залежить від моделі інформаційної зв’язності, яка реалізована в колективі: різні за змістом і складністю алгоритми навчання вимагають різних за пропускною здатністю та структурою зв’язків моделей інформаційної зв’язності.
14.2. Методи (стратегії) колективного навчання. 14.2.1. З точки зору зростання складності навчання та вимог до моделей інформаційної зв’язності (АСМ), які для цього використовуються, розрізняють наступні методи: 1. Навчання з використанням механічної пам’яті (rote learning): безпосереднє запам’ятовування досвіду та навичок, здобутих іншими агентами, без їх подальших змін.
2004 2. 3. 4. 5.
Навчання шляхом обміну інструкціями та порадами (learning from instruction and by advice taking), які не передбачають їх обов’язкового виконання (на власний розсуд). Навчання на прикладі інших агентів (learning from examples and by practice): використання кожним агентом власних спостережень або інформації про вдалі чи невдалі дії інших агентів для прийняття рішень. Навчання за аналогією (learning by analogy): модифікація вже знайдених рішень одних задач колективної поведінки для вирішення інших подібних за змістом нових задач. Навчання на основі досліждень (learning by discovery): здобуття нових знань та навичок шляхом спостережень, планування та проведення експерементів, генерування та перевірки гіпотез на основі результатів спостережень та експерементів.
14.3. Проблема інтерпретації відгуку середовища. 14.3.1. В загальному випадку проблема інтерпретації відгуку середовища (credit-assignment problem → САР) полягає у визначенні того, яка дія або послідовність дій системи (окремого агента або колективу) призвели до отриманого виграшу (програшу) в даному кроці взаємодії з середовищем. Для багатоагентних систем загальну САР зручно розбити на дві підпроблеми: - внутрішньо-агентна САР (intra-agent CAP): яка дія або який елемент рішення вплинули на отриманий окремим агентом виграш (програш) в біжучому такті взаємодії з середовищем (тобто, в який спосіб перераховувати вагові коефіціенти дій та станів середовища в алгоритмі навчання з підкріпленням), - між-агентна CAP (inter-agent CAP): які дії, яких агентів, в якому відношенні призвели до отримання колективом виграшу (програшу) в біжучому такті взаємодії з середовищем (тобто, в який спосіб розподілити колективний виграш між агентами). На практиці ці дві проблеми вирішуються одночасно, тобто в більшості алгоритмів колективного навчання не має чіткого поділу між цими проблемами. 14.3.2. Приклад між-агентної проблеми інтерпретації відгуку середовища (рис.1). Колектив з чотирьох агентів (N=4) отримує виграш у розмірі 90 одиниць за колективну дію (a11, a21, a32, a42) ∈ A1×A2×A3×A4, де aij – j-та дія i-го агента. В даному прикладі цей виграш розподілився між агентами в наступний спосіб: перший агент отримав 10 одиниць виграшу, другий – також 10, третій – 40 і четвертий – 30. В загальному випадку механізм розподілу спільного виграшу є інтегральною частиною алгоритму колективного навчання.
10
E
90
40
1
2
a11
a21
3
4
a34
a42
10
aij
30
Рис.1. Приклад між-агентної проблеми інтерпретації відгуку середовища.
14.4. Одночасне ізольоване навчання з підкріпленням (concurrent isolated RL). 14.4.1. Кожний агент виконує індивідуальний алгоритм навчання з підкріпленням (інші агенти не моделюються). Обмін інформацією між агентами відсутній (несамовиявлений колектив). Мета колективного навчання – знайти оптимальну колективну поведінку. Основна проблема – формування таких індивідуальних функцій виграшу та оцінки, які б гарантували сходимість колективної поведінки до оптимальної (це варіант основної проблеми ТКП для процесу навчання). Одночасне ізольоване навчання з підкріпленням набуває особливої ваги в ситуаціях, коли зв’язок між агентами є взагалі неможливим або тимчасово недоступним (аварія, збій, перешкоди, військові застосування). 14.4.2. Два випадки застосування таких алгоритмів: - глобальний відгук (глобальне підкріплення): всі агенти отримують один і той самий відгук середовища на одному кроці взаємодії (порівняно прості моделі колективної поведінки, приклад: колектив агентів, розміщений в випадковому середовищі з перемиканням), - індивідуальний відгук (індивідуальне підкріплення): агенти отримують різні відгуки середовища на одному кроці взаємодії, хоча вони і розміщені в одному середовищі (порівняно складні моделі колективної поведінки, приклад: колектив агентів, розміщений в лабіринті, кожна з кімнат якого є стаціонарним випадковим середовищем).
2004 14.5. Інтерактивне навчання узгодженим діям (interactive RL of coordination). 14.5.1. На кожному кроці взаємодії "сусіди" повідомляють агенту, які дії вони збираються реалізувати або повідомляють свій вибір на попередніх кроках взаємдії. При цьому відбувається моделювання інших агентів, яке дає відповідь про те, які дії найбільш успішні (наприклад, якщо двоє сусідів і сам агент реалізували першу дію і лише один сусід реалізував другу дію, і в наслідок цих колективних зусиль було отримано виграш, то ваговий коефіцієнт першої дії треба збільшити, оскільки саме вона швидше за все призвела що цього виграшу). 14.5.2. В даному випадку за рахунок обміну інформацією в рамках відповідної моделі інформаційної зв’язності (АСМ) з’являється можливість в явний спосіб обирати (організовувати) колективні (узгоджені) дії. При цьому використовуються різні схеми (алгоритми) узгодження. Основний зміст: кожний з агентів формує вагові коефіцієнти, що відповідають діям, які він може реалізувати, і повідомляє значення цих коефіцієнтів іншим агентам. Після кожного кроку взаємодії з середовищем значення всіх вагових коефіцієнтів модифікуються згідно заданого правила навчання з підкріпленням. Внаслідок цього з часом колектив знаходить оптимальну поведінку у вигляді дійсних (цільових) вагових коефіцієнтів дій.
2004
Лекція 15. Опис моделей колективної поведінки в термінах теорії ігор. 15.1. Ігри з послідовним повторенням партій (ітераційні або складені ігри) 15.1.1. Простий сценарій: - гра повторюється задану або нескінченну кількість разів, - на кожному кроці (ітерації) використовується однакова матриця (функція) виграшів, - виграш гравця підраховується як сумма виграшів в кожній ітерації. Ключовий момент: При послідовному повторенні гри гравець має можливість отримати та використати статистичну інформацію про поведінку свого супротивника (чим більше глибина пам’яті гравця, тим краще він може це зробити). Таблиця 1. Порівняння простих ітераційних ігор з нульовою та ненульовою сумою. Приклад гри в Приклад ітераційнох нормальній формі (гра гри (партії гри Тип гри Рівновага складається з одної послідовно партії) повторюються) гра з нульовою сумою гра орел чи решка гра в 21 повторне застосування стратегій, (zero-sum game) (game of heads or tails) оптимальних в окремій партії гри, утворює стратегію, оптимальну для всієї ітераційної гри гра з ненульовою ділема ув’язненого ітераційна ділема повторне застосування стратегій, сумою (general-sum (prisoners dilemma) ув’язненого (iterated оптимальних в окремій партії гри, в game) prisoners dilemma) цілому може виявитися неоптимальним, хоча якщо обидва гравці продовжують застосовувати ці стратегії, то вони будуть врівноваженими 15.1.2. Більш складні правила утворення ітераційних ігор дають наступні класи ігор: 1. В кожній ітерації проводиться нормалізована гра, при цьому стратегії гравців визначають не тільки виграші, але і ймовірності переходу, які визначають гру, що буде розігруватись в наступній ітерації (стохастичні та рекурсивні ігри). 2. В кожній ітерації гри повторюються одна й та сама гра-компонента. Перед початком гри кожний гравець отримує обмежений "капітал", який зменшується або збільшується в залежності від результатів кожної гри-компоненти. Гра закінчується, коли один з гравців стає банкротом (ігри на виживання та виснаження).
15.2. Стохастичні ігри. 15.2.1. Опис гри (Шеплі, 1953). Стохастична гра задається п’ятіркою , де n – кількість гравців, G = {G0, G1, …, Gm} – множина ігор-компонент, серед яких G0 – спеціальний випадок: завершення всієї стохастичної гри, після якого підраховуються сумарні виграші гравців (сума виграшів по всіх ітераціях), A = A1 × A2 × … × An – об’єднана множина всіх можливих спільних стратегій гравців, Ai – множина стратегій (дій) доступних i-му гравцю, R = {R1, R2, …, Rm} – множина функцій виграшу Ri: Gi×A→ℜ (визначає схему виграшів для кожної грикомпоненти), T – функція переходу T: G×A→П(G) (визначає розподіл ймовірностей переходу від одної гри-компоненти до іншої (в тому числі до завершення гри) в залежності від обраних гравцями стратегій, ймовірності завершення гри обов’язково більше нуля) 15.2.2. Приклад стохастичної гри. Гра складається з двох ігор-компонент G={G1, G2}, кількість гравців n = 2, перший гравець А = {G1(A11,A12),G2(A21,A22)}, другий гравець B = {G1(B11,B12),G2(B21,B22)}, матриці виграшів та переходу мають наступний вигляд (ймовірності переходу вказані в дужках, перше значення – це ймовірність завершення гри (спеціальний випадок G0)). G1: R1,Т1 B11 B12 A11 4, (0.4;0.5;0.1) 0, (0.2;0.5;0.3) A12 -2, (0.6;0;0.4) 2, (0.8;0.2;0) G2: R2,Т2 B21 A21 -1, (1;0;0) A22 2, (0.1;0.5;0.4)
B22 2, (0.6;0.2;0.2) 5, (0.3;0.6;0.1)
2004 15.2.3 ауваження. В ході гри відбувається переключення між іграми-компонентами згідно з ймовірностями переходу, які спільно визначають гравці. В кожній партії (ітерації) стохастичної гри при виборі стратегії гравець має враховувати не лише можливий виграш, але і ймовірність переходу до іншої гри-компоненти чи взагалі завершення гри. Оскільки в кожній грі-компоненті в кожному окремому випадку ймовірність закінчення гри (G0) більше нуля, то стохастична гра в кінці кінців (з ймовірністю 1.0) завершиться. Доведено, що для стохастичної гри з нульовою сумою існує точка рівноваги за Нешем (рішення гри).
15.3. Рекурсивні ігри. 15.3.1. Опис гри. Рекурсивна гра зберігає загальні риси стохастичної гри, за виключенням двох суттєвих модифікацій: 1. розрахунок між гравцями проводиться після закінчення гри з використанням функції виграшів останньої розігранної до завершення гри-компоненти (тобто кожний гравець отримає те, що він виграв в останній перед завершенням грі-компоненті, а не суму всіх своїх виграшів як в стохастичній грі), 2. ймовірність завершення гри не обов’язково відмінна від нуля, 3. якщо гра не закінчується (t → ∞), то гравці отримують нульові виграші. 15.3.2. Приклад рекурсивної гри. Гра складається з двох ігор-компонент G={G1, G2}, кількість гравців n = 2, перший гравець А = {G1(A11,A12,A13),G2(A21)}, другий гравець B = {G1(B11,B12),G2(B21)}, матриці виграшів та переходу мають наступний вигляд G1: R1,Т1 B11 A11 G1 A12 G2 A13 20
B12 G1 20 G2
G2: R2,Т2 B21 A21 -10 15.3.3. Зауваження. В математичному плані рекурсивні ігри більш складні для аналізу ніж стохастичні. Зокрема доведено, що у випадку рекурсивних ігр рішення гри може взагалі не існувати.
15.4. Ігри на виживання. 15.4.1. Опис гри. Перед початком гри кожному i-му гравцю видається запас деякого ресурсу ri. Далі в кожній ітерації розігрується однакова гра-компонента з нульвою сумою. Результат гри-компоненти визначає яку частку ресурсу переможений віддає переможцю. В цілому програє (вмирає) той, в кого запас ресурсу вичерпається першим. Після цього гра завершується. 15.4.2. Приклад гри на виживання. Кількість гравців n = 2, перший гравець А = {A1,A2}, другий гравець B = {B1,B2}, - перший гравець має r1=1,2,3 евро, - другий гравець має r2 = R – r1 евро, R = 4, - матриця гри з нульовою суммою: A1 A2
B1 2 -2
B2 -1 1
2004 15.5. Ігри на виснаження. 15.5.1. Опис гри. Кожний i-ий гравець (або команда) володіє Ri видами різних ресурсів з початковими запасами {ri1, ri2,…, riRi}. В кожній ітерації гри сукупний біжучий запас ресурсів зменшується. Це зменшення визначається матрицями виснаження (аналог матриць виграшу), які пов’язують всі можливі спільні дії гравців із значеннями, на які зменшуються відповідні ресурси. Поповнення запасів під час гри не відбувається. В загальному випадку програє той гравець, в якого першим вичерпається будь-який ресурс. Після цього гра завершується. 15.5.2. Приклад гри на виснаження. Гра "жінки та кішки проти чоловіків та мишей". Грають дві команди. Перша складається з W жінoк та C кішок, друга складається з M чоловіків та R мишей. В кожній ітерації гри команди виставляють одного представника, не знаючи вибору іншої команди. При цьому жінка усуває чоловіка, чоловік усуває кішку, кішка усуває мишу, миша усуває жінку, тобто матриця гри має наступний вигляд. жінка кішка
чолоік M-1 C-1
миша W-1 R-1
Програє та комнда, яка першою втрачає всіх гравців.
15.6. Задача полковника Блотто (ігри Блотто, ігри на розподіл ресурсів). 15.6.1. Опис гри. Два гравця A і B ведуть бойові дії на N незалежних бойових ділянках (i=1,…,N). Гравці мають розподілити свої сили (відповідно FA і FB одиниць) по бойовим ділянкам, не знаючи розгортання сил супротивника. Виграш на i–ій ділянці визначається як функція wi(x,y), яка залежить лише від бойової ділянки і протилежних сил x і y, надісланих на цю ділянку гравцями A і B. Загальний виграш у грі дорівнює сумі виграшів на окремих ділянках. 15.6.2. Приклад ігри Блотто. Ведуються бої на трьох ділянках. В розпорядженні командира (A) є чотири підрозділа. Розвідка визначила, що у супротивника (B) на цих трьох ділянках сконценровано п’ять підрозділів, але їх розподіл по ділянкам невідомий. Як розподілити свої чотири підрозділи по ділянкам, щоб нанести супротивнику максимальні втрати, мінімізувавши свої?
В
А 1 2 3 4
Рис.1. Задача полковника Блотто. 15.6.3. Приклад гри на розподіл ресурсів (Борель, 1921). Два гравця А і В кожний обирають по три додатніх числа, сумма яких дорівнює 1, тобто x + y + z = 1, x' + y' + z' = 1, і кожний гравець розташовує обрані ним числа в певному порядку. А виграє, якщо два обратних ним числа більше відповідних чисел гравця В.
2004
Лекція 16. Однорідні симетричні ігри 16.1. Однорідні симетричні ігри (ігри з обмеженою взаємодією) Зауваження №1. В класичній теорії ігор приймають участь N гравців (Дж.фон Нейман), і функції виграшу гравців Ri залежать від стратегії усіх N гравців. При збільшенні N це різко ускладнює аналіз цих ігор, і як наслідок робить їх непридатними для побудови і дослідження моделей колективної поведінки (МКП). Для вирішення цієї проблеми М.Л.Цетліним було запропоновано новий клас ігор N гравців під загальною назвою – однорідні симетричні ігри (ОСГ – однорідна симетрична гра). Визначення №1. В ОСГ N гравців функція виграшу кожного гравця Ri залежить лише від вибору стратегії (дії) невеликої кількості гравців (K<
1 N
M=
∑w ,
i i =1 де wi – виграш i-го агента, М – середній виграш вського колектива гравців.
Визначення №2. Ціною Неша будемо називати ціну гри, в якій встановлюється рівновага за Нешем (жодному з гравців не вигідно змінювати свою стратегію). Ціною Мора називається максимально можлива ціна гри. Приклад однорідної гри. Однорідна гра на колі. Зручно такі ігри зображувати за допомогою графа взаємодії. Граф взаємодії:
A1
A2
A7
A3
Стрілка, що входить у вершину, означає, що функція виграшу і-го агента залежить від вершини, з якої виходить ця стрілка. (Для А7 його функція виграшу залежить від А1 і А6, а матриця виграшу буде кубом). В кожного агента є вибір між двома діями: АCі = {a;b}
A4
A6 A5
Запишемо матрицю виграшів (функцію виграшів): i-1 i i+1 wi i-1 i i+1
wi
a
a
a
-2
a
A
b
10
b
a
a
2
b
A
b
0
a
b
a
0
a
B
b
0
b
b
a
10
b
B
b
-2
b
b
a
10
2004
Рівновага за Нешем має вигляд: ababab…. Тоді М* = 0 – середній виграш (ціна Неша). А якщо партія буде такою: aabbaabb… , то отримаємо M`=6 (ціна Мора). Проте таке рішення буде нестійким. Зауваження №2. МКП побудовані на основі ОСГ володіють так званою надійністю: додавання чи знищення будь-якої кількості агентів під час гри не призводить до її зупинки. Задачею розробника є знаходження алгоритму, який забезпечує сходимість до рівноваги за Нешем. Як правило, вирішення колективом поставленої задачі інтерпретується як досягнення рівноваги.
16.2. Гра Гура Якщо в ОСГ N гравців виграш кожного гравця Аі на кожному j-му кроці гри не залежить від того, яку стратегію (дію) обрав цей гравець, а залежить лише від розподілу усіх гравців по різним стратегіям (діям), то така ОСГ називається грою Гура.
Ведучий 1 або 2
А1 1
1 або 2 1 або 2
А2
А3
2
2
1 або 2
АN 2
Вибір кожного
Приклад. Грає ведучий і багато гравців (N). Гравці один одного не бачать. Натомість ведучий бачить всіх. В кожній партії всі гравці обирають 1 або 2:
1 0,8 Який % обрали двійку
Ведучий за певною формулою вираховує однаковий для всіх виграш. Приклад формули (графічне зображення): Максимальний виграш (ціна Мора) – 2 → 20%, 1 → 80%.
0,2 20 %
%
16.3. Гра в розподілення У грі в розподілення кожен з N гравців має k стратегій і N >> k. В кожній партії гри агенти обирають одну дію з k можливих (розподіляються по стратегіям). Виграш і-го гравця залежить від кількості інших гравців, які обрали ту саму стратегію. Таким чином функція виграшу R складається з k функцій: rj(n), j=1,..,k, де n – кількість гравців, що обирають j-ту стратегію. В залежності від вигляду функцій rj(n) створюються різні типи ігор в розподілення. Приклад. „Колективна поведінка ресурсу”: робоча сила вільно обирає місце роботи в залежності від заробітку на кожному підприємстві (заробіток на підприємстві залежить від кількості працюючих там працівників).
16.4. Гра в розміщення Кожний з N гравців має k стратегій (дій) і N < k. В кожній партії гри гравці обирають одну дію з k можливих (розміщуються по стратегіям). Виграш і-го гравця: wi = (1/n)*vj, де n – кількість гравців, що обирають j-ту стратегію, vj – фіксований виграш за j-ту стратегію. Цією грою моделюється ситуація вибору хижаками району полювання: стратегіями є райони полювання, фіксованими виграшами – кількість дичини у відповідних районах.
2004 Приклад №1. Розглянемо 7 годівниць з кількістю їжі відповідно:
k=7
1 0.9
2 0.33
3 0.33
4 0.33
5 0.33
6 0.33
7 0.33
N=5 Розглядається 5 агентів, які на кожному кроці взаємодії незалежно обирають одну з годівниць. Стан рівноваги за Нешем: 2 агенти обирають першу годівницю, решта розподіляється по тим, що залишилися. Середній виграш тоді буде: М* = (2*0.45 + 3*0.33)/5 = 0.378. Таким чином жодному з агентів не вигідно змінювати годівниці. Визначення. Процедура спільної каси: в кожній партії гри індивідуальні виграші складаються разом і діляться порівну між усіма гравцями. За умов спільної каси буде ціна Мора: M`= (0.9+4*0.33)/5=0.44(4). Приклад №2. Та ж гра з використанням спільної каси. За рахунок спільної каси агенти підвищують середній індивідуальний виграш до ціни Мора. Порівняння Прикладу №1 і Прикладу №2. Залежність середнього виграшу і-го агента від його складності (глибина пам’яті для автомата з лінійною тактикою):
wi M` M*
ціна Мора 2
ціна Неша
m-глибина пам’яті w i-середній виграш і-го агента
1
m*
m
Висновок. Не вигідно створювати великі колективи, які працюють в умовах спільної каси, оскільки це призводить до невиправданого зростання складності агента.
2004
Лекція 17. Економічні моделі колективної поведінки. 17.1. Поняття ринкової рівноваги (general equilibrium theory) Розглядається ринкова (стихійна) економіка. Базовий механізм – це встановлення рівноваги між попитом (demand) та пропозицією (supply). Ціна на деякий товар, який продається і купується на окремому ринку (single market), визначається точкою перетину кривих попиту та пропозиції (ціна сама собою встановлюється в такий спосіб, що загальна кількість виготовленого товару дорівнює загальній потребі в цьому товарі). В ситуації, коли ринків багато і вони взаємопов’зані, виникає однозначна взаємозалежність між попитом/пропозицією на різні товари (при цьому можливості (бюджети) агентів-покупців/продавців обмежені). В економічній теорії доводиться, що існує загальна ринкова рівновага (general equilibrium), яка передбачає таке встановлення цін на усі товари, що всі ринки лишаються "чистими" ("clear"). Тобто немає залишків не проданих товарів (excess supply) та нестачі дефіцитних товарів (excess demand). Очевидно, що ринковий механізм можна застосувати при вирішенні Основної проблеми ТКП (розбиття загальної цільової функції колективу та індивідуальні цільові функції агентів). Для цього ЦФК представляється у вигляді умов, за яких існує загальна ринкова рівновага (результат відомий, але не відомо як його досягти). Система <Env,MAS> представляється у вигляді системи <ринки, продавці, товари, покупці, бюджети>. Цільова функція агента еквівалента мотивації покупця (або продавця). В процесі "торгівлі" встановлюється загальна ринкова рівновага, тобто реалізується ЦФК (агенти самостійно знаходять рішення у вигляді системи цін на товари). Приклад: розподілення обчислювальних ресурсів (workload allocation). Агенти-покупці: процеси користувачів, агенти-продавці: процеси ядра, товари: кванти часу процесора, сторінки загальної пам’яті, семафори, черги повідомлень, сокети.
17.2. Розробка механізмів взаємодії (mechanism design). Ефективність ринкових механізмів в першу чергу залежить від вміння "гравців" домовлятися між собою (наприклад, про ціну на товар, або про спільне підвищення цін). Так само ефективність КП залежить від вміння агентів вести переговори (negotiation) один з одним для узгодження спільних дій. Т.ч. виникає задача розробки механізмів взаємодії агентів у вигляді протоколів (наборів правил) взаємодії з деякими бажаними (з точки зору розробника) властивостями. До цих властивостей можна віднести наступні - гарантований успіх (протокол має гарантувати обов’язкову сходимість до погодження сторін) - максимізація спільного виграшу (протокол має гарантувати, що в результаті погодження сторін їхній сумарний виграш обов’язково збільшиться) - ефективність по Парето (результат погодження є ефективним по Парето, якщо не існує жодного іншого подібного результау, який підвищує виграш хоча б одного з агентів, не зменшуючи виграші інших агентів) - індивідуальна раціональність (протокол є індивідуально раціональним, якщо слідування протоколу ("гра за правилами") – це найкращій спосіб поведінки для кожної зі сторін, що ведуть переговори) - стабільність (протокол створює умови, за яких всі агенти зацікавлені діяти у визначений спосіб, найкращій тип стабільності – це рівновага за Нешем)
17.3. Аукціони (auctions). Базовий сценарій: агент–аукціоніст (auctioneer) розподіляє між агентами–покупцями (bidders) товари, в такий спосіб що один товар потрапляє до одного покупця. Метою аукціоніста – є продати одному з покупців товар за максимальну ціну. Метою покупця – є отримати бажаний товар за мінімальну ціну. Аукціоніст досягає своєї мети шляхом розробки найбільш вдалого механізму аукціону. Покупець змушений досягати оптимального результату погоджуючись з умовами аукціоніста. Товарами можуть бути задачі, ресурси або привілеї. lot – товар який продається (назва товару, стартова ціна, біжуча ціна, кінцева ціна), bid – заявка на купівлю товара (ім’я покупця, назва товару, запропонована ціна). Ключовим моментом є спосіб оцінки агентом товару: - спільна оцінка (common value): товар має однакову ціну для всіх агентів-покупців - приватна оцінка (private value): тавар має різну ціну для різних агентів-покупців - взаємозалежна оцінка (correlated value): оцінка товару залежить як від індивідуальних вподобань агента, так і від вподобань інших агентів. I. Спосіб визначення переможця: - переможець той, хто запропонував і заплатив найбільшу ціну (first-price auctions), - переможець, який запропонував останню найбільшу ціну, сплачує передостанню другу за величиною ціну (second-price auctions).
2004 II. Модель інформаційної зв’язності покупців: - всі агенти бачать всі заявки (open cry) - агент бачить лише свої заявки (sealed bid) III. Механізм обробки заявок: - однокроковий (one shot) - на підняття ціни (ascending) - на зниження ціни (descending) Типи аукціонів: 1. Англійський аукціон: first-price + open cry + ascending auction (домінуюча стратегія: потроху збільшувати ціну, доки є можливість, потім припинити) 2. Голандський аукціон (Dutch auction): open cry + descending auction (домінуючої стратегії не існує) 3. Найпростіший аукціон: first-price + sealed-bid + one-shot (домінуюча стратегія: не має змісту давати ціну вищче приватної, міркування потенційного переможця: давати ціну трохи нижчу за приватну (щоб зменшити відстань до другої ціни, тобто зменшити "ціну перемоги"), на скільки саме нижчу - загального рішення не існує) 4. Аукціон Вікрея (Vickrey auction): second-price + sealed-bid + one-shot (домінантна стратегія: давати приватну (правдиву) ціну) Пояснення: - Якщо я даю більше ніж ПЦ, то в разі виграшу я втрачаю різницю (віддаю більше грошей, ніж ця річ для мене варта). - Якщо я даю менше ніж ПЦ, то окрім того, що я зменшую свої шанси на виграш, це взагалі не має сенсу, так як в разі виграшу я все одно віддам меншу (програвшу) ціну. - Т.ч. єдина правильна стратегія в цьому аукціоні – давати правдиву ціну.
17.4. Проблема "відвідування барів" (El Farol Bar problem). Постановка задачі. Кожний вечір кожний з N агентів обирає в який з M бірів піти. При цьому N > M і кожний бар може вмістити mj відвідувачів (j=1,…,M, Σmj <= N). Якщо бар, який обрав агент переповнений (не має вільних місць і доводиться чекати), то вечір зіпсовано (програш), в протилежному випадку вечір є вдалим (виграш). Агенти кожний раз обирають бар самостійно, не знаючи вибір інших агентів (несамовиявлений колектив). Окремий агент пам’ятає n минулих своїх виборів та їх результати (<назва бару, виграш/програш>). Проблема: Чи існує така стратегія (правило) поведінки окремого агента, яка гарантує йому сходимість до чергування завжди вдалих вечорів? Інтерпретація в термінах ОСГ. ПВБ – це ітераційна гра в розподілення, в якій функції виграшу мають наступний вигляд rj = 1, if ajt <= mj & 0, if ajt > mj, де rj – виграш агентів, які обрали j–ий бар ajt – кількість агентів (ajt <=N), які на кроці t обрали j-ий бар mj – місткість j–го бару Відповідь: ідеальної стратегії поведінки в ПВБ не існує, тобто з позицій максимізації індивідуальної цільової функції агента ця проблема не має рішення (не існує рішення гри (рівноваги за Нешем) в чистих стратегіях) Пояснення: Два чинника – відсутність спілкування та обмежений спільний ресурс (місця у барах) призводять до неможливості існування рішення. Якщо б ідеальна стратегія існувала, то що б було, коли її одночасно виконували всі агенти? (протирічча). Міркування агента: якщо агент у кроці t обрав бар і той виявився переповненим, то логіка підказує на кроці t+1 обрати інший бар. Однак ті самі міркування усіх інших агентів, що відвідали цей бар на кроці t і програли, приведуть до того, що бар буде “пустим” на кроці t+1. З точки зору максимізації середнього виграшу колективу (сума інд. виграшів, поділена на N) рішення існує у вигляді будь якого RL-алгоритму (наприклад, LA). При цьому сходимість алгоритму тим швидше, чим більше глибина пам’яті агента n. Мінорна гра (minority game). МГ - це спрощення ПВБ для випадку двох барів (M=2) “половинної” місткості (m1=m2=N/2). В кожній партії ітераційної гри агенти розбиваються на дві групи (дві доступні дії {1;2}). При цьому кожен з агентів не знає вибору інших агентів. Перемагають ті агенти, які залишаються в меншості (minority).
2004
Лекція 18. Еволюційні моделі колективної поведінки 1. Принципи побудови еволюційних МКП -
population biology + ecological modeling = computational ecologies популяційна біологія + екологічне моделювання = обчислювальні екології етологія (Конрад Лоренц) – наука про поведінку тварин (колективний аспект – стада, зграї, колонії (Swarm Intelligence)) колектив → популяція агент → представник популяції Розглядаються великі колективи відносно простих агентів з обмеженою тривалістю життя, здатних до самовідтворення та пристосування (адаптації) до заданих умов середовища. В переважній більшості випадків мова іде про програмних агентів (software agent).
-
Основні принципи: process of natural selection процес природнього відбору self-regulation of population size саморегуляція розміру популяції → популяційна динаміка process of self-replication процес самовідтворення приклад змістовної інтерпретації (infoSpiders) → алгоритм
2. Еволюційні обчислення Загальний алгоритм: 1. [initialize population] Ініціалізувати популяцію 2. [evaluate fitness] Розрахувати придатність кожного представника популяції (моделюється процес керованого природнього відбору) 3. [applay selection] Здійснити відбір представників на основі проведених розрахунків 4. [reproduce population] Відтворити відібраних представників для формування нової популяції 5. [perform evolutionary operations] виконати еволюційні операції: схрещування (crossover), мутація (mutation), випадковий вибір (random variation) → "народжуються" нова "хвиля" представників популяції 6. [check condition] перевірити цільову умову: якщо вона досягнута то кінець, інакше перейти на крок 2. Три області еволюційних обчислень (в порядку зростання складності): 1. генетичні алгоритми (геном – послідовність бітів – точка в гіперпросторі) 2. еволюційне програмування (додається поняття середовища (функція середовища) + винаходиться не оптимальна точка у гіперпросторі, а оптимальна лінія (стратегія) поведінки) 3. генетичне програмування (розглядається популяція програм, кожна з яких представлена у вигляді дерева, відповідно здійснюється природній відбір різних варіантів програми, яка б задовільняла заданим специфікаціям (які розглядаються як середовище)) - приклад змістовної інтерпретації (вирішення задачі комівояжера (travelling salesman problem) за допомогою генетичних алгоритмів)
3. Кліткові автомати. - запророновані Дж. фон Нейманом - Це четвірка A={d, Q, N, δ}, де d – розмірність простору (1D, 2D, ...) Q – кількість станів автомату N – кількість сусідів δ - локальна функція перходу (зміни стану) - різні типи оточення сусідами (сусідство по фон Н. (von Neumann neighbourhood), сусідство по Муру (Moore)) - КА працюють паралельно, синхронно у дискретному часі - самовідтоврення (робота фон Неймана) - LIFE game (J.H. Conway, 1960)
2004
Лекція 19. Розподілений штучний інтелект: моделі колективної поведінки 1. Розподілений пошук припустимого рішення (Distributed Constraint Satisfaction) Постановка задачі. Проблема пошуку припустимого рішення (CSP, distributed constraint satisfaction problem) задається трійкою P=<X,D,C>, де X = {x1,x2,…,xn} – множина змінних D = {D1,D2, …,Dn} – множина обмежених дискретних областей визначення відповідних змінних, C = {C1(K1),C2(K2), …,Cm(Km)} – множина обмежень, що накладаються на значення змінних, Ki⊂X – підмножина змінних, Ci – предикат (логічна умова, яка приймає значення істина, якщо всі змінні з Ki одночасно приймають задані значення) Треба знайти хоча б одне (не обов’язково оптимальне) рішення X* з множини усіх можливих комбінацій X∈D1×D2×…×Dn, яке б відповідало заданим обмеженням (було припустимим). Розподіелний пошук припустимого рішення. Змінні та обмеження розподілені між агентами. В найпростішому випадку одному агенту ставиться у відпоідність одна змінна. При цьому агент знає всі обмеження, в яких "задіяна" ця змінна. Вирішення задачі. Два основних підходи 1) generate-and-test (consistency) 2) backtracking (search) Приклад. Задача про розміщення чотирьох королев. Треба розмістити 4 королеви на дошці 4 на 4 в такій спосіб, щоб вони не загрожували одна одній (будь-яким двом королевам забороняється стояти в одному рядку, в одному стовпцю та на одній діагоналі). Кожна з королев може рухатись лише в своєму рядку. Початкове розміщення – випадкове.
X = {x1,x2,x3,x4} D = {D1,D2,D3,D4}, Di∈[1,2,3,4] C = {C1,C2,C3,C4}, Ci = {|b∈Di, c∈Dj, b≠c, i - j ≠ b - c, i - j ≠ c - b}
2. Пошук в реальному часі (Realtime Search) Постановка задачі. На заданому ненаправленому графі, в будь-яких двох вершинах випадковим чином розміщюються ціль (target) та агент. Перед агентом ставиться мета знайти найкоротший (найшвидший) шлях до цілі. Довжина шляху складається з суми цілих чисел, що приписані ребрам графу. За одни такт агент поже перейти на одну сусідню вершину (вибір). В кожній вершині агент бачить "відстань" до цілі (кількість вершин, що відділяють його від цілі). Пошук рухомої цілі (moving target search), Колективний пошук (N>=2). Вирішення задачі. Приклад.
3. Організоване вирішення проблем (problem solving organization) Постановка задачі. Вирішення задачі. Приклад. Задача побудови башти (tower building task). Задача побудови вежі сформульована японським вченим Тору Ішида як тестова задача для оцінки рівня інтелектуальності колективної поведінки агентів різної архітектури (в даному випадку інтелектуальність розуміється як здатність самостійно знаходити спосіб вирішення складної проблеми). Рішення задачі базується на алгоритмах пошуку в реальному часі (real-time search). В задачі розглядається обмежений дискретний двовимірний простір, який складається з прямокутних комірок (“черепичний світ”). В центрі цього простору в одній з комірок знаходиться “будівельний майданчик”, на якому має буди зведена вежа. “Будівельні блоки”, кожний з яких також займає одну комірку, випадковим чином розкидані у просторі. Перед колективом агентів ставиться завдання за як можна меншу кількість часових кроків побудувати вежу (знайти та встановити блоки на “будівельному майданчику” згідно їх порядкових номерів). Метою досліджень є знаходження таких архітектур агентів, які б дозволяли колективу агентів самостійно знаходити найкращі (найшвидші) наперед невідомі досліднику способи (алгоритми) побудови вежі. Алгоритми: 1) некоординовані агенти, 2) скоординовані агенти 3) організовані агенти
2004
Лекція 20. Задача механічного врівноваження. 1. Постановка та аналіз задачі механічного врівноваження. 1.1. Загальна постановка задачі. Розглянемо площину з однією точкою опори, яка обрана так, що ця площина знаходиться у стані рівноваги. Розмістимо випадковим чином на цій площині N агентів. Всі агенти мають однакову вагу, яку приймемо за одниницю. Кожний з агентів здатний переміщуватись по площині за власною ініціативою в будь-якому напрямку. Внаслідок розміщення агентів площина вийде зі стану рівноваги (новий центр ваги перестане співпадати з обраною раніше точкою опори). Перед колективом агентів ставиться задача врівноважити площину, тобто знайти таке взаєморозміщення, яке б повернуло її у стан рівноваги. Врівноважити площину треба за можливо меншу кількість часових кроків (основний критерій). 1.2. Постановка задачі для одновимірного дискретного випадку. З урахуванням того, що кут відхилення буде рівний нулю при нульовій різниці правого та лівого моментів, отримаємо рівняння задачі N
m j = ∑ ( F − cij ) → 0 , i =1
де M – кількість дискретів одновимірного простору, N – кількість агентів, F – координата точки опоры (N/2 ≤ F ≤ (M – N/2)), а ci – координата i–го агента при j-му розміщенні (1 ≤ c1 ≤ M – N + 1, N ≤ cN ≤ M, ci-1 < ci < ci+1, i=2,…,N-1), mj – різниця моментів при j-му розміщенні (j=1,…,K1, K1 – кількість всіх можливих розміщень N агентів в M дискретах простору, K1=M!/(N!(M-N)!)), |mj| ∈ [mmin,mmax], mmin = N ⋅ (1 + N) / 2, mmax = N ⋅ (1 + 2M – N) / 2, кількість різних значень |mj| (різниць моментів) K2 = N ⋅ (M – N) + 1. 1.3. Основною проблемою в цій задачі є те, що окремий агент діє на власний розсуд і тому в найгіршому випадку знаходиться в ситуації повної невизначеності стосовно правильності своїх дій (credit assignment problem). Зробивши хід і отримавши відгук (реакцію) середовища у вигляді різниці моментів, агент не може зробити однозначного висновку про те, чи був цей його хід виграшним (врівноважуючим) чи програшним (розрівноважуючим), так як середовище (терези) реагує на колективну дію усіх агентів, а не на одну лише дію даного агента. Внаслідок цього агент, що не володіє інформацією про дії інших агентів колективу, приречений на сумніви відносно правильності своїх дій. Таким чином, найкращим є те рішення задачі, яке в найкращий спосіб долає цю невизначенність. 1.4. Аналіз задачі за допомогою графа розміщень. Кожне розміщення агентів з множини всіх можливих розміщень можна розглядати як вершину деякого графу. Якщо з даного розміщення можна перейти до іншого шляхом преміщення одного чи більше агентів на один крок, то ці два розміщення поєднюються ребром графу. Вага ребра дорівнює кількості одночасних переміщень агентів необхідних для переходу від одного розміщення до другого. Особливі вершини – це врівноважуючі розміщення. Задача зводиться до пошуку найкоротшого шляху від вершини початкового розміщення до найближчої вершини, що відповідає врівноважуючому розміщенню. 1.5. Критерії ефективності алгоритмів врівноваження. З точки зору зовнішнього спостерігача, який володіє повною інформацією про задачу, існує найкоротший можливий шлях з будь якого стану нерівноваги в стан рівноваги Существует кратчайший возможный путь из любого состояния неравновесия в состояние равновесия тривалістю Tj,s (ідеальне врівноваження). Об’єктивно оцінити ефективність роботи алгоритму врівноваження можна лише шляхом порівняння середньої швидкості врівноваження даним алгоритмом Tj,a з часом Tj,s. При цьому визначається за формулою Tj,s = [m0 / N] + {(m0 / N) – [m0 / N]}, де – початкова різниця моментів, N-кількість агентів, […] –взяти цілу частину (truncate), {…} –закруглити зверху (ceiling). На основі Tj,s та знайденого Tj, a можна визначити: 1) абсолютний критерій ефективності: Wj,a = Tj,s – Tj, a, 2) відносний критерій ефективності: wj,a = Tj, a / Tj,s.
2004 2. Вирішення задачі механічного врівноваження. обмеження: - кожному агенту за однин такт дозволяється зробити лише один крок (т.ч., наприклад, для одновимірного випадку набір всіх можливих дій агента містить три дій: {крок вліво, крок вправо, крок на місці}) - два агенти не можуть займати один дискрет простору та “перестрибувати” один через одного - в алгоритмі агента забороняється використовувати значення M,N,F - в кожному такті всім агентам повідомляється біжуча різниця моментів mj - задача вважається вирішеною, коли mj=0 - початкове розміщення агентів випадкове 2.1. Централізоване врівноваження. Рішення шукається методами математичного програмування з точки зору центру управління та повністю підпорядкованих йому агентів. 2.2. Децентралізоване врівноваження. Рішення шукається у вигляді локального уніфікованого алгоритму агента (вирішується основна проблема ТКП для повністю однорідного колективу). 2.2.1. Децентралізований повний перебір → педантичний агент (pedantic agents), загальний алгоритм: спочатку збираються в N крайніх дискретах простору коромисла (справа або зліва) і після визначення моменту повного збору починають по одному переміщуватись на іншу сторону коромисла до моменту врівноваження. 2.2.2. Несамовиявлений колектив → УНК-1,2,3,4, загальний алгоритм: всі агенти роблять випадковий крок, переміщуючись при цьому в іншу вершину графу розміщення, якщо mj+1 > mj, то кожний з агентів робить зворотню дію (відкат, backtracking) і таким чином повертаються у попередню вершину графу розміщення, інакше вони повторюють процедуру випадкового вибору. Алгоритм можна покращити використанням техніки навчання з підкріпленням (взважений випадковий вибір дій). 2.2.3. Самовиявлений колектив→ УСК-2в,3,4, загальний алгоритм: такий самий як для 2.2.2., але нестача інформації про колективну дію зменшується за рахунок спілкування. В межах заданих обмежень на інформаційної взаємодію агенти повідомляють один одному дію, яку вони реалізували на попередньому кроці. Ця інформація використовується під час взваженого випадкового вибору наступної дії.
2004
Лекція 21. Колективна поведінка обчислювальних агентів. 1. Концепція обчислювальних екологій (computational ecologies, XEROX) Обчислювальна екосистема – це розподілена обчислювальна система, в якій кожен її компонент (обчислювальний процес) діє в першому наближенні незалежно від інших. Результатом цього є складна загальна поведінка цілої системи. При цьому компоненти утворюють деяку "екосистему" в абстрактоному сенсі. Мета полягає у дослідженні того, як залежить поведінка системи від інформації, що поступає на вхід компонентам. Крім цього досліджується як впливає на поведінку системи співпраця (cooperation) між компонентами та обмін інформації між ними. Основні моменти: - процеси співрацюють при вирішенні спільної задачі (розпаралелення) і в той же час протистоять один одному у захопленні вільних обчислювальних (процесорний час + оперативна пам’ять) та мережевих ресурсів (частина трафіку + мережеве під’єднання) - створення нових процесів відбувається у непрогнозований спосіб (при цьому батьківській процес може "народити" синівській на іншому мережевому вузлі) - відбувається інтерактивна взаємодія з користувачами системи; при цьому вплив користувачів на систему можна розглядати як нестаціонарний випадковий процес.
2. Мобільні обчислення (mobile computing) та мобільний код (mobile code) Мобільні обчислення (mobile computing) – обчислення, що виконуються у розподілених обчислювальних системах, в склад яких входять мобільні обчислювальні пристрої. До мобільних обчислювальних пристроїв відносяться: - бортові або вбудовані системи (embedded systems), портативні ПК або ноутбуки (notebooks), PDA (personal digital assistant) або "кишеньковий" комп’ютер, носимі комп’ютери (wearable computers) сотові телефони → всюдиприсутні обчислення (ubiquitous computing) Предметна область: платформи розподілених обчислень (PVM, Linda System) + розподілені об’єктно-орієнтовані платформи (CORBA, .NET) Мобільний код – код, який може бути переміщенний по мережі з одного вузла на інший. Мобільний код, який переміщується за власною ініціативою називається мобільним програмним агентом. Основна проблематика: зменшення навантаження на канали зв’язку.
3. Концепція автономних обчислень (autonomic computing, IBM) Концепція “автономних обчислень” (запропонована корпорацією IBM, прототип: проект eLiza) покликана перекласти частину навантаження по управлінню обчислювальною системою з системних адміністраторів та іншого обслуговуючого персоналу на саму обчислювальну систему (autonomic computing). Обгунтування: на даний час обчислювльні системи ускладнилися настільки, що на підтримку іх в робочому стані витрачається значно більше коштів, ніж на їх купівлю та інсталяцію + ця складність продовжує зростати. Основні напрямки досліджень: - само-конфігурація при встановленні та інсталяції - само-відновлення після збаїв та помилок - само-оптимізація (автономне вимірювання та покращення продуктивності) - само-захист від внутрішніх та зовнішніх атак
2004
Лекція 22. Колективна поведінка вимірювальних агентів. 1. Вимірювально-обчислювальні мережі (ВОМ) 1.1. Визначення. Ефективність роботи будь-якої системи зростає в залежності від того, наскільки повною (достовірною, точною) інформацією володіє ця система про своє оточення (середовище). Питаннями отримання інформації про оточення системи займається інформаційна теорія вимірювальної техніки. В цій теорії розглядається вимірювально-обчислювальний канал. Об’єкт вимірювання
Давач
Аналогоцифровий перетворювач
Попередня обробка
Кодування та стиск даних
Канал передачі даних
Споживач вимірювальної інформації
Рис.1. Вимірювально-обчислювальний канал Виірювально-обчислювальна мережа утворюється великою кількістю незалежних вимірювально-обчислювальних каналів, за допомогою яких досліджуються характеристики розподіленого у просторі об’єкта вимірювання. При цьому будується інформаційний портрет об’єкта вимірювання (рисунок). Основиними задачами, які вирішуються при побудові ВОМ є 1. підвищення точності інформаційного портрету досліджуваного об’єкту (тобто збільшення кількості отриманої інформації про об’єкт = зменшення невизначенності стосвоно оточення системи), 2. зменшення вартості процедури вимірювання (наприклад, зменшення часу отримання інформаційного портрету об’єкту вимірювання). Вимірювальний агент - це самостійний (автономний) вимірювально-обчислювальний канал, який здатен за власною ініціативою змінювати параметри вимірювання (наприклад, переміщуватись в просторі об’єкта, змінюючи координату точки вимірювання). Інтелектуальна ВОМ = колектив вимірювальних агентів. 1.2. Основні характеристики. 1. Розподіленність вимірювачів у просторі. 2. Автономність вимірювальних засобів (вимірювання відбуваються без втручання людини). 3. Довготривалість вимірювань. 4. Контактність або безконтактівсть вимірювань. 5. Мобільність вимірювальних засобів. 1.3. Основні застосування. - розподілені контактні вимірювання (distributed sensing). - картографування (mapping). - колективний пошук (search) - локалізація (localization) - відслідковування траекторій (tracking) - польова развідка (field (indoor or outdoor) reconnaissance) 1.4. Приклади ВОМ: система збору гідрофізичної інформації у Світовому океані на основі автоматичних буйкових станцій (дрифтерів), система екологічного моніторингу країни або регіону на основі мобільних станцій екологічного моніторингу, система моніторингу глобальної обчислювальної мережі на основі мобільних програмних агентів.
2. Проблематика розподілених контактних вимірювань 2.1. Проблема оперативності управління: затримка сигналу між агентом і центром управління (Lg), як правило, набагато бальша ніж затримка сигналу між сусідніми агентами (La): Lg >> La. У випадку централізованого управління процесом вимірваюння команда на переміщення надходить до агента з затримкою 2Lg, а у випадку децентралізованого управління віддається відразу. Проблема оперативності управління стає тим гострішою, чим більше різниця між Lg і La. Іншими словами, чим далі від вимірювальних агентів знаходиться центр збору та обробки, тим більше централізоване управління програє децентралізованому в оперативності. Проблема оперативності управління є прямим наслідком основної проблеми розподілених систем. 2.2. Проблема розміщення вимірювальних агентів. Проблема полягає в тому, що різним способам розмішення N вимірювальних агентів відповідно у N точках простору розміром M відповідають різні по достовірності (якості) інформаційні портрити (відображення) об’єкту вимірювання. Проблема розміщення є прямим наслідком обмежень, які накладаються на кількість вимірювальних агентів (M >> N). Задача полягає у знаходженні такого розміщення вимірювальних агентів в просторі, яке б максимізувало достовірність відображення об’єкта вимірювань. Основною причиною цього обмеження є принцип мінімізації впливу засобу вимірювань на об’єкт дослідження (принцип непорушення природнього функціонування об’єкту досліджень), а також відносно висока вартість вимірювальних агентів.
2004 3. Інтерполяційна модель колективної поведінки вимірювальних агентів В інтерполяційній моделі колективних вимірювань передбачається, що агенти здійснюють контактні точкові вимірювання в заданому середовищі одного або більше параметрів. Модель виглядає наступним чином (рис.2). Є зовнішнє середовище (об’єкт вимірювання), в якому M точок поєднані між собою у єдину просторову структуру (наприклад, однорідну одновимірну незамкнену решітку з M вузлами). У зовнішньому середовищі реалізована деяка функція, яка задає значення параметрів середовища в кожній його точці. Таким чином в загальному випадку зовнішнє середовище характеризується: виміром (1D, 2D, 3D); кількістю точок (M); топологією з’єднань точок; кількістю параметрів; виглядом функції середовища (залежностями параметрів від часу та просторових координат). Центр збору та обробки
Оцінка
Колектив мобільних агентів
Зовнішній спостерігач
Середовище
Генератор значень точок середовища
Рис.2. Інтерполяційна модель колективної поведінки
Колектив вимірювальних агентів розміщюється у зовнішьому середовищі. Кожний агент в один момент часу займає одну точку середовища. Кожен агент здатний вимірювати параметри середовища в тій точці, де він знаходиться. Кожен агент здатний переміщуватись у просторі за власною ініціативою з заданою наперед рівномірною швидкістю. Виміряні значення параметрів середовища агенти передають у центр збору та обробки (далі просто "центр"). В центрі будується функція відтворення за допомогою деякого методу інтерполяції. При цьому значення, виміряні і передані в центр агентами, виступають в ролі вузлів інтерполяції. Основною перевагою цієї моделі є можливість оцінити внесок кожного вимірювального агента у побудову інформаційного портрету (інформаційну корисність ВА ~ міра кількості вимірюваальної інформації, що здобута ВА). Інформаційна користність визначається як різниця у точності між повною моделлю та моделлю, що побудована без використання значеннь, що виміряні даним агентом.
4. Ентропійна модель колективної поведінки вимірювальних агентів В ентропійній моделі колективних вимірювань точки середовища в першому наближенні статистично незалежні. Схему можливих (допустимих) переміщень агентів у просторі задає граф з’єднань точок середовища. В кожний момент часу точка середовища може знаходитись в одному з К станів. Кожному стану ставиться у відповідність ймовірність перебування точки в цьому стані. Першопочатково припускаємо, що випадкові процеси, що реалізовані в точках середовища, є стаціонарними. Різним точкам ставляться у відповідність різні розподіли ймовірностей по станам. Виходячи з цього, для кожної точки можна визначити значення ентропії. Це значення будемо називати цільовим значенням ентропії точки. В даній моделі нас цікавить співвідношення цільової та максимальної ентропії точки (максимальна ентропія відповідає випадку, коли ймовірності появи кожного стану однакові). Чим більше відрізняються ці два значення, тим більше інформації в точці, якщо виходити з тверджень шенонівської теорії інформації. Перед початком експеримента в центрі будуються інформаційні портрети усіх точок з використанням принципу недостатнього обгрунтування Лапласа. Тобто першопочатково кожній точці ставляться у відповідність однакові ймовірності появи станів. Таким чином, кожна точка перед початком експерименту характеризується в центрі максимальним значенням ентропії. Метою колективу агентів, які постачають в центр інформацію про біжучий стан тих точок, в яких вони знаходяться, є збір усієї закладеної в середовище інформації (цільової ентропії) за можливо меншу кількість тактів моделювання (збільшення кількості отриманої інформації) та можливо меншу кількість переміщень між точками (зменшення вартості вимірювань). Задача має зміст лише в тому випадку, коли кількість агентів менше кількості точок середовища. Додатковим обмеженням є те, що в один момент часу в одній точці середовища може знаходитись один агент. Основною перевагою даної моделі є те, що з’являється можливість оцінити кількість інформації, яка отримується кожним агентом за кожний крок моделювання, шляхом підрахунку різниці значень ентропії інформаційного портрету точки до і після того, як отримано повідомлення про її біжучий стан від агента, який в ній знаходиться.