logo

Ulančavanje unaprijed i ulančavanje unazad u AI

U umjetnoj inteligenciji, ulančavanje prema naprijed i unatrag jedna je od važnih tema, ali prije razumijevanja ulančavanja prema naprijed i unatrag, prvo ćemo shvatiti odakle ova dva pojma dolaze.

podcrtavanje teksta css-om

Motor za zaključivanje:

Stroj za zaključivanje komponenta je inteligentnog sustava u umjetnoj inteligenciji, koji primjenjuje logička pravila na bazu znanja za izvođenje novih informacija iz poznatih činjenica. Prvi mehanizam za zaključivanje bio je dio ekspertnog sustava. Stroj za zaključivanje obično radi u dva načina, a to su:

    Ulančavanje prema naprijed Ulančavanje unazad

Hornova klauzula i definitivna klauzula:

Hornova klauzula i definitivna klauzula oblici su rečenica, što bazi znanja omogućuje korištenje ograničenijeg i učinkovitijeg algoritma zaključivanja. Algoritmi logičkog zaključivanja koriste pristupe ulančavanja unaprijed i unatrag, koji zahtijevaju KB u obliku određena rečenica prvog reda .

Određena klauzula: Klauzula koja je disjunkcija literala sa točno jedan pozitivan literal poznata je kao definitivna klauzula ili stroga klauzula o rogu.

Horn klauzula: Klauzula koja je disjunkcija literala sa najviše jedan pozitivan literal poznata je kao klauzula o rogu. Stoga su sve definitivne rečenice rogove.

Primjer: (¬ p V ¬ q V k) . Ima samo jedan pozitivni literal k.

To je ekvivalentno p ∧ q → k.

A. Lančano prosljeđivanje

Ulazno ulančavanje također je poznato kao unaprijedna dedukcija ili metoda unaprijed zaključivanja kada se koristi mehanizam za zaključivanje. Ulančavanje prema naprijed oblik je zaključivanja koji započinje atomskim rečenicama u bazi znanja i primjenjuje pravila zaključivanja (Modus Ponens) u smjeru prema naprijed kako bi izvukao više podataka dok se ne postigne cilj.

Algoritam za ulančavanje unaprijed polazi od poznatih činjenica, pokreće sva pravila čije su premise zadovoljene i dodaje svoj zaključak poznatim činjenicama. Ovaj proces se ponavlja dok se problem ne riješi.

Svojstva ulančavanja prema naprijed:

  • To je pristup prema dolje prema gore, jer se kreće odozdo prema gore.
  • To je proces donošenja zaključaka na temelju poznatih činjenica ili podataka, polazeći od početnog stanja do ciljnog stanja.
  • Pristup lančanog usmjeravanja također se naziva i pristup vođen podacima jer dolazimo do cilja koristeći dostupne podatke.
  • Pristup lančanog povezivanja obično se koristi u ekspertnim sustavima, kao što su CLIPS, poslovni i proizvodni sustavi pravila.

Razmotrimo sljedeći poznati primjer koji ćemo koristiti u oba pristupa:

Primjer:

'Prema zakonu, Amerikanac je zločin prodati oružje neprijateljskim nacijama. Država A, neprijatelj Amerike, ima neke projektile, a sve projektile prodao joj je Robert, koji je američki državljanin.'

Dokaži to 'Robert je kriminalac.'

Kako bismo riješili gornji problem, prvo ćemo pretvoriti sve gore navedene činjenice u definitivne klauzule prvog reda, a zatim ćemo upotrijebiti algoritam za ulančavanje prema naprijed da postignemo cilj.

Pretvorba činjenica u FOL:

  • Za Amerikanca je zločin prodavati oružje neprijateljskim nacijama. (Recimo da su p, q i r varijable)
    Amerikanac (p) ∧ oružje(q) ∧ prodaje (p, q, r) ∧ neprijateljski(r) → Kriminalac(p) ...(1)
  • Zemlja A ima nekoliko projektila. ?p Posjeduje(A, p) ∧ Projektil(p) . Može se napisati u dvije određene rečenice korištenjem egzistencijalne instancije, uvodeći novu konstantu T1.
    Posjeduje (A, T1) ......(2)
    Projektil (T1) .......(3)
  • Robert je sve projektile prodao zemlji A.
    ?p Projektili(p) ∧ Posjeduje (A, p) → Prodaje (Robert, p, A) ......(4)
  • Rakete su oružje.
    Projektil(p) → Oružje (p) .......(5)
  • Neprijatelj Amerike poznat je kao neprijateljski raspoložen.
    Neprijatelj(p, Amerika) →Neprijatelj(p) ........(6)
  • Država A je neprijatelj Amerike.
    Neprijatelj (A, Amerika) .........(7)
  • Robert je Amerikanac
    Amerikanac (Robert). ..........(8)

Dokaz za ulančavanje naprijed:

Korak 1:

U prvom koraku krenut ćemo s poznatim činjenicama i odabrati rečenice koje nemaju implikacije, kao što su: Amerikanac (Robert), Neprijatelj (A, Amerika), Vlasnik (A, T1) i Projektil (T1) . Sve ove činjenice bit će prikazane kako slijedi.

