Download Robot bípedo

Document related concepts
Transcript
Optimización evolutiva del paso
de un robot bípedo real
DTR4All
27 de Junio de 2011
Madrid
Autores:
- D. Miguel Angel Rodríguez Román
- D. Francisco José Barroso Casanova
- D. José Ignacio Gómez González
- D. Antonio Peregrín Rubio
Área Ciencias de la Computación
Grupo de Sistemas Inteligentes y Minería de Datos
Universidad de Huelva
Motivación
- El aprendizaje del andar bipedo puede ser utilizado para dar soporte
a personas con disminución de las capacidades motoras.
- Plataforma rehabilitación: Lokomat
-Sin control de equilibrio
-Entrenamiento de la musculacion
-Sin aprendizaje
Optimización Evolutiva de la Locomoción de un Robot Bípedo
2
Objetivo
- Sistema evolutivo para la optimización automática de la
locomoción de un robot bípedo:
- Capaz de aprender el movimiento completo de un paso
mejorando la velocidad de avance y el equilibrio .
- Mejorar la suavidad en el balanceo lateral
- Partir de un movimiento imperfecto pero funcional.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
3
Optimización evolutiva en línea del paso de un robot bípedo real
Índice
ƒ Introducción.
ƒ Sistema Inteligente.
ƒ Implementación del Sistema.
ƒ Estudio Experimental.
ƒ Conclusiones.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
4
Introducción
Descripción del sistema
ƒ Robot bípedo que realiza un intento de paso completo recibiendo para
cada fracción del paso las instrucciónes de la posición de cada servo.
ƒ El robot mide los parámetros a mejorar en cada momento: suavidad del
paso (disminución de balanceo) y velocidad de avance.
ƒ Inteligencia: algoritmo evolutivo que utiliza estas medidas para generar
nuevos intentos de paso hasta que se consigue la mejora deseada.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
5
introducción
Descripción General
Optimización Evolutiva de la Locomoción de un Robot Bípedo
6
Optimización evolutiva en línea del paso de un robot bípedo real
Índice
ƒ Introducción.
ƒ Sistema Inteligente.
ƒ Implementación del Sistema.
ƒ Estudio Experimental.
ƒ Conclusiones.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
7
Sistema Inteligente
ƒ Optimización de la locomoción bípeda.
- Problema con espacio de soluciones muy elevado:
- Número de combinaciones posibles del conjunto total de sensores
ƒ Sistema de optimización basado en un algoritmo genético CHC.
- Control efectivo de la convergencia
- Operadores de cruce adaptados a números reales
Optimización Evolutiva de la Locomoción de un Robot Bípedo
8
Sistema Inteligente
Definición del Sistema Evolutivo
ƒ Cromosoma. Almacena una secuencia completa de posiciones estáticas
que simulan un paso.
ƒ Genes. Define las posiciones de todos los elementos de cada articulación
para una posición estática determinada.
ƒ Población. Conjunto de individuos sometidos a evaluación dentro de cada
generación.
ƒ Generaciones. Iteraciones de las que consta el algoritmo.
ƒ Función de cruce. BLX-alpha.
ƒ Evaluación. Cálculo de la idoneidad de una solución en función de la
distancia recorrida y la estabilidad del modelo.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
9
Sistema Inteligente
Genes y Cromosomas
Optimización Evolutiva de la Locomoción de un Robot Bípedo
10
Sistema Inteligente
Población y Generaciones
ƒ Población Inicial pseudo aleatoria (Factor de Aleatoriedad).
ƒ Factor de similitud.
ƒ Rearranque.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
11
Sistema Inteligente
Función de Cruce
C Max = Maximo(ValorPadre1 ,ValorPadre 2 )
C Min = Minimo(ValorPadre1 ,ValorPadre 2 )
I = C Max − C Min
Optimización Evolutiva de la Locomoción de un Robot Bípedo
12
Sistema Inteligente
Evaluación
ƒ Basada en la medición de la distancia recorrida y el ZMPMedio acumulado en
la secuencia de un paso completo.
ƒ ZMP (Zero Moment Point). Proyección en el suelo del centro de gravedad
de un cuerpo.
ƒ ZMPMedio . Media aritmética de todos los módulos de los vectores ZMP
resultantes de cada posición estática de una escena.
ƒ ZMPFinal . Factor normalizado de ZMPMedio .
ƒ Parámetro factor de evaluación. Establece el equilibrio entre distancia
recorrida y la estabilidad del modelo robótico.
ƒ Evaluación de la caída del robot. Atributo step.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
13
Optimización evolutiva en línea del paso de un robot bípedo real
Índice
ƒ Introducción.
ƒ Sistema Inteligente.
ƒ Implementación del Sistema.
ƒ Estudio Experimental.
ƒ Conclusiones.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
14
Implementación del Sistema
ƒ Modelo robótico a escala basado en un producto comercial
denominado Lynxmotion Robot Scout.
ƒ Modificaciones realizadas:
- Adaptación de los servomotores de las articulaciones
para simular el caminar humano.
- Incorporación del controlador de servomotores.
- Incorporación controlador principal.
- Incorporación de sensores de presión.
- Incorporación de sistema de medida de distancia.
- Incorporación de sistema de comunicaciones por radio.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
15
Implementación del Sistema
Descripción General
ƒ Modelo robótico a escala de reducidas dimensiones.
ƒ Controlador principal de escasa potencia computacional.
ƒ Incorporación de un PC para la ejecución del algoritmo evolutivo.
ƒ El tamaño del robot impide el montaje conjunto del sistema inteligente y el
robótico.
ƒ División del modelo robótico en dos módulos:
- Sistema Computador.
- Sistema Robótico.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
16
Implementación del Sistema
Sistema Computador
ƒ Módulo de Inteligencia Artificial.
ƒ Control de comunicaciones.
ƒ Sistema de Almacenamiento de datos.
ƒ Interface gráfica de usuario.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
17
Sistema Computador
Interface Gráfica de Usuario
Optimización Evolutiva de la Locomoción de un Robot Bípedo
18
Descripción General
Sistema Robótico
ƒ Módulo de control principal.
ƒ Sensores.
ƒ Actuadores.
ƒ Control de comunicaciones.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
19
Sistema Robótico
Módulo de Control Principal
ƒ Javelin Stamp Module.
ƒ Programable en lenguaje Java
ƒ Control software de todos los
componentes del sistema robótico.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
20
Sistema Robótico
Sensores
ƒ Sensores de presión Flexiforce A201.
ƒ Distribución de cuatro sensores en la planta de cada pie.
ƒ Captura de medidas para calcular la estabilidad del
sistema robótico
ƒ Implementación de sistema corrección de errores.
ƒ Sensor de Ultrasonidos SRF235.
ƒ Colocación de un sensor en el frontal sobre un balancín
motorizado.
ƒ Captura de distancia sobre un punto de referencia para calcular
el desplazamiento del robot.
ƒ Implementación de sistema corrección de errores.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
21
Sistema Robótico
Actuadores
ƒ Servomotor HS-5645MG.
ƒ Distribución de doce servos por las articulaciones.
- Uno en cada rodilla.
- Dos en cada tobillo.
- Tres en cada cadera.
ƒ Controlador de servos SD21.
ƒ Control sincronizado y paralelo de los servomotores
del sistema.
ƒ Gestión de I/O de los componentes de sistema
robótico.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
22
Sistema Robótico
Control de Comunicaciones
ƒ Transceptor de datos punto a punto inalámbrico
WIZ-434-SML-IA.
ƒ Detección de errores: CRC Internet.
ƒ Gestión capa enlace:
- Control de flujo: Parada y Espera.
- Cuatro modos de ejecución.
ƒ Gestión capa Física: envío y recepción de tramas.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
23
Optimización evolutiva en línea del paso de un robot bípedo real
Índice
ƒ Introducción.
ƒ Sistema Inteligente.
ƒ Implementación del Sistema.
ƒ Estudio Experimental.
ƒ Conclusiones.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
24
Estudio Experimental
Dimensionalidad del Problema
ƒ Espacio de soluciones muy grande:
- Número de servomotores = 12.
- Posiciones posibles para cada servomotor (750-2200) = 1450.
- Numero de posiciones estáticas para una secuencia = 18.
(
- Total de soluciones para una secuencia completa = 8 , 64 * 10
37
)
18
= 7 ,17 * 10
ƒ Reducción del espacio de soluciones para la experimentación:
- Aumentar el paso del servomotor de 1 a 5 = reducción de 1450 a 290 posiciones.
- Reducir el rango de los servos para asemejarlos a articulaciones y eliminar valores
imposibles.
(
)
10 18
Rango = 48252028391424 *10
Optimización Evolutiva de la Locomoción de un Robot Bípedo
= 2,01*10 426 posiciones
25
682
Estudio Experimental
Dimensionalidad del Problema
ƒ Reducción del espacio de soluciones para la experimentación:
- Un paso completo puede ser dos medios pasos, uno simétrico al otro.
(
Soluciones = 2 * 48252028391424 *1010
)
9
= 2,84 *10 213 posiciones
- Acotar la población inicial del algoritmo genético: Factor de aleatoriedad o
Randomness
Optimización Evolutiva de la Locomoción de un Robot Bípedo
26
Estudio Experimental
Limitaciones del Sistema
ƒ Pasar de un modelo teórico al práctico :
- Falta de exactitud en mediciones.
- Holgura e imperfección en los componentes mecánicos.
- Entorno (deslizamiento superficie suelo).
Optimización Evolutiva de la Locomoción de un Robot Bípedo
27
Estudio Experimental
Configuración del Sistema
ƒ Población ► 20.
ƒ Generaciones ► 30.
ƒ Factor de evaluación (σ) ► 1.
ƒ Alpha (α) ► 0,5.
ƒ Porcentaje de similitud ► 15%.
ƒ Porcentaje de aleatoriedad (Ramdomness) ► 10%.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
28
Estudio Experimental
Experimentación y Resultados
ƒ Población Inicial:
Optimización Evolutiva de la Locomoción de un Robot Bípedo
29
Estudio Experimental
Experimentación y Resultados
ƒ Evolución de la mejor solución:
4,80
4,70
4,60
Evaluación
4,50
4,40
4,30
4,20
4,10
4,00
3,90
3,80
1
2
3
4
5
6
7
8
9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
Generaciones
Optimización Evolutiva de la Locomoción de un Robot Bípedo
30
Estudio Experimental
Experimentación y Resultados
ƒ Población Final:
Optimización Evolutiva de la Locomoción de un Robot Bípedo
31
Optimización evolutiva en línea del paso de un robot bípedo real
Índice
ƒ Introducción.
ƒ Sistema Inteligente.
ƒ Implementación del Sistema.
ƒ Estudio Experimental.
ƒ Conclusiones.
Optimización Evolutiva de la Locomoción de un Robot Bípedo
32
Conclusiones
Conclusión Final
ƒ Resultados en pocas generaciones.
ƒ Mejora con respecto a la solución inicial dada de un 40%
ƒ Armonía entre el avance y la estabilidad del sistema robótico.
ƒ Robustez. Independencia del ruido en servos y medidas.
ƒ Estabilidad: Aumento de la velocidad en un 70% a la solución final.
ƒ Capacidad de adaptación: Si la base róbotica cambia de una sesión a otra
en alguna de sus partes físicas (cambios, desgaste o superficie del suelo), o
si se empieza desde un paso aprendido, el sistema incorpora los cambios
evolucionando al mejor paso posible
Optimización Evolutiva de la Locomoción de un Robot Bípedo
33
Trabajos Futuros
Uso como plataforma de rehabilitación
ƒ Adaptación a estructura con aportación mixta de esfuerzo
- Algoritmo evolutivo más flexible
ƒ Adaptación estructura robótica
- Estructura robusta y fiable.
- Adaptación biomecánica a personas
- Sensores de presión y avance adaptados
ƒ Monitorización de resultados
- Aprendizaje a partir de sesiones
ƒ ¿Exoesqueleto independiente?
Lokomat ©
- Velocidad de avance
- Equilibrio: aprendizaje de movimiento balanceado
BerkeleyBionics ©
Optimización Evolutiva de la Locomoción de un Robot Bípedo
34
Optimización evolutiva del paso
de un robot bípedo real
DTR4All
27 de Junio de 2011
Madrid
Autores:
- D. Miguel Angel Rodríguez Román
- D. Francisco José Barroso Casanova
- D. José Ignacio Gómez González
- D. Antonio Peregrín Rubio
Área Ciencias de la Computación
Grupo de Sistemas Inteligentes y Minería de Datos
Universidad de Huelva