You are on page 1of 136

BOLIVAR

UNIVERSIDAD SIMON
Decanato de Estudios de Postgrado
Maestra en Ingeniera Electronica

GENERADOR DE MODOS DE CAMINADO PARA ROBOT

CUADRUPEDO
BASADO EN PRINCIPIOS NEUROFISIOLOGICOS

Trabajo de Grado presentado a la Universidad Simon Bolvar por


Jose de la Cruz Cappelletto Fuentes

Como requisito parcial para optar al grado de


Magster en Ingeniera Electronica
Realizado con la tutora del Profesor
Juan Carlos Grieco Silva

Octubre, 2006

BOLIVAR
UNIVERSIDAD SIMON
Decanato de Estudios de Postgrado
Maestra en Ingeniera Electronica

GENERADOR DE MODOS DE CAMINADO PARA ROBOT

CUADRUPEDO
BASADO EN PRINCIPIOS NEUROFISIOLOGICOS

Este Trabajo de Grado ha sido aprobado en nombre de la Universidad


Simon Bolvar 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:

ii

BOLIVAR
UNIVERSIDAD SIMON
Decanato de Estudios de Postgrado
Maestra en Ingeniera Electronica

TRABAJO DE GRADO

GENERADOR DE MODOS DE CAMINADO PARA ROBOT

CUADRUPEDO
BASADO EN PRINCIPIOS NEUROFISIOLOGICOS

por

Jose de la Cruz Cappelletto Fuentes

Octubre 2006

iii
A Dios
A mi familia

iv

Agradecimientos
Antes que nada quiero expresar mi agradecimiento a Dios y a mis padres, siempre
presentes, quienes han sido para m la mejor gua que he podido recibir en mi vida. Gracias.
Quiero hacer un especial reconocimiento al Prof. Juan Carlos Grieco, mi tutor
de maestra, 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 y desarrollo haciendo posible la culminacion exitosa del presente trabajo.
Son innumerables las veces que hemos discutido sobre diversos temas desde la metodologa, modelado, y demas aspectos abarcados en esta tesis; aparte de otros temas que han
ayudado en mi formacion como persona y como profesional.
Mi mas profundo agradecimiento al Prof. Gerardo Fernandez, quien demostro un
enorme interes en muchas fases del desarrollo de la presente tesis; y mas importante a
un,
ha sido para mi un ejemplo de profesional ntegro y con etica. Por todo ello, as como por
su constante colaboracion durante estos u
ltimos a
nos, muchsimas gracias.
A mis compa
neros de trabajo e investigacion: Wilfredis Medina, Leonardo Fermn,
Pablo Estevez, Jose Guzman, Jose Miguel Bola
nos, Dimitar Ralev y Ariel Tapia, con
quienes compart innumerables momentos dentro y fuera del laboratorio tanto de trabajo
como de ocio, haciendo de estos a
nos de estudio mas llevaderos. Sin saberlo o no, con sus
comentarios influenciaron enormemente en este trabajo de investigacion. Por todo esto y
mucho mas, gracias.
Finalmente, quiero agradecer al Decanato de Postgrado de la Universidad Simon
Bolvar, quienes han apoyado este trabajo de investigacion al proveer los equipos necesarios, as como financiando su presentacion y publicacion en distintas conferencias y
congresos. Sin su ayuda no hubiese posible completar este trabajo.
Son muchas las personas que en una u otra forma, tambien influenciaron y dieron
forma al presente libro. El que no esten nombradas aqu no significa que no les agradezca
su colaboracion; gracias a todos ellos.

Resumen

A fin de controlar efectivamente un robot caminante bajo ambientes no estructurados, es indispensable disponer de un modelo del sistema de locomocion que sincronice los
movimientos de las patas del robot de manera simple y flexible. Inspirado en los modelos
neurofisiologicos de los sistemas biologicos, varios autores han propuesto soluciones basadas en el esquema de un generador central de patrones denominado CPG, implementado
con redes neuronales recurrentes y sistemas osciladores acoplados. Estos aprovechan las
ventajas de los modelos dinamicos, sin embargo el proceso de sntesis de los parametros
resulta ser complejo debido a la dificultad para analizar tales modelos. En este trabajo
se estudian y comparan distintas propuestas del sistema de locomocion basados en principios biologicos, identificando las ventajas y desventajas de cada uno de ellas. Con la
incorporacion del conocimiento del problema cinematico asociado a locomocion con patas, se propone un modelo espacio-temporal del sistema de caminado, el cual facilita la
sntesis y el control de caminado de un robot cuadr
upedo. Este modelo exhibe mejoras
con respecto a los otros estudiados debido a que resuelve el problema de coordinacion de
fase entre las patas, a la vez que permite el control de la ubicacion espacial de las mismas
independientemente de la cinematica asociada a la estructura de las patas del robot.

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


CPG.

vi

Indice general

1 Introducci
on
1.1 Antecedentes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Planteamiento del problema . . . . . . . . . . . . . . . . . . . . . . . . . .
1.3 Justificacion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Locomoci
on en robots con patas
2.1 Principios basicos . . . . . . . . . . . . . . . . .
2.2 Sistema generador de modos de caminado . . .
2.3 Modelo geometrico del sistema de locomocion .
2.4 Representacion de modos de caminado mediante
2.5 Equilibrio estatico en robots cuadr
upedos . . . .

. . . . . .
. . . . . .
. . . . . .
diagramas
. . . . . .

. . . . .
. . . . .
. . . . .
de fase
. . . . .

3 Modelos neurofisiol
ogicos del sistema locomotor en animales
3.1 Neurofisiologa de la locomocion en animales . . . . . . . . . . .
3.2 Modelo descriptivo de Hodgkin-Huxley . . . . . . . . . . . . . .
3.2.1 Dinamica del modelo Hodgkin-Huxley . . . . . . . . . .
3.3 CPG: Central Pattern Generator . . . . . . . . . . . . . . . . .
4 An
alisis comparativo de modelos de CPG
4.1 Modelo de Chiel-Beer usando CTRNN . . . . . . . . . . . . .
4.1.1 Arquitectura de CPG basado CTRNN . . . . . . . . .
4.1.2 Metodologa para sntesis de CPGs utilizando CTRNN
4.2 Modelo de Buchli utilizando ACPO . . . . . . . . . . . . . . .
4.2.1 Modelo de osciladores acoplados . . . . . . . . . . . . .
4.2.2 Pruebas del modelo basado en ACPO . . . . . . . . . .
4.3 Generacion de trayectorias dinamicas con DNN . . . . . . . .
4.3.1 Generacion: sntesis de red recurrente . . . . . . . . . .
4.3.2 Modulacion: Sntesis de red no recurrente . . . . . . . .
5 Generador de modos de caminado en robots cuadr
upedos
5.1 Propuesta de modelo del generador de modos de caminado . .
5.1.1 Arquitectura del modelo propuesto . . . . . . . . . . .
5.1.2 Referencias en tiempo . . . . . . . . . . . . . . . . . .
5.1.3 Transicion entre trayectorias mediante redes neuronales

.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.

1
2
6
7

.
.
.
.
.

8
8
11
13
15
17

.
.
.
.

20
20
22
26
27

.
.
.
.
.
.
.
.
.

31
32
34
35
53
53
61
69
72
74

.
.
.
.

76
78
79
80
83

vii

5.2

5.1.4 Resultados de la sntesis de trayectorias . . . . . . . . .


Propuesta de modelo generador de modos de caminado . . . .
5.2.1 Referencia temporal con ACPO . . . . . . . . . . . . .
5.2.2 Transformacion espacial con red neuronal feedforward .
5.2.3 Descripcion de experimento con plataforma cuadr
upeda
5.2.4 Resultados experimentales y analisis . . . . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

89
93
94
100
104
106

6 Principales aportes, conclusiones y lineas de investigaci


on futuras
115
6.1 Principales aportes y conclusiones . . . . . . . . . . . . . . . . . . . . . . . 115
6.2 Trabajos futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119
Referencias Bibliogr
aficas

122

viii

Indice de tablas

3.1
3.2

Parametros del Modelo Hodgkin-Huxley . . . . . . . . . . . . . . . . . . . 24


Funciones empricas para parametros m, n y h . . . . . . . . . . . . . . . . 25

4.1
4.2
4.3
4.4
4.5
4.6
4.7

Valores de parametros para CTRNN . . . . . . . . . . . . . . . . . . . . .


Salidas de CTRNN sintetizadas con AGs para salidas constantes . . . . . .
Salidas de CTRNN sintetizadas con AGs para salidas constantes varias . .
CTRNNs sintetizadas por AGs para valores de M AX dados . . . . . . . .
CTRNNs sintetizadas por AGs para valores de M IN dados . . . . . . . . .
(a) Desfases bases seg
un modo de caminado y (b) Fases normalizadas de
rotacion seg
un modo de caminado . . . . . . . . . . . . . . . . . . . . . . .
Matrices de rotaciones para CPG-ACPO . . . . . . . . . . . . . . . . . . .

5.1

Redes neuronales entrenadas . . . . . . . . . . . . . . . . . . . . . . . . . . 107

36
48
49
50
51
59
59

ix

Indice de figuras

2.1 Tipos de patas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .


2.2 Sistema generador de modos de caminado . . . . . . . . . . . . . . . .
2.3 Parametros de modelo geometrico . . . . . . . . . . . . . . . . . . . . .
2.4 Diagramas de fases para una pata con distintos valores de . . . . . .
2.5 Diagramas de modos de locomocion en robots cuadr
upedos . . . . . . .
2.6 Condicion de equilibrio estatico en robots cuadr
upedos . . . . . . . . .
2.7 Secuencia de caminado con equilibrio estatico para robots cuadr
upedos
3.1
3.2

.
.
.
.
.
.
.

.
.
.
.
.
.
.

11
12
14
15
16
18
19

3.3

Diagrama esquematico del modelo Hodgkin-Huxley . . . . . . . . . . . . . 23


Funcion de equilibrio X0 (u) y Constante de tiempo (u) en modelo HodgkinHuxley . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Respuesta temporal del potencial u(t) ante entrada impulsiva . . . . . . . . 26

4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
4.17
4.18
4.19
4.20
4.21

Ejemplos de CTRNN interconectadas . . . . . . . . . . . . . . . .


Arquitectura de CPG basada en CTRNNs . . . . . . . . . . . . .
Salidas de CTRNN de Chiel-Beer. Euler = 0.1 . . . . . . . . . . .
Vista 2D de salida de CTRNN de 3 nodos . . . . . . . . . . . . .
Vista 3D de campo atractor. Configuracion monoestable . . . . . .
Vista 2D de campo atractor. Configuracion monoestable . . . . . .
Intensidad de campo atractor. Configuracion monoestable . . . . .
Vista 3D de campo atractor. Configuracion biestable . . . . . . . .
Vista 2D de campo atractor. Configuracion biestable . . . . . . . .
Intensidad de campo atractor. Configuracion biestable . . . . . . .
Vista 3D de campo atractor. Configuracion oscilador . . . . . . .
Vista 2D de campo atractor. Configuracion oscilador . . . . . . .
Intensidad de campo atractor. Configuracion oscilador . . . . . .
Desfases para distintos estados iniciales en configuracion oscilador
Solucion oscilatoria para P ROobjetivo = [4, 1, 7]T . . . . . . . .
Formas de onda: (a) Referencia y (b) Sintetizada por AGs . . . .
Representacion de perturbacion en oscilador no lineal . . . . . . .
Ciclo lmite para ACPO con ro = 1, g = 10 y = 2 . . . . . . .
Arquitectura de conexion para CPG con ACPO . . . . . . . . . .
Funciones de transicion de fases . . . . . . . . . . . . . . . . . . .
Ciclo lmite de ACPO en para distintos valores de g . . . . . . . .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

33
35
36
37
39
39
40
40
41
42
42
43
43
44
50
52
55
56
58
60
62

x
4.22
4.23
4.24
4.25
4.26
4.27

Salidas de CPG-ACPO en funcion del tiempo, Pmodo = 0 . .


Trayectorias en el plano del vector q para cada pata . . . . .
Fases de cada pata en funcion del tiempo . . . . . . . . . . .
Modulos para cada pata en funcion del tiempo . . . . . . . .
Salidas de CPG-ACPO en funcion del tiempo, Pmodo variable
Arquitectura de DNN basada en RNN y NRNN . . . . . . .

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

64
65
66
67
68
70

5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
5.9
5.10
5.11
5.12
5.13
5.14
5.15
5.16
5.17
5.18
5.19
5.20
5.21
5.22
5.23
5.24

Modelo propuesto para generador de modos de caminado. . . . . . . . . . .


Estructura de red feedforward para transicion de trayectorias. . . . . . . .
Formas de onda: (a) Triangular (b) Rectangular (c) Redondeada . . . . . .
Diagrama de una pata en el cuadr
upedo . . . . . . . . . . . . . . . . . . .
Referencias angulares para los 3 perfiles . . . . . . . . . . . . . . . . . . . .
Sistema de entrenamiento de red feedforward . . . . . . . . . . . . . . . .
Error promedio vs No de epocas para 3 grupos de redes neuronales . . . . .
Salidas de red neuronal para entradas: (a) Rampa (b) U-V (c) CTRNN . .
Efecto de overfitting en trayectorias. . . . . . . . . . . . . . . . . . . . . .
Arquitectura de modelo de CPG propuesto . . . . . . . . . . . . . . . . . .
Relaciones de fase vs tiempo. . . . . . . . . . . . . . . . . . . . . . . . . .
Vectores de salida vs tiempo. . . . . . . . . . . . . . . . . . . . . . . . . . .
Trayectorias en el plano del vector q para cada pata ante cambios de fases.
Modulo de q1 vs tiempo. . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Grafica de curva de compansion c(x, ). . . . . . . . . . . . . . . . . . . . .
Estructura de la red neuronal. . . . . . . . . . . . . . . . . . . . . . . . . .
Esquema de entrenamiento de red neuronal. . . . . . . . . . . . . . . . . .
Ubicacion de sensores sobre la plataforma robotica. . . . . . . . . . . . . .
Trayectoria de ejemplo para entrenamiento. . . . . . . . . . . . . . . . . .
Vista en plano Y-Z de las trayectorias de salida de las redes neuronales. . .
Graficas de aceleraciones para red NN1. . . . . . . . . . . . . . . . . . . . .
Graficas de aceleraciones para red NN2. . . . . . . . . . . . . . . . . . . . .
Graficas de aceleraciones para red NN4. . . . . . . . . . . . . . . . . . . . .
Graficas de aceleraciones para red NN5. . . . . . . . . . . . . . . . . . . . .

79
84
85
86
87
88
89
91
92
94
95
96
97
98
100
101
103
106
107
108
111
112
113
114

Introducci
on

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


nar
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 especfico de locomocion sobre sustrato
rgido 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 dise
no 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 campos
como la biologa y la neurofisiologa. Mediante la observacion de los comportamientos
durante el caminado en distintos animales,

1.1

Antecedentes

Estudios en el area de neurofisiologa soportan la hipotesis de que el proceso de


