Modifiche recenti - Cerca:

Categorie

Pagine utente

Winzipedia

Uso dell'wiki

modifica il menu

06-1L9-SLAM1

Robotica.06-1L9-SLAM1 Versioni

Nascondi le modifiche minori - Mostra le modifiche

Modificate le linee 3-5: da:
'''Autori:''' [[Profiles/Andrea | Andrea]]\\
'''Hanno contribuito:'''
a:
'''Autore:''' [[Profiles/Andrea | Andrea]]
13/11/2006 ore 12:51 CET di Andrea - Spostata un'immagine, grazie PastaAlPesto ;)
Aggiunta la linea 59:
Attach:22.png
Modificate le linee 64-67: da:
Attach:22.png

La riformulazione ricorsiva della formula, con la successiva applicazione del teorema di Bayes ci permette di scrivere:
a:
La formulazione ricorsiva della formula, con la successiva applicazione del teorema di Bayes ci permette di scrivere:
Modificata la linea 58: da:
* Il modello del sensore, rappresentato dalla d.d.p. P(z_k | x_k, m), che fornisce la di ottenere le misure z_k dato un set di landmark m e una posizione x_k. (ad esempio, se un muro in una posizione che dista 10 m dal robot, qual' la che la misurazione sia effettivamente 10 m?).
a:
* Il modello del sensore, rappresentato dalla d.d.p. P(z_k | x_k, m), che fornisce la di ottenere le misure z_k dato un set di landmark m e una posizione x_k. (ad esempio, se un muro in una posizione che dista 10 m dal robot, qual la che la misurazione sia effettivamente 10 m?).
Modificate le linee 14-15: da:
La domanda sorge spontanea: come un robot, senza conoscenza a priori (si pensi ad uno scenario post , senza punti di riferimento ceti), esplorare e navigare nell'ambiente a lui completamente sconosciuto?
a:
La domanda sorge spontanea: come un robot, senza conoscenza a priori (si pensi ad uno scenario post , senza punti di riferimento certi), esplorare e navigare nell'ambiente a lui completamente sconosciuto?
31/10/2006 ore 11:46 CET di Andrea - Finito, magari serve una rilettura e una sistematina alle immagini
Cancellata la linea 27:
!!Approccio statistico allo SLAM
Modificate le linee 31-32: da:
Come si vede dallo schema, inizialmente il robot non in grado di conoscere ne la propria posizione ne quella degli
a:
Come si vede dallo schema, inizialmente il robot non in grado di conoscere la propria posizione quella dei riferimenti. Man mano che avanza e compie nuovi rilevamenti, il metodo SLAM integra le misure che conosce, migliorando via via la stima.

!!Approccio statistico allo SLAM
Aggiunte le linee 31-33:

Come si vede dallo schema, inizialmente il robot non in grado di conoscere ne la propria posizione ne quella degli
Modificate le linee 63-64: da:
FORMULA slide 22
a:
Attach:22.png
Modificate le linee 67-68: da:
FORMULA slide 23
a:
Attach:23.png
Modificate le linee 71-72: da:
FORMULA slide 25
a:
Attach:25.png
Modificate le linee 84-85: da:
FORMULA SLIDE 8
a:
Attach:8.png
Modificate le linee 90-91: da:
FORMULA SLIDE 9
a:
Attach:9.png
Aggiunte le linee 28-29:
!!Approccio statistico allo SLAM
!!!Schema dello SLAM
Cancellate le linee 30-31:

!!Approccio statistico allo SLAM
Aggiunte le linee 28-29:
Attach:1.png
31/10/2006 ore 11:11 CET di Andrea - Mancano formule
Modificate le linee 81-82: da:
Si noti il vettore colonna dei rumori.
a:
Si noti il vettore colonna dei rumori, che modella l'errore fra comando richiesto ed effetto dell'azione.
Modificate le linee 87-88: da:
Si noti anche qui il vettore colonna dei rumori.
a:
Si noti anche qui il vettore colonna dei rumori che modella l'errore di lettura.
Modificate le linee 91-99: da:
Si dimostra che il metodo EKF converge al crescere di k. Ogni osservazione riduce l'incertezza.
a:
Si dimostra che il metodo EKF converge al crescere di k. Ogni osservazione riduce l'incertezza.

!! Limiti del metodo SLAM
Il metodo SLAM presenta alcuni limiti, fra cui:
* I landamark devono essere statici (infatti nel nostro sistema abbiamo m_i e non m_i(k)): questo ostacolo stato superato e sono oggi possibili tecniche SLAM che usano landmark mobili.
* Il riconoscimento dei landmark deve essere corretto: il robot deve essere in grado di riconoscere e saper distinguere un landmark dall'altro anche da angolazioni differenti.
* E' necessario avere dei modelli accurati sia della meccanica, sia dei sensori
* Il metodo EKF introduce una linearizzazione, che porta con se una inevitabile approssimazione.
* Lo SLAM correla le percezioni, le azioni e lo stato, ma non genera un piano ottimo di esplorazione affinche si abbia una rapida convergenza
.
31/10/2006 ore 10:59 CET di Andrea - Mancano le formule e i vantaggi/svantaggi
Modificate le linee 73-91: da:
L'idea fondamentale dell'EKF quello di descrivere entrambi i modelli come una funzione soggetta ad un disturbo gaussiano.
a:
L'idea fondamentale dell'EKF quello di descrivere entrambi i modelli come una funzione soggetta ad un disturbo gaussiano (incorrelato e a media zero).

I due modelli vengono riadattati e diventano:

'''Modello del veicolo''' (x e y coordinate sul piano, fi orientamento sul piano)

FORMULA SLIDE 8

Si noti il vettore colonna dei rumori.

'''Modello delle misurazioni''' (X_i, Y_i sono le coordinate reali dei landmark, z_r la distanza misurata dal sensore, z_teta l'angolo misurato dal sensore)

FORMULA SLIDE 9

Si noti anche qui il vettore colonna dei rumori.

Risolvere il problema significa dare un valore a [X_i, Y_i] (problema di mapping) e a [x(k), y(k), fi(k)] (problema di localizzazione); si tratta di un problema di filtraggio di dati temporali sovradimensionato, quindi si utilizzeranno tecniche ''best fit'', come la tecnica ai minimi quadrati, utilizzando l' del disturbo istante per istante per pesare i dati.

Si dimostra che il metodo EKF converge al crescere di k. Ogni osservazione riduce l'incertezza
.
29/10/2006 ore 18:52 CET di Andrea - Mancano le formule e l'ultimo pezzo dell'EKF
Aggiunte le linee 68-73:
Nota bene: l'equazione spiega come possibile correlare le grandezze, ma non in grado di fornire una strategia di movimento ottima.

!!!Come risolvere l'equazione - EKF
Uno dei possibili metodi per risolvere l'equazione appena vista si utilizzare l'EKF (Extended Kalman Filter), uno stimatore ricorsivo lineare per sistemi non lineari. Questo approccio comune a molte implementazioni SLAM.

L'idea fondamentale dell'EKF quello di descrivere entrambi i modelli come una funzione soggetta ad un disturbo gaussiano.
29/10/2006 ore 18:30 CET di Andrea - Inserire formule
Modificate le linee 56-67: da:
Il metodo SLAM vuole trovare la che al tempo k, il robot si trovi in posizione x_k e che i riferimenti siano nelle posizioni della mappa m, e questo conoscendo la posizione iniziale x_0, la storia delle percezioni Z_k e la storia delle azioni U_k.
a:
Il metodo SLAM vuole trovare la che al tempo k, il robot si trovi in posizione x_k e che i riferimenti siano nelle posizioni della mappa m, e questo conoscendo la posizione iniziale x_0, la storia delle percezioni Z_k e la storia delle azioni U_k.

FORMULA slide 22

La riformulazione ricorsiva della formula, con la successiva applicazione del teorema di Bayes ci permette di scrivere:

FORMULA slide 23

E supponendo il modello del veicolo mobile markoviano

FORMULA slide 25
29/10/2006 ore 17:43 CET di Andrea - SLAM I praticamente finito
Aggiunte le linee 55-56:

Il metodo SLAM vuole trovare la che al tempo k, il robot si trovi in posizione x_k e che i riferimenti siano nelle posizioni della mappa m, e questo conoscendo la posizione iniziale x_0, la storia delle percezioni Z_k e la storia delle azioni U_k.
Modificate le linee 50-55: da:
Parlando intuitivamente dello SLAM, abbiamo parlato di ipotesi che vengono formulate con un certo grado di incertezza: matematicamente parlando, questo significa generare dei modelli statistici che descrivano il sistema.
a:
Parlando intuitivamente dello SLAM, abbiamo parlato di ipotesi che vengono formulate con un certo grado di incertezza: matematicamente parlando, questo significa generare dei modelli statistici che descrivano il sistema.

Due modelli molto importanti sono:
* Il modello del sensore, rappresentato dalla d.d.p. P(z_k | x_k, m), che fornisce la di ottenere le misure z_k dato un set di landmark m e una posizione x_k. (ad esempio, se un muro in una posizione che dista 10 m dal robot, qual' la che la misurazione sia effettivamente 10 m?).
* Il modello della veicolo mobile, rappresentato dalla d.d.p. P(x_k |x_k-1, u_k), che rappresenta l'incertezza sugli effetti delle azioni degli attuatori del robot. La P rappresenta la che partendo da x_k-1 e applicando l'azione u_k, il robot si porti in posizione x_k: questa incertezza alimentata da vari fattori, come slittamenti, parametri di funzionamento non corretti ecc.
Modificata la linea 42: da:
!!!Obiettivo dello SLAM
a:
!!!Lo SLAM come processo d'inferenza
Modificata la linea 49: da:
!!Parametrizzazione dell'incertezza
a:
!!!Parametrizzazione dell'incertezza
Aggiunta la linea 29:
!!!Grandezze d'interesse
Aggiunta la linea 42:
!!!Obiettivo dello SLAM
Aggiunta la linea 49:
!!Parametrizzazione dell'incertezza
Modificate le linee 1-2: da:
!SLAM 1: Simultaneous Localization and Mapping
a:
!SLAM 1/2: Simultaneous Localization and Mapping
Aggiunte le linee 43-46:
In particolare, partendo da questa formulazione generica dello SLAM, distinguiamo due casi particolari, che ricadono nelle teorie viste precendemente:
- Conosco m a priori, misuro Z_k e vorrei determinare solo X_k: dallo SLAM generico siamo passati al caso di localizzazione
- Conosco X_k a priori, misuro Z_k e vorrei determinare solo m: dallo SLAM generico siamo passati al caso di mapping
Modificate le linee 35-36: da:
a:
Per si rappresentano le serie temporali di queste grandezze:
* X_k = {x_0 ... x_k}, la storia delle posizioni del robot fino al tempo k
* U_k = {u_0 ... u_k}, la storia delle azioni di controllo fino al tempo k
* m = {m_1 ... m_M}, ovvero la mappa composta dagli M landmark
* Z_k = {z_1 ... z_k}, ovvero la storia delle osservazioni fino al tempo k

Il problema dello SLAM diventa quello di determinare la posizione del robot nel tempo X_k e la posizione dei landmark m, partendo dalle k osservazioni Z_k. La soluzione di questo problema tipicamente inferenziale e essere sostenuta da conoscenza a priori (anche imparziale) sulla mappa e/o da misurazioni esterne (telecamere fisse, GPS, ecc).
Modificata la linea 21: da:
!!Fondamenti dello SLAM
a:
!!Approccio intuitivo allo SLAM
Modificate le linee 26-37: da:
Attraverso un processo statistico, il robot in grado di fondere le due ipotesi, quella sulla propria posizione e quella sulla posizione dei riferimenti, determinando la posizione assoluta dei riferimenti e la proprio localizzazione. E' dimostrato che questo metodo converge al crescere delle osservazioni.
a:
Attraverso un processo statistico, il robot in grado di fondere le due ipotesi, quella sulla propria posizione e quella sulla posizione dei riferimenti, determinando la posizione assoluta dei riferimenti e la proprio localizzazione. E' dimostrato che questo metodo converge al crescere delle osservazioni.

!!Approccio statistico allo SLAM
Descriviamo le grandezze d'interesse per il processo dello SLAM:
* x_k la posizione reale assoluta del robot all'interno dell'ambiente, misurata all'istante k
* u_k l'azione di controllo che l'algoritmo di controllo del robot impartisce agli attuatori del robot per farlo spostare dalla posizione occupata al tempo k-1 (x_k-1) alla posizione al tempo k (x_k)
* m_i la posizione reale dell'i-simo riferimento (landmark)
* z_k,i la misura dell'osservazione del landmark i-simo dalla posizione occupata al tempo k. Con z_k ci riferiremo all'insieme delle osservazioni di tutti gli i-simi landmark dalla posizione x_k



Parlando intuitivamente dello SLAM, abbiamo parlato di ipotesi che vengono formulate con un certo grado di incertezza: matematicamente parlando, questo significa generare dei modelli statistici che descrivano il sistema
.
29/10/2006 ore 16:10 CET di Andrea - Stesa prima parte
Modificate le linee 22-26: da:
Il metodo SLAM si basa su un concetto molto semplice. In un ambiente generalmente saremo in grado di distinguere dei riferimenti naturali o artificiali (inizialmente ipotizzeremo che questi riferimenti siano fissi). Man mano che il robot si sposta avanzare delle ipotesi sulla sua posizione in seguito alle sue azioni di movimento, che non necessariamente potrebbero essere corrette (ad esempio una ruota potrebbe aver girato a vuoto, facendo ruotare il robot).

Il metodo SLAM prevede che il robot sia in grado di osservare riferimenti da ogni posizione in cui si muove e possa ripetere queste osservazioni da posizioni e permette di avanzare ipotesi sulla reale posizione dei riferimenti.

Attraverso un processo statistico, il robot in grado di fondere le due ipotesi, quella sulla propria posizione e quella sulla posizione dei riferimenti, determinando la posizione assoluta dei riferimenti e la proprio localizzazione.
a:
Il metodo SLAM si basa su un concetto molto semplice. In un ambiente generalmente saremo in grado di distinguere dei riferimenti naturali o artificiali (inizialmente ipotizzeremo che questi riferimenti siano fissi). Man mano che il robot si sposta, avanza delle ipotesi sulla sua posizione in seguito alle sue azioni di movimento, ipotesi che non necessariamente si rivelano corrette (ad esempio una ruota potrebbe aver girato a vuoto, facendo ruotare il robot).

Il metodo SLAM prevede anche che il robot sia in grado di osservare riferimenti ambientali dalle varie posizioni in cui si muove e che possa ripetere queste osservazioni da posizioni nell'ambiente, avanzando ipotesi sulla reale posizione dei riferimenti.

Attraverso un processo statistico, il robot in grado di fondere le due ipotesi, quella sulla propria posizione e quella sulla posizione dei riferimenti, determinando la posizione assoluta dei riferimenti e la proprio localizzazione. E' dimostrato che questo metodo converge al crescere delle osservazioni.
Modificate le linee 19-22: da:
L'approccio SLAM molto recente e risale circa al 90: prima di allora localizzazione e mapping costituivano due problemi indipendenti. Nel 1995, [http://robots.stanford.edu/ | Sebastian Thrun] propose ufficialmente il metodo dello SLAM.

!!!Sottosezione
Contenuto della sottosezione
.
a:
L'approccio SLAM molto recente e risale circa al 90: prima di allora localizzazione e mapping costituivano due problemi indipendenti. Nel 1995, [[http://robots.stanford.edu/ | Sebastian Thrun]] propose ufficialmente il metodo dello SLAM.

!!Fondamenti dello SLAM
Il metodo SLAM si basa su un concetto molto semplice. In un ambiente generalmente saremo in grado di distinguere dei riferimenti naturali o artificiali (inizialmente ipotizzeremo che questi riferimenti siano fissi). Man mano che il robot si sposta avanzare delle ipotesi sulla sua posizione in seguito alle sue azioni di movimento, che non necessariamente potrebbero essere corrette (ad esempio una ruota potrebbe aver girato a vuoto, facendo ruotare il robot).

Il metodo SLAM prevede che il robot sia in grado di osservare riferimenti da ogni posizione in cui si muove e possa ripetere queste osservazioni da posizioni e permette di avanzare ipotesi sulla reale posizione dei riferimenti.

Attraverso un processo statistico, il robot in grado di fondere le due ipotesi, quella sulla propria posizione e quella sulla posizione dei riferimenti, determinando la posizione assoluta dei riferimenti e la proprio localizzazione
.
Modificate le linee 13-18: da:
Ma come un robot, senza conoscenza a priori (si pensi ad uno scenario post , senza punti di riferimento ceti), esplorare e navigare nell'ambiente?

Come si facilmente capire, il problema di costruire una mappa fortemente dipendente dal
problema di sapersi localizzare in uno spazio, ma che a sua volta risolvibile solo se si conosce la conformazione dell'ambiente. Da questa considerazione emerso che, in , localizzazione e mapping sono due aspetti dello stesso problema e come tali vanno risolti simultaneamente.
a:
!!L' del problema
La domanda sorge spontanea: come un robot, senza conoscenza a priori (si pensi ad uno scenario post
, senza punti di riferimento ceti), esplorare e navigare nell'ambiente a lui completamente sconosciuto?

Come si facilmente capire, il
problema di costruire una mappa fortemente dipendente dal problema di sapersi localizzare in uno spazio, ma che a sua volta risolvibile solo se si conosce la conformazione dell'ambiente. Da questa considerazione emerso che, in , localizzazione e mapping sono due aspetti dello stesso problema e come tali vanno risolti simultaneamente: questo il concetto basilare dello SLAM.

!!!Qualche (scarso) cenno storico
L'approccio SLAM molto recente e risale circa al 90: prima di allora localizzazione e mapping costituivano due problemi indipendenti. Nel 1995, [http://robots.stanford.edu/ | Sebastian Thrun] propose ufficialmente il metodo dello SLAM.
Modificate le linee 10-11: da:
Contenuto della sezione.
a:
Tutti i metodi di costruzione di mappe visti fino ad ora, partivano da un'ipotesi molto importante: la di conoscere la posizione esatta del robot (attraverso rilocalizzazioni, odometria, misure esterne, ecc).
Allo stesso modo, tutti i metodi di localizzazione affrontati, davano per scontato che era possibile localizzare il robot solo se si disponeva di informazioni a priori sull'ambiente.


Ma come un robot, senza conoscenza a priori (si pensi ad uno scenario post , senza punti di riferimento ceti), esplorare e navigare nell'ambiente?

Come si facilmente capire, il problema di costruire una mappa fortemente dipendente dal problema di sapersi localizzare in uno spazio, ma che a sua volta risolvibile solo se si conosce la conformazione dell'ambiente. Da questa considerazione emerso che, in , localizzazione e mapping sono due aspetti dello stesso problema e come tali vanno risolti simultaneamente.
Modificata la linea 3: da:
'''Autori:''' [[Profiles/AndreaCalvo | Andrea Calvo]]\\
a:
'''Autori:''' [[Profiles/Andrea | Andrea]]\\
Modificate le linee 7-9: da:
->[-Contenuto del sommario.-]

!!Sezione
a:
->[-Il metodo dello SLAM, Simultaneous Localization and Mapping, un metodo che permette di effettuare allo stesso tempo la localizzazione del robot e la costruzione della mappa. Come vedremo, questo tipo di approccio consente di costruire robot in grado di esplorare e navigare in ambienti completamente sconosciuti.-]

!!Introduzione
Modificata la linea 3: da:
'''Autori:''' Andrea Calvo\\
a:
'''Autori:''' [[Profiles/AndreaCalvo | Andrea Calvo]]\\
Modificata la linea 3: da:
'''Autori:'''Andrea Calvo\\
a:
'''Autori:''' Andrea Calvo\\
26/10/2006 ore 18:16 CEST di Vincenzo - Creazione della pagina
Aggiunte le linee 1-13:
!SLAM 1: Simultaneous Localization and Mapping

'''Autori:'''Andrea Calvo\\
'''Hanno contribuito:'''

->'''Sommario'''
->[-Contenuto del sommario.-]

!!Sezione
Contenuto della sezione.

!!!Sottosezione
Contenuto della sottosezione.
Modifica - Versioni - Stampa - Modifiche recenti - Cerca
Ultima modifica il 22/08/2007 ore 13:51 CEST