You are on page 1of 65

Вештачка интелигенција

Од почетка проналаска компјутера или машина, њихова способност да изведу разноврсне


задатке се развијала експоненцијално. Људи су развили моћ рачунарских система у
погледу њихових различитих радних домена, њихове велике брзине, и смањења
величине са временом. Грана компјутерске науке која је названа Вештачка интелигенција
(Artificial Intelligence), тежи стварању компјутера или машина који су интелигентни као
људска бића.

Шта је то Вештачка Интелигенција?

Према оцу Вештачке интелигенције, John McCarthy, то је “Наука и техника израде


интелигентне машине, посебно интелигентних компјутерских програма”.

Вештачка интелигенција је начин прављења компјутера, компјутерски контролисаног


робота, или програма који размишља интелигентно, на исти начин на који размишљају
људи.

Вештачка интелигенција се постиже проучавањем како људски мозак мисли, како људи
уче, одлучују, и раде док покушавају да реше проблем, а затим резултати ове студије
служе као основа за развој интелигентних система и софтвера.

Филозофија Вештачке Интелигенције

За време експлоатисања и рада са компјутерским системима, људска знатижеља, води


човека да се запита, “Може ли машина да размишља и да се понаша као човек?”

На тај начин је развој Вештачке интелигенције условљен намером да се креира слична


интелигенција у машинама што се сматра високом код човека.

Циљеви Вештачке Интелигенције

 Креирање експертских система − То су системи који приказују интелигентно


понашање, уче, демонстрирају, објашњавају и саветују кориснике.
 Примену људске интелигенције у машинама − Креирање система који размишља,
мисли, учи, и понаша се као људи.

Шта чини вештачку интелигенцију?

Вештачка интелигенција је наука и технологија која је заснована на дисциплинама као што


су Компјутерска Наука, Биологија, Психологија, Лингвистика, Математика, и Инжењерство.
Главни допринос Вештачке Интелигенције је у развоју рачунарских функција које су
повезане са људском интелигенцијом, као што су резоновања, учење, и решавања
проблема. Изградња интелигентног система настаје коришћењем знања из једне или
више области.

Програмирање без и уз употребу Вештачке Интелигенције

Програмирање без и са применом Вештачке Интелигенције може се приказати на


следећи начин −

Програмирање без AI Програмирање са AI

Компјутерски програм без Вештачке Компјутерски програм са Вештачком


Интелигенције може да одговори на Интелигенцијом може да одговори на
конкретна питања што значи да је способан генеричка питања, што значи да је способан
да их реши. да их реши.

Програми Вештачке Интелигенције могу


примити нове промене стављањем заједно
Промена у програму води до промене у
високо независних делова информација.
структури.
Стога може се мењати чак и минут програма
без утицаја на његову структуру.

Измене програма нису брзе и лаке. То може


Брза и лака измена програма.
утицати негативно на програм.

Шта представља технику Вештачке Интелигенције?

У реалном свету знање има неке нежељене карактеристике −

 Огроман капацитет близу непојмљивог.


 Није добро организовано нити добро форматирано.
 Стално задржава промене.

Технике Вештачка интелигенције теже да организују знање −

 Требало би да буде примећено од људи који га пружају.


 Требало би да буде лако изменљиво у смислу отклањања грешака.
 Требало би да буде корисно у многим ситуацијама иако је некомплетно или
нетачно.

Технике вештачке интелигенције подижу брзину извршења комплексног програма кога


поседују.

Примена Вештачке интелигенције

Вештачка интелигенција доминира у следећим пољима −

 Игре − игра важну улогу у стратегијским играма као што су шах, покер, tic-tac-toe,
итд., где машина може да размишља о великом броју могућих позиција што је
засновано на хеуристичком знању.
 Природно процесовање језика − Могуће је бити у интеракцији са рачунаром који
разуме језик којим говоре људи.
 Експертски системи − Постоје неке апликације које интегришу машину, софтвер и
посебне информације да би пренели образложење и савет корисницима.
 Визуални системи − Ови системи разумеју, интерпретирају, и разумеју визуелни
улаз на рачунару. На пример,
o Шпијунски авион снима информације, које се користе за разумевање
просторних информација мапе подручја.
o Доктори користе клиничке експертске системе за дијагнозу пацијента.
o Полиција користи компјутерски програм који може да препозна лица
криминалаца према потхрањеном портрету који су сачинили форензички
стручњаци.
 Препознавање говора − Неки интелигентни системи су способни да чују и разумеју
језик у виду реченица као и њихово значење када им се човек обраћа. Могу бити
обрађени различити акценти, речи у сленгу, бука у позадини, промена људске буке
у складу са хладноћом.
 Препознавање рукописа − Програм за препознавање рукописа чита текст који је
написан на папиру који је написан оловком или на екрану светлосном оловком. Он
може да препозна облике слова и да их претвори у текст који се може мењати.
 Интелигентни роботи − Роботи могу да изведу задатке које им задају људи. Они
имају сензоре помоћу којих детектују физичке податке из реалног света као што су
светло, топлота, температура, кретање, звук, неравнина, или притисак. Опремљени
су ефикасним, вишеструким сензорима и великим капацитетом меморије, да би
остварили примену интелигенције. Такође су оспособљени да уче из својих
грешака, и да се прилагоде новој околини.

Историја развоја Вештачке Интелигенције

Доле је приказана историја развоја Вештачке Интелигенције током 20-тог века −

Година Прекретница / Иновације

1923 Комад Карела Чапека “Росумови Универзални Роботи” (RUR) на премијери у


Лондону, први пут користи име "робот" на Енглеском.
1943
Постављене основе за развој неуронских мрежа.
1945
Исак Асимов са Колумбија Универзитета у Њујорку је сковао име Robotics.
Алан Туринг је увео Туринг Тест за оцењивање интелигенције и објавио књигу
1950
Компјутерске машине и интелигенција. Клауд Шенон објављује Деатаљна
анализа играња шаха као истраживање.
Џон Мекарти (John McCarthy) је сковао термин Вештачка Интелигенција.
1956
Демонстриран је први програм Вештачке Интелигенције на Карнеги Универзитету
(Carnegie Mellon University).
1958 Џон Мекарти (John McCarthy) креирао LISP програмски језик за Вештачку
Интелигенцију.
Дисертација Денија Боброва (Danny Bobrow) на Универзитету MIT показала је да
1964
компјутери могу разумети природне језике да реше тачно алгебарски проблем
исказан речима.
1965 Џозеф Визенбаум (Joseph Weizenbaum) на Универзитету MIT је творац програма
ELIZA, који решава интерактивне проблеме изводећи дијалоге на енглеском.
Научници са Стенфорт Универзитета (Stanford Research Institute) развили су робота
1969
под именом Shakey, који је опремљен локомоторним способностима, могућношћу
опажања и решавања проблема.
Група за склапање робота (The Assembly Robotics group) на Единбург Универзитету
1973
(Edinburgh University) је направила робота под именом Freddy, познатог шкотског
робота, који је био способан да користи вид у сврху лоцирања и склапања модела.
1979
Направљено је прво компјутерски контролисано независно возило.

1985 Харолд Коен (Harold Cohen) креирао и демонстрирао програм за цртање под
називом Aaron.
Највећи доприноси у свим областима Вештачке Интелигенције−

 Важни примери у машинском учењу


 Доношење одлуке на основу случаја
 Планирање вишеструког агента
1990
 Планирање распореда
 Развој рада са подацима и веба
 Разумевање природних језика и њиховог превођења
 Визуелизација, Виртуелна стварност
 Развој игара

1997 Програм (Deep Blue Chess) победио је тадашњег светског шаховског шампиона,
Гари Каспарова.
Интерактивни роботи мезимци постали су комерцијално доступни. MIT приказује
2000
робота под именом Kismet, робота са лицем које приказује емоције. Робот Nomad
претражује далеке пределе Антарктика и лоцира метеорите.
ШТА ЈЕ ИНТЕЛИГЕНЦИЈА?

Способност система да рачуна, мисли, предвиди релације и аналогије, учи из искуства,


чува и прикаже информације из меморије, решава проблеме, разуме сложене идеје,
говори течно језик, класификује, генерализује садржај и прилагођава се новим
ситуацијама.

Типови интелигенције

Као што је описао Howard Gardner, амерички развојни психолог, интелигенција се може
поделити на:

Интелигенција Опис Пример


Способност да говори, препознаје, и
користи механизме фонологије Наратори,
Лингвистичка интелигенција
(говорни звуци), синтаксу Оратори
(граматику), и семантику (значење).
Способност да се креира, Музичари,
Музичка интелигенција комуницира са, и разуме значење Певачи,
звука, разумевање корака и ритма. Композитори
Способност коришћења и
разумевања релација и веза при
Логичко математичка Математичари,
недостатку акција или објеката.
интелигенција Научници
Разумевање сложених и
апстрактних идеја.
Способност да доживе визуелну или
просторну информацију, промени
Читачи мапа,
је, поново креира визуелне слике
Просторна интелигенција Астронаути,
без референцирања на објект,
Физичари
конруисање 3D слика, померања и
њиховог ротирања.
Способност да користе део тела или
цело тело да реше проблеме или
способност да се успешно
Спортисти,
Телесно кинетичка интелигенција представљају модни производи,
Играчи
контрола над финим и осетљивим
моторним способностима, и
манипулација објектима.
Способност да направи разлику
Интраперсонална интелигенција између нечијих и сопствених Gautam Buddhha
осећаја , намера, и мотивације.
Масовна
комуникација,
Интервјуисање

