Model Predictive Control (MPC)
Tìm hiểu cách điều khiển dự báo dựa trên mô hình (MPC) dự đoán kết quả, tối ưu hóa các hành động trong phạm vi các ràng buộc và hoạt động kết hợp với thị giác máy tính trong lĩnh vực robot và điều khiển tòa nhà.
Model predictive control (MPC) là phương pháp lựa chọn hành động bằng cách dự đoán cách hệ thống phản ứng trong vài khoảnh khắc tiếp theo, chọn chuỗi hành động tốt nhất và chỉ thực hiện hành động đầu tiên. Sau đó, hệ thống đo lường thực tế diễn ra như thế nào và lập kế hoạch lại. Hãy tưởng tượng một robot trong kho đang tiến đến khúc cua: thay vì chỉ điều hướng từ vị trí hiện tại, robot xem xét các lựa chọn điều hướng khác nhau sẽ đưa robot đến đâu—và liệu các đường đi đó có tránh được các kệ hàng gần đó hay không.
MPC Hoạt Động Như Thế Nào?#
Một bộ điều khiển MPC cần có một state, chẳng hạn như vị trí và tốc độ của robot; một dynamics model, dự đoán các hành động thay đổi trạng thái đó như thế nào; và một objective, mô tả kết quả tốt. Quá trình tối ưu hóa của bộ điều khiển có thể ưu tiên việc đến đích đồng thời phạt các thao tác đánh lái đột ngột. Các constraints loại bỏ hoặc hạn chế các hành vi không được chấp nhận, chẳng hạn như vượt quá giới hạn tốc độ động cơ hoặc đi vào không gian có vật cản.
Tại mỗi khoảng thời gian điều khiển, MPC dự đoán hậu quả của các ứng viên hành động trong một prediction horizon. Bộ điều khiển chọn chuỗi có tổng chi phí thấp nhất, áp dụng hành động đầu tiên và lặp lại với các phép đo được cập nhật. Quá trình lên kế hoạch lại lặp đi lặp lại này được gọi là receding-horizon control. MathWorks introduction to MPC minh họa vòng lặp phản hồi này; MathWorks guide to sample time and horizons giải thích lý do tại sao việc nhìn xa hơn có thể cải thiện khả năng dự đoán nhưng làm tăng khối lượng tính toán.
Không có một “công thức MPC” chung duy nhất nào. Nói một cách dễ hiểu, bộ điều khiển giảm thiểu tổng số lỗi theo dõi mục tiêu và chi phí hành động đã dự đoán trong phạm vi dự đoán của mình, tuân theo mô hình và các ràng buộc của bộ điều khiển. do-mpc explanation of MPC cũng cho thấy ý tưởng này mở rộng như thế nào sang các hệ thống phi tuyến tính, có phản hồi không thể được biểu diễn đầy đủ bằng một mô hình tuyến tính đơn giản.
Mô Hình và Các Phép Đo Đóng Góp Gì?#
Mô hình động lực học dự đoán hậu quả, không nhất thiết là hình ảnh. Mô hình có thể ước tính vị trí của robot thay đổi như thế nào khi tốc độ bánh xe thay đổi, hoặc nhiệt độ phòng phản ứng như thế nào với hệ thống sưởi và thời tiết ngoài trời. Các tham số của mô hình có thể đến từ kiến thức vật lý, dữ liệu đo đạc hoặc predictive modeling. Việc học mô hình không loại bỏ nhu cầu kiểm tra xem các dự đoán của mô hình có còn chính xác trong môi trường vận hành hay không.
Các phép đo giúp điều chỉnh kế hoạch. Camera có thể phát hiện vật cản, nhưng kết quả phát hiện đối tượng từ hình ảnh không tự động trở thành một vị trí vật lý có thể sử dụng. Bộ điều khiển có thể cần hiệu chỉnh camera, thông tin khoảng cách và một state estimator để kết hợp các quan sát với lịch sử chuyển động. Kalman filter là một bộ ước tính khả dĩ; MathWorks guide to controller state estimation giải thích lý do tại sao MPC thường ước tính các trạng thái mà bộ điều khiển không thể đo lường trực tiếp. Việc lên kế hoạch lại giúp xử lý các dự báo không hoàn hảo, nhưng bản thân việc này không thể làm cho một quan sát bị chậm trễ hoặc không đáng tin cậy trở nên an toàn.
MPC Được Áp Dụng Ở Đâu?#
- Điều hướng robot trong kho: Một robot di động sử dụng các quan sát từ camera và ước tính chuyển động của chính robot để lập một đường đi ngắn tránh công nhân và kệ hàng. Bộ điều khiển MPC có thể so sánh các chuỗi điều hướng và tốc độ với mục tiêu thời gian di chuyển và giới hạn chuyển động, sau đó sửa đổi lựa chọn của mình khi mọi người di chuyển. Nav2 predictive controller documentation cung cấp một ví dụ thực tế về robot trong việc đánh giá các quỹ đạo được dự đoán.
- Kiểm soát khí hậu tòa nhà: Bộ điều khiển tòa nhà có thể dự đoán các quyết định sưởi ấm hoặc làm mát sẽ ảnh hưởng như thế nào đến nhiệt độ phòng trong những giờ tới. Các ước tính về số lượng người và dự báo thời tiết giúp bộ điều khiển chuẩn bị cho nhu cầu trong khi cân bằng việc sử dụng năng lượng và giới hạn sự thoải mái. US Department of Energy’s building sensors and controls overview mô tả sự kết hợp giữa học máy và điều khiển dự đoán này.
Trong cả hai trường hợp, lợi ích không chỉ nằm ở việc dự đoán. MPC sử dụng các dự đoán để chọn một hành động within operational limits, sau đó kiểm tra kế hoạch của mình với quan sát tiếp theo.
MPC Khác Biệt Thế Nào So Với Các Khái Niệm Liên Quan?#
Một world model biểu diễn cách môi trường có thể tiến triển; MPC là một control procedure sử dụng mô hình động lực học để so sánh các hành động có thể xảy ra. Reinforcement learning thường học cách hành động từ kinh nghiệm, trong khi MPC giải quyết một cách tường minh bài toán lập kế hoạch hướng tới tương lai trong quá trình vận hành. Chúng có thể được kết hợp: một mô hình đã học có thể cung cấp các dự đoán cho MPC.
Tương tự như vậy, object tracking ước tính vị trí của một đối tượng qua các khung hình; việc này không chọn các lệnh điều khiển. Việc theo dõi có thể cung cấp các quan sát cho MPC, nhưng bộ điều khiển vẫn cần có mô hình chuyển động, mục tiêu, các ràng buộc và phương pháp tối ưu hóa. MathWorks constraint guide phân biệt giữa các giới hạn cứng và các ràng buộc mềm cho phép vi phạm có kèm theo hình phạt.
Computer Vision Có Thể Hỗ Trợ Đường Ống MPC Như Thế Nào?#
Ultralytics YOLO26 có thể cung cấp đầu vào nhận diện thông qua object detection. Quy trình suy luận được tài liệu hóa này trả về các hộp giới hạn cho một hình ảnh:
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)Đầu ra cung cấp tọa độ hộp trong không gian hình ảnh—không phải khoảng cách, vận tốc hay lệnh điều khiển. Đối với cảnh chuyển động, YOLO tracking mode có thể giúp duy trì định danh đối tượng, trong khi depth estimation có thể cung cấp ước tính khoảng cách. Một hệ thống ước tính và MPC riêng biệt phải biến các quan sát phù hợp thành một trạng thái, dự đoán kết quả hành động, giải bài toán tối ưu hóa bị ràng buộc và ra lệnh cho phần cứng.
Trước khi triển khai, hãy kiểm tra xem toàn bộ vòng lặp từ nhận diện đến hành động hoàn thành trong khoảng thời gian điều khiển của vòng lặp đó. Đánh giá các trường hợp phát hiện bỏ sót, sai lệch mô hình và các trường hợp khiến các ràng buộc làm cho kế hoạch không khả thi; thiết lập hành vi dự phòng xác định thay vì giả định bộ tối ưu hóa sẽ luôn trả về một lệnh an toàn.









