• Nenhum resultado encontrado

Auto-organização e aprendizagem por demonstração na determinação de marcha robótica

N/A
N/A
Protected

Academic year: 2021

Share "Auto-organização e aprendizagem por demonstração na determinação de marcha robótica"

Copied!
152
0
0

Texto

(1)

Pós-Graduação em Ciência da Computação

“Auto-organização e Aprendizagem por

Demonstração na Determinação de Marcha

Robótica”

Por

Orivaldo Vieira de Santana Júnior

Tese de Doutorado

Universidade Federal de Pernambuco posgraduacao@cin.ufpe.br www.cin.ufpe.br/~posgraduacao

(2)

CENTRO DE INFORMÁTICA

PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO

ORIVALDO VIEIRA DE SANTANA JÚNIOR

“Auto-organização e Aprendizagem por Demonstração na

Determinação de Marcha Robótica"

ESTE TRABALHO FOI APRESENTADO À PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO DO CENTRO DE INFORMÁTICA DA UNIVERSIDADE FEDERAL DE PERNAMBUCO COMO REQUISITO PARCIAL PARA OBTENÇÃO DO GRAU DE MESTRE EM CIÊNCIA DA COMPUTAÇÃO.

ORIENTADOR: Aluizio Fausto Ribeiro Araújo

Recife 2015

(3)

Catalogação na fonte

Bibliotecária Alice Maria dos Santos Costa CRB4-711

S232a Santana Júnior, Orivaldo Vieira de.

Auto-organização e aprendizagem por demonstração na determinação de marcha robótica / Orivaldo Vieira de Santana Júnior. – Recife: O Autor, 2015.

151 f.: il., fig., tab.

Orientador: Aluizio Fausto Ribeiro Araújo.

Tese (Doutorado) – Universidade Federal de Pernambuco. CIN. Ciência da Computação, 2015.

Inclui referências e apêndices.

1. Inteligência artificial. 2. Redes neurais. 3. Mapas auto-organizáveis. 4. Robôs móveis. I. Araújo, Aluizio Fausto Ribeiro (Orientador). II. Titulo.

(4)

Federal de Pernambuco, sob o título “Auto-organização e Aprendizagem por Demonstração na Determinação de Marcha Robótica” orientada pelo Prof. Aluizio Fausto Ribeiro Araújo e aprovada pela Banca Examinadora formada pelos professores:

__________________________________________ Profa. Judith Kelner

Centro de Informática / UFPE

___________________________________________ Prof. Germano Crispim Vasconcelos

Centro de Informática / UFPE

___________________________________________ Prof. João Henrique Ranhel Ribeiro

Departamento de Eletrônica e Sistemas / UFPE ___________________________________________ Prof. Felipe Maia Galvão França

Programa de Engenharia de Sistemas e Computação / UFRJ

____________________________________________ Profa. Anna Helena Reali Costa

Departamento de Engenharia de Computação e Sistemas Digitais / USP

Visto e permitida a impressão. Recife, 23 de abril de 2015.

___________________________________________________ Profa. Edna Natividade da Silva Barros

Coordenadora da Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco.

(5)

Dedico esta tese a todos os meus familiares, amigos e professores que me deram o apoio necessário para chegar até aqui.

(6)

AGRADECIMENTOS

Agradeço ao meu orientador, Aluízio Araújo, pela presença constante, pelo apoio, pelo incentivo, por ter sido de fato um guia em todos os momentos da execução deste trabalho.

A minha mãe, Girlêde Santana, por ter me mostrado a importância da dedicação, do compromisso e da seriedade. Ao meu pai, Orivaldo Santana, por ter dado início ao meu processo de formação educacional. A minha irmã, Sureia, por fazer parte da minha vida e do meu processo de formação como pessoa.

A minha futura esposa, Jeanne, pelo companheirismo em todos as fases do doutorado. A minha nova família em Pernambuco, João Gouveia, Bernadete, Juanna, Júlia, todos os Britos e Gouveias que me deram apoio durante esta jornada.

Aos meus tios, José Maria, Orlando, Osvaldino, Olderico, aos meus primos Fabrício e Aise Anne, aos membros da minha família aqui não citados por estarem dispostos a ajudar em qualquer momento.

Aos amigos de Pernambuco, André Tiba, Hansenclever, Flávia, Alex, Nilton e todos os outros aqui não citados, pela horas compartilhadas de trabalho e diversão.

Aos professores do Centro de Informática que contribuíram para minha formação. A toda minha família e amigos que direta ou indiretamente contribuíram para a realização deste trabalho.

(7)

Existem muitas hipóteses em ciência que estão erradas. Isso é perfeitamente aceitável, eles são a abertura para achar as que estão certas.

(8)

RESUMO

Esta Tese apresenta uma abordagem para o problema de locomoção de robôs com patas. Esta abordagem tem como base aprendizagem, planejamento e controle da movimentação dos membro inferiores para deslocar um robô de um local para outro. O sistema construído com a abordagem proposta produz padrões de saída semelhantes àqueles gerados por um Gerador Central de Padrões (CPG) para controlar as articulações de um robô. Os algoritmos propostos são capazes de, com um comando simples, mudar a velocidade de deslocamento do robô e de gerar sinais sincronizados e rítmicos para as articulações. O processo de aprendizagem da movimentação dos membros inferiores pode ser aplicado em diferentes robôs na aprendizagem de diversos modos de locomoção. Neste processo não é necessário determinar um conjunto de equações e seus parâmetros para cada robô. A informação necessária para a aprendizagem da movimentação das pernas de um robô é extraída dos dados observados e organizada em estados. O controle das articulações do robô é realizado com dados oriundos do conteúdo dos estados de uma trajetória através de Controle Guiado por Dados (DDC). Os dados contidos nos estados devem informar direta ou indiretamente a posição angular desejada para cada articulação. O agente aprendiz, implementado com a abordagem proposta, gera uma representação interna da movimentação dos membros através de um processo de auto-organização na qual conexões determinam a transição entre estados. Estas conexões são criadas entre estados próximos com o objetivo de gerar uma trajetória cíclica. Dois Mapas Auto-organizáveis (SOMs) de topologia variante no tempo foram implementados para o processo de aprendizagem da abordagem proposta: Gerador de Trajetória de Estados Auto-Organizável (SOM-STG) e Gerador de Trajetória de Estados Cíclica Auto-Organizável (SOM-CSTG). O mapa SOM-CSTG é uma evolução de SOM-STG e surgiu para superar algumas limitações do primeiro. O objetivo destes mapas é aprender posturas e conectá-las para construir trajetórias usadas para controlar a marcha do robô. A aquisição de dados de treinamento das redes é baseada em aprendizagem por demonstração, na qual, os estados (posturas) são aprendidos a partir de um agente demonstrador. Estes mapas são capazes de aprender com dados coletados a partir do sinal de saída de um CPG, de sensores sobre um agente demonstrador ou de observações externas ao agente demonstrador, como por imagens de vídeo. Uma trajetória cíclica de estados gerada por estes mapas, quando executada conduz o movimento dos membros do robô de maneira semelhante aos padrões de movimentação presentes nos dados de treinamento (marchas). Os testes de aprendizagem foram realizados com dados de um robô simulado de seis patas, de um animal de quatro patas e dados da locomoção humana. Os testes de planejamento e controle de movimentos foram realizados com um robô simulado de seis patas e um robô simulado de quatro patas.

(9)

Palavras-chave: Rede Neural, Mapa Auto-Organizável, Marcha, Robô com Pernas, Gerador de Trajetória de Estados e Gerador Central de Padrões.

(10)

ABSTRACT

This Thesis presents an approach to legged robot locomotion problem. This approach is based on learning, planning and control of the movement of the lower member to move a robot from one location to another. The system built with the proposed approach produces output patterns similar to those generated by Central Pattern Generator (CPG) for controlling the joints of a robot. The proposed algorithms are able to, with a simple command, change displacement speed of the robot and to generate synchronizing signals and rhythmic to the joints. The learning process of the movement for inferior members can be applied to various robots in learning of many gaits. In this process it is not necessary to determine a set of equations and parameters for each robot. The substantial information for learning movement of the legs of a robot is extracted from observed data and organized in states. The control of the robot joints is carried out data from the content of the states of a trajectory through Data Driven Control (DDC). The data contained in the states should inform directly or indirectly the desired angular position for each joint. The learner agent, implemented with the proposed approach, generates an internal representation of the movement of members through a process of self-organization in which connections determine the transition between states. These connections are created between nearby states in order to generate a cyclic trajectory. Two self-organizing maps (SOMs) with a time-varying structure were implemented to the learning process of the proposed approach: Self-Organizing Map with State Trajectory Generator (SOM-STG) and Self-Organizing Map with Cyclic State Trajectory Generator (SOM-CSTG). SOM-CSTG is an evolution of SOM-STG and appeared to overcome some limitations of the first one. The purpose of these maps is learn postures and connects them to build paths used to control the motion of the robot. The acquirement of training data for the networks is based on learning by demonstration, in which the states (postures) are learned from a demonstrator agent. These maps are able to learning from data collected from the output signal of a CPG, of sensor on a demonstrator agent or external observations to the demonstrator agent such as video images. A cyclic trajectory of states generated by these maps, when executed leads the movement of the robot members so similar to the movement patterns present in the training data (gaits). The learning tests were performed with simulated data from a six-legged robot, a four-legged animal and data of human locomotion. Planning and control movements tests were performed with a simulated six-legged robot and a simulated four-legged robot.

