• Nenhum resultado encontrado

6.2

Dados Artificiais de um CPG

Os experimentos desta seção realizam uma comparação dos modelos desenvolvidos durante o doutorado utilizando dados de um CPG artificial. Os cenários de comparação englobam a produção de diferentes marchas. A robustez de SOM-STG e de SOM-CSTG são comparadas ao manipularem dados ruidosos com diferentes níveis de ruído. Os dados são capturados de um CPG utilizado no controle de um robô hexápode simulado com Gazebo. Este CPG foi implementado com osciladores CNN (ARENA et al.,2004) que geram como saída os ângulos para as articulações α e β de cada membro. Os parâmetros de configuração da CNN foram obtidos emARENA et al.(2004). Cada estado de uma trajetória consiste de valores α e β de cada um dos seis membros do robô, deste modo, as entradas do SOM-STG para este experimento são vetores de 12 posições, ξξξ ∈ R12. Para compor as bases de dados, três modos de locomoção

diferentes foram amostrados: macha lenta, marcha média e marcha rápida. Todos os estados de todos os modos de locomoção foram armazenados sem nenhuma informação cronológica sobre a ordem de coleta dos estados.

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

Os valores dos parâmetros de SOM-STG foram ajustados por tentativa e erro. A estratégia usada para ajustar o limiar de atividade foi escolher um valor próximo a 1 e decrementar este valor até a rede atingir um tamanho aproximado desejado pelo usuário de SOM-STG. O limiar de atividade pode determinar o sucesso do treinamento da rede, sendo necessário ajustá-lo para cada experimento. A taxa de aprendizagem inicial, a taxa de aprendizagem final, o número máximo de iterações e o número de vizinhos por nodo são normalmente mantidos com valores constantes. Para treinar SOM-STG para um novo modo de locomoção, geralmente, é preciso apenas ajustar o limiar de atividade. Por outro lado, para ajustar os parâmetros de um CPG modelado matematicamente com sistemas de equações diferenciais, é preciso compreender pelo menos como gerar um sinal, cuja forma da onda seja compatível com a articulação que se deseja controlar. Caso cada articulação tenha um padrão de movimento diferenciado, será necessário projetar equações que produzam estas oscilações para cada articulação. Além disso, é preciso pelo menos manter o sincronismo entre os movimentos das articulações de uma pata, consequentemente mais parâmetros para serem ajustados no CPG.

O experimento desta seção, inicialmente, testa a capacidade de criação de uma trajetória cíclica, por SOM-STG, para cada um dos modos de locomoção. Os resultados das comparações das trajetórias geradas com as trajetórias originais utilizando DTW mostram que SOM-STG pode produzir a sequência temporal exata presente nos dados originais, pois o valor do DTW foi exatamente igual a zero. Assim, mesmo sem apresentar a sequência temporal, a rede SOM-STG foi capaz de relacionar estados semelhantes e interligá-los. Quatro bases de dados foram concebidas para avaliar a capacidade de aprendizagem de SOM-STG inserido em um agente robótico simulado. Cada uma das três primeiras bases de dados armazenam apenas estados de um dado modo de locomoção e o limiar de atividade foi configurado para 0,78, 0,55 e 0,7 para a marcha lenta, média e rápida respectivamente. Entretanto, a quarta base de dados armazena todos os estados de cada um dos três modos de locomoção. Para esta base de dados, o limiar de atividade foi configurado para 0,65, ajustado de modo a gerar o mesmo número de nodos em cada sub-rede igual ao número de estados em cada modo de locomoção original.

A Figura 6.5 mostra uma rede gerada por SOM-STG. O número contido em cada nodo expressa a ordem de criação de cada nodo. As ligações entre diferentes nodos expressam a proximidade de tais nodos. A sequência de nodos, começando do padrão de número 4, por exemplo, seguindo no sentido horário, reproduz a mesma sequência de movimentos obtida

6.2. DADOS ARTIFICIAIS DE UM CPG 78 0 50 100 150 200 250 0 10 20 30 40 amostras beta L. L. 1 R. L. 2 L. L. 3 R. L. 1 L. L. 2 R. L. 3 (a) 0 50 100 150 200 250 0 10 20 30 40 amostras alpha (b)

Figura 6.7: Trajetória aprendida por SOM-STG com os dados obtidos de osciladores

CNN, onde L. L. significa perna esquerda e R. L. significa perna direita. As oscilações são do modo de locomoção médio. Estas trajetórias são idênticas às originais (DTW = 0). Em (a) as oscilações nas articulações β e em (b) nas articulações α.

durante a amostragem da trajetória original. Para este exemplo, a Figura 6.6 mostra que o crescimento da rede é rápido atingindo seu tamanho máximo com poucas iterações.