Може се рећи да је машина или систем, вештачки интелигентна ако има макар једну или
више интелигенција у себи.

Из чега се интелигенција састоји?

Интелигенција је нематеријална. Она се састоји од −

 Расуђивања
 Учења
 Решавања Проблема
 Перцепције
 Лингвистичке интелигенције

 Расуђивање − Ово представља скуп процеса који обезбеђује основе за логичко


мишљење, доношење одлуке, и предвиђање. Постоји два типа −

Индуктивно расуђивање Дедуктивно расуђивање


Почиње са општим тврђењем а затим
Спроводи специфичне опсервације да би се
испитује могућности да допре до
дошло до општег закључка
специфичног логичког закључка.
Иако су премисе, односно претпоставке Ако је неки појам тачан у класи ствари
тачне, индуктивно расуђивање омогућава да уопште посматрано, то је такође тачно за све
закључак буде нетачан. чланове те класе.
Пример − "Све жене изнад 60 година су
Пример − "Марија је учитељица. Све
баке. Јелена има 65 година. Произилази да
учитељице су студиозне. Значи, Марија је
је Јелена, такође бака."
студиозна."
Учење − Представља активност стицања знања или вештине кроз студирање, праксу,
учење, или стицање искуства. Учење побољшава свест субјеката студија.

Способност учења поседују људи, неке животиње, и може се категорисати као−

 Аудиторно учење − Учење засновано на слушању. Пример представља слушање


студената аудиторних записа.
 Епизодно учење − Учење на бази памћења секвенци догађаја којима је студент
присуствовао или имао искуства у њима. Ово је линеарно учење и наредбодавно.
 Моторичко учење − Учење засновано на прецизним покретима мишића.
Скупљање објеката, писање.
 Опсервационо учење − Учење засновано на посматрању и имитирању. Пример
може бити дете које имитира мимику родитеља.
 Перцептуелно учење − Учење засновано на стимулусу који је већ некада
доживљен. Пример би био идентификација и класификација објеката и ситуација.
 Учење расуђивања − Учење да се направи разлика између различитих стимулуса
заснованих на релационим својствима, пре него на апсолутним својствима.
Пример, додавање ‘мало мање’ соли, за време кувања кромпира прошли пут
довело је до пресољавања, додавањем рецимо кашике соли.
 Просторно учење − Учење кроз визуелни стимулус слике, боје, мапе, и слично.
Особа може у глави да креира мапу пута пре почетка путовања.
 Учење засновано на одзивним стимулусима − Учење које је тако конципирано да
се изведе одговарајуће понашање када је присутан одговарајући стимулус. Пример
пса који диже уши када чује звоно на вратима.
 Решавање Проблема − проблем при чему особа препознаје решење и покушава да
дође до жељеног решења почев од садашње ситуације узимајући неку путању, што
је проузроуковано познатим и непознатим препрекама.
 Решавање проблема укључује доношење одлука, што представља процес избора
најбоље изабраног алтернативног излаза да би се дошло до жељеног циља.
 Перцепција − представља процес стицања, интерпретације, избора, и
организовања сензорских информација.
 Перцепција подразумева укључивање осећања. Код људи перцепција зависи од
сензорских органа. У домену вештачке интелигенције, механизам перцепције
обухвата прикупљање података од сензора да би они имали сврсисходну намену.
 Лингвистичка интелигенција − је способност особе да користи, разуме, говори и
пише на вербалном и писаном језику. То је веома важно у међусобној
комуникацији.
РАЗЛИКА ИЗМЕЂУ ЉУДСКЕ И МАШИНСКЕ ИНТЕЛИГЕНЦИЈЕ

 Људи долазе до закључка коришћењем шаблона док машине то чине применом


скупа правила и података.
 Људи складиште информације и поново их позивају применом шаблона, машине
то чине тражењем алгоритама. Као пример може се узети меморисање броја
40404040 који је лако запамтити, ускладиштити и позвати из меморије а чији
шаблон је веома једноставан.
 Људи могу доћи до објекта ако један део недостаје или је оштећен, док машине то
не могу да ураде коректно.

Најшире распрострањена подела области вештачке интелигенције обухвата:


ГОВОР И РАСПОЗНАВАЊЕ ГЛАСА

Оба ова термина се често користе у роботици, експертским системима и процесирању


природног језика. Мада се ови термини користе за исти појам, њихови циљеви су
различити.

Препознавање говора Препознавање гласа


Циљ препознавања говора се заснива на
Циљ препознавања гласа се заснива на
разумевању и схватању онога о ЧЕМУ се
томе КО говори.
говори.
Користи се код рада на рачунару без
Користи се за идентификацију особе
коришћења руку, мапирања, или навигације
анализом звука, нивоа гласа, акцента.
код коришћења менија.
Машинама не треба обука за препознавање и Овај вид захтева обуку јер је заснован на
не зависи од спикера. препознавању гласа специфичне особе.
Системе за препознавање гласа са
Системе за препознавање гласа са независним
независним спикером је релативно лако
спикером је веома тешко пројектовати.
пројектовати.

СИСТЕМИ ЗА ПРЕПОЗНАВАЊЕ ГОВОРА И ГЛАСА

Корисников глас са микрофона као улаз иде на звучну карту система. Конвертор претвара
аналогни сигнал у еквивалентни дигитални сигнал за процесовање говора. За
препознавање речи користи се база података за упоређивање звучног шаблона. На крају
се повратна информација шаље бази података.

Текст изворног језика постаје постаје улаз за Преводилачку машину, која га претвара у
циљни текст језика. Они су подржани од стране интерактивног GUI, великих база језика, и
тд.
ПРИМЕНА У СВАКОДНЕВНОМ ЖИВОТУ

Постоји велика примена вештачке интелигенције у свакодневном животу што је


представљено доњом табелом

No. Истраживачка област Пример

Експертски системи
1.
Примери − Систем за праћење лета, Клинички системи.

Процесовање природног језика


2.
Примери: Google Now својство, препознавање говора,
Аутоматски излаз гласа.

Неуронске мреже
3. Примери − Системи за препознавање коришћењем
шаблона као што је препознавање лица, препознавање
карактера, препознавање рукописа.

Роботика
4. Примери − Индустријски робот који се креће, фарба,
распршује спреј, проверава прецизност, буши, чисти,
премазује, полира, и тд.
Фази Логички Системи
5.
Примери − Потрошачка електроника, аутомобили, и тд.

КЛАСИФИКАЦИЈА ЗАДАТАКА

Домен вештачке интелигенције се дели на област Формалних задатака, Уобичајених


задатака, и Експертских задатака.

Домен задатака у вештачкој интелигенцији


УОБИЧАЈЕНИ ЗАДАЦИ ФОРМАЛНИ ЗАДАЦИ ЕКСПЕРТСКИ СИСТЕМИ

 Математика  Инжењерство
Перцепција
 Геометрија  Проналажење
 Логика Грешке
 Компјутерски вид
 Интеграција и  Производња
 Говор, Глас
Диференијација  Праћење

Процесовање природног
Игре
језика
 Крени Научна анализа
 Разумевање
 Шах (Дубоко плаво)
 Стварање језика
 Провера
 Превод језика

Здрав разум Верификација Финансијска анализа

Размишљање Доказивање теореме Медицинска дијагноза

Планирање Креативност

Роботика

 Кретање

Људи уче обичне задатке од рођења. Они уче захваљујући перцепцији, говору,
коришћењем језика и путем кретања. Они уче Формалне Задатке и касније и Експертске
задатке, у том редоследу.

За људе је најлакше да науче уобичајене задатке. Исто то се подразумева да је тачно пре


покушаја за применом уобичајених задатака код машина. Раније је сав рад на бази
вештачке интелигенције био концентрисан на домену уобичајених задатака.

Касније је схваћено да машина захтева више знања, сложено представљање знања, као и
компликоване алгоритме за извођење уобичајених задатака. Сада је разумљиво да
област Вештачке Интелигенције много више просперира у експертском домену задатака.
Систем вештачке интелигенције је сачињен од агената и њихове околине. Агенти делују у
својој околини. Околина може да садржи друге агенте.

Шта су агент и околина?

Агент је средство преко којих се осећа околина и примају надражаји из ње преко сензора
а делује се на околину преко ефектора.

 Људски агент има сензорске органе као што су очи, уши, нос, језик и кожа
паралелно сензорима, и осталим органима као што су руке, ноге, уста, за ефекторе.
 Роботски агент замењује камере и инфрацрвену област за сензоре, и разноврсне
моторе и актуаторе за ефекторе.
 Софтверски агент има енкодоване стрингове битова као своје програме и акције.

Терминологија агента

 Мера извођења Агента − то је критеријум који одређује колико је агент успешан.


 Понашање Агента − Представља акцију коју агент изводи после било које дате
секвенце перцепције.
 Перцепција − Агентова перцепција улаза при задатој инстанци.
 Секвенца перцепције − Историја свих агената до данашњег дана.
 Функција Агента − Представља мапу од секвенце перцепције до акције.

Рационалност

Рационалност представља статус реалности, осећајности, и поседовања доброг осећаја за


правду.
Шта је идеални Рационални Агент?