Keywords: Neural Network, Self-Organizing Map, Gait, Legged Robot, State Trajectory

(11)

LISTA DE FIGURAS

1.1 Rede com topologia cíclica ideal. . . 19

3.1 Robô móvel Sojourner . . . 31

3.2 Robô caminhante projetado pela ©Plustech. . . 32

3.3 CPG da salamandra. . . 35

3.4 Uma CNN de dimensão MxN . . . 39

3.5 Célula autônoma da CNN . . . 40

4.1 Exemplo de uma rede SOM-STG. . . 49

4.2 Processo de treinamento de SOM-STG. . . 50

5.1 Diagrama de um controlador PID (Obtido na Wikipedia). . . 66

6.1 Os graus de liberdade da perna do robô hexápode. . . 70

6.2 Imagem do simulador Gazebo com o robô de quatro patas. . . 71

6.3 Dados artificiais simples. . . 72

6.4 Gráfico para taxa de geração de redes cíclicas. . . 73

6.5 Uma rede neural criada por SOM-STG para o modo de locomoção rápido. . . 76

6.6 Crecimento típico da quantidade de nodos de SOM-STG. . . 77

6.7 Trajetória aprendida por SOM-STG com os dados obtidos de osciladores CNN. . . 78

6.8 Sequência de ângulos da articulação α. . . 80

6.9 Imagens extraídas do vídeo do cachorro caminhando. . . 81

6.10 Experimento com dados reais de um animal. . . 84

6.11 Base de dados contendo os ângulos do lado esquerdo do cachorro real. . . 85

6.12 Sequência de ângulos para as articulações β . . . 86

6.13 Sequência de ângulos α para as transições entre marchas. . . 88

6.14 Esquema de controle para configuração circuito fechado. . . 88

6.15 Simulação com robô de seis patas. . . 90

6.16 Experimento com malha aberta e malha fechada. . . 91

6.17 Avaliação da criação de trajetórias contínuas . . . 92

6.18 Base de dados para a marcha caminhada. . . 93

6.19 Base de dados para a marcha caminhada com passo largo. . . 94

6.20 Base de dados para a marcha caminhada com passo muito largo. . . 95

6.21 Variações das trajetórias generalizadas por SOM-CSTG. . . 96

6.22 Comparação entre a marcha M2 (cor clara) e a melhor trajetória intermediária (cor escura) gerada por SOM-CSTG. . . 98

(12)

6.25 Variações entre o modo médio e rápido para o ângulo α. . . 101 6.26 Variações entre o modo médio e rápido para o ângulo β . . . 102

(13)

LISTA DE TABELAS

3.1 Template A . . . 40

6.1 Experimentos com o ajuste manual do Limiar de Atividade. . . 74

6.2 Setup experimental para dados com ruído. . . 79

6.3 Configuração de parâmetros de SOM-CSTG para dados com ruído. . . 80

6.4 Setup experimental para as bases de dados do vídeo. . . 83

6.5 Distâncias DTW entre os dados reais para a base D1. . . 83

6.6 Distâncias DTW entre os dados reais para a base D2. . . 83

6.7 Avaliação da criação de trajetórias continuas. . . 92

(14)

LISTA DE ACRÔNIMOS

CNN Rede Neural Celular . . . 17

CPG Gerador Central de Padrões. . . .16

DDC Controle Guiado por Dados . . . 18

DTW Dynamic Time Warping. . . 20

LbD Aprendizagem por Demonstração . . . 18

MBC Controle Baseado em Modelos. . . .43

PID Proporcional Integral Derivativo . . . 22

PSOM SOM Parametrizada . . . 20

SOM Mapa Auto-Organizável. . . .20

SOM-CSTG Gerador de Trajetória de Estados Cíclica Auto-Organizável . . . 20

SOM-STG Gerador de Trajetória de Estados Auto-Organizável . . . 18

SOM-TSP SOM para o Problema do Caixeiro Viajante . . . 20

(15)

SUMÁRIO

1 Introdução 16

2 SOM para o Planejamento e Controle em Robótica 24

3 Planejamento e Controle de Marcha Robótica (PCMR) 30 3.1 Marcha Robótica . . . 30 3.2 CPGs e Redes Neurais . . . 33 3.2.1 CPG Biologicamente Inspirado . . . 34 3.2.2 CPG Baseado em CNN . . . 38

3.3 Trajetória de Estados e Aprendizagem por Demonstração . . . 42

3.4 Controle de Locomoção com DDC . . . 43

3.4.1 DDC em um Bípede Simulado . . . 45

3.5 Discussão . . . 46

4 SOM-STG 47 4.1 Apresentação de SOM-STG . . . 47

4.2 Processo de treinamento do SOM-STG . . . 49

4.2.1 Fase de Aprendizagem de Marcha . . . 50

4.2.2 Fase de Aprendizagem de Mudança de Marcha . . . 53

4.3 Limitações e Possíveis Avanços . . . 54

4.4 Variações de SOMs . . . 56

4.4.1 Mapas com Interpolação . . . 56

4.4.2 Parameterised SOM(PSOM) . . . 57 5 SOM-CSTG 61 5.1 Aprendizagem de Marcha . . . 62 5.2 Gerenciamento de Marcha . . . 65 5.3 Controle de Postura . . . 67 5.4 Discussão . . . 68 6 Experimentos 70 6.1 Dados Artificiais Simples . . . 72

6.2 Dados Artificiais de um CPG . . . 76

6.2.1 Dados Ruidosos . . . 79

(16)

6.4 Avaliação de Aprendizagem com Sensores Sobre o Corpo . . . 85

6.4.1 Aprendizagem de Marcha . . . 86

6.4.2 Transição entre Marchas . . . 87

6.5 Avaliação de um Esquema DDC . . . 88

6.6 Avaliação de Aprendizagem Intra-Trajetória . . . 90

6.7 Avaliação de Aprendizagem Inter-Trajetórias . . . 93

6.7.1 Dados da Locomoção Humana . . . 93

6.7.2 Dados do CPG-CNN . . . 97

6.8 Discussão . . . 103

7 Considerações Finais 104 7.1 Contribuições e Análise da Modelagem Proposta . . . 104

7.2 Contribuição para a Ciência . . . 105

7.2.1 Trabalho Publicado . . . 106

7.3 Limitações da Abordagem . . . 106

7.4 Trabalhos Futuros . . . 106

REFERÊNCIAS 108 Apêndice 120 A SOM e Suas Variações 121 A.1 SOM . . . 121

A.2 Estrutura Variante no Tempo . . . 123

A.3 Sequências Espaço-Temporais . . . 131

A.4 Regra de Aprendizagem . . . 134

A.5 Detecção de Contorno . . . 136

A.6 Capacidade de Interpolação . . . 137

A.6.1 Mapas com Interpolação . . . 137

A.6.2 Parameterised SOM(PSOM) . . . 144

A.7 Mapas para Dados Contínuos . . . 147

(17)

16 16 16

1

Introdução

A locomoção com patas, presente em muitos animais, pode ser caracterizada como ágil, rápida e eficiente, capaz de levar um animal para diferentes ambientes passando por vários tipos de terrenos. Este tipo de locomoção, em variados ambientes, pode ser interessante para a locomoção de robôs. Duas vantagens do uso de patas em relação ao uso de rodas em robôs são a adaptabilidade e a capacidade de manobra em terrenos irregulares. Além disso, nem todas as patas precisam estar em contato com o chão para manter o equilíbrio do corpo do robô durante a locomoção, apesar das irregularidades do terreno. Cada pata deve ser capaz de suportar parte do peso do robô e quanto mais graus de liberdade em cada pata maior a sua capacidade de manobra (BEKEY,2005).

Cada movimento de um passo de uma perna pode ser caracterizado por duas fases: uma fase de apoio e outra de balanço. Durante a fase de balanço, a ponta do membro deixa o chão e movimenta-se livremente no ar ao longo da direção de locomoção, em seguida desce e alcança o chão. Na fase de apoio, a extremidade do membro está o tempo todo em contato com o chão. No decorrer da execução da marcha, algumas patas estarão na fase de apoio e outras na fase de balanço. As pernas de apoio conduzem o corpo para frente ao mesmo tempo que as outras pernas realizam o movimento de balanço sincronizadamente (WANG et al.,2013). Um passo pode ser entendido como uma sequência cíclica de posturas de uma perna, sendo que cada marcha possui uma sequência própria de movimentos das pernas. De maneira resumida, uma marcha pode ser descrita como os movimentos coordenados das pernas para levar o corpo de um lugar para outro. Assim, uma marcha dita a velocidade e a direção do movimento do corpo do animal (BEKEY,

2005).

