generador de modos de caminado en robots cuadrúpedos

132
UNIVERSIDAD SIM ´ ON BOL ´ IVAR Decanato de Estudios de Postgrado Maestr´ ıa en Ingenier´ ıa Electr´ onica GENERADOR DE MODOS DE CAMINADO PARA ROBOT CUADR ´ UPEDO BASADO EN PRINCIPIOS NEUROFISIOL ´ OGICOS Trabajo de Grado presentado a la Universidad Sim´ on Bol´ ıvar por Jos´ e de la Cruz Cappelletto Fuentes Como requisito parcial para optar al grado de Mag´ ıster en Ingenier´ ıa Electr´ onica Realizado con la tutor´ ıa del Profesor Juan Carlos Grieco Silva Octubre, 2006

Upload: vuonghanh

Post on 03-Jan-2017

235 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Generador de modos de caminado en robots cuadrúpedos

UNIVERSIDAD SIMON BOLIVARDecanato de Estudios de PostgradoMaestrıa en Ingenierıa Electronica

GENERADOR DE MODOS DE CAMINADO PARA ROBOTCUADRUPEDO BASADO EN PRINCIPIOS NEUROFISIOLOGICOS

Trabajo de Grado presentado a la Universidad Simon Bolıvar por

Jose de la Cruz Cappelletto Fuentes

Como requisito parcial para optar al grado de

Magıster en Ingenierıa Electronica

Realizado con la tutorıa del ProfesorJuan Carlos Grieco Silva

Octubre, 2006

Page 2: Generador de modos de caminado en robots cuadrúpedos

i

UNIVERSIDAD SIMON BOLIVARDecanato de Estudios de PostgradoMaestrıa en Ingenierıa Electronica

GENERADOR DE MODOS DE CAMINADO PARA ROBOTCUADRUPEDO BASADO EN PRINCIPIOS NEUROFISIOLOGICOS

Este Trabajo de Grado ha sido aprobado en nombre de la UniversidadSimon Bolıvar por el siguiente jurado examinador:

Presidente(Nombre y firma)

Miembro Externo(Nombre y firma)

Indicar Institucion a la que pertenece

Miembro Principal-Tutor(Nombre y firma)

Fecha:

Page 3: Generador de modos de caminado en robots cuadrúpedos

ii

A Dios

A mi familia

Page 4: Generador de modos de caminado en robots cuadrúpedos

iii

Agradecimientos

Antes que nada quiero expresar mi agradecimiento a Dios y a mis padres, siemprepresentes, quienes han sido para mı la mejor guıa que he podido recibir en mi vida. Gracias.

Quiero hacer un especial reconocimiento al Prof. Juan Carlos Grieco, mi tutor demaestrıa, primero por acoger este tema de tesis que reviste especial interes para mi persona;y tambien por su disposicion a colaborar y participar en todo el proceso de investigacion ydesarrollo haciendo posible la culminacion exitosa del presente trabajo. Son innumerableslas veces que hemos discutido sobre diversos temas desde la metodologıa, modelado, ydemas aspectos abarcados en esta tesis; aparte de otros temas que han ayudado en miformacion como persona y como profesional.

Mi mas profundo agradecimiento al Prof. Gerardo Fernandez, quien demostro unenorme interes en muchas fases del desarrollo de la presente tesis; y mas importante aun,ha sido para mi un ejemplo de profesional ıntegro y con etica. Por todo ello, ası como porsu constante colaboracion durante estos ultimos anos, muchısimas gracias.

A mis companeros de trabajo e investigacion: Wilfredis Medina, Leonardo Fermın,Pablo Estevez, Jose Guzman, Jose Miguel Bolanos, Dimitar Ralev y Ariel Tapia, conquienes compartı innumerables momentos dentro y fuera del laboratorio tanto de trabajocomo de ocio, haciendo de estos anos de estudio mas llevaderos. Sin saberlo o no, con suscomentarios influenciaron enormemente en este trabajo de investigacion. Por todo esto ymucho mas, gracias.

Finalmente, quiero agradecer al Decanato de Postgrado de la Universidad SimonBolıvar, quienes han apoyado este trabajo de investigacion al proveer los equipos ne-cesarios, ası como financiando su presentacion y publicacion en distintas conferencias ycongresos. Sin su ayuda no hubiese posible completar este trabajo.

Son muchas las personas que en una u otra forma, tambien influenciaron y dieronforma al presente libro. El que no esten nombradas aquı no significa que no les agradezcasu colaboracion; gracias a todos ellos.

Page 5: Generador de modos de caminado en robots cuadrúpedos

iv

Resumen

A fin de controlar efectivamente un robot caminante bajo ambientes no estructura-dos, es indispensable disponer de un modelo del sistema de locomocion que sincronice losmovimientos de las patas del robot de manera simple y flexible. Inspirado en los modelosneurofisiologicos de los sistemas biologicos, varios autores han propuesto soluciones basa-das en el esquema de un generador central de patrones denominado CPG, implementadocon redes neuronales recurrentes y sistemas osciladores acoplados. Estos aprovechan lasventajas de los modelos dinamicos, sin embargo el proceso de sıntesis de los parametrosresulta ser complejo debido a la dificultad para analizar tales modelos. En este trabajose estudian y comparan distintas propuestas del sistema de locomocion basados en prin-cipios biologicos, identificando las ventajas y desventajas de cada uno de ellas. Con laincorporacion del conocimiento del problema cinematico asociado a locomocion con pa-tas, se propone un modelo espacio-temporal del sistema de caminado, el cual facilita lasıntesis y el control de caminado de un robot cuadrupedo. Este modelo exhibe mejorascon respecto a los otros estudiados debido a que resuelve el problema de coordinacion defase entre las patas, a la vez que permite el control de la ubicacion espacial de las mismasindependientemente de la cinematica asociada a la estructura de las patas del robot.

Palabras Clave: Sistema de locomocion, Cinematica, Modelos Neurofisiologicos,CPG.

Page 6: Generador de modos de caminado en robots cuadrúpedos

v

Indice general

1 Introduccion 11.1 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . . 61.3 Justificacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Locomocion en robots con patas 82.1 Principios basicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.2 Sistema generador de modos de caminado . . . . . . . . . . . . . . . . . . 112.3 Modelo geometrico del sistema de locomocion . . . . . . . . . . . . . . . . 132.4 Representacion de modos de caminado mediante diagramas de fase . . . . 142.5 Equilibrio estatico en robots cuadrupedos . . . . . . . . . . . . . . . . . . . 16

3 Modelos neurofisiologicos del sistema locomotor en animales 203.1 Neurofisiologıa de la locomocion en animales . . . . . . . . . . . . . . . . . 203.2 Modelo descriptivo de Hodgkin-Huxley . . . . . . . . . . . . . . . . . . . . 22

3.2.1 Dinamica del modelo Hodgkin-Huxley . . . . . . . . . . . . . . . . 253.3 CPG: Central Pattern Generator . . . . . . . . . . . . . . . . . . . . . . . 27

4 Analisis comparativo de modelos de CPG 304.1 Modelo de Chiel-Beer usando CTRNN . . . . . . . . . . . . . . . . . . . . 31

4.1.1 Arquitectura de CPG basado CTRNN . . . . . . . . . . . . . . . . 334.1.2 Metodologıa para sıntesis de CPGs utilizando CTRNN . . . . . . . 34

4.2 Modelo de Buchli utilizando ACPO . . . . . . . . . . . . . . . . . . . . . . 504.2.1 Modelo de osciladores acoplados . . . . . . . . . . . . . . . . . . . . 514.2.2 Pruebas del modelo basado en ACPO . . . . . . . . . . . . . . . . . 58

4.3 Generacion de trayectorias dinamicas con DNN . . . . . . . . . . . . . . . 664.3.1 Generacion: sıntesis de red recurrente . . . . . . . . . . . . . . . . . 694.3.2 Modulacion: Sıntesis de red no recurrente . . . . . . . . . . . . . . . 70

4.4 Comparacion entre tecnicas para modelado de CPG . . . . . . . . . . . . . 72

5 Generador de modos de caminado en robots cuadrupedos 745.1 Propuesta de modelo del generador de modos de caminado . . . . . . . . . 76

5.1.1 Arquitectura del modelo propuesto . . . . . . . . . . . . . . . . . . 775.1.2 Referencias en tiempo . . . . . . . . . . . . . . . . . . . . . . . . . 775.1.3 Transicion entre trayectorias mediante redes neuronales . . . . . . . 805.1.4 Resultados de la sıntesis de trayectorias . . . . . . . . . . . . . . . . 86

5.2 Propuesta de modelo generador de modos de caminado . . . . . . . . . . . 89

Page 7: Generador de modos de caminado en robots cuadrúpedos

vi

5.2.1 Referencia temporal con ACPO . . . . . . . . . . . . . . . . . . . . 915.2.2 Transformacion espacial con red neuronal feedforward . . . . . . . . 975.2.3 Descripcion de experimento con plataforma cuadrupeda . . . . . . . 1005.2.4 Resultados experimentales y analisis . . . . . . . . . . . . . . . . . 102

6 Principales aportes, conclusiones y lineas de investigacion futuras 1116.1 Principales aportes y conclusiones . . . . . . . . . . . . . . . . . . . . . . . 1116.2 Trabajos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

Referencias Bibliograficas 119

Page 8: Generador de modos de caminado en robots cuadrúpedos

vii

Indice de tablas

3.1 Parametros del Modelo Hodgkin-Huxley . . . . . . . . . . . . . . . . . . . 243.2 Funciones empıricas para parametros m, n y h . . . . . . . . . . . . . . . . 24

4.1 Valores de parametros para CTRNN . . . . . . . . . . . . . . . . . . . . . 354.2 Salidas de CTRNN sintetizadas con AGs para salidas constantes . . . . . . 464.3 Salidas de CTRNN sintetizadas con AGs para salidas constantes varias . . 474.4 CTRNNs sintetizadas por AGs para valores de MAX dados . . . . . . . . 484.5 CTRNNs sintetizadas por AGs para valores de MIN dados . . . . . . . . . 494.6 (a) Desfases bases segun modo de caminado y (b) Fases normalizadas de

rotacion segun modo de caminado . . . . . . . . . . . . . . . . . . . . . . . 564.7 Matrices de rotaciones para CPG-ACPO . . . . . . . . . . . . . . . . . . . 564.8 Comparacion de tecnicas para modelado de CPG . . . . . . . . . . . . . . 72

5.1 Redes neuronales entrenadas . . . . . . . . . . . . . . . . . . . . . . . . . . 103

Page 9: Generador de modos de caminado en robots cuadrúpedos

viii

Indice de figuras

2.1 Tipos de patas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102.2 Sistema generador de modos de caminado . . . . . . . . . . . . . . . . . . 122.3 Parametros de modelo geometrico . . . . . . . . . . . . . . . . . . . . . . . 142.4 Diagramas de fases para una pata con distintos valores de β . . . . . . . . 152.5 Diagramas de modos de locomocion en robots cuadrupedos . . . . . . . . . 162.6 Condicion de equilibrio estatico en robots cuadrupedos . . . . . . . . . . . 172.7 Secuencia de caminado con equilibrio estatico para robots cuadrupedos . . 19

3.1 Diagrama esquematico del modelo Hodgkin-Huxley . . . . . . . . . . . . . 223.2 Funcion de equilibrio X0(u) y Constante de tiempo τ(u) en modelo Hodgkin-

Huxley . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253.3 Respuesta temporal del potencial u(t) ante entrada impulsiva . . . . . . . . 26

4.1 Ejemplos de CTRNN interconectadas . . . . . . . . . . . . . . . . . . . . . 324.2 Arquitectura de CPG basada en CTRNNs . . . . . . . . . . . . . . . . . . 334.3 Salidas de CTRNN de Chiel-Beer. Euler = 0.1 . . . . . . . . . . . . . . . . 354.4 Vista 2D de salida de CTRNN de 3 nodos . . . . . . . . . . . . . . . . . . 364.5 Vista 3D de campo atractor. Configuracion monoestable . . . . . . . . . . . 374.6 Vista 2D de campo atractor. Configuracion monoestable . . . . . . . . . . . 384.7 Intensidad de campo atractor. Configuracion monoestable . . . . . . . . . . 384.8 Vista 3D de campo atractor. Configuracion biestable . . . . . . . . . . . . . 394.9 Vista 2D de campo atractor. Configuracion biestable . . . . . . . . . . . . . 404.10 Intensidad de campo atractor. Configuracion biestable . . . . . . . . . . . . 404.11 Vista 3D de campo atractor. Configuracion oscilador . . . . . . . . . . . . 414.12 Vista 2D de campo atractor. Configuracion oscilador . . . . . . . . . . . . 414.13 Intensidad de campo atractor. Configuracion oscilador . . . . . . . . . . . 424.14 Desfases para distintos estados iniciales en configuracion oscilador . . . . . 424.15 Solucion oscilatoria para PROobjetivo = [−4,−1, 7]T . . . . . . . . . . . . . 484.16 Formas de onda: (a) Referencia y (b) Sintetizada por AGs . . . . . . . . . 494.17 Representacion de perturbacion en oscilador no lineal . . . . . . . . . . . . 524.18 Ciclo lımite para ACPO con ro = 1, g = 10 y ω = 2π . . . . . . . . . . . . 534.19 Arquitectura de conexion para CPG con ACPO . . . . . . . . . . . . . . . 554.20 Funciones de transicion de fases . . . . . . . . . . . . . . . . . . . . . . . . 574.21 Ciclo lımite de ACPO en para distintos valores de g . . . . . . . . . . . . . 594.22 Salidas de CPG-ACPO en funcion del tiempo, Pmodo = 0 . . . . . . . . . . 614.23 Trayectorias en el plano del vector q para cada pata . . . . . . . . . . . . . 624.24 Fases de cada pata en funcion del tiempo . . . . . . . . . . . . . . . . . . . 63

Page 10: Generador de modos de caminado en robots cuadrúpedos

ix

4.25 Modulos para cada pata en funcion del tiempo . . . . . . . . . . . . . . . . 634.26 Salidas de CPG-ACPO en funcion del tiempo, Pmodovariable . . . . . . . . 644.27 Arquitectura de DNN basada en RNN y NRNN . . . . . . . . . . . . . . . 67

5.1 Modelo propuesto para generador de modos de caminado. . . . . . . . . . . 775.2 Estructura de red feedforward para transicion de trayectorias. . . . . . . . 815.3 Formas de onda: (a) Triangular (b) Rectangular (c) Redondeada . . . . . . 825.4 Diagrama de una pata en el cuadrupedo . . . . . . . . . . . . . . . . . . . 835.5 Referencias angulares para los 3 perfiles . . . . . . . . . . . . . . . . . . . . 845.6 Sistema de entrenamiento de red feedforward . . . . . . . . . . . . . . . . 855.7 Error promedio vs No de epocas para 3 grupos de redes neuronales . . . . . 865.8 Salidas de red neuronal para entradas: (a) Rampa (b) U-V (c) CTRNN . . 885.9 Efecto de overfitting en trayectorias. . . . . . . . . . . . . . . . . . . . . . 895.10 Arquitectura de modelo de CPG propuesto . . . . . . . . . . . . . . . . . . 915.11 Relaciones de fase vs tiempo. . . . . . . . . . . . . . . . . . . . . . . . . . 925.12 Vectores de salida vs tiempo. . . . . . . . . . . . . . . . . . . . . . . . . . . 935.13 Trayectorias en el plano del vector q para cada pata ante cambios de fases. 945.14 Modulo de q1 vs tiempo. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955.15 Grafica de curva de compansion c(x, β). . . . . . . . . . . . . . . . . . . . . 965.16 Estructura de la red neuronal. . . . . . . . . . . . . . . . . . . . . . . . . . 985.17 Esquema de entrenamiento de red neuronal. . . . . . . . . . . . . . . . . . 995.18 Ubicacion de sensores sobre la plataforma robotica. . . . . . . . . . . . . . 1025.19 Trayectoria de ejemplo para entrenamiento. . . . . . . . . . . . . . . . . . 1035.20 Vista en plano Y-Z de las trayectorias de salida de las redes neuronales. . . 1045.21 Graficas de aceleraciones para red NN1. . . . . . . . . . . . . . . . . . . . . 1075.22 Graficas de aceleraciones para red NN2. . . . . . . . . . . . . . . . . . . . . 1085.23 Graficas de aceleraciones para red NN4. . . . . . . . . . . . . . . . . . . . . 1095.24 Graficas de aceleraciones para red NN5. . . . . . . . . . . . . . . . . . . . . 110

Page 11: Generador de modos de caminado en robots cuadrúpedos

1

Introduccion

El sistema de locomocion es uno de los mas importantes al momento de disenar

robots moviles. Esto se fundamenta principalmente en que dicho sistema lleva a cabo la

compleja tarea de coordinar el conjunto de actuadores presentes en la plataforma, a fin

de lograr una interaccion con el medio cuya consecuencia directa sea el desplazamiento

controlado del movil. Se tiene que para el caso especıfico de locomocion sobre sustrato

rıgido las dos opciones principales son las ruedas y las patas. La opcion de usar ruedas

para el movimiento de la plataforma se remonta hasta principios de la historia de los robots

moviles en sı, pero el uso de patas ha demostrado ser mas adecuado en muchas aplicaciones

actuales[1][2], por sus mejores prestaciones en aspectos como eficiencia, versatilidad y

menor intrusion en el medio, haciendo de la misma una eleccion correcta para tareas

complejas en ambientes poco estructurados.

Existen recientes trabajos de investigacion orientados al uso de nuevos enfoques

en el diseno del sistema de locomocion, en especial para robots con patas. Algunos de los

principales aportes provienen de trabajos que se basan en observaciones efectuadas en cam-

pos como la biologıa y la neurofisiologıa. Mediante la observacion de los comportamientos

durante el caminado en distintos animales,

1.1 Antecedentes

Estudios en el area de neurofisiologıa soportan la hipotesis de que el proceso de

caminado es de naturaleza altamente distribuido y paralelo, y no centralizado en el cerebro

Page 12: Generador de modos de caminado en robots cuadrúpedos

2

como se sostenıa hace tiempo. Actualmente se considera que el proceso de control ejercido

por el cerebro corresponde a senales de alto nivel, que se combinan en la espina dorsal con

la realimentacion proveniente de los sensores en las patas, a fin de modificar la senal de

excitacion o inhibicion de cada uno de los actuadores, ası como la relacion de fase entre

las patas. El sistema encargado de la fusion e interpretacion de las senales de control de

alto nivel con la realimentacion local de bajo nivel recibe el nombre de generador central

de patrones (CPG por sus iniciales en ingles)[3].

A. Billard y A. J. Ijspeert han realizado propuestas de sistemas neuronales para

el control motor en robots cuadrupedos y bıpedos [4][5]. Utilizando un modelo de red

neuronal oscilatoria compuesta por neuronas denominadas integradores con fuga, fueron

capaces de generar distintos modos de caminado para un cuadrupedo con 2 grados de

libertad (GDL) por pata. Tambien incluyeron realimentacion de posicion en cada una

de las articulaciones actuadas. Mediante una senal de control externa, fueron capaces de

modular la transicion entre los modos de caminado a la vez que podıan tambien controlar

la frecuencia de oscilacion del sistema y con ello la velocidad de caminado del robot.

Observaron que el sistema podıa pasar de un estado de reposo a caminado mediante una

excitacion externa percibida mediante la realimentacion en las articulaciones. Si bien el

esquema por ellos propuesto no fue evaluado en una maquina caminante compleja, lograron

probar el concepto basico de modelado del sistema de caminado mediante el uso de redes

neuronales.

La representacion del sistema de caminado mediante CPG no se ha limitado a

robots con patas. Hay trabajos como el de J. Conradt y P. Varshavskaya [6], en el cual

se describe el control de un robot tipo serpiente mediante el uso de un CPG con una

estructura distribuida. El robot descrito posee un elevado numero de GDL, cada uno de

ellos representados por actuadores rotacionales entre cada uno de los segmentos rıgidos del

robot. Un sistema de osciladores acoplados fue utilizado para controlar la relacion de fase

entre senales sinusoidales de referencia de angulo para cada uno de los actuadores. A pesar

de la simplicidad de la cadena cinematica de cada elemento rıgido de la serpiente, donde

Page 13: Generador de modos de caminado en robots cuadrúpedos

3

solo hay acople entre motores vecinos, no lograron obtener un metodo determinıstico para

el calculo de los parametros del modelo para un modo de locomocion dado. Sin embargo,

este trabajo reviste cierta importancia ya que ilustra la aplicacion de un verdadero esquema

de control distribuido puesto que todos los elementos osciladores son identicos, sin que

hubiese una unidad de procesamiento principal.

El uso de principios biologicos de locomocion no se reduce a robots inspirados

en animales vertebrados. Schmitz et al [7] describen el desarrollo de un controlador de

caminado para un robot hexapodo basandose en investigaciones realizadas en insectos.

Ellos reportan que haciendo uso de las propiedades fısicas del sistema, es posible el control

de caminado sin necesidad de informacion explıcita de la geometrıa del sistema mecanico.

Identifican la generacion del caminado como una propiedad emergente del uso de unas

pocas reglas simples a nivel local de las patas, y que dependen del estado de sus pares

vecinos. Nuevamente en este trabajo se refuerza el concepto de distribucion de la tarea de

sıntesis de modos de caminado. Al final proponen que la inclusion de realimentacion de

sensores locales permitirıa la obtencion de reflejos automaticos tal y como ocurre en los

sistemas biologicos.

Tambien se ha identificado al CPG como una implementacion del concepto de per-

cepcion integral en el proceso de caminado. Este es un nuevo paradigma para la compren-

sion del sistema de locomocion. Varios autores proponen la existencia un vınculo impor-

tante entre la locomocion con patas y el proceso de percepcion. Por ejemplo, M. A. Lewis

[8][9] representa las senales proveniente de los sensores de manera cualitativa a traves de

modelos abstractos. Utilizando un modelo del sistema locomotor realimentado localmente,

junto con un sistema de prediccion, el autor cita haber obtenido mejoras en el desempeno

del sistema de caminado para la evasion de obstaculos, en comparacion con un sistema

de control correctivo convencional. Dicha mejora se vuelve marginal conforme aumenta

el tamano del obstaculo, pero para dimensiones reducidas del obstaculo la diferencia del

desempeno es notable. Fukuoka, Kimura y Cohen [10][11] mediante la incorporacion del

concepto de percepcion integral, han logrado disenar e implementar un sistema de control

Page 14: Generador de modos de caminado en robots cuadrúpedos

4

de caminado dinamico, con capacidad de operar sobre terrenos irregulares. La plataforma

por ellos usada fue un robot cuadrupedo con 2 GDL por patas, con configuracion de las

patas tipo mamıfero. Ellos tambien senalan el compromiso existente entre el consumo de

energıa y el equilibrio de la plataforma robotica, tal como reportan otros autores que usan

modelos convencionales del sistema de caminado [1][12][13][14]

En lo que respecta a las implementaciones de CPG, han habido varias propuestas

contandose entre las mas importantes las hechas por R. Beer y H. Chiel [15][16] en las

cuales se usan redes recurrentes continuas en tiempo (CTRNNs), donde se aprovechan las

caracterısticas dinamicas de este tipo de redes para replicar el comportamiento cıclico de

los actuadores en cada pata. Existen varias investigaciones que se basan en el modelo de

Amari-Hopfield[17] de modulos osciladores simples cuyo analisis individual resulta menos

complejo que en el caso de las CTRNNs, pero la obtencion de un comportamiento glo-

bal del sistema que permita controlar la locomocion con patas sigue siendo de notable

complejidad. Tambien existen modelos dinamicos de osciladores controlados por ampli-

tud (ACPO) como el propuesto por Buchli[18], en el cual la descripcion matematica del

sistema de coordinacion temporal entre las patas ofrece un metodo casi directo para la

generacion de varios modos de caminado.

Beer y Chiel[15][16], hacen uso de algoritmos geneticos (AGs) para la sıntesis de los

parametros del CPG modelado mediante CTRNNs. Como modelo de plataforma robotica

usan un hexapodo de 2 GDL por pata. Si bien el uso de AGs implica la ausencia de un

