Лекция 1 - 05.10.2010

Увод

Що е то ИИ ?

Като цяло, могат да бъдат разгледани няколко направления в ИИ, които се опитват да направят различни типове системи [таблица - в pdf-а]. Едните опитват да имитират човешко поведение, другите опитват да мислят/разсъждават по "разумен" начин.

Тест на Тюринг

Той разглежда въпроса "Могат ли машините да мислят?" ("Могат ли да се държат по разумен начин?"). Постановката на теста представлява система, която е невидима за човека и се опитва да го заблуди, че тя представлява човек. Тюринг определя най-важните компоненти на ИИ: знание, разсъждение, разбиране на език, учене. Тестът на Тюринг не се поддава на математически анализ ("not reproducible, constructive, or amenable to mathematical analysis").

[I подход?]

През 60-те години се състои т. нар. "когнитивна революция": бихевиоризмът бива изместен от обработката на знания (когнитивна психология). Когнитивната наука е много важен момент за бума в развитието на ИИ. Когнитивната наука и невронаука (neuroscience) вече са се обособили като отделни клонове. Но те споделят с ИИ характеристиката, че ??? [pdf].

[II подход]

Имаме някакви твърдения. Как от тях да изведем други твърдения?
Под "рационално поведение" се има предвид да се извърши "правилното действие", за да се постигне дадена цел, всичко това в рамките на налична информация/ресурси. Невинаги изисква мисъл (рефлекси напр.), но мисленето действа в услуга на рационалното действие (помага за постигането на целта). Например, шах-машините (компютрите) предварително проиграват всички възможни ситуации от всички позиции и запаметяват най-перспективните ходове. По този начин те успяват (с дълга предварителна подготовка - изчисление) да победят човешки шампион.

В курса ще разглеждаме предимно агентния подход: всичко се разглежда като агент.
Агентът получава дадена информация и на нейна база извършва действия. Абстрактно, може да се разглежда като функция на възприятия, която извежда действие.

Купища науки са повлияли на развитието на ИИ [pdf]. История на ИИ [pdf].
Експертни системи: моделиране на експертни действия в някаква тясна област на действие. В началото са постигали доста добри резултати в своята област, после се оказали неперспективни (не-гъвкави?).
Много често една система прави наблюдения, въз основа на които прави изводи. Често се налага статистическа обработка на тези наблюдения.

Моментно състояние на нещата: В момента съвременните машини могат [списък - pdf]

Няколко "трудни" въпроси. [pdf]


Що е то "интелигентен агент?"

Агентът възприема информация от околната среда чрез сензори и й въздейства чрез въздействени средства (actuators). Функцията на агента е функция върху предишни наблюдения (сензорни възприятия) и резултатът й е действие (въздействие върху средата). Агенти могат да бъдат хора, роботи, инструменти. Схема на агент [pdf].

Рационалният (интелигентен) агент избира едно от възможните в дадената ситуация действия, опитвайки се да максимизира стойността на представянето (peformance measure), базирайки се само на възприетата до тук информация или нейно подмножество. Понеже не всичката информация е налична, процесът често е податлив на грешки.
Пример: автоматично такси [pdf]. Пример: агент за онлайн-пазаруване [pdf].

Типове на средата.

За средата са важни няколко характеристики: дали може да се наблюдавава изцяло (всеки неин компонент) (обозрима), дали е детерминистична (определена), дискретна/непрекъсната, статична, едноагентна, … Таблица на примерни среди [pdf].

Типове агенти. [pdf].

Схема на рефлексен агент [pdf]. LISP пример [pdf]. Недостатъци на простите рефлексни агенти - представянето им се влошава в слабо наблюдаема среда (мръсен оптичен сензор например).

Схема рефлексен агент с памет [pdf] - този тип може да съхранява информация за цялата околна среда и да я използва при действията си.

Схема на goal-based agent (агент с цел) [pdf]. Техните действия са ориентирани към постигане на дадена цел.

Схема на utility-based agent (агент за собствена изгода???) [pdf]. Техните действия са ориентирани към макмимизиране на собствената изгода (цели), на базата на performance measure.


Глава 3.

Решаване на задачи чрез търсене в пространството от състояния

Обобщен пример за агент, решаващ задача [pdf].
Пример: pathfinding агент за достигане от един град до друг (в Румъния!)

Типове проблеми (задачи)

  • детерминистичен (single-state)
  • необозрим (sensorless/conformant)
  • недетерминистичен
  • частично обозрим (contingency)

Пример с чистещия робот.

Четири неща дефинират един проблем:

  • начално състояние
  • функция, генерираща наследниците на дадено състояние
  • проверка за изпълнение на целта
  • оценка за цената на пътя

В този смисъл, решението е поредица от действия, която води от начално състояние до целево състояние.

Част от моделирането на проблема е избиране (дефиниране) на пространство от състояния. Него трябва да получим като абстракция на (безкрайно сложния) реален свят.
Едно абстрактно състояние е набор от реални състояния. [… pdf].

Примери с вакуумен робот и играта 15. Пример с индустриален робот.

Търсене в дървета

Пространството от състояния се представя като дърво, което обхождаме по някаква избрана стратегия (последователност).
Върховете в дървото представляват състояния от моделирания проблем. Така върхът е представяне, отговарящо на дадено състояние.
Някакви примери.

Стратегии за търсене. Те биват оценявани по пълнота, сложност по време, сложност по пространство (големина на една опашка от картинката, свежда се до памет), оптималност.
За измерване на тези показатели се въвеждат означения:
b - максимален фактор на разклонение (branching factor)
d - дълбочината на най-близкото решение
C* - цена на пътя (**path cost(() на най-"евтиното" (близкото) решение
m - най-голяма дълбочина на пространството от състояния - възможно е да е $\infty$

  • BFS, характеристики
  • Uniform-cost search, характеристики.
  • DFS, характеристики.
  • Depth-limited search, характеристики.
  • Iterative deepening search, характеристики.
  • Graph search, характеристики.
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-NonCommercial-ShareAlike 3.0 License