Model Predictive Control (MPC)
Model öngörülü kontrolün (MPC) sonuçları nasıl öngördüğünü, kısıtlamalar dahilinde eylemleri nasıl optimize ettiğini ve robotik ile bina kontrolünde bilgisayarlı görüyle nasıl çalıştığını öğren.
Model predictive control (MPC), bir sistemin önümüzdeki birkaç an boyunca nasıl tepki vereceğini tahmin ederek, en iyi eylem dizisini seçerek ve yalnızca ilkini gerçekleştirerek eylem seçmenin bir yoludur. Ardından gerçekte ne olduğunu ölçer ve yeniden planlama yapar. Bir dönüşe yaklaşan bir depo robotunu düşünün: yönlendirmeyi yalnızca mevcut konumundan yapmak yerine, farklı yönlendirme seçimlerinin kendisini nereye bırakacağını ve bu yolların yakındaki rafları temizleyip temizlemeyeceğini değerlendirir.
MPC Nasıl Çalışır?#
Bir MPC denetleyicisi, robotun konumu ve hızı gibi bir duruma; eylemlerin bu durumu nasıl değiştirdiğini tahmin eden bir dinamik modeline; ve iyi bir sonucu tanımlayan bir amaç fonksiyonuna ihtiyaç duyar. Optimizasyonu, ani yönlendirmeyi cezalandırırken hedefe ulaşmayı destekleyebilir. Kısıtlamalar, bir motorun hız sınırını aşmak veya dolu bir alana girmek gibi kabul edilemez davranışları dışlar veya caydırır.
Her kontrol aralığında MPC, aday eylemlerin sonuçlarını bir tahmin ufku boyunca tahmin eder. En düşük toplam maliyete sahip diziyi seçer, ilk eylemini uygular ve güncellenmiş ölçümlerle tekrarlar. Bu yinelenen yeniden planlama süreci kayan ufuk kontrolü olarak adlandırılır. MathWorks introduction to MPC, bu geri bildirim döngüsünü örneklemektedir; MathWorks guide to sample time and horizons ise daha uzağa bakmanın neden öngörüyü artırabileceğini ancak hesaplamayı artırabileceğini açıklamaktadır.
Tek ve evrensel bir "MPC formülü" yoktur. Basit bir dille ifade etmek gerekirse denetleyici, modeli ve kısıtlamaları doğrultusunda, hedefe ulaşma hatalarının ve eylem maliyetlerinin tahmin edilen toplamını ufku boyunca en aza indirir. do-mpc explanation of MPC, bu fikrin, tepkileri basit bir doğrusal modelle yeterince temsil edilemeyen doğrusal olmayan sistemlere nasıl genişletildiğini de göstermektedir.
Model ve Ölçümler Ne Katkı Sağlar?#
Dinamik model, mutlaka görüntüleri değil, sonuçları tahmin eder. Tekerlek hızları değiştiğinde robotun konumunun nasıl değiştiğini veya bir odanın sıcaklığının ısıtmaya ve dış hava koşullarına nasıl tepki verdiğini tahmin edebilir. Parametreleri fiziksel bilgiden, ölçülen verilerden veya predictive modeling yönteminden gelebilir. Modeli öğrenmek, tahminlerinin çalışma ortamında doğru kalmaya devam edip etmediğini test etme ihtiyacını ortadan kaldırmaz.
Ölçümler planı düzeltir. Kameralar engelleri ortaya çıkarabilir, ancak bir nesne tespiti otomatik olarak kullanılabilir bir fiziksel konum değildir. Bir denetleyicinin, gözlemleri hareket geçmişiyle birleştirmek için kamera kalibrasyonuna, mesafe bilgisine ve bir durum tahmincisine ihtiyacı olabilir. Kalman filter, olası tahmincilerden biridir; MathWorks guide to controller state estimation, MPC'nin neden doğrudan ölçemediği durumları genellikle tahmin ettiğini açıklamaktadır. Yeniden planlama, kusurlu tahminlere yardımcı olur, ancak gecikmiş veya güvenilmez bir gözlemi kendi başına güvenli hale getiremez.
MPC Nerede Uygulanır?#
- Depo robotu navigasyonu: Mobil bir robot, çalışanların ve rafların etrafında kısa bir rota planlamak için kamera gözlemlerini ve kendi hareket tahminlerini kullanır. Bir MPC denetleyicisi, yönlendirme ve hız dizilerini bir seyahat süresi hedefi ve hareket sınırlarıyla karşılaştırabilir, ardından insanlar hareket ettikçe seçimini revize edebilir. Nav2 predictive controller documentation, tahmin edilen yörüngeleri değerlendirmenin pratik bir robotik örneğini sunmaktadır.
- Bina iklim kontrolü: Bir bina denetleyicisi, ısıtma veya soğutma kararlarının önümüzdeki saatlerde oda sıcaklıklarını nasıl etkileyeceğini tahmin edebilir. Doluluk tahminleri ve hava durumu tahminleri, enerji kullanımını ve konfor limitlerini dengelerken talebe hazırlanmasına yardımcı olur. US Department of Energy’s building sensors and controls overview, makine öğrenimi ve öngörülü kontrolün bu kombinasyonunu açıklamaktadır.
Her iki durumda da avantaj yalnızca tahmin değildir. MPC, operasyonel sınırlar dahilinde bir eylem seçmek için tahminleri kullanır, ardından planını bir sonraki gözlemle karşılaştırarak kontrol eder.
MPC İlgili Kavramlardan Nasıl Farklıdır?#
Bir world model, bir ortamın nasıl gelişebileceğini temsil eder; MPC ise olası eylemleri karşılaştırmak için bir dinamik model kullanan bir kontrol prosedürüdür. Reinforcement learning tipik olarak deneyimlerden hareket etmeyi öğrenirken, MPC çalışma sırasında geleceğe yönelik bir planlama problemini açıkça çözer. Bunlar birleştirilebilir: öğrenilmiş bir model MPC'nin tahminlerini sağlayabilir.
Benzer şekilde object tracking, bir nesnenin kareler boyunca nerede olduğunu tahmin eder; yönlendirme komutları seçmez. Takip, MPC'ye gözlem sağlayabilir, ancak denetleyicinin yine de bir hareket modeline, amaca, kısıtlamalara ve bir optimizasyon yöntemine ihtiyacı vardır. MathWorks constraint guide, sert sınırları, cezalandırılan bir ihlale izin veren yumuşak kısıtlamalardan ayırır.
Bilgisayarlı Görü Bir MPC Boru Hattını Nasıl Destekleyebilir?#
Ultralytics YOLO26, object detection aracılığıyla algılama girdisi sağlayabilir. Bu belgelenmiş çıkarım iş akışı, tek bir görüntü için sınırlayıcı kutular döndürür:
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)Çıktı, görüntü uzayında kutu koordinatları verir; mesafeler, hızlar veya kontrol komutları vermez. Hareketli bir sahne için YOLO tracking mode, nesne kimliklerini korumaya yardımcı olabilirken, depth estimation mesafe tahminleri sağlayabilir. Ayrı bir tahmin ve MPC sistemi, uygun gözlemleri bir duruma dönüştürmeli, eylem sonuçlarını tahmin etmeli, kısıtlı optimizasyonu çözmeli ve donanıma komut vermelidir.
Dağıtımdan önce, tam algılama-eylem döngüsünün kontrol aralığı içinde tamamlandığını test edin. Kaçırılan tespitleri, model uyumsuzluğunu ve kısıtlamaların bir planı imkansız kıldığı durumları değerlendirin; optimizasyon aracının her zaman güvenli bir komut döndüreceğini varsaymak yerine tanımlanmış bir geri dönüş davranışı ayarlayın.