proceso determinıstico para la obtencion de los parametros, los autores hacen un estudio

exhaustivo de diferentes topologıas de conexion de las neuronas usadas en el CPG. Tam-

bien analizan el impacto del numero de neuronas en la obtencion de un patron de caminado

en especıfico. Mediante la representacion de cada neurona como un modulo dinamico iden-

tifican los principios basicos que rigen la evolucion temporal de los estados del CPG. La

incorporacion de este concepto facilita la comprension del fenomeno de emergencia de

comportamientos oscilatorios.

Page 15: Generador de modos de caminado en robots cuadrúpedos

5

La implementacion de CPG mediante ACPO, tal como propone Buchli representa

una notable simplificacion de la arquitectura central. Mediante este enfoque el autor logra

resolver el problema de coordinacion del movimiento entre las patas, utilizando tantos

osciladores como patas esten presentes. El sistema que estudia con detalle es el correspon-

diente a un cuadrupedo. En [19] se propone la existencia de una senal unica para el control

de la relacion de fases del modo de caminado, siendo dicha senal de naturaleza continua

lo cual permite la transicion suave entre modos como galope y caminado, por ejemplo.

La forma en que estructura el modelo permite a su vez controlar de manera directa la

velocidad de oscilacion de las patas. En este modelo de osciladores acoplados se resuelve

el problema de sincronizacion durante la transicion entre distintos modos de caminado,

pero los problemas de ubicacion espacial de la pata ası como la relacion de fase entre los

actuadores dentro de cada pata, permanecen sin solucion alguna. Esta situacion es mas

compleja cuando se desea controlar el caminado de plataformas con un mayor numero de

grados de libertad en cada pata.

Ghigliazza et al [20], se propone un modelo reducido de CPG, pero funcionalmente

equivalente. Este trabajo se centra en el modelo biomecanico de locomocion en insectos

como las cucarachas. Adaptan un modelo de neuronas de estallido de 3 dimensiones como

se describe en [21], a una version reducida cuya implementacion se basa en osciladores

acoplados. Con esta tecnica se controlo la frecuencia de los pasos y el ciclo de trabajo de

cada pata, a la vez que controlaban directamente los actuadores presentes en todas y cada

una de las patas. Al ser una estructura de red neuronal simetrica, a la cual se le puede apli-

car un tratamiento analıtico, fue posible extraer principios generales del comportamiento

del sistema en base a los parametros del modelo. Al igual que en el trabajo de Beer y

Chiel, efectuan un analisis dinamicos de los componentes basicos. De esta manera logran

resolver el problema de coordinacion entre los actuadores dentro de cada pata, existente

en la propuesta de Buchli, manteniendo el uso de osciladores acoplados que resultan ser

de mas facil comprension que las CTRNNs.

Page 16: Generador de modos de caminado en robots cuadrúpedos

6

1.2 Planteamiento del problema

En trabajos previos de modelado del sistema locomotor en robots con patas, uti-

lizando principios neurofisiologicos, se han planteado y evaluado soluciones con arqui-

tecturas especıficas que dificultan la generalizacion de su uso en robots con diferentes

estructuras mecanicas. En algunas investigaciones se han logrado identificar componentes

que son relevantes en el sistema de caminado, ası como modelos funcionalmente equivalen-

tes que facilitan el diseno de partes del sistema completo. Sin embargo, no queda resuelto

de manera explıcita el problema de coordinacion de movimientos entre patas y dentro de

las mismas, en especial para el caso especıfico de plataforma cuadrupeda con 3 GDL. Por

ello existe la necesidad de desarrollar un modelo de caminado el cual permita sintetizar

diferentes modos de caminado sin que se requieran cambios alguno en la arquitectura del

mismo. Tambien se necesita poder controlar la trayectoria espacial de cada una de las

patas, permitiendo la implementacion de esquemas de control externos a fin de adaptar

el caminado del robot para cumplir con diferentes tareas. Un inconveniente presente en

varias de las soluciones existentes para caminado en robot, es que el modelo de locomocion

depende fuertemente de la estructura cinematica de las patas. Por esto se prefiere un mo-

delo donde las modificaciones en las patas impacten de manera mınima en la arquitectura

del mismo.

1.3 Justificacion

Para controlar de manera mas efectiva los robots caminantes en ambientes no es-

tructurados, es necesario disponer de un modelo del sistema de locomocion que resuelva el

movimiento coordinado de las patas de manera simple, y que a la vez sea lo suficientemente

flexible como para permitir la intervencion de un sistema externo y adecuar el movimiento

de cada pata a los requerimientos particulares de la tarea a resolver. Mediante el uso de

principios neurofisiologicos se plantea una solucion que cubre algunas de las desventajas

Page 17: Generador de modos de caminado en robots cuadrúpedos

7

presentes en modelos previos en lo que respecta a la coordinacion entre las patas, y tam-

bien se evita la dependencia respecto a una configuracion cinematica especıfica para las

patas del robot.

El trabajo aquı descrito es de especial relevancia debido se usa como plataforma de

prueba del modelo un robot cuadrupedo de tres grado de libertad por pata, area donde hay

menos trabajos de investigacion sobre modelado neurofisiologico del sistema de locomocion,

situacion que no ocurre en los ampliamente estudiados robots hexapodos y cuadrupedos

con solo dos grados de libertad por pata.

Page 18: Generador de modos de caminado en robots cuadrúpedos

8

Locomocion en robots con patas

En este capıtulo se describen los principios de locomocion en robots, en particu-

lar para plataformas con patas. Se mencionan los tipos principales de robots caminantes,

ası como diferentes modos de caminado. Luego se explica con detalle el modelo geometrico

convencional del sistema de caminado, incluyendo la representacion de los modos de cami-

nado a traves de diagramas de fase. Finalmente se comentan las condiciones de equilibrio

estatico necesarias en modos de caminado para robots cuadrupedos.

2.1 Principios basicos

Los tipos de movimientos en animales, ası como en plataformas roboticas pueden

ser clasificados como cambio de forma y locomocion. La locomocion depende de las fuerzas

aplicadas, las cuales deben poseer una componente en la misma direccion del desplaza-

miento pero con sentido contrario. Segun [1] existen cuatro tipos de fuerzas involucradas:

• Propulsion: empuje contra la superficie en la direccion del movimiento

• Friccion para el aumento del empuje de propulsion.

• Adhesion para contrarrestar las fuerzas no propulsivas que tiendan a despegar al

movil del sustrato.

• Soporte para resistir las fuerzas que tiendan a presionar al movil contra el sustrato.

Page 19: Generador de modos de caminado en robots cuadrúpedos

9

Notese que no todas las fuerzas senaladas anteriormente estan siempre presentes en

el proceso de locomocion, o bien no parece evidente su presencia. Sin embargo se puede

afirmar que en varios casos esta involucrada tanto la reaccion de la superficie como la

mecanica de fluidos (volar y nadar). La locomocion requiere un contacto entre el movil y

la superficie para que provea de soporte y adhesion. Este contacto tambien puede ser util

para la propulsion mediante la friccion.

En el caso de locomocion con patas, la limitacion fundamental es la dimension finita

de cada paso, por lo cual cada pata debe ser movida hacia adelante y atras de manera

repetida para lograr la locomocion de la plataforma. Dado esto el sistema locomotor tiene

una caracterıstica propia de oscilacion. Esta caracterıstica es de importancia en el momento

de modelar la secuencia de caminado del robot completo. Una consecuencia del proceso

de transferencia de la pata de atras hacia adelante, momento durante el cual se separa de

la superficie, es que el soporte del robot debe hacerse mediante otros medios, siendo las

posibles opciones las siguientes:

• El movil descansa sobre su cuerpo durante las transferencias de las patas, esto reduce

la velocidad maxima.

• La plataforma esta provista de multiples patas, donde mientras se transfiere un grupo

de ellas, aun quedan otras en contacto con la superficie dando soporte al robot.

• El movil vuela balısticamente entre pasos de propulsion, donde el equilibrio pasa a

ser dinamico, y posiblemente se requiera algun soporte dinamico.

La primera opcion es adecuada en maquinarias pesadas y lentas donde la velocidad

no es crıtica, prefiriendose la simplicidad del manejo de las patas. La opcion de vuelo

balıstico es util donde se requiere velocidad, sin embargo el control de la dinamica involu-

crada es una tarea extremadamente compleja [1][22]. La opcion mas usada es la segunda.

Aquı el problema es coordinar las fases de apoyo y transferencia de las patas, ası como

Page 20: Generador de modos de caminado en robots cuadrúpedos

10

la correccion de tales movimientos segun los cambios de desplazamientos y las variaciones

del entorno. El sistema que se encarga de dicha coordinacion recibe el nombre de sistema

generador de modos de caminado.

Entre los robots con patas, se puede utilizar el numero de las mismas como un

criterio de clasificacion, estando los monopodos, bıpedos, cuadrupedos y hexapodos por

mencionar los mas comunes. Tanto los monopodos y los bıpedos conforman de por si un

grupo aparte debido a que durante la fase de transferencia de las patas a lo sumo hay

una sola pata en contacto con el sustrato. En lo concerniente al tipo de patas existen

dos grupos principales basandose en la estructura animal que la motiva: tipo reptil y tipo

mamıfero. En la Figura 2.1 se ilustran ambas clases.

Figura 2.1: Tipos de patas

La principal diferencia entre ambos tipos de patas estriba la geometrıa y longitud

de cada uno de los eslabones que componen la pata, ası como de la orientacion del eje

de rotacion de los actuadores presentes en cada una de las articulaciones. En el caso de

la pata tipo mamıfero, el cuerpo tiende a estar mas elevado y el polıgono de apoyo que

forman las patas sobre el terreno es mas estrecho. La desventaja de esto es que al estar

Page 21: Generador de modos de caminado en robots cuadrúpedos

11

el centro de gravedad mas arriba, hay menor margen de equilibrio en comparacion con

la disposicion tipo reptil donde el cuerpo esta mas proximo a la superficie de contacto.

Sin embargo, desde el punto de vista de energıa necesaria para los actuadores de cada

articulacion de la pata, en esta ultima configuracion el gasto para sostener la plataforma

es mayor, debido principalmente a que el peso del cuerpo del robot genera mayores torques

sobre las articulaciones requiriendo un accion de igual magnitud y direccion contraria para

mantener el equilibrio.

2.2 Sistema generador de modos de caminado

El sistema generador de modos de caminado es el encargado del coordinar cada

uno de los actuadores, a fin de obtener un movimiento de las patas tal que permitan la

locomocion controlada de la plataforma robotica. Dicho sistema suele estar estructurado

para que genere referencias para la ubicacion en funcion del tiempo del elemento terminal

de la pata, ya que es esta la que entra en contacto con el sustrato de soporte. Dado esto,

normalmente las posiciones son referenciadas con respecto a un sistema de coordenadas

colocado en el mismo movil, por lo que la posicion de cada pata es una trıada de valores en

el espacio cartesiano R3 de la forma (X,Y,Z). Luego estos valores de posicion son llevadas al

espacio de los actuadores mediante la operacion de transformacion de cinematica inversa.

La estructura convencional de un sistema generador de modos de caminado puede ser

observado en la Figura 2.2. Al usar un esquema donde se generan perfiles de la punta de

la pata en el espacio cartesiano, cualquier cambio de la estructura cinematica de la pata

solo altera la transformacion espacial final a nivel de la cinematica inversa.

En la Figura 2.2 se pueden identificar dos subsistemas principales que conforman al

generador de modos de caminado. El primero de ellos corresponde al sistema de referencia

espacial en el cual se controla unicamente el perfil cerrado que describira la pata durante

un ciclo completo de apoyo y transferencia. El otro subsistema presente es el de referencia

Page 22: Generador de modos de caminado en robots cuadrúpedos

12

Figura 2.2: Sistema generador de modos de caminado

temporal, en el cual se determinan las relaciones de fase entre cada una de las patas.

Este enfoque para la generacion de modos de caminado ha demostrado ser util

cuando el movil opera bajo ambientes controlados, casi siempre sobre superficies planas

no deslizantes. Cuando se evalua dichos modelos en ambientes no estructurados, general-

mente las secuencias de caminado terminan siendo inoperantes. Consecuencia de ello, se

han propuesto modificaciones a tales modelos, donde se contemplan los distintos tipos de

perturbaciones que pueda sufrir el sistema. Sin embargo, debido a que las plataformas

roboticas suelen tener un numero considerable de grados de libertad, el numero de casos

de perturbaciones a contemplar es elevado, por no decir infinitos. A pesar de ello, existen

modelos que poseen la capacidad de representar una serie de secuencias de caminado que

bajo ciertas condiciones de trabajo se comportan de manera aceptable. Tal es el caso del

modelo geometrico en el cual se parametriza el caminado en funcion del largo del paso,

duracion del mismo, y porcentaje de permanencia de la pata sobre el piso. Se ha verificado

que incluyendo un parametro que controle la relacion de fase del movimiento entre cada

Page 23: Generador de modos de caminado en robots cuadrúpedos

13

una de las patas del robot, es posible obtener un grupo de modos de caminado utiles como

lo son gateo, trote, galope, arrastre, entre otros[1]. Mediante la inclusion de realimentacion

proveniente de sensores ubicados en la plataforma, es posible la implementacion de un sis-

tema de control el cual modificando los parametros principales del modelo de locomocion

adecue el caminado a las condiciones de operacion presentes en un momento dado.

2.3 Modelo geometrico del sistema de locomocion

Este es el modelo basico empleado para la representacion y generacion de distintos

modos de caminado en varios tipos de robots caminantes. Los parametros principales del

mismo son los siguientes:

• Longitud de paso (λ): representa la longitud recorrida por la pata durante la fase de

contacto con la superficie de apoyo. Normalmente la unidad empleada para medir

este parametro es la longitud del cuerpo del robot.

• Perıodo de paso (τ ): es la medida del tiempo que le toma a la pata completar un

ciclo completo de apoyo y transferencia hasta el punto inicial de la secuencia.

• Factor de apoyo (β): este parametro es el cociente entre el intervalo de tiempo

durante el cual la pata se encuentra apoyada y la duracion total de la secuencia

para una pata (τ ). El rango teorico va de 0 a 1, para valores mayores a 0.5 el pie

permanece mas tiempo sobre la superficie que separado de la misma.

Notese que este modelo parametriza la trayectoria descrita por la pata principal-

mente por la longitud del paso, durante la fase de soporte, restandole importancia a la

fase de transferencia de la pata. Tambien se puede apreciar que la velocidad promedio Vpro

del robot puede ser controlada directamente variando la longitud del paso y el perıodo del

paso, siguiendo la relacion dada por Vpro = λ/τ . El parametro β modifica el tiempo que

Page 24: Generador de modos de caminado en robots cuadrúpedos

14

permanece la pata en soporte y en transicion. Para este no se suelen usar valores extremos

(0 o 1) ya que hace que los actuadores en la pata operen a altas velocidades para cubrir

un recorrido dado en un corto tiempo.

En la Figura 2.3 se muestra un perfil espacial rectangular para una pata, y se

identifican los parametros mas relevantes del modelo geometrico.

Figura 2.3: Parametros de modelo geometrico

2.4 Representacion de modos de caminado mediante

diagramas de fase

Una tecnica muy utilizada para la representacion de los distintos modos de cami-

nado es mediante el uso de diagramas de fase. Debido a que el movimiento de cada pata

es de naturaleza cıclica con un perıodo finito τ , el cual normalmente es igual para todas

las patas, el sistema de referencia temporal queda descrito de manera unıvoca mediante la

relacion de fase. Este enfoque tambien incorpora el concepto temporal de factor de apoyo

(β). Debido a su naturaleza temporal, no se incluye ningun tipo de informacion corres-

pondiente a la geometrıa de la pata ni se muestra de manera alguna el perfil espacial que

describe el elemento terminal de la pata. Solo se identifica la fase de transferencia y la fase

de apoyo. En la Figura 2.4 se ilustra este metodo de representacion para el movimiento

Page 25: Generador de modos de caminado en robots cuadrúpedos

15

de una pata, con diferentes valores de factor de apoyo.

Figura 2.4: Diagramas de fases para una pata con distintos valores de β

La informacion espacial provista por este tipo de diagramas de fase se limita a

solamente dos estados: en contacto con la superficie que corresponde a la fase de soporte,

y en el aire que es la fase de transferencia de la pata. Dado esto, es posible representar

todos los tipos de caminado, a la vez que facilita la comparacion desde el punto de vista

temporal de distintos modos y modelos de caminado para distintos robots caminantes. En

el caso especıfico de robots cuadrupedos, existen varios modos comunes de caminado. En

la Figura 2.4 se muestran 3 de estos modos.

Se puede observar que el modo Arrastre es estaticamente estable. Para ello es

necesario que esten apoyadas como mınimo tres de la cuatro patas del cuadrupedo, lo

que determina que el factor de apoyo sea mayor a 0.75 para todas las patas. En lo que

respecta a los modos de caminado denominados Trote y Galope las condiciones de equilibrio

son diferentes. En ambos casos el cuadrupedo se mantiene en equilibro dinamico, sin

embargo es necesario que se mueva a velocidades mayores cuando adopta el ultimo modo

de caminado donde vuela balısticamente entre las fases de soporte[1][23].

Page 26: Generador de modos de caminado en robots cuadrúpedos

16

Figura 2.5: Diagramas de modos de locomocion en robots cuadrupedos

2.5 Equilibrio estatico en robots cuadrupedos

En modos de caminado estaticamente estable se establece que el robot puede perma-

necer indefinidamente en alguna posicion del ciclo completo de locomocion, y aun ası per-

manecer en equilibrio si requerir de algun sistema de control externo. Esto no ocurre en

modos de caminado dinamicos como trote y galope, puesto que existen fases donde a lo

sumo hay dos patas en fase de soporte, caso donde la plataforma es inestable estaticamente.

Para un robot cuadrupedo en modo de caminado estatico la condicion de equilibrio

se resume a que la proyeccion de la fuerza de gravedad sobre la superficie de apoyo, inter-

secte al polıgono de apoyo en su interior. De esta manera los pares de rotacion producto

del peso por el brazo de palanca de cada pata apuntan todos hacia el interior de la plata-

forma, siendo todos anulados por las componentes normales en los puntos de apoyo. Si la

Page 27: Generador de modos de caminado en robots cuadrúpedos

17

proyeccion del peso cae fuera del polıgono de apoyo, se tiene una componente no nula de

rotacion que reduce la fuerza de soporte en alguna de las patas, provocando su desprendi-

miento de la superficie de apoyo, y por ultimo el volcamiento del robot. La condicion de

equilibrio se ilustra con detalle en la Figura 2.6.

Figura 2.6: Condicion de equilibrio estatico en robots cuadrupedos

En el caso que se muestra a la izquierda, estan en apoyo las patas 2,3 y 4; el vector

peso aplicado en el centro de gravedad en direccion normal al plano de vista intersecta al

plano de apoyo fuera del polıgono de apoyo. En este caso el robot es inestable. El peso

produce un par de rotacion sobre el eje de apoyo entre la pata 2 y la pata 3 en sentido

hacia la pata 1 que no esta en apoyo. En cambio, en el caso mostrado a la derecha la

proyeccion del peso esta contenida dentro del triangulo de apoyo que forman las patas 1,

2 y 3. Las restricciones arriba descritas normalmente conllevan a que en la generacion de

referencias espaciales a las patas durante la fase de soporte, sea necesario la inclusion de

un corrimiento sobre el plano de apoyo (X-Y). El punto ideal de ubicacion de la proyeccion

del centro de gravedad es el centroide del polıgono de apoyo. Sin embargo ya que el cuerpo

esta en movimiento, dicho centro de referencia tambien debe moverse con el tiempo. Para

esto, se sigue una secuencia de pasos y desplazamientos tal como la que se muestra en la

Figura 2.7.

Page 28: Generador de modos de caminado en robots cuadrúpedos

18

En la secuencia de pasos se observa que el robot cuadrupedo pasa por fases de apoyo

con 3 patas y 4 patas de manera alternada. Las secuencias con 3 patas, donde el polıgono

de apoyo es un triangulo, el robot se desplaza de manera tal que el centro de gravedad del

mismo se acerque al centro geometrico del triangulo de apoyo. Luego de cada una de estas

secuencias, la pata que esta en el aire se apoya, expandiendo el polıgono a un cuadrilatero.

En esta fase el cuadrupedo nuevamente desplaza su centro de gravedad a fin de que quede

dentro del triangulo que se formara en el paso siguiente cuando se levante nuevamente una

pata. Este ciclo de alternancia de apoyo y desplazamiento del centro de gravedad se repite

para las fases de transferencia de cada una de las patas. Existen trabajos donde amplıan la

nocion de margen de estabilidad en locomocion cuadrupeda hacia situaciones de caminado

dinamico como en [13], pero este tipo de condiciones de operacion no se consideran dentro

del presente trabajo.

Page 29: Generador de modos de caminado en robots cuadrúpedos

19

Figura 2.7: Secuencia de caminado con equilibrio estatico para robots cuadrupedos

Page 30: Generador de modos de caminado en robots cuadrúpedos

20

Modelos neurofisiologicos del sistemalocomotor en animales

En este capıtulo se menciona el modelo descriptivo del sistema neuronal en ani-

males. Esto permite una mejor comprension de los principios neurofisiologicos que rigen

al caminado en sistemas biologicos. Se mencionan las caracterısticas desde el punto de

vista externo del sistema de locomocion. Posteriormente se hace referencia al modelo de

Hodgkin-Huxley, en el cual varios autores se han basado para desarrollar distintas propues-

tas de modelos neuronales para la representacion del sistema de caminado. Al termino del

capıtulo se describe el concepto de CPG (Central Pattern Generator) o Generador Central

de Patrones, el cual permite modelar el principio neurofisiologico actualmente aceptado

en la generacion de movimientos rıtmicos en animales.

3.1 Neurofisiologıa de la locomocion en animales

Una de las areas de conocimiento que ha inspirado soluciones a problemas en el area

de robotica es la asociada a la Biologıa. Ejemplos basados en la morfologıa y estructura

de las patas en robots caminantes saltan a la vista (ver Figura 2.1). Tambien ha influido

en algunos disenos de la estructura misma del robot, en tales caso se usa el termino de

biomorfico para identificar dichas soluciones. En otros casos la influencia no es visible

en la forma del robot, sino en su comportamiento. Aquı los conocimientos de ramas de

la biologıa como el estudio del comportamiento animal (etologıa), son utilizados para la

programacion de las plataformas, en especial en el caso de sistemas de robots cooperantes.

Page 31: Generador de modos de caminado en robots cuadrúpedos

21

Si bien, el sistema de locomocion con patas se ha visto inspirado desde un principio

por los animales, dicha influencia es principalmente en el tipo de secuencias que se desean

que emulen las maquinas. No ha sido sino desde la decada de los 90 que se han iniciado

estudios relevantes en identificar el modelo biologico que opera en animales para generar

dichas secuencias. Dada la naturaleza de como esta constituido fısicamente el sistema que

controla el caminado en seres vivos, tales modelos reciben el adjetivo de neurofisiologicos.

Los especialistas del area han logrado proponer una serie de modelos que a pesar de las di-

ferencias entre los mismos, existe un componente comun nada despreciable. A continuacion

se enumeran una serie de planteamientos comunes entre los diferentes modelos:

• El sistema de locomocion se encuentra realimentado localmente, bien por sensores

de tacto, presion, musculos, etc.

• El procesamiento y la generacion de senales motoras son procesos altamente paralelos

y de muy baja frecuencia.

• El cerebro solo se encarga de generar predicciones de movimiento y efectuar control

feedforward.

• Las celulas musculares solas pueden oscilar: comportamiento miogenico.

• Las celulas de mismo tipo al conectarse oscilan coordinadamente: comportamiento

electrotonico.

• Es un modelo probabilıstico: es mas efectivo ensayar y errar muchas veces en un

tiempo pequeno, que el modelado exacto durante un largo perıodo de tiempo.

Existen algunos casos donde las caracterısticas de generacion automatica de movi-

mientos coordinados de un grupo de musculos es evidente, como los procesos de digestion,

latido del corazon, respiracion. Todos ellos son posibles sin la necesidad de intervencion

