Melhorando o Movimento de Robôs com Pernas em Pedras de Passo
Um novo método melhora a habilidade dos robôs de se movimentarem de maneira eficiente em superfícies irregulares.
― 9 min ler
Índice
Robôs com pernas melhoraram muito na capacidade de fazer movimentos dinâmicos. Mas, se mover em espaços apertados, como em pedras de passo, ainda é um desafio e tanto. Esse estudo fala sobre um novo método que combina controle, técnicas de busca e aprendizado pra ajudar robôs a se moverem de forma eficiente em pedras de passo.
A ideia principal é usar um sistema chamado Controle Preditivo Não Linear (NMPC) pra criar movimentos baseado em um contato planejado com a superfície. Pra encontrar a melhor forma de encostar nas pedras, usamos uma técnica chamada Monte Carlo Tree Search (MCTS). Embora MCTS e NMPC consigam encontrar um plano viável rápido, ainda não são tão eficazes pra respostas em tempo real a condições que mudam. Por isso, criamos um conjunto de dados pra treinar uma política que aprende as melhores ações pro robô em várias situações.
Nos nossos testes, aplicamos esse método em um robô quadrúpede chamado Solo12. Esse robô consegue pular entre diferentes metas nas pedras de passo em ambientes complicados.
Desafios no Controle de Robôs com Pernas
Controlar robôs com pernas pode ser complicado porque envolve lidar com decisões contínuas e discretas. As decisões contínuas envolvem coisas como quanta força usar ao pisar, enquanto as decisões discretas envolvem qual pedra pisar a seguir. Avanços recentes focaram nos aspectos contínuos, mas juntar os dois tipos de decisões ainda é complexo e difícil de calcular.
Muitas abordagens existentes tentaram lidar com movimentos de corpo inteiro pra robôs usando técnicas avançadas. Embora funcionem bem em simulações, muitas vezes falham em situações reais devido à alta demanda computacional e sensibilidade às condições iniciais.
Pra gerenciar movimentos em tempo real, muitos sistemas atuais dividem o problema em duas partes: planejar onde o robô vai pisar e descobrir sua trajetória de movimento. O planejador de contato decide onde cada parte do robô vai, que é a parte discreta do processo de tomada de decisão. Métodos tradicionais usam algoritmos ou tipos específicos de programação pra gerenciar essas decisões. No entanto, à medida que o número de passos aumenta, esses métodos geralmente não funcionam bem e podem ignorar a dinâmica envolvida no movimento do robô.
Trabalhos anteriores tentaram simplificar os cálculos de tomada de decisão incorporando dinâmicas de momento em seus modelos. Embora isso funcione pra problemas menores, logo se torna inadministrável com mais pontos de contato.
Por outro lado, o Aprendizado por Reforço Profundo (DRL) mostrou ótimos resultados em movimentos ágeis de quadrúpedes, mas aplicar isso em terrenos desafiadores como pedras de passo foi limitado. Algumas pesquisas mostraram movimentos em ambientes arriscados, mas devido à escassez das pedras de passo, muitas vezes precisaram de treinamento prévio em tarefas mais simples antes de conseguirem se adaptar a novos cenários. No entanto, nosso método não requer sistemas de recompensa complicados ou múltiplas fases de treinamento.
Nossa Abordagem
O objetivo desse estudo é desenvolver uma maneira eficaz de planejar contatos para robôs com pernas atravessando pedras de passo. Usamos MCTS, que mostrou ser bom em lidar com decisões complexas, junto com NMPC pra garantir que qualquer movimento feito seja viável em tempo real. Diferente dos algoritmos anteriores que usam modelos simplificados do movimento do robô, nosso método avalia os movimentos dinâmicos reais envolvidos.
Ao utilizar MCTS pra planejamento e NMPC pra execução, conseguimos criar uma estrutura que permite que o robô reaja e adapte seus movimentos com base em condições em tempo real. Essa abordagem também permite que o robô aprenda com experiências passadas e dados coletados durante movimentos anteriores.
Planejamento de Contato Usando MCTS
Enquadramos nosso problema de planejamento de contato como um processo de tomada de decisão onde o estado reflete o contato do robô com as pedras de passo. O objetivo é escolher o melhor próximo ponto de contato, que ajuda o robô a se mover em direção à sua meta. MCTS cria uma estrutura de árvore onde os nós representam estados possíveis. O processo inclui selecionar um caminho, expandi-lo adicionando transições possíveis, simular movimentos e atualizar os valores com base nas recompensas recebidas ao alcançar o estado desejado.
O processo do MCTS consiste em várias etapas:
Seleção: Comece na raiz (estado inicial) e mova-se pela árvore até alcançar um nó folha, que não foi totalmente expandido.
Expansão: Se o nó selecionado não for terminal, adicione todos os estados sucessores à árvore com base nas ações possíveis.
Simulação: Realize ações aleatórias a partir de um dos novos estados pra criar uma simulação. A recompensa é então calculada no final dessa simulação.
Retropropagação: Atualize os valores dos estados ao longo do caminho tomado com base na recompensa recebida pra guiar seleções futuras.
Melhorias no MCTS
Pra melhorar a eficiência do MCTS, implementamos várias técnicas:
- Evitar considerar transições de volta ao mesmo estado pra reduzir buscas redundantes.
- Verificar a viabilidade de movimentos durante a fase de expansão pra eliminar opções que não são alcançáveis ou que podem causar colisões.
- Escolher o próximo estado com base em uma estratégia mista de exploração e exploração, permitindo escolhas aleatórias, bem como seleções direcionadas com base em sucessos anteriores.
Essa abordagem garante que o MCTS possa encontrar sequências promissoras de pontos de contato, enquanto permite que o NMPC valide a viabilidade dinâmica desses movimentos.
NMPC em Nossa Estrutura
O componente NMPC funciona junto com o MCTS, pegando um plano de contato definido e otimizando-o dinamicamente pra produzir movimentos viáveis. O NMPC calcula as forças e Trajetórias necessárias pro robô manter o equilíbrio enquanto faz saltos entre os pontos de contato. Essa otimização acontece em alta frequência, permitindo ajustes em tempo real durante os movimentos.
Inicialmente, definimos os pontos de contato no centro das pedras de passo, o que simplifica os cálculos. Porém, como trabalho futuro, planejamos refinar isso permitindo o posicionamento dos pés dentro das áreas das pedras.
Aprendendo um Planejador de Contato
Enquanto a estrutura MCTS e NMPC é eficiente, pode não funcionar em tempo real durante o movimento real. Pra resolver isso, treinamos uma rede neural pra imitar a política do MCTS. Esse aprendizado permite que o robô reaja rapidamente às mudanças em seu ambiente.
Coletamos dados sobre planos de contato bem-sucedidos gerados pelo MCTS e as localizações associadas. Esses dados são então usados pra treinar a rede neural pra prever os melhores pontos de contato com base no estado atual do robô e nas metas planejadas.
Pra tornar essa rede robusta, garantimos que os dados de entrada sejam independentes da posição global do robô, focando em colocações relativas. A tarefa da rede é prever localizações de contato pra cada perna do robô com base nas entradas dadas.
Variações no Design da Rede
Exploramos várias arquiteturas de rede pra encontrar a melhor solução. Dada a natureza multimodal dos nossos dados, consideramos arquiteturas especializadas que possam lidar com essa complexidade.
Uma abordagem promissora é usar Redes de Ponteiro, que são adequadas pra selecionar elementos de sequências de entrada. Outro método envolve modelos de difusão, que são projetados pra gerenciar distribuições multimodais de forma eficaz. Ambos os métodos visam aproveitar os diversos resultados do MCTS pra aprimorar a tomada de decisão nos movimentos do robô.
Resultados e Desempenho
Testando a estrutura proposta em um ambiente de simulação, demonstramos que o MCTS combinado com NMPC gera movimentos de salto viáveis sobre pedras de passo. Parâmetros e desempenho são avaliados em múltiplas tentativas, e os resultados mostram uma forte correlação entre planejamento eficaz e movimentos realmente bem-sucedidos.
O desempenho do sistema é medido em diferentes configurações e ambientes, indicando que ele pode se adaptar e encontrar soluções mesmo quando pedras de passo são removidas ou mudadas.
Direções Futuras
Embora nossas descobertas sejam promissoras, o trabalho futuro vai focar em melhorar a arquitetura dos nossos modelos. Também vamos integrar nosso planejador de contato aprendido com hardware real pra testar em configurações reais. Reduzir os tempos de computação pra aplicações do mundo real é uma prioridade, e pretendemos substituir o NMPC por uma política de baixo nível aprendida pra agilizar o controle.
Além disso, queremos expandir nossa estrutura pra otimizar a marcha do robô e o posicionamento dos pés, mapeando ambientes locais de forma eficaz. Aprender com as câmeras embarcadas do robô é outro objetivo, aprimorando a capacidade do robô de tomar decisões informadas baseadas em dados visuais.
Conclusão
A pesquisa apresenta uma estrutura que permite que robôs com pernas planejem e adaptem seus movimentos de forma eficiente em ambientes restritos como pedras de passo. Ao integrar MCTS com NMPC, conseguimos criar soluções dinâmicas pra desafios de movimento complexos. A abordagem não depende muito de sistemas de recompensa complicados ou fases extensas de treinamento, tornando-a mais eficaz pra aplicações do mundo real.
Através do aprendizado e otimização dos planos de contato, mostramos o potencial dos robôs em realizar movimentos avançados em ambientes diversos. À medida que continuamos a refinar e melhorar nossos métodos, estamos animados com o futuro da locomoção ágil na robótica.
Título: Diffusion-based learning of contact plans for agile locomotion
Resumo: Legged robots have become capable of performing highly dynamic maneuvers in the past few years. However, agile locomotion in highly constrained environments such as stepping stones is still a challenge. In this paper, we propose a combination of model-based control, search, and learning to design efficient control policies for agile locomotion on stepping stones. In our framework, we use nonlinear model predictive control (NMPC) to generate whole-body motions for a given contact plan. To efficiently search for an optimal contact plan, we propose to use Monte Carlo tree search (MCTS). While the combination of MCTS and NMPC can quickly find a feasible plan for a given environment (a few seconds), it is not yet suitable to be used as a reactive policy. Hence, we generate a dataset for optimal goal-conditioned policy for a given scene and learn it through supervised learning. In particular, we leverage the power of diffusion models in handling multi-modality in the dataset. We test our proposed framework on a scenario where our quadruped robot Solo12 successfully jumps to different goals in a highly constrained environment.
Autores: Victor Dhédin, Adithya Kumar Chinnakkonda Ravi, Armand Jordana, Huaijiang Zhu, Avadesh Meduri, Ludovic Righetti, Bernhard Schölkopf, Majid Khadiv
Última atualização: 2024-10-14 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2403.03639
Fonte PDF: https://arxiv.org/pdf/2403.03639
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.