O cão robô está agitando as pernas no ar como um besouro desesperado. Após 10 minutos de esforço, ele consegue rolar para a frente. Meia hora depois, o robô está dando seus primeiros passos desajeitados, como um bezerro recém-nascido. Mas, depois de uma hora, o robô está andando pelo laboratório com confiança.
O que torna este robô de quatro patas especial é que ele aprendeu a fazer tudo isso sozinho, sem ser mostrado o que fazer em uma simulação de computador.
Danijar Hafner e colegas da Universidade da Califórnia, em Berkeley (EUA), usaram uma técnica de Inteligência Artificial (IA) chamada learning reinforcement, que treina algoritmos recompensando-os por ações desejadas, para treinar o robô a andar do zero no mundo real. A equipe usou o mesmo algoritmo para treinar com sucesso três outros robôs, como um que era capaz de pegar bolas e movê-las de uma bandeja para outra.
Tradicionalmente, os robôs são treinados em um simulador de computador antes de tentarem fazer qualquer coisa no mundo real. Por exemplo, um par de pernas de robô chamado Cassie aprendeu a andar usando learning reinforcement, mas somente depois de testarem a ideia em uma simulação.
Assista ao vídeo aqui.
“O problema é que os simuladores nunca serão tão precisos quanto o mundo real. Sempre haverá aspectos do mundo que você está deixando de lado”, diz Hafner, que trabalhou com os colegas Alejandro Escontrela e Philipp Wu no projeto e agora é estagiário da DeepMind. Adaptar as lições do simulador para o mundo real também requer engenharia adicional, diz ele.
O algoritmo da equipe, chamado Dreamer, usa experiências passadas para construir um modelo do mundo ao redor. O Dreamer também permite que o robô realize cálculos de tentativa e erro em um programa de computador em vez do mundo real, prevendo possíveis resultados futuros de suas ações potenciais. Isso permite que ele aprenda mais rápido do que poderia simplesmente realizando a ação. Depois que o robô aprendeu a andar, continuou aprendendo a se adaptar a situações inesperadas, como resistir a ser derrubado por um bastão.
“Ensinar robôs por tentativa e erro é um problema difícil, ainda mais pelos longos tempos de treinamento que esse ensino exige”, diz Lerrel Pinto, professor assistente de ciência da computação na Universidade de Nova York (EUA), especializado em robótica e machine learning. O Dreamer mostra que o deep learning reinforcement e os modelos de mundo são capazes de ensinar novas habilidades aos robôs em um período muito curto de tempo, diz ele.
Jonathan Hurst, professor de robótica da Universidade do Estado do Oregon (EUA), diz que as descobertas, que ainda não foram revisadas por pares, deixam claro que “o learning reinforcement será uma ferramenta fundamental no futuro do controle de robôs”.
Remover a necessidade de se usar o simulador no treinamento dos robôs têm muitas vantagens. O algoritmo pode ser útil para ensinar robôs a aprender habilidades no mundo real e se adaptar a situações como falhas de hardware, diz Hafner. Por exemplo, um robô pode aprender a andar com um motor com defeito em uma perna.
A técnica também pode ter um enorme potencial para coisas mais complicadas, como direção autônoma, que exige simuladores complexos e caros, diz Stefano Albrecht, professor assistente de inteligência artificial da Universidade de Edimburgo, Reino Unido. Uma nova geração de algoritmos de learning reinforcement poderia “captar super rapidamente como o ambiente funciona no mundo real”, diz Albrecht.
Mas há alguns grandes problemas não resolvidos, diz Pinto.
Com o learning reinforcement, os engenheiros precisam especificar em seu código quais comportamentos são bons e, portanto, recompensados, e quais são indesejáveis. Nesse caso, virar e andar é bom, enquanto não andar é ruim. “Um roboticista precisará fazer isso para cada tarefa [ou] problema que deseja que o robô resolva”, diz Pinto. Isso consome muito tempo e é difícil programar comportamentos para situações inesperadas.
E enquanto os simuladores podem ser imprecisos, os modelos mundiais também podem, diz Albrecht. “Os modelos mundiais começam do zero, então inicialmente as previsões dos modelos serão completamente dispersas”, diz ele. Leva tempo até que eles obtenham dados suficientes para torná-los precisos.
No futuro, diz Hafner, seria bom ensinar o robô a entender comandos falados. Hafner diz que a equipe também quer conectar câmeras ao cão robô para que ele possa enxergar. Isso permitiria que ele navegasse em situações internas complexas, como caminhar até uma sala, encontrar objetos e – sim! – brincar de buscar.