directa de una unidad de procesamiento compleja como lo es el cerebro. Si se observa

el proceso de locomocion con patas, se aprecia su naturaleza oscilatoria. Ello ha hecho

Page 32: Generador de modos de caminado en robots cuadrúpedos

22

pensar la existencia de una estructura semejante a la antes descrita donde buena parte del

proceso de generacion de trayectorias y control de las mismas se efectue de manera local.

En lo que respecta a la estructura fısica dentro de los animales encargada del proceso

de coordinacion de la locomocion, se han identificado al arreglo de neuronas transmisoras y

elementos neuromotores (conexion entre neuronas y musculos) como el componente de ma-

yor importancia. Debido a la disposicion de las mismas como un sistema interconectado

hace que se les identifique como redes neuronales. Uno de los primeros y mas difundi-

dos modelos descriptivos de la fisiologıa de las neuronas en animales es el propuesto por

Hodgkin-Huxley [24].

3.2 Modelo descriptivo de Hodgkin-Huxley

Hodgkin y Huxley realizaron experimentos con neuronas gigantes de calamares e

identificaron la presencia de tres tipos principales de corrientes ionicas: Sodio, Potasio y

una corriente de fuga que consiste principalmente en iones de Cloro. El flujo de tales iones

a traves de la membrana celular es controlada por voltaje de manera independiente para

cada canal.

Figura 3.1: Diagrama esquematico del modelo Hodgkin-Huxley

En la Figura 3.2 se muestra el esquematico equivalente para el modelo. El capacitor

Page 33: Generador de modos de caminado en robots cuadrúpedos

23

C representa a la membrana celular semipermeable. Dado el transporte activo de iones a

traves de la membrana celular, existe una diferencia en la concentracion de iones dentro

y fuera de la celula. El potencial de Nernst 1 se representa por una baterıa. Planteando

las ecuaciones correspondientes a la ley de conservacion de la carga para una seccion de

la membrana celular, nos queda que la corriente I(t) se separa en una corriente que carga

a C y otro componente Ik que se distribuye entre los canales ionicos. Por lo tanto:

I(t) = Ic(t) +∑

k

Ik(t) (3.1)

En el modelo estandar de Hodgkin-Huxley solo existen 3 tipos de canales ionicos:

un canal de sodio (Na), un canal de potasio (K) y un canal de fuga denotado como una

resistencia R. Utilizando la definicion de corriente para un capacitor, Ic puede ser escrita

de la forma:

Cdu

dt= I(t)−

∑k

Ik(t) (3.2)

Como se senalo antes, el modelo Hodgkin-Huxley describe tres tipos de canales, los

cuales pueden ser representados por su resistencia o por su conductancia. El canal de fuga

es descrito por una conductancia independiente del voltaje gL = 1R; la conductancia de los

demas canales ionicos son dependiente del voltaje de la membrana celular y del tiempo.

La maxima corriente que puede circular por los canales K y Na ocurren con los valores

maximos de conductancia gK y gNa, respectivamente. Sin embargo existe una probabilidad

de que algunos de los canales esten bloqueados. La probabilidad de bloqueo de cada canal

se describe con tres variables extras m, n y h. La accion conjunta de m y n controla al

canal Na+ y la variable h lo hace con el canal de K+. El modelo especıfico propuesto por

Hodgkin-Huxley para los tres canales es:

1Es el nivel de potencial a traves de la membrana celular que se opone exactamente a la difusion deun ion en particular a traves de dicha membrana.

Page 34: Generador de modos de caminado en robots cuadrúpedos

24

Ik = gNam3h(u− ENa) + gKn4(u− EK) + gL(u− EL) (3.3)

Los terminos ENa y EK son los potenciales inversos, los cuales junto con las con-

ductancias son valores empıricos. Los valores inicialmente reportados por Hodgkin-Huxley

se muestran en la Tabla 3.1 Las variables m, n y h evolucionan de acuerdo a las siguientes

x Ex gx

Na 115 mV 120 mS/cm2

K -12 mV 36 mS/cm2

L 10.6 mV 0.3 mS/cm2

Tabla 3.1: Parametros del Modelo Hodgkin-Huxley

ecuaciones diferenciales

m = αm(u)(1−m)− βm(u)mn = αn(u)(1− n)− βn(u)n

h = αh(u)(1− h)− βh(u)h(3.4)

donde las funciones que describen a α y a β que se muestran en la tabla 3.2,

son funciones empıricas en funcion del potencial electrico u para ajustarse a los datos

experimentales del axon gigante del calamar.

Las tres ecuaciones 3.4 pueden ser reescritas de la siguiente forma

x = − 1

τx(u)(x− x0(u)) (3.5)

x αx (u/mV) βx(u/mV)

n (0,1− 0,01u)/(e1−0,1u − 1) 0,125e−u/80

m 2,5− 0,1u/(e2,5−0,1u − 1) 4e−u/18

h 0,07e−u/20 1/(e3−0,1u + 1)

Tabla 3.2:

Page 35: Generador de modos de caminado en robots cuadrúpedos

25

donde x corresponde a m, n o h. Para un valor fijo de voltaje u, la variable x

converge eventualmente al valor de x0(u) con una constante de tiempo τx(u). Los valores

de x0(u) y τx(u) pueden ser despejados de las ecuaciones 3.4. En la Figura 3.2 se muestran

las graficas de las funciones x0(u) y τx(u) utilizando los valores empıricos de Hodgkin-

Huxley

Figura 3.2: Funcion de equilibrio X0(u) y Constante de tiempo τ(u) en modelo Hodgkin-Huxley

3.2.1 Dinamica del modelo Hodgkin-Huxley

Aquı se mencionan los aspectos mas relevantes de la dinamica del modelo de

Hodgkin-Huxley. En la Figura 3.2 se observa que conforme aumenta el potencial u, se

incrementan m y n a la vez que h disminuye. Por lo tanto, si alguna senal externa provo-

ca un aumento en el voltaje de la membrana celular, la conductancia del canal de sodio

aumenta debido al incremento de m. Como consecuencia, aumenta el flujo de iones de

sodio hacia el interior de la celula incrementando aun mas el potencial interno. Si esta

realimentacion positiva es lo suficientemente grande se inicia un potencial de accion.

Como ejemplo de esta situacion tenemos el caso de generacion de un pulso cuando

el modelo es excitado con una corriente externa I durante un tiempo breve. En la Figura

3.2.1 se muestra el pulso generado para una entrada excitatoria aplicada en justo t < 0.

Page 36: Generador de modos de caminado en robots cuadrúpedos

26

El potencial de la membrana celular u(t) se incrementa progresivamente producto de la

realimentacion positiva hasta que alcanza un voltaje de umbral, punto a partir del cual

la salida colapsa durante un periodo de establecimiento y asintoticamente converge a un

nivel de voltaje estable. Esto define el kernel η(t) del modelo .

Figura 3.3: Respuesta temporal del potencial u(t) ante entrada impulsiva

Otro tipo de comportamiento observado para este modelo, es que si se mantiene

una entrada de corriente constante mayor a un valor de umbral, a la salida del sistema se

observa un tren de pulsos a una tasa de repeticion τs constante. Cuando se excita el modelo

con dos pulsos consecutivos de corriente de igual magnitud, existe un periodo mınimo de

separacion tgap, debajo del cual la salida obtenida es un solo pulso en lugar de dos. Este

fenomeno de enmascaramiento temporal se debe principalmente a que justo despues del

primer pico de salida, los canales de iones estan todos abiertos por lo que la resistencia

de la membrana es mucho menor que en el caso de reposo y la corriente que circula es

maxima. Esto causa una hiper polarizacion en el potencial de la membrana, provocando

que el umbral de disparo sea mucho mayor que en reposo.

Actualmente existen distintos modelos de neuronas que realizan una descripcion de

las neuronas biologicas funcionalmente equivalente al propuesto inicialmente por Hodgkin-

Huxley. Un modelo que se presenta como una extension logica del original son las Spiking

Neural Networks (SNN). Otro tipo de implementacion dinamicamente equivalente, el cual

mantiene el enfoque de representacion de las neuronas como integradores con fuga y posee

Page 37: Generador de modos de caminado en robots cuadrúpedos

27

variables de constantes de tiempo asociadas a la permitividad de la membrana celula,

son las redes recurrentes de tiempo continuo conocidas como CTRNNs, cuyo uso ha sido

popularizado gracias al trabajo de Chiel-Beer [15][16]. Se han realizado estudios sobre

la dinamica del modelo de Hodgkin-Huxley en el campo de la matematica de sistemas

dinamicos, hasta utilizando metodos de analisis propios de teorıa de caos. Sin embargo

este tipo de consideraciones escapan a los objetivos del presente trabajo.

3.3 CPG: Central Pattern Generator

Para el acto de caminar, saltar o correr los animales requieren de la activacion

progresiva y coordinada de grupos de musculos. Existen dos modelos iniciales propuestos

por los neurofisiologos que trataban de describir de manera intuitiva como el sistema

nervioso lograba controlar alternadamente la contraccion de los musculos extensores y

flexores. En uno de los modelos se sugerıa que los receptores de los sensores monitoreaban

continuamente el estado de las articulaciones, activando reflejos en momentos especıficos

para ası lograr el movimiento deseado. En el otro caso se sugiere la existencia de un

sistema o circuito oscilador en la espina dorsal o en el ganglio central que provee de las

senales de temporizacion esenciales para la activacion de los musculos consiguiendo ası el

movimiento repetitivo deseado (Marder2001[25][26]). El primer mecanismo se denomina

cadena de reflejos y el ultimo generador central de patrones (CPG).

Actualmente se define como CPG a un circuito capaz de producir patrones motores

rıtmicos en ausencia de estımulo externo, bien sea proveniente de una entrada sensorial o de

una senal descendente de algun sistema de control superior. Es decir, un CPG esta presente

cuando la existencia de un comportamiento rıtmico no depende de los centros perifericos

o centrales del animal, aunque las senales de tales centros alteren los patrones motores

producidos por el CPG. Existen varios trabajos que estudian el efecto de la realimentacion

de los sistemas perifericos, al modular la respuesta del generador central de patrones

Page 38: Generador de modos de caminado en robots cuadrúpedos

28

[6][11][27][28].

La existencia de circuitos generadores centrales de patrones fue demostrada a traves

de experimentos que mostraban que movimientos rıtmicos eran producidos aun despues

de que la realimentacion proveniente de las piernas era removida. Este tipo de patron

motor se denomina ficticio puesto que no genera ningun movimiento, pero si se conectase

la salida del circuito del CPG a las neuronas motoras, su efecto serıa el de movimiento

rıtmico.

Se han identificado dos estrategias para la generacion de comportamientos rıtmicos

en las neuronas. Algunos de estos comportamientos son manejados por neuronas que son

osciladores, y actuan como marcapasos. Este tipo de neuronas son similares a las presentes

en el corazon, y tienen una combinacion especıfica de canales de iones dependientes de

voltaje, que causa que se disparen rıtmicamente en ausencia de senal de excitacion externa.

Dicho comportamiento se puede asociar a uno de naturaleza miogenica. La dinamica del

comportamiento basico es semejante a la descrita para el modelo de neuronas de Hodgkin-

Huxley, con la importante salvedad de que este ultimo requiere de una senal de activacion

externa para la generacion de una salida rıtmica.

Otro tipo de comportamiento rıtmico resulta de la interaccion sinaptica entre neu-

ronas que no son rıtmicamente activas, tal como ocurre en las celulas con comportamiento

electrotonico. En este caso los ritmos son considerados como un comportamiento emergente

del circuito, resultante de las propiedades individuales de las neuronas y de las interaccio-

nes entre las neuronas presentes en el circuito. En ambos casos la temporizacion especıfica

de los elementos del circuito es consecuencia de la conexion sinaptica de las neuronas.

Todos los circuitos generadores de patrones estan sujetos a la modulacion mediante

neurotransmisores y hormonas, que pueden alterar la frecuencia y la intensidad de los

patrones motores producidos al actuar sobre un subgrupo especıfico de neuronas del cir-

cuito CPG. Este fenomeno de neuromodulacion juega un rol importante en el proceso de

Page 39: Generador de modos de caminado en robots cuadrúpedos

29

adaptacion de los patrones basicos de locomocion a las diferentes condiciones bajo la cual

se desenvuelve el organismo. Por ejemplo, de esta manera es posible modificar el modo de

caminado a fin poder lidiar con las irregularidades del terreno, o tambien obtener ritmos

motores que no estan preprogramados en el sistema neuronal, como serıan bailar o escalar.

Las caracterısticas antes descritas para el CPG destacan la importancia de dos

aspectos fundamentales en el proceso de generacion de senales de control durante la lo-

comocion con patas. Primero esta la generacion independiente de senales oscilatorias, las

cuales controlan a los actuadores a fin de obtener un movimiento preprogramado. Dado es-

to, resulta evidente el uso de sistemas naturalmente oscilatorios en el modelado del sistema

de locomocion. Por otra parte, se tiene la descripcion del fenomeno de neuromodulacion

del comportamiento del CPG, producto de senales provenientes del sistema sensorial de

realimentacion o del sistema nervioso superior de control. Cualquier implementacion del

sistema de caminado en robots, debe tomar en cuenta la inclusion de una fase de modula-

cion tanto de la frecuencia como de la amplitud de la salida natural del CPG, lo cual le da

plasticidad suficiente al sistema de caminado para efectuar acciones correctivas asociadas

a un sistema externo de control.

Page 40: Generador de modos de caminado en robots cuadrúpedos

30

Analisis comparativo de modelos de CPG

En el presente capıtulo se efectua una analisis comparativo entre los distintos

enfoques utilizados por varios autores en el modelado de CPG para locomocion en robots

con patas. Se detallan las distintas arquitecturas estudiadas, a la vez que se identifican

que caracterısticas propias de los sistemas biologicos son incorporadas en los modelos. Se

analizan las metodologıas descritas por los autores de tales modelos de CPG en locomocion

de robots. Empleando tales metodologıas se efectuan pruebas de simulacion y se analizan

los resultados obtenidos. Partiendo de ello se identifican las ventajas y desventajas relativas

de cada alternativa para la sıntesis de un modelo de caminado en robots cuadrupedos.

El primer modelo estudiado es el propuesto por Chiel y Beer [15][16], donde se

menciona el uso de redes neuronales recurrentes para replicar la naturaleza oscilatoria del

CPG. En el estudio del modelo de osciladores acoplados, denominado ACPO y descrito

por J. Buchli y A. J. Ijspeert en [18], se identifica un enfoque mas analıtico de la dinamica

del sistema oscilador, a la vez que se detallan las ventajas para el control de transicion

entre diferentes movimientos rıtmicos preprogramados. Por ultimo se estudia el concepto

de Dynamic Neural Networks, descrito en el trabajo de P. Zegers [29][30], que incorpora

la idea de neuromodulacion descrita en el capıtulo anterior.

Page 41: Generador de modos de caminado en robots cuadrúpedos

31

4.1 Modelo de Chiel-Beer usando CTRNN

En el trabajo realizado por Chiel y Beer, se hace uso de las redes neuronales

recurrentes en tiempo continuo, mejor conocidas como CTRNN por siglas en ingles (Con-

tinuous Recurrent Neural Networks). Estas redes neuronales se basan en nodos basicos o

neuronas cuya funcion de estado se encuentra descrita por la Ecuacion 4.1:

τiyi = −yi +M∑j=i

wjiσ(yj + θj) + Ii, i = 1, · · · , M (4.1)

En la Ecuacion 4.1 se tiene que yi ∈ � es la salida de la neurona i-esima. La

constante de tiempo asociada a la permitividad de la membrana celular se representa

como τ ∈ �, mientras que los pesos de las conexiones sinapticas entre las neuronas de la

red estan representados por wij ∈ �. La variable θj corresponde al punto de operacion de

cada nodo. El termino Ii es la entrada externa al sistema, que se mantiene en cero cuando

se desea obtener la respuesta natural del sistema. La funcion kernel de transferencia de

cada neurona es la sigmoide logıstica estandar:

σ(x) =1

1 + e−x(4.2)

Existen varios aspectos importantes de este modelo particular de redes neurona-

les. Los autores argumentan que posee una explicacion plausible desde el punto de vista

biologico, ya que el estado de la neurona y se puede asociar al potencial electrico de la

membrana de la neurona, tal como ocurre en el modelo Hodgkin-Huxley. La funcion σ(x)

representa un promedio de corto plazo de la frecuencia de disparo de la neurona, y el peso

de autoconexion wii se puede interpretar como una conductancia activa no lineal. Desde el

punto de vista matematico, se puede considerar que la Ecuacion 4.1 describe la evolucion

Page 42: Generador de modos de caminado en robots cuadrúpedos

32

temporal de la variable de estado y de la neurona i-esima. Ahora bien, el estado total

del sistema con N nodos queda descrito por el vector de estado Ysis, con una funcion de

transicion de estados F (Y, I) no lineal, como se muestra en la Ecuacion 4.3.

Y = [y1, y2, y3, · · · yN−1]T

Y = F (Y, I)(4.3)

Los esquemas de conexion de las neuronas en redes de este tipo suelen ser con un

alto numero de interconexiones bidireccionales entre los nodos. Debido a que se necesita

al menos una senal de referencia de angulo por cada uno de los motores en un robot con

patas de 3 GDL, las CTRNN que pueden revestir cierto interes son aquellas que tienen

en su estructura como mınimo 3 nodos. Tambien son utiles aquellas con mas neuronas,

bastando con emplear un subespacio del vector de salida quedando un total de N − 3

neuronas sin salida directa, pero que incrementan el orden del sistema. En la Figura 4.1

se muestran varios ejemplos de CTRNN:

Figura 4.1: Ejemplos de CTRNN interconectadas

Page 43: Generador de modos de caminado en robots cuadrúpedos

33

4.1.1 Arquitectura de CPG basado CTRNN

La arquitectura descrita a continuacion corresponde a un esquema de interconexion

completa entre todos los nodos, lo cual incluye todas las posibles arquitecturas de tamano

N . Este tipo de redes continuas no son tan costosas desde el punto de vista computacional.

A pesar de su aparente simplicidad, se ha demostrado que las CTRNN se pueden utilizar

como aproximadores universales de sistemas dinamicos[31]. El numero total de parame-

tros requeridos para describir una red totalmente interconectada con N elementos son

N2 + 2N . En [15][16], los autores describen el uso de algoritmos geneticos para la sıntesis

de dichos parametros, en redes neuronales con un total de 3, 4 y 5 neuronas las cuales

posteriormente analizaron a fin de identificar la presencia de modulos dinamicos basicos

para comportamientos oscilatorios.

El modelo de cuerpo empleado es de tipo insecto, donde se analiza el movimiento

de una sola pata para el proceso de locomocion. La pata es controlada por tres efectores,

uno especifica el estado de la pata y los otros dos trabajan de manera antagonica e indican

el torque de giro de la pata. Esto da como resultado que la red neuronal tenga un mınimo

de 3 neuronas para modelar el CPG correspondiente a dicha estructura mecanica. En la

Figura 4.2 se muestra el modelo mecanico utilizado, ası como la arquitectura de la red de

3 nodos totalmente interconectada.

Figura 4.2: Arquitectura de CPG basada en CTRNNs

Page 44: Generador de modos de caminado en robots cuadrúpedos

34

La neurona FT (Foot) controla el posicionamiento vertical de la pata. Cuando FT

es mayor a 0.5 la pata se encuentra apoyada sobre el piso, y se levanta en el caso contrario.

Las otras dos neuronas motoras son BS (Backward Swing) y FS (Forward Swing). Cuando

el pie esta arriba, las salidas de BS y FS escalan los torques maximos torques de la pata;

cuando el pie esta apoyado, estas salidas escalan la maxima fuerza del pie aplicada al

cuerpo.

La desventaja del enfoque descrito en el trabajo de Chiel y Beer, esta en que no se

toma en consideracion la existencia de conexiones entre los distintos CPG que controlan

a cada una de las patas, de manera tal que se coordinen los movimientos de las mismas y

ası obtener un caminado controlado.

4.1.2 Metodologıa para sıntesis de CPGs utilizando CTRNN

A fin de modelar un CPG para locomocion en robots es necesario obtener un siste-

ma cuya salida posea ciertas caracterısticas espaciales y temporales. Para la arquitectura

descrita previamente, Chiel y Beer obtuvieron mediante AGs un conjunto de soluciones

validas para su modelo de cuerpo con una pata simple. En la Ecuacion 4.1 se tiene la tran-

sicion de estados, donde el gradiente del estado de cada neurona viene dado en funcion de

los estados de toda la red y de las entradas externas. Todo el analisis aquı descrito se basa

en la respuesta natural del sistema, es decir para una entrada externa nula.

La resolucion numerica de las ecuaciones diferenciales se realizo utilizando el metodo

de Euler con un paso igual a 0,1. A fin de validar la implementacion del modelo de red

CTRNN empleada en el presente trabajo, se procedio a replicar los resultados obtenidos

por Chiel y Beer para la red con 3 nodos. En la Figura 4.3 estan graficadas las formas de

ondas de los estados de las neuronas, con los valores de τ , wii y θ citados en [15][16]. Estos

parametros se muestran en la Tabla 4.1, y corresponden a la mejor solucion sintetizada

mediante algoritmos geneticos en los dos trabajos previamente enumerados.

Page 45: Generador de modos de caminado en robots cuadrúpedos

35

Tau(τ) Bias (θ) ωFT → ωFS → ωBS →FT 7.2777 -9.5733 -3.209000 15.546400 11.594100FS 2.3042 12.3221 -12.919000 -12.697000 1.562800BS 2.9261 -7.0150 6.167400 13.606400 -3.227800

Tabla 4.1: Valores de parametros para CTRNN

Figura 4.3: Salidas de CTRNN de Chiel-Beer. Euler = 0.1

En la Figura 4.3 se observa la evolucion temporal del sistema con senales de entrada

iguales a cero (Ii = 0) para todos los nodos, y que parte de condiciones iniciales de

reposo. El sistema va convergiendo progresivamente a una respuesta con comportamiento

oscilatorio sostenido. Este tipo de analisis permite identificar la respuesta del sistema ante

una condicion inicial dada, pero resulta necesario ampliar el estudio de la red a fin de

caracterizar su respuesta ante distintas condiciones iniciales.

Se tiene que debido a la naturaleza continua de la ecuacion que rige la evolucion

temporal de los estados en cada neurona, siempre estara definido el campo de velocidad o

gradiente de estado asociado a cualquier estado de la red. Partiendo de esto, a continuacion

se introduce el uso de la visualizacion en un plano del gradiente de estados, sobre el cual

se superponen las distintas trayectorias resultantes para diferentes condiciones iniciales.

Page 46: Generador de modos de caminado en robots cuadrúpedos

36

Como el sistema completo posee 3 nodos, por lo cual su espacio de salida es tridimen-

sional, las graficas obtenidas se pueden interpretar como proyecciones en un plano de las

trayectorias tridimensionales. Dicho plano se construye sobre un espacio de salida dado

por 2 de los 3 nodos de la red completa.

Figura 4.4: Vista 2D de salida de CTRNN de 3 nodos

En la Figura 4.4 se muestra la evolucion espacial de los estados del sistema descrito

por los parametros mostrados en la Tabla 4.1 para distintas condiciones iniciales. El plano

de proyeccion corresponde a las salidas de las neuronas FT y BS. Se puede apreciar que el

sistema eventualmente cae dentro de un ciclo lımite fijo, el cual esta directamente asociado

al comportamiento oscilatorio ilustrado en la Figura 4.3. Estudios previos sobre la dinamica

de sistemas implementados mediante CTRNN senalan que los mismos exhiben diferentes

tipos de comportamientos. En el caso especıfico de una red con 3 nodos, se tiene que el

sistema completo puede ser de naturaleza estable u oscilatoria; esta clasificacion se basa

en la eventual convergencia del sistema a un punto de equilibrio o a un ciclo oscilatorio

respectivamente. Las configuraciones estables pueden ser de dos tipos a su vez: monoestable

o biestable; el fenomeno en el cual la naturaleza de un nodo pasa de ser monoestable a

biestable se denomina bifurcacion. La bifurcacion puede obtenerse controlando las entradas