Идеални рационални агент је онај који је способан да изведе очекиване акције да би


максимизовао меру извођења, на основу −

 секвенце перцепције
 уграђене базе знања

Рационалност агента зависи од ова четири фактора −

 Мера извођења, што одређује степен успешности.


 Перцепције и секвенце извођења.
 Претходног знања.
 Акције које може да изврши.

Рационални агент увек изводи ваљане акције, где права акција значи акцију која узрокује
да агент буде најуспешнији у датој секвенци. Проблем који агент решава је карактерисан
Мером Извођења, Околином, Актуаторима, и Сензорима (PEAS).

Структура Интелигентних Агената

Структура агената се може приказати као −

 Агент = Архитектура + Програм Агента


 Архитектура = Машинерија на коју агент делује.
 Програм агента = примена функције агентa.

Једноставне реакције агената

 Бирају се акције засноване на тренутној перцепцији.


 Оне су рационалне само ако се учини коректна одлука која је заснована на основу
текуће перцепције.
 Окружење је комплетно осмотриво.

Услов-Правило акције − То је правило које мапира стање (услов) и акцију.


Модел заснован на рефлексу агента

Користи се модел света да би се изабрала акција. Одржава се унутрашње стање.

Модел − Знање о томе “како се ствари дешавају у свету”.

Унутрашње стање − Ово представља представу непосматраних аспеката текућег стања


које зависи од историје опажања надражаја.

Ажурирање стања захтева информације о томе −

 Како се свет постепено развија.


 Како ће акција агента да утиче на свет.
Агенти базирани на циљевима

Они бирају акције да би постигли циљеве. Овај приступ је флексибилнији него агент
реакције јер је знање које помаже доношењу одлуке експлицитно моделовано, и на тај
начин дозвољава измене.

Циљ − Опис жељених ситуација.


Агенти засновани на коришћењу

Они бирају акције у зависности од степена корисности за свако стање. Циљеви су


неадекватни ако −

 су циљеви супростављени, и само мали број се може достићи.


 Неизвесно је достићи циљ и треба одвагати вероватноћу постизања циља насупрот
важности циља.

Природа окружења

Неки програми раде у потпуно вештачком окружењу и затворени су за улаз са тастатуре,


базу података, компјутерски систем датотека, и приказ карактера на екрану.

Насупрот томе неки софтверски агенти (софтверски роботи или softbots) постоје у
богатим, неограниченим softbots доменима. Симулатор има веома детаљну сложену
околину. Софтверски агент треба да изврши избор од дугачког низа акција у реалном
времену. Softbot је тако сачињен да скенира online жељени избор купаца и приказује
интересантне ставке купцу, што ради како у реалном тако и у вештачком окружењу.

Најпознатије вештачко окружење је Turing Тест окружење, при чему се један реални и
остали вештачи агенти тестирају на једнаким основама. Ово је веома изазовно окружење
јер је веома тешко за софтверски агент да прикаже исто тако добро понашање као човек.
Turing Тест

Успешност интелигентног понашања система се мери Turing Тестом.

Две особе и машина учествују у тесту евалуације. Један од две особе игра улогу тестера.
Сваки од њих седи у различитим собама. Тестер није свестан ко је машина а ко је човек.
Он поставља питања на тај начин што их куца а затим шаље и човеку у интелигентној
машини. Циљ теста се састоји у томе да превари тестера, и то ако он не препозна од кога
је добио одговор тада се може рећи да је машина интелигентна.

Својства околине

Околина има следећа својства −

 Дискретна / Континуална − Ако постоји ограничен број различитих, јасно


дефинисаних, стања околине, околина се сматра дискретном (На пример, шах); у
супротном је континуална (На пример, вожња).
 Осмотривост / Делимична осмотривост − Ако је могуће одредити комплетно
стање околине из опажања, у свакој временској тачки онда се ради о осмотривом
процесу; насупрот томе је само парцијално осмотриво.
 Статичка / Динамичка − Ако се околина не мења за време деловања агента тада је
она статична, насупрот томе је динамична.
 Појединачни агент / Вишеструки агенти − Околина може садржати остале агенте
који могу бити исте или различите врсте од датог агента.
 Могући приступ / Без приступа − Ако сензорски апарати агента имају приступ
комплетном стању околине, тада околина има приступ агенту.
 Детерминистички / Недетерминистички − Ако је следеће стање околине
комплетно одређено текућим стањем и акцијама агента, онда је околина
детерминистичка, а насупрот томе је недетерминистичка.
 Епизодско / Не-епизодско − У такозваном епизодском окружењу, свака епизода се
састоји од опажања од стране агента а затим деловања. Квалитет акције зависи
управо од саме епизоде. Наредне епизоде не зависе од акције у претходним
епизодама. Епизодско окружење је много једноставније, зато што агент не треба
да размишља унапред.
Претраживање је универзална техника решавања проблема у Вештачкој Интелигенцији.
Постоје игре са појединачним играчима као што је игра плочице, судоку, укрштене речи и
алгоритми претраге помажу да се нађе одговарајућа позиција у таквим играма.

Проблеми проналажења путање код појединачних агената

Игре као што су 3X3 осам плочица, 4X4 петнаест плочица, и 5X5 двадесет четири плочице
су проблеми проналажења путање појединачног агента. Они се састоје од матрица
плочица са празном плочицом. Играчу је потребно да распореди плочице на тај начин што
их клиза или вертикално или хоризонтално у празан простор са циљем да се изврши неки
задатак.

Други проблеми проналажења путање појединачног агента су Проблем путовања


продавца, Рубикова коцка, и теорема доказа.

Терминологија претраге

 Проблем простора − То је окружење у ком се претрага одвија. (Скуп стања и скуп


оператра за промену стања)
 Проблем инстанце − То је почетно стање + стање у коме се налази циљ.
 Проблем просторног графика − То представља проблем стања. Стања су приказана
чворовима а оператори су приказани ивицама.
 Дубина проблема − Дужина најкраће путање или најкраће секвенце оператора од
почетног стања до стања циља.
 Сложеност простора − Максималан број чворова који је сачуван у меморији.
 Сложеност времена − Максималан број чворова који је креиран.
 Прихватљивост − Својство алгоритма да увек нађе оптимално решење.
 Фактор гранања − Просечан број чворова деце у проблему просторног графика.
 Дубина − Дужина најкраће путање од почетног стања до циљног стања.

Brute-Force Стратегија претраге

Веома су једноставни, и не треба им никакво специфично знање о домену, већ добро


раде и са малим бројем могућих стања.

Захтеви −

 Опис стања
 Скуп валидних оператора
 Почетно стање
 Опис циљног стања
Претрага у ширину

Почиње од кореног чвора, претражујући прво суседне чворове а затим се креће према
следећем нивоу суседа. Ствара се једно дрво у времену, све док се не пронађе решење.
Може се користити FIFO редна структура података. Овај метод обезбеђује најкраћу путању
до решења.

Ако је фактор ширине (просечан број чворова деце) = b и дубина = d, онда је број чворова
на нивоу d = bd.

Укупан број чворова у најгорем случају је b + b2 + b3 + … + bd.

Мана − Пошто се сваки ниво чворова памти приликом креирања следећег чвора, он
захтева доста меморије. Просторни захтеви за чување чворова су експоненцијални.

Сложеност зависи од броја чворова. Могу се проверавати дупли чворови.

Претрага у дубину

Примењује се у рекурзији са LIFO структуром података. Креира се исти скуп чворова као у
случају претраге у ширину али се обавља у другачијем реду.

Како су чворови у појединачној путањи сачувани у свакој итерацији од кореног до листа


чвора, просторни захтеви за чување чворова су линеарни. Ако се означи фактор ширења
са b а дубина са m, складиштени простор је bm.

Мана − Овај алгоритам се можда не прекине и траје бесконачно на једној путањи.


Решење је да се одабере опција одсецања. Ако се идеално одсецање означи са d, и ако је
одсецање мање од d, онда овај алгоритам може да пропадне. Ако је одсецање веће од d,
онда се време извршења повећава.

Сложеност зависи од броја путања. Не могу се чекирати дупли чворови.


Двосмерно претраживање

Претрага иде напред од почетног стања и уназад од циља све док се не идентификује
заједничко стање.

Путања од почетног стања се укршта са инверзном путањом од циљног стања. Свака


претрага се изводи само до половине тоталне путање.

Јединствена претрага трошкова

Сортирање се огледа у повећању цене путање ка чвору. Увек се проширује цена


последњег чвора. Идентично је претрази у ширину, ако свака транзиција има исту цену.

Истражују се путање по реду раста цене.

Недостатак − Могу бити вишеструке дугачке путање са ценом ≤ C*. Јединствена претрага
мора да их истражи све.

Претрага у дубину итеративним продубљивањем

Изводи се претрага у дубину до нивоа 1, затим почиње поново, извршава комплетну


претрагу у дубину до нивоа 2, и наставља на исти начин до проналаска решења.

Никада се не креира чвор све док се не створе доњи чворови. Само се чувају скупине
чворова. Алгоритам се завршава када се пронађе решење на дубини d. Број чворова
креираних на дубини d је bd а на дубини d-1 је bd-1.
Поређење сложености појединих алгоритама

Алгоритам извођења заснован на различитим критеријумима −

Интерактивна
Јединствена
Критеријум Прво ширина Прво дубина Обострано претрага по
цена
дубини

