Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder...
Transcript of Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder...
![Page 1: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/1.jpg)
1
1
Modellierung Bewegter Objektein Dynamischen Umgebungen
Daniel Göhring08.02.2006
2
Motivation
• Wissen über Position von Objektennotwendig für Handlunsplanung und Kooperation
![Page 2: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/2.jpg)
2
3
Die Sony-Liga
4
Die Roboter
![Page 3: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/3.jpg)
3
5
Das Spielfeld
6
Beschränkungen
• Begrenzte Rechenleistung
• Nur kleiner Ausschnitt der Umwelt wahrnehmbar
• Verrauschte Sensordaten
![Page 4: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/4.jpg)
4
7
Schwierigkeiten in der Bildverarbeitung (Auszug)
8
Fehler durch geringe Kamerauflösung
![Page 5: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/5.jpg)
5
9
Grundlagen der Objektmodellierung
• Bayesfilter
• Satz von Bayes:
• Objektzustand anhand der Sensordaten vorhersagen– aber nicht aller Sensordaten
aus der Vergangenheit
10
Hidden Markov Modell
![Page 6: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/6.jpg)
6
11
Satz von Bayes
12
Satz von Bayes (2)
Resultat: Man erhält eine Berechnungsvorschrift in zwei Schritten:
Vorhersage (Prediction) und Aktualisierung (Update)
![Page 7: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/7.jpg)
7
13
Repräsentation des Objektzustandes
• Gaußverteilung:
14
Veranschaulichung eines Gauß-Rotationskoerpers
![Page 8: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/8.jpg)
8
15
Gaußfunktionen
• Fläche unter Funktion ist immer 1,• Abgeschlossenheit bezüglich Addition und
Multiplikation• Eignung bei weißem Rauschen• effizientee Berechnung und
Repräsentation der • Parameter ist die Kovarianzmatrix und der
Mittelwert
16
Kovarianzmatrix Berechnung
• 4 Hypothesen
• zwei Dimensionen: Position: x,y
![Page 9: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/9.jpg)
9
17
Beispielverteilung
-1-1
1
1
H1 = (2, 2)T
H2 = (-2, -2)T
H3 = (-1, 1)T
H4 = (1, -1)T
18
Mittelwert
HM = (0, 0)T
HM = 1/n * Σ Hi
-1-1
1
1
H1 = (2, 2)T
H2 = (-2, -2)T
H3 = (-1, 1)T
H4 = (1, -1)T
![Page 10: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/10.jpg)
10
19
Kovarianzmatrix
S = 1/n * Σ (HM - Hi) * (HM - Hi)T
• Auf der Hauptdiagonale befinden sich die Varianzen
von x und y, auf Nebendiagonale die Kovarianzen.
2.5 1.5
S = ( )
1.5 2.5Werte der Kovarianzmatrix können nicht direkt in Werte der Ellipse (Rotation, Halbachsenausdehnung) umgerechnet werden.
Kovarianzmatrix ist immer symmetrisch.
20
Zur Vollständigkeit:Korrelationsmatrix R
• jedes Element ri,j aus R berechnet sichbei gegebenen Elementen ci,j aus S als:
ri,j = ci,j *ci,j / (ci,i * cj,j)
1 0.36
= ( )
0.36 1
![Page 11: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/11.jpg)
11
21
Kalmanfilter
• dient der Filterung von Unimodalverteilungen
• Normalverteilungen vorausgesetzt• Ideal für Zeitdiskrete, lineare Prozesse• Minimieren den quadratischen Fehler zw.
Originaldaten und Abschätzung• Verwendung der ersten und zweiten
Momente
22
Berechnung
• Aus aktuellem, oder Initialzustand wird neuer Zustand vorausberechnet (prediction)
• Dieser a-priori-Zustand wird danach durch Vergleich mit den Sensordaten abgeglichen, der modellierte Objektzustand angepasst
![Page 12: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/12.jpg)
12
23
Arbeitsweise Kalman1.Schritt:
Vorausberechnung der neuen Ballposition aus der alten Position (Modellierung)
2.Korrektur des berechneten Wertes durch die Messung
24
Das Kalmanmodell1. Vorausberechnung (Prediction):
xk = Axk-1 + Buk-1 + wk-1mit A gelangt man vom Zustand in k-1 zum Zustand in kB repräsentiert die Kontrollinputmatrix
2. Messung (Measurement):zk = Hxk + vk
H beschreibt den Zusammenhang zwischen realem und gemessenem Zustand
wk , vk repräsentieren das Prozess- bzw. Messungsrauschen (weiß, normalverteilt)
![Page 13: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/13.jpg)
13
25
Kalmanmatrizen• Q repräsentiert die Prozessfehlerkovarianzen, je kleiner
die Werte von Q, je stabiler arbeitet der Filter• R repräsentiert die Messfehlerkovarianzen, je kleiner die
Werte von R, je reaktiver arbeitet der Filter• Pk repräsentiert die Diskrepanz zwischen Messung und
Berechnung in k, jeweils a priori und a posteriori, wird für jeden Schritt neu berechnet
Q, R müssen dem Modell mitgeteilt werden, beiben const., xk wird Anfangs auf zk initialisiert
26
Beispiel für Messfehlerkovarianzmatrizen R
- Entfernungsmessung für den Roboter schwieriger als Abschätzung des Winkels
- Korrelation der einzelnen Messgrößen beachten
![Page 14: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/14.jpg)
14
27
R klein
Q groß
R groß
Q klein
Auswirkung von Q bzw. R auf die Filterwirkung
28
BerechnungsschleifePrediction:
x-k = Axk-1 + Buk-1
P-k = APk-1AT + Q //a-priori Fehlerkovarianzmatr.
Update:
Kk = P-kHT(HP-
kHT+R)-1
xk = x-k + Kk(zk – Hx-
k)Pk = (I – KkH)P-
k //a-post. Fehlerkovarianzmatr.
K wird gemeinhin als das Kalmangain bez.
![Page 15: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/15.jpg)
15
29
Vor-/Nachteile
• Messfehlerkov.-mat. R ist leicht aus Eingangsdaten zu ermitteln
• für verschiedene Ballentfernungen • Prozessfehlerkov.-matrix hingegen
schwierig • Deckenkamera notwendig als Kontrolle
von außen• keine Repräsentation von
Negativinformation möglich
30
Probleme (2)
• Messfehler nicht konstant– Entfernungsfehler steigt quadratisch mit
wachsender Ballentfernung– Winkelfehler steigt bei Kopfbewegung
• also Messfehlerkovarianzmatrix R variabel gestalten
Wdh.: Update: Kk= P-kHT(HP-
kHT+R)-1
![Page 16: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/16.jpg)
16
31
Implementationsbeispiel
• Eindimensionaler Kalmanfilter für x:
Bsp.: Für x:Sx
- = Sx + VxPx
- = Px + QxKx = Px
- * (Px- + Rx)-1
Sx = Sx- + Kx * (Zx – Sx
-)Px = (I - Kx) * Px
-
32
Vor-/Nachteile• sehr effiziente Berechnung auch bei höherdimensionalen
Räumen• Aber nur lineare Prozesse, Erweiterungen: Extended KF
(Linearisierung durch Taylorpolynome),Uncented Kalmanfilter, weitere statistische Betrachtungen zur Linearisierung nichtlin. Prozesse
• ein Kalmanfilter kann nur ein einzelnes Objekt modellieren (unimodalverteilungen)
• Multihypothesenmodelle, beliebige Verteilungen nur schwer oder gar nicht darstellbar
![Page 17: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/17.jpg)
17
33
Arbeitsweise Schematisch
34
Anwendungsbeispiel Multiagentenmodellierung
Quelle: Dietl, Gutmann (2002)
3 Agenten fusionieren ihr Wissen über die Ballposition
![Page 18: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/18.jpg)
18
35
Kalmanfilter für die Fusion von Belief-Funktionen
36
Weitere Möglichkeiten zur Objektmodellierung
• Rasterbasierte Verfahren – keine Einschränkung für die Verteilungsfunktion, diskret, begrenzte Auflösung
• Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese
• Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen werden durch Partikelverteilungen repräsentiert
• Kombinationen aus verschiedenen Verfahren für verschiedene Parameter des Zustandsraumes – Rao-Blackwellized Partikelfilter
![Page 19: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/19.jpg)
19
37
Monte Carlo Partikelfilter
• Jeder Partikel (entspricht Hypothese) hat Position und Wahrscheinlichkeit
• Anzahl der Partikel in einem bestimmten Gebiet gibt Auskunft über den Wert der Wahrscheinlichkeitsdichtefunktion an dieser Stelle
38
Beispiel für Konvergenz der Partikel
![Page 20: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/20.jpg)
20
39
Ablauf
• Geg.: Partikelverteilung• Propagierung der Partikel – Prediction
– z.B. Propagierung der Geschwindigkeit und des Ortes nach Zeit t, dabei leichtes verrauschen
• Für jeden Evidence und für jeden Partikel• Berechnung der Likelihoods für jeden Partikel
– vergleiche für jede Hypothese, was gesehen wurde mit dem was hätte gesehen werden müssen
40
Ablauf (2)
• Resampling– Je nach Bewertung (Likelihood) werden die
Partikel in den nächsten Zustand propagiert
![Page 21: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/21.jpg)
21
41
Clusterung der Partikel zu Areas of Interest
42
Stand der Forschung
• Unterteilung des Zustandsraumes in Unterräume, die ggf. analytisch bzw. durch Repräsentanten lösbar sind
![Page 22: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/22.jpg)
22
43
Maß für die Konvergenz• Entropie H gibt Auskunft über die Konvergenz
der Partikelverteilung
• Vorgehen, Rasterung des Spielfeldes in n Unterbereiche
• H = ∑ -pi * log pi
Wobei pi die Anzahl der Partikel im Bereich i dividiert durch Gesamtpartikelzahl ist (relative Häufigkeit)
44
Darstellung als Bayesnetz
![Page 23: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/23.jpg)
23
45
Berechnung der Hauptachsen einer statistischen Verteilung
• Annahme –Normalverteilung
• Man moechte Betrag und Richtung der Hauptachsen wissen
• Ziel: Maximale Verringerung der Unsicherheit
46
1. Mittelwert
HM = (0, 0)T
HM = 1/n * Σ Hi
-1-1
1
1
H1 = (2, 2)T
H2 = (-2, -2)T
H3 = (-1, 1)T
H4 = (1, -1)T
![Page 24: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/24.jpg)
24
47
2. Berechnung der Eigenwerte für x und y
Ausgangsmatrix:2.5 1.5
• S = ( )1.5 2.5
Gesucht: alle Eigenwerte λ, wobei gilt: det (S - I λ) = 0
48
2. Berechnung der Eigenwerte2.5 - λ 1.5
• det ( ) = 0, 1.5 2.5 - λ
• Also (2.5 - λ)2 – 1.52 = 00 = λ2 - 5λ + 4
• Eigenwerte: λ1 = 2.5 + 1.5 = 4 λ2 = 2.5 - 1.5 = 1
![Page 25: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/25.jpg)
25
49
3. Berechnung der Eigenvektoren
• Einsetzen der Eigenwerte λ in die Kovarianzmatrix S, größte Eigenwerte zuerst.
(S - I λ) * V = 0
50
3. Berechnung der Eigenvektoren (2)
Berechnung des 1. V, λ =4:
-1.5 * V1x + 1.5 * V1y = 01.5 * V1x - 1.5 * V1y = 0
V1x = V1y0.707
Eigenvektor normiert (Betrag = 1): V1 = ( )0.707
![Page 26: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/26.jpg)
26
51
4. Normierung der Eigenvektoren
-0.707V2 = ( )
0.707EVs sind Zeilen der Transf.-matrixTransformationsmatrix K = (V1, V2)T
0.707 0.707K = ( )
-0.707 0.707
52
5. Transformation (optional)
S’ = K * S * KT
(K ist orthonormal, KT = K-1)
4*0.7 4*0.7 0.7 -0.7S’ = ( ) * ( )
-1*0.7 1*0.7 0.7 0.7
![Page 27: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/27.jpg)
27
53
Transformation (2)
• Nach der Transformation sind die Kovarianzen null
4 0S’ = ( )
0 1
54
Zu Beachten
• Rotationsmatrix hat die Formcos(α) -sin(α)
K = ( )sin(α) cos(α)
Vorzeichen von K können zeilenweise vertauscht werden (Spiegelung der EVs)
• Ellipsenrotation von 200° = 20°, schnellere Erreichbarkeiten (Kosten) beachten
![Page 28: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/28.jpg)
28
55
Nach der Transformation
also:α = arccos(0.707) = arcsin(0.707)= 45°
-1-1
1
1 H1’ = (2.82, 0)TH2’ = (-2.82, 0)T
H3’ = (0, 1.41)T
H4’ = (0, -1.41)T
56
Also
• 45 Grad nach rechts schauen
HM = (0, 0)T
-1-1
1
1
H1 = (2, 2)T
H2 = (-2, -2)T
H3 = (-1, 1)T
H4 = (1, -1)T
![Page 29: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/29.jpg)
29
57
Zusammenfassung
• Schwierigkeiten bei der Objektmodellierung:
• Eingangsdaten verrauscht durch begrenzte Auflösung, unzureichende Farbklassifizierung, verwackelte Kamerabilder durch Laufunruhen,
• Sichtwinkel begrenzt
58
Zusammenfassung (2)
• Objektmodellierung no– Weltmodell– Filterung verrauschter Eingangsdaten– Akkumulierung von Wissen aus
verschiedenen Bildern (z.B. Berechnung der Ballgeschwindigkeit, Selbstlokalisierung)
– Modellierung von Interdependenzen (Abhängigkeiten) verschiedener Objekte der Roboterumgebung
![Page 30: Motivation - informatik.hu-berlin.de · • Multihypothesentracking – viele Kalmanfilter, jeder für eine Hypothese • Partikelfilter: beliebige Wahrscheinlichkeitsdichtefunktionen](https://reader030.fdocument.pub/reader030/viewer/2022020304/5b9f46ce09d3f26e288c960f/html5/thumbnails/30.jpg)
30
59
Zusammenfassung (3)
• Satz von Bayes Grundlage für viele wichtige Filterverfahren
• (Kalman, Monte Carlo)
• Forschung in Richtung Wissensverschmelzung durch verschiedene Agenten
60
• Vielen Dank!