Page 47: Generador de modos de caminado en robots cuadrúpedos

37

al mismo.

Este tipo de representacion se puede ampliar hacia sistemas con mayor numero

de neuronas, obteniendose una proyeccion de la trayectoria en un espacio N-dimensional

sobre un plano arbitrario. Los resultados que se muestran a continuacion corresponden a

de trayectorias de redes con 3 neuronas, sobre el plano descrito por los vectores de salida

de las neuronas 1 y 2. Los puntos correspondientes a las condiciones iniciales se obtuvieron

de un arreglo equiespaciado de valores en el rango de −20 hasta 20, con saltos de 4 para

las neuronas 1 y 2, manteniendo en cero (0) el valor de la neurona 3. Los parametros de

la red se obtuvieron de manera empırica, ya que las redes ası sintetizadas son empleadas

con fines ilustrativos. La simulacion de la red se efectuo utilizando la tecnica de Euler, con

un paso de iteracion igual a 0,1. Para las graficas de intensidad de campo, se calcula el

modulo del vector gradiente en el plano de visualizacion.

Figura 4.5: Vista 3D de campo atractor. Configuracion monoestable

En la configuracion monoestable, se puede identificar mediante inspeccion directa

de las Figuras 4.5 y 4.6, el estado de equilibrio final del sistema al cual converge inde-

pendientemente del estado inicial; situacion semejante ocurre al observar la grafica de

intensidad del campo (Figura 4.7). Sin embargo este tipo de configuracion reviste poco

interes para la generacion de comportamientos rıtmicos que puedan resultar utiles en loco-

mocion de robots con patas. Podrıan ser utilizados en esquemas de control donde se desee

Page 48: Generador de modos de caminado en robots cuadrúpedos

38

Figura 4.6: Vista 2D de campo atractor. Configuracion monoestable

Figura 4.7: Intensidad de campo atractor. Configuracion monoestable

Page 49: Generador de modos de caminado en robots cuadrúpedos

39

bloquear algunos de los actuadores en particular, o hacer que el sistema sea monoestable

pero al modificar las entradas del mismo se produzca una bifurcacion volviendolo biestable

o inclusive oscilatorio.

Figura 4.8: Vista 3D de campo atractor. Configuracion biestable

Para la configuracion tipo biestable, las graficas del campo atractor ofrecen infor-

macion inmediata sobre los dos estados finales de equilibrio del sistema (Figura 4.8 y 4.9).

En la grafica de intensidad del campo (Figura 4.10) se pueden identificar posibles regiones

de equilibrio las cuales corresponden a las areas con valores mınimos de gradiente en el

plano; pero no es posible extraer de manera directa informacion alguna sobre las trayec-

torias que recorren los estados del sistema antes de converger a los puntos estables. Cabe

senalar que esta imprecision en la determinacion de los estados de equilibrio mediante el

grafico de intensidad es consecuencia de que el mismo es una representacion en un espacio

de dimension inferior a la de salida del sistema.

El comportamiento que encierra mayor importancia en la sıntesis de generadores

de caminado mediante el uso de CTRNN es la de tipo oscilatoria. En las Figuras 4.11 y

4.12 es posible identificar el ciclo lımite al cual converge eventualmente el sistema. Para

la grafica de intensidad mostrada en la Figura 4.13 no resulta directa la identificacion

de dicho ciclo lımite. Un fenomeno observable en la Figura 4.11, es que dependiendo del

estado del cual parta el sistema, la fase final de la senal oscilatoria variara.

Page 50: Generador de modos de caminado en robots cuadrúpedos

40

Figura 4.9: Vista 2D de campo atractor. Configuracion biestable

Figura 4.10: Intensidad de campo atractor. Configuracion biestable

Page 51: Generador de modos de caminado en robots cuadrúpedos

41

Figura 4.11: Vista 3D de campo atractor. Configuracion oscilador

Figura 4.12: Vista 2D de campo atractor. Configuracion oscilador

Page 52: Generador de modos de caminado en robots cuadrúpedos

42

Figura 4.13: Intensidad de campo atractor. Configuracion oscilador

El fenomeno de desfase dependiente del punto inicial representa un problema im-

portante al momento de sintetizar distintos modos de caminados, ya que la locomocion

del robot no depende solamente de las referencias espaciales de los actuadores de cada

pata, sino tambien de la relacion temporal entre dichas senales de referencia. En la Figura

4.14 se muestran las salidas del CTRNN oscilador en funcion del tiempo, para distintos

estados iniciales; distinguiendose la diferencia en la fase de las senales una vez se establece

la oscilacion.

Figura 4.14: Desfases para distintos estados iniciales en configuracion oscilador

Varios autores han utilizados enfoques propios de analisis de sistemas dinamicos,

Page 53: Generador de modos de caminado en robots cuadrúpedos

43

donde consideran a cada CPG individual como un modulo dinamico y tratan de carac-

terizar las variaciones de la dinamica del sistema ante perturbaciones externas [15]. Sin

embargo las tecnicas de sıntesis de los parametros de CPG implementados con CTRNN

no estan lo suficientemente desarrolladas, y resultan aun computacionalmente costosas

como para considerar este esquema como primera opcion en el modelado de maquinas

caminantes complejas como cuadrupedos con 3 GDL [30][32][33][34].

Metodologıa para sıntesis de CTRNN mediante el uso de AGs

En el presente trabajo tambien se evaluo el uso de algoritmos geneticos como tecni-

ca de sıntesis de los parametros de CPG modelados con redes recurrentes[35][36][37][38].

Varios autores han implementado distintas variantes en el uso de esta tecnica para la ob-

tencion de patrones rıtmicos en CTRNNs. Las pruebas con AGs aquı descritas se orientan

a identificar la posibilidad de sıntesis de redes recurrentes utiles en locomocion de robots

con patas.

Las redes neuronales sintetizadas poseen 3 neuronas. Todos los parametros de las

mismas fueron codificadas en una sola solucion asociada a un cromosoma dentro del algo-

ritmo genetico. Esto se hizo ya que el comportamiento que se desea estudiar es de la red

completa y no de cada nodo individual. A continuacion se mencionan las caracterısticas

principales del esquema de algoritmos geneticos implementado en el presente trabajo:

• El metodo de seleccion de individuos fue por torneo, en el cual se escogen dos pares

de individuos de manera equiprobable dentro de toda la poblacion.

• El operador de cruce entre cromosomas/soluciones fue aplicado utilizando un numero

finito de puntos de cruces (8), en puntos seleccionados de manera aleatoria con

funcion de probabilidad uniforme.

• El numero total de cromosomas/soluciones utilizadas en cada poblacion vario entre

Page 54: Generador de modos de caminado en robots cuadrúpedos

44

12 y 30.

• Se aplico el operador de mutacion a una tasa constante de 10 %.

• Se utilizo codificacion directa de todos los parametros de una red CTRNN con 3

nodos. La codificacion de cada dato se hizo de manera lineal sobre 16 bits del cro-

mosoma por parametro, con un valor absoluto menor a 15.

• Se aplico elitismo en la creacion de cada nueva generacion, al mantener las dos

mejores soluciones de la generacion anterior.

• La funcion de fitness fue construida a fin de tomar en cuenta de manera ponderada

el error existente entre los valores deseados y obtenidos para distintas caracterısticas

de las formas de ondas resultantes de la red CTRNN.

Las razones para la seleccion de este esquema esta en la simplicidad del mismo.

No se consideraron esquemas de modificacion dinamica de la tasa de mutacion, tamano

de poblacion, numero de cruces, etc. Se evaluo de manera empırica el desempeno del

algoritmo para sintetizar soluciones satisfactorias para la funcion de fitness deseada, en

funcion del numero de individuos en cada poblacion y la tasa de mutacion. Tras efectuar

un proceso previo de sintonizacion, se procedio a la sıntesis final de CTRNN soluciones

con los parametros del AG fijos.

En lo que respecta a la funcion de fitness, se procedio a evaluar las formas de onda

de salida del sistema CTRNN. Para ello se simulo la red recurrente, utilizando Euler = 0,1

para la resolucion de la ecuacion diferencial de estado de cada nodo (yi). A fin de tomar

en cuenta solamente la respuesta natural del sistema, se hizo cero las entradas Ii, ası como

se ignoraron los primeros 1000 puntos del vector de salida de la simulacion de la red.

Este numero de puntos fue seleccionado ya que es lo suficientemente alto como para que

la respuesta del sistema a partir del mismo corresponda a regimen permanente, no hay

interes en la respuesta transitoria. Los parametros de evaluacion calculados sobre cada

vector de salida fueron los siguientes:

Page 55: Generador de modos de caminado en robots cuadrúpedos

45

• Valor maximo de amplitud de la senal (MAX).

• Valor mınimo de amplitud de la senal (MIN).

• Promedio de la senal (PRO).

• Frecuencia relativa (FR). Para el calculo de FR se procedio a contar el numero de

cruces por cero del vector diferencia entre la salida de cada nodo y su promedio, y

luego se divide entre el numero total de puntos en el vector.

Luego del calculo de los valores antes citados para cada nodo de la red, se procedio a

asignar la ponderacion correspondiente de la siguiente manera:

Ppro,max,min,frec = 1−∣∣∣∣referencia− valor

valor

∣∣∣∣ (4.4)

y el puntaje final asociado a cada cromosoma esta dado por:

Pcromosoma = αpro.Ppro + αmax.Pmax + αmin.Pmin + αfrec.Pfrec (4.5)

Mediante la variacion de α para cada parametro, es posible forzar la sıntesis de

soluciones que cumplan algun requisito particular en la forma de onda de salida, ya que

la funcion de fitness dependera en mayor o menor medida de dicho parametro.

Resultados para CTRNN sintetizadas por AGs

A continuacion se muestran las diferentes CTRNN sintetizadas mediante el uso

de algoritmos geneticos descritos previamente. Se efectuaron pruebas para la obtencion

de redes con comportamientos estables y tambien para redes con respuesta oscilatoria

sostenida.

Page 56: Generador de modos de caminado en robots cuadrúpedos

46

En el primer caso se procedio a la obtencion de redes cuyo estado estacionario

convergiera a una constante dada. Para ello se hicieron cero Pmax, Pmin y Pfrec, y se

coloco Ppro en 1. De esta manera el fitness dependıa en funcion del error en el valor

promedio (PRO) del vector de salida de las neuronas. Notese que al omitir los primeros

1000 puntos del vector de simulacion permitıa estudiar la respuesta permanente, pero no

se tiene control sobre la respuesta transitoria del sistema. En la Tabla 4.2 se muestran los

distintos valores de referencia establecidos al momentos de sintetizar la redes, ası como

los valores del promedio obtenido para las salidas de las redes. Los valores de referencia

ahı indicados corresponden a las referencias de salida para los 3 nodos de la red, es decir

que las tres neuronas debıan converger a un mismo valor en la salida. Las soluciones abajo

senaladas fueron las redes con mejor fitness obtenidas de 10 soluciones para cada caso,

para un numero maximo de 300 iteraciones por solucion.

Ypro deseado Ypro obtenido Error(prom) ( %) Num. de iter.-4 -3.9733 0.5666 93-2 1.9333 0.3133 110+2 2.0817 4.0186 149+4 3.9897 0.2575 37

Tabla 4.2: Salidas de CTRNN sintetizadas con AGs para salidas constantes

En los casos identificados en la Tabla 4.2 se puede apreciar que las soluciones

obtenidas exhiben un bajo nivel de error en la salida, aun para un numero de iteraciones

tambien bajo ( maximo de 149 ). Se considera posible la sıntesis de soluciones aun mejores

con un mayor numero de iteraciones, esto debido principalmente a la simplicidad del

problema planteado. Con la finalidad de extender las pruebas a redes cuya salida sea

cualquier punto en el espacio de dimension N = 3 cercano al origen, se procedio a sintetizar

CTRNNs cuyas salidas en cada nodo fuesen diferentes. A continuacion se muestran algunos

resultados obtenidos a tıtulo ilustrativo, siguiendo la misma metodologıa descrita para la

prueba previa, con la diferencia de que el numero maximo de iteraciones es igual a 1000.

En la Tabla 4.3 se observa que fue posible obtener dos soluciones con un error

porcentual bastante bajo (1.8241% y 0.2089 %). Sin embargo, la solucion obtenida para la

Page 57: Generador de modos de caminado en robots cuadrúpedos

47

Ypro deseado Ypro obtenido Error(prom) ( %) Num. de iter.[ 6 2 -5] [6.0092 2.1031 -5.0082] 1,8241 988[-4 -1 7] [-5.0700 -2.1073 7.5778] 48,578 1000+[11 -8 1] [11.0548 -8.0039 1.0008] 0,2089 369

Tabla 4.3: Salidas de CTRNN sintetizadas con AGs para salidas constantes varias

salida de referencia Ydeseado = [−4,−1, 7]T exhibe un error porcentual considerablemente

alto (48.578 %); este error se debe casi exclusivamente a la diferencia en la respuesta para

el segundo elemento del vector donde la referencia es de -1 y el valor sintetizado es -2.1073.

El error porcentual del mismo es muy alto, pero el error absoluto es relativamente bajo. Los

resultados exhibidos en las Tablas 4.2 y 4.3 pueden dar pie a pensar que con un debido

ajuste de los parametros del algoritmo genetico, en particular la tasa de mutacion y el

numero de iteraciones, es posible obtener soluciones para condiciones especıficas en salidas

constantes. Durante las pruebas de sıntesis con esta tecnica se observo un fenomeno que

hace esta ultima opcion poco util: existe la posibilidad de que una senal de naturaleza

oscilatoria tenga el mismo valor de promedio (PRO) que se desea para un vector de

salida constante. Esto se puede apreciar en la solucion correspondiente al vector objetivo

Ydeseado = [−4,−1, 7]T de la Tabla 4.3, cuya grafica de la salida de la red neural en funcion

del tiempo se muestra en la Figura 4.15.

Variando los valores de α, fue posible modificar la funcion de fitness a fin de obtener

soluciones que cumplieran con otras caracterısticas en las formas de ondas de salida, en

especıfico para la amplitud maxima y mınima. En las Tabla 4.4 y la Tabla 4.5 se muestran

los resultados obtenidos tras aplicar AGs con presion selectiva hacia el valor de MAX y

MIN respectivamente. Se entiende presion selectiva el hacer cero las constantes α para

los parametros que no se desean controlar, y haciendo uno el valor de α para las variables

objetivo MAX y MIN en cada caso.

En las Tablas 4.4 y 4.5 se observa nuevamente que la tecnica de algoritmos geneticos

puede sintetizar CTRNN con parametros simples en las formas de salida. Sin embargo,

Page 58: Generador de modos de caminado en robots cuadrúpedos

48

Figura 4.15: Solucion oscilatoria para PROobjetivo = [−4,−1, 7]T

Ymax deseado Ymax obtenido Error(prom) ( %) Num. de iter.-4 -4.0182 0.455 86-2 -2.0669 3.346 2702 1.9644 1.780 1104 3.9520 1.198 150

Tabla 4.4: CTRNNs sintetizadas por AGs para valores de MAX dados

no todos los casos convergen a soluciones satisfactorias con bajos niveles de error, como

se observa en la primera fila de la Tabla 4.5. Esta incertidumbre en la convergencia se

deriva de la naturaleza aleatoria en la generacion de las soluciones iniciales del algoritmo

genetico.

A fin de evaluar esta tecnica en la obtencion de soluciones mas complejas, que

puedan resultar utiles en locomocion con patas, se efectuaron pruebas donde se establecıan

valores deseados para MAX, MIN , PRO y FR, y se hizo αmax, αmin,αpro y αfr iguales

a 1. Los valores de referencia de cada uno de estos parametros se obtuvieron al aplicar

el mismo analisis de amplitud a senales de referencia propias de modos de caminados

Page 59: Generador de modos de caminado en robots cuadrúpedos

49

Ymin deseado Ymin obtenido Error(prom) ( %) Num. de iter.-3 -2.661 11.294 84-1 -0.990 -0.920 641 1.343 34.30 773 3.005 0.19 54

Tabla 4.5: CTRNNs sintetizadas por AGs para valores de MIN dados

representados mediante el modelo geometrico estandar. Las senales de referencia en el

espacio cartesiano fueron convertidas al espacio de los actuadores mediante la cinematica

inversa. El problema asociado a esta metodologıa es que no se considera en ningun caso

la relacion temporal entre las senales, ya que el calculo del fitness se basa solamente en

parte de la informacion espacial. Esto conlleva a que algunas de las posibles soluciones

obtenidas por AGs sean inoperantes en la practica por discrepancias en las relaciones de

fase. En las Figuras 4.16(a) y 4.16(b) se muestran las graficas correspondientes a las formas

de onda deseadas, y una solucion obtenida por AGs mediante restriccion de los valores

de amplitud tras 3824 iteraciones de un maximo de 5000 iteraciones. Esta solucion fue la

mejor solucion ( mayor fitness ) encontrada para un total de 10 soluciones obtenidas bajo

las mismas condiciones.

(a) Referencia (b) Sintetizada

Figura 4.16: Formas de onda: (a) Referencia y (b) Sintetizada por AGs

Notese que el numero de iteraciones es mucho mayor que en cualquier caso donde la

funcion de fitness evaluaba solo un parametro en particular; debiendose ello al aumento de

la complejidad del problema. Los resultados mostrados acerca del uso de AGs con analisis

Page 60: Generador de modos de caminado en robots cuadrúpedos

50

de amplitud de la forma de onda apuntan a la necesidad de incluir mayor cantidad de

parametros en la evaluacion de las senales de salida del sistema, a fin de utilizarlos en el

calculo del fitness de las soluciones. Tales tipos de parametros deben abarcar informacion

de la relacion de fase entre cada nodo, aparte de la informacion espacial ya estudiada. Se

propone para trabajos posteriores el uso de tecnicas como medida de la correlacion entre

las senales obtenidas y las deseadas, puesto que incorpora informacion sobre la forma de

onda, ası como la relacion de fase.

Existen trabajos en el cual se proponen tecnicas para el entrenamiento de las redes

recurrentes a fin de obtener una trayectoria dada. Aun con el uso de tales enfoques, per-

manece sin resolver la coordinacion entre las patas del robot ası como tampoco se dispone

de una herramienta analıtica para caracterizar el comportamiento del sistema completo.

Cabe destacar que el uso de sistemas dinamicos como el aquı descrito posee una ventaja

en lo que respecta a transicion de estados del sistema, ya que de manera explıcita quedan

definidas las referencias de velocidad y de posicion de los actuadores, a la vez que se puede

asegurar la convergencia del sistema a un comportamiento rıtmico.

4.2 Modelo de Buchli utilizando ACPO

En el presente trabajo tambien se estudio el modelado del sistema generador central de

patrones basado en modulos de osciladores acoplados, descritos por J. Buchli y A. J. Ijs-

peert [19][39]. Partiendo del hecho de que el sistema de locomocion es un sistema oscilador

por naturaleza, en los trabajos previamente citados se apunta al uso de un modelo ma-

tematico simple de un sistema oscilatorio a fin de controlar las articulaciones dentro de

una pata: tal modelo es un oscilador no lineal. Posteriormente los osciladores de cada nodo

son conectados a fin de obtener la coordinacion entre las patas. Como base canonica de

los osciladores no lineales se usan ACPOs (Amplitude Controlled Phase Oscillator). Esto

permite la obtencion de sistemas mas simples de tratar analıticamente en comparacion

Page 61: Generador de modos de caminado en robots cuadrúpedos

51

con las redes recurrentes.

4.2.1 Modelo de osciladores acoplados

A fin de comprender el funcionamiento de un sistema de osciladores no lineales acoplados,

es necesario introducir el concepto de sistemas no lineales perturbados. Sea el vector de

estado q = [q1q2]T de un oscilador no lineal perturbado, el cual se rige por la ecuacion de

estado (Ec. 4.6):

q = F (q) + p (4.6)

En la Ecuacion 4.6 q es la derivada del vector de estado q, el vector de perturbacion

externa es p y la funcion no lineal de variacion de estado es F (q). En el sistema no

perturbado (p = 0) el vector de estado debe converger a un atractor cıclico para que

corresponda a un oscilador, condicion que viene dada directamente por la naturaleza de

la funcion F (q). Siendo un sistema oscilador es posible aplicar una transformacion del

sistema de coordenadas, desde el plano cartesiano bidimensional descrito por x y y, hasta

un sistema de coordenadas circulares en funcion del radio (r) y fase (θ).

θ = ω0 + pθ (4.7)

r = Fr(r, θ) + pr (4.8)

Dentro de la Ecuacion 4.8 ω0 es la frecuencia del oscilador sin perturbacion, Fr

es la funcion que define la evolucion temporal de r, pθ es el componente tangencial de

la perturbacion (actua solo sobre la fase), y pr es el componente radial del vector de

Page 62: Generador de modos de caminado en robots cuadrúpedos

52

perturbacion. En la Figura 4.17 se muestran las componentes de perturbacion sobre el

oscilador en el plano de la trayectoria descrita por q. Para perturbaciones de baja amplitud,

el efecto sobre la componente radial del oscilador eventualmente queda amortiguado. Para

locomocion en robots con patas es relevante la relacion de fase entre los osciladores, y por

lo tanto se profundiza el analisis en la componente tangencial de la perturbacion (pθ).

Figura 4.17: Representacion de perturbacion en oscilador no lineal

Sean dos osciladores descritos por sus vectores de estado q1 y q2, los mismo estaran

acoplados cuando la fase de uno de ellos sea dada en funcion de la fase del otro (pθ,2 =

f(q1)), lo cual puede resultar en distintas dinamicas del sistema total, incluyendo caos. Es

de particular interes la sincronizacion de los osciladores tal como se describe en el trabajo

de Buchli[19]. Para ello se tiene que:

θd = θ2 − θ1 ≈ const (4.9)

Page 63: Generador de modos de caminado en robots cuadrúpedos

53

En [19] tambien se describe con detalle como predecir la evolucion temporal de θd

para un par dado de osciladores y su relacion de acople. Se propone el modelo base de

ACPO descrito por la Ecuacion 4.10:

q =

[g

(ro√

x2 + y2− 1

)x− yω, g

(ro√

x2 + y2− 1

)y − xω

]T

(4.10)

Para la misma, el sistema posee un ciclo lımite descrito por un cırculo perfecto

de radio ro y con una frecuencia natural ω. La variable g denota un factor de escala o

ganancia que esta directamente asociado a la magnitud de los vectores gradientes definidos

en cada punto del plano. Conforme aumenta esta variable, tambien lo hace la velocidad de

convergencia del vector de estado q al ciclo lımite. En la Figura 4.18 se muestra el campo

diferencial para un ACPO con ro = 1, g = 10 y ω = 2π, con diferentes trayectorias de

estados para distintos puntos iniciales. Se introduce la siguiente notacion: q = FACPO(q),

donde q = [x, y]T es el vector de estado del sistema.

Figura 4.18: Ciclo lımite para ACPO con ro = 1, g = 10 y ω = 2π

Definamos una matriz de rotacion:

Page 64: Generador de modos de caminado en robots cuadrúpedos

54

R =

(cos(θR) − sin(θR)sin(θR) cos(θR)

)(4.11)

Y se introduce la siguiente notacion:

q1,r = Rq1 (4.12)

El vector q1,r es un vector equivalente al vector q1(θ′1), con θ′1 = θ1 + θr. Es decir, si

se toma q1,r para perturbar al oscilador q2 el efecto es el mismo que si el primer oscilador

estuviese en el estado θ′1. Se define como vector de perturbacion p2 a:

p2 = λPq1,r = λPRq1 (4.13)

En la Ecuacion 4.13 la variable λ representa el factor de acople de la perturbacion,

y P es la matriz de acople a traves de la cual se puede definir cuales componentes del

vector de perturbacion afectan a los componentes del vector perturbado.

Modelado de CPG basado en ACPO

A fin de construir un CPG funcional para locomocion en cuadrupedo, en [18]

senalan el uso de una arquitectura totalmente interconectada de manera bidireccional

para cuatro ACPO, uno por cada pata. La matriz de acople bidireccional entre cada par

de ACPO se representa por:

P =

(1 00 1

)(4.14)

Page 65: Generador de modos de caminado en robots cuadrúpedos

55