A Figura 6.7 apresenta o gráfico da trajetória de estados produzida por SOM-STG para o modo de locomoção médio. Os sinais apresentados nas Figuras 6.7(a) e 6.7(b) são idênticos aos sinais produzidos pelos osciladores CNN. A mesma situação acontece para os outros dois modos de locomoção.

O SOM-CSTG também foi avaliado com os dados gerados pelos osciladores CNN e para cada base SOM-CSTG foi executado 30 vezes. Na base de dados com as amostras da marcha rápida, SOM-CSTG foi configurado com tamanho desejado da rede em 36 e tamanho máximo em 72. O valor médio do DTW foi de 0.000162 e desvio padrão de 0.000137. Para a base de dados da marcha moderada, o tamanho desejado foi configurado em 37 e o tamanho máximo em 74. O tamanho máximo é um parâmetro que influencia na etapa de eliminação de nodos, quanto maior a diferença entre o tamanho desejado e o tamanho máximo, maior é margem de nodos adicionados e removidos pela rede. Esse parâmetro é flexível, não atrapalha a convergência da rede e é utilizado para refinar o resultado caso uma topologia ótima não seja encontrada. O resultado obtido para esta base foi 0.000639 para o valor médio do DTW e 0.000620 para o desvio padrão. Para a base de dados da marcha lenta, o valor desejado para o tamanho da rede foi configurado em 55 e o tamanho máximo em 110. O resultado para a marcha lenta foi 0.000123 para o valor médio do DTW e para o desvio padrão 0,000092. Estes valores de DTW muito próximos de 0 indicam um alto grau de similaridade entre as curvas geradas pelo SOM-CSTG e os dados originados dos osciladores CNN. Visualmente, trajetórias produzidas por SOM-CSTG e por SOM-STG são idênticas. Outro resultado interessante de SOM-CSTG é a não necessidade de ajustar por tentativa e erro o valor do limiar de atividade, basta indicar o tamanho desejado que automaticamente o limiar de atividade é ajustado. O tamanho máximo da rede serve para limitar a etapa de criação de nodos do SOM-CSTG evitando a criação excessiva de nodos.

Tabela 6.2:Setup experimental para dados com ruído e comparação dos resultados obtidos com SOM-STG e SOM-CSTG. CF é a abreviação para configuração, VM é a velocidade da marcha, NR é o nível de ruído, LA é o limiar de atividade, M. DTW é a média do DTW calculado e Std é o desvio padrão para os valores do DTW.

SOM-STG SOM-CSTG CF VM NR LA M. DTW Std M. DTW Std 1 Lenta 0,01 0,600 3,14 × 10−4 5,72 × 10−4 2,06 × 10−3 4,64 × 10−4 2 Lenta 0,10 0,500 2,60 × 10−1 4,42 × 10−2 1,09 × 100 4,35 × 10−1 3 Lenta 0,30 0,145 3,63 × 100 1,38 × 100 1,16 × 100 4,30 × 10−1 4 Lenta 0,50 0,030 9,68 × 100 2,84 × 101 1,35 × 100 6,61 × 10−1 5 Moderada 0,01 0,550 1,87 × 10−3 3,67 × 10−4 2,02 × 10−3 3,60 × 10−4 6 Moderada 0,10 0,500 1,83 × 10−1 3,92 × 10−1 4,65 × 10−1 1,86 × 10−1 7 Moderada 0,30 0,160 2,32 × 100 3,91 × 10−1 1,54 × 100 1,22 × 100 8 Moderada 0,50 0,050 7,29 × 100 4,08 × 100 2,12 × 100 1,37 × 100 9 Rápida 0,01 0,595 2,43 × 10−3 4,62 × 10−3 2,78 × 10−3 4,34 × 10−4 10 Rápida 0,10 0,500 1,75 × 10−1 5,03 × 10−1 3,22 × 10−1 1,03 × 10−1 11 Rápida 0,30 0,160 3,12 × 100 5,04 × 100 2,03 × 100 1,62 × 100 12 Rápida 0,50 0,060 9,34 × 100 1,11 × 101 2,76 × 100 1,22 × 100

6.2.1

Dados Ruidosos