As metodologias clássicas para tratar da locomoção de robôs com patas levam em consideração um importante conceito da neurobiologia: o Gerador Central de Padrões (CPG)1

(BUCHLI; IJSPEERT, 2008). O CPG biológico de um animal é constituído de osciladores neurais produtores de sinais elétricos enviados para ativar os músculos das patas gerando o deslocamento do corpo do animal. Estes sinais modificam o ângulo de cada articulação das patas de modo sincronizado e gerando movimentos cíclicos. Em animais vertebrados, o CPG

(18)

está localizado na medula espinhal. Dependendo do padrão de ativação dos músculos, um CPG é capaz de determinar uma marcha específica e realizar a transição entre tipos diferentes de marchas (IJSPEERT,2008;HOLMES et al.,2006;BEKEY,2005).

Na linha do CPG, por exemplo,IJSPEERT et al.(2007) propuseram um modelo baseado em osciladores neurais eARENA et al.(2004) propuseram um outro modelo baseado em Rede Neural Celular (CNN). Os CPGs são aplicados em muitos tipos de robôs, como por exemplo, para o controle de locomoção de robô hexápode (CHEN et al., 2012), de robô quadrupede (SANTOS; MATOS,2011) e de robô bípede (WANG et al.,2012). Existem abordagens para aprendizagem de diferentes marchas para diferentes morfologias de robôs, como é o caso de LI; LOWE; ZIEMKE (2014), que combina aprendizagem por reforço e CPGs. Existem estratégias alternativas à modelagem de CPGs com equações diferencias, mas que não levam em

consideração mecanismos de aprendizagem, como é o caso deYANG; FRANÇA(2003) que

propõe um modelo discreto generalizado para a produção de diferentes marchas pré-programadas intrinsecamente em CPGs. Entretanto, esta Tese ficará restrita ao estudo das limitações de CPGs e na proposição de uma abordagem baseada em aprendizagem por demonstração e mapas auto-organizáveis.

Normalmente, um CPG é modelado matematicamente por equações diferenciais (YU

et al., 2014). Este tipo de modelagem requer ajustes de parâmetros nas equações ou até a modificação de equações para produzir um padrão locomotor específico. Geralmente o ajuste é realizado por tentativa e erro ou aplicando métodos de otimização e aprendizagem. Logo, o ajuste de parâmetros de um CPG é uma tarefa bastante custosa e não trivial, principalmente pela necessidade de encontrar um padrão de saída que seja capaz de gerar a sincronização dos movimentos das articulações (RIGHETTI; BUCHLI; IJSPEERT,2009).

Esta Tese tem como principal objetivo apresentar uma abordagem como solução para o problema de planejamento de movimentos dos membros inferiores de um robô durante a sua locomoção. Os objetivos secundários são:

 Apresentar uma alternativa que não possua as dificuldades presentes em modelagens

de CPGs com equações diferenciais;

 Ter como base a aprendizagem e o planejamento da movimentação dos membros

inferiores para deslocar um robô de um local para outro;

 Produzir os mesmos padrões de saída semelhantes àqueles gerados por um CPG para

controlar as articulações de um robô;

 Ser capaz de, com comando simples, mudar a velocidade de deslocamento do robô e

de gerar sinais sincronizados e rítmicos para as articulações.

A abordagem proposta captura informações necessárias para determinar as posturas da locomoção organizando-as em estados. Cada postura descreve em um instante de tempo a posição de todas as articulações dos membros do robô envolvidos na locomoção. Na etapa

(19)

18 de aprendizagem, os estados mais relevantes são aprendidos e transformados em nodos, em seguida, um processo de auto-organização cria conexões entre os nodos mais semelhantes. Ao final da etapa de aprendizagem, a estrutura topológica da rede gerada deve ser capaz de produzir trajetórias cíclicas de estados. A construção de trajetórias cíclicas é fundamental para abordagem proposta, pois a locomoção do robô é realizada através da execução de uma trajetória cíclica, onde comandos para posicionar as articulações são gerados a partir dos estados presentes na trajetória. A execução de um ciclo da trajetória está associada a realização de um passo do robô, assim a repetição cíclica da trajetória faz com que o robô realize vários passos em sequência.

A primeira versão desta abordagem, chamada de Gerador de Trajetória de Estados com

Interconexões (STRAGIC)2, foi inicialmente proposta porSANTANA JR; ARAUJO (2010).

Essa primeira versão era capaz de aprender sinais oscilatórios produzidos por um CPG e de aprender os movimentos de um animal real a partir do processamento de imagens de um vídeo. A robustez desta abordagem foi avaliada introduzindo ruído Gaussiano nas amostras coletadas do CPG, mas com uma variação pequena do nível de ruído. Os resultados obtidos com dados de um animal real não foram satisfatórios, pois a rede não convergia em todas as execuções. Para o problema tratado nesta Tese, a convergência da rede acontece quando ao final do processo de treinamento a topologia resultante forma um ciclo. Em uma topologia cíclica ideal todos os nodos possuem duas conexões, ver Figura 1.1. Para avaliar a capacidade de convergência da rede a estratégia utilizada foi criar uma taxa para estimar a probabilidade da rede formar uma topologia cíclica no final de uma execução. O termo utilizado para representar essa probabilidade é chamado de taxa de criação de redes cíclicas. Para a base de dados de um animal real, a melhor taxa de criação de redes cíclicas obtida não chegou em um valor satisfatório. Em qualquer experimento nesta Tese, o desejável é que a rede sempre gere uma topologia cíclica para tornar viável a criação de trajetórias cíclicas.

A segunda versão da abordagem proposta nesta Tese, chamada de Gerador de Trajetória

de Estados Auto-Organizável (SOM-STG) e publicada porARAúJO; SANTANA JR(2014) em

um importante periódico de redes neurais, preserva algumas características da rede STRAGIC. A principal diferença entre SOM-STG e STRAGIC está na regra de eliminação de nodos da rede. Esta regra foi modificada com o objetivo de manter cada nodo da rede sempre com dois vizinhos para melhorar a taxa de criação de redes cíclicas. Outro avanço importante foi realizado no embasamento teórico desta segunda abordagem. Conceitualmente, STRAGIC não explica como os dados para a aprendizagem são obtidos e nem como acontece o controle de cada articulação. Assim, dois conceitos fundamentais foram inseridos nesta segunda abordagem: Aprendizagem por Demonstração (LbD) e Controle Guiado por Dados (DDC).

Em LbD3, o robô aprende a caminhar a partir de movimentos executados por um agente

demonstrador, um ser vivo ou outro robô. Existem diferentes nomenclaturas para LbD, como por exemplo aprendizagem por imitação, aprendizagem a partir de experiência, aprendizagem

2Em inglês State Trajectory Generator with Interconnections. 3Em inglês Learning by Demonstration.

(20)

4 1 15 3 21 18 17 22 23 24 16 25 11 26

Figura 1.1: Rede com topologia cíclica ideal. Os números representam a ordem de

criação dos nodos. Quanto mais próximos estão os nodos dentro da estrutura topológica mais similares são suas características.

a partir de observações, programação de robô por demonstração e aprendizagem a partir de demonstração. Há muitas formas de demonstrar um comportamento para um robô, por exemplo, usando uma sequência de dados capturados de sensores sobre o agente demonstrador ou um vídeo com o agente demonstrador. Em aprendizagem por demonstração, o problema é normalmente resolvido através do mapeamento de estados em ações (ARGALL et al.,2009;BILLING,2010). No contexto desta Tese, cada estado contém informações de uma postura e as ligações entre estados determinam as ações. Uma postura pode ser descrita pelo conjunto de posições angulares das articulações das pernas em um instante de tempo. Uma trajetória de controle é composta de pares de estados formando uma sequência fechada de ações para movimentar as articulações do robô de acordo com uma determinada marcha.

SegundoHOU; WANG (2013), o DDC4 inclui todas as teorias e métodos nos quais

o controlador é projetado diretamente pelo uso de dados de entrada/saída do sistema a ser controlado. Na abordagem proposta, os dados de entrada/saída (ângulos das articulações) são obtidos com LbD através do agente demonstrador. Uma grande vantagem de DDC é que informações explicitas do modelo matemático do processo controlado não são necessárias para a modelagem do sistema de controle. Assim, DDC se mostra como uma alternativa ao controle clássico onde a modelagem matemática do sistema a ser controlado, cada articulação, é extremamente importante na definição do sistema de controle.

(21)

20

Os avanços realizados porARAúJO; SANTANA JR(2014) com a rede SOM-STG não

foram suficientes para garantir uma estrutura topológica cíclica em todas as execuções da rede. Outra limitação, de SOM-STG, está relacionada ao ajuste de seu parâmetro mais crítico, o limiar de atividade, por tentativa e erro para cada base de dados. Este processo é lento e não dá garantias de que com limiar escolhido a rede aprende detalhes relevantes do espaço de entrada.

