Training Robots to Evaluate Robots: Example-Based Interactive Reward Functions for Policy Learning
Autores: Kun Huang, Edward S. Hu, Dinesh Jayaraman · CoRL 2022
Licenças
- Acesso aberto
- Artigo: CC BY 4.0
Tudo o que segue se baseia no artigo completo sob a licença CC BY 4.0; sua figura é mostrada com crédito aos autores.
Em resumo
O LIRF treina uma segunda política que age sobre um resultado (puxa uma porta, cutuca uma torre, gira uma válvula) para distinguir sucesso de falha, e usa o veredito dela como recompensa para a política da tarefa.
Por que importa
A especificação da tarefa continua exigindo apenas exemplos de sucesso, sem demonstrações, recompensas projetadas ou sensores extras, e ainda assim funciona quando o sucesso não é visível. As verificações aprendidas também podem ser reutilizadas na implantação para detectar execuções incompletas e deixar a política da tarefa tentar de novo.
Problema
Métodos de recompensa por exemplos especificam uma tarefa com imagens de resultados bem-sucedidos, mas muitos resultados não podem ser julgados a partir de uma imagem passiva: uma tampa de garrafa frouxa parece igual a uma apertada, e o trinco de uma porta pode ficar escondido atrás da porta. Essa ambiguidade de estados faz os classificadores de sucesso baseados em imagens falharem em tarefas parcialmente observáveis.
Solução proposta
O robô recebe exemplos físicos 'acionáveis' de sucesso, e uma política de função de recompensa interativa (IRF) é treinada com SAC para agir sobre eles e sobre resultados de falha produzidos por uma política inicial da tarefa treinada com VICE, de modo que depois um classificador de uma única observação consiga distingui-los. O veredito da IRF se torna a recompensa terminal para treinar a política final da tarefa, e a mesma IRF pode ser executada após a execução em um laço de executar e verificar até julgar a tarefa concluída.
Principais ideias
- A interação pode revelar um sucesso oculto da tarefa: as IRFs aprendidas puxam a porta, cutucam o bloco de baixo da torre ou aplicam um pequeno torque no sentido anti-horário à válvula.
- Classificadores sobre observações únicas sofrem de ambiguidade de estados (state aliasing), e é por isso que VICE e GAIfO têm desempenho ruim nessas tarefas parcialmente observáveis.
- Um classificador aplicado a uma observação após a interação basta para rotular o resultado; não é necessário um classificador sobre toda a trajetória da IRF.
- A IRF não usa informação privilegiada, então após o treinamento pode servir como verificador dentro do laço.
- Uma IRF aprendida foi competitiva com verificações interativas codificadas à mão (Manual IRF), ou melhor que elas.
Principais resultados
- Sucesso na tarefa para LIRF / LIRF+Verify (Tabela 1): trancar a porta 0,640 / 0,958, empilhar blocos 0,846 / 0,884, parafusar com robô real 0,82 / 0,99.
- O VICE atinge 0,032, 0,310 e 0,02 nas mesmas três tarefas, e o GAIfO 0,112, 0,275 e 0,0.
- A recompensa com o estado real dá 0,714 (porta), 0,956 (blocos) e 0,87 (parafusar): o LIRF+Verify a supera em trancar a porta e em parafusar, mas não em empilhar blocos, embora o texto diga que o LIRF+Verify supera todas as baselines.
- Acurácia de classificação de sucesso da IRF: 0,992 ± 0,006 para trancar a porta, 0,852 ± 0,023 para empilhar blocos e 0,98 para parafusar (Tabela 2).
- Exemplos positivos acionáveis necessários: 1 para parafusar, 110 para trancar a porta e 7k para empilhar blocos.
- O treinamento levou cerca de 2M passos de simulação para as políticas LIRF de trancar a porta e de empilhar, 50k passos (cerca de 10 horas no robô real) para parafusar e cerca de 20k passos para cada política IRF.
Limitações
- O LIRF ajuda mais quando as políticas da tarefa treinadas com recompensas de uma única imagem falham na maioria das vezes; em cenários totalmente observáveis, as IRFs trazem benefício marginal ou nenhum (segundo os autores).
- Os exemplos positivos precisam ser guardados fisicamente e apresentados ao robô; isso é fácil para parafusar (1 exemplo), mas trabalhoso para empilhar blocos (7k) (segundo os autores).
- Nas duas tarefas simuladas, as observações 'imitam uma visão perfeita' (poses do objeto e do robô) em vez de imagens de câmera.
- O teste com robô real é uma única tarefa de girar uma válvula, com o travamento do parafuso imitado por um motor sob a válvula.
Impacto na área
Vencedor do prêmio de melhor artigo do CoRL 2022 (Best Paper Award), com 6 citações. O artigo afirma que todo o código e os ambientes serão liberados, e a página oficial do projeto aponta para um repositório de código público.
Resumo
Interações físicas muitas vezes ajudam a revelar informações que não são imediatamente aparentes. Por exemplo, podemos puxar a perna de uma mesa para avaliar se ela está bem montada, ou virar uma garrafa de água de cabeça para baixo para verificar se ela é estanque. Propomos treinar robôs para adquirir automaticamente esses comportamentos interativos, com o objetivo de avaliar o resultado de uma tentativa de execução de uma habilidade robótica. Essas avaliações, por sua vez, servem como "funções de recompensa interativas" (IRFs) para treinar políticas de aprendizado por reforço que executem a habilidade alvo, como parafusar bem a perna da mesa. Além disso, mesmo depois que as políticas da tarefa estão totalmente treinadas, as IRFs podem servir como mecanismos de verificação que melhoram a execução online da tarefa. Para qualquer tarefa, nossas IRFs podem ser treinadas de forma conveniente usando apenas exemplos de resultados bem-sucedidos, e nenhuma especificação adicional é necessária para treinar a política da tarefa depois disso. Em nossas avaliações de trancar uma porta e empilhar blocos com peso em simulação, e de apertar um parafuso em um robô real, as IRFs permitem grandes melhorias de desempenho, superando até baselines com acesso a demonstrações ou a recompensas cuidadosamente projetadas. Site do projeto: https://sites.google.com/view/lirf-corl-2022/
Links
- arXiv 2212.08961: https://arxiv.org/abs/2212.08961
- DOI 10.48550/arXiv.2212.08961: https://doi.org/10.48550/arXiv.2212.08961
- PDF: https://proceedings.mlr.press/v205/huang23a/huang23a.pdf
- Código: https://github.com/penn-pal-lab/lirf_public
- Página do projeto: https://sites.google.com/view/lirf-corl-2022/