Ulančavanje unaprijed i ulančavanje unazad u AI

Korak 2:

U drugom koraku ćemo vidjeti one činjenice koje proizlaze iz dostupnih činjenica i sa zadovoljenim premisama.

Pravilo-(1) ne zadovoljava premise, pa neće biti dodano u prvoj iteraciji.

Pravilo-(2) i (3) su već dodana.

Pravilo-(4) zadovoljava zamjenom {p/T1}, pa prodaje (Robert, T1, A) dodaje se, što proizlazi iz spoja pravila (2) i (3).

Pravilo-(6) je zadovoljno zamjenom (p/A), pa je dodan Neprijateljski(A), što proizlazi iz Pravila-(7).

Ulančavanje unaprijed i ulančavanje unazad u AI

Korak-3:

U koraku-3, kao što možemo provjeriti je li Pravilo-(1) zadovoljno zamjenom {p/Robert, q/T1, r/A}, tako da možemo dodati Criminal(Robert) koji zaključuje sve dostupne činjenice. I tako smo postigli naš cilj.

Ulančavanje unaprijed i ulančavanje unazad u AI

Stoga je dokazano da je Robert kriminalac koristeći pristup ulančavanja naprijed.

B. Ulančavanje unazad:

Ulančavanje unatrag poznato je i kao metoda dedukcije unatrag ili rezoniranja unatrag kada se koristi mehanizam za zaključivanje. Algoritam ulančavanja unatrag oblik je rezoniranja koji počinje s ciljem i radi unatrag, ulančavajući pravila kako bi se pronašle poznate činjenice koje podupiru cilj.

Svojstva ulančavanja unatrag:

  • Poznat je kao pristup odozgo prema dolje.
  • Ulančavanje unazad temelji se na pravilu modus ponens zaključivanja.
  • U ulančavanju unatrag, cilj se dijeli na podcilj ili podciljeve kako bi se dokazala istinitost činjenica.
  • Naziva se pristupom usmjerenim na cilj jer popis ciljeva odlučuje koja će se pravila odabrati i koristiti.
  • Algoritam ulančavanja unazad koristi se u teoriji igara, automatiziranim alatima za dokazivanje teorema, mehanizmima za zaključivanje, pomoćnicima za dokazivanje i raznim AI aplikacijama.
  • Metoda ulančavanja unatrag uglavnom koristi a dubinsko pretraživanje strategija za dokazivanje.

Primjer:

U ulančavanju unazad, koristit ćemo isti gornji primjer i ponovno ćemo napisati sva pravila.

    Amerikanac (p) ∧ oružje(q) ∧ prodaje (p, q, r) ∧ neprijateljski(r) → Kriminalac(p) ...(1)
    Posjeduje (A, T1) ........(2) Projektil (T1) ?p Projektili(p) ∧ Posjeduje (A, p) → Prodaje (Robert, p, A) ......(4) Projektil(p) → Oružje (p) .......(5) Neprijatelj(p, Amerika) →Neprijatelj(p) ........(6) Neprijatelj (A, Amerika) .........(7) Amerikanac (Robert). ..........(8)

Dokaz za ulančavanje unatrag:

U ulančavanju unazad, počet ćemo s našim predikatom cilja, koji je Kriminalac (Robert) , a zatim zaključite daljnja pravila.

Korak 1:

U prvom koraku uzet ćemo činjenicu cilja. A iz činjenice cilja, zaključit ćemo druge činjenice, i na kraju ćemo dokazati da su te činjenice istinite. Dakle, činjenica našeg cilja je 'Robert je kriminalac', pa je predikat toga slijediti.

Ulančavanje unaprijed i ulančavanje unazad u AI

Korak 2:

U drugom koraku ćemo izvesti druge činjenice iz činjenice cilja koja zadovoljava pravila. Dakle, kao što možemo vidjeti u Pravilu-1, predikat cilja Kriminalac (Robert) prisutan je sa zamjenom {Robert/P}. Stoga ćemo dodati sve konjunktivne činjenice ispod prve razine i zamijenit ćemo p s Robert.

Ovdje možemo vidjeti da je Amerikanac (Robert) činjenica, pa je to ovdje dokazano.

Ulančavanje unaprijed i ulančavanje unazad u AI

Korak-3: t U koraku-3, izdvojit ćemo daljnju činjenicu Missile(q) koja se izvodi iz Weapon(q), budući da zadovoljava Pravilo-(5). Oružje (q) je također istinito sa zamjenom konstante T1 na q.

Ulančavanje unaprijed i ulančavanje unazad u AI

Korak-4:

U koraku 4, možemo zaključiti činjenice Missile(T1) i Owns(A, T1) iz oblika Sells(Robert, T1, r) koji zadovoljava Pravilo - 4 , sa zamjenom A umjesto r. Dakle, ove dvije tvrdnje su ovdje dokazane.

Ulančavanje unaprijed i ulančavanje unazad u AI

Korak-5:

U koraku 5 možemo zaključiti činjenicu Neprijatelj (A, Amerika) iz Neprijateljski (A) što zadovoljava Pravilo-6. I stoga se sve tvrdnje dokazuju istinitima korištenjem ulančavanja unazad.

Ulančavanje unaprijed i ulančavanje unazad u AI