As principais limitações da segunda versão do sistema são tratadas no doutorado: o ajuste por tentativa e erro de um importante parâmetro da rede, o limiar de atividade; a imprevisibilidade em gerar trajetórias cíclicas em algumas bases de dados; a alta dependência do valor escolhido para o limiar de atividade para o sucesso da geração das trajetórias cíclicas; a dificuldade de gerar redes cíclicas em experimentos com dados obtidos com baixa taxa de amostragem; os pesos da rede utilizados apenas como entrada; discretização da trajetória aprendida; e a impossibilidade de combinar as marchas aprendidas para gerar novas marchas intermediárias. Estas limitações diminuem o desempenho da rede SOM-STG, medido através da taxa de criação de redes cíclicas e do grau de similaridade entre duas trajetórias. A taxa de criação de redes cíclicas é um indicativo da probabilidade da rede gerar uma trajetória cíclica. O grau de similaridade é medido com Dynamic Time Warping (DTW), uma métrica de comparação de sinais (SENIN,2008).

A terceira versão do sistema, no qual Gerador de Trajetória de Estados Cíclica Auto-Organizável (SOM-CSTG)5está inserido, foi projetada considerando as características relevantes

do processo de aprendizagem da rede SOM-STG e suas limitações. A relevância de cada passo do processo de aprendizagem de SOM-STG foi avaliada considerando o problema de aprendizagem de marcha robótica, os passos mais significativos foram mantidos e os menos relevantes foram substituídos por passos presentes em redes derivadas de Mapa Auto-Organizável (SOM) com habilidades interessantes para o problema tratado. Para escolher tais redes SOMs, uma ampla pesquisa bibliográfica foi realizada com foco em compreender os seus avanços entre os anos de 1994 e 2013 com milhares de artigos encontrados. Cerca de 300 artigos foram avaliados de modo mais profundo e os artigos que apresentaram contribuições mais apropriadas para melhorar o desempenho de SOM-STG foram selecionados. As características mais interessantes, descritas nestes artigos, para o problema de criação de trajetórias cíclicas foram integradas ao SOM-CSTG. As duas redes que mais contribuíram com SOM-CSTG foram: SOM para o

Problema do Caixeiro Viajante (SOM-TSP)6(ANGENIOL; LA CROIX VAUBOIS; LE TEXIER,

1988) e SOM Parametrizada (PSOM)7(WALTER; RITTER,1996).

A característica mais interessante de SOM-TSP é a sua capacidade de gerar uma traje-tória cíclica e de caminho mínimo independentemente da disposição dos dados. A principal característica de PSOM é sua capacidade de aprendizagem com um número pequeno de amostras de treinamento e criação de uma superfície de variedades possibilitando a obtenção de estados em qualquer posição contínua desta superfície. Para realizar a integração de SOM-STG com

5Em inglês Self-Organizing Cyclic State Trajectory Generator. 6Em inglês Travelling Salesman Problem.

(22)

SOM-TSP e PSOM com o objetivo de criar a nova rede SOM-CSTG, os passos mais relevantes de cada um dos modelos foram unidos de modo a resolver o problema de aprendizagem de trajetória cíclica de estados de forma mais eficaz e mais abrangente do que com a rede SOM-STG. Uma característica muito relevante e presente em SOM-STG é capacidade de determinar uma região de atividade através do limiar de atividade. Esta região pode ser abstraída como o interior de uma esfera onde o limiar de atividade determina o raio desta esfera. Para automatizar a escolha do valor do limiar de atividade, um mecanismo de auto-ajuste foi incorporado à rede SOM-CSTG.

Para atender os requisitos do problema de aprendizagem de marcha robótica, a arquitetura do sistema no qual a rede SOM-CSTG está inserida ficou organizada como a seguir: Módulo 1, aprendizagem e gerenciamento de marchas; e Módulo 2, controle de posturas. O módulo de aprendizagem e gerenciamento está dividido em duas camadas: aprendizagem e gerenciamento. A camada de aprendizagem captura dados sobre a postura de um agente demonstrador, processa e auto-organiza estes dados aprendendo os estados essenciais da trajetória para o controle de locomoção (planejamento de movimentos). A camada de gerenciamento de marchas determina o tipo de marcha executada pelo robô a partir de um sinal de controle simples. O módulo de controle de postura obtém informações de um estado de uma trajetória de estados e gera o sinal de controle necessário para que o atuador alcance a posição angular desejada.

A camada de aprendizagem de marcha é composta basicamente de duas técnicas: a aprendizagem por demonstração e um mapa auto-organizável de topologia variante no tempo. A captura dos dados é realizada como na aprendizagem por demonstração. Na camada de aprendizagem, assim como em LbD, os estados são adquiridos a partir de um agente demons-trador. Os dados não são estruturados em pares de estado-ação ou estado-atual-próximo-estado como em LbD. Um agente robótico cria uma representação interna dos estados essenciais da movimentação dos membros inferiores através da auto-organização dos estados de entrada e da auto-seleção dos estados mais relevantes de uma trajetória de controle. As conexões são criadas entre estados semelhantes, consequentemente, conectando posturas do robô que aparecem durante a locomoção em tempos próximos. Comparado com modelos de CPG, o processo de auto-organização pode aprender sequências de padrões para controlar as articulações do robô sem a necessidade de determinar um conjunto de equações diferenciais e ajustar seus parâmetros para cada tipo de robô. Depois de aprender uma trajetória de estados, o robô pode autonomamente controlar o seu modo de locomoção sem necessariamente explicitar o mapeamento entre estados e ações como em LbD.

A camada de gerenciamento de marchas tem o objetivo de determinar a marcha atual do robô através da ativação de diferentes padrões de locomoção recebendo como entrada um sinal simples. Este sinal é um número real, cujos valores mais baixos ativam marchas de velocidades mais lentas e os valores mais altos ativam marchas de velocidades mais rápidas. Esta camada de gerenciamento de marcha recebe redes cíclicas da camada de aprendizagem de trajetória. Estas redes de topologia em anel são alinhadas permitindo a criação de uma grade de nodos

(23)

22 (semelhante a SOM original) onde cada coluna contêm os nodos de uma marcha aprendida. Ao adicionar a esta grade características presentes na rede PSOM é possível criar uma grade de variedades, uma abstração de uma superfície contínua estruturada em cima desta grade. Ao navegar com valores contínuos sobre esta superfície na dimensão das linhas (mantendo o valor da coluna constante) é possível avançar ou recuar continuamente sobre o espaço de posturas de uma marcha. Ao alterar o valor contínuo da posição da coluna é possível mudar suavemente os padrões de movimento da marcha. Assim o sinal contínuo utilizado para mudar a marcha é conectado ao sinal de navegação que determina a posição de navegação entre as colunas desta superfície (grade de variedades).

O módulo de controle de postura é quem determina o sinal de controle para os atuadores de acordo com a posição angular desejada. Este módulo é composto basicamente por um método de DDC, o controlador Proporcional Integral Derivativo (PID)8.

Os experimentos estão organizados em dois grupos: o primeiro, apresenta comparações entre as duas versões da abordagem (SOM-STG e SOM-CSTG); e o segundo grupo, apresenta avaliações da abordagem proposta. As comparações entre as versões da abordagem proposta são realizada em três cenários para avaliar a aprendizagem com o tipo de distribuição de dados mais difícil, a aprendizagem a partir de dados gerados por um CPG artificial e aprendizagem a partir de dados coletados de um animal real. O segundo grupo avalia a capacidade de aprendizagem a partir de sensores sobre o corpo do agente demonstrador, uma aplicação em um esquema DDC, a capacidade de geração de trajetórias contínuas e a capacidade de generalização de marchas.

Um experimento com o robô de seis patas passando por um obstáculo foi elaborado para ilustrar uma combinação de DDC e SOM-STG. Neste experimento, SOM-STG é inserido em um esquema de controle em malha fechada para avaliar a sua robustez ao executar uma trajetória cíclica planejada em uma situação na qual a pata do robô colide com um obstáculo. O objetivo deste experimento é conduzir o robô à próxima postura com um erro dentro de uma faixa de tolerância, mesmo que a postura atual do robô demore a alcançar a postura desejada.

Os experimentos com os valores dos ângulos coletados da locomoção de um robô hexápode simulado têm o objetivo de montar um cenário de aprendizagem mais realístico, já que coletar os ângulos das articulações de um agente demonstrador é mais viável do que obter os sinais gerados por um GPG. Embora o ambiente destes experimentos seja simulado ele é bastante realístico, pois fatores como torque dos atuadores e o atrito das pernas do robô com o chão são levados em consideração e podem mudar a postura atual do robô quando comparada com a postura desejada. Devido a estas imprecisões no posicionamento da postura desejada, a base de dados formada por estas posturas coletadas em um intervalo de tempo constante é considerada ruidosa.