Време bd bm bd/2 bd bd

Простор bd bm bd/2 bd bd

Оптималност Да Не Да Да Да

Комплетирањее Да Не Да Да Да

Информисана (Хеуристичка) Стратегија претраге

Да би се решили велики проблеми са великим бројем могућих стања, знање специфичних


проблема је неопходно да би се повећала ефикасност алгоритама претраге.

Хеуристички алгоритми оцењивања

Они извршавају цену оптималне путање између два стања. Хеуристичка функција за игре
клизања плочица се израчунава пребројавањем броја кретања које направи свака
плочица од циљног стања, и додавањем броја кретања за све плочице.
Чисто хеуристичко претраживање

Овом приликом се проширују чворови у складу са хеуристичким вредностима. Креирају се


две листе, затворена листа са већ проширеним чворовима и отворена листа са креираним
али не проширеним чворовима.

Приликом сваке итерације, проширује се чвор са минималном хеуристичком вредности,


креирају се чворови деца и смештају у затворену листу. Затим се примењује хеуристичка
функција на дете чворове. Краће путање се чувају а дуже одбацују.

A * Претрага

Ово је напознатија форма такозване најбољег првог претраживања. Овом приликом се


избегава ширење путања које су већ скупе, већ се прво врши ширење путања које највише
обећавају у смислу оптималности и цене.

f(n) = g(n) + h(n), где је

 g(n) цена (до сада) да би се достигао чвор


 h(n) оцењена цена коштања од чвора до жељеног циља
 f(n) укупна цена путање кроз n чворова до достизања жељеног циља. Примењује се
коришћење приоритетног реда повећавањем f(n).

Најбоља такозвана Гладна претрага

Проширује се чвор за који се оцењује да је најближи циљу. Проширују се чворови који су


засновани на релацији f(n) = h(n). Примењује се коришћење приоритетних редова.

Недостатак − Може доћи до заглављивања у петљама. Ова метода није оптимална.

Локални алгоритми претраге

Код ових алгоритама се полази од потенцијалног решења а затим се прелази на суседно


решење. Приказује се валидно решење иако се прекида пре него што дође до краја.

Такозвана претрага пењања по брду

То је итеративни алгоритам који почиње од произвољног решења проблема а затим се


покушава да се нађе боље решење променом повећавајући појединачни елемент
решења. Уколико промена даје боље решење, промена повећања се узима као ново
решење. Овај процес се понавља све до момента када нема даљих побољшања.

такозвана функција пењања по брду (проблем), приказује стање које представља локални
минимум.
улаз: проблем
локалне променљиве: текућа, суседни чвор, чвор
current <-Make_Node(Initial-State[problem])
loop
do neighbor <- a highest_valued successor of current
if Value[neighbor] ≤ Value[current] then
return State[current]
current <- neighbor

end

Недостатак − Овај алгоритам нити је комплетан нити је оптималан.

Локална претрага у ширину

У овом алгоритму задржава се k број стања у сваком тренутку. У почетном тренутку ова
стања се стварају произвољно. Успешност ових k стања се израчунава уз помоћ циљне
функције. Ако је било која од ових успешних стања максимана вредност функције циља,
тада се алгоритам зауставља.

У супротном (почетна k стања и k број наследника стања = 2 k) стања су смештена у ред.


Редови се разврставају бројчано. Највећа k стања су изабрана из нових иницијалних
стања. Овај процес се наставља док се не постигне максимална вредност функције
BeamSearch( problem, k), даје стање решења.

start with k randomly generated states


loop
generate all successors of all k states
if any of the states = solution, then return the state
else select the k best successors
end

Симулација каљења

Каљење је процес загревања и хлађења метала, да би он променио своју унутрашњу


структуру потребно је да промени своје физичке особине. Када се метал хлади, његова
нова метална конструкција задржава ново добијена својства. Поставља се да почетна
температура буде висока, а затим наступа хлађење према алгоритму. Када је температура
висока допушта се да се према алгоритму прихвате најлошија решења са високом
фреквенцијом.

Почетак

 Иницијализација k = 0; L = цео број променљивих;


 Од i → j, претражује се разлика својстава Δ.
 Ако је Δ <= 0 онда се прихвата else if exp(-Δ/T(k)) > random(0,1) then прихвати;
 Понављају се кораци 1 и 2 за L(k) корака.
 k = k + 1;

Понављају се кораци од 1 до 4 све док се не задовољи критеријум.

Крај

Проблем путујећег трговца

У овом алгоритму, циљ је пронаћи ниску цену путање путујућег трговца који креће од
почетног града 1, посећује све градове на зацртаном плану само једном и враћа се у град
одакле је кренуо.

Почетак
Одредити свих (n -1)! могућих решења, где је n укупан број градова.
Одредити минималну цену коштања сваког од (n -1)! решења.
На крају задржати оно решење са минималном ценом коштања.
крај
ПРОЦЕСОВАЊЕ ПРИРОДНОГ ЈЕЗИКА

Процесовање природног језика (NLP) се односи на метод комуникације са интелигентним


системима коришћењем природног језика, као што је на пример Енглески.

Процесовање природног језика се захтева када jе потребно успоставити комуникацију са


интелигентним системом као што је робот, и када се жели да се чује одлука заснована на
дијалогу, као што је то у случају клиничког експертског система и слично.

Поље NLP укључује коришћење компјутера који треба да обави корисне задатке
коришћењем природних језика које користе људи. Улаз и излаз система NLP може бити

 Говор
 Писани текст

Компоненте NLP

Постоје две компоненте NLP-а што је дато са −

Разумевање природног језика (NLU)

Разумевање укључује следеће задатке −

 Мапирање датог улаза у природном језику у корисну намену.


 Анализирање различитог аспекта језика.

Генерисање природних језика (NLG)

То је процес стварања логичких фраза и реченица у форми природних језика за


унутрашње коришћење.

Овај процес укључује −

 Планирање текста − укључује приказивање релевантног контекста из базе знања.


 Планирање реченица − укључује избор захтеваних речи, формирање логичких
фраза, постављање тона у реченици.
 Реализација текста− Представља план мапирања реченице у структуру реченице.

NLU је теже успоставити него NLG.

Тешкоће приликом креирања NLU

Природни језик је веома богате форме и структуре.


Процес је осетљив у виду двоструког значења речи. Постоји неколико нивоа
двозначности−

 Лексичка двозначност − Веома примитиван ниво као што је ниво речи.


 На пример класификовање речи “board”, да ли је класификовати као именицу или
глагол?
 Двозначност синтаксног нивоа − Реченица се може схватити на различите начине.
 На пример, “Он је подигао бубу са црвеном капом.” − Поставља се питање, да ли је
он користио капу да подигне бубу или је подигао бубу која има црвену капу?
 Референцијална двозначност − Позивајући се на нешто уз помоћ заменице. На
пример, Јована је отишла код Мирјане. Она је рекла, “Ја сам уморна.” − Ко је
заправо уморан, Јована или Мирјана?
 Један улаз може имати различито значење.
 Пуно улаза може имати исто значење.

Терминологија која се користи

 Фонологија − Студија систематичног организовања звука.


 Морфологија − Студија грађења речи од примитивних јединица.
 Морфема − Одређивање значења примитивне јединице у језику.
 Синтакса − Односи се на комбиновање речи да би настала реченица. Такође
укључује одређивање структурне улоге речи у реченици или фрази.
 Семантика − Односи се на значење речи и како их комбиновати у логичке фразе и
реченице.
 Прагматика − Бави се разумевањем реченица у различитим систуацијама и
испитује се како то утиче на разумевање реченице.
 Дискурс − Бави се начином на који реченица која непосредно предходи следећој,
утиче на разумевање следеће реченице.
 Познавање света − Укључује опште знање о свету.

Кораци код NLP

Постоји општих пет корака −

 Лексичка анализа − Укључује идентификацију и анализу структуре речи. Језички


лексикон представља колекцију речи и фраза у језику. Лексичка анализа се заснива
на дељењу текста на пасусе, реченице и речи.
 Синтаксна анализа (Парсирање) − Укључује анализу речи у реченици са
граматичког аспекта и распоређивању речи на начин који показује релацију међу
речима.
 Семантичка анализа − Приказује се тачно значење текста или његово значење из
речника. Текст се проверава са аспекта логичког значења. То се обавља
мапирањем синтактичке структуре и објеката у домену задатака. Семантичка
анализа одбацује реченице као што су “топли сладолед”.
 Дебатна интеграција − Значење било које реченице зависи од значења реченице
пре ње. Исто тако доноси значење следеће успешно реализоване реченице.
 Прагматична анализа − За време ове анализе се врши реинтерпретација актуелног
значења. Она укључује извођење ових аспеката језика који захтевају реално
познавање језика.

Имплементацијски аспекти синтактичке анализе

Постоји велики број алгоритама које су истраживачи развили за синтаксну анализу, али се
разматрају следеће једноставне методе −
 Граматика слободног контекста
 Парсирање горе- доле

Граматика слободног контекста

То је граматика која садржи правила са појединачним симболом на левој страни која


индукују стварање нових писаних правила. Креирајмо граматику за парсирање следеће
реченице − Птица кљуца зрно (“The bird pecks the grains”).

Члан (Одређивање) − a | an | the

Именица − bird | birds | grain | grains