De la Ecuacion 4.14 se desprende que la componente x de un vector puede ser

afectado de manera directa solo por la componente x de los otros vectores, de igual manera

ocurre con la componente y de los vectores. La arquitectura de conexion se observa en la

Figura 4.19:

Figura 4.19: Arquitectura de conexion para CPG con ACPO

Esta arquitectura da como resultado que las ecuaciones que rigen la evolucion tem-

poral de cada vector de estado sean las siguientes:

q1 = FACPO(q1) + pcq2 + pcq3 + pcq4 (4.15)

q2 = FACPO(q2) + pcq3 + pcq4 + pcq1 (4.16)

q3 = FACPO(q3) + pcq4 + pcq1 + pcq2 (4.17)

q4 = FACPO(q4) + pcq1 + pcq2 + pcq3 (4.18)

Cada perturbacion de estado pc(qi) esta definida por:

pc(qi) = λ [xi, yi]T (4.19)

Page 66: Generador de modos de caminado en robots cuadrúpedos

56

Los modos de locomocion en robots cuadrupedos mas comunes son: caminado, trote

y galope. Si se define la fase θd,ij = θi− θj como la diferencia entre las fases de los vectores

de estado qi y qj, y ademas se toma como referencia de fase del sistema la pata frontal

izquierda (1), entonces los modos de caminado obtenerse utilizando las fases normalizadas

que se muestran en la Tabla 4.6(b). Dado que las diferencias de fase se pueden representar

como matrices de rotacion, y aprovechando el hecho de que R(θd) = R−1(−θd), es posible

obtener las matrices de rotaciones asociadas a cada conexion entre ACPO (ver Tabla

4.2.1).

Modo θd,12 θd,13 θd,14

Caminado 0.75 0.25 0.5Trote 0.5 0.0 0.5

Galope 0.5 0.5 0.0(a)

Modo θR,1 θR,2 θR,3

Caminado 0.25 0.25 0.5Trote 0.5 0.0 0.5

Galope 0.5 0.5 0.0(b)

Tabla 4.6: (a) Desfases bases segun modo de caminado y (b) Fases normalizadas de rotacionsegun modo de caminado

En la Tabla 4.2.1, las columnas representan los nodos ACPO origen de la conexion,

y las filas representan los destinos de cada conexion. Para la diagonal la matriz de conexion

es nula (0) ya que no existe autoconexion en los nodos ACPO. Cada elemento de rotacion

Ri en la matriz es equivalente a una rotacion R(θR,i).

Puesto que se desea controlar de manera suave y continua la transicion del sistema

entre los distintos modos de caminado, representados por las diferencias de fases entre

los nodos ACPO, se pueden definir funciones continuas cuya entrada sea un parametro

denominado Pmodo; conforme este parametro varıa, los desfases de cada nodo con respecto

al de referencia (FI/1) cambian de manera continua entre cada uno de los valores mostrados

ACPO FI/1 FD/2 TI/3 TD/4FI/1 0 R−1

3 R−11 R2

FD/2 R3 0 R2 R−11

TI/3 R1 R−12 0 R−1

3

TD/4 R−12 R1 R3 0

Tabla 4.7: Matrices de rotaciones para CPG-ACPO

Page 67: Generador de modos de caminado en robots cuadrúpedos

57

en la tabla 4.6(b). En [19] se muestran las graficas correspondientes a las tres funciones

univaluadas de la fase de los nodos FD/2, TI/3 y TD/4 con respecto a FI/1. Estas figuras

cumplen con las caracterısticas de transicion suave y continua de fase entre distintos modos

de caminado. Sin embargo las ecuaciones provistas por los autores en dicha publicacion

discrepan de las ecuaciones que originan tales figuras. Empleando la estructura basica de

las funciones, se corrigieron los parametros y la forma de las mismas y se lograron obtener

las siguientes ecuaciones:

θR,1 =1

4

(1 +

1

1 + e−20(Pmodo−1,5)

)(4.20)

θR,2 =1

4

((Pmodo − 1)2 +

1

1 + e−20(Pmodo−1,5)

)(4.21)

θR,3 =1

2

(1− 1

1 + e−20(Pmodo−1,5)

)(4.22)

Estas ecuaciones corresponden de manera exacta a las graficas de fases publicadas en [19].

El rango de la variable de control Pmodo va desde cero (0) para modo caminar hasta dos

(2) para modo galope, pasando por trote cuando Pmodo = 1. Las graficas de cada unas de

las funciones de transicion de fase se muestran en la Figura 4.20.

Figura 4.20: Funciones de transicion de fases

Page 68: Generador de modos de caminado en robots cuadrúpedos

58

4.2.2 Pruebas del modelo basado en ACPO

A continuacion se muestran varias pruebas efectuadas para evaluar el desempeno

de ACPO como base para un modelo del sistema locomotor. Cabe destacar que este

esquema de osciladores acoplados solo provee un mecanismo para la generacion de senales

de sincronizacion entre cada una de las patas. No provee de referencias para los angulos

de cada uno de los motores dentro de un pata. Se considera que un ciclo completo para un

oscilador se corresponde con un ciclo de locomocion de la pata asociada a dicho oscilador.

La funcion principal del modelo empleado es la generacion de senales de referencia

temporales para los angulos de cada articulacion, las cuales describen un modo de cami-

nado en particular en funcion de la relacion de fase entre los vectores de estado qi de cada

una de las patas. Se implemento el sistema descrito por las Ecuaciones 4.15, utilizando

Euler como tecnica de resolucion de las ecuaciones diferenciales para los vectores qi, con

Euler = 0,001.

Primero se estudio el efecto que tienen las variables g, ro y ω sobre el atractor

cıclico de un solo ACPO. En las Figuras 4.21(a),4.21(b),4.21(c),4.21(d) se muestran los

ciclos lımites para 4 casos de ACPO con distintos valores de g; los otros parametros se

mantuvieron constante (ω = 2π, ro = 1). Se muestran las graficas de las trayectorias

descritas bajo tales condiciones de simulacion, empleando un total de 8 puntos iniciales

fijos, 4 de ellos ubicados en las cercanıas del origen, y los cuatro puntos restantes fuera

del cırculo de radio ro; la longitud de cada trayectoria corresponde a los primeros 1000

puntos de simulacion. En tales graficas se puede apreciar el impacto de g en la velocidad

de convergencia del vector de estado q hacia el cırculo de radio igual a 1 que describe el

ciclo lımite del sistema.

Se puede observar que conforme disminuye el valor de g, la trayectoria descrita por el

vector de estado tarda cada vez mas en converger al ciclo de radio 1. En la Figura 4.21(d) se

Page 69: Generador de modos de caminado en robots cuadrúpedos

59

(a) g = 0.1 (b) g = 1

(c) g = 10 (d) g = 100

Figura 4.21: Ciclo lımite de ACPO en para distintos valores de g

aprecia que el vector q cae en dicho ciclo atractor en apenas una iteracion, para los distintos

puntos iniciales empleados. El efecto directo de g es escalar la componente tangencial

(aproximacion) del vector q, al aumentar este disminuye el tiempo de convergencia. Sin

embargo, tambien se observo que para valores muy bajos de g el sistema no convergıa,

sino por el contrario divergıa del circulo de radio ro. Esto se observa en las Figuras 4.21(a)

y 4.21(b); en el primer caso la trayectoria del vector de estado crece paulatinamente,

alejandose del cırculo en el caso de los puntos iniciales que estaban fuera del mismo. Las

trayectorias correspondientes a los puntos internos describıan espirales cuyo radio crecıan

tambien de manera progresiva. Para la grafica correspondiente a un valor de g = 1, se

observa que las distintas trayectorias convergen a un zona descrita por un anillo con un

Page 70: Generador de modos de caminado en robots cuadrúpedos

60

radio promedio igual a 1.2, los cual evidentemente es mayor al radio establecido por ro.

Observando el impacto de la variable g sobre la posible convergencia del vector

de estado a un atractor cıclico definido por ro, se desprende la necesidad de usar valores

mayores o igual a 10. No existe la necesidad de identificar el valor exacto que asegura

convergencia del sistema, puesto que no se desea operar en torno a una condicion crıtica.

Para esto se considera como condicion suficiente utilizar una constante g con un valor lo

suficiente alto como para asegurar convergencia.

En lo que respecta al comportamiento del sistema completo, compuesto por cuatro

osciladores acoplados (ver Fig. 4.19), se procedio a estudiar la evolucion temporal del

mismo ante la ausencia de perturbaciones. Para ello, se fijo un modo de caminado en

particular al cual estan asociados distintos desfases entre patas, los cuales se dejaron

constante durante la simulacion. Todos los vectores de estado fueron puestos en cero

(qi = [xi, yi]T = [0; 0]T ,∀i �= 1) excepto para la pata 1 ( Frontal Izquierda); la condicion

inicial de dicha pata era el vector qini = [0,1; 0,1]T a fin de que el sistema completo no

partiese de un estado totalmente nulo, caso en el cual permanecerıa estatico en el origen

para todos los osciladores. El resto de los parametros empleados fueron los siguientes:

ω = 2π,ro = 1, g = 50 y λ = 2; la variable que controla los desfases fue colocada en el

valor correspondiente al modo caminado (Pmodo = 0). En la Figura 4.22 se muestra la

evolucion temporal de las 8 componentes de los vectores de estado correspondientes a las

cuatro patas, para una simulacion efectuada con un paso de Euler = 0,001.

Puesto que se escogio un valor de Pmodo = 0 correspondiente al modo caminado,

la relacion de fases es tal que algunas componentes de los vectores de estados poseen

aproximadamente el mismo valor de amplitud para el mismo instante. Por ejemplo, el

componente x del ACPO correspondiente a la pata 1 posee la misma forma de onda ( con

igual fase ) que la componente y del vector de estado de la pata 2. Este comportamiento se

aprecia en la Figura 4.22. Las Figuras 4.23(a)4.23(b)4.23(c)4.23(d) muestran la evolucion

de los mismos vectores de estado en el plano X − Y .

Page 71: Generador de modos de caminado en robots cuadrúpedos

61

Figura 4.22: Salidas de CPG-ACPO en funcion del tiempo, Pmodo = 0

En las graficas de las trayectorias en el plano de los vectores de estado tambien es

posible observar la convergencia del sistema completo a un regimen con desfases entre los

vectores de cada pata, iguales a los establecidos como referencia para el modo de caminado

( ver Tablas 4.6(a)4.6(b) ). A fin de poder apreciar la velocidad con la cual el sistema cae

en este comportamiento de acoplamiento de las fases, se procedio a graficar los desfases

para cada una de las patas. Para ello, se tomo como referencia ( fase cero ) a la Pata

1. En la Figura 4.24 se muestran las graficas con los desfases en funcion del numero de

iteraciones, para las patas 2,3 y 4; tambien se colocan los valores de referencia de fase

para cada pata. En lo que respecta al modulo de los vectores de estado, se tiene que el

sistema tarda un numero mayor de iteraciones en converger a un valor final, en este caso

de 1,251. La Figura 4.25 muestra la evolucion temporal de los modulos de q para cada

una de las patas. En ambas se puede apreciar que tanto las fases como los modulos de

los vectores convergen rapidamente a un estado final, tomando un aproximado de 100

iteraciones para establecerse la amplitud, mientras que la fase se estabiliza en apenas

3 iteraciones. Sin embargo, se nota un error en el valor final de la amplitud ya que el

valor de ro = 1 difiere del radio del ciclo final al cual convergen los cuatro vectores de

Page 72: Generador de modos de caminado en robots cuadrúpedos

62

(a) Pata 1 (b) Pata 2

(c) Pata 3 (d) Pata 4

Figura 4.23: Trayectorias en el plano del vector q para cada pata

estado (1,251). Aquı nuevamente se observa el fenomeno identificado en la Figura 4.21(b)

asociado al valor de g utilizado. Este resultado se toma en consideracion en posteriores

implementaciones del presente modelo como sistema de generacion de fases de un CPG

mas completo.

Por ultimo se estudio el comportamiento del sistema ante la transicion de modo de

caminado. Para esto se partio con un modo de locomocion dado, y una vez que el sistema

se establecıa en un comportamiento estable propio de dicho modo, se modifico la variable

Pmodo. Dicho parametro fue cambiado un total de 3 veces, pasando por caminado, trote,

galope y por ultimo de vuelta a caminado. En la Figura 4.26 se muestra la evolucion

temporal de las variables de los vectores de estado para todas la patas con las variaciones

Page 73: Generador de modos de caminado en robots cuadrúpedos

63

Figura 4.24: Fases de cada pata en funcion del tiempo

Figura 4.25: Modulos para cada pata en funcion del tiempo

Page 74: Generador de modos de caminado en robots cuadrúpedos

64

antes mencionadas para Pmodo. Los demas parametros del sistema se mantuvieron iguales.

Figura 4.26: Salidas de CPG-ACPO en funcion del tiempo, Pmodovariable

Se aprecia el ajuste inmediato de las amplitudes de los vectores de estado para cada

cambio de la variable Pmodo. Tales ajustes corresponden a transiciones continuas en cada

una de las formas de onda. Sin embargo se sigue observando diferencias entre la amplitud

alcanzada por las ondas, y la correspondiente al atractor con radio ro = 1.

Partiendo de las distintas pruebas previamente descritas, donde se observan los

comportamientos que exhibe el sistema dinamico que representa un CPG basado en cuatro

ACPO interconectados, es posible identificar algunas caracterısticas utiles para generacion

de modos de caminado en un cuadrupedo. Estas son las siguientes:

• Es posible establecer referencias de desfase a partir de una variable unica (Pmodo),

lo cual no impide la inclusion de desfases arbitrarios en caso de que resultasen utiles

Page 75: Generador de modos de caminado en robots cuadrúpedos

65

para un modo de caminado en particular.

• Se encuentra definido un vector de estado (q) para cada una de las patas, ası como

su gradiente en todo el plano (q).

• Es posible ajustar el radio del atractor cıclico de cada uno de los osciladores mediante

el parametro ro.

• Se puede controlar la velocidad de oscilacion a traves del parametro ωi.

• La convergencia del vector de estado al atractor cıclico puede ser controlada mediante

el factor g, que escala la componente de q perpendicular al ciclo de radio ro.

Estas caracterısticas pueden ser aprovechadas para modelar el acople de fase entre

las patas del robot cuadrupedo. No obstante, un modelo de CPG-ACPO resulta incompleto

al quedar sin solucion la coordinacion de los movimientos de las articulaciones dentro

de cada una de las patas. Aparte, se pudo identificar algunos casos donde el sistema

de osciladores acoplados exhibe un comportamiento que afectarıa de manera negativa al

proceso de locomocion completo. Estos son:

• Para valores de g bajos (entre 0,1 y 1 por ejemplo), el vector de estado para un

oscilador ACPO simple NO convergıa al atractor cıclico deseado. El sistema por

el contrario divergıa, aumentado continuamente la amplitud de q: el sistema era

inestable.

• El sistema es muy sensible a la resolucion de paso en la simulacion al usar Euler. A

diferencia del caso de las CTRNN, donde un paso de 0,1 resultaba suficiente; pero

para el ACPO se necesario un paso de simulacion menor o igual a 0,001. Este proble-

ma puede ser resuelto mediante el uso de otras tecnicas para calculo con ecuaciones

diferenciales.

Page 76: Generador de modos de caminado en robots cuadrúpedos

66

• El espacio natural de salida de cada vector es una circunferencia descrito por com-

ponentes de naturaleza sinusoidal. La generacion de senales con diferentes formas de

ondas basandose solamente en ACPO aun no ha sido resuelto.

4.3 Generacion de trayectorias dinamicas con DNN

En esta seccion se menciona el uso de un tipo particular de redes neuronales deno-

minadas Dynamic Neural Networks (DNN) para la generacion de trayectorias dinamicas.

La idea es descrita con mayor detalle por P. Zegers y M. K. Sundareshan en [29][30]. Si

bien no es citada como base para un modelo de locomocion en robots con patas, los autores

senalan sus posibles aplicaciones en areas de la robotica, como es el control de trayecto-

rias en brazos roboticos. Existen otros trabajos donde se muestran tecnicas alternativas

a la que se muestra a continuacion para el entrenamiento de redes dinamicas recurrentes

[40][41][42].

Un problema clasico en sistemas dinamicos no lineales es el diseno de un sistema

que produzca un conjunto predisenado de atractores tales que se asegure la convergencia

a un ciclo lımite independientemente de las condiciones iniciales. En la seccion anterior se

estudio con detalle un sistema simple de este tipo conformado por osciladores no lineales

acoplados. Los mismos permitıan la generacion de un conjunto de atractores que even-

tualmente, usando los parametros correctos, convergıan a un ciclo lımite definido. Pero

dicho enfoque estaba limitado a un tipo especıfico de ciclo lımite, que dejaba sin solucion

la coordinacion de los movimientos entre las articulaciones. Lo ultimo es denominado el

problema de generacion de trayectorias

Existen casos mas generales donde se utilizan entradas externas al sistema para el

control durante el proceso de generacion de trayectorias. Estas entradas tambien permiten

darle forma en tiempo real a las trayectorias descritas por el sistema mediante modifica-

Page 77: Generador de modos de caminado en robots cuadrúpedos

67

ciones del campo atractor; problema el cual se denomina modulacion de trayectorias. En

[29] se introduce el uso de redes dinamicas (DNN), cuya arquitectura ataca por separado

cada uno de estos problemas. Para ello, partiendo de la separacion del problema original

en uno de generacion y otro de modulacion, proponen el uso de redes recurrentes (RNN)

para la generacion de un atractor para un ciclo lımite (analogo al caso de las CTRNN), y

el uso de una red no recurrente (NRNN) para la modulacion de la trayectoria resultante

de la red anterior. La arquitectura propuesta para la red neuronal dinamica se muestra en

la Figura 4.27.

Figura 4.27: Arquitectura de DNN basada en RNN y NRNN

Si se observa con detenimiento, se puede apreciar que en el proceso de generacion de

trayectorias dinamicas incorpora dos conceptos presentes de los sistemas neurofisiologicos,

oscilacion sostenida y neuromodulacion, indicados previamente en el capıtulo de mode-

los neurofisiologicos del sistema locomotor en animales (Pag. 27). La aproximacion de

trayectorias utilizando redes neuronales es estudiada en [6][11][27][28].

Generacion de trayectorias mediante DNN

Existe una serie de consideraciones y principios matematicos presentes detras de

soluciones a los problema de generacion y modulacion de trayectorias dinamicas. Las mis-

Page 78: Generador de modos de caminado en robots cuadrúpedos

68

mas se mencionan a continuacion junto con los fundamentos matematicos que dan soporte

a la propuesta de DNN referida por Zeger y Sundareshan en [29].

Teorema 4.3.1. Dado un conjunto de pares de datos (ti, y(ti)), i ∈ [1, l], obtenidos del

mapeo y(·) : [0, T ] → �m, la trayectoria yl(t), generada por el proceso gl(o(t)), gl(·) : �k →�m, o(t) generado por el proceso h(·) : [0, T ] → �k, con k entero positivo, puede ser hecho

arbitrariamente proximo a y(t) conforme l → ∞ dado un g(·) que es implementado con

una NRNN con dimension Vapnik-Chervonenkis (VC) apropiada, y o(t) es implementado

de manera tal que cumple con la condicion:

ti �= tj ⇒ o(ti) �= o(tj) (4.23)

para ti ∈ [0, T ] y tj ∈ [0, T ].

Prueba: Cualquier mapeo y(·) : [0, T ] → �m, puede ser reformulado como la compo-

sicion de dos mapeos y(t) = g(o(t)), g(·) : �k → �m, la trayectoria generada por el proceso

h(·) : [0, T ] → �k, k entero, dado que las funciones g(·) y h(·) existen. El proceso h(·) puede

ser escogido de manera tal que cumpla con las condiciones expresadas en la Ecuacion 4.23.

Luego, los requerimientos para la existencia del mapeo g(·) corresponden a las de la exis-

tencia de una funcion. Si las condiciones previas se cumplen, entonces g(·) es una funcion

y por lo tanto es implementable mediante el uso de una NRNN. Ahora, dado un conjunto

de pares de datos (ti, y(ti)), i ∈ [1, l], la salida del mapeo yl(t) = gl(o(t)), gl(·) : �k → �m,

puede ser hecha arbitrariamente cercana a y(t) dado que gl(·) es implementada con una

NRNN con dimension VC correcta, y l →∞ [31][43][44].

Esto sugiere que cualquier proceso BIBO (Bounded Input - Bounded Output) puede

ser reformulado como dos procesos en cascada: el primero h(·) que transforma el tiempo t en

una trayectoria intermedia o(t), y el segundo proceso gl(·) que convierte dicha trayectoria

en una secuencia yl(·) que se aproxima a la trayectoria dinamica deseada y(·). Si se observa

con detenimiento, este enfoque coincide con la nocion de separacion espacio-temporal del

problema de locomocion, donde se requiere resolver el problema de coordinacion de las

Page 79: Generador de modos de caminado en robots cuadrúpedos

69

fases entre las patas del robot (temporal) y el problema de generacion de referencias en el

espacio de actuadores para cada una de las patas (espacial).

A continuacion se mencionan los modelos empleados en [29] para cada uno de estos

dos problemas en DNN.

4.3.1 Generacion: sıntesis de red recurrente

El modelo de red recurrente citado corresponde a uno de tiempo continuo descrito

por un grupo de ecuaciones diferenciales acopladas:

1

τi

xi(t) = −xi(t) +n∑

j=i

wijfj(xj(t)), i ∈ [1, n] (4.24)

Aquı xi(t) ∈ � denota el estado de la i-esima neurona en el instante t, τi ∈ � es

una constante de tiempo conocida como el tiempo de relajacion, wij ∈ � denota el peso

de interconexion de la neurona j-esima a la i-esima, f(·) : � → � defina una funcion de

umbral no lineal como la siguiente:

σ(x) =2

1 + e−riz− 1, i ∈ [1, n] (4.25)

donde ri ∈ � es un parametro que permite controlar la pendiente de la funcion de

umbral.

Si se observa con detenimiento la estructura de la Ecuacion 4.24 se puede apreciar

que es casi identica a la de la ecuacion empleada en la descripcion de CTRNN, citada

por [15][16] ( ver Seccion 4.1 en pagina 31). Ambas comparten los parametros de τ como

Page 80: Generador de modos de caminado en robots cuadrúpedos

70

constante de tiempo, variables de los pesos de interconexion entre los nodos, ası como la

realimentacion negativa del estado de la variable. La diferencia entre ambas ecuaciones

estriba en la presencia de un termino θi ausente en la Ec. 4.24; y tambien que la funcion

de umbral aquı utilizada posee un termino extra que permite controlar la pendiente de

la misma. A pesar de ello, la estructura de las mismas sugieren una fuerte analogıa en el

comportamiento dinamico, aunque no se provee de un metodo analıtico para pasar de una

representacion a otra.

La relevancia del modelo de red recurrente empleado en esta seccion reside en

su capacidad de generar atractores cıclicos; por ello en el presente trabajo se propone

la posibilidad de utilizar cualquier conjunto de ecuaciones diferenciales acopladas tales

que converjan a una trayectoria cerrada para los vectores de estado del sistema. Este

planteamiento se describe con mayor detalle en el Capıtulo 5 como parte de la propuesta

de un sistema generador de modos de caminado.

Una posible solucion a la red recurrente dentro de un DNN puede ser una cuya

salida sea una trayectoria unidimensional monotona, lo cual cumple con las condiciones

impuestas en la Ec. 4.23. Sin embargo se requiere tambien que la senal sea de naturaleza

cıclica, y debido a la continuidad de todas las trayectorias obtenidas mediante el uso

de ecuaciones diferenciales acopladas, se vuelve necesario utilizar como RNN un sistema

de dimension 2 o mayor. En [29] se detalla la implementacion de un RNN basado en

tres nodos con acoplamiento como el descrito por la ecuacion 4.24, de cuyo vector de

salida yl = [yl(0), yl(1), yl(2)] se utilizan solo dos dimensiones como entrada al proceso de

transformacion g(·).

4.3.2 Modulacion: Sıntesis de red no recurrente

En la Figura 4.27 se aprecia que el proceso de modulacion de trayectoria, controlado