O experimento com dados reais avalia a capacidade do sistema proposto em aprender por demonstração com dados capturados a partir da locomoção de um animal ou da locomoção humana. Os dados de um animal são obtidos a partir de um vídeo da locomoção de um cachorro

(24)

andando em uma calçada com as juntas marcadas com uma fita adesiva de cor verde. Para a locomoção humana os dados são obtidos na base de dados de captura de movimentos da Universidade Carnegie Mellon.

Essa Tese está dividida como a seguir, o Capítulo 2 apresenta algumas soluções de mapas auto-organizáveis para problemas relacionados com o planejamento e controle robótico. A descrição do problema de Planejamento e Controle de Marcha Robótica é apresentada no Capítulo 3. O Capítulo 4 apresenta a rede SOM-STG, suas principais limitações e as principais redes usadas para superar estas limitações. O Capítulo 5 apresenta a nova solução com embasamento em mapas auto-organizáveis descritos no Apêndice A. Os experimentos são apresentados no Capítulo 6. As considerações finais são apresentadas no Capítulo 7. O Apêndice A mostra uma variedade de mapas auto-organizáveis e suas características que podem contribuir para o avanço de abordagem proposta.

(25)

24 24 24

2

SOM para o Planejamento e Controle em

Robótica

Este Capítulo faz uma breve introdução sobre a rede Mapa Auto-Organizável (SOM) e apresenta alguns exemplos de como redes derivadas de SOM são aplicadas em diversas tarefas que envolvem o planejamento e controle de robôs. Para tanto uma breve revisão teórica é realizada, buscando elucidar as principais características apontadas pelos estudiosos da área para resolver tarefas relacionadas ao controle e planejamento de trajetória de manipuladores robóticos; controle de mão robótica; controle de robôs com membros; planejamento de trajetória; e a navegação robótica.

Os mapas auto-organizáveis, em essência, constroem um mapeamento de um espaço de entrada de alta dimensionalidade em um espaço de estruturas topológicas de baixa dimensão. Neste mapeamento, elementos vizinhos no espaço de entrada são mapeados em regiões vizinhas deste espaço de estruturas topológicas. A rede SOM está estrutura topologicamente sobre uma grade retangular de nodos em duas dimensões. Sendo capaz de compactar informações preservando os relacionamentos topológicos e as métricas mais importantes dos dados originais. Com base nestas características dois aspectos são evidenciados, o de abstração e exibição simplificada da informação. Tradicionalmente, estes dois aspectos podem ser utilizados de diversas maneiras em uma variedade de aplicações práticas como em reconhecimento de voz, análise de imagem, processos industriais de controle, organização automática de documentos em bibliotecas, e etc. (KOHONEN,1998).

O funcionamento da rede SOM, em essência, ocorre da seguinte maneira, uma amostra é apresentada a rede e todos nodos (unidades) são estimulados, no entanto a unidade mais ativa é aquela cujo vetor de pesos é mais próximo ao padrão de entrada. Esta unidade chamada de vencedora, mantém-se ativa induzindo à ativação dos nodos vizinhos. Um requisito para a auto-organização é: os pesos sinápticos de uma unidade devem ser modificados apenas na vizinhança local da unidade vencedora e todos os pesos modificados devem ser mais semelhantes à amostra atual que no passado. Diferentes sinais de entrada (amostras) em diferentes tempos afetam regiões diferentes na grade retangular de nodos. Deste modo, depois de muitos passos de

(26)

aprendizagem, os pesos sinápticos começam a adquirir valores que relacionam-se suavemente dentro desta grade de maneira equivalente aos estímulos do espaço de entrada (KOHONEN; HARI,1999).

Um exemplo de aplicação de redes SOMs no controle e planejamento de trajetória de

manipuladores é apresentado porBARRETO; ARAÚJO(2004) que propõem uma abordagem

para a modelagem preditiva de trajetória de robôs articulados. Nesta abordagem, a rede aprende automaticamente a sequência temporal da trajetória de estados através de mecanismos de me-mória associativa. Os experimentos foram realizados com um robô PUMA 560 com 6 graus de liberdade. A rede por eles desenvolvida, representa a entrada como um conjunto de estados, contendo o próximo estado e os estados passados. A quantidade de estados associados a um nodo da rede pode ser ajustada por um parêmetro.

KOIKKALAINEN; VARSTA(1996) apresentaram um método para o planejamento de trajetória de manipuladores robóticos baseado em uma rede neural hierárquica chamada de SOM estruturada em árvore (tree structured SOM, TS-SOM). Cada nível da rede TS-SOM é uma rede SOM. Durante o treinamento, cada camada da rede é organizada uma por vez começando da raiz. Este método foi aplicado com sucesso em um robô manipulador na tarefa de pintar uma superfície.

AHMAD; CHEN; MOHAMAD(2002) apresentaram um sistema baseado em uma rede SOM modificada para o controle da posição de um manipulador robótico simulado com três graus de liberdade. Nesta abordagem, a força aplicada por cada atuador em cada articulação é determinada por um controlador neural. A coordenada do efetuador1 é apresentada a cada controlador, e cada controlador determina a força em sua respectiva articulação. Cada controlador é uma rede SOM, cuja entrada é composta da posição atual e da posição anterior do efetuador.

Para o controle de robôs manipuladores na tarefa de pegar e colocarKUMAR; PATEL; BEHERA (2008); KUMAR et al. (2010) propuseram um sistema baseado na rede SOM. O robô apresentado neste trabalho possui 7 graus de liberdade. O posicionamento do efetuador é capturado por um sistema estéreo de câmeras retornando quatro coordenadas, duas para cada câmera. O sistema de controle aprende a mapear as 4 coordenadas das câmeras em um vetor de seis dimensões, contendo as posições angulares das articulações do manipulador robótico. Assim, uma rede SOM adaptada com estrutura topológica organizada em três dimensões é utilizada para aprender tal mapeamento de modo que cada nodo da rede mapeia a cinemática inversa do manipulador.

A rede SOM foi aplicada por ASAMIZU; KOBAYASHI (2009) em um método de

controle de manipulador robótico. Este método extrai de modo autônomo uma representação para o corpo do robô e outra para o objeto. Uma rede SOM de uma dimensão é usada para aprender a representar a posição do objeto na imagem. Este sistema utiliza uma câmera fixa

1O efetuador pode ser definido como o componente que promove a interação entre a extremidade terminal do manipulador e o objeto a ser trabalhado. O tipo mais comum de efetuador é a garra, mas uma ferramenta de solda ou uma pistola de pintura também são efetuadores.

(27)

26 posicionada de tal modo que possa capturar imagens do robô e do objeto ao mesmo tempo.

As redes SOM também são utilizadas para reduzir a quantidade de estados de um espaço

de configurações ou posturas.HIRAOKA; AOYAGI(2010), por exemplo, propõem um método

para o controle de movimento de um braço robótico capaz de desviar de obstáculos. O braço robótico aprende a escolher melhor as transições entre estados utilizando aprendizagem por reforço. As aplicações de aprendizagem por reforço normalmente necessitam de muita memória. O uso da memória é influenciado pela forma em que o espaço de configurações é dividido em estados. Neste método, a rede SOM é utilizada para estruturar de maneira ótima os estados durante a aprendizagem por reforço. Para este fim, os estados presentes em áreas com pouca influência no processo de aprendizagem são combinados, enquanto que os estados em áreas de maior influência são desmembrados.

Uma abordagem baseada em aprendizagem por demonstração para ensinar a tarefa

de pegar objetos para um robô com braço é proposta porHÜSER; ZHANG (2012). Nesta

abordagem, o agente demonstrador através de uma câmera estereoscópica pega objetos com sua mão. Para realizar o rastreamento da mão do demonstrador, algumas técnicas de processamento de imagens são utilizadas para segmentar a mão e encontrar o seu contorno. Estes dados sobre a mão são processados e a coordenada da mão em um espaço 3D é usada para o treinamento de uma rede SOM de uma dimensão que cria uma generalização destes dados de entrada. Assim, a rede SOM de topologia 1D aprende a trajetória de movimentação da mão do demonstrador para controlar a mão robótica.

ZHOU; DUDEK; SHI(2011) apresentam a rede self organizing neural population coding (SONPC) para a aprendizagem da coordenação de um sistema visuomotor. Este sistema aprende com uma câmera apontada para a movimentação aleatória de um braço robótico. O sistema visual é habilitado com ações de inclinar e girar semelhante a movimentação da cabeça humana. A rede foi avaliada com o braço robótico habilitado apenas para movimentar o ombro e o cotovelo. Um LED foi colocado na ponta do efetuador para simplificar a localização do braço. Comparado com a rede SOM, a rede SONPC melhora a modelagem e o ajuste da curva de resposta do nodo.

