Ciclo de robotica móvil - 3 - Localización

58
Localización Ciclo de charlas sobre robótica móvil

Transcript of Ciclo de robotica móvil - 3 - Localización

Localización

Ciclo de charlas sobre robótica móvil

El problema de la navegación

La navegación es la habilidad que caracteriza a un robot móvil y al mismo tiempo la más desafiante

El problema de la navegación para un robot móvil se define como:

Dado un punto de partida A alcanzar el (los) punto(s) de destino B (B1,B2,...) utilizando su conocimiento [el del robot] y la información sensorial que recibe [el robot].

2

El problema de la navegación

La navegación implica resolver a nivel de:

–PERCEPCIÓN: interpretar los datos que le suministra sus sensores para extraer información útil

–LOCALIZACIÓN: determinar su posición en el entorno

–PLANIFICACIÓN (conocimiento): decidir cómo actuar para alcanzar el objetivo

–CONTROL DE MOVIMIENTO: gestionar sus actuadores para conseguir la trayectoria deseada.

(enfoque deliberativo)

3

El problema de la navegación

Dos situaciones a distinguir:

–Existe un mapa del entorno (suficientemente adecuado para la navegación). Planificación de caminos (análisis global).

–No existe un mapa

Construir el mapa por exploración del entorno y luego planificar caminos.

Navegar sin mapa: control reactivo basado en comportamientos.

En ambos casos, es posible que aparezcan obstáculos en el camino de cuya existencia no se tenía conocimiento ⇒evitar obstáculos (análisis local).

4

Estructura de control

5

Que es localización?

Es la construcción de modelos matemáticos, geométricos o lógicos de entornos físicos, para resolver los problemas que plantea el

colocar un robot móvil en un entorno y posición desconocidos, y que él mismo sea capaz de construir incrementalmente un

mapa consistente del entorno al tiempo que utiliza dicho mapa para determinar su propia

localización.

6

Esquema del curso

1. Herramientas de localización

2. Algoritmos de localización

3. Mapas métricos y topológicos

4. Kalman vs. Markov

5. Monte Carlo

6. SLAM

7. Fuzzy Cognitive Maps

7

1. Herramientas de localización

8

Representación conocida

Nuestra representación se basa en la creencia y en nuestra estimación del estado actual del robot.

Hasta ahora hemos estado usando una representación creencia continua.

9

Representación conocida

Podemos proporcionar una descripción del nivel de confianza que tenemos en nuestra estimación.

Nos utilizan típicamente una distribución gaussiana para modelar el estado del robot.

Es necesario conocer la varianza de esta gaussiana!

10

Representación conocida

Continua

–Precisión obligado por los datos del sensor

–Normalmente sola hipótesis plantean estimación

–Perdió cuando divergente (por hipótesis simple)

–Representación compacta

–Razonable en el poder de procesamiento

11

Representación conocida

Discreta

–Precisión obligado por resolución de discretización

–Normalmente múltiples hipótesis plantean estimación

–Nunca pierde (cuando diverge converge a otra celda).

–Memoria y potencia de procesamiento necesario (a menos mapa topológico utilizado)

–Ayuda para implementar planificador discreto

12

Mapas

La aplicación determina la precisión del mapa.

Las precisiones del mapa y su función deben coincidir con las precisiones de los sensores.

Hay un claro equilibrio entre precisión y complejidad computacional.

Al igual que en las representaciones de creencia, hay dos tipos principales:

–Continuos

–Discretizados

13

Mapas

Linea continua

14

Mapas

Descomposición en celdas

15

Mapas

Descomposición en celdas fijas

16

Mapas

Descomposición topológica

17

Teoría de la probabilidad

Probabilidad de que A sea verdadero

P (A)

–Se calcula la probabilidad de cada estado dado acciones del robot y medidas.

Probabilidad condicional de que A sea cierto dado que B sea verdadero

P (A | B)

–Por ejemplo, la probabilidad de que el robot se encuentra en posición xt dada la entrada del sensor de Zt es P(xt | zt)

18

Teoría de la probabilidad

Regla del producto

p(A ^ B) = p(A | B) p(B)

p(A ^ B) = p(B | A) p(A)

–Se puede equiparar estas expresiones para llegar a la regla de Bayes.

Regla de Bayes

19

2. Algoritmos de localización

20

Métodos de localización probabilísticos

Planteo del problema:

–Determinar el estado de un robot en un ambiente conocido.

Estrategia:

–Se podría empezar con moverse de un lugar conocido, y realizar un seguimiento de su posición utilizando odometría.

–Sin embargo, cuanto más se mueve, es mayor la incertidumbre en su posición.

–Por lo tanto, se actualizará su estimación de la posición mediante la observación de su entorno.

21

Métodos de localización probabilísticos

Método:

–Fusionar la estimación de la posición odométrica con la estimación de la observación para obtener la mejor actualización posible de la posición real

Esto puede ser implementado con dos funciones principales:

–Actuar

–Ver

22

Filtrado de Kalman vs Markov

Localización de Markov

–Se puede localizar desde cualquier posición desconocida en el mapa

–Se recupera de situaciones ambiguas

–Sin embargo, actualizar la probabilidad de todas las posiciones dentro de todo el espacio requiere la representación discreta del espacio. Esto puede requerir gran cantidades de memoria y potencia de procesamiento.

Kalman Filter localización

–Seguimiento del robot y es intrínsecamente preciso y eficiente.

–Sin embargo, si la incertidumbre es demasiado grande, KF fallará y hará que el robot se pierda.

23

3. Mapas métricos y topológicos

24

Representación del EspacioRepresentación del espacio

Mapas:

–Descomposición espacial

–Mapas Geométricos

–Mapas topológicos

25

