college 7 : covering theorie (deel 2)
Post on 11-Jan-2016
28 Views
Preview:
DESCRIPTION
TRANSCRIPT
MBR7 2002 AtT 1
College 7 : covering theorie (Deel 2)
model MAB-diagnose:
College 6: Covering theorie
College 7: Algoritme voor covering theorie
werkelijksysteem
model abnormaal
gedrag
geobserveerdgedrag
voorspeldgedrag
match
observeren
voorspellen
MBR7 2002 AtT 2
Effects en causes (HERHALING)
• verzameling effecten mogelijk veroorzaakt door di
• verzameling mogelijke oorzaken van mi
causes(mi): {dj|<dj,mi> C}
effects(di): {mj|<di,mj> C}
MBR7 2002 AtT 3
Effects & causes (HERHALING)
• verzameling effecten mogelijk veroorzaakt door D
effects(D): di D effects(di)
• verzameling mogelijke oorzaken van M
causes(M): mi M causes(di)
MBR7 2002 AtT 4
Oplossing van diagnose probleem (HERHALING)
Vier aspecten van
"parsimonious covering theory":
(1) "cover" van de manifestatie
(2) keuze voor minimaliteit (parsimony)
(3) definitie van een verklaring voor de manifestaties
(4) definitie van oplossing
MBR7 2002 AtT 5
Gewenste eigenschappen van covering-algorithme:
Constructief: construeer een verklaring door gebruik van relatie Creden: – aantal mogelijke verklaringen is |2D| !!– meeste verklaringen zijn irrelevant– aantal verklaringen van een gegeven
probleem is relatief klein
Sequentieel:M+ wordt over de tijd aangeleverd
MBR7 2002 AtT 6
Onderwerpen
• Generator & generator setvoor representatie van diagnoses
• operatoren--> update van diagnoses bij nieuwe manifestaties
• algoritme in termen van generatoren enoperatoren
MBR7 2002 AtT 7
Generator
• Generator GI (g1, g2, …., gn)
– gi D
– gi’s zijn paarsgewijs disjunct:
– gi ≠ leeg
– representeert aantal klassen:[GI] = {{d1,d2,…,dn} | di in gi}
• Voorbeeld:GI=({d1},{d2,d3},{d4})[GI]={{d1,d2,d4},{d1,d3,d4}}
MBR7 2002 AtT 8
Generator
Dus:
• GI is verzameling van disjuncte verzamelingen van disorders
• [GI] is een cartesian product
MBR7 2002 AtT 9
Verklaringen
• Generator gebruiken voor representatie van mogelijke verklaringen
• 1 generator is vaak niet voldoende
• nodig: set van generatoren
MBR7 2002 AtT 10
Generator set
• Compacte representatie van verklaringen
• G = {G1, G2, …., Gn}
• GI zijn generators
• generators mogen niet dezelfde verklaringen genereren:[GI] [GJ] = { }
• Klassen (verklaringen) gegenereerd door G:[G] = [G1] U [G2] … U [Gn]
MBR7 2002 AtT 11
Voorbeeld
d1 d2 d3 d4 d5 d7 d8 d9d6
m1 m2 m3 m4 m5 m6
causes(m1) = {d1,d2,d3,d4} causes(m2) = {d5,d6,d7,d9}causes(m3) = {d2,d3,d5,d6} causes(m4) = {d1,d2,d8}causes(m5) = {d7,d8,d9} causes(m6) = {d2,d4,d8}
MBR7 2002 AtT 12
Voorbeeld
• M+ = {m1,m4,m5}• 8 subset-minimale oplossingen representeren m.b.v. generatorset• G={G1,G2} G1=({d3,d4},{d8}) G2=({d1,d2},{d7,d8,d9}) d3 en d4 zijn concurerende hyp’s in de context van d8 G1 representeert 2 verklaringen, G2 representeert 6 verklaringen
MBR7 2002 AtT 13
Voorbeeld
keelonsteking griep longontsteking asthma
keelpijn hoesten koorts kortademigheid
MBR7 2002 AtT 14
Voorbeeld
Diagnose-probleem: M+ = {keelpijn, kortademigheid}
• generator g voor DP: {{keelontsteking,griep},{longontsteking,asthma}}
• de gegenereerde klassen [g]:
{{keelontsteking,longontsteking}, {keelontsteking,asthma}.
{griep,longontsteking},
{griep,asthma}} irredundante oplossingen voor DP
MBR7 2002 AtT 15
Generator & klassen
• Verschillende generator-sets kunnen dezelfde klassen genereren
• Diagnose-probleem:M+ = {keelpijn,kortademigheid,hoesten}
• G1= {({keelontsteking},{longontsteking}), ({griep},{longontsteking,asthma})}
• G2= {({longontsteking},{keelonsteking,griep}), ({griep},{asthma})}
• G3= {({longontsteking},{keelonsteking}), ({longontsteking},{griep}), ({griep},{asthma})}
MBR7 2002 AtT 16
Operatoren
Idee:
• sequentiele diagnose:manifestaties komen sequentieel
• hypotheses representeren met generator-sets
• gebruik `operatoren’ om set van hypotheses te updaten bij nieuwe manifestatie
MBR7 2002 AtT 17
Operatoren
• division operator (delingsoperator):selectie van de hypotheses die ook covers zijn voor de nieuwe manifestatie
• residu operator:selectie van de hypotheses die geen covers meer zijn voor de nieuwe manifestatie
• augmented residual:vermeerdert de “residual” zodanig dat er nieuwe covers ontstaan
MBR7 2002 AtT 18
Division operator
Div(GI,H1) levert een generator-set Q:• GI is generator:
GI = (g1,g2,…,gn)• H1 is subset van D
(bijv. causes(mj))• Q = {Qk | Qk is een generator}• Qk = (qk1, qk2,…)
Then: qki := if i<k then gi - H1 if i=k then gi H1
if i>k then gi
MBR7 2002 AtT 19
Division operator• Q1 = (q11,q12,…)
q11: g1 H1
q12: g2
q13: g3 etc.• Q2 = (q21,q22,…)
q21: g1 - H1
q22: g2 H1
q23: g3
q24: g4 etc.• Q3 = (q21,q22,…)
q31: g1 - H1
q32: g2 - H1
q33: g3 H1
q34: g4 etc.
MBR7 2002 AtT 20
Division operator
• iedere QI bevat een subset van H1
(nl. qkk: gk H1)• gegenereerde klasse doorsnede H1 is
nooit leeg• gj - H1 zorgt ervoor dat de nieuwe
generatoren [Qk] niet dezelfde klassen (verklaringen) genereren.q11: g1 H1
q21: g1 - H1
--> dus in het eerste element verschillend
MBR7 2002 AtT 21
Voorbeeld division operator
• M+ = {m1,m4,m5}• G1 = ({d3,d4},{d8})• H1 = causes(m3) = {d2,d3,d5,d6}• Q1 = ({d3},{d8})
• Q2 = ({d4}, ….
• Division van QG1 met H1 is {({d3},{d8})}
{d3,d4} doorsnede H1, g2
{d8} doorsnede H1--> geen generator!{d3,d4} - H1
MBR7 2002 AtT 22
Voorbeeld division operator
• M+ = {m1,m4,m5}
• G2 = ({d1,d2},{d7,d8,d9})
• H1 = causes(m3) = {d2,d3,d5,d6}
• Q1 = ({d2},{d7,d8,d9})
• Q2 = ({d1}, ….
• Division van QG2 met H1 is {({d2},{d7,d8,d9})}
{d1,d2} doorsnede H1
{d7,d8,d9} doorsnede H1
--> geen generator!{d1,d2} - H1
MBR7 2002 AtT 23
Voorbeeld
• `Oude’ generator set voor M+: {({d3,d4},{d8}), ({d1,d2},{d7,d8,d9})}
• Nieuwe generator set voor M+ m3: {({d3},{d8}), ({d2},{d7,d8,d9})}
{d3,d8}, {d1,d7}, {d2,d7}
{d4,d8}, {d1,d8}, {d2,d8}
{d1,d9}, {d2,d9}zijn ook covers van m3
MBR7 2002 AtT 24
Generalisatie van division operator
• DiscoverSet = div(Generator)
• generalisatie: DiscoverSet = div(GeneratorSet)
div(G,H1) = GI G div(GI,H1)
div(G,H1) en div(GI,H1) leveren beide een generatie-set op
MBR7 2002 AtT 25
Division operator
Lemma:GI: generator, G: generator set
• div(GI,H1) is een generator set[div(GI,H1)]={E in [GI]| E H1 ≠ { } }
• div(G,H1) is een generator set[div(G,H1)]={E in [G]| E H1 ≠ { } }
M.a.w.: de nieuwe H1 wordt ook gegenereert na divisie door H1
MBR7 2002 AtT 26
Eigenschappen
• [div(GI,H1)] is subset van [GI] (meer manifestaties -> minder mogelijke verklaringen)
• iedere E (explanation) uit [div(GI,H1)] bevat minstens 1 element uit H1
• iedere E uit [div(G,H1)] bevat minstens 1 element uit H1
MBR7 2002 AtT 27
merk op:
• Divisions leveren generator sets op geen duplicaten van klassen
• Nuttig voor oplossen van sequentiele diagnostisch probleem
Idee: • Observaties M+
• mogelijke verklaringen [G]
• nieuwe observatie mj
• mogelijke verklaringen voor M+ mj div(G,causes(mj))
MBR7 2002 AtT 28
Residual operator
• representatie van klassen uit [G] die geen cover zijn voor M+ en mj
• nieuwe generator:(g1-H1, g2-H1, g3-H1,…,gn-H1)generatoren die geen element met H1 gemeen hebben.NB: als gi-H1 = leeg, dan nieuwe generator = leeg
MBR7 2002 AtT 29
Voorbeeld
• G1=({d3,d4},{d8});
• G2=({d1,d2},{d7,d8,d9})
• res(G1, causes(m3)) =res(G1,{d2,d3,d5,d6}) = ({d4},{d8})
• res(G2,{d2,d3,d5,d6}) = ({d1},{d7,d8,d9})
MBR7 2002 AtT 30
Residual operator
• res(G,H1) = G1 G res(G1,H1)
Lemma:
GI: generator, G: generator set
• res(GI,H1) is een generator set[res(GI,H1)]={E [GI] | E H1 is leeg }
• res(G,H1) is een generator set[res(G,H1)]={E in [G] | E H1 is leeg}
MBR7 2002 AtT 31
Partities
• [res(GI,H1)] en [div(GI,H1)] zijn partities van GI
• [res(G,H1)] en [div(G,H1)] zijn partities van G
MBR7 2002 AtT 32
Verdere generalisaties
• divisions met een generator (i.p.v. disrorder set H)
• divisions met een generator set
• residual met een generator (i.p.v. disorder set H)
• residual met een generator set
MBR7 2002 AtT 33
Operator augmented residual
• uitbreiding van de residual operator
• augmented residual (augres):vermeerdert de “residual” zodanig dat er nieuwe covers ontstaan
• augres(GI,H1)=nieuwe generator:(g1-H1, g2-H1, g3-H1,…,gn-H1,A)A = H1 - Union gi
H1=causes(mj)
MBR7 2002 AtT 34
Voorbeeld
• Generator set voor M+: {({d3,d4},{d8}), ({d1,d2},{d7,d8,d9})}
• augres(G1,H1) =augres({({d3,d4},{d8}), {d2,d3,d5,d6}) ={({d4},{d8},{d2,d5,d6})}
• augres(G2,H1) =augres({({d1,d2},{d7,d8,d9}),{d2,d3,d5,d6}) ={({d1},{d7,d8,d9},{d3,d5,d6})}
• augres(G,H1)= {({d4},{d8},{d2,d5,d6}), ({d1},{d7,d8,d9},{d3,d5,d6})}
MBR7 2002 AtT 35
Samenvatting
• concept van generator set voor representatie van oplossingen voor diagnostisch probleem
• operatoren voor manipuleren van generator sets tijdens het oplossen van het diagnose probleem
MBR7 2002 AtT 36
Samenvatting
• M+ aanwezig
• G1 representeert alle mogelijke covers voor M+
nieuwe manifestatie mj bekend
• div(G1,causes(mj)) zijn de covers uit G1 die ook covers zijn voor M+ U mj
• res(G1,causes(mj)) zijn de covers voor M+ die niet mj verklaren
• augres(G1,causes(mj)) zijn de covers voor M+ die niet mj verklaren, vermeerdert zodanig dat ze mj wel verklaren
MBR7 2002 AtT 37
Diagnose-proces
• Sequentiële diagnose
• Subset-minimale verklaringen voor M+ U Mj div(G1,causes(mj)) + augres(G1,causes(mj))
• augres operator genereert soms enkele redundante covers
• minimale verklaringen zijn een subset van div(G1,causes(mj)) U augres(G1,causes(mj))
MBR7 2002 AtT 38
Voorbeeld
oorontstekingontstekingamandelen
keel-ontsteking
asthmalongontsteking
oorpijn keelpijn koorts kortademig
hoesten
MBR7 2002 AtT 39
Voorbeeld
• Diagnose probleem: M+ = {keelpijn,kortademig,koorts}
• Generator set:{({keelontsteking},{asthma,longontsteking}), ({ontsteking amandelen},{longontsteking})}
• H1 = causes(oorpijn)
= {oorontsteking, ontsteking amandelen}
MBR7 2002 AtT 40
Voorbeeld
• [div(G,H1)] = {{longontsteking, ontsteking amandelen}}
• [augres(G,H1)] = {{keelontsteking,asthma,oorontsteking}, {keelontsteking,asthma,ontsteking amandelen},
{keelontsteking,longontsteking,oorontsteking}, {keelontsteking,longontsteking,ontsteking
amandelen}}
• {{longontsteking, ontsteking amandelen}} {keelontsteking,longontsteking,ontsteking amandelen}}
MBR7 2002 AtT 41
Algoritme
• manifestaties komen sequentieel
• constructie van nieuwe hypotheses op basis van eerdere hypotheses
MBR7 2002 AtT 42
Algoritme
• revise(G,H1) = F U res(Q,F)Waarbij:– F = div(G,H1) – Q = augres(G,H1)
begin hyp = { {} } while MoreManifestations do m = NextManifestation
hyp = revise(hyp, causes(m)) end-while
return(hyp)end
MBR7 2002 AtT 43
Verwijderen van redundante oplossingen
• QL: “nieuwe covers” verkregen met “augmentation operator”
• QJ: “oude covers” die ook de nieuwe manifestatie mnieuw bedekt.
• Res(QL,QJ)
= alle subsetminimale diagnoses voor Morg + mnieuw
MBR7 2002 AtT 44
Voorbeeld
mnieuw causes(mnieuw) hypothesis
M1 {d1,d2,d3,d4} {({d1,d2,d3,d4})}
M4 {d1,d2,d8} {({d1,d2}), ({d3,d4},{d8})}
M5 {d7,d8,d9} {({d1,d2},{d8,d8,d9}), ({d3,d4},{d8})
MBR7 2002 AtT 45
Volgende keer:
Diagnose met correctmodellen
top related