Aprende como o Filtro de Kalman Alargado permite uma estimativa de estado precisa para sistemas não lineares em robótica, veículos autónomos e fusão de sensores.
O Filtro de Kalman Alargado (EKF) é um algoritmo poderoso utilizado para estimar o estado de um sistema quando a dinâmica do sistema ou a forma como as medições são efectuadas envolve funções não lineares. Estende os princípios do Filtro de Kalman (KF) padrão para lidar com essas complexidades comuns do mundo real. Isto faz do EKF uma ferramenta valiosa em várias aplicações de Inteligência Artificial (IA) e Aprendizagem Automática (AM), em que a compreensão do estado atual de um sistema dinâmico é crucial, especialmente quando se lida com dados de sensores ruidosos e se exige inferência em tempo real.
No fundo, o EKF é um processo iterativo de estimativa de estado, que permite descobrir o estado interno oculto de um sistema (como a posição, a velocidade ou a orientação) com base numa série de medições potencialmente imprecisas ao longo do tempo. Muitos sistemas do mundo real, desde robots que se movem em ambientes complexos até à navegação de aviões, seguem regras que não são simples relações lineares, conhecidas como sistemas não lineares. O EKF enfrenta este desafio aproximando as partes não lineares do sistema.
Utiliza uma técnica matemática, especificamente uma expansão da série de Taylor, para criar uma aproximação linear das funções não lineares em torno da melhor estimativa atual do estado. Esta linearização permite que o ciclo central de previsão-atualização do Filtro de Kalman seja aplicado, mesmo que o sistema subjacente não seja verdadeiramente linear. O EKF opera em duas etapas de repetição semelhantes às do KF:
Este ciclo permite que o EKF refine continuamente a sua estimativa à medida que novos dados ficam disponíveis, adaptando-se ao comportamento não linear do sistema ao longo do tempo. Compreender este processo é crucial para tarefas que envolvem análise de séries temporais.
A diferença fundamental entre o EKF e o Filtro de Kalman (KF) padrão é a forma como lidam com o modelo do sistema. O KF assume que tanto as transições de estado do sistema como os processos de medição são lineares. Essa suposição simplifica os cálculos, mas limita sua aplicabilidade. O EKF, no entanto, é projetado especificamente para sistemas em que um ou ambos os processos são não lineares. Consegue isso linearizando essas funções não lineares em cada passo de tempo usando matrizes Jacobianas (derivadas da expansão da série de Taylor).
Essa linearização é uma aproximação. Embora poderosa, ela significa que a precisão e a estabilidade do EKF podem, às vezes, ser menos confiáveis do que o desempenho do KF em sistemas puramente lineares, especialmente se o comportamento do sistema for altamente não linear ou se a estimativa do estado inicial for ruim. A aproximação introduz erros que o KF padrão não enfrenta. Para sistemas que são verdadeiramente lineares, o KF padrão fornece uma solução ótima e computacionalmente mais simples, geralmente medida em termos de FLOPs. Outros filtros, como o filtro de Kalman sem acento (UKF), foram desenvolvidos para resolver algumas limitações do EKF em cenários altamente não lineares, utilizando um método de aproximação diferente (transformada sem acento), embora muitas vezes com um custo computacional mais elevado. Podes explorar várias tarefas de visão computacional em que a estimativa do estado é vital.
A capacidade do EKF para lidar com a não linearidade torna-o amplamente aplicável em campos de IA, ML e engenharia que requerem estimativas em tempo real a partir de dados de sensores:
Apesar de ser uma aproximação, o Filtro de Kalman Estendido continua a ser um algoritmo fundamental e amplamente utilizado para a estimativa de estados em sistemas dinâmicos não lineares. Permite muitas tecnologias sofisticadas de IA e de automatização atualmente disponíveis, algumas das quais podem ser exploradas ou treinadas utilizando plataformas como o Ultralytics HUB, que simplifica o treino e a implementação de modelos. Compreender a EKF ajuda a apreciar as complexidades envolvidas na perceção e interação das máquinas com o mundo dinâmico, um objetivo central explorado em recursos como Steps of a Computer Vision Project.