caminado es de naturaleza altamente distribuido y paralelo, y no centralizado en el cerebro
como se sostena hace tiempo. Actualmente se considera que el proceso de control ejercido
por el cerebro corresponde a se
nales 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 se
nal 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 se
nales 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 cuadr
upedos y bpedos [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 cuadr
upedo con 2 grados de
libertad (GDL) por pata. Tambien incluyeron realimentacion de posicion en cada una
de las articulaciones actuadas. Mediante una se
nal de control externa, fueron capaces de
modular la transicion entre los modos de caminado a la vez que podan tambien controlar
la frecuencia de oscilacion del sistema y con ello la velocidad de caminado del robot.
Observaron que el sistema poda 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

3
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 n
umero de GDL, cada uno de
ellos representados por actuadores rotacionales entre cada uno de los segmentos rgidos del
robot. Un sistema de osciladores acoplados fue utilizado para controlar la relacion de fase
entre se
nales sinusoidales de referencia de angulo para cada uno de los actuadores. A pesar
de la simplicidad de la cadena cinematica de cada elemento rgido de la serpiente, donde
solo hay acople entre motores vecinos, no lograron obtener un metodo determinstico 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 fsicas del sistema, es posible el control
de caminado sin necesidad de informacion explcita de la geometra 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
sntesis de modos de caminado. Al final proponen que la inclusion de realimentacion de
sensores locales permitira 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

percepci
on integral en el proceso de caminado. Este
es un nuevo paradigma para la comprension del sistema de locomocion. Varios autores proponen la existencia un vnculo
importante entre la locomocion con patas y el proceso de percepcion. Por ejemplo, M.

4
A. Lewis [8][9] representa las se
nales 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 desempe
no 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 tama
no del obstaculo, pero para dimensiones reducidas del obstaculo la
diferencia del desempe
no es notable. Fukuoka, Kimura y Cohen [10][11] mediante la incorporacion del concepto de percepcion integral, han logrado dise
nar e implementar un
sistema de control de caminado dinamico, con capacidad de operar sobre terrenos irregulares. La plataforma por ellos usada fue un robot cuadr
upedo con 2 GDL por patas, con
configuracion de las patas tipo mamfero. Ellos tambien se
nalan el compromiso existente
entre el consumo de energa 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 caractersticas dinamicas de este tipo de redes para replicar el comportamiento cclico
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
global del sistema que permita controlar la locomocion con patas sigue siendo de notable
complejidad. Tambien existen modelos dinamicos de osciladores controlados por amplitud (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 sntesis de los

5
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 determinstico para la obtencion de los parametros, los autores hacen un estudio exhaustivo de diferentes topologas de conexion de las neuronas usadas en el CPG.
Tambien analizan el impacto del n
umero de neuronas en la obtencion de un patron de
caminado en especfico. Mediante la representacion de cada neurona como un modulo
din
amico identifican 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.

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 correspondiente a un cuadr
upedo. En [19] se propone la existencia de una se
nal u
nica para el control
de la relacion de fases del modo de caminado, siendo dicha se
nal 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 n
umero 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

6
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 aplicar un tratamiento analtico, 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, efect
uan 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.

1.2

Planteamiento del problema

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


utilizando principios neurofisiologicos, se han planteado y evaluado soluciones con arquitecturas especficas 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 equivalentes que facilitan el dise
no de partes del sistema completo. Sin embargo, no queda
resuelto de manera explcita el problema de coordinacion de movimientos entre patas y
dentro de las mismas, en especial para el caso especfico de plataforma cuadr
upeda 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

7
de locomocion depende fuertemente de la estructura cinematica de las patas. Por esto se
prefiere un modelo donde las modificaciones en las patas impacten de manera mnima en
la arquitectura del mismo.

1.3

Justificaci
on

Para controlar de manera mas efectiva los robots caminantes en ambientes no estructurados, 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 presentes en modelos previos en lo que respecta a la coordinacion entre las patas,
y tambien se evita la dependencia respecto a una configuracion cinematica especfica para
las patas del robot.

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


de prueba del modelo un robot cuadr
upedo 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 cuadr
upedos con solo dos grados de libertad por pata.

Locomoci
on en robots con patas

En este captulo se describen los principios de locomocion en robots, en particular 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 caminado a traves de diagramas de fase. Finalmente se comentan las condiciones de equilibrio
estatico necesarias en modos de caminado para robots cuadr
upedos.

2.1

Principios b
asicos

Los tipos de movimientos en animales y plantas, 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 desplazamiento pero con sentido contrario. Seg
un [1] existen cuatro tipos de fuerzas
involucradas:

Propulsion: empuje contra el sustrato 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.

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

Notese que no todas las fuerzas se


naladas anteriormente estan siempre presentes
en el proceso de locomocion, o bien no parece evidente su presencia. Sin embargo se puede
afirmar que en muchos casos esta involucrada tanto la reaccion de la superficie como la
mecanica de fluidos. La locomocion requiere un contacto entre el movil y la superficie para
que provea de soporte y adhesion. Este contacto tambien puede ser u
til 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 caracterstica propia de oscilacion. Esta caracterstica 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 m
ultiples patas, donde mientras se transfiere un
grupo de ellas, aun quedan otras en contacto con la superficie dando soporte al
robot.
El movil vuela balsticamente entre pasos de propulsion, donde el equilibrio pasa
a ser dinamico, y posiblemente se requiera alg
un soporte dinamico en el fluido o
estabilizadores.

10
La primera opcion es adecuada en maquinarias pesadas y lentas donde la velocidad no es crtica, prefiriendose la simplicidad del manejo de las patas. La opcion de vuelo
balstico es u
til donde se requiere velocidad, sin embargo el control de la dinamica involucrada 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 la
correccion de tales movimientos seg
un 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 n


umero de las mismas como un
criterio de clasificacion, estando los monopodos, bpedos, cuadr
upedos y hexapodos por
mencionar los mas comunes. Tanto los monopodos y los bpedos 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
mamfero. En la Figura 2.1 se ilustran ambas clases.

La principal diferencia entre ambos tipos de patas estriba la geometra 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 mamfero, el cuerpo tiende a estar mas elevado y el polgono de apoyo que
forman las patas sobre el terreno es mas estrecho. La desventaja de esto es que al estar
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 energa necesaria para los actuadores de cada
articulacion de la pata, en esta u
ltima 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

11

Figura 2.1: Tipos de patas

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 trada 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.

12
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.

Figura 2.2: Sistema generador de modos de caminado

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 u
nicamente el perfil cerrado que describira la pata durante
un ciclo completo de apoyo y transferencia. El otro subsistema presente es el de referencia
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 u


til
cuando el movil opera bajo ambientes controlados, casi siempre sobre superficies planas no
deslizantes. Cuando se eval
ua dichos modelos en ambientes no estructurados, generalmente
las secuencias de caminado terminan siendo inoperantes. Consecuencia de ello, se han

13
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 n
umero considerable de grados de libertad, el n
umero 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
una de las patas del robot, es posible obtener un grupo de modos de caminado u
tiles 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
sistema 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 geom
etrico del sistema de locomoci
on

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.
Perodo 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.

14
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 principalmente 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 perodo del
paso, siguiendo la relacion dada por Vpro = / . El parametro modifica el tiempo que
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

15

2.4

Representaci
on de modos de caminado mediante
diagramas de fase

Una tecnica muy utilizada para la representacion de los distintos modos de caminado es mediante el uso de diagramas de fase. Debido a que el movimiento de cada pata
es de naturaleza cclica con un perodo finito , el cual normalmente es igual para todas
las patas, el sistema de referencia temporal queda descrito de manera unvoca mediante la
relacion de fase. Este enfoque tambien incorpora el concepto temporal de factor de apoyo
(). Debido a su naturaleza temporal, no se incluye ning
un tipo de informacion correspondiente a la geometra de la pata ni se describe 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
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

16
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 especfico de robots cuadr
upedos, existen varios modos comunes de caminado. En
la Figura 2.4 se muestran 3 de estos modos.

Figura 2.5: Diagramas de modos de locomocion en robots cuadr


upedos

Se puede observar que el modo Arrastre es estaticamente estable. Para ello es necesario que esten apoyadas como mnimo tres de la cuatro patas del cuadr
upedo, 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 cuadr
upedo se mantiene en equilibro dinamico, sin embargo es necesario que se mueva a velocidades mayores cuando adopta el u
ltimo modo de
caminado donde vuela balsticamente entre las fases de soporte[1][23].

17

2.5

Equilibrio est
atico en robots cuadr
upedos

En modos de caminado estaticamente estable se establece que el robot puede permanecer indefinidamente en alguna posicion del ciclo completo de locomocion, y aun

as permanecer en equilibrio si requerir de alg


un 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 cuadr


upedo 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,
intersecte al polgono 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
plataforma, siendo todos anulados por las componentes normales en los puntos de apoyo. Si la proyeccion del peso cae fuera del polgono de apoyo, se tiene una componente
no nula de rotacion que reduce la fuerza de soporte en alguna de las patas, provocando
su desprendimiento de la superficie de apoyo, y por u
ltimo el volcamiento del robot. La
condicion de equilibrio se ilustra con detalle en la Figura 2.6.

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 polgono 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

18

Figura 2.6: Condicion de equilibrio estatico en robots cuadr


upedos

del centro de gravedad es el centroide del polgono 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.

En la secuencia de pasos se observa que el robot cuadr


upedo pasa por fases de
apoyo con 3 patas y 4 patas de manera alternada. Las secuencias con 3 patas, donde el
polgono 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 polgono a un
cuadrilatero. En esta fase el cuadr
upedo 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 amplan la nocion de margen de estabilidad en locomocion cuadr
upeda
hacia situaciones de caminado dinamico como en [13], pero este tipo de condiciones de
operacion no se consideran dentro del presente trabajo.

19

Figura 2.7: Secuencia de caminado con equilibrio estatico para robots cuadr
upedos

20

Modelos neurofisiol
ogicos del sistema
locomotor en animales

En este captulo 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 caractersticas 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 basado para desarrollar distintas propuestas de modelos neuronales para la representacion del sistema de caminado. Al termino del
captulo 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 rtmicos en animales.

3.1

Neurofisiologa de la locomoci
on en animales

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


de robotica es la asociada a la Biologa. Ejemplos basados en la morfologa y estructura
de las patas en robots caminantes saltan a la vista (ver Figura 2.1). Tambien ha influido
en algunos dise
nos 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

21
la biologa como el estudio del comportamiento animal (etologa), son utilizados para la
programacion de las plataformas, en especial en el caso de sistemas de robots cooperantes.

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 fsicamente 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
diferencias entre los mismos, existe un componente com
un 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, m
usculos, etc.
El procesamiento y la generacion de se
nales 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 probabilstico: es mas efectivo ensayar y errar muchas veces en un
tiempo peque
no, que el modelado exacto. durante un largo perodo de tiempo.

22
Existen algunos casos donde las caractersticas de generacion automatica de movimientos coordinados de un grupo de m
usculos 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
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 efect
ue de manera
local.

En lo que respecta a la estructura fsica 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 m
usculos) como el
componente de mayor 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 difundidos modelos descriptivos de la fisiologa 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.

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


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

23

Figura 3.1: Diagrama esquematico del modelo Hodgkin-Huxley

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


y fuera de la celula. El potencial de Nernst

se representa por una batera. 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) +

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:

C
1

X
du
= I(t)
Ik (t)
dt
k

(3.2)

Es el nivel de potencial a traves de la membrana celular que se opone exactamente a la difusion de


un ion en particular a traves de dicha membrana.

24
Como se se
nalo 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 =

1
;
R

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 N a ocurren con
los valores maximos de conductancia gK y gN a , 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 N a+ y la variable h lo hace con el canal de K + . El modelo especfico
propuesto por Hodgkin-Huxley para los tres canales es:

Ik = gN a m3 h(u EN a ) + gK n4 (u EK ) + gL (u EL )

(3.3)

Los terminos EN a y EK son los potenciales inversos, los cuales junto con las conductancias son valores empricos. 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
Na 115 mV
K -12 mV
L 10.6 mV

gx
120 mS/cm2
36 mS/cm2
0.3 mS/cm2

Tabla 3.1: Parametros del Modelo Hodgkin-Huxley

ecuaciones diferenciales
m
= m (u)(1 m) m (u)m
n = 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,

25
x
n
m
h

x (u/mV)
x (u/mV)
10,1u
(0,1 0,01u)/(e
1)
0,125eu/80
2,50,1u
2,5 0,1u/(e
1)
4eu/18
0,07eu/20
1/(e30,1u + 1)
Tabla 3.2:

son funciones empricas 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 x0 (u))
x (u)

(3.5)

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 empricos de Hodgkin-Huxley

Figura 3.2: Funcion de equilibrio X0 (u) y Constante de tiempo (u) en modelo HodgkinHuxley

26

3.2.1

Din
amica 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 se
nal externa provoca 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 acci
on.

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.
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

27
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
mnimo 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 HodgkinHuxley. 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
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 teora 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 m
usculos. Existen dos modelos iniciales propuestos
por los neurofisiologos que trataban de describir de manera intuitiva como el sistema

