V umělé inteligenci je dopředné a zpětné řetězení jedním z důležitých témat, ale než porozumíme řetězení dopředu a dozadu, musíme nejprve pochopit, odkud tyto dva pojmy pocházejí.
beran herec
Inferenční stroj:
Inferenční engine je součástí inteligentního systému umělé inteligence, který aplikuje logická pravidla na znalostní bázi k odvození nových informací ze známých faktů. První inferenční stroj byl součástí expertního systému. Inferenční stroj běžně probíhá ve dvou režimech, kterými jsou:
Klauzule o rohu a definitivní klauzule:
Klauzule rohu a určitá klauzule jsou formy vět, které umožňují znalostní bázi používat omezenější a efektivnější algoritmus odvození. Algoritmy logické inference používají přístupy dopředného a zpětného řetězení, které vyžadují KB ve formě určovací doložka prvního řádu .
Definitivní klauzule: Klauzule, která je disjunkcí literálů s přesně jeden pozitivní doslov je známá jako určitá klauzule nebo klauzule s přísným rohem.
Klauzule o rohu: Klauzule, která je disjunkcí literálů s maximálně jeden kladný doslov je známá jako klauzule rohu. Všechny určité věty jsou tedy větné členy rohové.
Příklad: (¬ p V ¬ q V k) . Má pouze jedno kladné doslovné k.
Je ekvivalentní p ∧ q → k.A. Dopředné řetězení
Dopředné řetězení je také známé jako dopředná dedukce nebo metoda dopředného uvažování při použití inferenčního motoru. Dopředné řetězení je forma uvažování, která začíná atomickými větami ve znalostní bázi a aplikuje pravidla odvození (Modus Ponens) v dopředném směru k extrahování více dat, dokud není dosaženo cíle.
Algoritmus Forward-chaining vychází ze známých faktů, spouští všechna pravidla, jejichž premisy jsou splněny, a přidává jejich závěr ke známým faktům. Tento proces se opakuje, dokud není problém vyřešen.
Vlastnosti dopředného řetězení:
- Je to sestupný přístup, protože se pohybuje zdola nahoru.
- Je to proces vytváření závěru na základě známých faktů nebo dat, přičemž se začíná od počátečního stavu a dosahuje se cílového stavu.
- Přístup dopředného řetězení je také nazýván jako přístup založený na datech, když dosáhneme cíle pomocí dostupných dat.
- Přístup dopředného řetězení se běžně používá v expertních systémech, jako jsou CLIPS, obchodní a produkční systémy pravidel.
Zvažte následující slavný příklad, který použijeme v obou přístupech:
Příklad:
'Podle zákona je pro Američana zločinem prodávat zbraně nepřátelským zemím.' Země A, nepřítel Ameriky, má nějaké rakety a všechny rakety jí prodal Robert, který je americkým občanem.“
Dokázat to 'Robert je zločinec.'
Abychom vyřešili výše uvedený problém, nejprve převedeme všechna výše uvedená fakta na určité klauzule prvního řádu a poté použijeme dopředný řetězový algoritmus k dosažení cíle.
Fakta Převod na FOL:
- Pro Američana je zločin prodávat zbraně nepřátelským zemím. (Řekněme, že p, q a r jsou proměnné)
Američan (p) ∧ zbraň(q) ∧ prodává (p, q, r) ∧ nepřátelský(r) → Kriminální(p) ...(1) - Země A má nějaké rakety. ?p Vlastní(A, p) ∧ Missile(p) . Může být zapsán ve dvou určitých klauzulích pomocí Existential Instanciation, zavedením nové konstanty T1.
Vlastní(A, T1) ......(2)
Střela(T1) ........(3) - Všechny rakety prodal Robert do země A.
?p Střely(p) ∧ Vlastní (A, p) → Prodává (Robert, p, A) ......(4) - Rakety jsou zbraně.
Střela(p) → Zbraně (p) .......(5) - Nepřítel Ameriky je známý jako nepřátelský.
Nepřítel(p, Amerika) →Nepřátelský(p) ........(6) - Země A je nepřítelem Ameriky.
Nepřítel (A, Amerika) .........(7) - Robert je Američan
Američan (Robert). ...........(8)
Důkaz dopředného řetězení:
Krok 1:
V prvním kroku začneme známými fakty a vybereme věty, které nemají žádné důsledky, jako například: American (Robert), Enemy (A, America), Owns (A, T1) and Missile (T1) . Všechny tyto skutečnosti budou uvedeny níže.
Krok 2:
Ve druhém kroku uvidíme ty skutečnosti, které vyvozují z dostupných faktů a se spokojenými předpoklady.
Pravidlo-(1) nesplňuje předpoklady, takže nebude přidáno v první iteraci.
Pravidlo (2) a (3) je již přidáno.
Pravidlo-(4) uspokoj se substitucí {p/T1}, tak prodává (Robert, T1, A) se přidává, což vyplývá ze spojení pravidla (2) a (3).
Pravidlo-(6) je se substitucí (p/A) spokojeno, takže je přidáno nepřátelské (A) a vyvozuje se z pravidla-(7).
Krok 3:
V kroku 3, jak můžeme zkontrolovat, je pravidlo-(1) se substitucí spokojeno {p/Robert, q/T1, r/A}, takže můžeme přidat Criminal (Robert) který vyvozuje všechna dostupná fakta. A tím jsme dosáhli našeho cíle.
Je tedy dokázáno, že Robert je zločinec pomocí dopředného řetězení.
B. Zpětné řetězení:
Zpětné řetězení je také známé jako zpětná dedukce nebo metoda zpětného uvažování při použití inferenčního motoru. Algoritmus zpětného řetězení je forma uvažování, která začíná cílem a pracuje zpětně, řetězí se přes pravidla, aby nalezla známá fakta, která cíl podporují.
Vlastnosti zpětného řetězení:
- Je známý jako přístup shora dolů.
- Zpětné zřetězení je založeno na pravidle odvození modus ponens.
- Při zpětném řetězení je cíl rozdělen na dílčí cíle nebo dílčí cíle, aby se prokázala pravdivost faktů.
- Říká se tomu cílově řízený přístup, protože seznam cílů rozhoduje o tom, která pravidla budou vybrána a použita.
- Algoritmus zpětného řetězení se používá v teorii her, automatizovaných nástrojích pro dokazování teorémů, inferencích, asistentech důkazů a různých aplikacích umělé inteligence.
- Nejčastěji se používá metoda zpětného řetězení a hloubkové hledání strategie pro důkaz.
Příklad:
Při zpětném řetězení použijeme stejný výše uvedený příklad a přepíšeme všechna pravidla.
Vlastní(A, T1) ........(2)
Důkaz zpětného řetězení:
V Backward chaining začneme naším predikátem cíle, což je Zločinec (Robert) a poté odvodit další pravidla.
Krok 1:
V prvním kroku si vezmeme cílový fakt. A z cílové skutečnosti vyvodíme další fakta a nakonec tato fakta prokážeme jako pravdivé. Naším cílem je tedy 'Robert je zločinec', takže následující je jeho predikát.
Krok 2:
Ve druhém kroku odvodíme další skutečnosti z cílové skutečnosti, která pravidlům vyhovuje. Jak tedy můžeme vidět v pravidle-1, je přítomen gólový predikát Criminal (Robert) se substitucí {Robert/P}. Takže přidáme všechna konjunktivní fakta pod první úroveň a nahradíme p Robertem.
Tady vidíme, že Američan (Robert) je fakt, takže je to tady dokázáno.
Krok 3: t V kroku 3 extrahujeme další skutečnost Missile(q), která vyplývá z Weapon(q), protože splňuje pravidlo-(5). Zbraň (q) je také pravdivá se substitucí konstanty T1 v q.
Krok 4:
V kroku 4 můžeme odvodit fakta Missile(T1) a Owns(A, T1) z Sells(Robert, T1, r), která splňuje Pravidlo - 4 , s nahrazením A na místě r. Takže tato dvě tvrzení jsou zde prokázána.
Krok 5:
V kroku 5 můžeme odvodit skutečnost Nepřítel (A, Amerika) z Nepřátelský(A) což splňuje pravidlo 6. A proto jsou všechna tvrzení dokázána jako pravdivá pomocí zpětného řetězení.