Your SlideShare is downloading. ×
Agent Systems
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×

Saving this for later?

Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime - even offline.

Text the download link to your phone

Standard text messaging rates apply

Agent Systems

1,265
views

Published on

Artificial Intelligence

Artificial Intelligence


0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,265
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Агентни Системи С подсилено oбучение Стефан Ставрев TRI Soft tri-soft.net Управител
  • 2. Обзор на семинара Въведение в агентните системи Рационални агенти Обучение История на агентните системи Задаване параметрите на проекта
  • 3. За какво е предназначен семинарът  Агентни системи:  Система в която (един или повече) агенти си взаимодействат.  Изучаването на такива системи  Могат да са естествени или изкувствени
  • 4. Какво е агент?  Някои думи са трудни за дефиниране: изкуство, красота, съзнание, интелект, аг ент  Дефинициите са или твърде общи или твърде специфични  Започваме, като даваме примери “I know it when I see it.” (Знам какво е, когато го видя) -Potter Stewart United States Supreme Court Justice Jacobellis v. Ohio, 1964 Re: What is hard-core pornography?
  • 5. Дефиниции за агент Всяко нещо, което може да възприеме средата около себе си посредством сензори и да въздейства върху тази среда посредством задвижващи устройства. -Ръсел & Новиг, 2003 • Доброто: описва концепцията за затваряне на цикъла: Агент Околна среда действие наблюдение • Лошото: Какво не е агент?
  • 6. Човешки агенти  Най-неуспоримият пример  Вдъхновени за създаване на повечето изкувствени агенти  Примери за мулти-агентни системи:  Вашето семейство  Спортен отбор  Компания с приятели  Армия  Играчите в World Of Warcraft  Интернет потребителите
  • 7. Не-човешки естествени агенти  Примери за мулти-агентни системи:  Колония от мравки  Глутница хиени  Стадо газели
  • 8. Роботи агенти  Често заместват човешките агенти  Как да проектираме системите им за контрол?  Примери за агентни системи:  Поточна линия  Роботи – войници  Автономни автомобили  Роботизиран футболен отбор
  • 9. RoboCup  Международно състезание за роботи от 1997  Цел: До 2050 отбор от напълно автоматизирани хуманоидни футболисти да победят във футболен мач отбора – шампион от последното световно първенство, като се спазват официалните правила наФИФА.
  • 10. Софтуерни агенти  Агентите нямат нужда от физическо тяло  Интернет създаде голяма нужда от софтуерни агенти  Примери за агентни системи:  Ценови агенти  Рекламиращи агенти  Наддаващи агенти  Управители на продуктова линия  Агенти във видео-игрите  Автономни системи
  • 11. Това агент ли е?  Термостат  Вход: Желана температура и текуща температура  Изход: включи или изключи нагревателя
  • 12. Агентен дизайн  Хетерогенни или хомогенни  Различията може да са в хардуера или софтуера  Дали всички хомогенни агенти взимат едно и също действие при еднакви други условия?
  • 13. Околна среда  Включва всичко друго без агентите  Може да е статична или динамична  Могат ли статичните околни среди да се променят  Ще завърши (ще склони) ли обучението на агентите?  Къде е границата между другите агенти и околната среда?
  • 14. Възприятие  При мулти-агентните системи, информацията е разпределена.  Обикновенно светът (околната среда) е частично видима  Много често планирането и самоубочението не са приложими  При мулти-агентните системи: как да комбинираме възприятието?
  • 15. Контрол?  Може да е централизиран или децентрализиран  Предимства на децентрализирания контрол:  Ефикастност  Разширяемост  Гъвкавост
  • 16. Знание  Какво знаят агентите за околната среда?  ...и какво един за друг?  ...и какво знаят другите?  ...и какво знаят другите за това което знаят?  Всеобщоизвестно знание
  • 17. Роботика
  • 18. Търгове  Google AdSense  На кого да се показват рекламите?  Колко да струва дадена реклама?  E-bay търгове  Няколко стоки за продан  Кога да се наддава и кога не?
  • 19. Видео игри!!!  Играчите искат предизвикателни противници  Важно е реалистичното, подобно на човешкото поведение  Трябва да се адаптира към играча  Много от съвременните системи са доста наивни.
  • 20. Схема
  • 21. Обзор Въведение в агентните системи Рационални агенти Обучение История на агентните системи Задаване параметрите на проекта
  • 22. Какво е рационален агент?  Характеризира се с няколко показатела:  Цел  Награда  Стойност  Действия, които целят да максимизират тези показатели
  • 23. Оптимално вземане на решения  Как трябва да действа един агент във всяка ситуация която срещне, така че да подобри (да максимизира) представянето си в дългосрочен план?  В психологията и економиката: теория на решенията  В инжинерството: оптимален контрол или теория на контрола  В информатиката: планиране и подсилено обучение.
  • 24. Ричард Белман  Формализира Процеса за вземане на решения на Марков (MDP), извлича уравнението на Белман, създател на динамичното програмиране  „Височаеща фигура в разработчиците на модерната теория на контрола и системния анализ“ - IEEE  „Уравнението на Белман е една от петте най-важни идеи в Изкувствения Интелект“ – Брам Бекър
  • 25. Формализъм  Предположете, че имате дискретни интервали от време: t = 0,1,2…  По времето на всяка една стъпка агентът:  Извършва наблюдение Ѳt  Избира действие at от крайно множество А  В общия случай, решението зависи от пълната история (полица): π(Ѳ0, a0, Ѳ1, a1, Ѳ2, a2 ,..., Ѳt)= at  Полица е съответствието между история и действие
  • 26. Това практично ли е? 
  • 27. Състояние на света (околната среда)  Текущо състояние на света st от множеството S  Всичко за околната среда на агента, което може да е значимо и за бъдещите наблюдения (включително наградите).  Пространството на състоянията може да е крайно или продължително.
  • 28. Функции на прехода (транзиционни функции)  Хващат динамиката на околната среда  Как състоянията се променят в зависимост от действията  Световете могат да са детерминистични: st+1 =T (st , at )  Или стохастични: P(st+1 | st, аt) = T(st, аt , st+1)
  • 29. Видимост  В напълно видими светове, наблюденията еднозначно определят текущото състояние на света: st = Θt  В частично-видими светове, наблюденията и състоянията са тясно свързани с модела на наблюдение: O(Θt, st) = P(Θt |st )
  • 30. Рефлексни агенти в напълно видими среди  Рефлексните агенти използват само текущото наблюдение: π(Ѳt)= at  В напълно видими среди: st = Θt  Реактивните полици имат вида: π(st)= at
  • 31. Свойството на Марков P( st+1 | Ѳt , at , Ѳt-1, at-1, Ѳt-2, at-2, ,..., Ѳ0, a0)= P( st+1 | Ѳt , at )  Реактивните полици могат да са оптимални, тъй като напълно видимите среди притежават свойството на Марков!  За момента ще пренебрегнем наградите  Свойството на Марков указва, че дори да запомним историята, това не може да ни помогне
  • 32. Границата между агент и среда Робот Памет Физчески свят Агент Среда Агент Среда
  • 33. Това притежава ли Марков свойството?  Ракета  Може да наблюдава:  Настоящата си скорост  Настоящата си позиция  Действия контолират тягата  А ако не наблюдава настоящата си скорост?
  • 34. Цели  Цел е желано състояние  В детерминистични светове планирането се изразява в търсене на оптимален път до целта  Проблемът може да се реши и с алгоритъм за търсене в граф, напр. A* или методът на Дийкстра.
  • 35. Награди  В стохастични светове целите не са достатъчни  Нужно е предпочитание пред другите състояния  Нужна е пълна полица, а не просто план  Средата предоставя и награда Агент Околна среда действие Наблюдение, Награда
  • 36. Процес на Марков за вземане на решения  Представете си напълно-видима, статична и вероятно стохастична среда  Краен MDP се състои от:  Крайен брой стъпки t=0,1,2,…  Крайно множество на състоянията s e S  Крайно множество на действията a e A  Транзиционен модел (модел на прехода): p(s’|s,a): вероятността да се премине към състояние s’ когато агентът вземе действие a в състояние s  Наградна функция R: S x A  ℝ, такава че агентът получава награда R(s,a) когато извърши действие a в състояние s  Хоризонт на планиране, който може да е безкраен
  • 37. Обзор Въведение в агентните системи Рационални агенти Обучение История на агентните системи Задаване параметрите на проекта
  • 38. Подсилено обучение  Дефиниция:  Раздел от машинното обучение в информатиката, занимаващо се с това как един агент да избере действията си в една околна среда, така че да максимизира някакво представяне на натрупваща се награда.
  • 39. Value функции  Агентът предпочита състоянията с най-висока стойност: очакваната дългосрочна бъдеща награда  Това зависи от полицата на агента  Value функция отразява стойността на всяко едно състояние, при дадена полица Vπ (s)  Оптималната value функция може да бъде намерена чрез динамично програмиране или подсилено обучение V*(s)
  • 40. Action-value функции  Аналогично наValue-функцията е Action- value функцията: Qπ (s,a)  Отразява колко добра е текущата комбинацията (състояние, действие) за агента  Ще намерим оптималните Action-value функции с помощта на Q-обучение: Q*(s,a)
  • 41. Свят на играчките  Напълно видима среда: агентът вижда позицията си на дъската  Възможните действия са: нагоре, надолу, наляво, надясно  Детерминистичен преход: 100% в желаната посока  Две крайни състояния:
  • 42. Q-обучение 
  • 43. Изследване на средата  Ако всички двойки състояние-действие се посещават безкрайно често и намаля бавно, Q – обучението намира оптималните Q*  За да се изпълни това условие, е нужно изследване  В -алчното изследване агентът избира произволно действие с вероятност и алчно действие с вероятност (1 - ).  В изследване СофтМакс агентът избира действията си според дистрибуцията на Болтцман:
  • 44. Оптимални полици
  • 45. Обзор Въведение в агентните системи Рационални агенти Обучение История на агентните системи Задаване параметрите на проекта
  • 46. Динамично програмиране  Терминът „Динамично програмиране“ се отнася до група алгоритми, които могат изчислят оптимални полици ако имат пълен модел на света, представен като MDP.  От малко практическо значение, но важни теоретично  Всички останали алгоритми се стремят да постингат същото, но с по-малко ресурси по-малко информация за света
  • 47. Монте Карло  Въвежда се обучение (научаване)  Не се предполага пълно знание за средата  Неоходими са единствено опит – проби от средата (s, a, r).  Решават проблеми с Подсиленото самообучение като осредняване на срещнати Rt  Епизодично обучение  Едва след края на епизода, се актуализират стойноститеV и Q  Подобрението се получава епизод-след- епизод, а не стъпка-по-стъпка
  • 48. Прилики с ДП  Изчисляват се едни и същиV и Q.  Монте Карло може да се разгледат като ДП с добавен опит от средата (тъй като не използваме пълен моделT и R)  Може да се използва опростен модел, за определяне на приблизителни стойности
  • 49. Обучение с темпорални (временни) разлики  Централна идея в подсиленото самообучение  Съчетава основните идеи от Динамичното Програмиране и Монте Карло.  Както при Монте Карло,TD може да се учат от директен опит – без пълен модел на средата.  Както при ДП, подобрението наV и Q става като се използват части от други научени приближения, без да се чака края на епизода.
  • 50. Предимства пред Монте Карло и ДП  TD методите научават своите предположения частично като използват други предположения.Това се нарича bootstrap  Не е необходим модел на средата (T, R), за разлика от ДП  TD чакат само 1 стъпка, доката Монте Карло трябва да изчакат да свърши целия епизод  Някои приложения имат дълги епизоди, или нямат въобще епизоди  Някои Монте Карло методи трябва да намалят или да изтрият цели епизоди  това забавя обучението
  • 51. Въпроси по теорията?
  • 52. Обзор Въведение в агентните системи Рационални агенти Обучение История на агентните системи Задаване параметрите на проекта
  • 53. Морски шах с подсилено обучение Имплементация
  • 54. Псевдо-код на алгоритъма Q- learning 
  • 55. Пояснения  Терминалните състояния да се инициализират с: Q(s,a) = 0  Всички останали с: Q(s,a) = 1.1  γ = 0.99  α = 0.1  = 0.1
  • 56. Избор на критерии за край на обучението  След като са изминали n на брой епизода  След като 2 последователни Q-стойности не са се променили значително
  • 57. Представяне на S  Пример:  1 – полето е заето от х  2 – полето е заето от 0  0 – полето е свободно  Пример 2  x- полето в заето с х  о – полето е заето с о  „-“ полето е свободно
  • 58. Примерно състояние  s = 200010120  действия : 1 до 9  Q[s][a] = Q[200010120][2]  Еднозначно преминаване от кодирано състояние в позиции на дъската
  • 59. Решения към имплементацията  Език за програмиране – препоръчва се ОО език от високо ниво  Структура за съхранение на таблицата с Q- стойностите  Речник от типа key-value  Масив  Класове  1 клас за имплементация поведението на агента  1 клас за представяне на дъската / играта
  • 60. Благодаря за вниманието! ceo@tri-soft.net