Агентни Системи
С подсилено oбучение
Стефан Ставрев
TRI Soft
tri-soft.net
Управител
Обзор на семинара
Въведение в агентните системи
Рационални агенти
Обучение
История на агентните системи
Задаване пара...
За какво е предназначен
семинарът
 Агентни системи:
 Система в която (един или повече) агенти си
взаимодействат.
 Изуча...
Какво е агент?
 Някои думи са трудни за дефиниране:
изкуство, красота, съзнание, интелект, аг
ент
 Дефинициите са или тв...
Дефиниции за агент
Всяко нещо, което може да възприеме средата около себе си
посредством сензори и да въздейства върху таз...
Човешки агенти
 Най-неуспоримият пример
 Вдъхновени за създаване на повечето
изкувствени агенти
 Примери за мулти-агент...
Не-човешки естествени
агенти
 Примери за мулти-агентни
системи:
 Колония от мравки
 Глутница хиени
 Стадо газели
Роботи агенти
 Често заместват човешките агенти
 Как да проектираме системите им за
контрол?
 Примери за агентни систем...
RoboCup
 Международно състезание
за роботи от 1997
 Цел: До 2050 отбор от
напълно автоматизирани
хуманоидни футболисти
д...
Софтуерни агенти
 Агентите нямат нужда от физическо тяло
 Интернет създаде голяма
нужда от софтуерни агенти
 Примери за...
Това агент ли е?
 Термостат
 Вход: Желана
температура и текуща
температура
 Изход: включи или
изключи нагревателя
Агентен дизайн
 Хетерогенни или
хомогенни
 Различията може да
са в хардуера или
софтуера
 Дали всички
хомогенни агенти
...
Околна среда
 Включва всичко друго
без агентите
 Може да е статична или
динамична
 Могат ли статичните
околни среди да ...
Възприятие
 При мулти-агентните
системи, информацията е
разпределена.
 Обикновенно светът
(околната среда) е
частично ви...
Контрол?
 Може да е централизиран
или децентрализиран
 Предимства на
децентрализирания
контрол:
 Ефикастност
 Разширяе...
Знание
 Какво знаят агентите за
околната среда?
 ...и какво един за друг?
 ...и какво знаят
другите?
 ...и какво знаят...
Роботика
Търгове
 Google AdSense
 На кого да се показват
рекламите?
 Колко да струва дадена
реклама?  E-bay търгове
 Няколко с...
Видео игри!!!
 Играчите искат предизвикателни
противници
 Важно е реалистичното, подобно на
човешкото поведение
 Трябва...
Схема
Обзор
Въведение в агентните системи
Рационални агенти
Обучение
История на агентните системи
Задаване параметрите на п...
Какво е рационален агент?
 Характеризира се с няколко показатела:
 Цел
 Награда
 Стойност
 Действия, които целят да м...
Оптимално вземане на
решения
 Как трябва да действа един агент във всяка
ситуация която срещне, така че да подобри
(да ма...
Ричард Белман
 Формализира Процеса за вземане
на решения на Марков (MDP),
извлича уравнението на Белман,
създател на дина...
Формализъм
 Предположете, че имате дискретни
интервали от време: t = 0,1,2…
 По времето на всяка една стъпка агентът:
 ...
Това практично ли е?

Състояние на света (околната
среда)
 Текущо състояние на света st от
множеството S
 Всичко за околната среда на
агента, ...
Функции на прехода
(транзиционни функции)
 Хващат динамиката на околната среда
 Как състоянията се променят в зависимост...
Видимост
 В напълно видими светове, наблюденията
еднозначно определят текущото състояние на
света:
st = Θt
 В частично-в...
Рефлексни агенти в напълно
видими среди
 Рефлексните агенти използват само текущото наблюдение:
π(Ѳt)= at
 В напълно вид...
Свойството на Марков
P( st+1 | Ѳt , at , Ѳt-1, at-1, Ѳt-2, at-2, ,..., Ѳ0, a0)= P( st+1 | Ѳt , at )
 Реактивните полици м...
Границата между агент и
среда
Робот Памет Физчески свят
Агент Среда
Агент Среда
Това притежава ли Марков
свойството?
 Ракета
 Може да наблюдава:
 Настоящата си скорост
 Настоящата си позиция
 Дейст...
Цели
 Цел е желано състояние
 В детерминистични
светове планирането се
изразява в търсене на
оптимален път до целта
 Пр...
Награди
 В стохастични светове целите не са достатъчни
 Нужно е предпочитание пред другите състояния
 Нужна е пълна пол...
Процес на Марков за вземане
на решения
 Представете си напълно-видима, статична и вероятно
стохастична среда
 Краен MDP ...
Обзор
Въведение в агентните системи
Рационални агенти
Обучение
История на агентните системи
Задаване параметрите на п...
Подсилено обучение
 Дефиниция:
 Раздел от машинното
обучение в информатиката,
занимаващо се с това как
един агент да изб...
Value функции
 Агентът предпочита състоянията с най-висока стойност:
очакваната дългосрочна бъдеща награда
 Това зависи ...
Action-value функции
 Аналогично наValue-функцията е Action-
value функцията:
Qπ (s,a)
 Отразява колко добра е текущата
...
Свят на играчките
 Напълно видима среда: агентът вижда позицията
си на дъската
 Възможните действия са: нагоре, надолу, ...
Q-обучение

Изследване на средата
 Ако всички двойки състояние-действие се посещават
безкрайно често и намаля бавно, Q – обучението н...
Оптимални полици
Обзор
Въведение в агентните системи
Рационални агенти
Обучение
История на агентните системи
Задаване параметрите на п...
Динамично програмиране
 Терминът „Динамично
програмиране“ се отнася до група
алгоритми, които могат изчислят
оптимални по...
Монте Карло
 Въвежда се обучение (научаване)
 Не се предполага пълно знание за средата
 Неоходими са единствено опит – ...
Прилики с ДП
 Изчисляват се едни и същиV и Q.
 Монте Карло може да се разгледат като ДП с
добавен опит от средата (тъй к...
Обучение с темпорални
(временни) разлики
 Централна идея в подсиленото
самообучение
 Съчетава основните идеи от
Динамичн...
Предимства пред Монте
Карло и ДП
 TD методите научават своите предположения частично като
използват други предположения.Т...
Въпроси по теорията?
Обзор
Въведение в агентните системи
Рационални агенти
Обучение
История на агентните системи
Задаване параметрите на п...
Морски шах с подсилено
обучение
Имплементация
Псевдо-код на алгоритъма Q-
learning

Пояснения
 Терминалните състояния да се
инициализират с: Q(s,a) = 0
 Всички останали с: Q(s,a) = 1.1
 γ = 0.99
 α = 0....
Избор на критерии за край на
обучението
 След като са изминали n на брой епизода
 След като 2 последователни Q-стойности...
Представяне на S
 Пример:
 1 – полето е заето от х
 2 – полето е заето от 0
 0 – полето е свободно
 Пример 2
 x- пол...
Примерно състояние
 s = 200010120
 действия : 1 до 9
 Q[s][a] =
Q[200010120][2]
 Еднозначно
преминаване от
кодирано съ...
Решения към
имплементацията
 Език за програмиране – препоръчва се ОО
език от високо ниво
 Структура за съхранение на таб...
Благодаря за вниманието!
ceo@tri-soft.net
Upcoming SlideShare
Loading in...5
×

Agent Systems

1,500

Published on

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,500
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Agent Systems

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

×