Mão robótica resolve Cubo Mágico sozinha

Por Fidel Forato | 18 de Outubro de 2019 às 13h30
OpenAi

Mãos humanas são capazes de resolver uma infinidade de tarefas, de forma simples e rápida. No entanto, reproduzir esses movimentos a partir de um robô tem exigido o desenvolvimento de máquinas específicas para cada função realizada, como abrir uma porta. Como alternativa, os cientistas passaram décadas, tentando desenvolver um hardware robótico para uso geral, mas com sucesso limitado. Já a nova mão robótica, que resolve o problema do cubo mágico em 60% das tentativas, é um ponto fora da curva nessa história.

A invenção do laboratório de inteligência artificial OpenAI, baseado em São Francisco, se destaca por uma nova abordagem do software, já que o hardware utilizado na mão do robô foi desenvolvido há mais de 15 anos. Um par de redes neurais foi treinado para resolver o desafio do cubo, inteiramente por meio de simulações, o que permitiu que o sistema pudesse lidar com situações inusitadas, como ser estimulado por uma girafa de pelúcia.

Processo de aprendizado de mão robótica (Fonte: OpenAi)

Desde maio de 2017, a equipe de São Francisco tenta treinar uma mão robótica humana para resolver um Cubo Mágico. A escolha do desafio não foi aleatória, afinal os pesquisadores acreditam que o treinamento bem-sucedido de uma mão robótica para realizar tarefas complexas, que exigem manipulação, estabelece novas bases para robôs de uso geral. Em julho do mesmo ano, a mão conseguiu resolver o problema em uma simulação. Mas, a partir de julho de 2018, ela foi possível manipular objetos físicos, etapa importante para resolver o problema hoje.

Resolver um cubo mágico com a mão de um robô ainda é difícil. Atualmente, o método resolve o cubo com 20% das vezes, nos desafios mais difíceis, que exigem cerca de 26 rotações. Nas rodadas mais simples que exigem até 15 rotações, a taxa de sucesso é de 60%. Por exemplo, a mão robótica fracassa quando o tempo limite estipulado é atingido. No entanto, a rede consegue resolver o cubo mágico a partir de qualquer condição inicial. Portanto, se o cubo cair, é possível colocá-lo novamente na mão do robô para que ele resolva.

A nova abordagem

As redes neurais do robô foram treinadas em simulações, utilizando entre suas técnicas, o aprendizado por reforço. Nesse processo, o maior desafio foi criar ambientes de simulação diversificados o suficiente para capturar as possibilidades do mundo real. Fatores como atrito, elasticidade e dinâmica são incrivelmente difíceis de medir e modelar para objetos tão complexos, como esses cubos ou mãos robóticas. A equipe também percebeu que a simples aleatorização das adversidades por si só não é suficiente.

Para superar essa barreira, desenvolveram o método chamado Random Domain Randomization (ADR), que gera infinitamente ambientes progressivamente mais difíceis na simulação, a medida que as “fases” vão sendo passadas. Assim, o ADR começa com um ambiente único e não aleatório, em que uma rede neural aprende a resolver o cubo.

À medida que a rede neural melhora e atinge um limite de desempenho, a quantidade de randomização, que inclui novos elementos, aumenta automaticamente. Isso dificulta a tarefa, já que a rede neural deve agora aprender a generalizar para ambientes mais aleatórios. A rede continua aprendendo até que exceda novamente o limite de desempenho, quando mais uma randomização entra em ação e o processo é repetido.

Um dos parâmetros que randomizamos é o tamanho do cubo, o que altera diretamente sua dificuldade. Para os novos desafios, foram aplicados os outros parâmetros, como diferentes massas para o cubo, níveis de fricção dos dedos do robô e novos materiais visuais da superfície da mão. A rede neural, portanto, precisa aprender a resolver o cubo sob essas condições cada vez mais difíceis e, dessa forma, vão armazenando memórias.

Fonte: Open AI

Gostou dessa matéria?

Inscreva seu email no Canaltech para receber atualizações diárias com as últimas notícias do mundo da tecnologia.