Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Umelá inteligencia 1 Riešenie problémov
Doc. Ing. Kristína Machová, PhD.
2
Riešenie problémov Osnova:
Agent riešiaci problém Vyjadrenie problému Algoritmus hľadania riešenia Reálne problémy Hračkové problémy Charakteristiky problému Riešenie problémov rozkladom
3
Riešenie problémov Agent riešiaci problém
Ako navrhnúť rozumného agenta, ktorý bude schopný riešiť problémy rozličnými technikami hľadania riešenia. Znalosť cieľa činí konanie agenta rozumným. Bez znalosti cieľa agenty nedokážu plánovať svoje konanie. Rozumný agent je agent, ktorý dokáže plánovať svoje konanie. Základné pojmy: Stav určuje to, aké bolo prostredie predtým, aké je teraz a aké bude. Stavový priestor je množina všetkých možných stavov prostredia. Problém máme, keď sa aktuálny stav sveta (počiatočný) líši od ktoréhokoľvek z cieľových stavov a nie je známe, ktorá postupnosť akcií povedie k dosiahnutiu cieľa. Nasleduje proces riešenia problémov.
4
Riešenie problémov Vyjadrenie problému
Na vyjadrenie problému potrebujeme poznať: začiatočný stav – v ňom sa agent nachádza množinu operátorov – opisujú aký stav vznikne vykonaním akcie v danom stave stavový priestor – množina všetkých stavov dosiahnuteľných zo začiatočného stavu ľubovoľnou postupnosťou akcií cieľový test – test, či sa dosiahol cieľ. Cieľový test predstavuje hodnotenie nejakého stavu alebo hodnotenie cesty v stavovom priestore. cenu cesty – je súčet cien jednotlivých akcií na ceste. Ak existuje viacero riešení daného problému, pomocou ceny cesty nájdeme riešenie, ktoré pozostáva z menšieho počtu alebo lacnejších akcií.
5
Riešenie problémov Algoritmus hľadania riešenia
Na vstupe bude začiatočný stav, množina operátorov, stavový priestor, cieľový test a cena cesty. Na výstupe bude riešenie, teda cesta zo začiatočného stavu do niektorého z cieľových stavov. Existujú rôzne algoritmy hľadania riešenia – cesty v stavovom priestore, preto nás zaujíma efektívnosť algoritmu. Kritéria hodnotenia efektívnosti algoritmu: či algoritmus vôbec nájde riešenie – úplnosť či je cena cesty najnižšia možná – optimálnosť koľko výpočtových prostriedkov bolo potrebné vynaložiť – časová a pamäťová zložitosť cena riešenia = cena cesty k riešeniu + cena hľadania
6
Riešenie problémov Reálne problémy
Problém nájdenia cesty: častý problém naplánovania najvýhodnejšej cestovnej trasy z mesta A do mesta B. Formulácia problému: stavy – mestá, ktoré sa uvažujú pri hľadaní začiatočný stav – mesto A operátory – možné presuny z jedného mesta do druhého, ak existuje cesta na mape cieľový test – sme v meste B cena cesty – aplikácia operátora má cenu rovnú vzdialenosti medzi týmito cestami Problém obchodného cestujúceho: nájdenie cesty, ktorá má východisko i cieľ v danom meste takú, na ktorej ležia všetky mestá práve raz.
7
Riešenie problémov Reálne problémy
Problém obchodného cestujúceho: Dĺžka cesty nemá byť väčšia ako daná konštanta. Cieľový test musí sledovať aj vlastnosti cesty nie len cieľový stav. Počet ciest so zväčšujúcim sa počtom miest rastie kombinatoricky 0.5(n-1)! (10 miest , 11 miest ) Nová stratégia: skúmanie sa ukončí keď dĺžka práve skúmanej cesty prekročí celkovú dĺžku najkratšej doteraz nájdenej cesty. Je stále neprijateľne neefektívny. Iná stratégia: nájdenie vonkajšej cesty – jej úseky sa nekrižujú ani nevracajú. Nie nutne optimálne riešenie nájdené v prijateľnom čase. Ďalšia stratégia: choď do ďalšieho ešte nenavštíveného mesta (nie nutne optimálne riešenie). Je to klasický problém opísaný v teórii grafov ako nájdenie hamiltonovskej kružnice. Ďalšie problémy: navigovanie robota, navrhovanie VLSI obvodov,...
8
Riešenie problémov Hračkové problémy
Pri skúmaní metód UI potrebujeme jednoduché problémy, ktoré sa dajú jednoznačne opísať, teda hlavolamy, hry... Problém 8 – hlavolam (15 - hlavolam) stavy – všetky konfigurácie políčok na tabuli začiatočný stav – východisková konfigurácia na tabuli operátory – výmena prázdneho miesta s políčkom vpravo, vľavo, hore, dole cieľový test – konfigurácia s prázdnym políčkom uprostred cena cesty – každý krok má cenu 1, teda cena cesty je jej dĺžka
9
Riešenie problémov Hračkové problémy
Problém 8 dám Dámy sú rozmiestnené na šachovnici tak, aby sa neohrozovali začiatočný stav – nie je súčasťou zadania problému cieľový test – 8 neohrozujúcich sa dám na šachovnici cena cesty – 0 Existujú dve formulácie, líšiace sa v stavoch a operátoroch: Inkrementálna formulácia problému - postupné umiestňovanie ďalšej a ďalšej dámy na šachovnici. Formulácia problému s úplným stavom - hľadá sa taká zmena umiestnenia 8 dám, ktorá povedie k splneniu cieľového testu.
10
Riešenie problémov Hračkové problémy
Inkrementálna formulácia problému: stavy – všetky konfigurácie 0 až 8 dám na šachovnici operátory – položenie dámy na ľubovoľné políčko šachovnice Táto formulácia vedie na prehľadávanie obrovského priestoru stavou (648), aj takých, ktoré nevedú k riešeniu. Iná inkrementálna formulácia: stavy – všetky konfigurácie 0 až 8 dám na šachovnici také, že ani jedna z dám nie je ohrozená operátory – položenie dámy na ľubovoľné políčko v najľavejšom prázdnom stĺpci také, že ju na ňom neohrozuje žiadna iná dáma Niekedy sa dáma nedá nikam pridať. Je potrebné danú cestu opustiť a hľadať po inej ceste. Počet ciest je prijateľný (2057 ciest).
11
Riešenie problémov Hračkové problémy
Formulácia problému s úplným stavom: stavy – všetky konfigurácie 8 dám na šachovnici, každá v inom stĺpci operátory – posunutie ohrozenej dámy na iný riadok v tom istom stĺpci Budú vznikať aj konfigurácie, v ktorých dáma ostane ohrozená. Riešenie sa nájde, ale cena hľadania bude vyššia. Iná rozumnejšia formulácia: operátory – posunutie ohrozenej dámy na iný riadok v tom istom stĺpci tak, aby nebola ohrozená.
12
Riešenie problémov Hračkové problémy
Krypto - aritmetické hlavolamy: Problém: SEND Riešenie: +MORE –––––– ––––– MONEY Formulácia problému: stavy – všetky možné kombinácie číslic začiatočný stav – hlavolam, v ktorom sa vyskytujú iba písmená operátory – náhrada písmena za číslicu, ktorá sa v hlavolame ešte nevyskytuje cieľový test – hlavolam obsahuje iba číslice a je aritmeticky správny cena cesty – 0 (všetky riešenia sú rovnako dobré).
13
Riešenie problémov Charakteristiky problému
Riešením problému je stav. Príkladom je problém 8 dám. Cieľový stav explicitne nepoznáme. Cieľový stav je hľadaným riešením. Začiatočný stav nie je súčasťou zadania. Cena cesty nie je zaujímavá. Riešením problému je cesta. Príkladom je 8 hlavolam. Cieľový stav explicitne poznáme od začiatku. Riešením je cesta – postupnosť operátorov, ktorá transformuje počiatočný stav do cieľového. Problém je rozložiteľný na samostatne riešiteľné podproblémy. Ich vyriešenie (rekurziou) vytvorí riešenie pôvodného problému. Problém 8 dám nie je rozložiteľný na podproblémy (4 dámy + 4 dámy). Dajú sa kroky vykonané v procese riešenia problému ignorovať, alebo vrátiť. Pri dokazovaní matematickej vety odvodí niečo, čo nie je použiteľné. Môžeme to ignorovať. Avšak pri šachu nemožno vykonané ťahy vrátiť, odčiniť.
14
Riešenie problémov Charakteristiky problému
Existujú tri dôležité skupiny problémov: s ignorovateľnými krokmi riešenia: Tieto problémy možno riešiť jednoduchou stratégiou bez navracania (bactrack). s odčiniteľnými krokmi riešenia: Vyžadujú zložitejšie stratégie umožňujúce navracanie k predchádzajúcemu stavu na odčinenie nevhodného kroku. s neodčiniteľnými krokmi riešenia: Vyžadujú stratégie, ktoré urobia všetko možné, aby voľba ďalšieho kroku bola správna.
15
Riešenie problémov Riešenie problémov rozkladom
Namiesto priestoru stavov budeme uvažovať priestor rozkladov: Problém je logický súčin podproblémov. Najprv musíme vyriešiť podproblémy, aby sme vyriešili problém. Priestor rozkladov obsahuje AND uzly a OR uzly. Je reprezentovaný AND/OR grafom. OR hrany spájajú uzol s alternatívnymi riešeniami. AND hrany spájajú uzol s uzlami, ktoré spolu predstavujú riešenie. Riešenie nie je cesta ale podgraf v grafe priestoru rozkladov. Podgraf riešenia obsahuje počiatočný uzol spolu s každým uzlom, ktorý má nasledovníky spojené s ním hranou typu AND.
16
Riešenie problémov Podgraf riešenia
PP1 PP2 PP3 PP11 PP12 PP31 PP32 PP121 PP122
17
Riešenie problémov Podgraf riešenia
PP1 PP2 PP3 PP11 PP12 PP31 PP32 PP121 PP122
18
Riešenie problémov Riešenie problémov rozkladom
Podgraf riešenia hľadáme pomocou procesu značkovania uzlov nasledovným spôsobom: Každý koncový uzol predstavujúci elementárny problém sa označí za „vyriešený“. Každý nie koncový uzol, z ktorého vychádzajú OR hrany a aspoň jeden z nasledovníkov je označený za vyriešený – sa označí za „vyriešený“. Každý nie koncový uzol, z ktorého vychádzajú AND hrany a všetky jeho nasledovníky sú označené „vyriešený“ – sa označí za „vyriešený“. (Analogicky sa uzly značkujú ako „neriešiteľné“ tak, že sa úlohy hrán AND a OR vymenia.)
19
Riešenie problémov Problém Hanojskej veže
20
Riešenie problémov Literatúra
Pavol Návrat a kol.: Umelá inteligencia. STU v Bratislave, 2002, Bratislava, 393 strán, ISBN Stuart Russel, Peter Norvig: Artificial Intelligence. A Modern Approach. Prentice Hall, 2003, USA, 1081 ps., ISBN
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.