Zustandsschätzung
Vorbemerkungen
Bayessches Gesetz und erweiterte Konditionierung
⇒P(a∣b)⋅P(b)=P(a,b)=P(b∣a)⋅P(a)P(b∣a)=P(a)P(a∣b)⋅P(b)Erweiterte Konditionierung:
P(b∣a,c)⋅P(a∣c)⋅P(c)P(a,c)=P(a,b,c)=P(a∣b,c)⋅P(b∣c)⋅P(c)P(b,c)⇒P(b∣a,c)⋅P(a∣c)=P(a∣b,c)⋅P(b∣c)(△)⇒P(b∣a,c)=P(a∣c)P(a∣b,c)⋅P(b∣c)Notation zu Abhängigkeit vom Eingang
Abhängigkeit der Systemmatrizen Ak (Übergangsmatrix) und Bk (Messe-/Beobachtungsmatrix) von Eingang uk (4 dimensionale Felde):

Schreibweise:
===A(k,uk,Xk+1=xk+1,Xk=xk)A(k,uk,xk+1,xk)Ak(uk,xk+1,xk)Akuk(xk+1,xk)“Zum Zeitpunkt k ist der aktuelle Zustand Xk=xk. Was ist die Wahrscheinlichkeit vom den nächsten Zustand Xk+1=xk+1, wenn der Eingang uk ist?”
Zeitinvariante Fall:
A(uk,xk+1,xk)=Auk(xk+1,xk)Zustandsschätzung
Ziel
Rekonstruktion des internen Zustands aus Messungen und Eingängen (Annahme: Ak,Bk bekannt)

Interner Zustand Schätzer
Gegeben
Eingänge uk,k=0,…,ku
Messungen yk,k=1,…,ky
Gesucht: Rekonstruktion des Zustands
x^k,k=1,…,kx (alle interne Zustände)
x^kx (der letzte Zustand)
Bsp Darstellung

Paradigma: Nutzung aller Daten
Zwei wichtige Fälle/Phasen
Prädiktion (ku+1=kx>ky)
Eine Prädiktion für den aktuellen Zustand basierend auf den letzten Zustand machen
Filterung (ku+1=kx=ky)
Mit der beobachtbaren Messungen die Prädiktion updaten/verfeinern
Prädiktion
Allgemein
Gegeben
Schätzung des Zustands zu einem Zeitpunkt m, welche gesamte Eingang- und Messhistorik bis dahin enthält
Eingänge uk für k>m
Systemmatrizen Ak für k>m
Interpretation
Ab Zeitpunkt m+1 fehlen Messungen. Wie entwicklt sich System rein auf Basis des Systemmodells?
Gesucht
Prädiktion zu späteren Zeitpunkt k>m für gegeben Eingänge bis k−1
P(xk∣y1:m,u0:k−1)für xk∈{1,…,N}
Beispiel:

