Inferenční metody 18.11.2014 7-1
Inferenční metody Rezoluční systémy Dopředné a zpětné řetězení Výběr dotazu Nemonotónní usuzování 7-2
a) Česká Literatura Dvořák J.: Expertní systémy. Skriptum VUT Brno, 2004. Lukasová A.: Formální logika v umělé inteligenci. Computer Press, Brno, 2003. Jiroušek R.: Metody reprezentace a zpracování znalostí v umělé inteligenci. VŠE, Praha, 1995. b) Anglická 7. Inferenční metody Geisler E.: Knowledge and Knowledge Systems. IGI Global Publ., 2007. Stefik M.: Introduction to Knowledge Systems. Morgan Kaufman Publ., 1995. 7-3
Inference Proces užívaný k vyvozování nových informací z informací známých. Metody inference Pravidla inference 7-4
Dedukce Metody inference Indukce Abdukce Heuristiky Analogie Nemonotónní usuzování Generování a testování metoda pokus omyl Defaultní inference Neznáme-li předpoklad, použijeme defaultní hodnotu. Intuice Zatím nebyla v ZS implementován, do jisté míry se jí může blížit usuzování v rámci neuronových sítí. 7-5
Dedukce Od předpokladů (premis) dochází k závěrům. P: Sókratés je člověk. P -> Q: Všichni lidé jsou smrtelní. Q: Sókratés je smrtelný. Odpovídá pravidlu modus ponens. 7-6
Indukce Vytváření obecných závěrů z dílčích poznatků. Vidíme tři hnědé medvědy. Indukcí usuzujeme: Všichni medvědi jsou hnědí. Úplná indukce: zohledníme všechny premisy (matematická indukce) Neúplná indukce: zohledněna jen část premis (anketa) 7-7
Abdukce Z pravdivých závěrů usuzování předpokladů. Pan Wágner jezdí autem. Každý, kdo má řidičský průkaz, jezdí autem. Pan Wágner má řidičský průkaz. Závěr ale nemusí být obecně správný! 7-8
Heuristika Pravidla selského rozumu Opíráme se o dobré mínění namísto exaktní logiky. Nezaručuje řešení hledání se bude ubírat správným směrem Volný řemen větráku způsobuje hluk. Heuristická znalost 7-9
Analogie Vytvoření modelu a jeho využití pro popis podobného objektu. TYGR LEV Potrava: Maso Počet nohou: 4 Zařazení: Šelma Barva: Oranžová s pruhy 7-10
Nemonotónní usuzování 1/2 Hlavní vlastností nemonotónního usuzování je skutečnost, že předcházející fakty mohou být revidovány na základě nových znalostí. Předcházející fakty mohou přestat platit, dozvíme-li se nové informace. 7-11
Nemonotónní usuzování 2/2 Vyjádření výjimky z pravidla: 1. Ptáci létají 2. Tweety je pták. Závěr: Tweety létá. 3. Tučňáci jsou ptáci. 4. Tučňáci nelétají. 5. Tweety je tučňák. Závěr: Tweety nelétá. 7-12
Modus ponens 7. Inferenční metody Pravidla inference Modus tollens [( ) ] Rezoluce Pro odvození hypotézy. Nerezoluce Pamatuje si, co je předpoklad a co závěr. 7-13
Modus ponens Modus ponens (přímé usuzování):, Jestliže platí předpoklad a pravidlo, pak platí závěr H. : Jestliže prší, je mokro : Prší. : Je mokro. 7-14
Modus tollens Modus tollens (zpětné usuzování):, Jestliže platí pravidlo a zároveň platí, pak platí také. : Jestliže prší, je mokro. : Není mokro. : Neprší. 7-15
Platí Dokázat, že 3 je pravda, platí 1; 1 2 ; 2 3: 1. 1; 3; 1 2; 2 3 2. 1 2; 2 3; 1; 3 t = 1: 2 = 2: 1 = 3 = Platí 3 důkaz sporem 7. Inferenční metody Rezoluce 7-16
Inference v pravidlových systémech Inference je založena na pravidlu modus ponens. Nepřímé (zpětné) usuzování dáno pravidlem modus tollens. Řešení problému = nalezení řady inferencí, které tvoří cestu od definice problému k jeho řešení. 7-17
Inferenční síť Inferenční síť je zpravidla reprezentována jako graf, jehož uzly jsou fakta a orientované hrany odpovídají pravidlům. Užitečné pro domény, kde je počet možných řešení limitován, např. klasifikační nebo diagnostické problémy. 7-18
Příklad inferenční sítě 7-19
Prohledávání do hloubky Výhody Zaručuje řešení (při konečném počtu stavů) Rychlé v případech, kdy je výhodné použít zpětné řetězení Zaostřené na cíl Interakce s uživatelem v logickém sledu Nevýhody Slepé Nevhodné pro rozsáhlý stavový prostor Nevhodné v případech, kdy je výhodné použít dopředné řetězení 7-20
Prohledávání do šířky Výhody Zaručuje řešení Rychlé v případech, kdy je výhodné použít dopředné řetězení Může najít minimální cestu Nevýhody Slepé Nevhodné pro rozsáhlý stavový prostor Nevhodné v případech, kdy je výhodné použít zpětné řetězení Špatná interakce s uživatelem 7-21
Výhody Není slepé Rychlé 7. Inferenční metody Heuristické prohledávání Nevýhody Nemusí nalézt řešení (přestože existuje) 7-22
Strategie procesu usuzování Usuzování řízené daty (dopředné řetězení) Známe data a podle nich rozhodujeme. Co si dám k večeři? Zeptá se jakou mám chuť a podle zásob doporučí recept. Usuzování řízené cíli (zpětné řetězení) Vybere možný závěr a pokouší se dokázat jeho platnost. Vhodné pro diagnostické problémy s malým počtem cílových hypotéz. Mám chuť na palačinky. ES na základě stavu zásob řekne, zda je to možné. 7-23
Základní myšlenka 7. Inferenční metody Dopředné řetězení 1. Porovnání položek z báze faktů s levými stranami pravidel z báze znalostí. 2. Přidání důsledků pravidel do báze faktů. Toto se cyklicky opakuje, dokud: nedojde k odvození cílového faktu nebo už nelze vykonat žádná pravidla 7-24
Mějme bázi znalostí a faktů: Báze znalostí obsahuje: 7. Inferenční metody Příklad 1/4 1. Jestliže (*křeček1, pohlaví, samička) & (*křeček2, pohlaví, sameček), pak (*křeček1, *křeček2, pár). 2. Jestliže (*křeček, věk, *číslo) & (*číslo > 2), pak (*křeček, plodnývěk, ano). 3. Jestliže (*křeček1, *křeček2, pár) & (*křeček1, plodnývěk, ano), pak (*křeček1, plodnost, ano). 4. Jestliže (*křeček, velkébřicho, ano) & (*křeček, plodnost, ano), pak (*křeček, gravidita, ano). 7-25
Báze faktů obsahuje: Žulina, pohlaví, samička Pascie, pohlaví, sameček Žulina, věk, 5 Žulina, velkébřicho, ano 7. Inferenční metody Příklad 2/4 1. Inferenční mechanismus zjistí, která pravidla lze použít: 1. Jestliže (*křeček1, pohlaví, samička) & (*křeček2, pohlaví, sameček), pak (*křeček1, *křeček2, pár). 2. Jestliže (*křeček, věk, *číslo) & (*číslo > 2), pak (*křeček, plodnývěk, ano). Konfliktní množina pravidel 2. Následuje řešení konfliktu. 7-26
Příklad 3/4 3. Mechanismus vybere např. pravidlo 2. Do báze faktů přibude: Žulina, plodnývěk, ano 4. Inferenční mechanismus opět zjistí, která pravidla lze použít: Opět pravidla 1 a 2. Pravidlo 2 již bylo použito použije se pravidlo 1 Do báze faktů přibude: Žulina, Pascie, pár 7-27
Příklad 4/4 5. Inferenční mechanismus znovu zjistí, která pravidla lze použít: Pravidla 1, 2 a 3. Pravidla 1 a 2 již byla použita, vybere se pravidlo 3. Do báze faktů přibude: Žulina, plodnost, ano 6. Inferenční mechanismus naposledy zjistí, která pravidla lze použít: Pravidla 1, 2, 3, 4 Pravidla 1, 2 a 3 již byla použita vybere se pravidlo 4. Do báze faktů přibude: Žulina, gravidita, ano 7. Byl odvozen cílový fakt odvozování končí. 7-28
Dopředné řetězení - algoritmus 1. Porovnání (matching) 7. Inferenční metody Pravidla ze znalostní databáze jsou porovnána se známými fakty; zjištění, u kterých pravidel jsou splněny předpoklady. 2. Řešení konfliktu (conflict resolution) Z množiny pravidel se splněnými předpoklady se vybere pravidlo podle priority; v případě shodné priority podle vhodně zvolené strategie. 3. Provedení (execution) Provedení pravidla, důsledkem může být přidání či odstranění faktu z báze faktů, přidání pravidla do báze znalostí apod. Obvykle podmínka: Pravidlo může být aktivováno pouze jednou se stejnou množinu faktů. 7-29
Strategie řešení konfliktu Prohledávání do hloubky (depth strategy) Preferují se pravidla používající aktuálnější (novější) data. Prohledávání do šířky (breath strategy) Preferují se pravidla používající starší data. Strategie složitosti (specifičnosti) (complexity strategy) Preferována jsou speciálnější pravidla (s více podmínkami). Strategie jednoduchosti (simplicity strategy) Preferována jsou jednodušší pravidla. 7-30
Výhody a nevýhody dopředného řetězení Výhody Z malého množství informací mnoho nových faktů. Výhodné pro sběr informací s následným vyhodnocením. Výhodné pro plánování. Nevýhody Nepozná důležitost vstupních informací (vyvozuje vše). Může klást otázky v nelogickém sledu. Nevýhodné při malém množství hypotéz, které je třeba zodpovědět a velkém množství vstupních dat. 7-31
Základní myšlenka: 7. Inferenční metody Zpětné řetězení 1. Výběr pravidla podle důsledkové části. 2. Zjištění, jestli je předpokladová část splněna. Z předpokladových částí se stávají podcíle, které mají být splněny. Nacházení podcílů namísto faktů. Proces končí až položkami, které do báze faktů zadal uživatel. 7-32
Příklad 1/2 Stejné údaje v bázi faktů a znalostí jako v minulém případě: Chceme potvrdit (nebo vyvrátit) tvrzení: Žulina, gravidita, ano 1. Jediné pravidlo, které lze použít, je 4. Musíme nejprve potvrdit platnost faktů: 1. Žulina, velkébřicho, ano již zadáno uživatelem 2. Žulina, plodnost, ano je potřeba dokázat 2. Potvrzujeme podcíl Žulina, plodnost, ano Musíme potvrdit platnost faktů podle pravidla 3: 1. Žulina, *křeček2, pár je potřeba dokázat 2. Žulina, plodnývěk, ano je potřeba dokázat 7-33
Příklad 2/2 3. Potvrzujeme podcíl Žulina, *křeček2, pár Musíme potvrdit platnost faktů podle pravidla 1: 1. Žulina, pohlaví samička zadáno uživatelem 2. Pascie, pohlaví, sameček zadáno uživatelem 4. Zbývá potvrdit poslední podcíl Žulina, plodnývěk, ano Použijeme pravidlo 2 1. Žulina, plodnývěk, >2 zadáno uživatelem 5. Tvrzení bylo potvrzeno. 7-34
Zpětné řetězení algoritmus 1/2 1. Vytvoř zásobníku a naplň jej všemi koncovými cíli. 2. Shromáždi všechna pravidla schopná splnit cíl na vrcholu zásobníku; když je zásobník prázdný, pak konec. 3. Zkoumej postupně všechna pravidla: a) Jsou-li všechny předpoklady splněny odvoď závěr. Jestliže zkoumaný cíl byl koncový, odstraň jej ze zásobníku a vrať se na krok 2. Jestliže to byl podcíl, odstraň jej ze zásobníku a vrať se ke zpracování předchozího pravidla (dočasně odloženo). b) Jestliže fakta nalezená v bázi faktů nesplňují předpoklady pravidla, ukonči zkoumání pravidla. 7-35
Zpětné řetězení algoritmus 2/2 c) Jestliže pro některý parametr předpokladu chybí hodnota, zjisti, zda lze hodnotu odvodit z jiného pravidla. Pokud ano, parametr se vloží do zásobníku jako podcíl, zkoumané pravidlo se dočasně odloží a přejde se na krok 2. Pokud ne, tato hodnota se zjistí od uživatele a pokračuje se krokem 3a). 4. Jestliže nelze pomocí žádného z pravidel odvodit hodnotu důsledku, daný cíl zůstává neurčen, odstraní se ze zásobníku a pokračuje se krokem 2. 7-36
Výhody a nevýhody zpětného řetězení Výhody Účinné při malém množství hypotéz, které je potřeba zodpovědět. Otázky kladeny v logickém sledu. Hledá jen fakta potřebná pro splnění cíle. Výhodné v diagnostice. Nevýhody Postupuje slepě od cíle (kořen) dolů. Nevýhodné při velkém množství hypotéz a málo vstupních dat. 7-37