BERGLUND et al.(2012) apresentam um modelo capaz de gerar um mapeamento entre a cinemática de uma mão humana e uma mão robótica. Este mapeamento é feito através de uma rede PLSOM2 (Parameter-Less Self-Organising Map 2). Os dados de treinamento da mão humana são obtidos com o auxílio de uma luva dotada de sensores, CyberGlove2, para capturar os ângulos das articulações dos dedos. O principal problema é o mapeamento do polegar da mão humana para a mão robótica (ShadowHand), pois o polegar humano tem quatro graus de liberdade enquanto o da mão robótica possui cinco. O treinamento deste modelo tem o objetivo de diminuir o erro de posicionamento da ponta do polegar em relação ao resto da mão.

Um mapa auto-organizável gerador de trajetórias de estados aplicadas ao problema de

locomoção de robôs com patas é apresentado porSANTANA JR; ARAUJO(2010). Este mapa

determina a sequência dos movimentos das patas de um robô hexápode através de trajetórias de

(28)

estados. Cada estado de uma trajetória representa uma postura do robô. Os dados de treinamento da rede são obtidos das articulações de um agente demonstrador. Estes dados podem ser os ângulos das articulações ou os sinais de ativação dos atuadores. A capacidade de aprendizagem da rede tem a tendência de melhorar com o aumento do número de passos amostrados. Além disso, informações cronológicas não são necessárias para a aprendizagem da movimentação das patas.

Uma abordagem distribuída de aprendizagem por reforço usada para aprender a controlar um robô hexápode e sua trajetória é apresentada em (YOUCEF; PIERRE,2004). A rede SOM é empregada para decodificar e reduzir a dimensão da tabela de estados e ações da aprendizagem por reforço.

Um processo de aprendizagem auto-organizado baseado em ciclos de percepção e ação é

apresentado porSRINIVASA; GROSSBERG(2007) para a aprendizagem da movimentação de

um manipulador robótico e porSRINIVASA; GROSSBERG(2008) para a aprendizagem de um

posicionador de câmera. As articulações destes robôs são perturbadas minimamente a partir de um determinado posicionamento. A aprendizagem mapeia essas perturbações em mudanças nas leituras dos sensores. Esta fase de balbuciamento motor3fornece comandos de movimentação

que ativam informações sensoriais, espaciais e motoras correlacionadas. Estas informações são usadas para aprender uma transformação interna de coordenadas entre sistemas sensoriais e motores. O posicionador da câmera age semelhante ao sistema cabeça-pescoço-olho humano. O processo de aprendizagem mapeia pequenas movimentações do posicionador em alterações da posição de um alvo 3D dentro do campo de visão da câmera. Ao final do treinamento, o posicionador é capaz de direcionar a câmera para um alvo desejado.

FAIGL; P ˇREU ˇCIL(2011) aplicam uma rede SOM para o problema de planejamento de inspeção cuja informações sobre ambiente para o planejamento são obtidas pela visão do robô. Uma nova regra de adaptação é apresentada e comparada com a regra de adaptação utilizada no estado da arte por redes SOMs para o problema do caixeiro viajante (TSP). A comparação é realizada através de um conjunto de problemas gerados a partir de um mapa de um ambiente real. A principal contribuição deste trabalho é o seu esquema de adaptação para o problema de planejamento de rotas multi-objetivo.

Um exemplo clássico de redes SOM utilizadas para resolver o TSP é apresentado por

ANGENIOL; LA CROIX VAUBOIS; LE TEXIER(1988). Neste mapa, a inicialização é feita com um pequeno anel em torno de alguns pontos objetivos. A criação de nodos consiste em duplicar o nodo vencedor, mas apenas se o nodo vencedor possuir duas vitórias em uma época. O conceito de época é definido como a apresentação sem repetição de todas as amostras à rede neural. No contexto de TSP uma amostra equivale às coordenadas de uma cidade. O nodo criado é inserido como um vizinho do nodo vencedor, e com as mesmas coordenadas do vencedor no plano. Tanto o vencedor quanto o nodo criado são inibidos. Eles são ativados novamente depois de completar a apresentação de todas as cidades. Um nodo é deletado, se ele não tiver sido

(29)

28 escolhido como vencedor durante três épocas consecutivas.

ISHII; YANO(2001);ISHII et al.(2002) aplicam a rede SOM ao problema de navegação robótica. O papel fundamental de SOM em um problema de navegação robótica é a abstração do ambiente através dos sensores presentes no robô. Esse processo de abstração é fundamental para que o robô processe as informações obtidas pelos sensores e realize uma navegação autônoma. Assim, o vetor de características contém informações sobre os obstáculos à sua volta e sobre a direção que o robô deve seguir para desviar dos obstáculos. Os vetores são gerados para diversas situações de obstáculos no ambiente. Depois de finalizado o treinamento da rede, o robô é capaz de desviar de obstáculos a partir do processamento das informações sensoriais.

NISHIDA; ISHII; FURUKAWA(2007a,b) descrevem um sistema de controle de na-vegação para veículos autônomos subaquáticos usando uma rede SOM modular (mnSOM) e recorrente. A rede mnSOM é uma extensão da rede SOM na qual cada unidade vetorial é substituída por módulos de funções, uma rede neural por exemplo. O processo de controle é dividido em três etapas. Na primeira etapa, o mapa do modelo direto (MMD) é obtido utilizando a rede mnSOM para processar dados em séries temporais contendo informações sobre o estado do robô e seu sinal de controle. Ao final desta etapa o MMD aprende um mapeamento entre sinal de controle e estado do robô. Na segunda etapa, o mapa do controlador (MC) é obtido usando o estado desejado e o estado de referência. Nesta segunda etapa, o estado desejado é apresentado ao MC que gera uma força (sinal de controle). Esta força é enviada para o MMD que gera um estado de referência. Deste modo, o MC é otimizado utilizando o estado desejado e o estado de referência obtido. A terceira etapa combina os módulos MMD e MC das etapas anteriores e a partir do estado atual do robô determina o seu sinal de controle.

BANERJEE(2007) propõe um modelo derivado do SOM, chamado string tightening self-organizing neural network(STON) aplicável a problemas como caminhos mais curtos e caminhos suaves, para evitar manobras curvilíneas fechadas. A ideia base do algoritmo STON pode ser ilustrada como uma corda em torno de obstáculos com dois pontos terminais. A configuração mais curta pode ser obtida puxando os terminais da corda. O algoritmo STON modela esse fenômeno através de um mapeamento auto-organizado entre os pontos da corda formando a configuração mais curta possível para corda.

MALMSTROM; SITTE; ISKE(2001) descrevem um robô equipado com um sistema genérico capaz de adaptar o seu comportamento motor de acordo com as entradas sensoriais. A rede SOM neste sistema gera um mapeamento das entradas sensoriais e por meio de aprendizagem por reforço cria uma relação entre os nodos da rede e os comandos para controlar os atuadores. O robô deste experimento é composto de sensores de distância e duas rodas que giram para

frente e para trás. Semelhante a esta abordagem,ARAI; HAKURA(2000) usam a rede SOM

e aprendizagem por reforço para determinar o comportamento do robô durante a navegação robótica. Os sensores usados na captura dos dados são um GPS e um giroscópio.

Como visto no decorrer deste Capítulo 2, as redes SOM e derivadas desempenham diferentes papeis em sistemas robóticos de controle e planejamento. Neste contexto, as principais

(30)

funções destas redes são: criação de trajetórias de estados para manipuladores robóticos; controle do posicionamento de efetuador através de um mapeamento entre espaços, por exemplo, o espaço das posições do efetuador e o espaço de posturas do manipulador ou do torque em cada articulação; criação de trajetória de modo auto-organizável para resolver problemas de caminho mínimo; mapeamento entre percepção e ação em problemas de navegação e planejamento de trajetória.

(31)

30 30 30

3

Planejamento e Controle de

Marcha Robótica (PCMR)

Este Capítulo apresenta uma descrição do problema de locomoção de robôs com base no planejamento e controle da movimentação das articulações das pernas de um robô para produzir uma marcha desejada. Assuntos importantes para compreensão e para a formalização do problema são abordados no decorrer deste Capítulo. A formalização do problema tem como base os seguintes assuntos: robôs com pernas, marcha em animais, CPG, trajetória de estados, aprendizagem por demonstração e controle de locomoção com DDC. A Seção 3.1 apresenta alguns conceitos sobre marcha e robótica. A Seção 3.2 apresenta alguns modelos de redes neurais relevantes para o problema de locomoção. A descrição formal do problema tratado nesta Tese está presente na Seção 3.3. Esta descrição tem como base a aprendizagem de estados mais relevantes de uma marcha e a criação de trajetórias a partir destes estados para o controle da marcha robótica. A Seção 3.4 faz uma breve introdução sobre a teoria de Controle Guiado por Dados apresentando a relação entre dados capturados e o controle dos atuadores.

3.1

Marcha Robótica

O termo robô é aplicado a uma grande variedade de dispositivos mecânicos