por una entrada externa es posible de tres maneras: a nivel de la red recurrente, a nivel

Page 81: Generador de modos de caminado en robots cuadrúpedos

71

de la red no recurrente o a como entrada de ambas. Las dos posibilidades que contemplan

la modulacion actuando sobre la RNN revisten una mayor complejidad en el proceso de

sıntesis de los N2 + 2N parametros que describen a dicha red, debido primordialmente a

las ecuaciones diferenciales que rigen el comportamiento de las mismas. Por ello, el proceso

de modulacion se efectua a nivel solamente de la red no recurrente.

Como red no recurrente citan la utilizacion de una red neuronal feedforward. Se

destaca el hecho de que la aplicacion de entradas externas a la NRNN es lo suficientemente

poderoso como para obtener cualquier transformacion espacial, manteniendo la simplicidad

en su implementacion.

Teorema 4.3.2. Dado un conjunto de tripletas de datos (ti, ei, y(ti, ei)), ei ∈ �p, i ∈ [1, l],

obtenidos del mapeo y(·, ·) : [0, T ]×�p → �m, e ∈ �p, la trayectoria yl(t, e), generada por el

proceso gl(o(t), e), gl(·, ·) : �k+p → �m, o(t) generado por el proceso h(·) : [0, T ] → �k, con

k entero positivo, puede ser hecho arbitrariamente proximo a y(t) conforme l → ∞ dado

un g(·, ·) que es implementado con una NRNN con dimension Vapnik-Chervonenkis (VC)

apropiada, y h(·) es implementado de manera tal que cumple con la condicion expresada

en la Ec. 4.23.

Prueba: Analoga a la prueba del teorema anterior.

Lo importante en la redes dinamicas es la introduccion de conceptos que simplifican

la obtencion de sistemas aproximadores a trayectorias dinamicas. Existen dos ideas en

particular que revisten interes para solucionar el problema de modelado del sistema de

locomocion:

• Separacion del problema en uno de ındole temporal, y el otro de naturaleza espacial.

• Uso de redes neuronales no recurrentes (redes feedforward) para operar como defor-

madores de trayectorias.

Page 82: Generador de modos de caminado en robots cuadrúpedos

72

Un modelo de DNN con una implementacion basada en una RNN descrita por

ecuaciones diferenciales acopladas como la Ec. 4.1 o la Ec. 4.24 es valida para el control

de una sola pata, restando por resolver el acople de las fases entre cada una de las patas.

4.4 Comparacion entre tecnicas para modelado de

CPG

Partiendo de lo expuesto previamente en este capıtulo, donde se detallan las prin-

cipales caracterısticas de tres tecnicas o enfoques que pueden ser empleadas como modelos

de CPG para la generacion de modos de caminado en un robot cuadrupedo, se procedio a

efectuar una comparacion de los mismos. Dicha comparacion se resume en la Tabla 4.8.

CTRNN ACPO DNNSıntesis deparametros

AG, R-Backpro Analisis directo Linealizacion, AG,Backpro

Nodos N nodos por pata 1 nodo por pata N nodos por pata

Coordinaciontemporal

Sin relaciones defase

Con relacionesde fase

Sin relaciones defase

Modelo de pata Modelo simple depata

Sin modelo de pata Cualquier mo-delo de pata

Tabla 4.8: Comparacion de tecnicas para modelado de CPG

En lo que respecta a la sıntesis de parametros, el uso de ACPO resulta ser el mas

conveniente ya que los mismos pueden ser calculados mediante inspeccion directa de las

ecuaciones que rigen la evolucion temporal de los vectores de estado en dicho modelo. Las

alternativas de CTRNN y DNN dependen de tecnicas como los algoritmos geneticos y

entrenamiento por backpropagation, las cuales no aseguran convergencia a soluciones opti-

mas. Otra ventaja que exhibe el uso de ACPO para modelado del sistema de locomocion

es que tan solo se requiere un nodo por cada pata, mientras que las otras dos opciones

Page 83: Generador de modos de caminado en robots cuadrúpedos

73

requieren un minimo de 3 nodos por cada pata, aumentando el numero de parametros

involucrados. Sin embargo, usar osciladores acoplados no resuelve la coordinacion de los

movimientos dentro de cada una de las patas, ya que provee solamente una referencia

temporal acoplada entre las patas. En este punto, resulta mas conveniente la utilizacion

de redes dinamicas (DNN), las cuales permiten resolver el problema de generacion de tra-

yectorias dinamicas. De esta manera es posible asociar un movimiento coordinado de las

articulaciones de la pata a una referencia temporal para dicha pata.

Page 84: Generador de modos de caminado en robots cuadrúpedos

74

Generador de modos de caminado en robotscuadrupedos

En este capıtulo se describen las propuestas que conforman el principal aporte del

presente trabajo en el modelado del sistema de locomocion de robots con patas. Tambien

se menciona la metodologıa empleada para el diseno y evaluacion de los mismos, y se

muestran los resultados obtenidos con sus respectivos analisis.

En el Capıtulo 2 se expusieron los principios que conforman la base del sistema

locomotor en robot con patas. Para el caso especıfico de robots cuadrupedos, objetos de

estudio del presente trabajo de investigacion, se describieron las condiciones necesarias

para la generacion de modos de locomocion estaticamente estables. Vale destacar que las

caracterısticas deseadas en un modelo de caminado para cuadrupedos se resumen en el

siguiente par de ideas basicas:

Trayectorias de referencias para las patas

El movimiento de cada una de las patas debe describir una trayectoria continua y

cerrada. Dicha trayectoria se compone de una fase de transferencia y la otra de soporte;

esta ultima es la que provee de propulsion efectiva al robot. Los perfiles de movimiento

estan asociados directamente a la estructura cinematica de las patas. Es deseable que el

sistema de locomocion provea de valores de referencias en el espacio de los actuadores,

como pueden ser angulo y velocidad angular para los motores.

Page 85: Generador de modos de caminado en robots cuadrúpedos

75

Mediante la modificacion y ajuste de las trayectorias es posible lidiar con modifica-

ciones en la estructura mecanica de las patas, y mas importante aun, es fundamental para

la implementacion de esquemas de control para la locomocion del robot sobre terrenos

irregulares o inclinados.

Coordinacion de movimientos entre las patas

El modo especıfico de caminado viene dado de manera directa por la relacion de

fases en los movimientos cıclicos efectuados por cada pata. Por esta razon resulta evidente

la importancia de poseer un modelo de locomocion el cual genere dichos desfases segun un

modo particular de caminado. Es deseable que dicho modelo provea de mecanismos para

efectuar de manera controlada transiciones entre distintos modos de caminado.

Se puede observar que estas dos ideas basicas son comunes con algunas caracterısti-

cas observadas en el proceso de locomocion de animales, y mas importante aun, han sido

incorporadas de una u otra manera en varios de los modelos propuestos acerca de la fi-

siologıa del sistema de locomocion. Partiendo de esto, se propone un primer modelo de

locomocion para robots cuadrupedos el cual se centra en la necesidad de efectuar tran-

siciones de manera controlada entre distintas trayectorias para las patas. Se considera el

modelado del sistema locomotor como un problema de coordinacion temporal y otro de

coordinacion espacial. Se emplea una arquitectura que se fundamenta en tal principio de

separacion, y utiliza senales basicas de referencias temporales. Dicho modelo es evalua-

do y se analizan los resultados. Posteriormente, utilizando como base estos resultados se

propone un nuevo modelo el cual centra su atencion en el movimiento coordinado entre

las patas. El mismo comparte la nocion de separacion espacial y temporal del proceso de

locomocion, y resuelve ambos utilizando herramientas y metodos evaluados a lo largo del

presente trabajo de investigacion. El modelo resultante es lo suficientemente simple como

para facilitar su comprension y adaptacion a patas con otras estructuras cinematicas.

Page 86: Generador de modos de caminado en robots cuadrúpedos

76

5.1 Propuesta de modelo del generador de modos de

caminado

Parte del problema de sıntesis de modos de caminado radica en la generacion de

la trayectoria del elemento terminal de cada pata. Normalmente existe una simetrıa en

la estructura mecanica de cada una de las patas dentro de un robot, razon por la cual

todas comparten la misma cinematica; por lo tanto el problema se reduce a construir un

solo sistema con un vector de salida cuyas componentes sean las referencias de angulo de

cada articulacion. Luego dicho sistema es replicado cuatro veces, una vez por cada pata.

Para una estructura cinematica dada existen varias soluciones para trayectorias de la pata

que cumplan con los criterios de estabilidad, por ello se contempla la sıntesis de diferentes

trayectorias para las patas. Puesto que en el presente trabajo se estudian principalmente

los modos de caminado no dinamicos, entendiendose por ello aquellos de baja velocidad,

se utilizan los criterios de estabilidad modos de caminado estaticamente estables.

Una primera aproximacion del sistema de generacion de modos de caminado, se

centra en el uso de senales rıtmicas simples en la seccion de coordinacion temporal, y una

red feedforward para las referencias espaciales. Este enfoque esta directamente asociado

a las observaciones hechas sobre la fisiologıa del sistema locomotor en animales, y mas

importante aun, esta inspirada en la propuesta de arquitectura para DNN examinada en

el Capıtulo 4. En este modelo se apunta a la simplicidad del sistema temporal, que actua

como un marcapasos, por lo cual uso de una red neuronal se reduce a la obtencion de

un metodo para efectuar transiciones suaves entre distintas trayectorias espaciales para la

pata.

Page 87: Generador de modos de caminado en robots cuadrúpedos

77

5.1.1 Arquitectura del modelo propuesto

La estructura del sistema consta de dos secciones o subsistemas. La primera se

comporta como un sistema marcapasos cuya frecuencia de repeticion controla de manera

directa el perıodo completo de la secuencia de caminado. La otra seccion es una red

neuronal de tipo feedforward, con una entrada externa para la seleccion del perfil de

trayectoria que se desea sintetizar. En la Figura 5.1 se ilustran cada uno de los elementos

principales del sistema.

Figura 5.1: Modelo propuesto para generador de modos de caminado.

Se observa claramente la inclusion de una variable externa de control denominada

modo. Dicha entrada tiene como finalidad modificar el tipo de trayectoria espacial que se

desea generar. En lo que respecta al sistema de referencia en tiempo se evaluaron 3 tipos

basicos de generadores. A continuacion se describe con mas detalle este ultimo subsistema.

5.1.2 Referencias en tiempo

Para este subsistema se contemplo el uso de 3 tipos distintos de senales periodicas.

Una es una senal simple de rampa definida por:

r[n] =n(modN)

N(5.1)

Page 88: Generador de modos de caminado en robots cuadrúpedos

78

La Ecuacion 5.1 define una secuencia monotona con un perıodo igual a N, satisfa-

ciendo la condicion de periodicidad y las establecidas para DNN por la Ec. 4.23.

La segunda alternativa para generacion de una referencia temporal es un vector de

dos dimensiones definidos por Y = [u, v]T , con u y v dados por:

u = A · sin(2πωsn/N + φs)v = B · cos(ωcn/N + φc)

(5.2)

Usando dicha ecuacion es posible obtener una familia de figuras cerradas (Lissa-

jous), variando los parametros A, B, ωs, ωc, φs y φc. Debido a las restricciones en la

naturaleza de la senal de entrada a la red neuronal, donde la funcion de mapeo del vector

de tiempo a una referencia temporal debe ser biyectiva (ver Ec.4.23), y por mayor simpli-

cidad, en la presente implementacion se opto por el uso de los mismo valores de frecuencia

en cada senal, hacer cero el desfase entre las dos senales e iguales amplitudes (A = B).

Estas condiciones se resumen de la siguiente manera:

A = B = 1ωs = ωc = ωφs = φc = φ

(5.3)

Con estos valores para los parametros se obtiene una circunferencia de radio uni-

tario, centrada en el origen, en la cual se puede controlar la frecuencia de oscilacion ω y

angulo de rotacion φ. El perıodo completo de cada oscilacion viene dado de manera directa

por el parametro N .

El ultimo tipo de referencia temporal evaluado fue una red neuronal recurrente

(CTRNN) compuesta por dos nodos acoplados mediante la Ecuacion 4.1. Se selecciono una

red con solo dos nodos, ya que este es el numero mınimo de elementos necesarios dentro

de una red de este tipo para obtener una salida de naturaleza oscilatoria sostenida. Esta

Page 89: Generador de modos de caminado en robots cuadrúpedos

79

eleccion facilita la sıntesis de los parametros de la red, en comparacion con los casos de

las redes empleadas en [15][16][29].

Generacion de referencias en tiempo con CTRNN

Para la obtencion de los N2 + 2N parametros de la red neuronal se utilizaron

algoritmos geneticos. Para los dos tipos de senales temporales mencionadas anteriormente

es posible controlar el perıodo de oscilacion de manera directa con un solo parametro.

Para el caso especıfico de la senal en tiempo con CTRNN, se desea obtener una red tal

cuya salida cumpla con una frecuencia de oscilacion dada sin especial requerimiento en

lo que respecta a la forma de onda del vector de estado; para ello es suficiente utilizar

una funcion de fitness para el algoritmo genetico, que se basa en el valor de Frecuencia

Relativa (FR) del vector de salida de la red. El calculo de FR fue descrito de manera

detallada en el apartado 4.1.2, y permite calcular de una manera rapida y aproximada la

frecuencia principal de oscilacion de la red neuronal recurrente. Las condiciones especıficas

de la sıntesis de los parametros mediante AG se enumeran a continuacion:

• Proceso de seleccion de individuos por torneo.

• Se aplico un esquema elitista, manteniendose la mejor solucion de cada generacion.

• El operador de cruce entre cromosomas fue aplicado utilizando un numero finito de

puntos de cruces (8), en puntos seleccionados de manera aleatoria con funcion de

probabilidad uniforme.

• Se mantuvo una poblacion constante de 15 cromosomas para cada epoca de iteracion.

• Se aplico el operador de mutacion a una tasa constante de 2 %.

• Se codificaron los parametros de la red CTRNN de manera directa. La codificacion

de cada parametro se hizo de manera lineal sobre 16 bits del cromosoma, con un

valor absoluto menor a 20.

Page 90: Generador de modos de caminado en robots cuadrúpedos

80

• La funcion de fitness viene dada por el error calculado sobre la FR.

• Las condiciones de parada del algoritmo eran alcanzar un numero fijo de epocas

(1000) o que el error en la funcion de fitness de la FR fuese menor al 1 %.

Para el calculo de FR, se ignoraron los primeros 1000 puntos del vector de salida de

la CTRNN obtenidos resolviendo las ecuaciones diferenciales con un paso de Euler = 0,1;

esto a fin de estudiar solamente la respuesta estacionaria del sistema. Los parametros

del algoritmo genetico fueron obtenidos mediante ajuste empırico sobre las condiciones de

evolucion empleadas en los AG descritos en el apartado 4.1.2. La desventaja de utilizar AG

esta en que no se provee de un metodo directo para modificar la frecuencia del oscilador

sobre la red ya entrenada. La solucion en este punto es obtener una nueva red cambiando

el valor de FR durante el proceso de entrenamiento. Notese que esta metodologıa resulta

poco practica si se desea modificar de manera continua el perıodo del ciclo de locomocion,

situacion que se puede presentar al efectuar cambios en el modo de caminado del robot.

5.1.3 Transicion entre trayectorias mediante redes neuronales

El subsistema de transicion de trayectorias fue implementado mediante una red

neuronal de tipo feedforward. La entrada de la red es el vector xn ∈ �M , donde M es la

dimension del vector de salida de la subseccion de generacion de referencias temporales;

la red neuronal tambien tiene una entrada externa que controla la forma de senal de

salida deseada. La salida del sistema corresponde a un vector yn ∈ �3, cuyas componentes

representan las referencias de angulo de cada una de las tres articulaciones en una sola

pata. La red neuronal posee una sola capa escondida conformada por K = 18 neuronas

sigmoidales, como las descritas en la Ec. 5.4, y en la capa de salida un total de N = 3

neuronas lineales (Ec. 5.5), una por cada motor en la pata. La estructura correspondiente

a la red neuronal feedforward se ilustra en la Figura 5.2.

Page 91: Generador de modos de caminado en robots cuadrúpedos

81

yi = σ

(M∑

j=1

wj · Ij + θj

), i = 1, · · · , K (5.4)

yi =K∑

j=1

wj · Ij + θj, i = 1, · · · , N (5.5)

Figura 5.2: Estructura de red feedforward para transicion de trayectorias.

Entrenamiento de la red neuronal

A continuacion se describe el proceso de entrenamiento para la sıntesis de los

parametros que describen a la red neuronal. El primer paso es la identificacion de un con-

junto de ejemplos para entrenar la red. Puesto que la tarea de la subseccion implementada

mediante la red neuronal es convertir una secuencia de referencia temporal, en un tipo de

trayectoria controlada mediante una entrada externa, se procedio a seleccionar un grupo

de formas de ondas en el espacio cartesiano �3 para la trayectoria espacial del elemen-

to terminal de la pata. El criterio de seleccion se basa en la simplicidad de generacion

Page 92: Generador de modos de caminado en robots cuadrúpedos

82

de cada una de las formas de ondas, que pudiesen ser descritas mediante parametros del

modelo geometrico (Seccion 2.3), y que naturalmente cumpliesen con las condiciones de

estabilidad estatica.

Se empleo un total de 3 formas de onda diferentes: triangular, rectangular y rectan-

gular con bordes redondeados. Las Figuras 5.3(a),5.3(b) y 5.3(c) muestran una vista lateral

en el plano 2-D (Y-Z) perpendicular al cuerpo base del robot, para cada una de las formas

de ondas previamente mencionadas. En las mismas se pueden identificar los parametros

mas importantes correspondiente al modelo geometrico de modos de caminado, como son

la longitud de paso (L), altura base de la plataforma (H) y variacion de altura durante el

paso (dH).

(a) Triangular (b) Rectangular

(c) Redondeada

Figura 5.3: Formas de onda: (a) Triangular (b) Rectangular (c) Redondeada

Como se desea generar referencias angulares para las articulaciones de la pata, las

trayectorias de referencia espaciales (perfiles) fueron convertidas en formas de onda para

las articulaciones mediante la operacion de cinematica inversa correspondiente a la pata.

Page 93: Generador de modos de caminado en robots cuadrúpedos

83

La Figura 5.4 muestra la estructura mecanica de una pata del cuadrupedo. La cinematica

inversa de una pata se describe en la Ecuacion 5.6. Se utilizo la convencion de Denavit-

Hartenberg para la seleccion de los ejes de coordenadas dentro de la pata.

Figura 5.4: Diagrama de una pata en el cuadrupedo

El diagrama de la estructura de la pata mostrado corresponde al modelo de la

plataforma robotica empleada para efectuar pruebas experimentales de los modelos de

caminado. El robot de prueba en cuestion es fabricado por Lynxmotion, y el modelo

especıfico empleado es el Quadruped 3-DOF. Las longitudes de los tres eslabones rıgidos

que conforman a una pata son: L1 = 33mm, L2 = 70mm y L3 = 113mm.

Xp = cos(q1)(L3.cos(q2).cos(q3)− L3.sen(q2).sen(q3) + L2.cos(q2) + L1)Yp = sen(q1)(L3.cos(q2).cos(q3)− L3.sen(q2).sen(q3) + L2.cos(q2) + L1)

Zp = L3(sen(q2).cos(q3) + cos(q2).sen(q3)) + L2.sen(q2)(5.6)

En la Figura 5.5 se muestran las formas de onda resultantes tras aplicar las ecua-

ciones de cinematica inversa sobre los tres perfiles de trayectorias. Los valores empleados

Page 94: Generador de modos de caminado en robots cuadrúpedos

84

para los parametros del modelo geometrico fueron los siguientes: H = 80 mm, dH = 65

mm y L = 200 mm.

Figura 5.5: Referencias angulares para los 3 perfiles

Como metodo de entrenamiento se utilizo la tecnica ampliamente empleada en

redes de tipo feedforward, denominada backpropagation. En la misma se hacen ajusten

continuos en las variables de la red como los pesos de conexion interneuronal y puntos de

operacion, de manera proporcional al error asociado a la salida de la red para una entrada

dada. La herramienta empleada para el entrenamiento de la red fue NNTOOLS de Matlab

R©. Los parametros de entrenamiento se listan a continuacion:

• Duracion de entrenamiento: 500 epocas.

• Vector con 100 puntos por cada lote de entrenamiento para calculo del error.

• Entrenamiento con momento en el gradiente (0,1).

• Error cuadratico medio (LMS), como metrica del error en la salida de la red neuronal.

• Repeticion de entrenamiento durante 15 veces para diferentes redes neuronales.

Page 95: Generador de modos de caminado en robots cuadrúpedos

85

La estructura completa del proceso de entrenamiento de la red neuronal feedforward

se muestra en la Figura 5.6. En dicho proceso, se asocio a cada trayectoria de salida un valor

dado para la variable de entrada modo. Los valores de modo para cada tipo de salida eran:

cero (0) para el perfil triangular, uno (1) para la salida rectangular y (2) para la salida tipo

cuadrada. Utilizando este enfoque en la seleccion del conjunto de pares entradas-ejemplos,

se pretende lograr un mecanismo para efectuar transiciones suaves entre las trayectorias

de ejemplo, para lo cual se varıa de manera continua la entrada modo; aprovechandose

ası la capacidad de inferimiento e interpolacion de las redes neuronales y dar respuestas

de transiciones suaves entre los ejemplos de entrenamiento.

Figura 5.6: Sistema de entrenamiento de red feedforward

Page 96: Generador de modos de caminado en robots cuadrúpedos

86

5.1.4 Resultados de la sıntesis de trayectorias

A continuacion se muestran los resultados experimentales producto de aplicar el

proceso de entrenamiento previamente explicado. Mediante la herramienta NNTOOL fue

posible obtener el progreso del valor del error cuadratico medio en funcion de las epocas de

entrenamiento para cada una de las redes durante el entrenamiento de las mismas. Todas

las redes entrenadas estaban agrupadas segun el tipo de senal de referencia en tiempo

utilizada, lo cual da un total de 3 grupos. Para el calculo de error de cada grupo de red

neuronal se utilizo el vector de error de cada una de las 15 repeticiones de entrenamiento

efectuadas desde diferentes semillas aleatorias y se promediaron. Los errores promedios

para los 3 grupos fueron graficados y se muestran en la Figura 5.7.

Figura 5.7: Error promedio vs No de epocas para 3 grupos de redes neuronales

Se puede apreciar que las redes entrenadas mediante backpropagation eventual-

mente convergen a soluciones con valores bajos de error, lo cual es de esperarse dada la

capacidad de las mismas como aproximadores de funciones para un valor arbitrariamente

bajo de error. El mejor desempeno en el entrenamiento se obtuvo de la red cuya entrada

era el par U − V de senales seno y coseno. Para las redes con entrada rampa se obtuvo

que la velocidad de convergencia era menor que para los otros grupos evaluados. Esto se

Page 97: Generador de modos de caminado en robots cuadrúpedos

87

puede explicar si se observa al vector de salida deseado, el cual describe una trayectoria

cerrada tal como ocurre con las entradas U − V y CTRNN , ambas de 2 dimensiones. En

el caso de la entrada de rampa existe una discontinuidad cuando la senal alcanza su valor

maximo (1) en un perıodo de tiempo N . Dicha variacion abrupta en la entrada dificulta la

tarea de aproximacion ya que a la salida el sistema de referencia espacial es de naturaleza

continua. Los angulos de referencia obtenidos a la salida de la mejor red neuronal en cada

uno de los tres grupos se muestran en las Figuras 5.8(a),5.8(b) y 5.8(c) para la entrada

tipo rampa, UV y CTRNN respectivamente.

En los tres casos, las formas de ondas de salida se aproximan a las referencias em-

pleadas en el entrenamiento (ver Fig. 5.5), lo cual es de esperarse para las redes obtenidas

ya que el error promedio final de las mismas alcanza un nivel tolerable (< 10 %). Se obser-

vo la ocurrencia del fenomeno denominado overfitting o sobreentrenamiento; esto tiende

a ocurrir o bien cuando el numero de iteraciones de entrenamiento de la red es muy alto,