28
nervioso lograba controlar alternadamente la contraccion de los m
usculos extensores y
flexores. En uno de los modelos se sugera que los receptores de los sensores monitoreaban
continuamente el estado de las articulaciones, activando reflejos en momentos especficos
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
se
nales de temporizacion esenciales para la activacion de los m
usculos consiguiendo as el
movimiento repetitivo deseado (Marder2001[25][26]). El primer mecanismo se denomina
cadena de reflejos y el u
ltimo generador central de patrones (CPG).

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


rtmicos en ausencia de estmulo externo, bien sea proveniente de una entrada sensorial o de
una se
nal descendente de alg
un sistema de control superior. Es decir, un CPG esta presente
cuando la existencia de un comportamiento rtmico no depende de los centros perifericos
o centrales del animal, aunque las se
nales 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
[6][11][27][28].

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


de experimentos que mostraban que movimientos rtmicos eran producidos a
un despues
de que la realimentacion proveniente de las piernas era removida. Este tipo de patron
motor se denomina ficticio puesto que no genera ning
un movimiento, pero si se conectase
la salida del circuito del CPG a las neuronas motoras, su efecto sera el de movimiento
rtmico.

Se han identificado dos estrategias para la generacion de comportamientos rtmicos


en las neuronas. Algunos de estos comportamientos son manejados por neuronas que son
osciladores, y act
uan como marcapasos. Este tipo de neuronas son similares a las presentes

29
en el corazon, y tienen una combinacion especfica de canales de iones dependientes de
voltaje, que causa que se disparen rtmicamente en ausencia de se
nal 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 HodgkinHuxley, con la importante salvedad de que este u
ltimo requiere de una se
nal de activacion
externa para la generacion de una salida rtmica.

Otro tipo de comportamiento rtmico resulta de la interaccion sinaptica entre neuronas que no son rtmicamente 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
interacciones entre las neuronas presentes en el circuito. En ambos casos la temporizacion
especfica 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 especfico de neuronas del circuito CPG. Este fenomeno de neuromodulacion juega un rol importante en el proceso de
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 seran bailar o escalar.

Las caractersticas antes descritas para el CPG destacan la importancia de dos


aspectos fundamentales en el proceso de generacion de se
nales de control durante la locomocion con patas. Primero esta la generacion independiente de se
nales oscilatorias, las
cuales controlan a los actuadores a fin de obtener un movimiento preprogramado. Da-

30
do esto, 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 se
nales 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 modulacion 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.

31

An
alisis comparativo de modelos de CPG

En el presente captulo se efect


ua 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 caractersticas propias de los sistemas biologicos son incorporadas en los modelos. Se
analizan las metodologas descritas por los autores de tales modelos de CPG en locomocion
de robots. Empleando tales metodologas se efect
uan pruebas de simulacion y se analizan
los resultados obtenidos. Partiendo de ello se identifican las ventajas y desventajas relativas
de cada alternativa para la sntesis de un modelo de caminado en robots cuadr
upedos.

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 analtico de la dinamica
del sistema oscilador, a la vez que se detallan las ventajas para el control de transicion
entre diferentes movimientos rtmicos preprogramados. Por u
ltimo 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 captulo anterior.

32

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 (Continuous 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:

i y i = yi +

M
X

wji (yj + j ) + Ii , i = 1, , M

(4.1)

j=i

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 logstica estandar:

(x) =

1
1 + ex

(4.2)

Existen varios aspectos importantes de este modelo particular de redes neuronales. 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.

33
Desde el punto de vista matematico, se puede considerar que la Ecuacion 4.1 describe la
evolucion 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
(4.3)
Y = F (Y, I)

Los esquemas de conexion de las neuronas en redes de este tipo suelen ser con un
alto n
umero de interconexiones bidireccionales entre los nodos. Debido a que se necesita
al menos una se
nal 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 mnimo 3 nodos. Tambien son u
tiles 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

34

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 tama
no
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 n
umero total de parametros
requeridos para describir una red totalmente interconectada con N elementos son N 2 +
2N . En [15][16], los autores describen el uso de algoritmos geneticos para la sntesis 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 mnimo
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.

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.

35

Figura 4.2: Arquitectura de CPG basada en CTRNNs

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

Metodologa para sntesis de CPGs utilizando CTRNN

A fin de modelar un CPG para locomocion en robots es necesario obtener un sistema cuya salida posea ciertas caractersticas espaciales y temporales. Para la arquitectura
descrita previamente, Chiel y Beer obtuvieron mediante AGs un set de soluciones validas
para su modelo de cuerpo con una pata simple. En la Ecuacion 4.1 se tiene la transicion
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

36
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.
FT
FS
BS

Tau( )
7.2777
2.3042
2.9261

Bias ()
F T
-9.5733 -3.209000
12.3221 -12.919000
-7.0150
6.167400

F S
15.546400
-12.697000
13.606400

BS
11.594100
1.562800
-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 se
nales 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

37
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. Como el sistema completo posee 3 nodos, por lo cual su espacio de salida
es tridimensional, 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 lmite 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 se
nalan que los mismos exhiben
diferentes tipos de comportamientos. En el caso especfico de una red con 3 nodos, se

38
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 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 emprica, 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.

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 independientemente 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 rtmicos que puedan resultar u
tiles en locomocion de robots con patas. Podran ser utilizados en esquemas de control donde se
desee 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.

39

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

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

40

Figura 4.7: Intensidad de campo atractor. Configuracion monoestable

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

41
Para la configuracion tipo biestable, las graficas del campo atractor ofrecen informacion 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 mnimos de gradiente en el
plano; pero no es posible extraer de manera directa informacion alguna sobre las trayectorias que recorren los estados del sistema antes de converger a los puntos estables. Cabe
se
nalar 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.

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

El comportamiento que encierra mayor importancia en la sntesis 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 lmite al cual converge eventualmente el sistema. Para
la grafica de intensidad mostrada en la Figura4.13 no resulta directa la identificacion de
dicho ciclo lmite. Un fenomeno observable en la Figura 4.11, es que dependiendo del
estado del cual parta el sistema, la fase final de la se
nal oscilatoria variara.

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

42

Figura 4.10: Intensidad de campo atractor. Configuracion biestable

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

43

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

Figura 4.13: Intensidad de campo atractor. Configuracion oscilador

44
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 se
nales 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 se
nales 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,


donde consideran a cada CPG individual como un modulo dinamico y tratan de caracterizar las variaciones de la dinamica del sistema ante perturbaciones externas [15]. Sin
embargo las tecnicas de sntesis 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 cuadr
upedos con 3 GDL [30][32][33][34].

45
Metodologa para sntesis de CTRNN mediante el uso de AGs

En el presente trabajo tambien se evaluo el uso de algoritmos geneticos como tecnica de sntesis 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 obtencion de patrones rtmicos en CTRNNs. Las pruebas con AGs aqu descritas se orientan
a identificar la posibilidad de sntesis de redes recurrentes u
tiles 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
algoritmo genetico. Esto se hizo ya que el comportamiento que se desea estudiar es de la
red completa y no de cada nodo individual. Las caractersticas principales del esquema de
algoritmos geneticos utilizado son las siguientes:

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 n
umero
finito de puntos de cruces (8), en puntos seleccionados de manera aleatoria con
funcion de probabilidad uniforme.
El n
umero total de cromosomas/soluciones utilizadas en cada poblacion vario entre
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
cromosoma por parametro, con un valor absoluto menor a 15.

46
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 caractersticas
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, tama
no
de poblacion, n
umero de cruces, etc. Se evaluo de manera emprica el desempe
no del
algoritmo para sintetizar soluciones satisfactorias para la funcion de fitness deseada, en
funcion del n
umero de individuos en cada poblacion y la tasa de mutacion. Tras efectuar
un proceso previo de sintonizacion, se procedio a la sntesis 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 n
umero 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:

Valor maximo de amplitud de la se


nal (MAX).
Valor mnimo de amplitud de la se
nal (MIN).

47
Promedio de la se
nal (PRO).
Frecuencia relativa (FR). Para el calculo de F R se procedio a contar el n
umero 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,f rec



ref erencia valor

= 1

valor

(4.4)

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


Pcromosoma = pro .Ppro + max .Pmax + min .Pmin + f rec .Pf rec

(4.5)

Mediante la variacion de para cada parametro, es posible forzar la sntesis de


soluciones que cumplan alg
un 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.

48
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 Pf rec , y se
coloco Ppro en 1. De esta manera el fitness dependa 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 permita 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 deban converger a un mismo valor en la salida. Las soluciones abajo
se
naladas fueron las redes con mejor fitness obtenidas de 10 soluciones para cada caso,
para un n
umero maximo de 300 iteraciones por solucion.
Ypro deseado Ypro obtenido Error(prom) ( %) N
um. 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, a
un para un n
umero de iteraciones
tambien bajo ( maximo de 149 ). Se considera posible la sntesis de soluciones aun mejores
con un mayor 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 ttulo ilustrativo, siguiendo la misma metodologa descrita para la prueba
previa, con la diferencia de que el n
umero maximo de iteraciones es igual a 1000.

49
Ypro deseado
Ypro obtenido
[ 6 2 -5]
[6.0092 2.1031 -5.0082]
[-4 -1 7]
[-5.0700 -2.1073 7.5778]
[11 -8 1]
[11.0548 -8.0039 1.0008]

Error(prom) ( %)
1,8241
48,578
0,2089

N
um. de iter.
988
1000+
369

Tabla 4.3: Salidas de CTRNN sintetizadas con AGs para salidas constantes varias

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 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 especficas en salidas
constantes. Durante las pruebas de sntesis con esta tecnica se observo un fenomeno que
hace esta u
ltima opcion poco u
til: existe la posibilidad de que una se
nal de naturaleza
oscilatoria tenga el mismo valor de promedio (P RO) que se desea para un vector de
salida constante. Esto se puede apreciar en la solucion correspondiente al vector objetivo
Yd eseado = [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 caractersticas en las formas de ondas de salida, en
especfico para la amplitud maxima y mnima. 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 M AX y
M IN 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 M AX y M IN en cada caso.

50

Figura 4.15: Solucion oscilatoria para P ROobjetivo = [4, 1, 7]T


Ymax deseado Ymax obtenido Error(prom) ( %) N
um. de iter.
-4
-4.0182
0.455
86
-2
-2.0669
3.346
270
2
1.9644
1.780
110
4
3.9520
1.198
150
Tabla 4.4: CTRNNs sintetizadas por AGs para valores de M AX dados

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,
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

51
Ymin deseado Ymin obtenido
-3
-2.661
-1
-0.990
1
1.343
3
3.005

Error(prom) ( %) N
um. de iter.
11.294
84
-0.920
64
34.30
77
0.19
54

Tabla 4.5: CTRNNs sintetizadas por AGs para valores de M IN dados

puedan resultar u
tiles en locomocion con patas, se efectuaron pruebas donde se establecan
valores deseados para M AX, M IN , P RO y F R, y se hizo max , min ,pro y f r iguales
a 1. Los valores de referencia de cada uno de estos parametros se obtuvieron al aplicar
el mismo analisis de amplitud a se
nales de referencia propias de modos de caminados
representados mediante el modelo geometrico estandar. Las se
nales de referencia en el
espacio cartesiano fueron convertidas al espacio de los actuadores mediante la cinematica
inversa. El problema asociado a esta metodologa es que no se considera en ning
un caso la
relacion temporal entre las se
nales, 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.

Notese que el n
umero 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
de amplitud de la forma de onda apuntan a la necesidad de incluir mayor cantidad de
parametros en la evaluacion de las se
nales de salida del sistema, a fin de utilizarlos en el
calculo del fitness de las soluciones. Tales tipos de parametros deben abarcar informacion

52

(a) Referencia

(b) Sintetizada

Figura 4.16: Formas de onda: (a) Referencia y (b) Sintetizada por AGs
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 se
nales 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. A
un con el uso de tales enfoques,
permanece sin resolver la coordinacion entre las patas del robot as como tampoco se
dispone de una herramienta analtica 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
explcita 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 rtmico.

53

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. Ijspeert [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
matematico 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 analticamente en comparacion
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 = [q1 q2 ]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 cclico para que

54
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 (act
ua solo sobre la fase), y pr es el componente radial del vector de
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 ).

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)

55

Figura 4.17: Representacion de perturbacion en oscilador no lineal

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:

 



T
ro
ro
q = g p
1 x y, g p
1 y x
x2 + y 2
x2 + y 2

(4.10)

Para la misma, el sistema posee un ciclo lmite descrito por un crculo 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 lmite. En la Figura 4.18 se muestra el campo
diferencial para un ACPO con ro = 1, g = 10 y = 2, con diferentes trayectorias de

56
estados para distintos puntos iniciales. Se introduce la siguiente notacion: q = FACP O (q),
donde q = [x, y]T es el vector de estado del sistema.

Figura 4.18: Ciclo lmite para ACPO con ro = 1, g = 10 y = 2

Definamos una matriz de rotacion:


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 (10 ), con 10 = 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 10 . Se define como vector de perturbacion p2 a:

57

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 cuadr


upedo, en [18]
se
nalan 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 0
0 1


(4.14)

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:

Esta arquitectura da como resultado que las ecuaciones que rigen la evolucion
temporal de cada vector de estado sean las siguientes:

58

Figura 4.19: Arquitectura de conexion para CPG con ACPO

q1 = FACP O (q1 ) + pc q2 + pc q3 + pc q4

(4.15)

q2 = FACP O (q2 ) + pc q3 + pc q4 + pc q1

(4.16)

q3 = FACP O (q3 ) + pc q4 + pc q1 + pc q2

(4.17)

q4 = FACP O (q4 ) + pc q1 + pc q2 + pc q3

(4.18)

Cada perturbacion de estado pc (qi ) esta definida por:

pc (qi ) = [xi , yi ]T

(4.19)

Los modos de locomocion en robots cuadr


upedos 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 ) = R1 (d ), es posible