possui-dores de algum grau de autonomia, podendo até ser teleoperados (SPONG; HUTCHINSON;

VIDYASAGAR,2006). Os robôs geralmente são projetados para realizar algum tipo de trabalho principalmente na indústria. O uso da robótica oferece diversas vantagens como a diminuição do custo do trabalho, aumento da precisão e produtividade. Os robôs geralmente são utilizados em trabalhos nos quais o ser humano é submetido a condições monótonas, repetitivas ou perigosas.

A robótica também é aplicada em ambientes ou em atividades muito perigosas para a vida humana, como a exploração do fundo do mar, a exploração de outro planeta, o desarmamento

de dispositivos explosivos e a navegação em ambientes radioativos (SPONG; HUTCHINSON;

VIDYASAGAR, 2006). Nestes ambientes, onde o chão é bastante irregular, os robôs com membros são mais indicados do que os robôs com rodas.

(32)

Figura 3.1:Robô móvel Sojourner usado pela ©NASA durante a missão de exploração de Marte em 1997.

Em ambientes hostis, perigosos ou inabitáveis, a aplicação de sistemas teleoperados torna-se cada vez mais comum. Por exemplo, para explorar a superfície de Marte, a NASA1 utilizou um robô em modo teleoperado (Controlado a partir da Terra), Figura 3.1. A Plustech desenvolveu um robô caminhante para carregar madeira para fora da floresta, ilustrado na Figura 3.2, onde a navegação é feita por um operador dentro do robô e a coordenação entre pernas é

automática (SIEGWART; NOURBAKHSH,2004). Um outro exemplo de robô semi-autônomo

capaz de navegar de maneira independente ou teleoperada é o robô de seis membros proposto porSANTOS et al.(2007) para a detecção de minas terrestres.

Em robôs teleoperados, a complexidade por trás do mecanismo de controle de locomoção geralmente torna impossível para o operador humano controlar o deslocamento do robô. O homem executa as atividades cognitivas e de localização, mas depende inteiramente do esquema de controle de locomoção do robô para ir de um lugar para outro (SIEGWART; NOURBAKHSH,

2004).

SegundoSPROEWITZ et al.(2008), o controle de locomoção, bem como a reprodução de um determinado modo de locomoção, em um robô cujos membros inferiores possuem múltiplos graus de liberdade é um problema complexo e desafiador. Algumas das abordagens mais comuns (NAKAMURA et al.,2007;IJSPEERT et al.,2007;AYERS; WITTING,2007;ARENA et al.,

2004;RIGHETTI; IJSPEERT,2006;IJSPEERT,2008) para resolver o problema de locomoção de robôs com membros inferiores estão relacionadas ao CPG (Central Pattern Generator). O CPG controla o movimento periódico executado por cada membro, bem como o sincronismo entre membros. Sob o ponto de vista da biologia, um CPG é um circuito neural constituído de osciladores neurais encontrado principalmente na medula espinhal de animais vertebrados, sendo capaz de produzir sinais neurais rítmicos sem receber estímulos rítmicos. Este circuito neural durante a locomoção produz descargas periódicas de impulsos nervosos. Estes impulsos ativam os motoneurônios produzindo sequências alternadas entre flexão e extensão em vários músculos de um membro.

As características dos sinais gerados pelo CPG influenciam o movimento de cada membro.

(33)

3.1. MARCHA ROBÓTICA 32

Figura 3.2:Robô caminhante projetado pela ©Plustech.

Considerando que o CPG é composto de osciladores e que o movimento de uma articulação é controlado por um conjunto de osciladores, as oscilações geradas influenciam diretamente o movimento de cada articulação. Logo, características como, frequência, amplitude e formas dos sinais gerados modulam o movimento das articulações, influenciam na eficiência do controle motor e consequentemente, no modo de locomoção resultante (IJSPEERT,2001).

Em animais, a locomoção é caracterizada por movimentos repetitivos das patas formando os passos. Cada passo é dividido em duas fases: uma de apoio e outra de balanço. Na fase de apoio a pata está em contato com o chão e na fase de balanço a pata está livre no ar (RIGHETTI; IJSPEERT,2006). A razão entre o tempo de duração da fase de apoio e o tempo total de um passo é conhecida como ciclo de trabalho. Outra característica importante da locomoção animal é a defasagem entre as patas. Um passo pode ser entendido como uma sequência cíclica de posturas da pata, sendo que cada modo de locomoção possui uma sequência própria de movimentos das patas. De maneira resumida, uma marcha ou modo de locomoção é descrita como os movimentos coordenados das patas para levar o corpo de um lugar para outro. Assim, um modo de locomoção determina a velocidade e a direção do movimento do corpo do animal (BEKEY,2005).

MCMAHON(1984) descreve alguns modos de locomoção de quadrúpedes da seguinte forma: (i) no modo de locomoção caminhada, cada membro atinge o chão um após o outro, e o intervalo entre cada descida é de 25% do tempo de duração de um passo; (ii) no modo trote, os membros nos cantos diagonais do corpo trabalham sincronizadamente; (iii) no galope leve, um pé frontal e um pé traseiro diagonal tocam o chão juntos; (iv) um galope é um modo de

(34)

locomoção rápido no qual a sequência de passadas acontece em torno de um ciclo.

A locomoção de robôs com pernas é caracterizada por uma sequência de pontos de contato entre os membros do robô e chão. Durante a locomoção, uma parte dos membros está em contato com o chão e a outra parte está livre no ar. A principal vantagem de um robô com membros é a adaptabilidade e a capacidade de manobra em terrenos irregulares. Pois, apenas um conjunto de pontos de contato é necessário para manter o robô equilibrado e deslocando-se, não importando as características do solo. O robô apenas precisa manter os membros livres e distantes do solo de maneira que não atrapalhe seu deslocamento. Além disso, um robô caminhante é capaz de atravessar um buraco ou uma fenda enquanto seu corpo passa sobre o

buraco (SIEGWART; NOURBAKHSH,2004).

O controle de locomoção de um robô com patas com vários graus de liberdade é um problema complexo (SPROEWITZ et al.,2008). As principais características que determinam o modo de locomoção de um animal são: a repetição constante de movimentos, a duração do tempo de apoio da pata em cada passo e o sincronismo entre os movimentos das patas. Assim, o sinal de controle enviado para os atuadores de cada articulação deve levar em conta estas duas características.

A principal desvantagem da locomoção de robôs com pernas inclui a complexidade mecânica e energética. A perna, que pode possuir vários graus de liberdade, deve ser capaz de sustentar uma parte do peso total do robô. Além disso, alta capacidade de manobra será viável apenas se as pernas possuírem um número suficiente de graus de liberdade.

Outra abordagem para a aprendizagem da movimentação dos membros inferiores para a locomoção de um robô pode ser alcançada através da observação e reprodução dos movimentos de um ser vivo. Com esta abordagem, a aprendizagem da locomoção é realizada com informações observadas sobre a movimentação das articulações, ao invés da modelagem dos sinais de ativação dos músculos. A Aprendizagem por Demonstração é baseada nesta ideia e pode ser utilizada por um robô para aprender a marcha de um animal.

3.2

CPGs e Redes Neurais

Modelos matemáticos de CPGs foram construídos principalmente para insetos e verte-brados inferiores. Vários modelos são construídos inspirados no circuito neural responsável pelo comportamento de natação da lampreia, construídos a partir de redes não-lineares celulares ou construídos com sistemas de osciladores acoplados. Um CPG muito investigado é o da lampreia sendo modelado de várias maneiras: biofísica, conexionista, sistemas de osciladores acoplados e simulação neuromecânica (IJSPEERT,2008).

O modelo de IJSPEERT (2008), biologicamente inspirado em um neurônio real, e

o modelo de ARENA et al. (2004), baseado em uma rede não-linear celular (cellular non-linear network, CNN), são duas abordagens relevantes para a modelagem de CPGs. O modelo

(35)

3.2. CPGS E REDES NEURAIS 34

IJSPEERT et al.(2007) propuseram um modelo para o controle de uma salamandra robótica. O CPG da salamandra é definido como um sistema de osciladores não-lineares acoplados baseado no modelo de Kuramoto (ACEBRóN et al.,2005), um oscilador simples constituído de uma população de N osciladores de fase acoplados com amplitude controlada.

O modelo de CPG de ARENA et al. (2004) é composto por CNNs que produzem

dinâmicas não-lineares através de sistemas de osciladores acoplados. As células de uma CNN agem como processadores analógicos dinâmicos com capacidade de processamento paralelo e com interconexões locais (CHUA et al.,1995; CHUA; ROSKA, 1993). O restante desta seção apresenta alguns exemplos de como os sistemas de equações diferenciais são utilizados para modelar um CPG. As abordagens deIJSPEERT(2008) e deARENA et al.(2004) serão apresentadas com um nível de detalhamento maior.

3.2.1

CPG Biologicamente Inspirado

