Umelá inteligencia 1 Hľadanie riešenia - PowerPoint PPT Presentation

umel inteligencia 1 h adanie rie enia n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Umelá inteligencia 1 Hľadanie riešenia PowerPoint Presentation
Download Presentation
Umelá inteligencia 1 Hľadanie riešenia

play fullscreen
1 / 21
Umelá inteligencia 1 Hľadanie riešenia
111 Views
Download Presentation
caden
Download Presentation

Umelá inteligencia 1 Hľadanie riešenia

- - - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript

  1. Umelá inteligencia 1Hľadanie riešenia Doc. Ing. Kristína Machová, PhD.

  2. Riešenie problémovOsnova: Algoritmy hľadania riešenia Strom hľadania Stratégie hľadania Vlastnosti heuristík Neinformované – slepé hľadanie Prehľadávanie do šírky Stratégia rovnomernej ceny Prehľadávanie do hĺbky Obojsmerné hľadanie

  3. Hľadanie riešeniaAlgoritmy hľadania riešenia Hľadanie riešenia je prístup, pri ktorom nevychádzame z algoritmu riešenia problému. Problém nie je algoritmicky riešiteľný. Riešime meta – problém, ako riešenie hľadať. Algoritmy hľadania riešenia sú výpočtovo zložité (exponenciálne): Slabé metódy sú všeobecné algoritmy so slabou znalosťou problémovej oblasti. Rozvitie stavu. Hľadáme v stavovom priestore. Organizácia hľadania: V každom kroku sa aplikuje jeden operátor a stav sa rozvinie čiastočne. V jednom kroku sa aplikuje každý aplikovateľný operátor a stav sa rozvinie úplne. Dostaneme viac nových stavov. Stratégia hľadania určí výber nasledujúceho stavu. Strom hľadania

  4. Hľadanie riešeniaStrom hľadania Proces hľadania riešenia prebieha v stavovom priestore. Hľadaním vytvárame strom hľadania, ktorý je časťou stavového priestoru. Koreň stromu je uzol reprezentujúci začiatočný stav. Listy stromu – stavy, ktoré nemajú nasledovníky (resp. zatiaľ narozvité). STAVOVÝ PRIESTOR STROM HĽADANIA

  5. Hľadanie riešeniaStrom hľadania Stavový priestor a strom hľadania sa rôznia: Stavový priestor je daný implicitne. Strom hľadania sa získava dodatočne prehľadávaním stavového priestoru. Priestor stavov je často konečný. Strom hľadania je často nekonečný (operátor generuje predchodcu – šedý list v obrázku). Potrebujeme vhodnú reprezentáciu uzlov v strome hľadania. Tá by mala obsahovať: Zodpovedajúci stav zo stavového priestoru Rodičovský uzol Operátor, ktorý sa aplikoval pri generovaní uzla Hĺbka uzla – počet uzlov na ceste z koreňa Cena cesty

  6. Hľadanie riešeniaStrom hľadania Stav a uzol sa rôznia: Stav je konfigurácia opisujúca svet. Uzol je údajová štruktúra. Uzly majú hĺbku a rodičov. Stavy nemajú. Dva rôzne uzly môžu reprezentovať ten istý stav (dve rôzne postupnosti akcií). Front je množina uzlov, ktoré reprezentujú stavy vzniknuté rozvitím aktuálneho stavu - množina uzlov, ktoré vznikli po expanzii aktuálneho uzla. Strom hľadania vyjadruje spôsob hľadania riešenia pomocou daného algoritmu, teda jeho stratégiu hľadania. Efektívnosť tejto stratégie je daná kritériami efektívnosti algoritmu (úplnosť, optimálnosť, časová zložitosť, pamäťová zložitosť).

  7. Hľadanie riešeniaStratégie hľadania Stratégií hľadania je mnoho. V princípe ich delíme na: Neinformované hľadanie – slepé hľadanie (nemáme žiadnu doplňujúcu informáciu o probléme). Informované hľadanie – heuristické hľadanie. Dodatočná informácia môže zvýšiť efektívnosť hľadania (znížiť časovú alebo pamäťovú zložitosť) za cenu nedodržania iných kritérií (úplnosti a optimálnosti). Heuristika je informácia, pomocou ktorej sa rozhodujeme medzi alternatívami konania. Vyberáme takú, ktorá asi pravdepodobne povedie rýchlo k cieľu.

  8. Riešenie problémovNiektoré vlastnosti heuristík Nemusí zaručovať optimálnosť. Vráti dobré aj keď nie vždy optimálne riešenie v čase lepšom ako exponenciálnom. Napríklad, heuristika najbližšieho suseda pri probléme obchodného cestujúceho) Nemusí zaručovať úplnosť. Môže sa prehliadnuť nejaké riešenie, aj výborne a dokonca aj optimálne. Heuristiky si môžu navzájom protirečiť. Sú spravidla založené na individuálnych skúsenostiach. Väčšinou sa vzťahujú na špecifický problém. Rôzne problémy vyžadujú rôzne stratégie – heuristiky a to dostatočne špecifické (nie - rob najprv ľahšie veci, čo je ľahšie?).

  9. Riešenie problémovNeinformované - slepé hľadanie Neinformované hľadanie, teda slepé prehľadávanie stavového priestoru sa používa iba pri najjednoduchších problémoch. Základné vlastnosti tejto stratégie: Musí viesť k prehľadávaniu, spôsobovať pohyb (príklad: prelievanie vody, použi vždy prvé pravidlo, zo stavu (0,0) vedie k opakovaniu aplikácie 3. a 1. pravidla). Musí byť systematická. Nevynechá žiadny uzol a žiadny nevyberie dvakrát (náhodný výber, väčšie množstvo prečerpanej vody). Základné stratégie neinformovaného hľadania: Prehľadávanie do šírky Prehľadávanie do hĺbky Obojsmerné hľadanie

  10. Riešenie problémovNeinformované - slepé hľadanie

  11. Riešenie problémovNeinformované – slepé hľadanie

  12. Riešenie problémovPrehľadávanie do šírky V strome hľadania sa expandujú najprv všetky uzly v hĺbke d a až potom všetky uzly v hĺbke d+1. Táto stratégia je: Systematická Úplná Optimálna (prípustná) Výpočtová zložitosť je exponenciálna (pamäť aj čas) v závislosti od hĺbky hľadania O(bd) (najmenej zložité problémy, pre veľké stavové priestory úloha kombinatoricky exploduje). Pri prehľadávaní sa expanduje najviac: 1+b+b2+…+bduzlov. Kde b je faktor vetvenia, teda každý uzol sa rozvinie (expanduje) do b uzlov.

  13. Riešenie problémovPrehľadávanie do šírky

  14. Riešenie problémovStratégia rovnomernej ceny Modifikáciou prehľadávania do šírky je takzvaná stratégia rovnomernej ceny teda “uniform – cost search“: Na expanziu sa vyberie vždy uzol, ktorý je na najlacnejšej ceste (nie uzol na najplytšej úrovni). Najlacnejšia cesta je cesta s najmenšou cenou cestyg(u) do uzla u. Stratégia rovnomernej ceny je zovšeobecnením stratégie prehľadávania do šírky. Pretože stratégia hľadania do šírky je stratégiou rovnomernej ceny, ak g(u) =HĹBKA(u).

  15. Riešenie problémovStratégia rovnomernej ceny

  16. Riešenie problémovPrehľadávanie do hĺbky V strome hľadania sa najprv expanduje uzol, ktorého hĺbka je najväčšia. Keď sa narazí na uzol bez nasledovníkov, dôjde k navracaniu (back tracking), teda hľadanie sa vráti k expanzii uzlov na plytších úrovniach. Táto stratégia: Nie je úplná, nezaručuje nájdenie riešenia (pri problémoch s príliš hlbokými stromami riešenia sa hľadanie môže zamotať). Nie je optimálna (hľadanie sa nemusí orientovať smerom k optimálnemu riešeniu). Časová zložitosť je exponenciálna v závislosti od hĺbky hľadania O(bd). Avšak, v praxi je prehľadávanie do hĺbky často rýchlejšie ako do šírky a to hlavne pri problémoch, ktoré majú veľa riešení. Pamäťová zložitosť je lineárna -b*d: Ak je riešenie v liste, pamätáme si cestu do listu a súrodenecké uzly uzlov na ceste.

  17. Riešenie problémovPrehľadávanie do hĺbky

  18. Riešenie problémovPrehľadávanie do hĺbky Existuje stratégia, ktorá zamedzí, aby riešenie uviazlo hlboko v strome hľadania – ohraničené prehľadávanie do hĺbky. Táto stratégia: Stanoví hraničnú hĺbku, do ktorej sa bude hľadať (napr. 5, max. 5 krát sa expandujú uzly bez navracania). Je citlivá na vhodné stanovenie hĺbky hľadania (aby existovalo aspoň jedno riešenie do tejto hĺbky). Ďalšia stratégia je – cyklicky sa prehlbujúce riešenie: Pamäťová zložitosť je nízka (ako pri prehľadávaní do šírky). Je úplné a optimalizuje riešenie (ako prehľadávanie do šírky).

  19. Riešenie problémovObojsmerné hľadanie Táto stratégia sa môže použiť iba keď máme problém, ktorého riešením je cesta. Cieľový stav je známy. Potom je možné pristúpiť k paralelnému hľadaniu aj od cieľového stavu k počiatočnému. Musí byť splnená podmienka existencie inverzných operátorov. Stratégia obojsmerného hľadania: Od počiatočného stavu bude hľadanie postupovať vpred (operátory) smerom k cieľovému stavu – priame hľadanie. Od cieľového stavu bude hľadanie postupovať vzad (inverzné operátory) smerom k počiatočnému stavu – spätné hľadanie. Ak oba procesy vygenerujú ten istý stav, nájde sa cesta spájajúca počiatočný stav s cieľovým.

  20. Riešenie problémovObojsmerné hľadanie

  21. Riešenie problémovLiteratúra Pavol Návrat a kol.: Umelá inteligencia. STU v Bratislave, 2002, Bratislava, 393 strán, ISBN 80-227-1645-6. Stuart Russel, Peter Norvig: Artificial Intelligence. A Modern Approach. Prentice Hall, 2003, USA, 1081 ps., ISBN 0-13-080302-2. Zdeňek Zdráhal, Vladimír Mařík: Základní metody prohledávání stavového prostoru. Konferencia „Metody umělé inteligence a expertní systémy II.“ Praha, ČSVTS FEL ČVUT, 1986.