• Nenhum resultado encontrado

2.2 Manipulação Bimanual na Robótica

2.2.1 Métodos de Planeamento de Movimentos Bimanuais

2.2.1.3 Programação por Demonstração

A programação por demonstração, também conhecida como a aprendizagem por imitação, tem sido uma abordagem usada para dar capacidade ao robô de aprender novas ações apenas pela observação do comportamento e movimentos de uma pessoa. Assim sendo, este método aborda o problema da geração de movimentos human-like por parte de um robô antropomórfico, capturando caraterísticas de coordenação tem- porais e espaciais da manipulação bimanual humana. Seguidamente são apresentados três trabalhos relativos a esta área.

Começando pelo trabalho de Zöllner et al. (2004), estes propuseram um sistema baseado na programação por demonstração (em Inglês Programming by Demonstration - PbD), a fim de dotar uma plataforma robótica humanoide com a capacidade de observar, aprender e executar tarefas geralmente feitas por humanos. A figura 2.5 ilustra todo o ciclo PbD, este permite a transferência do conhecimento da tarefa humana para o robô através da extração de informação. Além do mais, este ciclo destina-se a assegurar que a representação percebida pelo processo de aprendizagem é aplicável a outros robôs. Basicamente, este ciclo de programação por demonstração (proposta neste artigo) é composto por uma etapa inicial de perceção e interpretação, de forma a extrair o máximo de informação possível a partir da tarefa de demonstração. O passo seguinte, a generalização, ou seja, transformar toda a informação recolhida numa representação generalizada e resumida, de forma a ser aplicável ao robô. Por último, mapear a tarefa e transferir as trajetórias para o robô específico.

Figura 2.5: Esquema do ciclo de programação por demonstração: da demonstração humana

à execução robótica (retirado de (Zöllner et al., 2004)).

Porém, falta referir que para o controlo da execução de tarefas bimanuais coordenadas foi desenvolvido um modelo Petri Net. Além disso, é importante notar que este método preserva a estrutura da tarefa, devido à sua generalização, mas carece de flexibilidade. Deste modo não permite ao sistema se adaptar a mudanças no cenário, especialmente, no caso de complexas tarefas de manipulação bimanual. De notar, que esta proposta de programação por demonstração foi validada com a tarefa bimanual de abrir um frasco.

Posteriormente, em Asfour et al. (2008) é introduzido um modelo baseado no

Hidden Markov Model (HMM) para aprendizagem por imitação dos movimentos

dos braços humanos para um robô humanoide. Essencialmente, o processo consiste em criar contínuos HMMs a partir da demonstração dos movimentos bimanuais pretendidos, executados por várias vezes. Estes modelos são treinados tendo em conta os traços caraterísticas do movimento, ou pontos chave de cada demonstração. Assim, apenas são considerados e usados para a reprodução do movimento, os pontos chave presentes em todas ou quase todas as demonstrações, os chamados de pontos chave comuns. Asfour e os seus colegas também demonstraram a capacidade da

utilização do HMM para detetar interdependências temporais entre os braços na execução de tarefas bimanuais. De facto, a coordenação temporal pode ser muito útil tal como a coordenação espacial, especialmente, durante movimentos bimanuais coordenados. Além do mais, a demonstração múltipla da execução de um determinada tarefa é útil a fim de determinar a veracidade de que a relação temporal entre os braços detetada é uma condição real.

Este método foi testado usando o modelo cinemático, desenvolvido para simular a cinemática dos membros superiores humanos de 18-DOFs, em relação aos três diferentes movimentos bimanuais: apanhar e colocar um objeto com as duas mãos, desapertar a tampa de um frasco e verter o líquido de um recipiente para um copo. Os resultados obtidos são encorajadores para os autores, no entanto, eles afirmam que o método não é invariante a translações e rotações do robô, o que indica que pode haver alterações aquando uma dessas transformações. Para além disso, esta abordagem carece de flexibilidade, pois como é uma imitação exata da tarefa de manipulação leva em conta os objetos manipulados durante a demonstração dos movimentos. Por outras palavras, o desempenho da imitação diminui quando o cenário ou os objetos são alterados.

Gribovskaya e Billard em (Gribovskaya and Billard, 2008) combinaram a técnica de programação por demonstração com um sistema dinâmico para o controlo do movimento. Essencialmente, o modelo proposto é composto por dois sistemas:

1) um sistema de aprendizagem em que se recolhe e processa os dados durante a

demonstração da tarefa bimanual e os traduz em restrições de coordenação; 2) um sistema motor que dinamicamente gera o movimento enquanto satisfaz as restrições de coordenação dadas pelo sistema de aprendizagem. Neste trabalho os autores defendem que para o robô realizar com sucesso uma tarefa de manipulação bimanual alguns aspetos da coordenação dos movimentos dos dois braços devem ser tidos em conta, como as restrições espaciais e temporais.

Atendendo ao processo geral, este inicia com o processo de aprendizagem do robô que é feito a partir do ensino cinestésico, isto é, por um humano que guia os

braços do robô através dos movimentos necessários para executar a tarefa. Os dados são, então, recolhidos e baseado na ideia de que um dos braços é mais limitado que o outro, são extraídas as posturas chave analisando as trajetórias do braço mais constrangido e a posição relativa entre as duas mãos. As posturas chave do outro braço são inferidas com base nesses dados. Assim, estas posturas coordenadas são vistas como posições estáveis, ou antes atratores num sistema de controlo dinâmico, que devem ser alcançadas tendo em conta uma ordem de forma a executar a tarefa (ver figura 2.6).

Figura 2.6: Sequência das três posturas chave (posturas coordenadas estáveis) referentes

à tarefa de colocar açúcar numa chávena de chá: 1 - posição inicial, 2 - colocar açúcar na chávena e 3 - novamente para a posição inicial (imagem retirada de (Gribovskaya and Billard, 2008)).

De forma resumida, esta abordagem tem duas vantagens: 1) as posturas chave são formuladas como atratores do sistema dinâmico, o que torna o movimento gerado robusto contra pequenas e rápidas perturbações; 2) a postura relativa entre as duas mãos é selecionada como a variável que capta as restrições de coordenação durante o processo de aprendizagem, assim, a execução do movimento é invariante (ou seja, não se altera quando sofre alguma transformação) a translações ou rotações do robô.