Именична фраза (NP) − Члан + Именица | Члан + Придев + Именица

= DET N | DET ADJ N

Глаголи − pecks | pecking | pecked

Глаголска фраза (VP) − NP V | V NP

Придеви (ADJ) − beautiful | small | chirping

Парсирано стабло разбија реченицу у структуиране делове тако да компјутер може лако
да их разуме и процесира. Да би се спровео алгоритам парсирања и конструисало дрво
парсирања, потребно је поново написати правила, која описују која структура дрвета је
валидна.

Ова правила налажу да се поједини симболи у стаблу морају раширити. У складу са првим
логичким правилом, ако постоје два стринга Именичка фраза (NP) и Вербална Фраза (VP),
онда стринг комбинован са именичком фразом (NP), праћен вербалном фразом (VP) чини
реченицу. Поново написана правила за реченицу су следећа −

S → NP VP

NP → DET N | DET ADJ N

VP → V NP

Lexocon −

DET → a | the

ADJ → beautiful | perching


N → bird | birds | grain | grains

V → peck | pecks | pecking

Стабло парсирања −

Сада се могу поново преформулисати правила. Пошто V може да се замени са, "peck" или
"pecks", реченице као што су "The bird peck the grains" са погрешним облицима глагола су
такође дозвољене.

Предности − Најједноставнији граматички стил.

Мане

 Непрецизност. На пример, “The grains peck the bird”, је синтетички коректно у


складу са парсером, али значење нема смисла, а парсер га узима као тачну
реченицу.
 Да би се унела висока прецизност, морају се припремити вишеструки граматички
скупови. Може се захтевати потпуно различит скуп правила, за парсирање једне
или више варијација, пасивних реченица, итд., што може да води до креације
великог скупа правила којима се не може управљати.

Парсирање горе-доле

Овде парсер почиње са S симболом а затим покушава да се преформулише у секвенцу


терминалних симбола који одговарају класама речи у улазној реченици све док се он
попуно не састоји од терминалних симбола.

Затим се проверава са улазном реченицом да би се проверила подударност. Ако нема


подударности, процес се понавља са другим скупом правила. Ово се понавља све док се
не пронађе специфично правило које описује структуру реченице.

Предности − Једноставна примена.

Мане

 Неефикасан, пошто се процес претраге понавља све док се не појави грешка.


 Спора брзина рада.
Роботика је домен вештачке интелигенције која се бави креирањем интелигентних и
ефикасних робота.

Шта су роботи?

Роботи су вештачки агенти који делују у реалном окружењу.

ЦИЉЕВИ

Роботи имају за циљ манипулацију објеката коришћењем опажања, хватања, кретања,


изменом физичких својстава објекта, некада и уништавањем истог, или ослобађањем
људи од обављања радњи које се понављају при чему се они не могу уморити или им
може постати досадно.

Шта је Роботика

Роботика је грана Вештачке Интелигенције, која се састоји из Електротехнике, Машинства


и Науке о компјутерима, и која се користити у дизајну, конструкцији и примени
функционисања робота.

Аспекти роботике

 Роботи имају форму механичке конструкције, или облик да би извршили


одговарајући задатак.
 Они поседују електричне компоненте које покрећу и контролишу машине.
 Садрже неки ниво компјутерског програма који одређује шта, када и како ће робот
нешто обавити.

Разлике између роботског система и осталих програма Вештачке Интелигенције

Овде је дат приказ разлике између њих −

Програми Вештачке Интелигенције Роботи

Они оперишу у окружењу које је компјутерски


Они оперишу у физичком окружењу
симулирано.

Улазни подаци се уносе у систем Вештачке Улаз у роботе је у аналогни сигнал у


Интелигенције преко симбола и правила. таласној форми или преко слика.

Њима је потребан општи компјутерски систем да Потребан је специјални хардвер са


би радили. сензорима и ефекторима.
Кретање робота

Кретање робота је механизам помоћу кога се робот помера у свом окружењу. Постоји
неколико типова кретања −

 Коришћењем ногу
 Коришћењем точкова
 Комбинацијом ногу и точкова
 Коришћењем клизања/ прескакања

Кретање коришћењем ногу

 Овај тип кретања троши више снаге за време кретања, скакања, прескакања,
пењања или спуштања, као и коришћења других видова кретања.
 Захтева се већи број мотора да би се извршило кретање. Веома је погодно за твд
као и раван терен при чему нерегуларна или сувише равна површина узрокује да
се троши више снаге за кретање коришћењем точкова. Веома тешко је извршити
конструкционо извођење да би се задовољили захтеви стабилности.
 Јавља се у комбинацији једне, две, четири или шест ногу. Неопходно за кретање
робота је да има више ногу од ножне координације.

Укупан број могућих врста кретања (догађаји, секвенце периодичног подизања и


спуштања ногу у зависности од укупног броја ногу) робота се дефинише у зависности од
броја својих ногу.

Ако робот има k ногу, тада је број могућих догађаја N = (2k-1)!.

У случају робота са две ноге (k=2), број могућих догађаја је N = (2k-1)! = (2*2-1)! = 3! = 6.

Стога постоји шест различитих могућих догађаја −

 Подизање леве ноге


 Спуштање леве ноге
 Подизање десне ноге
 Спуштање десне ноге
 Подизање обе ноге истовремено
 Спуштање обе ноге истовремено

У случају када је k=6 ногу, постоји 39916800 могућих случајева. Стога се може рећи да је
сложеност робота повезана са бројем ногу.
Кретање уз помоћ точкића

Потребан је мањи број точкова да би се извршило кретање. Ефикасније је од кретања уз


помоћ ногу.

 Стандардни точак − Ротира око осе точка и око контакта.


 Castor точак − Ротира око осе точка и врши офсет управљачког зглоба.
 Шведски 45o и Шведски 90o точкови − Омни точак који прима и шаље сигнале у
свим правцима, ротира око контактне тачке, око осе точка, и око ваљака.
 Лоптасти или сферични точак − Прима и шаље сигнале у свим правцима, tехнички
је веома тешко применљив.

Кретање коришћењем клизања или прескакања

Роботом се управља померањем трака различитим брзинама у истом или у супротном


смеру. Омогућена је стабилност због велике контактне површине траке и подлоге.
Компоненте робота

Роботи су конструисани са следећим компонентама −

 Напајање − Роботи се напајају батеријом, соларном енергијом, или хидрауличним


и пнеуматским изворима.
 Актуатори − Органи који претварају енергију у кретање.
 Електрични мотори (AC/DC) − Неопходни за ротационо кретање.
 Пнеуматски ваздушни мишићи − Они се скупљају до скоро 40% када се ваздух
извуче из њих.
 Мишићне жице − Оне се скупљају 5% приликом проласка електричне струје кроз
њих.
 Пизо и ултрасонични мотори − Најбољи за индустријске роботе.
 Сензори − Они обезбеђују познавање информација из реалног живота и из
одговарајућег окружења. Роботи су опремљени визуелним сензорима који могу да
израчунају дубину окружења. Тактилни сензор имитира улогу рецептора за додир
који се налазе у људским прстима.

Компјутерски вид

Обухвата технологију Вештачке Интелигенције која омогућава роботу да види.


Компјутерски вид игра важну улогу у доменима безбедности, сигурности, здравља,
приступа и забаве.

Захваљујући компјутерском виду робот аутоматски врши издвајање, анализу корисних


информација из појединачне слике или читавог низа слика. Овај процес укључује развој
алгоритама да би се извршило аутоматско визуелно разумевање слика.
Хардвер Компјутерског Визуелног Система

Овај систем укључује −

 Напајање
 Уређај за аквизицију података, што је најчешће камера
 Процесор
 Софтвер
 Уређај за приказ праћења система
 Помоћне уређаје као што су камера, каблови и конектори.

Задаци компјутерског вида

 OCR − У компјутерском домену, програм Оптички Читач Података, (Optical Character


Reader), врши претварање скенираних докумената у текст који се може мењати, и
који има улогу скенера.
 Препознавање лица − Многе камере имају ову особину, која омогућава читање
лица и приказивање слика са изразом, као и омогућавају да корисник врши
упоређивање тих израза као и црта лица.
 Препознавање објекта (Object Recognition) − Инсталиране камере у
супермаркетима, у скупоценим аутомобилима као што су BMW, GM, и Volvo.
 Процењивање положаја − Процењивани положај објекта у зависности од положаја
камере као код локације тумора у човечијем телу.

Области примене компјутерског вида

 Пољопривреда
 Независна возила
 Биометрика
 Препознавање карактера
 Форензика, сигурност, и обезбеђивање
 Индустријска провера квалитета
 Препознавање лица
 Анализа гестова
 Наука о настанку земље
 Слике које се користе у медицинске сврхе
 Праћење загађења
 Контрола процеса
 Примање надражаја на даљину
 Роботика
 Транспорт
Примена Роботике

Роботика се примењује у разним областима као што је −

 Индустрија − Роботи се користе за обраду метала, сечење, заваривање, фарбање,


бушење, полирање и друго.
 Војска − Самостални роботи могу да се користе у недоступним и изузетно опасним
зонама за време рата. Робот под именом Daksh кога је развила Организација за
истраживање и развој одбране (DRDO), је способан да уништи безбедно објекте
који су опасни за живот.
 Медицина − Роботи су у стању да изведу истовремено на стотине клиничких
