Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D La Corte in Rete
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Alberto Finzi » 4.Robotica Probabilistica - Filtri Bayesiani (parte prima)


Robotica Probabilistica

Rappresentazione dell’incertezza usando la probabilità.

Percezione = stima dello stato (problema stima).
Azione = massimizzazione utilità (teoria decisioni).

Percezione: mappa misure dei sensori nella rappresentazione interna dello stato del robot e dell’ambiente (stato).
Sensori sono rumorosi, l’ambiente è parzialmente osservabile, non prevedibile, dinamico, modello inaccurato etc.

Belief = Probabilità dello stato date azioni ed osservazioni.

Robotica Probabilistica (segue)


Robotica Probabilistica: Stima dello stato

Stima:
Si cerca la stima massima dello stato

X = {x1, x2, … , xm} dato un insieme di misure

Z = {z1, z2, … , zn}

Problema: trovare P(X | Z )

Filtro bayesiano: P(Xt+1 | z1:t+1) a partire da P(Xt | z1:t)

Robotica Probabilistica: Stima dello stato

Filtro bayesiano: P(Xt+1 | z1:t+1,a1:t) da P(Xt | z1:t,a1:t-1)

Localizzazione: X è la posizione

Mapping: X è la mappa

SLAM: X è mappa e posizione

Distinzioni tra azioni e osservazioni.

Distinzioni tra azioni e osservazioni.


Probabilità: Assiomi

Regola 1 (positività):

0 ≤ Pr(A) ≤ 1;

Regola 2 (certezza):

Pr(True) = 1, Pr(False)=0;

Regola 3 (unione):

Pr(A or B) = Pr(A) + Pr(B) – Pr(A and B)

Assiomi Probabilità

Interpretazione insiemistica:

Pr(A or B) = Pr(A) + Pr(B) – Pr(A and B)

Pr(False) ≤ Pr(A) ≤ Pr(True) = 1


Assiomi Probabilità

Conseguenze assiomi probabilità

Pr (A ∨ ¬ A) = Pr (A)+Pr(¬ A) – Pr (A ∧ ¬ A)

Pr(True) = Pr (A)+Pr(¬ A) – Pr (False)

1 = Pr (A)+Pr(¬ A) – 0

Pr (¬ A) = 1 – Pr(A)

Variabili Aleatorie Discrete

X è una variable aleatoria che assume valori nell’insieme numerabile {x1, x2, …, xn}.

P(X=xi), o P(xi), è la probabilità che la variable aleatoria X assuma valore xi.

P( ) è la funzione di distribuzione di probabilità (massa o densità).

E.g.

P (Room) = 〈 0.7, 0.2, 0.08, 0.02 〉

Variabili Aleatorie Continue

X prende valori in un insieme continuo.

p(X=x), o p(x), è la funzione di funzione di densità di probabilità.

Pr (x \in (a,b))=\int_a^b p (x)dx

Gaussiana

p( x)\sim N(\mu, \sigma^2):

P (x)=\frac 1 {\sqrt{2\pi\sigma}}e^{\frac{1(x-\mu^2)}{2~~\sigma^2}}


Variabili Aleatorie Continue (segue)

Multivariata:

p(\mathbf x)\sim N (\mathbf \mu, \Sigma):

p(\mathbf x)=\frac 1 {(2\pi)^{d/2}|\mathbf \Sigma|^{1/2}}e^{-\frac 1 2 \mathbf{( x-\mu)^t \Sigma ^{-1}(x-\mu)}}

Σ è la matrice di covarianza, μ vettore dei valori medi.

Probabilità Congiunta e Condizionata

P(X=x and Y=y) = P(x,y)

Se X e Y sono independenti allora

P(x,y) = P(x) P(y)

P(x | y) è la probabilità di x dato y

P(x | y) = P(x,y) / P(y) P(x,y) = P(x | y) P(y)

Se X e Y sono independenti allora

P(x | y) = P(x)

Probabilità Totali e Marginali

Caso discreto

\sum_x P(x)=1
P(x)=\sum_y P(x,y)
P(x)=\sum_y P(x|y)P(y)

