Doğru Kontrol Algoritmasını Seçmek: SİHA'lardan Endüstriyel Sistemlere Bir Mühendislik Rehberi
(Okuma Süresi: Yaklaşık 20-25 Dakika)
Merhaba dostlar! Bugün, bir mühendisin en kritik kararlarından birini, "Bu sistem için hangi kontrol algoritmasını seçmeliyim?" sorusunu masaya yatırıyoruz. Sadece İHA'lar özelinde değil daha geniş bir bakış açısıyla ele alacağız konuyu, İHA örneğini şuan üzerinde çalıştığım için seçtim ancak dediğim gibi bunun bir önemi yok.
Savaşan İHA (SİHA) dediğimiz o muazzam arena, aslında sadece yazılımın veya donanımın değil, matematiğin fiziksel dünyayla girdiği en sert çarpışma alanıdır. İHA'nızı nasıl kontrol ettiğiniz sahada şampiyon mu olacağımızı yoksa dronumuzu yerden mi toplayacağımızı belirliyebilir.
Bugün her bir kontrol algoritmasını uzun usun ele almayı yüzeysel bir şekilde inceleyeceğiz sadece. Çaylarınız/Kahvelerinizi Aldıysanız Başlayalım:
İlk Durak: Kontrolcünün 3 Büyük Sınavı
Kontrol algoritmamızı seçmeden önce onu üç acımasız testten geçirmemiz gerekiyor. Birazdan göreceğiniz üzere bazı kontrol algoritmaları başka sistemlerde ne kadar mükemmel çalışsa da bizim sistemimizde aşağıdaki üç şartımızdan bir veya birkaçını bizim sistemimizde yeterince iyi sağlayamayabilecek.
1. Model Bağımlılığı (Sim-to-Real Gap)
Simulasyon ortamında test/geliştirme yaparken her şey çok güzel, hava direnci her noktada sabit, türbülans yok, sensör verilerimiz kusursuz. Ancak simulasyonu kapatıp dışarı çıktığımızda işler hiç de öyle değil. Pervanelerden birindeki ufak bir çapak, havadaki nem veya motorun beklediğinizden biraz fazla ısınması bile aerodinamiği etkiler. Eğer kontrolcünüz simulasyondaki her şeyin kusursuz olduğu matematiksel sisteme fazla güveniyorsa, simülasyonda şov yapan dronunuz gerçekte bir kütük gibi yere çakılabilir.
2. Durum (State) İhtiyacı
Bazı kontrol algoritmaları çok aç gözlüdür ve çok fazla veri isterler, öte yandan bazen başka kontrol algoritmaları daha az veriyle aynı işi yapabilir. Elimizde hedefe ait tek verinin kameramızdaki konumu olduğu bir dogfight senaryosunda MPC gibi rakibin 3D hızını, ivmesini, açısal momentumunu ve hatta belki o anki rüzgarın vektörünü de kullanmamızı gerektirecek bir kontrol algoritmasını kullanmamız haliyle çok da mümkün olmayacaktır.
3. Hesaplama Yükü
Özellikle son zamanlarda herşey için yapay sinir ağlarının kullanıldığı projeler görmek mümkün. Ancak burada da üçüncü ve son sorunumuz ortaya çıkıyor hesaplama yükü. Atölyeye girdiğinizde ışıkları açacak siz atölyeden çıkarken ışıkları kapatacak bir sistem için çok yüksek işlem gücü gerektirecek yapay zekalı sistemler kullanmanıza gerek olmayacaktır örneğin.
Algoritmalar ve Karakterleri:
Yukarıda belirlediğimi kriterlere göre kontrol algoritmalarının analizi:
1. KLASİK VE DOĞRUSAL (LINEAR) KONTROLCÜLER
A. PID
- Nasıl Çalışır: Dış döngü kameradaki piksellere bakar (Örn: "Hedef merkezden 200 piksel sağda"). Bu piksel hatasını bir PID işler ve iç döngüye bir "İstenen Yatış Açısı (Roll)" komutu gönderir. İç döngüdeki diğer PID ise İHA'nın motorlarını sürerek o açıya ulaşmasını sağlar.
- Savaşan İHA Performansı: Tek kelimeyle anlatacak olursam MÜKEMMEL. Çok kelimeyle anlatmak istersem piksel hatasının neden oluştuğunu umursamayan, sadece hatayı sıfırlamaya çalışan bir algoritmadan bahsediruz. Rakip modeline veya bizim mükemmel aerodinamik modelimize ihtiyaç duymaz.
- Zayıf Noktası: Gecikmeler (Latency). Eğer kamera saniyede 10 kare (10 FPS) veriyorsa, PID sürekli "eski" veriye tepki vereceği için sistem salınıma (osilasyona) girebilir.
B. Kazanç Çizelgelemeli (Gain-Scheduled) PID
- Nasıl Çalışır: PID'nin P, I, D katsayıları sabit değildir. İHA'nın hızı veya hedefin uzaklığı gibi değişkenlere bağlı olarak anlık olarak değişir.
- Algoritma Performansı: PID'nin "aptallığını" ,artık her ne demekse, duruma göre zekileştirmenin en pratik yoludur.
C. LQR / LQG (Linear Quadratic Regulaor/Gaussian)
- Nasıl Çalışır: Aşağıdaki maliyet fonksiyonunu (Cost Function) minimize edecek optimum kazanç matrisini (K) bulur:
J = ∫(xᵀQx + uᵀRu)dt
Burada x durumları (hız, konum), u motor komutlarını temsil eder. Q hatayı, R ise enerji harcamasını cezalandırır. LQG versiyonu, eksik durumları tahmin etmek için sisteme bir Kalman Filtresi eklenmiş halidir. - Savaşan İHA Senaryosu için: Zayıf. LQR çalışmak için sistemin doğrusal (linear) bir modelini ister. Bir dogfight senaryosu ise doğrusallaştırmaya çok musait olmayacan çok daha karmaşık bir non-lineer sistemdir. Sistem linearization noktasından koptuğunda ise ,,lqr nin hesapladığı optimum hareket tamamen anlamsız hale gelir.
2. DOĞRUSAL OLMAYAN (NONLINEAR) KONTROLCÜLER
Madem LQR/LQG yi lineer olduğu için eledik, o zaman şimdi biraz da lineer olmayan kontrol algoritmalarına bakalım.
A. SMC (Kayan Kipli Kontrol - Sliding Mode Control)
- Nasıl Çalışır: Sistemi, bizim belirlediğimiz bir "kayma yüzeyine" (s=0) doğru agresif bir şekilde iten doğrusal olmayan bir algoritmadır. Kontrol kuralı genellikle bir işaret (signum) fonksiyonu barındırır:
u = -k · sgn(s). - Savaşan İHA İçin Performans Değerlendirmesi: Kamera için Ölümcül. SMC, kontrol teorisinde model belirsizliklerine (sim-to-real gap) karşı direnç dendiğinde akla ilk gelen algoritmalardan biridir. Rüzgar çıksa da, pervanen kırılsa da hedef açısını tutturur. Ancak, "Chattering" denen çok ciddi bir sorunu vardır. İşaret fonksiyonundan dolayı kontrol sinyali sürekli ve çok yüksek frekansta + ve - arasında titrer. Dron havada zangır zangır titrediğinde kamerandaki görüntü bulanıklaşır (motion blur) ve hedefi tespit edemeyebiliriz. (Düşük geçiren filtreler ile yumuşatılsa da, agresifliği azalır).
B. Backstepping (Geriye Adımlamalı Kontrol)
- Nasıl Çalışır: Karmaşık, doğrusal olmayan İHA dinamiğini alt sistemlere böler. Lyapunov stabilite teorisini (V(x) > 0, V̇(x) < 0) kullanarak, dronu içten dışa doğru sanal olarak dengeler.
- Savaşan İHA Performansı: Simülasyonda Kral, Gerçekte Hayal Kırıklığı. Backstepping, dronun mükemmel bir matematiksel modeline ihtiyaç duyar. Dolayısıyle belirlediğimiz ilk şart olan Sim-to-real gap'in kurbanı olur.
3. ROBUST VE ÖNGÖRÜLÜ (PREDICTIVE) KONTROLCÜLER
A. H∞ (H-Sonsuz Kontrol)
- Nasıl Çalışır: Sistemdeki belirsizliklerin ve dış bozucuların (rüzgar, simülasyon-gerçeklik farkı) sistem üzerindeki etkisini minimize etmeyi hedefler.
- Savaşan İHA Performansı: Pratik Değil. Rüzgara ve simülasyondaki kütle/atalet hatalarına karşı bir tank kadar sağlamdır. Dronun asla düşmemesini garanti ederbilir ama bu sağlamlığı "aşırı muhafazakar" davranarak elde eder. H∞ rakibi vurmak için dronun limitlerini zorlamak gerektiğinde "Bu manevra riskli" diyerek komutları yumuşatır çünki fazla temkinli davranır ve her zaman "mümkün olabilecek en kötü" senaryo üzerinden hareket etmey çalışır ve bu da sert bir manevra yapmamıza engel olur. Ticari havayolu pilotu gibi davranacak bir kontrol algoritması istemiyorsak şuan ilk tercihimiz olmayacaktır.
B. MPC (Model Predictive Control)
- Nasıl Çalışır: Sistemin matematiksel modelini kullanarak gelecekteki N adımı (Prediction Horizon) simüle eder. Hangi manevranın motor sınırlarını aşmadan hedefi vuracağını hesaplar.
- Algoritma Performansı: İki Yüzlü Keskin Kılıç.
- Eğer rakibi takip etmek (Dış Döngü) için kullanırsan: Facia. Rakibin ne yapacağını sadece kameramızdaki konumundan matematiksel olarak modelleyemeyiz. Yanlış model tahmini = yanlış manevra demektir.
- Eğer sadece kendi uçuş dinamiğin (İç Döngü) için kullanırsan: Harika. Kendi motor gücünü ve maksimum dönüş açını sisteme kısıt (constraint) olarak girersin. Örneğin kamera ve dış döngüden gelen PID komutu "Sağa 90 derece yat" dese bile, MPC "90 derece yatarsam düşerim, maksimum 45 yatabilirim" diyerek dronu güvenli bir optimumda tutar.
dipnot: Kontrol algoritmalarında robust (gürbüz/dayanıklı), sistemin model belirsizliklerine, dış gürültülere veya değişen çalışma koşullarına rağmen kararlılığını ve performansını koruyabilme yeteneğidir.
4. UYARLAMALI (ADAPTIVE) VE ZEKİ KONTROLCÜLER
A. MRAC (Model Reference Adaptive Control)
- Nasıl Çalışır: Yazılımın içinde kusursuz uçan "ideal" bir referans model vardır. Dron, gerçek hayattaki hareketlerini bu referans model ile karşılaştırır. Eğer rüzgar veya motor aşınması yüzünden İHA istenen tepkiyi veremiyorsa, kontrolcü kendi katsayılarını uçuş esnasında canlı olarak değiştirir.
- Savaşan İHA Performansı: Nihayet Güçlü Bir Aday. Sim-to-real boşluğunu kapatmanın en zarif yoludur. Simülasyondaki davranışları referans model olarak alırız, gerçek hayatta dinamikler değişse bile MRAC kendini güncelleyerek (adaptation mechanism) simülasyondaki performansı sahada yakalamaya çalışır.
B. Bulanık Mantık Kontrolü (Fuzzy Logic Control - FLC)
- Nasıl Çalışır: Karmaşık matematiksel modeller (türev, integral) yerine, insanların karar verme mekanizmasını (If-Then) taklit eder.
Kural 1: EĞER hedef çok sağdaysa (artık ne demekse o) VE kutu küçülüyorsa → O ZAMAN sert sağa dön VE gaz aç. - Savaşan İHA Performansı: Pikseller İçin Biçilmiş Kaftan. Matematiksel modele ihtiyaç duymaz yani tam olarak görmeyi sevdiğimiz türde bir kontrol algoritması. Kameradan gelen boyut ve piksel verilerini doğrudan "Bulanıklaştırma (Fuzzification)" işlemine sokarak çok pürüzsüz ve mantıklı tepkiler üretebilir. Dogfight senaryomuzdaki "bilgisizliği" insan sezgisiyle çözebilir.
C. Pekiştirmeli Öğrenme (Reinforcement Learning - RL / PPO / SAC)
- Nasıl Çalışır: İHA simülasyonda milyonlarca kez rakiple dogfight yapar. Hedefe yaklaştığında ödül, kaybettiğinde ceza alır. Sonunda bir "Ajan (Agent)" olarak derin sinir ağı (Deep Neural Network) üzerinden kontrol komutları üretir.
- Savaşan İHA Performansı: En Yüksek Risk, En Yüksek Ödül. Klasik kontrolcülerin yapamayacağı kadar kurnaz manevralar yapabilir. Rakibin kaçış manevrasını önceden "öğrendiği" için yolunu kesebilir.
Büyük Sorun(lar): Ajanın kameradan gelen gürültüyü hiç görmemiş olmasıdır. Eğer eğitim sırasında ortamı aşırı derecede "Alan Rastgeleleştirmesi (Domain Randomization)" ile bozmazsak, gerçek dünyadaki uçuşlarda ajan daha önce hiç görmediği bir durumla (state) karşılaştığını sanır ve dronu tam gaz yere çakabilir. Ayrıca yapay zeka modelleri ara kutu (Black Box) olduğu için de neden hata yaptığını asla bulamayabiliriz.
Mühendislik Özeti Tablosu
| Algoritma | Kamera (2D) Verisiyle Çalışır mı? | Rakip Modeli/Tahmini Gerekir mi? | Sim-to-Real Farkına Direnci | Hesaplama Yükü |
|---|---|---|---|---|
| Kaskad PID | Evet, Çok iyi. | Hayır (Reaktif) | Yüksek | Çok Düşük |
| Fuzzy Logic | Evet, Mükemmel. | Hayır (Reaktif) | Çok Yüksek | Düşük |
| LQR/LQG | Hayır (3D State ister) | Evet | Düşük | Düşük |
| MPC | Hayır (3D State ister) | Evet | Düşük | Çok Yüksek |
| SMC | Evet | Kısmen | Çok Yüksek (Ama Titrer) | Orta |
| MRAC | Kısmen (İç döngüde) | Hayır | Çok Yüksek | Yüksek |
| RL (Yapay Zeka) | Evet (End-to-end) | Hayır (Kendisi öğrenir) | Düşük (Domain Rand. yoksa) | Yüksek (Inference) |
İşte böyle dostlar... Kontrol teorisi, bir İHA'nın sadece uçmasını değil, uçuşun arkasındaki o muazzam matematiksel kararlılığı ifade eder. SİHA arenası sadece İHA'arın yada sadece kodların değil, bu kararlılığın da yarıştığı bir yerdir.
Gözünüz ufukta, kontrolünüz sağlam olsun! Bir sonraki teknik dosyada görüşmek üzere...