тестова, да врше рехабилитацију трајно хедникепираних људи, као и да изводе
сложене операције као што је на пример уклањање тумора мозга.
 Истраживања − За свемирска истраживања се користи робот који може да се вере
по стенама, затим дронови за подводна истраживања, и слично.
 Забава − Инжењери из студија Волт Дизнија су креирали на стотине робота у циљу
прављења филмова.
Шта су Вештачке неуронске мреже (ANNs)?

Проналазач првог неурокомпјутера, Dr. Robert Hecht-Nielsen, дефинише неуронске мреже


као −

"...компјутерски систем састављен од простих, високо повезаних процесних елемената,


који процесују информације, на основу одзива њиховог динамичког стања на спољашње
улазне величине.”

Основна структура ANNs

Идеја ANNs је заснована на раду човечијег мозга успостављањем ваљаних веза, и тај рад
се може имитирати коришћењем силикона и жица који играју улогу живих неурона и
дендрита.

Човечији мозак је састављен од 86 милијарди нервних ћелија који се називају неурони.


Они су повезани са других хиљаду ћелија који се називају Аксони. Дендрити примају
надражаје из спољашње околине или улаза из сензорских органа. Ови улази креирају
електричне импулсе, који брзо путују кроз неуронску мрежу. Неурон може да пошаље
поруку другом неурону да изврши задатак, или га не шаље даље.
ANNs су састављени од чворова, који имитирају биолошке неуроне човечијег мозга.
Неурони су повезани везама и они међусобно делују један са другим. Чворови примају
улазни податак и изводе једноставне операције над тим податком. Разултат ових
операција се преноси на остале неуроне. Излазна величина на сваком чвору се назива
његова активација или чворна вредност.

Свакој вези је придружена одговарајућа тежина. ANNs могу да уче, што се постиже
мењањем тежинских вредности. Следећа илустрација приказује једноставну ANN −
Типови Вештачких Неуронцких Мрежа

Постоје две топологије Вештачке Неуронске Мреже − Проток података у једном смеру и
Повратна спрега.

Вештачке неуронске мреже са протоком података у једном смеру

Проток података је у једном смеру. Јединица шаље информацију другој јединици, кроз
коју не прима било коју информацију. Не постоји повратна спрега. Користи се код
стварања шаблона, препознавању, класификацији. Имају фиксне улазе и излазе.
Вештачке неуронске мреже са повратном спрегом

Овде су дозвољене повратне спреге. Оне се користе код коришћења адресибилних


меморија.
Рад Вештачких Неуронских Мрежа

У горе приказаном дијаграму, свака стрелица представља везу између два неурона и
приказује путању за проток информације. Свака конекција има тежину, цео број који
контролише сигнал између два неурона.

Ако мрежа ствара “добар или жељени” излаз, нема потребе за подешавањем тежине. Са
друге стране ако мрежа ствара “слаб или нежељени” излаз или грешку, онда систем мења
тежину да би се побољшали каснији резултати.

Машинско учење у ANNs

ANNs су способне да уче и потребно их је обучавати. Постоји неколико стратегија учења −

 Учење путем супервајзора − Овај приступ укључује наставника који добро познаје
материју и Вештачку Неуронску Мрежу. На пример наставник шаље податке ANN за
које већ зна одговоре.
На пример препознавање шаблона. ANN приликом препознавања даје своју
претпоставку. Затим наставник даје ANN одговоре. Затим мрежа упоређује
претпостављени одговор са наставниковим тачним одговором и затим врши
подешавања у складу са грешкама.

 Учење без супервајзора − Оно се захтева када нема примера скупа података са
познатим одговорима. На пример потрага за скривеним шаблонима. У овом
случају, У овом случају груписање, односно подела скупа елемената у групе у
складу са непознатим шаблонима се изводи на текућем постојећем скупу података.
 Учење засновано на посматрању − ANN доноси одлуку посматрањем околине. Ако
је посматрање негативно, мрежа подешава тежину, да би могла да се сачини
следећег пута различиту захтевану одлуку.

Алгоритам ширења уназад

Ово је алгоритам учења или обуке. Учење се врши примером. Ако се алгоритму достави
пример шта мрежа треба да уради, то мења тежину мреже, тако да то може произвести
жељени излаз за одређени улаз приликом завршетка обуке.

Алгоритам ширења уназад су иделни за просто Препознавање Шаблона и Мапирање


Задатака.

Bayesian Мреже (BN)

Ова графичка структура се користи за представљање релације вероватноће међу скупом


произвољних променљивих. Bayesian мреже се називају још Мреже Поверења или Bayes
Мреже.

У овим мрежама, сваки чвор представља произвољну променљиву са специфичним


претпоставкама. На пример, у медицинском дијагностичком домену, чвор Рак представља
претпоставку да пацијент има рак.

Ивице које додирују чворове представљају вероватне зависности између случајних


променљивих. Јачина везе између променљивих се квантификује вероватноћом која је
повезана са сваким чвором.

Постоји само једно ограничење код овог типа мреже, при чему се не може доћи до чвора
директним праћењем стрелице. Стога се BNs зове Директни Ациклични График (DAGs).

BNs су способне да управљају променљивама са више вредности истовремено. BN


променљиве су састављене из две димензије −

 Област претпоставки
 Вероватноћа додељена сваком предлогу.
Размотримо коначни скуп X = {X1, X2, …,Xn} дискретних произвољних променљивих, где
свака променљива Xi може узимати вредности из коначног скупа, означеног са Val(Xi). Ако
постоји директна веза од променљиве Xi до променљиве Xj, онда ће променљива Xi бити
родитељ променљиве Xj приказујући директне зависности између променљивих.

Структура BN је идеална за комбиновање претходног знања са посматраним подацима.


BN се може користити за учење последичних веза и разумевање разноврсних проблема
домена као и код предвиђања будућих догађаја, чак и у случају недостајућих догађаја.

Грађење Bayesian Мреже

Инжењер експерт може да гради Bayesian мрежу. Постоји број корака који треба
инжењер експерт да испуни да би иградио овакву мрежу.

Пример проблема − Рак плућа. Пацијент пати од недостатка ваздуха. Он посећује


доктора, сумњајући да има рак плућа. Доктор зна да поред рака плућа, постоје друге
могуће болести са сличним симптомима, као што су туберкулоза и бронхитис.

Добијање релевантних информација

 Да ли је пацијент пушач? Ако јесте постоји велика вероватноћа за добијање рака


плућа или бронхитис.
 Да ли је пацијент био изложен загађеном ваздуху? Ако јесте, која врста загађења је
у питању?
 Ако је X-зрачење позитивно то може да покаже да се ради о TB или раку плућа.

Идентификација интересних информација

Експерт треба да одговори на питања −

 Које чворове представити?


 Које вредности узети? У ком стању треба да буду?

За сада треба размотрити чворове са само дискретним вредностима. Променљива мора


узети само једну од тих вредности у времену.

Уобичајени типови дискретних чворова су −

 Boolean чворови − Они представљају претпоставке, узимајући бинарне вредности


TRUE (T) и FALSE (F).
 Вредности реда − Чвор Загађење (Pollution) би могао да представља и узима
вредности {low, medium, high} описујући степен изложености пацијента загађењу.
 Интегралне вредности − Чвор назван Старост (Age) би могао да представља старост
пацијента са могућим вредностима од 1 to 120. Чак и у раној фази, направљени су
избори моделовања.

Могући чворови за случај рака плућа −

Име чвора Тип Вредност Креација чвора

Загађење Бинарни {LOW, HIGH, MEDIUM}

Пушач Boolean {TRUE, FALSE}

Рак плућа Boolean {TRUE, FALSE }

X-Зрачење Бинарни {Positive, Negative}

Креирање стрелица између чворова

Топологија мреже треба да прикаже квантитативне везе између променљивих.


На пример, шта узрокује да пацијент добије рак плућа? - Загађење или пушење. Затим
треба додати стрелица од чвора Загађење (Pollution) и чвора Пушач (Smoker) ка чвору Рак
плућа.

Исто тако ако пацијент има рак плућа, онда ће резултат X-зрачења бити позитиван. Тада
треба додати стрелицу од чвора Рак Плућа (Lung-Cancer) ка чвору X-Зраци (X-Ray).

Спецификација топологије

Уобичајено су стрелице усмерене од врха ка дну. Скуп родитељских чворова чвора X је дат
са Родитељ(X).

Чвор Рак Плућа има два узрока: Загађење и Пушач, при чему је чвор Пушач потомак чвора
X-Зрак. Слично томе, X-Зрак је дете (последица или ефекат) чвора Рак Плућа али
наследник чворова Пушач и Загађење.

Условне претпоставке

Сада би требало квантификовати релације између повезаних чворова: то се одређује


специфицирањем условне вероватнооће дистрибуције за сваки чвор. Пошто се овом
приликом једино користе дискретне променљиве, оне узимају форму Условне
Вероватносне Табеле (Conditional Probability Table (CPT)).
За сваки чвор требало би пронаћи све могуће комбинације вреднсоти за ове родитељске
чворове. Свака комбинација се назива матичном комбинациојом родитељског скупа. За
сваку различиту матичну комбинацију родитељских вредности чвора, потребно је
одредити вероватноћу коју ће имати дете чвор.

На пример за Рак Плућа чвор родитељски чворови су Загађење (Pollution) и Пушење