o cuando existe un numero muy elevado de neuronas en la capa escondida. A primera

vista, se estarıa inclinado a pensar que la ocurrencia del fenomeno de sobreenterenamiento

resulta positivo para la red neuronal, porque el error de salida de la red neuronal va decre-

ciendo conforme se avanza en el proceso de entrenamiento; sin embargo esto produce que

la red se memorice de manera casi perfecta los ejemplos utilizados en el entrenamiento,

pero pierde progresivamente la capacidad de generalizacion para casos no incluidos en el

entrenamiento.

El sobreentrenamiento incide de manera negativa en la generacion de trayectorias

para el caminado, tal y como se puede observar en las Figuras 5.9(a) y 5.9(b), donde se

muestran las salidas de dos soluciones de redes pertenecientes al grupo con entradas U−V ,

para la transicion entre dos modos o perfiles de trayectorias.

Cabe recordar que la variable modo fue incluida para permitir el control suave en la

transicion de las salidas entre los distintos perfiles utilizados. Con sobreentrenamiento los

perfiles de salida se aproximan bastante bien a los ejemplos utilizados en el entrenamiento

Page 98: Generador de modos de caminado en robots cuadrúpedos

88

(a) Rampa

(b) U-V

(c) CTRNN

Figura 5.8: Salidas de red neuronal para entradas: (a) Rampa (b) U-V (c) CTRNN

Page 99: Generador de modos de caminado en robots cuadrúpedos

89

(a) Con sobreentrenamiento (Error = 0.131) (b) Sin sobreentrenamiento (Error = 0.417)

Figura 5.9: Efecto de overfitting en trayectorias.

pero en las transiciones de un modo de caminado a otro varıan abruptamente. Detallando

las Figuras 5.9(a) y 5.9(b) se puede observar que la red neural con menor error resuelve de

manera casi perfecta los dos ejemplo de entrenamiento empleados: triangulo y rectangulo,

pero las soluciones intermedias (modo : 0 → 1) exhibe variaciones abruptas de amplitud

lo cual dista de ser una transicion suave entre perfiles de caminado. Para el caso de la

red neural con un valor de error superior (0,417), los perfiles obtenidos cuando el modo

deseado es triangular o rectangular no resultan ser tan buenas aproximaciones como la

primera red. Sin embargo, las transiciones entre las dos trayectorias se efectua de manera

mucho mas suave lo cual incide de manera positiva en aplicaciones de locomocion.

5.2 Propuesta de modelo generador de modos de ca-

minado

La otra propuesta para modelar el sistema de locomocion esta estructurada como

un generador central de patrones (CPG), el cual se basa en la distribucion del proceso de

caminado en unidades presentes en cada una de las patas. Los resultados experimentales

obtenidos durante la evaluacion del modelo previamente propuesto indican la conveniencia

Page 100: Generador de modos de caminado en robots cuadrúpedos

90

del uso de un sistema de referencia temporal que sea de al menos dos dimensiones, y

cuya respuesta natural de salida sea una trayectoria cerrada. Se descarta el uso de redes

recurrentes (CTRNN) como modelo del subsistema temporal ya que la complejidad para

controlar su respuesta, ası como la falta de un mecanismo de interconexion para al menos

4 nodos que permita predecir su comportamiento, las hace poco viables para la presente

aplicacion. De esta opcion se puede rescatar la existencia de un campo atractor para una

trayectoria dada, caracterıstica que no posee el modelo de dos osciladores (U−V ) estudiado

previamente.

En este punto, se propone como solucion el uso de osciladores acoplados como los

descritos en la seccion 4.2. Los mismos poseen una arquitectura que resulta idonea para

la implementacion de un CPG debido a la distribucion del sistema de caminado; tambien

se debe destacar que las ecuaciones de cada ACPO describen un campo de atractores que

convergen a trayectorias circulares cerradas facilmente controlables. Todas estas carac-

terısticas hacen de estos osciladores una eleccion casi directa como parte del modelado del

sistema generador de modos de caminado.

Del modelo inicialmente propuesto, se mantiene la utilizacion de una red neuronal

feedforward a fin de transformar el vector de salida de los nodos del ACPO, en referencias

validas para los angulos de las articulaciones de las patas. En este modelo de CPG se hace

hincapie en la coordinacion entre las patas, por lo cual no se considera la inclusion de

parametros de modulacion a nivel de la entrada de la red feedforward. De esta manera se

elimina la incidencia negativa del sobreentrenamiento puesto que no se tienen transiciones

entre distintos perfiles de trayectorias para las patas. Dada las caracterısticas antes citadas,

se tiene un sistema interconectado y distribuido cuya arquitectura se puede observar en la

Figura 5.10

Page 101: Generador de modos de caminado en robots cuadrúpedos

91

Figura 5.10: Arquitectura de modelo de CPG propuesto

5.2.1 Referencia temporal con ACPO

Para la coordinacion entre las patas se utilizaron osciladores acoplados modelados

con ACPO, tal como se describe en la seccion 4.2. El ACPO aqui implementado consta

tambien de 4 nodos, uno por cada pata. Para el control de las referencias de fases se em-

plearon los valores mostrados en las tablas 4.6(a) y 4.6(b). Si bien en [19][39] se propuso

la obtencion de las fases mediante funciones que dependen de un solo parametro (pmodo)

para efectuar transiciones suaves entre modos de caminado, aquı se considera suficiente el

cambio inmediato de las fases de referencia a cada uno de los osciladores acoplados. No

se considera necesario que los cambios en dichas fases deban ser continuas. Esta decision

se basa en observar la naturaleza de las ecuaciones que describen a los osciladores, ya que

al ser las mismas un conjunto de ecuaciones diferenciales acopladas, y que la trayectoria

resultante de los osciladores es producto de la resolucion de dichas ecuaciones mediante

tecnicas de discretizacion, entonces si se utiliza un paso suficientemente fino en las itera-

ciones habra una transicion suave en la evolucion temporal de las trayectorias de salida

del sistema.

Para verificar la validez de esta observacion se procedio a la simulacion del ACPO,

Page 102: Generador de modos de caminado en robots cuadrúpedos

92

variando los valores de fases de referencia. Los parametros de simulacion empleados fueron

los siguientes: ω = 2π,ro = 1, g = 250 y λ = 2, y para la resolucion de las ecuaciones

diferenciales se utilizo Euler con un paso de 0,001. En la Figura 5.11 se muestran las senales

de entrada correspondientes a las relaciones de fases. Notese la naturaleza discontinua de

las mismas.

Figura 5.11: Relaciones de fase vs tiempo.

Aplicando como entradas de fase las senales mostradas en la Figura5.11, se obtuvo

un conjunto de salidas que soportan la hipotesis del uso de referencias de fase discontinuas.

Tales salidas son mostradas en la Figura 5.12

Se observa que en los instantes de tiempo donde ocurren los cambio de fases (t =

1000, 2000, 3000 y 4000), los vectores de salida de cada uno de los nodos de los osciladores

comienzan a ajustarse a las nuevas relaciones de fase; dichas transiciones son suaves como

era de esperarse. Tal continuidad en las senales de referencia temporal del sistema de

locomocion es de especial importancia puesto que se asegura un movimiento continuo

para cada una de las patas, y por ende del robot completo. En la Figura 5.12 se muestra

una vista en el plano de los mismos vectores de salida graficados en la Fig. 5.13.

Page 103: Generador de modos de caminado en robots cuadrúpedos

93

Figura 5.12: Vectores de salida vs tiempo.

Se puede observar que los salidas del ACPO para cada pata se mantienen entorno

a un atractor cıclico de radio proximo al valor de referencia (ro = 1). Sin embargo se

aprecia una diferencia en la amplitud de dichos vectores; en el caso especıfico de la pata

1 el modulo del vector va desde un mınimo de 0,938 hasta un maximo de 1,251, para un

error de 6,19 % y 25,1 % respectivamente. En la Figura 5.14 se observa la evolucion del

vector de estados | q1 |.

Las diferencias en el radio de los vectores puede incidir negativamente en el proceso

de generacion de las trayectorias finales, ya que el entrenamiento de las redes neuronales

se efectua con vectores referencias con modulo constante e igual a 1. Una posible solucion

a este problema es la normalizacion del radio del vector de salida de los ACPO, teniendo

especial cuidado durante las transiciones de modo de caminado, ası como en los puntos ini-

ciales de las trayectorias cuando el sistema comienza a estabilizarse en un comportamiento

oscilatorio.

Page 104: Generador de modos de caminado en robots cuadrúpedos

94

(a) Pata 1 (b) Pata 2

(c) Pata 3 (d) Pata 4

Figura 5.13: Trayectorias en el plano del vector q para cada pata ante cambios de fases.

Page 105: Generador de modos de caminado en robots cuadrúpedos

95

Figura 5.14: Modulo de q1 vs tiempo.

Incorporacion de factor de apoyo β

En la seccion 2.3 durante la descripcion del modelo geometrico del sistema de

locomocion, se introdujo el concepto de factor de apoyo como el cociente entre el intervalo

de tiempo durante el cual la pata se encuentra apoyada y el perıodo de un paso de caminado

para una pata. Dicho parametro permite controlar directamente el tiempo total de soporte

para todas las patas, lo cual incide directamente en el equilibrio de la plataforma. En

el presente modelo se procedio a incorporar este parametro a nivel del subsistema de

generacion de referencias temporales.

Para la implementacion del factor de apoyo se utilizo una curva de compansion la

cual era aplicada a la fase de cada uno de los vectores de estado de las patas; para ello

se transformo temporalmente cada vector a la forma radio-fase ((r, θ)), de manera de no

modificar el modulo de los vectores. La curva de compansion c(x, β) se construye a partir

de dos segmentos de rectas cuyas pendientes y punto de interseccion vienen dados por las

Page 106: Generador de modos de caminado en robots cuadrúpedos

96

Ecuaciones 5.2.1.

c(x, β) =