Es ist wichtig, dem Bayessches Gesetz mit der erweiterten Konditionierung zu verwenden
P(a,b∣c)=P(a∣b,c)⋅P(b∣c)(∗) Zum Zeitpunkt k>m:
===(∗)=P(xk∣y0:m,u0:k−1)P(xk∣y0,y1,⋯,ym,u0,u1,⋯uk−1)∣Marginalisierungxk−1=1∑NP(xk,xk−1∣y0:m,u0:k−1)xk−1=1∑NP(xk∣xk−1,y0:m,u0:k−1)P(xk−1∣y0:m,u0:k−1)∣Markovxk−1=1∑NU¨bergangswachrshheinlicheit P(xk∣xk−1,uk−1)⋅Scha¨tzung fu¨r k−1P(xk−1∣y0:m,u0:k−2) (Rekursiv nach vorne) (Die Summe beschreibt eine Vektor-Matrix-Multiplikation.)
Anordnen der Einzelwahrscheinlichkeit in Vektoren:
ηk∣1:mx=P(xk=1∣y1:m,u0:k−1)⋮P(xk=N∣y1:m,u0:k−1)ηk−1∣1:mx=P(xk−1=1∣y1:m,u0:k−2)⋮P(xk−1=N∣y1:m,u0:k−2)Rekursive Prädiktion:
Beginn: Schätzvektor ηm∣1:mx
Rekursion: für k>m
ηk∣1:mx=Ak⊤ηk−1∣1:mxSpezialfall: Einschrittprädiktion (k=m+1)
Konkretes Beispiel
Aufspaltung der Verbundverteilung für k=0,1,2,3:
=(∗)=Markov=Markov==P(x0:3∣u0:2)P(x3∣x0:2,u0:2)⋅P(x0:2∣u0:2)P(x3∣x2,u2)⋅P(x2∣x0:1,u0:2)⋅P(x0:1∣u0:2)P(x3∣x2,u2)⋅P(x2∣x1,u1)P(x1∣x0,u0:2)⋅P(x0∣u0:2)P(x3∣x2,u2)⋅P(x2∣x1,u1)⋅P(x1∣x0,u0)⋅P(x0)Au2(x2,x3)⋅Au(x1,x2)⋅Au0(x0,x1)⋅η0x(x0)Verbundverteilung für k=1,2,3:
P(x1:3∣u0:2)=x0=1∑2P(x0:3∣u0:2)==Au2(x2,x3)P(x3∣x2,u2)⋅=Au1(x1,x2)P(x2∣x1,u1)⋅=P(x1∣u0)=η1∗(x1)x0=1∑2P(x1∣x0,u0)⋅P(x0)P(x1:3∣u0:2) bedeutet: P indiziert mit dem 3-dimensionalen Indexvekter (1,2,3)⊤. Jede von dem kann 2 Wer4te annehmen.
η1x(x1)=∑x0=12Au0(x0,x1)⋅η0x(x0)=Au0(x0=1,x1)=P(x0=1)P0+Au0(x0=2,x1)=P(x0=2)(1−P0)(Marginalisierung)={a1⋅pb+a2(1−p0)(1−a1)p0+(1−a2)(1−p0)x1=1x1=2
P(x3∣u0:2)====x2=1∑2x1=1∑2P(x1:3∣u0:2)x2=1∑2Au2(x2,x3)=P(x1∣u0:1)=η2x(x1)x1=1∑2(x1,x2)η1x(x1)x2=1∑2Au2(x2,x3)⋅η2x(x2)η3x(x3)
η3x=Au2⊤⋅=Au1⊤⋅η1xη2x=Au2⊤⋅(Au1⊤⋅=Au0⊤⋅η0xη1x)=Au2⊤⋅(Au1⊤⋅(Au0⊤⋅η0x)) (rekursive Berechnung) Prädikition der Messungen für k=1,2,3:
=(∗)====P(y1,y2,y3,x1:3∣u0:2)P(y1:3∣x1:3,u0:2)⋅P(x1:3∣u0:2)P(y1:3∣x1:3)P(x1:3∣u0:2)P(y1∣x1:3)P(y2∣x1:3)P(y3∣x1:3)P(x1:3∣u0:2)P(y1∣x1)⋅P(y2∣x2)⋅P(y3∣x3)P(x1:3∣u0:2)B(x1,y1)B(x2,y2)B(x3,y3)P(x1:3∣u0:2)Prädikition Messung für k=3:
=(∗)==P(y3,x3∣u0:2)P(y3∣x3,u0:2)⋅P(x3∣u0:2)P(y3∣x3)⋅P(x3∣u0:2)B(x3,y3)⋅η3x(x3)Filterung (Wonham Filter)
Wie sieht P(xk∣y1:k,u0:k−1) auf Basis der Prädiktion P(xk∣y1:k−1,u0:k−1) aus?
Reminder
P(b∣a,c)⋅P(a∣c)=P(a∣b,c)⋅P(b∣c)(△) ==(△)=P(xk∣y1:k,u0:k−1)P(bxk∣ayk,cy1:k−1,u0:k−1)P(yk∣y1:k−1,u0:k−1)P(yk∣xk,y1:k−1,u0:k−1)⋅P(xk∣y1:k−1,u0:k−1)NormalisierungskonstantP(yk∣y1:k−1,u0:k−1)P(yk∣xk)Likelihood⋅P(xk∣y1:k−1,u0:k−1)Einschritt-Pra¨diktionP(yk∣xk)=Bk(xk,yk)(Element aus Messmatrix)= Margin. =(∗)=P(yk∣y1:k−1,u0:k−1)xk=1∑NP(yk,xk∣y1:k−1,u0:k−1)xk=1∑NP(yk∣xk,y1:k−1,u0:k−1)⋅P(xk∣y1:k−1,u0:k−1)xk=1∑NP(yk∣xk)⋅P(xk∣y1:k−1,u0:k−1)ηk∣1:k−1x=Ak⊤ηk−1∣1:k−1xFilterung in Vektor-Matrix-Form:
Für yk=m, Bilde eine Diagonalematrix diag(B(:,m)) mit Spalte des Messmatrix B(:,m)
ηk∣1:kx=yk=m1NTdiag(B(:,m))⋅ηk∣1:k−1xdiag(B(:,m))⋅ηk∣1:k−1x=B(:,m)⊤⋅ηk∣1:k−1xB(:,m)⊙ηk∣1:k−1x- 1N: Einsvektor
- ⊙: Elementwise-Multiplikation
Das ist ein komplett rekursives Filter → Wonham Filter
Beispiel siehe hier.