59
obtener las matrices de rotaciones asociadas a cada conexion entre ACPO (ver Tabla
4.2.1).
Modo
d,12
Caminado 0.75
Trote
0.5
Galope
0.5

d,13
0.25
0.0
0.5

d,14
0.5
0.5
0.0

Modo
R,1
Caminado 0.25
Trote
0.5
Galope
0.5

(a)

R,2 R,3
0.25 0.5
0.0 0.5
0.5 0.0

(b)

Tabla 4.6: (a) Desfases bases seg


un modo de caminado y (b) Fases normalizadas de rotacion seg
un 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 vara, los desfases de cada nodo con respecto al de referencia (FI/1) cambian de manera continua entre cada uno de los valores
mostrados 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 caractersticas de transicion suave y continua de fase entre
distintos modos de caminado. Sin embargo las ecuaciones provistas por los autores en
ACPO FI/1 FD/2 TI/3
FI/1
0
R31
R11
FD/2
R3
0
R2
TI/3
R1
R21
0
1
TD/4 R2
R1
R3

TD/4
R2
R11
R31
0

Tabla 4.7: Matrices de rotaciones para CPG-ACPO

60
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,2



1
1
R,1 =
1+
4
1 + e20(Pmodo 1,5)


1
1
2
(Pmodo 1) +
=
4
1 + e20(Pmodo 1,5)


1
1
R,3 =
1
2
1 + e20(Pmodo 1,5)