Caso continuo

\int p(x)dx=1
p(x)=\int p (x,y)dy
p(x)=\int p(x|y)p(y)dy

Legge di Bayes

P(x,y)= P(x|y)P(y)=P (y|x)P(x)

\Longrightarrow

P(x|y)=\frac {P(y|x)P(x)}{P(y)}=\frac {\text{likelihood}\cdot \text{prior}}{\text {evidence}}

Legge di Bayes con Background Knowledge

Nel caso di probabilità condizionate vale la proprietà analoga:

P(x|y,z)=\frac{P(y|x,z)P(x|z)}{P(y|z)}

Condizionamento

Legge delle probabilità totali per probabilità condizionata:

P(x)=\int P(x,z)dz

P(x)=\int P(x|z)P(z)dz

P(x|y)=\int P(x|y,z)P(z|y)dz

Indipendenza Condizionata

Indipendenza condizionata:

P(x,y|z)=P(x|z)P(y|z)

e

P(x|z)=P(x|z,y)

P(y|z)=P(y|z,x)

Problema della Stima di Stato

  • Il robot ha la misura z.
  • Stato: open o closed.
  • Quanto vale P(open|z)?
Stima dello Stato.

Stima dello Stato.


Inferenza Causale o Diagnostica

P(open|z) prob. diagnostica.

P(z|open) prob. causale.

Spesso la prob. causale è il dato di partenza (modello, dato empirico, frequenze).

La legge di Bayes permette di ottenere la diagnosi dalla legge causale:

P(open|z)=\frac{P(z|open)P(open)}{P(z)}

Esempio

P(z|open)=0.7 ~~~~~~~~P(z|\neg open)=0.2

P(open)=P(\neg open)=0.5

P(open|z)=\frac{P(z|open)P(open)}{P(z|open)P(open)+P(z|\neg open)P(\neg open)}

P(open|z)=\frac{0.7\cdot 0.5}{0.7 \cdot 0.5 + 0.2 \cdot 0.5}=0.778

z determina la probabilità che la porta sia aperta.

Stima: criteri

Max A-posteriori: se si conosce il prior p(x) sceglie la x che massimizza: P(z | x) P( x )
Max likelihood: se non si conosce il prior p(x) sceglie la x che massimizza: P(z | x)

Combinare l’evidenza

Se il robot ottiene un’altra osservazione z2 come la integra? 

Come si stima P(x| z1…zn )?

Aggiornamento Bayesiano Ricorsivo

P(x|z_1, ...,z_n)=\frac{P(z_n|x, z_1, ..., z_{n-1})P(x|z_1, ..., z_{n-1})}{P(z_n|z_1, ..., z_{n-1})}

Assunzione di Markov:
dato x, la nuova zn è indipendente da z1,…,zn-1
P(x|z_1, ...,z_n)=\frac{P(z_n|x)P(x|z_1, ..., z_{n-1})}{P(z_n|z_1, ..., z_{n-1})}
=\eta P(z_n|x)P(x|z_1, ..., z_{n-1})
=\eta_{1...n}\prod_{i=1...n}P(z_i|x)P(x)

Problema Tipico: integrazione di nuove osservazioni

Due locazioni possibili x1 e x2

  • P(x1)=0.99, P(x2) = 0.01
  • P(z|x2)=0.09 P(z|x1)=0.07

Esempio

P(z_2|open)=0.5~~~~~P(z_2|\neg open)=0.6
P(open|z_1)=2/3

P(open|z_2,z_1)=\frac{P(z_2|open)P(open|z_1)}{P(z_2|open)P(open|z_1)+P(z_2|\neg open)P(\neg open |z_1)}

=\frac{\frac 1 2 \cdot \frac 2 3}{\frac 1 2 \cdot \frac 2 3 + \frac 3 5 \cdot \frac 1 3}=\frac 5 8 =0.625

z2 abbassa la probabilità che la porta sia aperta.

  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion

Fatal error: Call to undefined function federicaDebug() in /usr/local/apache/htdocs/html/footer.php on line 93