Representación del Espacio

Una representación interna del espacio puede servir para al menos 3 objetivos:

–Identificar el espacio libre

–Reconocer regiones en el ambiente

–Reconocer objetos en el ambiente

26

Mapas

Modelo del ambiente – generalmente se representa el espacio libre y el espacio ocupado (obstáculos) mediante una representación geométrica: un mapa

Tipos de mapas:

–Mapas métricos

Descomposición espacial

Representaciones geométricas

–Mapas topológicos

27

Mapas métricos

Se representa el espacio libre y/o obstáculos directamente mediante una discretización.

Dos formas básicas:

–Descomposición: se representa mediante una discretización en un conjunto de celdas básicas, por ejemplo con una rejilla de ocupación espacial (occupancy grids).

–Geométrico: se representa mediante figuras geométricas básicas en 2 ó 3 dimensiones, por ejemplo con triangulación.

28

Mapas métricos

29

Mapas métricos

30

Mapas métricos

31

Mapas métricos

32

Mapas métricos

Se representa el espacio libre y/o obstáculos directamente mediante una discretización.

Dos formas básicas:

–Descomposición: se representa mediante una discretización en un conjunto de celdas básicas, por ejemplo con una rejilla de ocupación espacial (occupancy grids).

–Geométrico: se representa mediante figuras geométricas básicas en 2 ó 3 dimensiones, por ejemplo con triangulación.

33

Representación geométrica

Geométrico: se representa mediante figuras geométricas básicas en 2 ó 3 dimensiones.

2-D

–Puntos

–Líneas, polilíneas

–Círculos

–Poliedros (triángulos)

–Splines

34

Representación geométrica

35

Representación geométrica

36

Representación geométrica

37

Mapas topológicos

Se considera el ambiente como una serie de lugares y conexiones entre dichos lugares.

Esto se puede considerar como un grafo:

–Nodos: lugares.

–Arcos: conexiones.

Se le puede incorporar información métrica al grafo – longitud y orientación de los arcos.

Mapas topológicos

Mapas topológicos

Arquitectura probabilística

sensores actuadoresFusión

sensorial

Mapa

probabi-

lístico

Control

basado

en

utilidad

4. Kalman vs. Markov

42

Kalman vs. Markov

Markon can:

–Can localize from any unknown position in map

–Recovers from ambiguous situation

–However, to update the probability of all positions within the whole state space requires discrete representation of space. This can require large amounts of memory and processing power.

Kalman vs. Markov

Kalman can:

–Tracks the robot and is inherently precise and efficient

–However, if uncertainty grows too large, the KF will fail and the robot will get lost.

5. Monte Carlo

45

Monte Carlo

Dado un mapa de su entorno basado en la localización de Markov. Se trata básicamente de una implementación de la aplicación del filtro de partículas a la localización del robot.

Monte Carlo

En este método, un gran número de hipotéticas configuraciones actuales son inicialmente dispersas al azar, en el espacio de configuración.

Con cada actualización del sensor, la probabilidad de que cada configuración hipotética es correcta y se actualiza sobre la base de un modelo estadístico de los sensores y el teorema de Bayes.

6. SLAM

48

Que es SLAM?

Accurate position estimation is one of the major problems when working with mobile autonomous robots and a key component of them. Most of the times, there are three phases that comprise the movement sequence of a mobile robot (not only autonomous robots): localization, path planning, and path execution.

Que es SLAM?

Mobile robot localization and mapping is the process of simultaneously tracking the position of a mobile robot relative to its environment.

Building a map of the environment, has been a central research topic in mobile robotics.

Accurate localization, and having an accurate map is essential for good localization. Therefore, simultaneous localization and map building (SLAM) is a critical underlying factor for successful mobile robot navigation in a large environment, irrespective of what the high-level

7. Fuzzy Cognitive Maps

51

El desafío

Intelligent agents use mental models and have various “internal” processes (physical, mental, emotional) as they interact with other agents.

Many simulations ignore intra-agent life, or model intra-agent characteristics as discrete from the larger inter-agent simulation.

When needed, we can use the “fuzzy cognitive map” (an iterative network) to model agent life in a unified continuous way.

Un FCM es...

A thematic network with…

Nodes and links, that have…

Weights and states (+1, 0, -1).

We start with initial conditions, then…

Iterate the network over time to get…

Attractors (emergent system behavior).

We can test leverage points, and…

Compare & match to known systems

FCM approach by Bart Kosko

DEFINITION: An FCM is a directed graph with concepts like policies, events etc. as nodes and causalities as edges. It represents causal relationship between concepts.

In other words, a Fuzzy cognitive map is a cognitive map where the relations between the elements (e.g. concepts) of a "mental landscape" can be used to compute the "strength of impact" of these elements. and one of its applications is to

FCM approach by Bart Kosko

FCM approach by Bart Kosko

According to Bart Kosko "Fuzzy cognitive maps are fuzzy-graph structures for representing casual reasoning. Their fuzziness allows hazy degrees of casuality between hazy casual objects(concepts).

Their graph structure allows systematic casual propagation, in particular forward and backward chaining, and it allows knowledge bases to be grown by connecting different FCMs. FCMs are especially applicable to soft knowledge

Fuentes

Libros

–Introduction to autonomous mobile robots (Siegwart, Nourbakshsh y Scaramuzza).

–Probabilistic robotics (Thrun, Burgard y Fox).

Cursos

–CPE 485 – Course lectures on Autonomous Mobile Robots

Web

–http://www.mobilerobots.ethz.ch/

–wiki.aigroup.com.ar

Imágenes cortesía de Siegwart & Nourbakhsh

FIN

dtrejo.com.ar

[email protected]

Capítulo de Inteligencia Computacional