(Smoking). Они имају могуће вредности = { (H,T), ( H,F), (L,T), (L,F)}. CPT одређује
вероватноћу добијања рака за сваки од ових случајева <0.05, 0.02, 0.03, 0.001>
респективно.

Сваки чвор има вероватноћу појављивања приказану у следећој табели −

Примена неуронских мрежа

Изводе се захтеви који су лаки за извођење у случају човека али су тешки за машину−

 Аеропростор − Аутопилот у авиону, проналажење грешака у авиону.


 Аутоматика − Аутоматско вођење система.
 Војска − Оријентација и вођење оружја, праћење циља, дискриминација објекта,
препознавање лица, идентификација сигнала/слике.
 Електроника − Предвиђање секвенци кода, IC приказивање чипа, анализа отказа
чипа, машински вид, синтеза гласа.
 Финансије − Процена некретнина, кредитни саветник, снимање и анализа
хипотеке, корпоративни рејтинг обвезница, портофилио трговања програма,
корпоративна финансијска анализа, прогноза валутне вредности, читачи
документа, евалуатори кредитне апликације.
 Индустрија − процесна контрола производње, дизајн производа и анализа,
инспекција система са становишта квалитета, анализа квалитета заваривања,
предвиђање квалитета папира, анализа хемијских производа, динамичко
моделовање хемијских процесних система, анализа одржавања машина,
планирање и управљање пројектима.
 Медицина − Анализа ћелија рака, EEG и ECG анализа, дизајн протеза,
трансплатација, оптимизатор.
 Говор − Препознавање говора, класификација говора, конверзија текста у говор.
 Телекомуникације − Компресија слике и података, аутоматизовани информациони
сервиси, превођење у реалном времену.
 Транспорт − Дијагноза система кочења код камиона, одређивање распореда
возила, одређивање рута система.
 Софтвер − Шаблони препознавања код препознавања лица, препознавање
оптичких карактера и тако даље.
 Претпостављање временске серије − Вештачке неуронске мреже се користе за
постављање претпоставки на берзама или код природних катастрофа.
 Процесовање Сигнала − Вештачке Неуронске мреже треба да се обуче да
процесирају звучни сигнал и одговарајуће га филтеришу.
 Управљање − Вештачке Неуронске мреже се често користе за доношење одлуке
код управљања физичким возилима.
 Проналажење аномалија − Вештачке Неуронске мреже су експерти у
препознавању шаблона, могу се обучити да стварају излаз aко се нешто необично
догоди што не одговара шаблону.
Фази логички системи (FLS) производе прихватљив али коначан одзив на нетачан,
некомплетан фази улаз који може имати дупле вредности.

Шта је фази логика?

Фази логика (FL) је метод који подсећа на човечије размишљање. Приступ FL имитира
начин доношења одлуке код људи и укључује све могуће случајеве између дигиталних
вредности Да(YES) или Не(NO).

Уобичајени логички блок који компјутер може да разуме узима прецизни улаз и
производи одређени излаз као што је Тачно(TRUE) или Нетачно(FALSE), што је
еквивалентно људском одговору Да(YES) или Не(NO).

Проналазач фази логике, Lotfi Zadeh, је приметио да за разлику од компјутера, људско


доношење одлуке укључује област могућности између Да(YES) или Не(NO), као што је дато
следећом табелом.

СИГУРНО ДА

МОГУЋЕ ДА

НЕ МОЖЕ СЕ РЕЋИ

ВЕРОВАТНО НЕ

СИГУРНО НЕ

Фази логика ради са нивоима могућих улаза да би се достигла вредност коначног излаза.

Примена

 Може се применити код система различитих величина и могућности почев од


малог микроконтролера, све до велике умрежене радне станице на којој се
заснивају системи управљања.
 Може се применити у хардверу, софтверу или њиховој комбинацији.

Шта је Фази Логика?

Фази логика је корисна за комерцијалне и логичке примене.

 Може управљати машинама и потрошним добрима.


 Не мора дати тачно, него прихватљиво логичко објашњење.
 Фази логика помаже када се појављују нејасна стања у инжењерству.

Архитектура Фази логичких система

Постоје четири основна дела која су приказана као −

 Фузификациони Модул − Трансформише улазе система, који су чисти бројеви, у


фази скупове. Дели улазне сигнале у пет нивоа (корака) као што су−

LP x је у великој мери позитивно

MP x је средње позитивно

S x је мало

MN x је средње негативно

LN x је у великој мери негативно

 База знања − Садржи IF-THEN правила која су сачинили експерти.


 Механизам закључивања − Симулира процес људског резоновања стварањем
фази закључивања на улазима и IF-THEN правилима.
 Модел дефузификације − Трансформише фази скуп добијен механизмом
закључивања у бројну вредност.

Функције чланства (membership functions) су засноване на фази скуповима променљивих.


Функција припадања (Membership Function)

Функција припадања омогућава квантификовање лингвистичких чланова и графичког


представљања фази скупа. Функција припадања за скуп A на скупу могућих вредности X је
дефинисана као μA:X → [0,1].

На тај начин сваки елемент X се мапира у вредност између 0 и 1. То се назива вредност


припадања или степен припадања. Он квантификује степен припадања елемента у X до
фази скупа A.

 x оса представља скуп могућих вредности.


 y оса представља степен припадања на [0, 1] интервалу.

Може постојати више функција припадања које се могу применити за фузификацију


нумеричке вредности. Једноставне функције припадања као употреба сложених функција
не дају већу прецизност на излазу.

Све функције припадања за LP, MP, S, MN, и LN су приказане на доњој слици −

Најчешћи облик функције припадања је троугласт, међу различитим осталим


функционалним облицима као што су трапезоидни, синглтон и Гаусов.

На тај начин, улазна вредност до фузификатора варира од -10 волти до +10 волти. На тај
начин се мења одговарајући излаз.
ПРИМЕР ФАЗИ ЛОГИЧКОГ СИСТЕМА

Размотримо клима уређај са 5-нивоа фази логичког система. Систем подешава


температуру клима уређаја упоређујући температуру собе и циљну температурску
вредност.

Алгоритам

 Дефинисати лингвистичке променљиве и термине.


 Креирати функцију припадања за њих.
 Креирати од правила базу знања.
 Претворити улазне податке у фази скупове података коришћењем функције
припадности. (фузификација)
 Оценити правила у бази правила. (Механизам закључивања)
 Комбиновати резултате из сваког правила. (Механизам закључивања)
 Претворити излазне податке у нефузи вредности (дефузификација)

Логички развој

Корак 1: Дефинисати лингвистичке променљиве и термине

Лингвистичке променљиве су улазне и излазне променљиве у облику простих речи и


реченица. За температуру собе термини као што су, хладно, топло, вруће, итд., су
лингвистички термини.

Температура (t) = {веома хладно, хладно, топло, вруће, веома вруће}

Сваки члан овог скупа је лингвистички термин, и може да покрије неки део укупних
температурских вредности.

Корак 2: Креирати за њих функцију припадања

Функције поверења температурске променљиве су приказане доњом сликом −

Корак 3: Контруисати базу знања са правилима

Креирати матрицу вредности собне температуре према вредностима циљне температуре,


коју треба да обезбеди клима уређај.
RoomTemp.
Very_Cold Cold Warm Hot Very_Hot
/Target

Very_Cold No_Change Heat Heat Heat Heat

Cold Cool No_Change Heat Heat Heat

Warm Cool Cool No_Change Heat Heat

Hot Cool Cool Cool No_Change Heat

Very_Hot Cool Cool Cool Cool No_Change

СобнаТемп.
Веома хладно Хладно Топло Вруће Веома вруће
/Циљна

Креирати скуп правила у бази знања у облику IF-THEN-ELSE структура.

Ред. Број. Услов Акција

1 IF temperature=(Cold OR Very_Cold) AND target=Warm THEN Heat

2 IF temperature=(Hot OR Very_Hot) AND target=Warm THEN Cool

3 IF (temperature=Warm) AND (target=Warm) THEN No_Change

Корак 4: Добијање фази вредности

Фази скуп операција изводи оцењивање правила. Операције коришћене за OR и AND су


респективно Max и Min. Комбиновати све резултате да би се формирао финални резултат.
Овај резултат је фази вредност.

Корак 5: Извођење дефузификације

Дефузификација се онда изводи у складу са функцијом припадности за излазну


променљиву.
Области примене фази логике

Кључне области примене вештачке интелигенције су дате са−

Аутоматски системи

 Аутоматски мењачи
 Управљачки механизам за четири точка
 Возило за контролу средине

Потрошачки електронски апарати

 Hi-Fi Системи
 Фотокопир апарати
 Фиксне и видео камере
 Телевизије

Апарати за домаћинство

 Микроталасне пећи
 Фрижидери
 Тостери
 Усисивачи
 Машине за прање веша

Контрола окружења

 Клима уређаји/Сушачи/Грејачи
 Аеросоли

Предности FLS

 Математички концепт унутар фази размишљања је веома једноставан.


 Могуће је изменити FLS додавањем и брисањем правила у складу са
флексибилношћу фази логике.
 Фази логички системи могу користити непрецизну, изобличену или деформисану
улазну информацију.
 FLS је веома лако конструисати и разумети.
 Фази логика представља решење за сложене проблеме у свим аспектима живота,
укључујући и медицину што подсећа на размишљање и доношење одлуке.

