Categorie
Winzipedia Uso dell'wiki |
Robotica /
03-1L5-MappeTopologicheRobotica.03-1L5-MappeTopologiche VersioniNascondi le modifiche minori - Mostra le modifiche 15/11/2006 ore 12:17 CET
di - Correzione di una interpretazione dall'inglese sbagliata
Modificate le linee 52-55: da:
Possiamo classificare gli algoritmi di matching Gli algoritmi di tipo '''''' a:
Possiamo classificare gli algoritmi di matching come '''''' o ''''''. Gli algoritmi di tipo '''''' fanno corrispondere i singoli punti ricavati dai dati sensoriali con le ''feature'' della mappa, basandosi sulla minima distanza; quelli di tipo '''''' fanno corrispondere un intervallo di dati con un insieme di ''feature'', da confrontare con quelle esistenti nella mappa globale. Modificate le linee 2-3: da:
''' a:
'''Autore:''' [[profiles/AlessandroModica | Alessandro Modica]]\\ 13/11/2006 ore 11:00 CET
di - dittiometrica -> diktiometrica
Modificata la linea 78: da:
# '''Mappa a:
# '''Mappa diktiometrica''': rappresentazione nodi della mappa topologica in modo geometrico; Modificate le linee 61-62: da:
Un esempio di geometric map matching di una mappa locale generata da un sensore sonar con una mappa globale di tipo geometrico. In questo caso del map matching la stima della posizione del robot. La nuvola di punti misurata dal sonar rappresenta a:
Un esempio di geometric map matching di una mappa locale generata da un sensore sonar con una mappa globale di tipo geometrico. In questo caso del map matching la stima della posizione del robot. La nuvola di punti misurata dal sonar rappresenta le distanze che vengono misurate tra il robot e gli elementi della stanza. Una volta definita questa nuvola si cerca di vedere dove si adagia meglio sulla mappa globale della stanza. Modificate le linee 65-66: da:
Nel a:
Nel topologic map matching lo scopo quello di determinare in maniera approssimativa la posizione del robot in uno dei nodi (o transizioni) della mappa stessa. Un'estensione della mappa topologica la '''mappa cognitiva''' dove non viene focalizzata sulla ricerca dei luoghi distintivi di ogni singola stanza , ma viene focalizzata sulle transizioni da un ambiente all'altro (le porte). Modificate le linee 69-70: da:
'''Angle histogram''' un algoritmo di modellazione del mondo che lavora in questo modo: viene effettuato uno scan completo della stanza a , a:
'''Angle histogram''' un algoritmo di modellazione del mondo che lavora in questo modo: viene effettuato uno scan completo della stanza a , ovvero vengono effettuate un max di 360 misurazioni (una per grado), anche se spesso questo numero inferiore in quanto succedere che il sensore nella sua scansione non veda nulla, e i risultati vengono registrati su una mappa (il profilo dei punti non una linea retta una spezzata). A questo punto l'algoritmo misura gli angoli tra ogni coppia di punti adiacenti trovati. Una volta che le nostre misurazioni sono state "pulite" da eventuali imprecisioni di rilevamento soprattutto nella posizione reciproca delle coppie di punti, l'angle histogram essere costruito. I picchi presenti nel grafico che viene mostrato rappresentano le tra i punti. che conta in questa rappresentazione la direzione di rilevamento in quanto le tra punti rimangono invariate, cambia solo la posizione nel grafico. Se confrontassimo 2 angle histogram della stessa regione di spazio, ma con direzioni di rilevamento diverse, che noteremmo sarebbe solo una differenza di fase tra i due grafici, ma il profilo rimarrebbe esattamente lo stesso. Modificate le linee 42-43: da:
Il risultato la creazione di un grafo in cui i luoghi cosiddetti caratteristici (di cui daremo definizione) diventano i '''nodi''', mentre le loro relazioni di posizione diventano '''archi'''. Grazie a questa tipologia di rappresentazione possiamo mappare a:
Il risultato la creazione di un grafo in cui i luoghi cosiddetti caratteristici (di cui daremo definizione) diventano i '''nodi''', mentre le loro relazioni di posizione diventano '''archi'''. Grazie a questa tipologia di rappresentazione possiamo mappare un ambiente di grandi dimensioni senza soffrire, nella sua rappresentazione, dell'accumularsi odometrico di posizione. 04/11/2006 ore 12:13 CET
di - Fine del merge
Modificate le linee 69-102: da:
a:
!! Angle histogram !! L'eplorazione del robot e strategie di mapping Le strategie che ci permettono di definire un luogo distintivo (e quindi un nodo) sono principalmente due: # '''Mappa dittiometrica''': rappresentazione nodi della mappa topologica in modo geometrico; La strategia che viene scelta dal robot per eseguire un percorso che colleghi due luoghi distintivi dipende dall'ambiente locale in cui si trova: a volte decide di rimanere in mezzo al corridoio, mantenendo una equidistanza dalle due pareti, altre volte invece decide di mantenere una certa distanza da una singola parete, oppure potrebbe muoversi verso un landmark remoto. Durante l'esplorazione, il robot usa una ''exploration agenda'', nella quale sono contenute informazioni circa le migliori direzioni da intraprendere per esplorare la mappa. Tali direzioni sono di solito riferite ad un sistema di coordinate locale. 04/11/2006 ore 00:36 CET
di - Seconda parte dell'intergrazione
Aggiunte le linee 28-67:
Infine un'assunzione fondamentale che viene fatta durante la costruzione di queste mappe: assumiamo che l'ambiente dai noi mappato sia '''statico''', o che '''cambi''' talmente '''lentamente''' da poter essere considerato come statico. Un ambiente dinamico renderebbe la mappa totalmente inutilizzabile. !! Rappresentazione di una mappa Esistono due principali tipi di rappresentazione: # Rappresentazione '''geometrica'''; # Rappresentazione '''topologica'''. !!! La rappresentazione geometrica !!!La rappresentazione topologica !! Map Matching # Stima della posizione del robot; # Aggiornamento della mappa. Gli algoritmi di map matching cambiano a seconda della rappresentazione che stiamo utilizzando per la nostra mappa. Parliamo infatti di '''geometric map matching''' e '''topological map matching'''. !!! Il geometric map matching !!! Il topologic map matching 04/11/2006 ore 00:28 CET
di - Prima parte della fusione del materiale di Alessandro Modica.
Modificate le linee 1-4: da:
!Lezione 3: la costruzione di mappe topologiche (L1. '''Autori:''' [[profiles '''Hanno contribuito:''' a:
!Lezione 3: la costruzione di mappe topologiche (L1.5) '''Autori:''' [[profiles/AlessandroModica | Alessandro Modica]]\\ '''Hanno contribuito:''' [[profiles/Vincenzo | Vincenzo Manzoni]], [[profiles/Andrea | Andrea Rota]] Modificate le linee 6-28: da:
->[- In ambiente particolarmente complessi o vasti, memorizzare tutti i riferimenti geometrici in una mappa assoluta impensabile, sia potrebbe non essere facile misurarli con sufficiente precisione, sia l'occupazione di memoria sarebbe esagerata, ma soprattutto una tale completezza potrebbe non essere necessaria. Vedremo allora come la tecnica delle mappe topologiche sia di fondamentale importanza in questi contesti. !! Come abbiamo visto nella sezione relativa all'approccio geometrico, questo prevede sostanzialmente tre fasi: una di percezione dei riferimenti, una di costruzione della mappa locale e l'ultima di localizzazione e di integrazione con la mappa globale, costruita a partire da un riferimento assoluto (come ad esempio la posizione di partenza del robot). Questo tipo * la conoscenza delle cordinate assolute del robot potrebbe non essere importante * l'errore di misura (specialmente odometrica) tende a sommarsi ad ogni localizzazione e quindi la mappa globale potrebbe essere molto imprecisa * se il rapporto fra orizzonte di misura * alcuni porzioni dell'ambiente potrebbero mancare di quei punti caratteristici che permettono al robot di effettuare la localizzazione, si pensi ad esempio ad un corridio molto lungo (ovvero con !!L'approccio topologico L'approccio topologico si differenzia dal precedente evita di usare La strategia di navigazione da A a B diventa : # il robot riconosce di essere nel particolare ambiente A, e si localizza quindi in un nodo del grafo # il robot si localizza all'interno della mappa che dispone dell'ambiente A # il robot pianifica le strategie per raggiungere l'ambiente B (quali nodi attraversare?) # il robot naviga ambiente per ambiente fino a giungere a B. Da notare che il robot non necessita di conoscere la sua posizione 'assoluta', ma solo di alcuni riferimenti per riconoscere l'ambiente e i luoghi di passaggio (come porte ecc.), detti 'gateways'. Un passaggio sicuramente molto importante del mapping topologico il riconoscimento degli ambienti, e avvenire in due modi: a:
->[- In ambiente particolarmente complessi o vasti, memorizzare tutti i riferimenti geometrici in una mappa assoluta impensabile, sia potrebbe non essere facile misurarli con sufficiente precisione, sia l'occupazione di memoria sarebbe esagerata, ma soprattutto una tale completezza potrebbe non essere necessaria. Vedremo allora come la tecnica delle mappe topologiche sia di fondamentale importanza in questi contesti. -] !!Il mapping !! La creazione di una mappa La creazione di una mappa da parte del robot avviene mediante alcuni step fondamentali. Tuttavia prima che possa avvenire, occorre necessariamente procedere a quello che viene definito ''sensor data processing'', che si articola in 3 fasi: # Estrazione di dati caratteristici da quelli grezzi; # Fusione dei dati raccolti da diversi tipi di sensori; # Generazione automatica di un modello dell'ambiente da parte del robot con diversi gradi di astrazione. Eseguita questa fase possiamo pertanto procedere al ''mapping'' vero e proprio. Tale processo viene sintetizzato in 3 fasi distinte: # Costruzione di un modello dei sensori (una descrizione astratta dei dai raccolti dei sensori stessi); # Matching tra le nuove conoscenze del robot, dovute alle osservazioni correnti, con quelle rilevate precedentemente; # Modifica del modello locale del robot dovuto ai risultati dell'operazione precedente. chiaro osservare come il punto 2 sia il difficile da eseguire. Ma non solo: bisogna sempre tener presente che nel momento in cui viene costruita una mappa locale, essa non affetta da incertezza in quanto il robot fermo in una posizione ben definita. Al momento bisogna tener presente la differente posizione del robot nell'ambiente per poter effettuare un corretto matching dei dati a disposizione. Un problema che si viene a definire durante la creazione di una mappa il cosiddetto ''autonomous exploration''. Quando un robot deve costruirsi una mappa dell'ambiente in cui si trova, deve esplorare zone a lui sconosciute. Si assume inoltre che il robot non sappia assolutamente dove si trova. Le uniche conoscenze a lui note sono i dati rilevati dai sensori al momento del suo posizionamento in un punto sconosciuto . A questo punto, una volta posto nell'ambiente da mappare, il robot deve scegliere una strategia di esplorazione: tipicamente di questa strategia massimizzare l'esplorazione nel minor tempo possibile. La scelta della strategia ovviamente fortemente influenzata dal tipo di sensori che stiamo usando. Modificate le linee 18-20: da:
L'approccio topologico si differenzia dal precedente evita di usare un riferimento assoluto per tutta la mappa. L'ambiente viene rappresentato come un grafo, in cui ogni nodo una porzione dell'ambiente riconoscibile a:
L'approccio topologico si differenzia dal precedente evita di usare un riferimento assoluto per tutta la mappa. L'ambiente viene rappresentato come un grafo, in cui ogni nodo una porzione dell'ambiente riconoscibile topologicamente (passaggi, stanze, corridoi) e gli archi sono le relazioni topologiche che legano gli ambienti. Se due nodi A e B sono collegati, significa che possibile passare dall'ambiente A all'ambiente B. La strategia di navigazione da A a B diventa : # il robot riconosce di essere nel particolare ambiente A, e si localizza quindi in un nodo del grafo # il robot si localizza all'interno della mappa che dispone dell'ambiente A # il robot pianifica le strategie per raggiungere l'ambiente B (quali nodi attraversare?) # il robot naviga ambiente per ambiente fino a giungere a B. Da notare che il robot non necessita di conoscere la sua posizione 'assoluta', ma solo di alcuni riferimenti per riconoscere l'ambiente e i luoghi di passaggio (come porte ecc.), detti 'gateways'. Un passaggio sicuramente molto importante del mapping topologico il riconoscimento degli ambienti, e avvenire in due modi: Modificate le linee 15-19: da:
* alcuni porzioni dell'ambiente potrebbero mancare di quei punti caratteristici che permettono al robot di effettuare la localizzazione, si pensi ad esempio ad un corridio molto lungo (ovvero con una lunghezza molto superiore all'orizzonte d'osservazione dei sensori): muovendosi lungo il corridoio, il robot solo vedere le pareti, ma non a localizzare ''punti fissi'' per capire di quanto si mosso (tralasciamo ovviamente l'informazione poco accurata dei sensori odometrici). Questo problema di localizzazione si manifesta sia durante la fase di ''esplorazione'', in quanto il ''matching'' delle mappe locali potrebbe non essere corretto e potrebbe dare luogo ad una mappa globale errata, sia in Contenuto della sottosezione a:
* alcuni porzioni dell'ambiente potrebbero mancare di quei punti caratteristici che permettono al robot di effettuare la localizzazione, si pensi ad esempio ad un corridio molto lungo (ovvero con una lunghezza molto superiore all'orizzonte d'osservazione dei sensori): muovendosi lungo il corridoio, il robot solo vedere le pareti, ma non a localizzare ''punti fissi'' per capire di quanto si mosso (tralasciamo ovviamente l'informazione poco accurata dei sensori odometrici). Questo problema di localizzazione si manifesta sia durante la fase di ''esplorazione'', in quanto il ''matching'' delle mappe locali potrebbe non essere corretto e potrebbe dare luogo ad una mappa globale errata, sia in minore misura in fase di ''navigazione'', in quanto il robot non in grado di localizzarsi correttamente sulla mappa. !!L'approccio topologico L'approccio topologico si differenzia dal precedente evita di usare un riferimento assoluto per tutta la mappa. L'ambiente viene rappresentato come un grafo, in cui ogni nodo una porzione dell'ambiente riconoscibile (ad esempio una stanza, un corridoio) e gli archi sono le relazioni topologiche che legano gli ambienti. Se due nodi A e B sono collegati, significa che possibile passare dall'ambiente A all'ambiente B. Per ogni nodo viene memorizzata una mappa locale 22/10/2006 ore 23:29 CEST
di - Salvataggio intermedio
Modificate le linee 8-10: da:
!! a:
!!La limitatezza dell'approccio geometrico Come abbiamo visto nella sezione relativa all'approccio geometrico, questo prevede sostanzialmente tre fasi: una di percezione dei riferimenti, una di costruzione della mappa locale e l'ultima di localizzazione e di integrazione con la mappa globale, costruita a partire da un riferimento assoluto (come ad esempio la posizione di partenza del robot). Questo tipo di approccio porta con alcuni problemi: * la conoscenza delle cordinate assolute del robot potrebbe non essere importante * l'errore di misura (specialmente odometrica) tende a sommarsi ad ogni localizzazione e quindi la mappa globale potrebbe essere molto imprecisa * se il rapporto fra orizzonte di misura dei sensori e le dimensioni dell'ambiente molto basso, il robot agisce in un ambiente vasto, e potrebbe essere difficile trattare l'alto numero di informazioni necessarie a memorizzare la mappa globale * alcuni porzioni dell'ambiente potrebbero mancare di quei punti caratteristici che permettono al robot di effettuare la localizzazione, si pensi ad esempio ad un corridio molto lungo (ovvero con una lunghezza molto superiore all'orizzonte d'osservazione dei sensori): muovendosi lungo il corridoio, il robot solo vedere le pareti, ma non a localizzare ''punti fissi'' per capire di quanto si mosso (tralasciamo ovviamente l'informazione poco accurata dei sensori odometrici). Questo problema di localizzazione si manifesta sia durante la fase di ''esplorazione'', in quanto il ''matching'' delle mappe locali potrebbe non essere corretto e potrebbe dare luogo ad una mappa globale errata, sia in fase di ''navigazione'', in quanto il robot non in grado di localizzarsi correttamente sulla mappa. 22/10/2006 ore 23:08 CEST
di - Rivisto sommario
Modificate le linee 6-7: da:
->[- a:
->[- In ambiente particolarmente complessi o vasti, memorizzare tutti i riferimenti geometrici in una mappa assoluta impensabile, sia potrebbe non essere facile misurarli con sufficiente precisione, sia l'occupazione di memoria sarebbe esagerata, ma soprattutto una tale completezza potrebbe non essere necessaria. Vedremo allora come la tecnica delle mappe topologiche sia di fondamentale importanza in questi contesti. -] Aggiunte le linee 1-12:
!Lezione 3: la costruzione di mappe topologiche (L1.4) '''Autori:''' [[profiles.Andrea | Andrea]]\\ '''Hanno contribuito:''' ->'''Sommario''' ->[-Un robot ''intelligente'' deve essere in grado di muoversi in ambienti che presentano una certa . Per fare questo necessario che si costruisca una mappa dell'ambiente utilizzando i sensori: in questo articolo si del processo generico di costruzione di una mappa e si in dettaglio su una particolare mappa, quella topologica. -] !!Map building !!!Sottosezione Contenuto della sottosezione. |