400 likes | 557 Views
College 9. Diagnose met correctmodellen. Verdieping in de formalisatie. In reader: Characterizing diagnoses and Systems J. de Kleer, A. Mackworth, R. Reiter. Onderwerpen. (1) consistentie-gebaseerde diagnose (herhaling) (2) minimale-diagnose-hypothese (3) analyse van diagnose
E N D
College 9 • Diagnose met correctmodellen. • Verdieping in de formalisatie. In reader: Characterizing diagnoses and Systems J. de Kleer, A. Mackworth, R. Reiter
Onderwerpen (1) consistentie-gebaseerde diagnose (herhaling) (2) minimale-diagnose-hypothese (3) analyse van diagnose (mbv. implicaten en implicanten) (4) nieuwe concepten: partial diagnose kernel diagnose (5) eisen aan een kennisbank, zodat de minimale- diagnose-hypothese geldt
(1) (Herhaling)Systeembeschrijving (SD) • speciaal predicaat ab(c): component “c” is abnormaal • COMP set van componten • SD bestaat uit: • normaal-gedragsmodel van ieder type component • type-component-regels • structuurmodel • domeinafhankelijk: circuit-inputs zijn binair Concreet probleem: observaties
(Herhaling)Diagnosedefinitie Een diagnose voor (SD,OBS,COMP) is een minimale set van foute componenten zodat: SD OBS {ab(c)c COMP \ } {ab(c)c } is consistent
(2) Minimale-diagnose-hypothese Onderliggende aanname: • minimale-diagnose-hypothese: als een diagnose is, dan is voor iedere c COMP \ de verzameling U c ook een diagnose • ofwel: iedere superset van een diagnose is een diagnose Maar: deze aanname is niet altijd terecht!
0 1 inverter I1 inverter I2 Voorbeeld • inverter(x) [ab(x) (in(x)=0 out(x)=1)] • inverter(I1) • inverter(I2) • out(I1) = in(I2) • in(I1) = 0 • out(I2) = 1 • diagnoses: {I1}, {I2}, {I1,I2}minimale-diagnose-hypothese geldt!
0 1 inverter I1 inverter I2 Tegenvoorbeeld Extra kennis over foutgedrag twee mogelijke foutgedragingen: • óf inverter produceert altijd een 0, óf kortsluiting inverter(x) ab(x) [sa0(x) short(x)] sa0(x) out(x)=0 short(x) out(x)=in(x) • diagnoses: {I1}, {I2} • geen diagnose: {I1, I2} • minimale-diagnose-hypothese geldt niet! • merk op: ab(x) `positief’ in het antecedent
0 0 inverter I1 inverter I2 Nog een tegenvoorbeeld inverter(x) [ab(x) (in(x)=0 out(x)=1)] inverter(I1) inverter(I2) out(I1) = in(I2) in(I1) = 0 out(I2) = 0 • diagnoses: {}, {I1, I2} • geen diagnoses: {I1}, {I2} • minimale-diagnose-hypothese geldt niet! • fault masking: SDOBS{ab(c) | c COMP} niet inc.
Onderwerpen (1) consistentie-gebaseerde diagnose (herhaling) (2) minimale-diagnose-hypothese (3) analyse van diagnose (mbv. implicaten en implicanten) (4) nieuwe concepten: partial diagnose kernel diagnose (5) eisen aan KB, zodat minimale-diagnose-hypothese geldt
Terminologie • ab-literal: ab(c) of ab(c), c COMP • ab-clause: ab-lit1 … ab-litn • conflict van (SD,COMP,OBS):SD U OBS |— ab-clauseDe ab-clause is een conflict (toevoegen (ab-lit1 … ab-litn) geeft inconsistentie) • positief conflict: alleen positieve ab-literals • ab(c1) … ab(cn) • lege clause • minimal conflict
Terminologie • implicat:implicaat van een set clauses C is een clause die logisch volgt uit C ( is implicaat van T iff T |-- ) • prime implicat: meest `compacte’ • implicant: is implicant van T iff |-- T • prime implicant: `sterkste’
Conflict • conflict is een implicaat van SD U OBSSD U OBS |- conflict • conflict geeft diagnostische informatie • positive conflicts: minstens 1 van de componenten uit het conflict is kapot • minimaal conflict is een prime implicat van SD U OBS
Conflicten en diagnoses • Er bestaat een diagnose als:SD U OBS is consistent • Er is een discrepantie als alle componenten niet correct kunnen functioneren bij gegeven OBS:SD U OBS U {ab(c) | c COMP} is inconsistent • is een diagnose als:set van conflicten U {ab(c) | c COMP\ } U{ab(c) | c } is consistent • set van conflicten van SD U OBS is deset van implicaten van SD U OBS met de vorm ab-lit1 … ab-litn
A=3 M1 A1 B=2 C=2 M2 D=3 G=12 A2 M3 E=3 Voorbeeld • Minimal conflicts: ab(A1) ab(M1) ab(M2)ab(A1) ab(M1) ab(M3) ab(A2) F=10
Voorbeeld • Minimal conflicts: ab(A1) ab(M1) ab(M2)ab(A1) ab(M1) ab(M3) ab(A2) minimale conflicts |-- ab(A1) ab(M1) (ab(M2) ab(M3)) (ab(M2) ab(A2))
Conflict sets • als er alleen positieve minimale conflictenzijn dan is “alle componenten zijn incorrect” een diagnose • is een minimale diagnose als:conjunctie van ab(ci) met ci een prime implicant is van de set van positieve conflicts van (SD,COMP,OBS)
De fundamentele taken in diagnose • hypothesegeneratie:= vinden van positieve minimale conflicten= vinden van priem-implicaten van SD U OBS • hypotheses testen (candidaatgeneratie):= vinden van priem-implicanten van set positieve minimale conflicten • hypothesediscriminatie Echter niet alleen positieve minimale conflicten beschouwen!
minimale-diagnose-hypothese Resultaat: • minimale-diagnose-hypothese geldtindien we naar positieve minimale conflicten kijken.
Onderwerpen (1) consistentie-gebaseerde diagnose (herhaling) (2) minimale-diagnose-hypothese (3) analyse van diagnose (mbv. implicaten en implicanten) (4) nieuwe concepten: partial diagnose kernel diagnose (5) eisen aan KB, zodat minimale-diagnose-hypothese geldt
Compacte-diagnose-representatie:partiële diagnose Diagnoses voor systeem met drie componenten: • ab(c1) ab(c2) ab(c3) • ab(c1) ab(c2) ab(c3) Compacte representatie: • ab(c1) ab(c2) lezing:alle mogelijke uitbreidingen (met ab(ci) of ab(ci)) van de compacte representatie zijn diagnoses.
Kernel-diagnose • partiële diagnose P representeert een setdiagnoses die ieder P bevatten. • kernel diagnosis is een minimale partiële diagnose • is een diagnose d.e.s.d.a. er een kernel-diagnose bestaat die de diagnose `bedekt’.
0 1 inverter I1 inverter I2 Voorbeeld inverter(x) [ab(x) (in(x)=0 out(x)=1)] inverter(I1) inverter(I2) out(I1) = in(I2) in(I1) = 0 out(I2) = 1 • diagnoses: {ab(I1) ab(I2)}, {ab(I2) ab(I1)}, {ab(I1) ab(I2)} • kernel diagnoses: ab(I1), ab(I2)
0 1 inverter I1 inverter I2 Voorbeeld Extra kennis over foutgedrag Twee mogelijke foutgedragingen: • inverter produceert altijd een 0 • kortsluiting inverter(x) ab(x) [ sa0(x) short(x)] sa0(x) out(x)=0 short(x) out(x)=in(x) • Diagnoses: {ab(I1) ab(I2)}, {ab(I2) ab(I1)} • Kernel diagnoses: {ab(I1) ab(I2)} , {ab(I2) ab(I1)}
0 0 inverter I1 inverter I2 Nog een voorbeeld inverter(x) [ab(x) (in(x)=0 out(x)=1)] inverter(I1) inverter(I2) out(I1) = in(I2) in(I1) = 0 out(I2) = 0 • diagnoses: {}, {ab(I1),ab(I2)} • kernel diagnoses: {ab(I1) ab(I2)}, {ab(I1) ab(I2)}
Representatie van alle diagnoses • set van kernel-diagnoses representeert alle diagnoses • set van minimale diagnoses is geen goede representatie voor alle diagnoses
partiële/kernel-diagnose • partiële diagnoses van (SD,COMPS,OBS) zijn de implicanten van de minimale conflicten van (SD,COMP,OBS) • kernel diagnoses van (SD,COMPS,OBS) zijn de priem implicanten van de minimale conflicten van (SD,COMP,OBS)
Problemen met niet-positieve conflicten • mogelijk redundante minimal conflicts in conflict set van (SD,OBS) • mogelijk meerdere subset-minimale sets van kernel diagnoses
Probleem Mogelijk meerdere subset-minimale sets van kernel-diagnoses Voorbeeld met 3 componenten: • minimal conflicts:ab(a) ab(b) ab(c)ab(a) ab(b) ab(c) • kernel-diagnoses:ab(a) ab(b)ab(a) ab(c) ab(b) ab(c)ab(a) ab(b) ab(a) ab(c) ab(b) ab(c) • NB: er zijn 6 diagnoses
Onderwerpen (1) consistentie-gebaseerde diagnose (herhaling) (2) minimale-diagnose-hypothese (3) analyse van diagnose (mbv. implicaten en implicanten) (4) nieuwe concepten: partiële diagnose kernel diagnose (5) eisen aan de kennisbank, zodat minimale-diagnose-hypothese geldt
Doel: karakteriseren van alle diagnoses Methoden voor het karakteriseren van alle diagnoses: • minimale diagnoses niet voldoende • voorstel kernel-diagnoses! Andere benadering: • Inperken van SD zodat minimale-diagnose-hypothese wel geldt.
Inperken van SD • Vraag: wanneer heb je alleen positieve conflicten? • onbekend...geen noodzakelijk en voldoende conditie te geven voor de eisen van SD Nu: kijken naar praktische beperkingen van SD en OBS
Afwezigheid van abnormal gedrag IAB-conditie: Ignorance of abnormal behaviour • SD U OBS in clausal form bevat alleen positieve ab-predicatenVoorbeeld: • ab(x) a1 ... an -> c1 cn • ab(x) a1 ....c1 ... cn (ai en ci zijn geen ab predicaten) • OBS bevat geen ab(..)
Voorbeeld inverter(x) ab(x) [ SA0(x) short(x)] sao(x) out(x)=0 short(x) out(x)=in(x) Voldoet niet aan “IAB-condition”
XOR1 1 XOR2 1 0 1 AND2 OR1 0 AND1 Voorbeeld andg(x) ab(x) out(x)=and(in1(x),in2(x)) xorg(x) ab(x) out(x)=xor(in1(x),in2(x)) org(x) ab(x) out(x)=or(in1(x),in2(x)) Voldoet aan “IAB-condition”
Beperkte kennis van fout gedrag LKAB: limited knowledge of abnormal behaviour Gebruikte notatie: D(Cp,Cn), • Cp is set van ab(.), • Cn is set van ab(.) • diagnose is set van foute componentendiagnose definitie:SD U OBS U {ab(c) | c COMP\ } U {ab(c) | c } is consistent • diagnose definitie:Cp = , Cn = COMP\ SD U OBS U {D(Cp,Cn)} is consistent
Beperkte kennis van fout gedrag LKAB: limited knowledge of abnormal behaviour • c COMP, c Cp, c CnSD U OBS U {ab(c)} is consistent ENSD U OBS U {D(Cp,Cn)} is consistent DANSD U OBS U {D(Cp+c,Cn)} is consistent • idee: er is te weinig kennis over foutgedrag om de diagnose Cp+c onmogelijk te maken.
LKAB-aanname • Als (SD,OBS,COMP) aan de IAB-assumptie voldoet dan voldoet het ook aan de LKAB-assumptie • als LKAB-assumptie voldoet en is een diagnose, en SD U OBS U ab(c) is consistentdan is +c ook een diagnose SD U OBS U {D(+c,comp\(+c))} is consistent • intuitie: als je niet kunt bewijzen dat een component zich normaal gedraagt, dan geldt de minimaal diagnose hypothese
Samenvatting • minimale-diagnose-hypothese • geldt niet altijd • diagnose is te characteriseren mbvimplicates, implicanten • de kernel-diagnoses representeren alle diagnoses i.t.t. de minimale diagnoses • kernel-diagnoses zijn ook minimaal (maar op een iets andere manier) • als er alleen positieve conflicten zijn dan • minimale diagnoses = kernel diagnoses • minimale-diagnose-hypothese geldt
Samenvatting • Als LKAB-conditie op SD geldt dan geldt de minimale-diagnose-hypothese • Als IAB-conditie geldt dan geldt ook LKAB-conditie
Volgend college: • Algoritme • Artikel van R. Reiter:A theory of diagnosis from first principles