Мане FLSs

 Не постоји системски приступ креирању фази система.


 Они су разумљиви само када су правила јасна и једноставна.
 Веома су погодни за проблеме који не захтевају високу тачност.
Шта су то Експертски Системи?

Експертски системи су компјутерске апликације које су развијене да би решиле сложене


проблеме у одређеном домену, на нивоу екстра развијене људске интелигенције и
експертизе.

Карактеристике Експертских Система

 Високи квалитет извођења


 Разумљивост
 Поузданост
 Брзи одзиви

Могућност експертских система

Експертски системи имају могућност −

 Давања савета
 Давање инструкција и асистирање при људском доношењу одлуке
 Демонстрације
 Извођење решења
 Дијагностиковање
 Објашњавање
 Интерпретација улаза
 Предвиђање резултата
 Доношење закључака
 Предлагање алтернативних опција

Ови системи нису у могућности −

 Да замене људе који доносе одлуке


 Да поседују људске способности
 Производе тачан излаз за неадекватну базу знања
 Да подешавају сопствену базу знања

Компоненте Експертског Система

Компоненте Експертског Система укључују

 Базу Знања
 Механизам закључивања
 Кориснички интерфејс
БАЗА ЗНАЊА

Садржи доменски специфично знање високог квалитета. Знање је неопходно за деловање


интелигенције. Успех било ког експертског система зависи од високо тачног и прецизног
знања.

Шта је знање?

Податак представља колекцију чињеница. Информација је организована као податак и


чињеница о домену задатка. Податак, информација, и претходно искуство комбиновани
заједно чине знање.

Компоненте базе знања

База знања Експертског Система садржи чињенично, хеуристичко или и једно и друго
знање.

 Чињенично Знање − представља широко прихваћену информацију прихваћену од


стране Инжењера који поседују Знање, или научника у домену задатка.
 Хеуристичко Знање − Односи се на праксу, прецизно резоновање, способност
оцене као и претпоставке.
Представљање Знања

То је метод који се користи да би се организовало и формализовало знање у бази знања.


Овај метод је у форми правила IF-THEN-ELSE.

Стицање Знања

Успех сваког експертског система у највећој мери зависи од квалитета, комплетности, и


тачности информација које се налазе у бази знања.

База знања се формира уношењем информација од стране стручњака, научника,


експерата и Инжењера који поседују практично знање.

Инжењери који поседују Знање сакупљају информације од експерта снимањем,


интервјуисањем, посматрањем како се обавља посао и на друге начине. Затим се врши
категоризација и организација информација на логички начин, у облику IF-THEN-ELSE
правила, која ће користити механизам закључивања. Инжењер знања исто тако прати и
развија Експертски Систем.

Механизам Закључивања

Механизам Закључивања користи ефикасне процедуре и правила да би се добило


коректно и тачно решење.

У случају Експертских Система који се базирају на знању, механизам закључивања стиче и


манипулише знањем из базе знања да би се дошло до одговарајућег решења.

Када се говори о случају Експертских Система који су засновани на правилима−

 Примењују се правила непрекидно на чињенице, која се добијају из раније


примењених правила.
 Додаје се ново знање у базу знања ако је то потребно.
 Разрешава се конфликт са правилима, када се примењују вишеструка правила на
одговарајући случај.

За препоручивање решења, Систем закључивања користи следећу стратегију−

 Ланчано везивање унапред


 Ланчано везивање уназад

Ланчано везивање унапред

Стратегија експертског система се састоји у томе да одговори на питање, “Шта може да се


деси следеће?”
На овај начин, Систем Закључивања наставља ланац услова и извода и доноси коначно
решење. Разматрају се све чињенице и правила, а затим се врши њихово сортирање пре
доношења решења.

Ова стратегија се наставља радом на закључцима, резултатима или ефектима. На пример,


предвиђање статуса подељеног тржишта има за циљ промену интересних рата.

Ланчано везивање уназад

Са овом стратегијом, експертски систем проналази решење на питање, “Зашто се то


догодило?”

На основу онога што се већ десило, Систем Закључивања покушава да пронађе који
услови су се могли десити у прошлости да би дошло до ових резултата. Ова стратегија се
је праћена проналажењем узрока или разлога. На пример дијагноза код рака крви код
људи.
Кориснички интерфејс

Кориснички интерфејс обезбеђује међусобну везу између корисника Експертског Система,


и самог Експертског Система. Корисник Експертског Система не мора бити експерт из
области Вештачке Интелигенције.

Он приказује како се Експертски Систем реализује за одговарајућу препоруку.


Објашњење се може појавити у следећем облику −

 Природни језик приказан на екрану.


 Вербална нарација у природном језику.
 Листинг бројева и правила који су приказани на екрану.

Кориснички интерфејс чини лаким праћење кредибилитета закључака.

Захтеви ефикасног Експертског Система

 треба да помогну корисницима да изврше циљ у најкраћем могућем року.


 треба да је креиран да ради за текућу корисникову или жељену радну праксу.
 технологија треба да буде прилагођена корисниковим захтевима, а не обнуто.
 треба да ефикасно користе корисников улаз.

Ограничења Експертских Система

Ниједна технологија не може да понуди лако и комплетно решење. Велики системи су


скупи, захтевају значајно време за развој, као и компјутерске изворе. Експертски Системи
имају ограничења која обухватају−

 Технолошка ограничења
 Тешкоће у стицању знања
 Експертски Системи се тешко одржавају
 Висока цена развоја

Примена Експертских Система

Следећа табела приказује где се Експертски Системи могу применити.

Примена Опис

Домен дизајна Дизајн сочива камере, дизајн аутомобила.

Системи дијагностике да би се закључио узрок болести из


Медицински домен
посматраних података, приликом операција над пацијентима.
Непрекидно поређење података са системом посматрања или
Посматрање система прописаним понашањем система као што је посматрање
цурења нафте из дугих цеви у којима се она налази.

Процесни управљачки Контролисање физичког процеса који је заснован на


системи посматрању.

Домен знања Проналажење грешака у возилима, компјутерима.

Проналажење могуће преваре, сумњиве трансакције, трговина


Финансије/Трговина обвезницама на берзи, распоред авионских летова, распоред
преноса тешког пртљага.

Технологија експертских система

Постоји неколико нивоа технологије Експертских Система. Експертски системи укључују−

 Развојно окружење Експертских Система − Развојно окружење Експертских


Система укључује хардвер и алате:
o Радне станице, миникомпјутери, сервери.
o Висок ниво Симболичних Програмских Језика као што је LISt Programming
(LISP) и PROgrammation en LOGique (PROLOG).
o Велике базе података.
 Алати − Они смањују цену и тежину развоја експертских система у великој мери.
o Моћни едитори и алати за дебаговање са вишеструко отвореним
прозорима.
o Обезбеђују веома брзо креиране прототипове
o Имају уграђене дефиниције модела, представљање знања, и дизајн на
основу кога се доноси одлука.
 Шкољка − Шкољка не представља ништа друго него експертски систем без базе
знања. Шкољка обезбеђује девелоперима стицање знања, систем закључивања,
кориснички интерфејс, и помоћна средства за објашњавање. На пример −
o Java Expert System Shell (JESS) који обезбеђује комплетно развијен Java API за
креирање експертског система.
o Vidwan, шкољка развијена од стране, Националног Центра за Софтверску
Технологију ( National Centre for Software Technology), у Мумбају 1993.
Омогућава приказ знања у енкодованој форми у виду IF-THEN правила.
Развој Експертских Система: Општи Кораци

Процес развоја Експертских Система је итеративан. Кораци у развоју Експертских Система


укључују −

Идентификација проблема домена

 Проблем мора бити погодан за експертске системе да би га решили.


 Пронаћи експерте у домену задатака за пројекат Експертског Система.
 Успоставити систем који је ефикасан у погледу цене.

Развој Система

 Идентификација Експертског Система


 Знати и успоставити степен интеграције са осталим системима и базама података.
 Реализовати како концепти могу најбоље да представе знање о домену.

Развој Прототипа

Из базе знања: Инжењер који поседује знање ради да би

 Стекао знање о домену од експерта.


 Представља га у облику правила If-THEN-ELSE.

Тестирање и фино подешавање прототипа

 Инжењер знања користи просте случајеве да би извршио тестирање прототипа за


било које неправилности у извођењу.
 Крајњи корисници тестирају прототипове Експертских Система.

Развој и Завршна фаза креирања Експертских Система

 Тестирати и омогућити интеракцију Експертског Система са свим елементима


околине, укључујући крајње кориснике, базу знања и остале информационе
системе.
 Документовати правилно Експертски Систем.
 Обучити корисника да користи Експертски Систем.

Одржавање Експертског Система

 Одржавати базу знања ажурирану и редовно је прегледати.


 Побринути се за нове информационе системе, и оне који укључују дате системе.
Предности Експертских Система

 Доступност − Доступни су захваљујући масовној производњи софтвера.


 Мања производна цена − Производна цена је реална и то чини Експертски Систем
доступним.
 Брзина − Обезбеђују велику брзину.
 Мања стопа грешке − Стопа грешке је мања у поређењу са људским грешкама.
 Смањивање ризика − Могу обављати задатке у околини која је опасна за људе.
 Стални одзив− Стални рад без показивања емоција, замора, и осталих негативних
пропратних ефеката при раду.

You might also like