Robust Locomotion on Legged Robots through Planning on Motion Primitive Graphs
Autores: Wyatt Ubellacker, Aaron D. Ames · ICRA 2023
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
Modelar cada controlador como uma primitiva de movimento com uma região de atração segura permite que uma busca no estilo RRT encontre online, em menos de 50 ms, sequências de recuperação em um quadrúpede A1.
Por que importa
O grafo cresce com o número de primitivas e seus argumentos, e não com a dinâmica do sistema, e o método não depende de como o controlador de cada primitiva é construído, desde que atenda à definição. No hardware, um único procedimento de busca produz recuperação de chutes, puxões na perna, terreno irregular e quedas, em vez de regras de transição escritas para cada caso.
Problema
A autonomia de robôs muitas vezes encadeia comportamentos (primitivas de movimento) por meio de sequências, máquinas de estados ou busca em grafos, mas decidir quando é seguro trocar entre primitivas dinâmicas geralmente depende de análises específicas de cada transição ou de heurísticas. O trabalho anterior dos autores lidava apenas com primitivas discretas e busca offline, o que limita seu uso para reagir a perturbações no momento em que acontecem.
Solução proposta
Cada primitiva de movimento é definida por seus argumentos contínuos, setpoint, lei de controle, região de atração, conjunto seguro e região de atração segura. Uma função de transferência de primitivas de movimento leva um estado ao setpoint da primitiva se o estado estiver em sua região de atração segura e, caso contrário, devolve o estado inalterado; encadear essas funções forma um grafo misto discreto e contínuo, no qual um algoritmo inspirado no RRT busca online, antes que uma descida de gradiente com restrições ajuste argumentos e tempos e que nós desnecessários sejam podados.
Principais ideias
- Usar a região de atração segura de cada primitiva como sua condição de entrada transforma 'esta transição é segura?' na verificação de se o estado atual está em um conjunto.
- A estabilidade exponencial garante uma duração mínima após a qual o estado fica a menos de um pequeno ε do setpoint, o que justifica abstrair uma primitiva como um mapa do estado para o setpoint.
- A busca aleatorizada é adequada a esse grafo porque as funções de transferência são não convexas e a busca discreta escala mal com o número de primitivas, de conjuntos de argumentos e com a dimensão do estado.
- As regiões de atração seguras foram estimadas de forma conservadora a partir da análise de Lyapunov do controlador linearizado e depois ampliadas por testes em hardware até cobrir os estados normais de operação.
Principais resultados
- A busca no grafo normalmente leva menos de 50 ms e roda de forma assíncrona ao lado de um laço de controle de 1 kHz em um Intel NUC embarcado (i7-10710U, 16 GB de RAM).
- A partir do repouso com os motores não acionados, o planejador encadeia Lie, Stand (h = 0,2 m) e Walk (h = 0,25 m, vx = 0,2 m/s).
- Chutes durante Stand (h = 0,25 m): chutes pequenos não exigem transição, chutes moderados passam por Lie e chutes maiores passam por caminhar no lugar antes de voltar a Stand.
- Puxão na perna durante a caminhada: o robô permanece em Land enquanto a perna traseira é segurada, depois completa a sequência replanejada e volta a andar assim que é solto.
- Pedras soltas e irregulares, sem percepção e com uma primitiva de caminhada que supõe chão plano: o robô avança devagar, replanejando por Lie, Stand e Land à medida que ocorrem perturbações.
- Arremesso de uma borda de cerca de 0,5 m: Land é executada enquanto o robô está no ar, e então o planejador passa por Lie e Stand de volta para Walk.
Limitações
- A busca probabilística ignora estrutura adicional do problema; os autores planejam usar essa estrutura para melhorar os resultados.
- Não há percepção: obstáculos e ambientes em mudança não são modelados explicitamente, e a primitiva de caminhada supõe terreno plano, então o avanço sobre pedras soltas é lento.
- As regiões de atração seguras são estimativas conservadoras obtidas da análise de Lyapunov linearizada e de testes em hardware, não conjuntos exatos.
- Os resultados são mostrados em figuras e vídeo, sem estatísticas de taxa de sucesso, usando quatro primitivas experimentais (Lie, Stand, Walk, Land) em um único robô.
Impacto na área
Vencedor do prêmio ICRA 2023 Outstanding Student Paper e finalista do prêmio ICRA 2023 Outstanding Locomotion Paper, com 17 citações. Os autores publicam um vídeo suplementar dos experimentos; o artigo não informa liberação de código.
Resumo
As demandas funcionais de sistemas robóticos muitas vezes exigem completar diversas tarefas ou comportamentos sob o efeito de perturbações ou em ambientes incertos. Há interesse crescente na autonomia de robôs dinâmicos, como multirrotores, veículos motorizados e plataformas com pernas. Nesses casos, perturbações e condições ambientais podem ter impacto significativo na execução bem-sucedida dos comportamentos dinâmicos individuais, chamados de "primitivas de movimento". Apesar disso, é possível obter robustez alternando para primitivas de movimento adequadas e transitando por elas. Este artigo contribui com tal método ao apresentar uma abstração da dinâmica das primitivas de movimento e uma "função de transferência de primitivas de movimento" correspondente. A partir dela, é construído um "grafo de primitivas de movimento" misto discreto e contínuo, e é detalhado um algoritmo capaz de buscar nesse grafo online. O resultado é um framework capaz de realizar robustez holística em sistemas dinâmicos. Isso é demonstrado experimentalmente para um conjunto de primitivas de movimento em um robô quadrúpede, submetido a diversas perturbações ambientais e intencionais.
Links
- arXiv 2209.07503: https://arxiv.org/abs/2209.07503
- DOI 10.1109/ICRA48891.2023.10160672: https://doi.org/10.1109/ICRA48891.2023.10160672
- PDF: https://arxiv.org/pdf/2209.07503v1