Bagudkædning

Bagudkædning starter med en liste over mål (eller en hypotese) og arbejder baglæns fra den deraf følgende til fortilfælde for at se, om nogen data understøtter nogen af disse konsekvenser. En inferensmotor, der bruger bagudkædning, vil søge i inferensreglerne, indtil den finder en med en deraf følgende (derefter klausul), der matcher et ønsket mål. Hvis fortilfælde (hvis klausul) af denne regel vides at være sand, føjes den til listen over mål (for at ens mål skal bekræftes, skal man også give data, der bekræfter denne nye regel).

Antag for eksempel, at et nyt kæledyr, Frits, leveres i en uigennemsigtig kasse sammen med to fakta om Frits:

  • Frits croaks
  • Frits spiser fluer

målet er at afgøre, om Frits er grøn, baseret på en regelbase, der indeholder følgende fire regler:

et eksempel på Bagudkædning.
et eksempel på Bagudkædning.

  1. hvis det er en kanariefugl
  2. hvis det er en kanariefugl
  3. hvis det er en frø – så er det Grøn
  4. hvis det er en kanariefugl – så er det Gul

med bagudgående ræsonnement kan en inferensmotor bestemme, om det er grønt i fire trin. For at starte, formuleres forespørgslen som en målpåstand, der skal bevises: “Frits er grøn”.

1. 3 for at se, om dens deraf følgende matcher målet, så regel #3 bliver:

 If Fritz is a frog – Then Fritz is green

da den deraf følgende matcher målet (“Frits er grøn”), skal reglemotoren nu se, om antecedenten (“Frits er en frø”) kan bevises. Fortilfælde bliver derfor det nye mål:

 Fritz is a frog

2. Igen erstatter Rule # 1:

 If Fritz croaks and Fritz eats flies – Then Fritz is a frog

da den deraf følgende matcher det nuværende mål (“Frits er en frø”), skal inferensmotoren nu se, om antecedenten (“Frits croaks and eats fluer”) kan bevises. Fortilfælde bliver derfor det nye mål:

 Fritz croaks and Fritz eats flies

3. Da dette mål er en sammenhæng mellem to udsagn, bryder inferensmotoren det i to delmål, som begge skal bevises:

 Fritz croaks Fritz eats flies

4. For at bevise begge disse delmål ser inferensmotoren, at begge disse delmål blev givet som indledende fakta. Derfor er sammenhængen sand:

 Fritz croaks and Fritz eats flies

derfor er fortilfælde til regel #1 sandt, og det deraf følgende skal være sandt:

 Fritz is a frog

derfor er fortilfælde til Regel # 3 sandt, og det deraf følgende skal være sandt:

 Fritz is green

denne afledning tillader derfor inferensmotoren at bevise, at Frits er grøn. Reglerne # 2 og # 4 blev ikke brugt.

Bemærk, at målene altid matcher de bekræftede versioner af følgerne af implikationer (og ikke de negerede versioner som i modus tollens), og selv da betragtes deres fortilfælde derefter som de nye mål (og ikke konklusionerne som ved bekræftelse af den deraf følgende), som i sidste ende skal matche kendte fakta (normalt defineret som konsekvenser, hvis fortilfælde altid er sande); således er den anvendte slutningsregel modus ponens.

da listen over mål bestemmer, hvilke regler der vælges og bruges, kaldes denne metode måldrevet, i modsætning til datadrevet fremadkædende slutning. Den bagudkædende tilgang anvendes ofte af ekspertsystemer.

programmeringssprog som Prolog, Vidensmaskine og ECLiPSe understøtter bagudkædning inden for deres inferensmotorer.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.