logo

Førsteordens logikk i kunstig intelligens

I emnet Proposisjonell logikk har vi sett hvordan man kan representere utsagn ved hjelp av proposisjonell logikk. Men dessverre, i proposisjonell logikk, kan vi bare representere fakta, som enten er sanne eller usanne. PL er ikke tilstrekkelig til å representere komplekse setninger eller naturspråklige utsagn. Proposisjonslogikken har svært begrenset uttrykkskraft. Tenk på følgende setning, som vi ikke kan representere ved å bruke PL-logikk.

java system.out.println
    'Noen mennesker er intelligente', eller 'Sachin liker cricket.'

For å representere utsagnene ovenfor er ikke PL-logikk tilstrekkelig, så vi krevde litt kraftigere logikk, for eksempel førsteordens logikk.

Førsteordens logikk:

  • Førsteordens logikk er en annen måte for kunnskapsrepresentasjon innen kunstig intelligens. Det er en utvidelse av proposisjonell logikk.
  • FOL er tilstrekkelig uttrykksfull til å representere de naturlige språkutsagnene på en kortfattet måte.
  • Første-ordens logikk er også kjent som Predikatlogikk eller Førsteordens predikatlogikk . Første-ordens logikk er et kraftig språk som utvikler informasjon om objektene på en enklere måte og kan også uttrykke forholdet mellom disse objektene.
  • Førsteordens logikk (som naturlig språk) forutsetter ikke bare at verden inneholder fakta som proposisjonell logikk, men antar også følgende ting i verden:
      Objekter:A, B, mennesker, tall, farger, kriger, teorier, firkanter, groper, wumpus, ......
  • Relasjoner: Det kan være unært forhold som: rød, rund, er tilstøtende, eller n-en hvilken som helst relasjon som: søsteren til, broren til, har farge, kommer mellomFunksjon:Far til, beste venn, tredje omgang av, slutten av, ......
  • Som et naturlig språk har førsteordens logikk også to hoveddeler:
      Syntaks
  • Semantikk

    Syntaks for førsteordens logikk:

    Syntaksen til FOL bestemmer hvilken samling av symboler som er et logisk uttrykk i førsteordens logikk. De grunnleggende syntaktiske elementene i førsteordens logikk er symboler. Vi skriver utsagn i kortskrift i FOL.

    Grunnleggende elementer i førsteordens logikk:

    Følgende er de grunnleggende elementene i FOL-syntaksen:

    Konstant 1, 2, A, John, Mumbai, katt,....
    Variabler x, y, z, a, b,....
    Predikater Bror, far, >,....
    Funksjon sqrt, LeftLegOf, ....
    Koblinger ∧, ∨, ¬, ⇒, ⇔
    Likestilling ==
    Kvantifier ∀, ∃

    Atomsetninger:

    • Atomsetninger er de mest grunnleggende setningene i førsteordens logikk. Disse setningene er dannet av et predikatsymbol etterfulgt av en parentes med en rekke begreper.
    • Vi kan representere atomsetninger som Predikat (ledd1, ledd2, ......, ledd n) .

    Eksempel: Ravi og Ajay er brødre: => Brødre(Ravi, Ajay).
    Chinky er en katt: => katt (Chinky)
    .

    Komplekse setninger:

    • Komplekse setninger lages ved å kombinere atomsetninger ved å bruke bindeledd.

    Førsteordens logikkutsagn kan deles inn i to deler:

      Emne:Emnet er hoveddelen av utsagnet.Predikat:Et predikat kan defineres som en relasjon, som binder to atomer sammen i et utsagn.

    Tenk på utsagnet: 'x er et heltall.' , den består av to deler, den første delen x er gjenstand for utsagnet og den andre delen 'er et heltall' er kjent som et predikat.

    Førsteordens logikk i kunstig intelligens

    Kvantifiserere i førsteordens logikk:

    • En kvantifisering er et språkelement som genererer kvantifisering, og kvantifisering spesifiserer mengden av eksemplarer i diskursens univers.
    • Dette er symbolene som tillater å bestemme eller identifisere rekkevidden og omfanget av variabelen i det logiske uttrykket. Det er to typer kvantifiserer:
        Universal Quantifier, (for alle, alle, alt)
    • Eksistensiell kvantifier, (for noen, minst én).

    Universal kvantifier:

    Universell kvantifier er et symbol på logisk representasjon, som spesifiserer at utsagnet innenfor området er sant for alt eller hver forekomst av en bestemt ting.

    dfa eksempler

    Den universelle kvantifikatoren er representert med et symbol ∀, som ligner en invertert A.

    Merk: I universell kvantifier bruker vi implikasjon '→'.

    Hvis x er en variabel, så leses ∀x som:

      For alle x For hver x For hver x.

    Eksempel:

    Alle mennesker drikker kaffe.

    La en variabel x som refererer til en katt slik at alle x kan representeres i UOD som nedenfor:

    Førsteordens logikk i kunstig intelligens

    ∀x mann(x) → drikke (x, kaffe).

    Det vil bli lest som: Det er alle x der x er en mann som drikker kaffe.

    Eksistensiell kvantifier:

    Eksistensielle kvantifiserere er typen kvantifiserere, som uttrykker at utsagnet innenfor dens omfang er sant for minst én forekomst av noe.

    Den er betegnet med den logiske operatoren ∃, som ligner invertert E. Når den brukes med en predikatvariabel, kalles den som en eksistensiell kvantifier.

    Merk: I eksistensiell kvantifier bruker vi alltid AND eller konjunksjonssymbol (∧).

    Hvis x er en variabel, vil eksistensiell kvantifier være ∃x eller ∃(x). Og det vil bli lest som:

    Rajinikanth
      Det finnes en 'x.' For noen 'x.' For minst én 'x.'

    Eksempel:

    Noen gutter er intelligente.

    Førsteordens logikk i kunstig intelligens

    ∃x: gutter(x) ∧ intelligent(x)

    Det vil bli lest som: Det er noen x der x er en gutt som er intelligent.

    Punkter å huske:

    • Hovedkoblingen for universal kvantifier er implikasjon .
    • Hovedforbindelsen for eksistensiell kvantifiserer er og .

    Egenskaper til kvantifiserere:

    • I en universell kvantifier er ∀x∀y lik ∀y∀x.
    • I eksistensiell kvantifier er ∃x∃y lik ∃y∃x.
    • ∃x∀y er ikke lik ∀y∃x.

    Noen eksempler på FOL som bruker kvantifier:

    1. Alle fugler flyr.
    I dette spørsmålet er predikatet ' flue (fugl) .'
    Og siden det er alle fugler som flyr, så vil det bli representert som følger.
    ∀x fugl(x) →flue(x) .

    2. Hver mann respekterer sine foreldre.
    I dette spørsmålet er predikatet ' respekt(x, y),' der x = mann og y = forelder .
    Siden det er alle mennesker, vil de bruke ∀, og det vil bli representert som følger:
    ∀x mann(x) → respekterer (x, forelder) .

    3. Noen gutter spiller cricket.
    I dette spørsmålet er predikatet ' spill (x, y) ,' hvor x = gutter og y = spill. Siden det er noen gutter så vil vi bruke ∃, og det vil bli representert som :
    ∃x gutter(x) → spill(x, cricket) .

    4. Ikke alle elever liker både matematikk og naturfag.
    I dette spørsmålet er predikatet ' like(x, y),' hvor x = elev og y = emne .
    Siden det ikke er alle elever, så vil vi bruke ∀ med negasjon, altså følgende representasjon for dette:
    ¬∀ (x) [ elev(x) → liker(x, matematikk) ∧ liker(x, naturfag)].

    5. Kun én elev strøk i matematikk.
    I dette spørsmålet er predikatet ' mislyktes(x, y),' der x= elev og y= emne .
    Siden det kun er én student som mislyktes i matematikk, så vil vi bruke følgende representasjon for dette:
    ∃(x) [ elev(x) → ikke bestått (x, matematikk) ∧∀ (y) [¬(x==y) ∧ elev(y) → ¬ikke bestått (x, matematikk)] .

    SIM-kort satt inn men ingen tjeneste android

    Frie og bundne variabler:

    Kvantifikatorene samhandler med variabler som vises på en passende måte. Det er to typer variabler i førsteordens logikk som er gitt nedenfor:

    Gratis variabel: En variabel sies å være en fri variabel i en formel hvis den forekommer utenfor omfanget av kvantifisereren.

    Eksempel: ∀x ∃(y)[P (x, y, z)], der z er en fri variabel.

    Bundet variabel: En variabel sies å være en bundet variabel i en formel hvis den forekommer innenfor omfanget av kvantifikatoren.

    Eksempel: ∀x [A (x) B( y)], her er x og y de bundne variablene.