2xhoja

Anuncio
Resolviendo Motion Planing
Prof. Teddy Alfaro O.
Seminario Modelo y Métodos
Cuantitativos
Metodologías más usadas
• Los métodos de planificación se pueden
agrupar en 3 grandes grupos
– Planificación basada en mapas (2 fases)
– Métodos basados en descomposición de celdas
(2 fases)
– Metodología de los Campos Potenciales
(Técnica)
1
Metodologías basadas en Mapas
Planificación Basada en Mapas
• Idea: aprovechar las características geométricas
del ambiente y de los obstáculos para generar un
grafo de posibles trayectorias
• Centrado en los obstáculos
• Espacio discreto
• Algunas técnicas:
– Grafos de Visibilidad, Diagramas de Voronoi, C.R.G
2
Grafos (Mapas) de Visibilidad
• Propuestos por Nilsson en 1969
• Enfoque geométrico para entornos
bidimensionales con obstáculos en forma de
polígonos
• Concepto de visibilidad, con arcos
rectilíneos
• Se requiere información de los vértices de
los objetos
• Se construye un grafo de visibilidad
Grafo de Visibilidad
• Un grafo de visibilidad GV es un grafo no dirigido, que
se define por el par (N, ):
– i) Donde, N resulta un conjunto de nodos formado por la
configuración inicial qa, la configuración final qf, y los
vértices de los obstáculos que pertenencen al conjunto B.
– ii) Y la función definida de NxN [0,1] es no nula si y solo
si los dos nodos referenciados se encuentran conectados. Se
dice que dos nodos están conectados si y solo si se puede
trazar un segmento que los una, de forma que resulte una
arista de un obstáculo de B, o bien yazca por completo en el
espacio libre del entorno Cl.
3
Ejemplo de GV
• Los nodos son el conjunto
de vértices de los
obstáculos más el inicial
y final
• Dos nodos están
conectados ssi son
visibles
• También se consideran
visibles los segmentos
que son bordes de los
obstáculos
Observaciones
• Los obstáculos deben ser poligonales o discretizarse
como tales. Como quedaría un mapa conformado
por poligonos con gran cantidad de vértices
• La desventaja es que las trayectorias pasan muy
cerca de los obstáculos y consideran un robot
puntual – se puede aminorar este problema
dilatando a los obstáculos en función del tamaño del
robot (problema con robots no cilíndricos)
• Se complementan con el concepto de entornos
expandidos (visibilidad semi-libre según Latombe)
• Entornos totalmente conocidos
4
Diagramas (mapas) de Voronoi
• Elimina el problema de los grafos de
visibilidad ya que se construyen rutas lo
más alejadas de los obstáculos
• Los diagramas de Voronoi son una
proyección del espacio libre en una red de
curvas, conformadas por rectilíneas y
parabólicos
• Se define el concepto de Retracción
Función de Restracción RT
• RT construye un conjunto Cv de Cfree
(notación C-space)
RT (q ) = C free Cv / Cv C free
Retracción del Espacio
s1 nace de e1 y n2
s2 nace de e1 y e2
5
Retracción de una configuración
• Dado una configuración q no perteneciente a Cv, existe un
único punto p más cercano perteneciente a un vértice o
arista de un obstáculo. La función RT(q) se define como el
primer corte con Cv de la línea que une p con q
Ejemplo DV
• El algoritmo de
planificación consite
en encontrar la
secuencia de
segmente del
diagrama de voronoi
tal que conecten la
RT(qinit) con
RT(qgoal)
• Algoritmo base:
Las rectas se forman con puntos equidistantes
de dos o más obstáculos.
Las parábolas se forman en los vértices
– Calcular el diagrama
de Voronoi
– Calcular el RT(qinit) y
RT(qgoal)
– Encontrar la ruta más
corta
6
Observaciones
• Los obstáculos también son modelados
poligonalmente
• No resulta ser la ruta más corta real
• Trabaja sobre entornos totalmente
conocidos
Cilindros Rectilíneos
Generalizados (CRG)
• También se pretende que el robot navegue
lo más alejado posible de los obstáculos
• Se modela el espacio libre de acuerdo
formas como cilindros o conos
• Se construeyen cilindros a partir de las
artistas de los obstáculos y luego se
conforma un mapa de caminos
7
CRG
• El eje de un CRG se define como la bisectriz del
ángulo alfa formado por las rectas que contienen
las aristas x e y de los obstáculos b1 y b2, luego se
construyen segmentos rectilíneos que se proyectan
para ser unidos con otros.
Ejemplo CRG
8
Observaciones
• Objetos poligonales
• La ruta más corta a obtener tiende a alejarse
de la distancia más corta real
• Entorno totalmente conocidos
Road Maps en General
• Los más utilizados son los PRM (probabilistic
Road Map), se construye una aproximación semialetoria del la conectividad de confiuraciones del
Cfree
• Consiste en un procesamiento sobre el Cfree en el
cual se utiliza una estrategia de muestreo para
obtener nodos sin colisión y luego se conectan los
nodos basandose en una estrategia de
conectividad simple
9
Ejemplo
Observaciones
• Se requiren de una buena estrategia de
muestreo
• Se requiere de una estrategia simple y
rápida de conectividad
• Requiere procesamiento de apoyo: quitar o
agregar nodos estratégicos
• Pueden haber pasadizos que no sen
descubiertos
10
Metodologías basadas en
Descomposición de Celdas
Descomposición en Celdas
• Idea: identificar las áreas libres de espacio y
establecer nodos en esas áreas
• Centrado en el espacio libre
• Se puede ajustar el nivel de discretización
• Algunas Técnicas:
– Descomposiciones Trapezoidales, verticales,
horizontales, enrejado
11
Descomposición en Celdas
• Basada en la construcción de un camino desde una
configuración inicial a una final, en una entorno
discretizado en celdas
• La ruta no está representada con segmentos como
en las metodologías anteriores, sino por una
secuencia de celdas
• Requiere 2 etapas
– Descomposición de celdas
– Construcción de un grafo de conectividad
Celdas trapezoidales
• Se consideran entre 3 o 4
vértices para formar un
trapezoides
• Cada trapecio representa
una zona libre por la cual
puede transitar el robot
• Cada trapecio representa
un nodo que se conecta
con otros trapecios
12
Celdas Trapezoidales
Celdas verticales (horizontales)
• Generar trazos verticales (horizontales)
desde cada uno de los vértices poligonales,
hasta el borde del entorno u otro obstáculo
• Situar dentro de las zonas generadas un
nodo representativo de la zona
• Generar un mapa de camino de acuerdo a la
adyacencia de cada zona (no
necesariamente visibilidad)
13
Ejemplo 1
• Descompocisión Vertical
Ejemplo 2
c14
c4
c5
c2
c7
c8
c15
c11
c1
c10
c3
c6
c9
c12
c4
c2
c13
c14
c7
c15
c5
c8
c1
c11
c10
c3
c6
c9
c13
c12
14
Ejemplo 3
• Descomposición Horizontal
1
1
3
2
5
3
2
4
5
6
7
7
6
8
4
8
9
11
9
10
11
12
10
12
Descomposiciones no exactas
• A la descomposición en trapezoides, celdas
verticales y horizontales, se pueden
encontrar otras formas de celdas
• La información del grafo de conectividad es
solo en adayacencia, por ello el resultado
será una secuencia de zonas que debe visitar
el robot
• Como el robot navega dentro de la zona o
celda, es un tema abierto.
15
Engrillado
• Construir una colección de
celdas que no se
superpongan de manera que
cubra aproximadamente
todo el Cfree
• Los obstáculos pueden ser
discretizados en celdas, de
los contrario se tendran
celdas empty, full y mixed
Engrillado
16
Engrillado regular
• El tamaño del espacio de búsqueda depende de la
resolusión y de la conectividad
Ajustando resolución
• Dependiendo del nivel de detalle, puede
haber o no solución
17
Observaciones
• Ventajas del engrillados
– Simple y descomposición uniforme
– Fácil y eficiente de implementar
– Puede ser re-adaptado de acuerdo a la resolución
requerida
• Desventajas del engrillado
– Gran requerimiento de almacenamiento
– Pérdida de exactitud y zonas de contacto
– Pérdida de completitud (pueder fallar el encontrar un
camino)
– La descomposición no está basada en CB
Arboles de Celdas (trees)
• Para reducir memoria se utilizan quadtree en un
lugar de un engrillado
• Se basa en una sucesión subdivisiones en
cuadrantes
• Proceso:
Una región es recursivamente subdividida en 4 cuadrantes hasta
encontrar una region libre (cuadrante libre) de obstáculos o
hasta un tamaño mínimo de grilla (típicamente A(q) )
• Camino generado es subóptimo ya que la
conexión entre celdas es un segmente entre los
centros de éstas
18
Quadtree
• Si la celdas es mixta,
ésta puede tener hijos
(subdividir)
• Si la celda es full, no
tiene hijos y no es
transitable
• Si la celda es empty, la
celda es transitable, y
no hay necesidad de
subdividar
Formación del Arbol
19
Dimensionalidad
• Si W=IR2 quadtree
• Si W=IR3 octree
Observaciones
• Si m=dim(W) y h es la profunidad del árbol
– La cantidad de hijos de una celda es 2m
– La altura del h estará dada por el nivel de
resolución máximo
• En el peor caso, ésta técnica no está
acotada. Si determinamos un nivel máximo
de resolución, el árbol tiene 2mh nodos
• Mejoras en la técnica de conexión entre
celdas
20
Campos Potenciales
• Técnica de planificación mediante el uso de
campos potenciales artificiales
• Se basa en una analogía:
– El robot se ve como una partícula con carga eléctrica
– El espacio libre se considera como un campo potencial
– Los obstáculos tienen un carga eléctrica del mismo
signo del robot (se repelen)
– La meta tiene una carga eléctrica de signo opuesto al
robot (se atraen)
Campos Potenciales Artificiales
• La función de potencial de
una configuración dada está
compuesta por:
U(q)=UA(q)+UR(q)
• El robot se mueve en función
de la fuerza local
F(q)= U(q)
21
Funciones de Potencial
• Para obtener las fuerzas hay que modelar el las
funciones de potencial de la meta y obstáculos –
calculando el potencial para cada punto del
espacio libre:
• Meta – “atractor parabólico”
UA(q) = k1 dist(q, meta)2
• Obstáculo – “barrera potencial exponencial”
UR(q) = k2 dist(q, obstáculo)-1
La velocidad del robot se modela proporcional a la
fuerza
Funciones de Potencial
• Ventajas:
– Se pueden generar trayectorias en tiempo real a partir
del campo de fuerzas
– Las trayectorias generadas son suaves
– Facilita el acoplar la parte de planeación con control
• Desventajas:
–
–
–
–
Mínimos locales!
Anulación de Potencial
Obstáculos Cóncavos pueden generar oscilaciones
Se considera el robot puntual
22
Descargar