EKEBERG(1993) inspirado na rede neural biológica responsável pelo movimento do corpo da lampreia, desenvolveu um modelo de controle neural com neurônios individualmente simplificados, porém com conectividade semelhante ao modelo biológico. Neste modelo, cada unidade representa uma população de neurônios reais que possuem funcionalidades semelhantes. Além disso, Ekeberg também descreveu como os sinais gerados pelo modelo de controle neural são transformados em movimentos.

O controlador neural proposto porEKEBERG(1993) biologicamente inspirado no CPG da lampreia é composto de 100 segmentos de rede interconectadas, ver Figura 3.3. Cada segmento de rede é um oscilador neural feito por dois motoneurônios (MN), dois interneurônios excitatórios (EIN), dois interneurônios inibitórios contralaterais (CIN) e dois interneurônios inibitórios laterais (LIN). A nomenclatura de cada neurônio descreve suas conexões eferentes. Cada neurônio, individualmente, representa uma população de neurônios funcionalmente similares na lampreia real, que recebem sinais excitatórios do tronco cerebral. Uma interconexão é uma conexão entre dois neurônios pertencentes a dois segmentos vizinhos na rede.

Um neurônio é modelado como um leaky-integrator, ver Equações 3.7. Sua saída u equivale a frequência de disparo (∈ [0,1]) calculada como a seguir:

˙ ξ+= 1 τD (

i∈Ψ+ uiwi− ξ+)  3.1 ˙ ξ−= 1 τD (

i∈Ψ− uiwi− ξ−)  3.2 ˙ ϑ = 1 τA (u − ϑ ) 3.3 u=( 1 − exp{(Θ − ξ+)Γ} − ξ−− µϑ (u >0) 0 (u ≤0)  3.4

(36)

Figura 3.3:4 segmentos de rede do controlador biológico, onde cada segmento de rede é composto de 8 neurônios. Quatro tipos de neurônios estão presentes nos osciladores: três tipos de interneurônios (EIN, CIN e LIN) e os motoneurônios MN. Os controladores podem receber realimentação das células excitatórias (EC). As linhas tracejadas mostram

as interconexões entre segmentos vizinhos. Figura extraída deIJSPEERT; HALLAM;

(37)

3.2. CPGS E REDES NEURAIS 36 onde wi é o peso sináptico, Ψ+ e Ψ− representam os grupos de neurônios pré-sinápticos

excitatórios e inibitórios respectivamente, ξ+ e ξ− são sinais atrasados para entradas excitatórias

e inibitórias, e ϑ representa a adaptação da frequência observada em alguns neurônios reais (IJSPEERT; HALLAM; WILLSHAW,1999). τDé um limiar para a ativação, Γ é uma constante

de ganho, µ controla o nível de adaptação e Θ é um limiar (EKEBERG,1993).

Prosseguindo os estudos sobre CPG, IJSPEERT (2001) desenvolveu um modelo de

CPG biologicamente plausível2da salamandra. O circuito neural controlador da locomoção da

salamandra é semelhante ao CPG da lampreia, mas incrementado com CPGs que controlam os membros. Este modelo era composto de 14 articulações, 10 distribuídas pelo tronco e cauda, mais 1 para cada membro contabilizando 4 articulações nos membros. Os parâmetros deste circuito neural eram determinados por algoritmo genético. O modelo resultante simulava tanto o corpo quanto o circuito locomotor da salamandra sendo capaz de fazer a transição do modo de locomoção aquático para o terrestre.

Ijspeert não se restringiu ao estudo da lampreia e da salamandra, desenvolvendo seus tra-balhos com outros tipos de robôs.RIGHETTI; IJSPEERT(2006) introduziram uma metodologia para projetar controladores de robôs humanoides rastejantes, baseada no paradigma CPG. Assim como nos trabalhos anteriores, esta metodologia segue uma abordagem biologicamente inspirada e apresenta um modelo matemático de CPG baseado em osciladores não-lineares acoplados.

Alguns trabalhos projetam CPGs levando em conta as interações dos neurônios com

os músculos das pernas como é o caso deMAUFROY; KIMURA; TAKASE(2008,2010) que

propõem um modelo biologicamente inspirado na neurofisiologia da locomoção de gatos. Capaz de controlar habilidosamente um robô quadrúpede em terrenos irregulares, fazer a transição entre modos de locomoção de maneira autônoma e compatível com a velocidade de deslocamento do robô.

Alguns modelos matemáticos baseados no comportamento dos neurônios reais são

utilizados para compor o CPG. Dentre eles está o famoso modelo H-H deHODGKIN; HUXLEY

(1952), um modelo complexo e com muitos parâmetros (WU et al.,2009). Uma simplificação

do modelo H-H é o modelo FitzHugh-Nagumo (FITZHUGH,1961;NAGUMO; ARIMOTO;

YOSHIZAWA,2007) definido por: ˙xi= c  yi+ xi+ x3i 3 + fci  , ˙yi= −(xi− a + byi)/c,  3.5 onde xi, é o potencial da membrana do i-ésimo neurônio; fcié um sinal de controle no neurônio

i; a,b e c são constantes e não correspondem a nenhum parâmetro fisiológico. A notação ˙xié utilizada para descrever a primeira derivada de x em relação ao tempo.

Um modelo baseado no neurônio real e voltado para a produção de sinal oscilatório na

2A modelagem matemática do comportamento do sinal de saída do CPG corresponde ao comportamento observado no organismo biológico.

(38)

saída é o modelo deSTEIN et al.(1973), descrito matematicamente por: ˙xi= a  − xi+ 1 1 + exp(− fci− byi+ bzi)  , ˙yi= xi− pyi, ˙zi= xi− qzi,  3.6 onde xirepresenta o potencial da membrana do i-ésimo oscilador; a é uma constante que afeta

a frequência de oscilação; fci é um sinal de controle para o oscilador i; b permite ao modelo

adaptar-se as mudanças de estímulos; q e p controlam a taxa de adaptação.

O modelo deMATSUOKA(1987) do tipo Leaky-Integrator definido matematicamente

pela Equações 3.7, descreve o comportamento básico de neurônios reais: Tr˙u + ui= − n

j=1 wi jyj− β vi+ si, Ta˙vi+ vi= yi, yi= g(ui) =max(ui,0),  3.7 onde ui é o potencial da membrana do i-ésimo neurônio; vi é uma variável que representa o

grau de adaptação do neurônio i; Tre Tasão constantes do tempo de crescimento e do tempo de

adaptação; wi j é o peso da sinapse inibitória da conexão que sai do neurônio j para o i; β é o

parâmetro que determina a taxa de disparos; sié uma entrada externa, e yié a saída do neurônio.

Um oscilador não-linear pode ser associado a um neurônio de um CPG, pois o papel do neurônio no CPG é justamente produzir periodicamente sinais oscilatórios. Entre os modelos de osciladores não-lineares estão o modelo de Kuramoto e o de Hopf (WU et al.,2009). O modelo de Kuramoto (ACEBRóN et al.,2005) é um oscilador simples que consiste em uma população de N osciladores de fase acoplados, descrito matematicamente por:

˙ θi= wi+ N

j=1 Ki jsin(θj− θi), i=1,2,...,N,  3.8 onde θié a fase do i-ésimo oscilador; wié a frequência natural do i-ésimo oscilador; Ki j>0 é a

força do acoplamento do oscilador j para o oscilador i.

Observando as equações anteriores, podemos notar que não existe uma grande variedade de modelagens matemática para construção de CPGs (IJSPEERT,2008;WU et al.,2009). Dife-rentes abordagens têm sido investigadas como osciladores não-lineares, modelagem biológica de neurônios, redes celulares não-lineares, etc. Para que o CPG construído com algumas destas abordagens comporte-se da maneira desejada é necessário que os parâmetros destes modelos sejam configurados corretamente. Para chegar a estes parâmetros, algumas técnicas são utilizadas,

Referências

Documentos relacionados

Através da revisão de literatura e a análise crítica do autor, este trabalho apresenta uma proposta de “estrutura conceitual” para a integração dos “fatores humanos” ao

As relações hídricas das cultivares de amendoim foram significativamente influenciadas pela a deficiência hídrica, reduzindo o potencial hídrico foliar e o conteúdo relativo de

Assim, propusemos que o processo criado pelo PPC é um processo de natureza iterativa e que esta iteração veiculada pelo PPC, contrariamente ao que é proposto em Cunha (2006)

Classificação biológica, Taxonomia e Sistemática são designações que tiveram origem em alturas distintas ao longo da história, e cujo significado por vezes

Conforme mencionado anteriormente, os basidiomicetos de podridão branca são mais utilizados em processos de micorremediação mediado pela biodegradação enzimática, mas a

sobre áreas de risco e desastres; fortalecimento e capacitação da Força Nacional do Sistema Único de Saúde; criação da Força Nacional de Emergência; compra de equipamentos para as

No Estado do Pará as seguintes potencialidades são observadas a partir do processo de descentralização da gestão florestal: i desenvolvimento da política florestal estadual; ii

volver competências indispensáveis ao exercício profissional da Medicina, nomeadamente, colheita da história clínica e exame físico detalhado, identificação dos