Agora, investigadores do MIT desenvolveram uma técnica de verificação de segurança que pode demonstrar com 100% de precisão que a trajetória de um robô permanecerá livre de colisões (assumindo que os modelos do robô e do ambiente são precisos). O seu método, tão preciso que consegue distinguir entre trajetórias que diferem em apenas milímetros, fornece a comprovação em poucos segundos.
Mas o utilizador não tem de confiar na palavra dos investigadores: a prova matemática gerada por esta técnica pode ser verificada rapidamente com operações matemáticas relativamente simples.
Os investigadores conseguiram isto utilizando uma técnica algorítmica especial chamada programação de soma de quadrados, que adaptaram para resolver eficazmente o problema de verificação de segurança. A programação por soma de quadrados permite que o método seja generalizado para uma vasta gama de movimentos complexos.
Esta técnica pode ser especialmente útil para robôs que precisam de se mover rapidamente, evitando colisões em espaços congestionados, como robôs que preparam alimentos numa cozinha industrial. É também adequada para situações em que as colisões entre robôs podem causar ferimentos, como no caso de robôs de saúde que tratam pacientes vulneráveis.
"Com este trabalho, demonstrámos que alguns problemas difíceis podem ser resolvidos com ferramentas conceptualmente simples. A programação de soma de quadrados é uma ideia algorítmica poderosa e, embora não resolva todos os problemas, se for aplicada com cuidado, pode resolver alguns problemas não triviais", afirma Alexandre Amice, estudante de pós-graduação em Engenharia Eletrotécnica e de Computadores (EECS) e autor principal de um artigo sobre esta técnica.
Amice colaborou no artigo com Peter Werner, outro estudante de Engenharia Eletrotécnica e de Computadores (EECS), e com Russ Tedrake, professor catedrático da Cátedra Toyota de Aeronáutica e Astronáutica e Engenharia Mecânica na EECS, e membro do Laboratório de Ciência da Computação e Inteligência Artificial (CSAIL). O trabalho será apresentado na Conferência Internacional de Robótica e Automação.
Certificar a segurança
Muitos métodos atuais para verificar se o movimento planeado de um robô está livre de colisões fazem-no simulando a trajetória e verificando a cada poucos segundos se o robô colide com alguma coisa. Mas estas verificações de segurança estáticas não conseguem prever se o robô irá colidir com alguma coisa nos segundos que se seguem.
Isto pode não ser um problema para um robô que se desloca num espaço aberto com poucos obstáculos, mas para robôs que executam tarefas complexas em espaços confinados, alguns segundos de movimento podem fazer uma enorme diferença.
Conceptualmente, uma forma de demonstrar que um robô não está em rota de colisão seria segurar um pedaço de papel que o separasse de qualquer obstáculo no ambiente. Matematicamente, este pedaço de papel é chamado de hiperplano. Muitos algoritmos de controlo de segurança geram este hiperplano apenas uma vez. No entanto, a cada movimento do robô, um novo hiperplano precisa de ser recalculado para realizar a verificação de segurança.
Em contraste, esta nova técnica gera uma função de hiperplano que se move com o robô, permitindo demonstrar que toda uma trajetória está livre de colisões, em vez de trabalhar com um hiperplano de cada vez.
Os investigadores utilizaram a programação de soma de quadrados, uma ferramenta algorítmica capaz de converter um problema estático numa função. Esta função é uma equação que descreve onde o hiperplano deve estar em cada ponto ao longo do percurso planeado para se manter livre de colisões.
A soma dos quadrados pode ser generalizada para o programa de otimização para encontrar uma família de hiperplanos livres de colisões. Frequentemente considerado um método de otimização complexo, adequado apenas para utilização offline, os investigadores demonstraram que, para este problema, é extremamente eficiente e preciso.
"A chave aqui foi descobrir como aplicar a soma dos quadrados ao nosso problema específico. O maior desafio foi elaborar a formulação inicial. Se não quero que o meu robô bata em nada, o que é que isso significa matematicamente, e o computador pode dar-me uma resposta?", diz Amice.
Em última análise, como o próprio nome sugere, a soma de quadrados produz uma função que é a soma de vários valores ao quadrado. A função é sempre positiva, dado que o quadrado de qualquer número é sempre um valor positivo.
Confie, mas verifique
Ao verificar duas vezes se a função do hiperplano contém valores ao quadrado, um ser humano pode facilmente verificar se a função é positiva, o que significa que o caminho está livre de colisões, explica Amice.
Embora o método certifique com uma precisão perfeita, este pressupõe que o utilizador possui um modelo exato do robô e do ambiente; o certificador matemático é tão bom quanto o modelo.
"O grande benefício deste método é que os testes são muito fáceis de interpretar, pelo que não tem de depender da minha codificação correta, porque pode verificar por si mesmo", acrescenta.
Testaram a sua técnica em simulação, certificando-se de que os planos de movimento complexos de robôs com um e dois braços estavam livres de colisões. Na sua versão mais lenta, o método demorou apenas algumas centenas de milissegundos a gerar um teste, tornando-o muito mais rápido do que outras técnicas alternativas.
Embora o método seja suficientemente rápido para ser utilizado como verificação final de segurança em algumas situações reais, é ainda demasiado lento para ser aplicado diretamente no ciclo de planeamento de movimento de um robô, onde as decisões têm de ser tomadas em microssegundos, afirma Amice.
Os investigadores planeiam acelerar o processo ignorando situações que não exigem verificações de segurança, como quando o robô está longe de objetos com os quais possa colidir. Também querem experimentar solucionadores de otimização especializados que possam operar mais rapidamente.
Este trabalho foi financiado, em parte, pela Amazon e pelo Laboratório de Investigação da Força Aérea dos EUA.