Esta seção avalia a aprendizagem de SOM-STG e de SOM-CSTG com dados ruidosos. Doze novas bases de dados foram criadas levando em consideração as três bases de dados usadas na Seção 6.2, quatro para cada marcha. O ruído foi adicionado em cada dimensão de cada amostra da base de dados, gerando novas amostras até formar uma quantidade 10 vezes maior do que o tamanho original da base de dados. O ruído foi introduzido aos dados através da adição de um número real obtido de uma distribuição Gaussiana com média (µ) igual a 0 e desvio padrão igual 0,01, 0,10, 0,30 ou 0,50, Tabela 6.2. Cada configuração foi executada 30 vezes. Os valores dos parâmetros de SOM-STG foram: três estados de controle escolhidos a cada 1/3 do tamanho da base de dados original e um limiar de atividade para cada base de dados (Tabela 6.2). A configuração paramétrica de SOM-CSTG está contida na Tabela 6.3, o valor máximo de nodos permitidos é igual ao valor de nodos desejado para os níveis de ruído em 0,1, 0,3 e 0,5. Esta limitação no número de nodos é importante, pois quanto maior o número de nodos na rede, maior a sua tendência de aprender o comportamento do ruído. Assim, para conjuntos de dados ruidosos é indicado um tamanho desejado da rede menor do que sem ruído. De modo geral, o tamanho desejado da rede pode ser o tamanho do conjunto de dados de treinamento, para aproveitar o máximo de informação contida nestes dados.

A configuração do limiar de atividade de SOM-STG foi escolhida de modo a aumentar o campo de ativação proporcionalmente ao nível de ruído. Um campo de ativação maior permite que SOM-STG cubra uma quantidade maior de amostras. Assim, para valores mais elevados de σ, um maior campo de ativação era escolhido e consequentemente um limiar de atividade menor. Essa estratégia diminui as chances de um nodo ser ativado apenas por amostras muito ruidosas.

6.2. DADOS ARTIFICIAIS DE UM CPG 80

Tabela 6.3:Setup experimental para dados com ruído processados por SOM-CSTG. CF é

a abreviação para configuração, VM é a velocidade da marcha, NR é o nível de ruído, TD é o tamanho desejado da rede, ME é a máxima época alcançada no treinamento e TG é a taxa de ganho da regra de atualização dos vizinhos.

CF VM NR TD TG ME 1 Lenta 0,01 55 0,10 25 2 Lenta 0,10 50 0,10 40 3 Lenta 0,30 50 0,01 40 4 Lenta 0,50 50 0,01 50 5 Moderada 0,01 34 0,10 30 6 Moderada 0,10 34 0,10 30 7 Moderada 0,30 34 0,01 40 8 Moderada 0,50 32 0,01 34 9 Rápida 0,01 33 0,10 33 10 Rápida 0,10 33 0,10 40 11 Rápida 0,30 32 0,01 40 12 Rápida 0,50 32 0,01 45 0 50 100 150 200 250 0 1 2 3 4 5 amostras alpha L. L. 1 R. L. 2 L. L. 3 R. L. 1 L. L. 2 R. L. 3 (a) 0 50 100 150 200 250 0 1 2 3 4 5 amostras alpha L. L. 1 R. L. 2 L. L. 3 R. L. 1 L. L. 2 R. L. 3 (b) 0 50 100 150 200 250 0 1 2 3 4 5 amostras alpha L. L. 1 R. L. 2 L. L. 3 R. L. 1 L. L. 2 R. L. 3 (c)

Figura 6.8:Sequência de ângulos da articulação α para: (a) marcha lenta, (b) marcha

(a) (b)

Figura 6.9:Imagens extraídas do vídeo do cachorro caminhando. Em (a) as articulações

do cachorro marcadas em verde e em (b) os ângulos das articulações.

A geração de trajetórias sofre com o ruído, valores mais elevados de ruído criam trajetórias mais distantes das trajetórias obtidas com dados sem ruído. Em cada configuração da Tabela 6.2, o limiar de atividade foi ajustado heuristicamente. Observe que existe uma tendência de decrescimento do limiar de atividade quando o nível de ruído aumenta.

As trajetórias geradas por SOM-STG com a base de dados cujo ruído era inferior à 0,1 eram semelhantes às originais, i. e., o valor resultante da comparação destas trajetórias era muito pequeno. Acima deste valor de ruído, a diferença entre a trajetória gerada e a original tende a crescer significativamente. Comparando os valores de SOM-STG com SOM-CSTG, os valores produzidos por SOM-CSTG tendem a sofrer menos com o aumento do ruído. Os valores das comparações com DTW crescem mais com SOM-STG do que com SOM-CSTG. Deste modo, o SOM-CSTG possui a tendência de gerar trajetórias mais parecidas de acordo com o aumento do nível de ruído.

Todas as configurações na Tabela 6.2 foram avaliadas com o simulador Gazebo com o SOM-STG. O sincronismo, a direção e a velocidade de locomoção do robô foram afetadas proporcionalmente pelo nível de ruído. A marcha rápida foi escolhida para avaliar em qual nível de ruído a locomoção do robô é completamente prejudicada. Assim, o nível de ruído foi gradualmente incrementado com valores de 0,1 até chegar em 1,2 quando o robô já não era capaz de movimentar-se para frente.