LEERKERN

12.2 Modellen van kennisgebaseerde diagnose

Introductie

Deze paragraaf geeft een preciezer theoretisch beeld van diagnose door het op te vatten als zoekprobleem. In paragraaf 12.2.1 wordt uitgelegd welke zoekruimten bij diagnose een rol spelen. In paragraaf 12.2.2 wordt de eerste taak bij diagnose, het vaststellen van disfunctioneren, onder de loep genomen. Paragraaf 12.2.3 is gewijd aan het genereren en testen van verschillende mogelijke hypothesen.

12.2.1 Zoekruimten voor diagnose

Lees uit Stefik: paragraaf 9.2 (pagina’s 673 tot en met 677).

> Extra uitleg 12.2.1 Mogelijke, voorspelde, geobserveerde en normale waarden

Merk op dat er een preciezere definitie van diagnose wordt gegeven op pagina 676 onder het voorbeeld, die een verbeterde versie geeft van onze werkdefinitie uit paragraaf 12.1. Reparatie is hieruit helemaal weggevallen.

Definitie
Diagnose gaat uit van een computationeel model van een systeem, dat aangeeft wat het systeem onder verschillende omstandigheden zou moeten doen. Als nu het geobserveerde gedrag van het fysieke systeem niet overeenkomt met voorspeld gedrag, is diagnose nodig. Onder de aanname dat het model correct is, probeert het diagnosesysteem de discrepantie tussen observaties en voorspelling te verklaren in termen van defecten in het fysieke systeem (bijvoorbeeld kapotte componenten of ziekten).

Op de pagina’s 675 en 676 introduceert Stefik een voorbeeldsysteem, dat verder in het hele hoofdstuk gebruikt zal worden. Daarom geven we hier wat extra aandacht aan dat systeem. De beide adders (optellers) A1 en A2 voeren optellingen uit waarbij van de binair gerepresenteerde invoer en uitvoer alleen de laatste vijf cijfers weergegeven worden, bijvoorbeeld 30 + 21 = 19. Immers, binair geschreven volgt bij de gewone optelling 11110 + 10101 = 110011, maar omdat het systeem het eerste cijfer wegstreept van die uitkomst, dat een 32-tal representeert, is de uitkomst 10011. Decimaal geschreven volgt dan inderdaad (30 + 21) mod 32 = 19. In het algemeen geldt bij een goedwerkende opteller in het voorbeeldsysteem dus: Out = (In1 + In2) mod 32 (zie figuur 9.3 op pagina 676, de ‘working mode’ van de opteller).

Een opteller kan op drie manieren fout werken (zie figuur 9.3).
– Hij kan kortgesloten (shorted) zijn, de kans daarop is 0,0003.
– Hij kan bij de uitkomst van de optelling de belangrijkste bit (die op de plaats van de 16-tallen) laten vallen. Dan zou kunnen volgen dat 11110 + 10101 = 0011, dat wil zeggen: 3 = (30 + 21) mod 16. De kans op deze fout is 0,0006.
– Er kan een onbekende fout optreden, waarbij het gedrag niet voorspeld kan worden; de kans hierop is 0,0001.

Bij de multipliers (vermenigvuldigers) M1 en M2 gaat het analoog, zie figuur 9.3. Merk op dat een bepaalde foute uitkomst van een component soms aan verschillende soorten fouten kan liggen. Stel bijvoorbeeld dat bij de invoeren 4 en 4 de multiplier M1 uitkomst 0 geeft in plaats van 16. Dit kan dan aan elk van de drie mogelijke fouten van M1 liggen: kortsluiting, het laten vallen van de belangrijkste bit en de onbekende fout.

12.2.2 Abnormaliteiten en conflicten herkennen

Lees uit Stefik: paragraaf 9.2.1 (pagina 677 tot en met 680).

Het vooruitrekenen van invoeren naar uitvoeren met behulp van de gedragsregels van het systeem, zoals dat bij de beschrijving van figuur 9.4 op pagina’s 677 en 678 van Stefik gebeurt, wordt meestal voorwaartse simulatie genoemd.

Figuur 9.4 geeft een voorbeeld van het gebruik van voorwaartse simulatie om te herkennen dat het systeem met de optellers en vermenigvuldigers slecht functioneert. We lopen nu even op de zaak vooruit om te kijken wat er allemaal mis kan zijn met het systeem – dit is het onderwerp van de volgende deelparagraaf 12.2.3. We beperken ons tot de minimale diagnoses die de fout verklaren. Dit betekent het volgende: als de diagnose {A2s}, die zegt dat alleen A2 is kortgesloten, de fout al verklaart, dan schijven we niet ook een ruimere diagnose op zoals {A2s, M1d}.
Hier volgen alle mogelijke minimale diagnoses. Ga zelf na dat de gegeven diagnoses inderdaad de fout verklaren, en dat ze dat op een minimale manier doen.
– Alleen A2 is fout en geeft uitkomst 0. Dit kan op drie manieren gebeuren, wat leidt tot de drie diagnoses {A2s}, {A2d} en {A2u}.
– M1 en M2 zijn allebei fout en geven beide uitkomst 0 door kortsluiting of een onbekende fout.
Dit leidt tot de vier diagnoses {M1s, M2s}, {M1s, M2u}, {M1u, M2s} en {M1u, M2u}.
– A1 en M1 zijn allebei fout en geven beide uitkomst 0 door kortsluiting of een onbekende fout.
Dit leidt tot de vier diagnoses {A1s, M1s}, {A1s, M1u}, {A1u, M1s} en {A1u, M1u}.

Het terugredeneren vanuit uitvoeren of effecten naar invoeren of oorzaken met zogenaamde anti-gedragsregels, zoals dat op pagina 679 van Stefik beschreven wordt, noemt men vaak achterwaartse simulatie.

Op pagina 679 gaat het over voorspellingen waaruit contradicties volgen bij achterwaartse simulatie. Merk op dat de voorspelling over figuur 5 op pagina 678, ‘g zal de waarde 1 hebben als f = 1 en D4 en D5 werken’, een sterkere contradictie tot gevolg heeft dan die Stefik geeft. Met wat propositielogica plus het feit dat 0 geen 1 is, kunnen we namelijk de contradictie afleiden dat ‘gegeven dat g = 0 en f = 1, moet tenminste één van de componenten {D4, D5} kapot zijn.’

> Extra uitleg 12.2.2 Achterwaartse simulatie

> Extra uitleg 12.2.3 Logically incomplete

12.2.3 Hypothesen genereren en testen

Lees uit Stefik: paragraaf 9.2.2 (pagina 680 tot en met 690).

Er staat een fout in figuur 9.9 op pagina 685 van Stefik: Bij "number of components" 10 staat er in de rechterkolom: 210 = 1024. Dit moet natuurlijk zijn: 210 = 1024.

> Extra uitleg 12.2.4 Gesloten en open foutmodellen

> Extra uitleg 12.2.5 Het aantal samengestelde hypothesen

> Extra uitleg 12.2.6 Prior probability

> Opgave 12.2.1

> Opgave 12.2.2

> Opgave 12.2.3