logo

Elsőrendű logika a mesterséges intelligenciában

A Propozíciós logika témakörben láthattuk, hogy hogyan ábrázoljunk állításokat propozíciós logikával. De sajnos a propozíciós logikában csak a tényeket tudjuk ábrázolni, amelyek vagy igazak vagy hamisak. A PL nem elegendő az összetett mondatok vagy természetes nyelvi állítások megjelenítésére. A propozíciós logikának nagyon korlátozott kifejezőereje van. Tekintsük a következő mondatot, amelyet nem tudunk PL logikával ábrázolni.

string.compare c#
    „Néhány ember intelligens”, ill – Sachin szereti a krikettet.

A fenti állítások megjelenítéséhez a PL logika nem elegendő, ezért szükségünk volt néhány erősebb logikára, például elsőrendű logikára.

Elsőrendű logika:

  • Az elsőrendű logika a tudásreprezentáció másik módja a mesterséges intelligenciában. Ez a propozíciós logika kiterjesztése.
  • A FOL kellően kifejező ahhoz, hogy a természetes nyelvi állításokat tömören ábrázolja.
  • Az elsőrendű logika más néven Predikátumlogika vagy Elsőrendű predikátumlogika . Az elsőrendű logika egy erőteljes nyelv, amely könnyebben fejleszti az objektumokról szóló információkat, és kifejezheti az objektumok közötti kapcsolatot is.
  • Az elsőrendű logika (mint a természetes nyelv) nemcsak azt feltételezi, hogy a világ olyan tényeket tartalmaz, mint a propozíciós logika, hanem a következő dolgokat is feltételezi a világban:
      Objektumok:A, B, emberek, számok, színek, háborúk, elméletek, négyzetek, gödrök, wumpusok, ......
  • Kapcsolatok: Ez lehet unáris reláció, például: piros, kerek, szomszédos, vagy n-bármilyen reláció, például: a nővére, testvére, színe van, közte vanFunkció:Atyja, legjobb barátja, harmadik játékrésze, vége, ......
  • Természetes nyelvként az elsőrendű logikának is két fő része van:
      Szintaxis
  • Szemantika

    Az elsőrendű logika szintaxisa:

    A FOL szintaxisa határozza meg, hogy melyik szimbólumgyűjtemény logikai kifejezés az elsőrendű logikában. Az elsőrendű logika alapvető szintaktikai elemei a szimbólumok. Az állításokat FOL-ban rövid jelöléssel írjuk.

    Az elsőrendű logika alapelemei:

    A FOL szintaxis alapvető elemei a következők:

    Állandó 1, 2, A, John, Mumbai, macska,...
    Változók x, y, z, a, b,....
    Predikátumok Testvér, apa, >,....
    Funkció sqrt, LeftLegOf, ....
    Összekötők ∧, ∨, ¬, ⇒, ⇔
    Egyenlőség ==
    Kvantifikátor ∀, ∃

    Atommondatok:

    • Az atommondatok az elsőrendű logika legalapvetőbb mondatai. Ezeket a mondatokat állítmány szimbólumból alkotják, amelyet egy zárójel követ egy kifejezéssorozattal.
    • Az atomi mondatokat mint Predikátum (term1, term2, ......, term n) .

    Példa: Ravi és Ajay testvérek: => Testvérek (Ravi, Ajay).
    Chinky egy macska: => macska (Chinky)
    .

    Összetett mondatok:

    • Az összetett mondatok atomi mondatok konnektívumok segítségével történő kombinálásával készülnek.

    Az elsőrendű logikai utasítások két részre oszthatók:

      Tantárgy:A tárgy a kijelentés fő része.Állítmány:A predikátum egy relációként definiálható, amely két atomot köt össze egy utasításban.

    Tekintsük a következő állítást: 'x egész szám'. , két részből áll, az első x rész az állítás tárgya, a második rész pedig egy egész szám, predikátumként ismert.

    Elsőrendű logika a mesterséges intelligenciában

    Kvantifikátorok az elsőrendű logikában:

    • A kvantor egy nyelvi elem, amely kvantifikációt generál, és a kvantifikáció határozza meg a minta mennyiségét a diskurzus univerzumában.
    • Ezek azok a szimbólumok, amelyek lehetővé teszik a változó tartományának és hatókörének meghatározását vagy azonosítását a logikai kifejezésben. Kétféle kvantor létezik:
        Univerzális kvantor (mindenkihez, mindenkinek, mindenhez)
    • Egzisztenciális kvantor, (egyeseknél legalább egy).

    Univerzális kvantor:

    Az univerzális kvantor a logikai reprezentáció szimbóluma, amely meghatározza, hogy a tartományon belüli állítás egy adott dolog mindenre vagy minden példányára igaz.

    Az univerzális kvantort egy ∀ szimbólum képviseli, amely egy fordított A-ra emlékeztet.

    Megjegyzés: Az univerzális kvantorban '→' implikációt használunk.

    Ha x egy változó, akkor ∀x a következőképpen jelenik meg:

    gimp színe megváltozik
      Minden x-nek Minden x-hez Minden x-re.

    Példa:

    Minden ember kávét iszik.

    Legyen egy x változó, amely egy macskára vonatkozik, így az összes x ábrázolható UOD-ban az alábbiak szerint:

    Elsőrendű logika a mesterséges intelligenciában

    ∀x ember(x) → ital (x, kávé).

    Ez így lesz olvasható: Mind olyan x van, ahol x egy férfi, aki kávét iszik.

    Egzisztenciális kvantor:

    Az egzisztenciális kvantorok a kvantorok azon típusai, amelyek azt fejezik ki, hogy a hatókörébe tartozó állítás valaminek legalább egy példányára igaz.

    Ezt a ∃ logikai operátor jelöli, amely invertált E-hez hasonlít. Ha predikátumváltozóval használjuk, akkor egzisztenciális kvantornak nevezzük.

    Megjegyzés: Az egzisztenciális kvantorban mindig ÉS vagy kötőszót használunk (∧).

    Ha x egy változó, akkor az egzisztenciális kvantor ∃x vagy ∃(x) lesz. És így lesz olvasható:

      Létezik egy „x”. Néhány 'x'-ért. Legalább egy „x”-re.

    Példa:

    Néhány fiú intelligens.

    Elsőrendű logika a mesterséges intelligenciában

    ∃x: fiúk(x) ∧ intelligens(x)

    integer to string java

    A következőképpen olvasható: Van néhány x, ahol x egy intelligens fiú.

    Emlékeztető pontok:

    • Az univerzális kvantor fő összekötője implikáció .
    • Az egzisztenciális kvantor fő összekötője és .

    A kvantorok tulajdonságai:

    • Az univerzális kvantorban ∀x∀y hasonló ∀y∀x-hez.
    • Az egzisztenciális kvantorban ∃x∃y hasonló ∃y∃x-hez.
    • ∃x∀y nem hasonlít ∀y∃x-hez.

    Néhány példa a kvantort használó FOL-ra:

    1. Minden madár repül.
    Ebben a kérdésben az állítmány a következő: légy (madár) .'
    És mivel minden madár repül, így ez a következőképpen lesz ábrázolva.
    ∀x madár(x) →repül(x) .

    2. Minden férfi tiszteli a szülőjét.
    Ebben a kérdésben az állítmány a következő: tisztelet(x, y),' ahol x = ember és y = szülő .
    Mivel minden ember létezik, ezért használja a ∀-t, és a következőképpen fog ábrázolni:
    ∀x ember(x) → tiszteletben tartja (x, szülő) .

    nat vs ágy

    3. Néhány fiú krikettez.
    Ebben a kérdésben az állítmány a következő: játék (x, y) ,' ahol x = fiúk, és y = játék. Mivel van néhány fiú, így használni fogjuk ∃, és így lesz ábrázolva :
    ∃x fiúk(x) → játék(x, krikett) .

    4. Nem minden diák szereti a matematikát és a természettudományokat egyaránt.
    Ebben a kérdésben az állítmány a következő: like(x, y),' ahol x = tanuló és y = tantárgy .
    Mivel nincs minden diák, ezért használni fogjuk ∀ tagadással, tehát ehhez a következő ábrázolás:
    ¬∀ (x) [ diák(x) → tetszik(x, matematika) ∧ like(x, tudomány)].

    5. Csak egy diák bukott meg matematikából.
    Ebben a kérdésben az állítmány a következő: sikertelen(x, y),' ahol x= tanuló és y= tantárgy .
    Mivel csak egy diák bukott meg matematikából, ezért a következő ábrázolást használjuk ehhez:
    ∃(x) [ tanuló(x) → megbukott (x, matematika) ∧∀ (y) [¬(x==y) ∧ diák(y) → ¬nem sikerült (x, matematika)] .

    Szabad és kötött változók:

    A kvantorok kölcsönhatásba lépnek a megfelelő módon megjelenő változókkal. Az elsőrendű logikában kétféle változó létezik, amelyeket alább adunk meg:

    Szabad változó: Egy változót szabad változónak nevezünk a képletben, ha a kvantor hatókörén kívül fordul elő.

    Példa: ∀x ∃(y)[P (x, y, z)], ahol z szabad változó.

    Kötött változó: Egy változót kötött változónak nevezünk egy képletben, ha a kvantor hatókörén belül fordul elő.

    Példa: ∀x [A (x) B( y)], itt x és y a kötött változók.