Model Predictive Control (MPC)
Aprende como o controlo preditivo baseado em modelo (MPC) prevê resultados, otimiza ações dentro de restrições e funciona com visão computacional em robótica e controlo de edifícios.
O controle preditivo baseado em modelo (MPC) é uma forma de escolher ações prevendo como um sistema responderá nos próximos momentos, selecionando a melhor sequência de ações e executando apenas a primeira. Em seguida, ele mede o que realmente aconteceu e planeja novamente. Pense em um robô de armazém se aproximando de uma curva: em vez de esterçar apenas a partir de sua posição atual, o robô de armazém considera onde diferentes escolhas de direção o deixariam — e se esses caminhos livrariam as prateleiras próximas.
Como o MPC Funciona?#
Um controlador MPC precisa de um estado, como a posição e a velocidade de um robô; de um modelo de dinâmica, que prevê como as ações alteram esse estado; e de um objetivo, que descreve um bom resultado. A otimização do controlador MPC pode favorecer alcançar um destino enquanto penaliza curvas bruscas. As restrições descartam ou desestimulam comportamentos inaceitáveis, como exceder o limite de velocidade de um motor ou entrar em um espaço ocupado.
A cada intervalo de controle, o MPC prevê as consequências de ações candidatas em um horizonte de predição. O MPC escolhe a sequência com o menor custo geral, aplica a primeira ação do MPC e repete o processo com medições atualizadas. Esse replanejamento repetido é chamado de controle de horizonte recessivo. A introdução ao MPC do MathWorks ilustra esse loop de feedback; o guia do MathWorks sobre tempo de amostragem e horizontes explica por que olhar mais adiante pode melhorar a antecipação, mas aumentar a computação.
Não existe uma "fórmula MPC" universal única. Em linguagem simples, o controlador minimiza a soma prevista de erros de rastreamento de metas e custos de ação ao longo do horizonte do controlador, sujeito ao modelo e às restrições do controlador. A explicação do do-mpc sobre o MPC também mostra como essa ideia se estende a sistemas não lineares, cujas respostas não podem ser adequadamente representadas por um modelo linear simples.
O Que o Modelo e as Medições Contribuem?#
O modelo de dinâmica prevê consequências, não necessariamente imagens. O modelo de dinâmica pode estimar como a posição de um robô muda quando as velocidades das rodas mudam, ou como a temperatura de um cômodo responde ao aquecimento e ao clima externo. Os parâmetros do modelo de dinâmica podem vir de conhecimento físico, dados medidos ou modelagem preditiva. Aprender o modelo não elimina a necessidade de testar se as predições do modelo continuam precisas no ambiente operacional.
As medições corrigem o plano. As câmeras podem revelar obstáculos, mas uma detecção de imagem não se torna automaticamente uma posição física utilizável. Um controlador pode precisar de calibração de câmera, informações de distância e um estimador de estado para combinar observações com o histórico de movimento. Um Filtro de Kalman é um estimador possível; o guia do MathWorks sobre estimativa de estado de controlador explica por que o MPC frequentemente estima estados que o MPC não consegue medir diretamente. O replanejamento ajuda com previsões imperfeitas, mas o replanejamento não torna uma observação atrasada ou não confiável segura por si só.
Onde o MPC É Aplicado?#
- Navegação de robôs de armazém: Um robô móvel usa observações de câmera e as próprias estimativas de movimento do robô móvel para planejar um caminho curto ao redor de trabalhadores e estantes. Um controlador MPC pode comparar sequências de direção e velocidade em relação a uma meta de tempo de viagem e limites de movimento, revisando então a escolha do controlador MPC conforme as pessoas se movem. A documentação do controlador preditivo Nav2 fornece um exemplo prático de robótica para avaliar trajetórias previstas.
- Climatização de edifícios: Um controlador de edifício pode prever como as decisões de aquecimento ou refrigeração afetarán as temperaturas dos cômodos ao longo das próximas horas. Estimativas de ocupação e previsões meteorológicas ajudam o controlador de edifício a se preparar para a demanda enquanto equilibra o uso de energia e os limites de conforto. A visão geral de sensores e controles de edifícios do Departamento de Energia dos EUA descreve essa combinação de aprendizado de máquina e controle preditivo.
Em ambos os casos, o benefício não é apenas a predição. O MPC usa predições para escolher uma ação dentro dos limites operacionais, verificando então o plano do MPC em relação à próxima observação.
Como o MPC Difere de Conceitos Relacionados?#
Um modelo de mundo representa como um ambiente pode evoluir; o MPC é um procedimento de controle que usa um modelo de dinâmica para comparar possíveis ações. O aprendizado por reforço tipicamente aprende a agir a partir da experiência, ao passo que o MPC resolve explicitamente um problema de planejamento voltado para o futuro durante a operação. Os dois conceitos podem ser combinados: um modelo aprendido pode fornecer as predições do MPC.
Da mesma forma, o rastreamento de objetos estima onde um objeto está entre quadros; o rastreamento de objetos não escolhe comandos de direção. O rastreamento pode fornecer observações ao MPC, mas o controlador ainda precisa de um modelo de movimento, objetivo, restrições e um método de otimização. O guia de restrições do MathWorks distingue limites rígidos de restrições flexíveis que permitem uma violação penalizada.
Como a Visão Computacional Pode Dar Suporte a um Pipeline de MPC?#
O Ultralytics YOLO26 pode fornecer uma entrada de percepção por meio da detecção de objetos. Esse fluxo de trabalho de inferência documentado retorna caixas delimitadoras para uma imagem:
from ultralytics import YOLO
# Load a pretrained detection model.
model = YOLO("yolo26n.pt")
# Observe objects in the current image.
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Inspect image-space locations available to a perception pipeline.
print(result.boxes.xyxy)A saída fornece coordenadas de caixa no espaço da imagem — não distâncias, velocidades ou comandos de controle. Para uma cena em movimento, o modo de rastreamento do YOLO pode ajudar a manter as identidades dos objetos, enquanto a estimativa de profundidade pode fornecer estimativas de distância. Um sistema separado de estimativa e MPC deve transformar observações adequadas em um estado, prever resultados de ações, resolver a otimização restrita e comandar o hardware.
Antes da implantação, teste se o loop completo de percepção até a ação é concluído dentro do intervalo de controle. Avalie detecções perdidas, incompatibilidade de modelo e casos em que as restrições tornam um plano inviável; defina um comportamento de fallback claro em vez de assumir que o otimizador sempre retornará um comando seguro.









