Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D Le Miniguide all'orientamento Gli eBook di Federica La Corte in Rete
 
I corsi di Scienze Matematiche Fisiche e Naturali
 
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