{x2β

x ≤ βx

2(1−β)+ 1

2

(1− β

1−β

)x > β

La curva resultante se muestra en la Figura 5.15.

Figura 5.15: Grafica de curva de compansion c(x, β).

Despues de aplicar la curva de compansion a la fase de los vectores de estado, cada

uno de los mismos fue transformado de vuelta a su forma original X − Y , con el valor de

radio original y la nueva fase θc = c(θ, β). El proceso completo se puede describir de la

siguiente manera:

qi = [qx, qy] →⎧⎨⎩

ri =| qi |

θi = ∠qi

→ θci = c(θi, β) →

⎧⎨⎩

qcx = ri · cos(θc

i )

qcy = ri · sen(θc

i )

donde qci = [qc

x, qcy] es el vector de estado resultante para la pata i tras la compansion.

Page 107: Generador de modos de caminado en robots cuadrúpedos

97

5.2.2 Transformacion espacial con red neuronal feedforward

El subsistema de transformacion espacial fue implementado mediante una red neu-

ral de tipo feedforward. Como entrada de la red se tiene el vector qi ∈ �2, correspondiente

a los vectores de estado de cada pata generados mediante ACPO. La salida de la red

neuronal corresponde a un vector yn ∈ �3, cuyas componentes representan las referencias

de angulo de cada una de las tres articulaciones en una sola pata. A diferencia de la red

neuronal empleada en el primer modelo propuesto, no existe ninguna entrada adicional

para la modulacion de trayectorias. La red neuronal posee una sola capa escondida con-

formada por K neuronas sigmoidales, como las descritas en la Ec. 5.4. Ya que los valores

para los angulos de los motores estan mecanicamente acotados en el rango [−90, +90], se

decidio utilizar N = 3 neuronas sigmoidales para la capa de salida en lugar de neuronas

lineales, una por cada motor. Como las salidas de las neuronas sigmoidales estan acotadas

en el rango (0, 1), es necesarios ajustarlas mediante una recta de la forma y = mx + b.

El numero de neuronas utilizadas a nivel de la capa escondida vario entre 5 y 40 durante

las pruebas efectuadas. La estructura correspondiente a la red neuronal feedforward se

muestra en la Figura 5.16.

Entrenamiento de la red neuronal

Al igual que en la seccion 5.1.3, aquı se utilizo backpropagation como tecnica de

entrenamiento de la red neuronal. Se empleo un solo perfil de referencia espacial para el

movimiento de una pata, tomando como base una figura rectangular como la ilustrada en

la Figura5.3(b). Los puntos pertenecientes a la trayectoria de referencia empleados en el

entrenamiento, fueron seleccionados siguiendo una proporcion de dos puntos pertenecientes

a la fase por cada punto de la fase de transeferencia. La razon de esta distribucion es tratar

de que la solucion a sintetizar genere trayectorias suaves durante la fase de soporte, que

es donde los movimientos de la pata afectan de mayor manera al caminado del robot. Es

importante recordar que en este modelo de CPG se utiliza la red neuronal solo como funcion

Page 108: Generador de modos de caminado en robots cuadrúpedos

98

Figura 5.16: Estructura de la red neuronal.

de transformacion de espacios, y no como mecanismo para modulacion entre distintas

trayectorias.

Las condiciones del proceso de entrenamiento son los siguientes:

• Metodo de entrenamiento: Ajuste por gradiente, sin momentum. Ajuste de una neu-

rona por iteracion.

• Funcion de error: Error Cuadratico Medio (ECM) para aproximacion de funciones.

• Tasa de aprendizaje: 0.01

• Numero de iteraciones: desde 500 mil hasta 2.5 millones.

• Condicion de parada: ECM menor al 1 % para 100 puntos equiespaciados del vector

de salida, o se alcance el numero de iteraciones maxima.

Page 109: Generador de modos de caminado en robots cuadrúpedos

99

El esquema de entrenamiento se muestra en la Figura 5.17.

Figura 5.17: Esquema de entrenamiento de red neuronal.

La implementacion aquı empleada incluye un factor de desplazamiento (FD), que

controla el balanceo de la plataforma robotica en el plano X − Y , que es paralelo a la

superficie de caminado. Este factor es utilizado para incrementar el margen de estabilidad

estatica del modo de caminado, al aproximar el centro geometrico del robot (cg) al centro

teorico del polıgono de apoyo (cp). Un valor de FD = 0 implica que no existe desplaza-

miento alguno de cg en direccion de cp; mientras que para FD = 1 implica que cg coincida

con cp. Ya que el desplazamiento de la plataforma robotica es en direccion del eje Y , las

correcciones de desplazamiento obtenidas mediante el uso de FD se efectuaron de manera

ponderada separada para cada eje, siendo mayor el efecto sobre el eje perpendicular al

Page 110: Generador de modos de caminado en robots cuadrúpedos

100

desplazamiento (X). La razon de ello se debe a que durante la locomocion en linea recta

(eje Y ) el centro del polıgono de apoyo varıa mas en el eje Y y por ende se requiere mayor

correcion sobre el mismo. Esto fue mostrado en la seccion 2.5 durante la descripcion de

las condiciones de equilibrio estatico en locomocion cuadrupeda.

5.2.3 Descripcion de experimento con plataforma cuadrupeda

En este apartado se describe las pruebas experimentales efectuadas para evaluar

el desempeno del modelo aquı propuesto como generador de modos de caminado. Para

ello se procedio a la implementacion de los algoritmos correspondientes a la generacion

de referencias temporales con ACPO, y la transformacion de trayectorias mediante la

red neuronal. Dicha implementacion incluıa la transmision de los valores de angulos de

referencia obtenidos hacia el sistema de control de posicion de los motores de cada una de

las articulaciones. La aplicacion para el modelo basado en CPG se efectuo en C++; y para

la evaluacion de un generador de caminado basado en el modelo geometrico se utilizo la

herramienta Labview 7.1 TM.

La plataforma robotica controlada era un cuadrupedo fabricado por Lynxmotion,

previamente utilizado como modelo mecanico en la seccion 5.1.3. Las caracterısticas prin-

cipales del robot cuadrupedo son las siguientes:

• Dimensiones de placa base: 240 x 190 mm.

• Disposicion de patas en postura reptil.

• 4 patas de 3 grados de libertad cada una(GDL).

• Articulaciones actuadas directamente por servomotores Futaba HS-475.

Los servomotores del robot fueron controlados por enlace serial utilizando la tarjeta

Page 111: Generador de modos de caminado en robots cuadrúpedos

101

controladora SSC-32, tambien de Lynxmotion. A fin de complementar las observaciones

durante la evaluacion del desempeno del generador de modos de caminado, se procedio a

instrumentar el robot cuadrupedo. Para esto se incluyo un total de 5 sensores de aceleracion

distribuidos sobre la placa principal, y 4 sensores de fuerza ubicados en el extermo de cada

pata. La distribucion empleada fue la siguiente:

• 4 acelerometros FreescaleTMMMA1260D, eje Z. Rango ±1,5g.

• 1 acelerometro FreescaleTMMMA6161, ejes X-Y. Rango ±1,5g.

• 4 sensores de fuerza Flexiforce TM.

• Articulaciones actuadas directamente por servomotores Futaba HS-475.

Los acelerometros de eje Z fueron colocados en las bases de cada pata, sobre el

punto que corresponde al origen del sistema de coordenadas local de cada pata. El ace-

lerometro de dos ejes fue colocado en el centro geometrico del robot. La distribucion de los

sensores se muestra en la Figura 5.18. Para la adquisicion de los datos desde los sensores se

desarrollo un sistema de adquisicion de datos basado en un microcontrolador HC908GP32

fabricado por Freescale. Las senales analogicas de los sensores fueron muestreadas a una

tasa de 100 Hz y digitalizadas con una resolucion de 8 bits. La frecuencia de muestreo es

mucho mayor que las frecuencias naturales de trabajo para la plataforma robotica, debido

a que los modos de caminado empleados eran de muy baja frecuencia, con un ciclo de

locomocion completa aproximadamente cada 6 segundos. Los datos provenientes de los

sensores eran enviados inmediatamente a la aplicacion que contenıa la implementacion del

modelo de locomocion, a fin de poder asociar las variables medidas con las referencias

generadas por el modelo. En la misma aplicacion se filtraban los datos provenientes de los

sensores utilizando un filtro digital pasabajo tipo FIR con ventana Blackman de orden 10,

cuya frecuencia de corte estaba en 20 Hz; esto con la finalidad de reducir la amplitud del

ruido de alta frecuencia producto de vibraciones mecanicas y ruido electronico, derivado

principalmente de los servomotores cuya frecuencia de conmutacion es de 50 Hz.

Page 112: Generador de modos de caminado en robots cuadrúpedos

102

Figura 5.18: Ubicacion de sensores sobre la plataforma robotica.

5.2.4 Resultados experimentales y analisis

La primera prueba efectuada fue la generacion de perfiles de trayectorias mediante

redes neuronales. Se entreno un total de 5 redes, con diferentes numeros de neuronas

en la capa escondida, ası como diferentes numeros de iteraciones de entrenamiento. La

trayectoria de entrenamiento se mantuvo constante para todas. El perfil de movimiento

de la pata empleado como ejemplo en el entrenamiento se muestra en la Figura 5.19.

En la misma se observa una vista en el plano Y-Z, y los valores de los parametros son:

L = 50mm, H = 120mm y DH = 15mm.

Las redes neuronales fueron entrenadas con las configuraciones de numero de neu-

ronas en capa escondida (K) e iteraciones de entrenamiento mostradas en la Tabla 5.2.4.

Cada una de las redes neuronales fue utilizada para la seccion de transformacion de los

vectores de estado provenientes del ACPO. El modo generador de referencias de fases con

Page 113: Generador de modos de caminado en robots cuadrúpedos

103

Figura 5.19: Trayectoria de ejemplo para entrenamiento.

el ACPO se mantuvo con las fases correspondientes al modo de locomocion caminado (ver

Tabla 4.6(a)).

K No de iteracionesNN1 6 2 millonesNN2 8 2 millonesNN3 18 2 millonesNN4 25 2 millonesNN5 25 8 millones

Tabla 5.1: Redes neuronales entrenadas

Las salidas obtenidas para cada una de las redes neuronales al aplicarles los vec-

tores de ACPO a la entrada, fueron convertidas del espacio de angulos a trayectorias de

referencia en el espacio cartesiano, mediante la cinematica directa de la pata. De tales tra-

yectorias solo son de interes las componentes de movimiento que generan un movimiento

de locomocion en el robot. Para el sistema de referencia mostrado en la Figura 5.18 se

puede observar que el movimiento principal de locomocion para las patas se efectua sobre

el plano Y − Z. Las graficas de las trayectorias resultantes para cada una de las redes

neuronales se muestran en la Figura 5.20.

En la Figura 5.20 se puede observar que las trayectorias obtenidas mediante las redes

Page 114: Generador de modos de caminado en robots cuadrúpedos

104

(a) Red NN1 (b) Red NN2

(c) Red NN3 (d) Red NN4

(e) Red NN5

Figura 5.20: Vista en plano Y-Z de las trayectorias de salida de las redes neuronales.

Page 115: Generador de modos de caminado en robots cuadrúpedos

105

neuronales son todas de tipo cerrada, con presencia de rizos u oscilaciones de frecuencia

mayor al ciclo principal de locomocion. Tales oscilaciones son consecuencia del uso de redes

neuronales como aproximadores de funciones; ya que las mismas tratan de converger a los

puntos empleados como ejemplos de entrenamiento, sin embargo en aquellos puntos donde

no se les provee informacion alguna de la salida deseada las redes pueden no converger.

La solucion inmediata a esta situacion es el aumento de puntos de ejemplo extraidos de la

trayectoria de referencia.

Las amplitudes de las oscilaciones varıan para las distintas redes neuronales, llegan-

do al caso de la red NN3 donde las mismas son de amplitud comparables con el ciclo de

locomocion. Este ejemplo ilustra un problema que es consecuencia de la tecnica empleada

en el entrenamiento de la red neuronal. En el entrenamiento por backpropagation existe

el riesgo de que la solucion que se alcance durante un punto del proceso de entrenamiento

sea un mınimo local en la superficie de error, ya que la minimizacion del mismo se hace

por gradiente. Una forma de reducir este problema es mediante la adicion de momento

en el algoritmo de correcion de los pesos a partir de los gradientes, tal como se hizo du-

rante el entrenamiento de la red neuronal mostrada en la seccion anterior, utilizando la

herramienta NNTOOL de Matlab.

Se puede observar que para las 4 redes restantes la trayectoria no presenta oscilacion

alguna en el segmento de trayectoria que corresponde a la fase de apoyo, consecuencia de

la seleccion de los puntos de la trayectoria original empleados en el entrenamiento de las

redes neuronales. Este comportamiento es deseable ya que se traduce en un movimiento

mas suave durante el caminado del robot. En las trayectorias resultantes tambien se puede

observar que las oscilaciones previamente mencionadas no desaparecen totalmente sino

que se concentran en el segmento de trayectoria correspondiente a la fase de transferencia,

donde la densidad de puntos empleados como ejemplos de entrenamiento era menor.

Tambien es posible apreciar la incidencia del numero de neuronas en el numero de

oscilaciones. Se puede observar que conforme aumenta el numero de neuronas (K), hay

Page 116: Generador de modos de caminado en robots cuadrúpedos

106

mayor cantidad de oscilaciones sobre la trayectoria de caminado. Otro fenomeno observable

en las graficas de trayectoria es el impacto del numero de iteraciones de entrenamiento

sobre la salida obtenida en las redes neuronales. Para las redes NN1, NN2 y NN4, las cuales

fueron entrenadas 2 millones de iteraciones la amplitud de las oscilaciones es mayor que

en el caso de la red NN5, que fue la unica entrenada un total de 8 millones de iteraciones.

Esto concuerda con los resultados obtenidos para la red neuronal empleada en la seccion

5.1.4, donde el aumento del numero de iteraciones de entrenamiento se traducıan en un

menor error de aproximacion a la forma de onda de referencia. Es importante recordar

que esta mejora en la aproximacion estaba tambien asociada a la perdida de capacidad de

inferir de la red neuronal, debido al sobreentrenamiento.

Posteriormente, durante el experimento de locomocion de la plataforma robotica

utilizando cada una de las redes neuronales entrenadas se midieron los valores de acele-

racion que se muestran en las Figuras 5.2.4,5.2.4,5.2.4 y 5.2.4 . Cabe destacar que conse-

cuencia de las oscilaciones presentes en la trayectoria generada con la red neuronal NN3,

la secuencia de caminado obtenida fue inoperante ya con la misma el robot era totalmente

inestable. Las graficas mostradas corresponden a las salidas para las redes NN1, NN2, NN4

y NN5.

Page 117: Generador de modos de caminado en robots cuadrúpedos

107

(a) Acelerometros en ejes X-Y

(b) Acelerometros en eje Z

Figura 5.21: La secuencia de locomocion obtenida con la red neuronal NN1 era marginal-mente estable, es decir que cuando se aumentaba el valor de frecuencia de oscilacion delACPO (ω) lo que incrementaba la velocidad de paso, el robot era inestable. Los puntos deinestabilidad corresponden a picos en los valores de aceleraciones identificados como A.

Page 118: Generador de modos de caminado en robots cuadrúpedos

108

(a) Acelerometros en ejes X-Y

(b) Acelerometros en eje Z

Figura 5.22: Para la secuencia obtenida con esta red neuronal, el comportamiento obser-vado durante la locomocion fue muy semejante al correspondiente a la red NN1. Tambienera marginalmente estable, y se pudo observar que cualitativamente las vibraciones en laplataforma robotica eran mas perceptibles.

Page 119: Generador de modos de caminado en robots cuadrúpedos

109

(a) Acelerometros en ejes X-Y

(b) Acelerometros en eje Z

Figura 5.23: Al igual que para las redes NN1 y NN2, la secuencia de caminado obtenida noera absolutamente estable, por el contrario, el caminado del robot era mucho mas inestableque en para las dos redes anteriores. Esto se puede apreciar en las graficas de aceleracion enel plano X-Y, en las cuales se observan mayor cantidad de picos de aceleraciones asociadoscon movimientos mas bruscos de la plataforma.

Page 120: Generador de modos de caminado en robots cuadrúpedos

110

(a) Acelerometros en ejes X-Y

(b) Acelerometros en eje Z

Figura 5.24: Para esta ultima red neuronal se obtuvo un caminado apenas mejor que paralas redes NN1, NN2, y NN5. La mejora mas notable es en las aceleraciones en el eje Z(perpendicular al piso), ya que las amplitudes de las registradas para esta red son menores.La causa de ello es que las oscilaciones del perfil de trayectoria en el plano (Y-Z) son demenor amplitud, como se indico oportunamente al presentar las graficas 5.20

Page 121: Generador de modos de caminado en robots cuadrúpedos

111

Principales aportes, conclusiones y lineas deinvestigacion futuras

En este breve capıtulo se presentan los principales aportes en el area de mode-

lado del sistema de locomocion utilizando principios neurofisiologicos, fruto del trabajo

de investigacion efectuado a lo largo del presente trabajo de grado; tambien se indican

las conclusiones obtenidas al termino del mismo. Por ultimo, se mencionan un conjunto

de trabajos de investigacion que pertenecen o estan directamente asociados al campo de

locomocion en robots con patas, los cuales surgieron durante el desarrollo de esta tesis y

sirven para complementar y ampliar el trabajo desarrollado durante la misma.

6.1 Principales aportes y conclusiones

En el presente trabajo de investigacion se han estudiado diferentes aspectos del mo-

delado del sistema de locomocion en robots cuadrupedos, haciendo enfasis en las tecnicas

basadas en principios neurofisiologicos. Sobre las mismas se aplicaron distintos metodos

de analisis desarrollados a lo largo de la presente tesis, conformes a los requerimientos que

fueron surgiendo durante las investigaciones y pruebas efectuadas. A continuacion se pre-

sentan los principales aportes efectuados en el area de locomocion en robots cuadrupedos

utilizando modelos neurofisiologicos.

• Se realizo una revision del estado del arte en modelos neurofisiologicos del siste-

ma locomotor en distintos robots con patas, tales como cuadrupedos y hexapodos,

Page 122: Generador de modos de caminado en robots cuadrúpedos

112

ası como tambien en robots con otras estructuras mecanicas de locomocion como ser-

pientes. En dicha revision se identificaron los componentes mas relevantes, ası como

las ventajas y desventajas de cada uno de los modelos citados.

• Se identificaron coincidencias en la problematica asociada al modelado del sistema

de locomocion, tanto al utilizar el modelo geometrico convencional como bajo el

enfoque neurofisiologico. En ambos casos el modelado se basa en dos sistemas: uno

de coordinacion temporal entre las patas y otro de control de trayectoria para cada

pata.

• Se evaluo un modelo de caminado basado en redes neuronales recurrentes (CTRNN),

sintetizadas mediante algoritmos geneticos (AGs). Se propuso una funcion de fitness

para los AGs la cual se baso en el analisis espacial de las formas de onda de salida.

• Para el analisis del comportamiento de las CTRNN utilizadas como generadores

central de patrones (CPG), se desarrollo una tecnica basada en la visualizacion sobre

un plano de la intensidad del campo atractor, el cual esta descrito por las ecuaciones

diferenciales que controlan la evolucion temporal de la red CTRNN.

• Se propuso una implementacion del sistema locomotor basado en el concepto de

redes neuronales dinamicas (DNN), lo cual representa una nueva aplicacion a este

tipo de redes originalmente introducidas como sistemas de generacion de trayectorias

dinamicas.

• El problema de modelado del sistema de caminado utilizando ACPO, donde perma-

necıa sin solucion la coordinacion del movimiento dentro de una pata, fue resuelto

mediante la utilizacion de una red neuronal tipo feedforward a la salida de los vec-

tores de estado de los osciladores acoplados.

• Se propuso y se evaluo la utilizacion de redes neuronales feedforward para dos fun-

ciones: la transicion entre distintos perfiles de trayectorias para las patas, y para la

transformacion de espacio de las referencias temporales en referencias espaciales.

Page 123: Generador de modos de caminado en robots cuadrúpedos

113

• Fue posible incorporar en un modelo basado en principios neurofisiologicos el parame-

tro denominado factor de apoyo (β) perteneciente al modelo geometrico convencional

de caminado, aquı representado mediante una curva de compansion de la fase del

vector de referencia temporal de cada pata.

• Se evaluo la utilizacion de simples senales oscilatorias como referencias temporales

del sistema de locomocion.

• Se observo una dependencia en la convergencia a un comportamiento oscilatorio del

sistema temporal implementado con ACPO, en funcion del parametro g que controla

la magnitud de la componente tangencial del campo atractor oscilatorio.

• Mediante la incorporacion de las redes neuronales feedforward, fue posible obtener

un modelo cuya estructura principal es independiente a la cinematica especıfica de

las patas del robot.

• Se logro desarrollar un modelo del sistema de caminado basado en el concepto de

generador central de patrones, utilizando para ello osciladores acoplados y redes

neuronales. Dicho modelo permite el control de manera explıcita de la velocidad de

caminado, modo de locomocion en funcion de las relaciones de fase entre las patas,

control del factor de apoyo de cada pata, ası como el control de la trayectoria espacial

descrita por la punta de cada una de las patas.

Cabe destacar que el trabajo asociado a la primera propuesta de modelo para el

sistema de locomocion (Seccion 5.1), basada en referencias temporales simples y redes

neuronales feedforward dio pie a una publicacion [45] en los Lecture Notes in Computer

Science publicado por Springer Berlin/Heidelberg; en la misma el principal aporte reside

en el uso de redes neuronales feedforward para efectuar transiciones suaves entre perfiles

de trayectorias espaciales para las patas de un robot cuadrupedo de 3 GDL, ası como la

comparacion entre diferentes senales de referencia temporal.

Page 124: Generador de modos de caminado en robots cuadrúpedos

114

Por otra parte, se tiene que la segunda propuesta de modelo de locomocion aquı desa-

rrollada (Seccion 5.2) fue presentada en el marco de la Conferencia Internacional de Robots

Caminantes y Escaladores (CLAWAR 2006), y publicada en las actas de dicha conferencia

[46]; siendo el principal aporte de la misma la resolucion de la coordinacion entre las patas

mediante ACPO a la vez que se coordina el movimiento de cada pata mediante redes

neuronales feedforward, y el control directo del factor de apoyo de cada pata mediante una

curva de compansion.

Producto del proceso de investigacion efectuado en la revision del estado del arte

en modelado neurofisiologico del sistema locomotor en animales y robots, ası como de las

pruebas y observaciones efectuadas durante el desarrollo del presente trabajo se obtuvo

un conjunto de resultados a partir de los cuales se desprende una serie de conclusiones.

Estas pueden ser resumidas de la siguiente manera:

• Es posible modelar el sistema de locomocion en robots cuadrupedos mediante el uso

de principios neurofisiologicos. Mediante la debida modificacion del sistema genera-

dor de referencias temporales, debe ser posible extender este enfoque a otros tipos

de maquinas caminantes.

• La separacion del problema de locomocion en dos problemas, como son la coordi-

nacion de las relaciones de fase entre las patas y el movimiento controlado de las

articulaciones de cada pata, simplifica notablemente el diseno e implementacion del

sistema completo.

• Las redes neuronales recurrentes (CTRNN) pueden modelar al sistema locomotor

como un generador central de patrones, pero las tecnicas existentes tanto para la

sıntesis como analisis de los parametros de las mismas dificultan la implementacion

directa de un sistema de control de caminado.

• El uso de CTRNN para locomocion de robots con patas se complica conforme au-

menta el numero de patas en la plataforma robotica, o el numero de articulaciones

Page 125: Generador de modos de caminado en robots cuadrúpedos

115

actuadas en cada pata.

• La sıntesis de los parametros de un CPG descrito mediante CTRNN, utilizando para

ello AGs con una funcion de fitness basada en el analisis de las formas de onda de

salida de la red no aseguran la convergencia a una solucion aceptable como secuencia

de caminado. En general uso de AGs no asegura convergencia absoluta al minimo

local de un problema.

• El uso de AGs para la sıntesis de una CTRNN oscilatoria a utilizar como sistema

de referencia temporal resulta poco practico ya que no provee un metodo analıtico

para el control directo del comportamiento temporal del sistema de caminado.

• El uso de una red neurona tipo feedforward en el modelo aquı propuesto para lo-

comocion, exhibe el problema de sobreentrenamiento asociado con el proceso de

entrenamiento y la estructura de la capa escondida de la red (numero de neuronas

escondidas). Consecuencia de este fenomeno, a nivel de la salida del generador de

referencias se observan oscilaciones que pueden llegar a reducir la estabilidad del

robot durante el caminado.

• La implementacion del factor de apoyo (β) como una compansion de la fase de la

referencia temporal permite controlar de manera directa dicho parametro, control

del cual no se dispone en los modelos neurofisiologicos propuestos hasta ahora por

otros autores.

• En el modelo de caminado propuesto basado en ACPO, las funciones de transicion

suave entre las relaciones de fase de los distintos modos de caminado son redundantes,

debido a que el sistema oscilatorio esta descrito por ecuaciones diferenciales acopladas

con las cuales los vectores de estado del sistema evolucionan de manera continua

hasta converger a un comportamiento oscilatorio

Page 126: Generador de modos de caminado en robots cuadrúpedos

116

6.2 Trabajos futuros

Dentro del area de modelado del sistema locomotor en robots caminantes utilizando

principios neurofisiologicos, existen varios aspectos abordados durante el presente trabajo

que dan pie a futuros trabajos de investigacion. Tambien existen otros temas que se sugiere

sean estudiados con mayor detalle a fin de complementar el trabajo aquı efectuado. A

continuacion se mencionan algunos de ellos:

• En lo que respecta al modelado del sistema locomotor utilizando redes recurrentes,

es necesario efectuar una revision de diferentes tecnicas de entrenamiento, distintas

a los algoritmos geneticos. Las tecnicas de entrenamiento a evaluar deben proveer de

una metodologıa que permita entrenar las redes recurrentes utilizando como ejemplos

las trayectorias espaciales que se deseen como referencias de angulos para las arti-

culaciones de las patas. Tambien se debe hacer enfasis en la posibilidad de controlar

las relaciones de fase entre las redes que manejan a cada una de las patas.

• Se debe estudiar la posibilidad de implementar el sistema de generacion de referencias

espaciales mediante ecuaciones diferenciales acopladas, tales como las empleadas

en ACPO. Dicha implementacion debe orientarse a la generacion de un espacio de

atractores, donde los vectores de estado converjan a la trayectoria espacial deseada

para controlar cada pata. Es de especial relevancia poder controlar la trayectoria

final del sistema en funcion de los parametros utilizados en el modelo geometrico de

locomocion.

• En lo que respecta a la generacion de modos de caminado para ambientes no es-

tructurados, debe estudiarse el diseno de un sistema de control que se base en la

informacion de realimentacion proveniente de sensores de inclinacion y aceleracion,

para el control de la estabilidad de la plataforma robotica, ası como el uso de sen-

sores de fuerza en los extremos de las patas y las articulaciones para el control de

distribucion de fuerzas en cada uno de los actuadores. Se puede contemplar el uso

Page 127: Generador de modos de caminado en robots cuadrúpedos

117

de otros sensores, manteniendose el concepto de control directo sobre el modelo sin

necesidad de incluir etapas posteriores donde se modifiquen las referencias de angulo

y velocidad de los actuadores.

• Para el modelo propuesto de generador de modos de caminado, el cual utiliza redes

neuronales feedforward para la transformacion y transicion entre perfiles de trayec-

torias, se recomienda evaluar el impacto de otras tecnicas de entrenamiento a fin de

evitar la ocurrencia de sobreentrenamiento, el cual incide directamente sobre la es-

tabilidad de la plataforma. Dicha evaluacion debe contemplar el estudio del impacto

del numero de elementos en la red neuronal en aspectos como estabilidad, vibraciones

y factor de apoyo del caminado resultante. Se debe estudiar la implementacion de

tales redes utilizando otras funciones de transferencia para las neuronas en la capa

escondida.

• Es necesario estudiar el impacto de las variaciones del modulo de los vectores de

estado de los ACPO, durante las transiciones de modos de caminado. Se puede

evaluar la normalizacion de dichos vectores o incluir una etapa de control de amplitud

paralela a la etapa de compansion de la fase de los vectores. Esto con el fin de reducir

el tiempo de permanencia de las referencias temporales en puntos en el espacio que

no pertenecen a las trayectorias utilizadas como ejemplos de entrenamiento de la red

neuronal feedforward.

• Como variante del modelo de generador propuesto, basado en ACPO, se puede es-

tudiar el desempeno del mismo utilizando la informacion de modulo y angulo prove-

niente de los vectores de estado de los osciladores, en lugar de las componentes X y

Y de los mismos. Dicha transformacion facilita la implementacion de la compansion

para el factor de apoyo, y de la propuesta previamente mencionada con respecto a

la normalizacion de las amplitudes de los vectores.

• Para la generacion de modos de caminado estaticamente estables, debe efectuarse

una modificacion en el modelo mediante la inclusion del factor de desplazamiento

en el plano paralelo a la superficie de locomocion, a fin de aumentar el margen

Page 128: Generador de modos de caminado en robots cuadrúpedos

118

de estabilidad estatica de la plataforma. Dicho factor de desplazamiento puede ser

incluido durante el proceso de sıntesis de la red neuronal, o a nivel de las salidas de

referencia para la posicion del elemento final de las patas.

Page 129: Generador de modos de caminado en robots cuadrúpedos

119

Referencias Bibliograficas

[1] D. J. Todd. Walking Machines. An Introduction To Legged Robotics. Kogan PageLtd., Pentonville Road, London N1 9JN, 1st edition, 1985.

[2] Hector Montes Franceschi. Analisis, Diseno y Evaluacion de Estrategias de Controlde Fuerza en Robots Caminantes. PhD thesis, Universidad Complutense de Madrid,2005.

[3] Werner M. Kistler Wulfram Gerstner. Spiking Neuron Models. Single Neurons, Po-pulations, Plasticity. Cambridge University Press, August 2002.

[4] Aude Billard and Auke Jan Ijspeert. Biologically inspired neural controllers for motorcontrol in a quadruped robot. In IJCNN’2000. International Joint Conference onNeural Network, July 2000.

[5] A. Billard and A.J. Ijspeert. Biologically inspired neural controllers for motor controlin a quadruped robot. In Proceedings of the IEEE-INNS-ENNS International JointConference on Neural Networks – IJCNN2000, volume VI, pages 637–641. IEEE Com-puter Society, 2000.

[6] Jorg Conradt and Paulina Varshavskaya. Distributed central pattern generator con-trol. Technical report, ETH / University Zurich, 2003.

[7] J. Schmitz. Biologically inspired controller for hexapod walking: Simple solutions byexploiting physical properties. Biol. Bulletin, pages 195–200, April 2001.

[8] Lucia S. Simo M. Anthony Lewis. Elegant stepping: A model of visually triggeredgait adaptation. Connection Science, 11, Decembre 1999.

[9] M. Anthony Lewis. Perception driven robot locomotion. Journal Robot Society ofJapan, pages 51–56, April 2002.

[10] H. Kimura Y. Fukuoka and A. Cohen. Adaptive dynamic walking of a quadrupedrobot on irregular terrain based on biological concepts. International Journal ofRobotics Research, 22(3-4):187–202, March-April 2003.

[11] Hiroshi Kimura, Yasuhiro Fukuoka, Y. Hada, and K. Takase. Three-dimensionaladaptive dynamic walking of a quadruped - rolling motion feedback to cpgs contro-lling pitching motion. In Proceedings of the 2002 IEEE International Conference onRobotics and Automation, ICRA 2002., pages 2228–2233, 2002.

Page 130: Generador de modos de caminado en robots cuadrúpedos

120

[12] J. E Bares and W. L. Whittaker. Configuration of autonomous walkers for extremeterrain. The International Journal of Robotics Reserach, 12(6):621–649, 1993.

[13] Elena Garcia and Pablo Gonzalez de Santos. Adaptive periodic straight for-ward/backward gait of a quadruped. In 13th International Symposium on Measu-rement and Control in Robotics, Madrid, Spain, December 2003.

[14] S. Talebi, Ioannis Poulakakis, Evangelos Papadopoulos, and Martin Buehler. Qua-druped robot running with a bounding gait. In ISER, pages 281–289, 2000.

[15] John C. Gallagher Hillel J. Chiel, Randall D. Beer. Evolution and analysis of modelcpgs for walking: I. dynamical modules. Journal of Computational Neuroscience,pages 99–118, 1999.

[16] John C. Gallagher Hillel J. Chiel, Randall D. Beer. Evolution and analysis of modelcpgs forwalking: Ii. general principles and individual variability. Journal of Compu-tational Neuroscience, pages 119–147, 1999.

[17] S. Amari. Characteristic of the random nets of analog neuron-like elements. IEEETransaction on System, Man and Cybernetics, SMC-2:643–657, 1972.

[18] Buchli J. and Auke Jan Ijspeert. Distributed central pattern generator model forrobotics application based on phase sensitivity analysis. In Proceedings of 1st Inter-national Workshop Bio-ADIT, 2004.

[19] J. Buchli and A.J. Ijspeert. Distributed central pattern generator model for robo-tics application based on phase sensitivity analysis. In A.J. Ijspeert, M. Murata,and N. Wakamiya, editors, Biologically Inspired Approaches to Advanced InformationTechnology: First International Workshop, BioADIT 2004, volume 3141 of LectureNotes in Computer Science, pages 333–349. Springer Verlag Berlin Heidelberg, 2004.

[20] R. M. Ghigliazza and P. Holmes. A minimal model of a central pattern generator andmotoneurons for insect locomotion. In Press, April 2004.

[21] R. M. Ghigliazza and P. Holmes. A minimal models of bursting neurons: The effects ofmultiple currents and timescales. SIAM J. on Applied Dynamical Systems, 3(4):636–670, 2004.

[22] D. Wettergreen, H Pangels, and J. Bares. Behavior-based gait execution for the danteii walking robot. IEEE International Conference on Intelligent Robots and Systems(IROS), August 1995.

[23] Juan Carlos Grieco Silva. Robots escaladores. Consideraciones acerca del diseno,estabilidad y estrategias de control. PhD thesis, Universidad de Vallavolid, Abril1997.

[24] A. L. Hodgkin and A. F. Huxley. A quantitative description of ion currents and itsapplications to conduction and excitation in nerve membranes. Journal of Physiology,117:500–544, 1952.

Page 131: Generador de modos de caminado en robots cuadrúpedos

121

[25] Eve Marder. Moving rythms. Nature, 410:755, Abril 2001.

[26] Marder E., Bucher D., Schulz D., and Taylor A. Invertebrate central pattern generatormoves along. Current Biology, 15:685–699 (R), September 2005.

[27] Arthur D. Kuo. The relative roles of feedforward and feedback in the control ofrhythmic movements. Motor Control, 6:129–145, 2002.

[28] A.J. Ijspeert and J. Kodjabachian. Evolution and development of a central patterngenerator for the swimming of a lamprey. Artificial Life, 5(3):247–269, 1999.

[29] Pablo Zegers and Malur K. Sundareshan. Trajectory generation and modulation usingdynamic neural networks. 2003.

[30] Pablo Zegers and M.K. Sundareshan. Periodic motions, mapping ordered sequen-ces, and training dynamic neural networks to generate continuos and discontinuostrajectories. In IJCNN 2000, Como, Italy, 2000.

[31] K. Funahashi and Y.Nakamura. Approximation of dynamical systems by continuoustime recurrent neural networks. Neural Networks, 6:801–806, 1993.

[32] Valentin A. Nepomnyashchikh and Konstantin A. Podgornyj. Emergence of adaptivesearching rules from the dynamics of a simple nonlinear system. Adaptive Behaviour,11(4):245–265, 2003.

[33] Artur M. Arsenio. Tuning of neural oscillators for the design of rhythmic motions. InICRA, pages 1888–1893, 2000.

[34] J. Ames. Design methods for pattern generation circuits. Master’s thesis, CaseWestern Reserve, 2003.

[35] Ezequiel Di Paolo. Evolving robust robots using homeostatic oscillators. Technicalreport, University of Sussex, 2002.

[36] Rainer W. Paine and Jun Tani. Evolved motor primitives and sequences in a hierar-chical recurrent neural network. In GECCO (1), pages 603–614, 2004.

[37] Alan Solidum M. Anthony Lewis, Andrew H. Fagg. Genetic programming approachto the construction of a neural network for control of a walking robot. IROS’92, pages2618–2623, 1992.

[38] M. Lewis, A. Fagg, and G. Bekey. Genetic algorithms for gait synthesis in a hexapodrobot, 1993.

[39] J. Buchli, L. Righetti, and A.J. Ijspeert. A dynamical systems approach to learning:a frequency-adaptive hopper robot. In Proceedings of the VIIIth European Conferenceon Artificial Life ECAL 2005, Lecture Notes in Artificial Intelligence, pages 210–220.Springer Verlag, 2005.

Page 132: Generador de modos de caminado en robots cuadrúpedos

122

[40] Susuki R. Nishii J. Oscillatory network model which learns a rhytmic pattern of anexternal signal. In IFAC Symposium, pages 501–502, 1994.

[41] F-S Tsung. Modeling Dynamical Systems with Recurrent Neural Networks. PhDthesis, Univ. of California, San Diego, 1994.

[42] Colin Molter. Chaos in small recurrent neural networks : theoretical and practicalstudies. Technical report, Univ. Libre de Bruxelles., 2004.

[43] K. I. Funahashi. On the approximate realization of continuous mapping by neuralnetworks. Neural Networks, 2:978–982, 1989.

[44] H. White K. Hornik, M. Stinchcombe. Multilayer feedforward networks are universalfunction approximators. Neural Networks, 2:359–366, 1989.

[45] Cappelletto J., P. Estevez, W. Medina, L. Fermın, J. M. Bogado, J. C. Grieco, andG. Fernandez. Gait synthesis and modulation for quadruped robot locomotion usinga simple feed-forward network. In Lecture Notes in Computer Science - 4029, pages731–739. Springer Berlin / Heidelberg, June 2006.

[46] Cappelletto J., Estevez P., J.C. Grieco, G. Fernandez-Lopez, and M. Armada. A cpg-based model for gait synthesis in legged robot locomotion. In Proceedings CLAWAR2006, pages 59–64, Brussels, Belgium, 2006.