(4.20)
(4.21)
(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

61

4.2.2

Pruebas del modelo basado en ACPO

A continuacion se muestran varias pruebas efectuadas para evaluar el desempe


no
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 se
nales
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 se


nales de referencia
temporales para los angulos de cada articulacion, las cuales describen un modo de caminado 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


cclico de un solo ACPO. En las Figuras 4.21(a),4.21(b),4.21(c),4.21(d) se muestran los
ciclos lmites 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 cercanas del origen, y los cuatro puntos restantes fuera
del crculo 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 crculo de radio igual a 1 que describe el
ciclo lmite del sistema.

Se puede observar que conforme disminuye el valor de g, la trayectoria descrita

62

(a) g = 0.1

(b) g = 1

(c) g = 10

(d) g = 100

Figura 4.21: Ciclo lmite de ACPO en para distintos valores de g


por el vector de estado tarda cada vez mas en converger al ciclo de radio 1. En la Figura
4.21(d) se 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

converga, sino por el contrario diverga 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 crculo en el caso de los puntos iniciales que estaban fuera del
mismo. Las trayectorias correspondientes a los puntos internos describan espirales cuyo

63
radio crecan 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 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 cclico 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 crtica.
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 6= 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 permanecera 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

64

Figura 4.22: Salidas de CPG-ACPO en funcion del tiempo, Pmodo = 0

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 .

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

65

(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


sistema tarda un n
umero 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
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

66
implementaciones del presente modelo como sistema de generacion de fases de un CPG
mas completo.

Figura 4.24: Fases de cada pata en funcion del tiempo

Por u
ltimo 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 estableca en un comportamiento estable propio de dicho modo, se modifico la variable
Pmodo . Dicho parametro fue cambiado un total de 3 veces, pasando porcaminado, trote,
galope y por u
ltimo 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
antes mencionadas para Pmodo . Los demas parametros del sistema se mantuvieron iguales.

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

67

Figura 4.25: Modulos para cada pata en funcion del tiempo

comportamientos que exhibe el sistema dinamico que representa un CPG basado en cuatro
ACPO interconectados, es posible identificar algunas caractersticas u
tiles para generacion

de modos de caminado en un cuadr


upedo. Estas
son las siguientes:

Es posible establecer referencias de desfase a partir de una variable u


nica (Pmodo ),
lo cual no impide la inclusion de desfases arbitrarios en caso de que resultasen u
tiles
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 cclico 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 cclico puede ser controlada mediante el factor g, que escala la componente de q perpendicular al ciclo de radio
ro .

68

Figura 4.26: Salidas de CPG-ACPO en funcion del tiempo, Pmodo variable

Estas caractersticas pueden ser aprovechadas para modelar el acople de fase entre
las patas del robot cuadr
upedo. 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 afectara 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 converga al atractor cclico deseado. El sistema por
el contrario diverga, 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.

69
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
problema puede ser resuelto mediante el uso de otras tecnicas para calculo con
ecuaciones diferenciales.
El espacio natural de salida de cada vector es una circunferencia descrito por componentes de naturaleza sinusoidal. La generacion de se
nales con diferentes formas
de ondas basandose solamente en ACPO a
un no ha sido resuelto.

4.3

Generaci
on de trayectorias din
amicas con DNN

En esta seccion se menciona el uso de un tipo particular de redes neuronales denominadas 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 se
nalan sus posibles aplicaciones en areas de la robotica, como es el control de
trayectorias 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 dise


no de un sistema
que produzca un conjunto predise
nado de atractores tales que se asegure la convergencia
a un ciclo lmite 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 permitan la generacion de un conjunto de atractores que eventualmente, usando los parametros correctos, convergan a un ciclo lmite definido. Pero
dicho enfoque estaba limitado a un tipo especfico de ciclo lmite, que dejaba sin solucion

70
la coordinacion de los movimientos entre las articulaciones. Lo u
ltimo 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 modificaciones del campo atractor; problema el cual se denomina modulaci
on 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 lmite (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 captulo de mode-

71
los neurofisiologicos del sistema locomotor en animales (Pag. 28). La aproximacion de
trayectorias utilizando redes neuronales es estudiada en [6][11][27][28].

Generaci
on 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
mismas 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 condici
on:
ti 6= tj o(ti ) 6= o(tj )

(4.23)

para ti [0, T ] y tj [0, T ].

Prueba: Cualquier mapeo y() : [0, T ] <m , puede ser reformulado como la composici
on 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 existencia de una funcion. Si las condiciones previas se cumplen, entonces g() es una
funci
on y por lo tanto es implementable mediante el uso de una NRNN. Ahora, dado un set
de pares de datos (ti , y(ti )), i [1, l], la salida del mapeo yl (t) = gl (o(t)), gl () : <k <m ,

72
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 espaciotemporal del problema de locomocion, donde se requiere resolver el problema de coordinacion de las fases entre las patas del robot (temporal) y el problema de generacion de
referencias en el espacio de actuadores 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

Generaci
on: sntesis de red recurrente

El modelo de red recurrente citado corresponde a uno de tiempo continuo descrito


por un grupo de ecuaciones diferenciales acopladas:

X
1
x i (t) = xi (t) +
wij fj (xj (t)), i [1, n]
i
j=i

(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

73
umbral no lineal como la siguiente:

(x) =

2
1, i [1, n]
1 + eri z

(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 32). Ambas comparten los parametros de como
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 analoga en
el comportamiento dinamico, aunque no se provee de un metodo analtico para pasar de
una representacion a otra. 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 32). Ambas comparten los
parametros de como 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 analoga en el comportamiento dinamico, aunque no se provee de un metodo
analtico para pasar de una representacion a otra.

74
La relevancia del modelo de red recurrente empleado en esta seccion reside en
su capacidad de generar atractores cclicos; 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 Captulo 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 se
nal sea de naturaleza
cclica, 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

Modulaci
on: Sntesis 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
de la red no recurrente o a como entrada de ambas. Las dos posibilidades que contemplan
la modulacion actuando sobre la RNN reviste una mayor complejidad en el proceso de
sntesis de los N 2 + 2N parametros que describen a dicha red, debido primordialmente a
las ecuaciones diferenciales que describen el comportamiento de las mismas. Por ello, el
proceso de modulacion se efect
ua a nivel solamente de la red no recurrente.

75
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 pr
oximo a y(t) conforme l dado
un g(, ) que es implementado con una NRNN con dimensi
on Vapnik-Chervonenkis (VC)
apropiada, y h() es implementado de manera tal que cumple con la condici
on 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 deformadores de trayectorias.

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.

76

Generador de modos de caminado en robots


cuadr
upedos

En este captulo 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 metodologa empleada para el dise
no y evaluacion de los mismo, y se
muestran los resultados obtenidos con sus respectivos analisis.

En el Captulo 2 se expusieron los principios que conforman la base del sistema


locomotor en robot con patas. Para el caso especfico de robots cuadr
upedos, 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
caractersticas deseadas en un modelo de caminado para cuadr
upedos 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 u
ltima 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

77
sistema de locomocion provea de valores de referencias en el espacio de los actuadores,
como pueden ser angulo y velocidad angular para los motores.

Mediante la modificacion y ajuste de las trayectorias es posible lidiar con modificaciones en la estructura mecanica de las patas, y mas importante a
un, es fundamental para
la implementacion de esquemas de control para la locomocion del robot sobre terrenos
irregulares o inclinados.

Coordinaci
on de movimientos entre las patas

El modo especfico de caminado viene dado de manera directa por la relacion de


fases en los movimientos cclicos efectuados por cada pata. Por esta razon resulta evidente
la importancia de poseer un modelo de locomocion el cual genere dichos desfases seg
un
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 caractersticas observadas en el proceso de locomocion de animales, y mas importante a
un, han sido
incorporadas de una u otra manera en varios de los modelos propuestos acerca de la fisiologa del sistema de locomocion. Partiendo de esto, se propone un primer modelo de
locomocion para robots cuadr
upedos el cual se centra en la necesidad de efectuar transiciones 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 se
nales basicas de referencias temporales. Dicho modelo es evaluado 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

78
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.

5.1

Propuesta de modelo del generador de modos de


caminado

Parte del problema de sntesis de modos de caminado radica en la generacion de


la trayectoria del elemento terminal de cada pata. Normalmente existe una simetra 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 sntesis 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 se
nales rtmicas 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 fisiologa del sistema locomotor en animales, y mas
importante a
un, esta inspirada en la propuesta de arquitectura para DNN examinada en
el Captulo 4. En este modelo se apunta a la simplicidad del sistema temporal, que act
ua
como un marcapasos, por lo cual uso de una red neuronal se reduce a la obtencion de

79
un metodo para efectuar transiciones suaves entre distintas trayectorias espaciales para la
pata.

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 perodo 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 u
ltimo subsistema.

80

5.1.2

Referencias en tiempo

Para este subsistema se contemplo el uso de 3 tipos distintos de se


nales periodicas.
Una es una se
nal simple de rampa definida por:

r[n] =

n(modN )
N

(5.1)

La Ecuacion 5.1 define una secuencia monotona con un perodo igual a N, satisfaciendo 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(2s n/N + s )
v = B cos(c n/N + c )

(5.2)

Usando dicha ecuacion es posible obtener una familia de figuras cerradas (Lissajous), variando los parametros A, B, s , c , s y c . Debido a las restricciones en la
naturaleza de la se
nal 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 simplicidad, en la presente implementacion se opto por el uso de los mismo valores de frecuencia
en cada se
nal, hacer cero el desfase entre las dos se
nales e iguales amplitudes (A = B).
Estas condiciones se resumen de la siguiente manera:

81

A=B=1
s = c =
s = c =

(5.3)

Con estos valores para los parametros se obtiene una circunferencia de radio unitario, centrada en el origen, en la cual se puede controlar la frecuencia de oscilacion
y angulo de rotacion . El perodo completo de cada oscilacion viene dado de manera
directa por el parametro N .

El u
ltimo 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 n
umero mnimo de elementos necesarios dentro
de una red de este tipo para obtener una salida de naturaleza oscilatoria sostenida. Esta
eleccion facilita la sntesis de los parametros de la red, en comparacion con los casos de
las redes empleadas en [15][16][29].

Generaci
on de referencias en tiempo con CTRNN

Para la obtencion de los N 2 + 2N parametros de la red neuronal se utilizaron


algoritmos geneticos. Para los dos tipos de se
nales temporales mencionadas anteriormente
es posible controlar el perodo de oscilacion de manera directa con un solo parametro.
Para el caso especfico de la se
nal 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 (F R) del vector de salida de la red. El calculo de F R 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 especficas

82
de la sntesis 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 n
umero 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.
La funcion de fitness viene dada por el error calculado sobre la FR.
Las condiciones de parada del algoritmo eran alcanzar un n
umero fijo de epocas
(1000) o que el error en la funcion de fitness de la F R fuese menor al 1 %.

Para el calculo de F R, 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 emprico 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 F R durante el proceso de entrenamiento. Notese que esta metodologa resulta

83
poco practica si se desea modificar de manera continua el perodo del ciclo de locomocion,
situacion que se puede presentar al efectuar cambios en el modo de caminado del robot.

5.1.3

Transici
on entre trayectorias mediante redes neuronales

El subsistema de transicion de trayectorias fue implementado mediante una red


neuronal de tipo f eedf orward. 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 se
nal 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.

yi =

M
X

!
wj Ij + j

, i = 1, , K

(5.4)

j=1

yi =

K
X
j=1

wj Ij + j , i = 1, , N

(5.5)

84

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 sntesis de los


parametros que describen a la red neuronal. El primer paso es la identificacion de un conjunto 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 elemento
terminal de la pata. El criterio de seleccion se basa en la simplicidad de generacion 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 rec-

85
tangular 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.
La Figura 5.4 muestra la estructura mecanica de una pata del cuadr
upedo. La cinematica
inversa de una pata se describe en la Ecuacion 5.6. Se utilizo la convencion de DenavitHartenberg para la seleccion de los ejes de coordenadas dentro de la pata.

86

Figura 5.4: Diagrama de una pata en el cuadr


upedo

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
especfico empleado es el Quadruped 3-DOF. Las longitudes de los tres eslabones rgidos
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 ecuaciones de cinematica inversa sobre los tres perfiles de trayectorias. Los valores empleados
para los parametros del modelo geometrico fueron los siguientes: H = 80 mm, dH = 65
mm y L = 200 mm.

87

Figura 5.5: Referencias angulares para los 3 perfiles

Como metodo de entrenamiento se utilizo la tecnica ampliamente empleada en


redes de tipo f eedf orward, 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 par
.
ametros 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.

88
La estructura completa del proceso de entrenamiento de la red neuronal f eedf orward
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 vara 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

89

5.1.4

Resultados de la sntesis 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 seg
un el tipo de se
nal 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 eventualmente 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 desempe
no en el entrenamiento se obtuvo de la red cuya entrada

90
era el par U V de se
nales 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
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 CT RN N , ambas de 2 dimensiones. En
el caso de la entrada de rampa existe una discontinuidad cuando la se
nal alcanza su valor
maximo (1) en un perodo 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, U V y CT RN N respectivamente.

En los tres casos, las formas de ondas de salida se aproximan a las referencias
empleadas 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 observo la ocurrencia del fenomeno denominado overfitting o sobreentrenamiento, lo
cual tiende a ocurrir cuando el n
umero de iteraciones de entrenamiento de la red es muy
alto. A primera vista, se estara inclinado a pensar que el incremento de iteraciones de
entrenamiento resulta positivo para la red neuronal, porque el error de salida de la red
neuronal va decreciendo; 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

91

(a) Rampa

(b) U-V

(c) CTRNN

Figura 5.8: Salidas de red neuronal para entradas: (a) Rampa (b) U-V (c) CTRNN

92

(a) Con sobreentrenamiento (Error = 0.131)

(b) Sin sobreentrenamiento (Error = 0.417)

Figura 5.9: Efecto de overfitting en trayectorias.


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
pero en las transiciones de un modo de caminado a otro varan 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.

93

5.2

Propuesta de modelo generador de modos de caminado

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
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, caracterstica 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 caractersticas 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

94
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 caractersticas antes citadas,
se tiene un sistema interconectado y distribuido cuya arquitectura se puede observar en
la Figura 5.10

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 emplearon 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

95
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 iteraciones 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,


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 se
nales
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 se


nales mostradas en la Figura5.11, se obtuvo
un conjunto de salidas que soportan la hipotesis del uso de referencias de fase discontinuas.

96
Tales salidas son mostradas en la Figura 5.12

Figura 5.12: Vectores de salida vs tiempo.

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 se
nales 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.

Se puede observar que los salidas del ACPO para cada pata se mantienen entorno
a un atractor cclico de radio proximo al valor de referencia (ro = 1). Sin embargo se
aprecia una diferencia en la amplitud de dichos vectores; en el caso especfico de la pata
1 el modulo del vector va desde un mnimo 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

97

(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.

98
vector de estados | q1 |.

Figura 5.14: Modulo de q1 vs tiempo.

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 efect
ua 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 iniciales de las trayectorias cuando el sistema comienza a estabilizarse en un comportamiento
oscilatorio.

Incorporaci
on 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

99
de tiempo durante el cual la pata se encuentra apoyada y el perodo 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
Ecuaciones 5.2.1.

(
c(x, ) =

x
2

x
2(1)

1
2

x>

La curva resultante se muestra en la Figura 5.15.

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

ic = c(i , )

c
qx = ri cos(ic )

qyc = ri sen(ic )

donde qic = [qxc , qyc ] es el vector de estado resultante para la pata i tras la compan-

100

Figura 5.15: Grafica de curva de compansion c(x, ).

sion.

5.2.2

Transformaci
on espacial con red neuronal feedforward

El subsistema de transformacion espacial fue implementado mediante una red neural 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 conformada 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

101
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 n
umero 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.

Figura 5.16: Estructura de la red neuronal.

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

102
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 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 neurona por iteracion.
Funcion de error: Error Cuadratico Medio (ECM) para aproximacion de funciones.
Tasa de aprendizaje: 0.01
N
umero 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 n
umero de iteraciones maxima.

El esquema de entrenamiento se muestra en la Figura 5.17.

La implementacion aqu empleada incluye un factor de desplazamiento (F D), 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 polgono de apoyo (cp). Un valor de F D = 0 implica que no existe desplazamiento alguno de cg en direccion de cp; mientras que para F D = 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 F D se efectuaron de manera

103

Figura 5.17: Esquema de entrenamiento de red neuronal.

104
ponderada separada para cada eje, siendo mayor el efecto sobre el eje perpendicular al
desplazamiento (X). La razon de ello se debe a que durante la locomocion en linea recta
(eje Y ) el centro del polgono de apoyo vara 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 cuadr
upeda.

5.2.3

Descripci
on de experimento con plataforma cuadr
upeda

En este apartado se describe las pruebas experimentales efectuadas para evaluar


el desempe
no 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 inclua 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 cuadr


upedo fabricado por Lynxmotion,
previamente utilizado como modelo mecanico en la seccion 5.1.3. Las caractersticas principales del robot cuadr
upedo 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.

105
Los servomotores del robot fueron controlados por enlace serial utilizando la tarjeta
controladora SSC-32, tambien de Lynxmotion. A fin de complementar las observaciones
durante la evaluacion del desempe
no del generador de modos de caminado, se procedio a
instrumentar el robot cuadr
upedo. 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 FreescaleTM MMA1260D, eje Z. Rango 1,5g.


1 acelerometro FreescaleTM MMA6161, 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 acelerometro 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 se
nales 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 contena 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,

106
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.

Figura 5.18: Ubicacion de sensores sobre la plataforma robotica.

5.2.4

Resultados experimentales y an
alisis

La primera prueba efectuada fue la generacion de perfiles de trayectorias mediante


redes neuronales. Se entreno un total de 5 redes, con diferentes n
umeros de neuronas
en la capa escondida, as como diferentes n
umeros 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.

107

Figura 5.19: Trayectoria de ejemplo para entrenamiento.

Las redes neuronales fueron entrenadas con las configuraciones de n


umero de neuronas 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
el ACPO se mantuvo con las fases correspondientes al modo de locomocion caminado (ver
Tabla 4.6(a)).
NN1
NN2
NN3
NN4
NN5

K No de iteraciones
6
2 millones
8
2 millones
18
2 millones
25
2 millones
25
8 millones

Tabla 5.1: Redes neuronales entrenadas


Las salidas obtenidas para cada una de las redes neuronales al aplicarles los vectores 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 trayectorias 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

108
puede observar que el movimiento principal de locomocion para las patas se efect
ua 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.

(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.

109
En la Figura 5.20 se puede observar que las trayectorias obtenidas mediante las
redes 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 varan para las distintas redes neuronales, llegando 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 mnimo 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 durante 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.

110
Tambien es posible apreciar la incidencia del n
umero de neuronas en el n
umero de
oscilaciones. Se puede observar que conforme aumenta el n
umero de neuronas (K), hay
mayor cantidad de oscilaciones sobre la trayectoria de caminado. Otro fenomeno observable en las graficas de trayectoria es el impacto del n
umero 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 u
nica 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 n
umero de iteraciones de entrenamiento se traducan 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
aceleracion que se muestran en las Figuras 5.2.4,5.2.4,5.2.4 y 5.2.4 . Cabe destacar que
consecuencia 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.

111

(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 marginalmente estable, es decir que cuando se aumentaba el valor de frecuencia de oscilacion del
ACPO () lo que incrementaba la velocidad de paso, el robot era inestable. Los puntos
de inestabilidad corresponden a picos en los valores de aceleraciones identificados como
A.

112

(a) Acelerometros en ejes X-Y

(b) Acelerometros en eje Z

Figura 5.22: Para la secuencia obtenida con esta red neuronal, el comportamiento observado durante la locomocion fue muy semejante al correspondiente a la red NN1. Tambien
era marginalmente estable, y se pudo observar que cualitativamente las vibraciones en la
plataforma robotica eran mas perceptibles.

113

(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 no
era absolutamente estable, por el contrario, el caminado del robot era mucho mas inestable

que en para las dos redes anteriores. Esto


se puede apreciar en las graficas de aceleracion en
el plano X-Y, en las cuales se observan mayor cantidad de picos de aceleraciones asociados
con movimientos mas bruscos de la plataforma.

114

(a) Acelerometros en ejes X-Y

(b) Acelerometros en eje Z

Figura 5.24: Para esta u


ltima red neuronal se obtuvo un caminado apenas mejor que para
las 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 de
menor amplitud, como se indico oportunamente al presentar las graficas 5.20

115

Principales aportes, conclusiones y lineas de


investigaci
on futuras

En este breve captulo se presentan los principales aportes en el area de modelado


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 u
ltimo, 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 modelado del sistema de locomocion en robots cuadr
upedos, 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 presentan los principales aportes efectuados en el area de locomocion en robots cuadr
upedos
utilizando modelos neurofisiologicos.

116
Se realizo una revision del estado del arte en modelos neurofisiologicos del sistema locomotor en distintos robots con patas, tales como cuadr
upedos y hexapodos,
as como tambien en robots con otras estructuras mecanicas de locomocion como serpientes. 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 permaneca 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 vectores de estado de los osciladores acoplados.

117
Se propuso y se evaluo la utilizacion de redes neuronales feedforward para dos funciones: la transicion entre distintos perfiles de trayectorias para las patas, y para la
transformacion de espacio de las referencias temporales en referencias espaciales.
Fue posible incorporar en un modelo basado en principios neurofisiologicos el parametro 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 se
nales 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 especfica 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 explcita 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.

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

118
una 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 cuadr


upedos mediante el uso
de principios neurofisiologicos; este enfoque puede ser extendido a otros tipos de
maquinas caminantes sin necesidad de efectuar modificaciones importantes a nivel
de la arquitectura del modelo.
La separacion del problema de locomocion en dos problemas, como son la coordinacion de las relaciones de fase entre las patas y el movimiento controlado de las
articulaciones de cada pata, simplifica notablemente el dise
no 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
sntesis 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 aumenta el numero de patas en la plataforma robotica, o el n
umero de articulaciones
actuadas en cada pata.
La sntesis 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 valida como secuencia
de caminado.
El uso de AGs para la sntesis de una CTRNN oscilatoria a utilizar como sistema
de referencia temporal resulta poco practico ya que no provee un metodo analtico
para el control directo del comportamiento temporal del sistema de caminado.

119
El uso de una red neurona tipo feedforward en el modelo aqu propuesto para locomocion, exhibe el problema de sobreentrenamiento asociado con el entrenamiento
de la misma mediante backpropagation. 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

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

120
de una metodologa que permita entrenar las redes recurrentes utilizando como
ejemplos las trayectorias espaciales que se deseen como referencias de angulos para
las articulaciones 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 estructurados, debe estudiarse el dise
no 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 sensores 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
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 trayectorias, se recomienda evaluar el impacto de otras tecnicas de entrenamiento a fin de
evitar la ocurrencia de sobreentrenamiento, el cual incide directamente sobre la estabilidad de la plataforma. Dicha evaluacion debe contemplar el estudio del impacto
del n
umero de elementos en la red neuronal en aspectos como estabilidad, vibraciones y factor de apoyo del caminado resultante. Se debe estudiar la implementacion

121
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
estudiar el desempe
no del mismo utilizando la informacion de modulo y angulo proveniente 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
de estabilidad estatica de la plataforma. Dicho factor de desplazamiento puede ser
incluido durante el proceso de sntesis de la red neuronal, o a nivel de las salidas de
referencia para la posicion del elemento final de las patas.

122

Referencias Bibliogr
aficas

[1] D. J. Todd. Walking Machines. An Introduction To Legged Robotics. Kogan Page


Ltd., Pentonville Road, London N1 9JN, 1st edition, 1985.
[2] Hector Montes Franceschi. An
alisis, Dise
no y Evaluaci
on de Estrategias de Control
de Fuerza en Robots Caminantes. PhD thesis, Universidad Complutense de Madrid,
2005.
[3] Werner M. Kistler Wulfram Gerstner. Spiking Neuron Models. Single Neurons, Populations, Plasticity. Cambridge University Press, August 2002.
[4] Aude Billard and Auke Jan Ijspeert. Biologically inspired neural controllers for motor
control in a quadruped robot. In IJCNN2000. International Joint Conference on
Neural Network, July 2000.
[5] A. Billard and A.J. Ijspeert. Biologically inspired neural controllers for motor control
in a quadruped robot. In Proceedings of the IEEE-INNS-ENNS International Joint
Conference on Neural Networks IJCNN2000, volume VI, pages 637641. IEEE
Computer Society, 2000.
[6] Jorg Conradt and Paulina Varshavskaya. Distributed central pattern generator control. Technical report, ETH / University Zurich, 2003.
[7] J. Schmitz. Biologically inspired controller for hexapod walking: Simple solutions by
exploiting physical properties. Biol. Bulletin, pages 195200, April 2001.
[8] Lucia S. Simo M. Anthony Lewis. Elegant stepping: A model of visually triggered
gait adaptation. Connection Science, 11, Decembre 1999.
[9] M. Anthony Lewis. Perception driven robot locomotion. Journal Robot Society of
Japan, pages 5156, April 2002.
[10] H. Kimura Y. Fukuoka and A. Cohen. Adaptive dynamic walking of a quadruped
robot on irregular terrain based on biological concepts. International Journal of
Robotics Research, 22(3-4):187202, March-April 2003.

123
[11] Hiroshi Kimura, Yasuhiro Fukuoka, Y. Hada, and K. Takase. Three-dimensional
adaptive dynamic walking of a quadruped - rolling motion feedback to cpgs controlling pitching motion. In Proceedings of the 2002 IEEE International Conference on
Robotics and Automation, ICRA 2002., pages 22282233, 2002.
[12] J. E Bares and W. L. Whittaker. Configuration of autonomous walkers for extreme
terrain. The International Journal of Robotics Reserach, 12(6):621649, 1993.
[13] Elena Garcia and Pablo Gonzalez de Santos. Adaptive periodic straight forward/backward gait of a quadruped. In 13th International Symposium on Measurement and Control in Robotics, Madrid, Spain, December 2003.
[14] S. Talebi, Ioannis Poulakakis, Evangelos Papadopoulos, and Martin Buehler. Quadruped robot running with a bounding gait. In ISER, pages 281289, 2000.
[15] John C. Gallagher Hillel J. Chiel, Randall D. Beer. Evolution and analysis of model
cpgs for walking: I. dynamical modules. Journal of Computational Neuroscience,
pages 99118, 1999.
[16] John C. Gallagher Hillel J. Chiel, Randall D. Beer. Evolution and analysis of model
cpgs forwalking: Ii. general principles and individual variability. Journal of Computational Neuroscience, pages 119147, 1999.
[17] S. Amari. Characteristic of the random nets of analog neuron-like elements. IEEE
Transaction on System, Man and Cybernetics, SMC-2:643657, 1972.
[18] Buchli J. and Auke Jan Ijspeert. Distributed central pattern generator model for
robotics application based on phase sensitivity analysis. In Proceedings of 1st International Workshop Bio-ADIT, 2004.
[19] J. Buchli and A.J. Ijspeert. Distributed central pattern generator model for robotics application based on phase sensitivity analysis. In A.J. Ijspeert, M. Murata,
and N. Wakamiya, editors, Biologically Inspired Approaches to Advanced Information
Technology: First International Workshop, BioADIT 2004, volume 3141 of Lecture
Notes in Computer Science, pages 333349. Springer Verlag Berlin Heidelberg, 2004.
[20] R. M. Ghigliazza and P. Holmes. A minimal model of a central pattern generator
and motoneurons for insect locomotion. In Press, April 2004.
[21] R. M. Ghigliazza and P. Holmes. A minimal models of bursting neurons: The effects of
multiple 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 dante
ii walking robot. IEEE International Conference on Intelligent Robots and Systems
(IROS), August 1995.

124
[23] Juan Carlos Grieco Silva. Robots escaladores. Consideraciones acerca del dise
no,
estabilidad y estrategias de control. PhD thesis, Universidad de Vallavolid, Abril
1997.
[24] A. L. Hodgkin and A. F. Huxley. A quantitative description of ion currents and its
applications to conduction and excitation in nerve membranes. Journal of Physiology,
117:500544, 1952.
[25] Eve Marder. Moving rythms. Nature, 410:755, Abril 2001.
[26] Marder E., Bucher D., Schulz D., and Taylor A. Invertebrate central pattern generator
moves along. Current Biology, 15:685699 (R), September 2005.
[27] Arthur D. Kuo. The relative roles of feedforward and feedback in the control of
rhythmic movements. Motor Control, 6:129145, 2002.
[28] A.J. Ijspeert and J. Kodjabachian. Evolution and development of a central pattern
generator for the swimming of a lamprey. Artificial Life, 5(3):247269, 1999.
[29] Pablo Zegers and Malur K. Sundareshan. Trajectory generation and modulation
using dynamic neural networks. 2003.
[30] Pablo Zegers and M.K. Sundareshan. Periodic motions, mapping ordered sequences, and training dynamic neural networks to generate continuos and discontinuos
trajectories. In IJCNN 2000, Como, Italy, 2000.

[31] K. Funahashi and Y.Nakamura.


Approximation of dynamical systems by continuous
time recurrent neural networks. Neural Networks, 6:801806, 1993.
[32] Valentin A. Nepomnyashchikh and Konstantin A. Podgornyj. Emergence of adaptive
searching rules from the dynamics of a simple nonlinear system. Adaptive Behaviour,
11(4):245265, 2003.
[33] Artur M. Arsenio. Tuning of neural oscillators for the design of rhythmic motions.
In ICRA, pages 18881893, 2000.
[34] J. Ames. Design methods for pattern generation circuits. Masters thesis, Case
Western Reserve, 2003.
[35] Ezequiel Di Paolo. Evolving robust robots using homeostatic oscillators. Technical
report, University of Sussex, 2002.
[36] Rainer W. Paine and Jun Tani. Evolved motor primitives and sequences in a hierarchical recurrent neural network. In GECCO (1), pages 603614, 2004.
[37] Alan Solidum M. Anthony Lewis, Andrew H. Fagg. Genetic programming approach
to the construction of a neural network for control of a walking robot. IROS92,
pages 26182623, 1992.

125
[38] M. Lewis, A. Fagg, and G. Bekey. Genetic algorithms for gait synthesis in a hexapod
robot, 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 Conference
on Artificial Life ECAL 2005, Lecture Notes in Artificial Intelligence, pages 210220.
Springer Verlag, 2005.
[40] Susuki R. Nishii J. Oscillatory network model which learns a rhytmic pattern of an
external signal. In IFAC Symposium, pages 501502, 1994.
[41] F-S Tsung. Modeling Dynamical Systems with Recurrent Neural Networks. PhD
thesis, Univ. of California, San Diego, 1994.
[42] Colin Molter. Chaos in small recurrent neural networks : theoretical and practical
studies. Technical report, Univ. Libre de Bruxelles., 2004.
[43] K. I. Funahashi. On the approximate realization of continuous mapping by neural
networks. Neural Networks, 2:978982, 1989.
[44] H. White K. Hornik, M. Stinchcombe. Multilayer feedforward networks are universal
function approximators. Neural Networks, 2:359366, 1989.

You might also like