Semruk - 3 Bonus: Regression Learner

MATLAB Regression Learner ile Roket İniş Konum Tahmini

(Landing Location Prediction of Model Rocket by Using MATLAB Regression Learner)

 

Bu Çalışmanın Amacı Nedir?

Amacımız, roketin rüzgara karşı veya rüzgar yönünde ne kadar sürükleneceğini; belirli uçuş parametreleri kullanarak öngörmektir. Yapılan öngörülerin güvenilirliği kullanılan parametrelerin türüne ve veri sayısına göre değişmektedir.

İzlenen Adımlar:

Roket çalışmalarımızı gerçekleştirirken içerisinde bulunan uçuş bilgisayarları ile roketi birçok defa fırlatma şansımız bulunmuyor. Bu nedenle çalışmalarımızı sanal ortamda test etme ihtiyacı duyuyoruz.

Uçuş verilerimizi, OpenRocket programı üzerinden alacağız. Ancak aldığımız verilerin gerçek uçuş verilerine olabildiğince yakın olmasını istediğimiz için programa bir eklenti kuracağız. Gerekli eklentiye buradan ulaşmanız mümkün.  İndirilen .jar uzantılı dosya, OpenRocket à Plugins kısmına eklenmelidir. Bu eklenti sayesinde farklı irtifalarda farklı rüzgar hızlarını uçuş simülasyonuna girmemiz mümkün olacaktır.

Eklenti şu şekilde kullanılır:

“Uçuş Simülasyonları -> New Simulation -> Simulation Options -> Add Extension -> Flight -> Multi Level Wind”

Bunu yaptıktan sonra bilgisayarımızda bu şekilde bir sekme açılacaktır:

İstediğimiz her irtifa değeri için farklı rüzgar hızları girebiliyor olacağız. “1500 metrede rüzgar hızının ne kadar olduğunu nasıl hesaplayabilirim?” gibi soruların kafanıza takıldığını duyar gibiyim. Dilerseniz, harita üzerinde belirlediğiniz konumun farklı irtifalardaki rüzgar hızlarına bu adresten ulaşabilirsiniz.

 

Gerekli değişkenler girildikten sonra Simulate&Plot seçeneğine tıklıyoruz. “Export Data” sekmesinden konum tahmininde kullanmak istediğimiz uçuş parametreleri seçiyor ve export ediyoruz. Bu işlem bilgisayarımızda bir excel dosyası oluşturacak, ancak tüm parametreler tek sütunda görünecektir. Her sütunu ayırmamız gerekir ki bir sonraki aşamada kullanıma hazır olsun.

 

Bu adıma kadar yaptığımız her şey üzerinde çalışabileceğiniz uçuş verilerini üretmekti. Şimdi ise bu verilerle neler yapabileceğimizi göreceğiz. Çalışmamızın devamını MATLAB üzerinden yürüteceğiz.

 

MATLAB Regression Learner Nedir? Nasıl Kullanılır?

Regression Learner yapay zeka ile çalışan bir MATLAB uygulamasıdır. Var olan değişkenler arasında ilişki kurmamızı sağlayan matematiksel analizleri gerçekleştirir. Normalde karmaşık ve zaman gerektiren analizleri hızlı bir şekilde tamamlar. Ne kadar çok veri varsa sonuç o kadar iyi olacaktır.

 

Nasıl Kullanılır?

1. Adım: “MATLAB  à APPS à Regression Learner” adımlarını izleyerek uygulamayı açıyoruz.

 

2. Adım: New Session kısmından önceden hazırladığımız excel dosyamızı uygulamaya ekliyoruz. Bunu yapmak için ikinci seçeneğe tıklayalım.

 

3. Adım: Eklenen veri seti, tablo şeklinde önümüze gelecektir. Burada istediğimiz verileri istediğimiz sayıda ve türde seçebiliriz. Bu çalışmada tüm değişkenleri “Number” tipinde belirliyor ve ana paraşüt açıldıktan sonra üretilen verileri dikkate alıyoruz. Son kontrollerin ardından “Import Selection” diyerek veriler uygulamaya yüklüyoruz.

 

4. Adım: Bu adımda değişkenlerin rollerini belirliyoruz. Öncelikle açılan sekmeyi inceleyelim.

Workspace Variable: Çalışılacak veri setini gösterir.

Response: Analiz sonucunda hangi değişkenin davranışı incelenecekse o seçilir.

Predictors: Regresyonun uygulanacağı parametreler seçilir.

Çalışmamızda Response, konum verisidir ve bu veri iki alt bileşenden oluşur. Kuzey-Güney doğrultusundaki konum, Doğu-Batı doğrultusundaki konum.

İlk olarak, Doğu-Batı doğrultusundaki konum ile başlayalım. Bunun için Response kısmından Position East of Launch verisini seçiyoruz. Predictors bölümünden Time, Altitude, Lateral distance, Lateral Velocity, Lateral Direction,Vertical Distance, Vertical Acceleration, Vertical Velocity verilerini işaretliyoruz. Ardından Start Session diyerek işlemi sonlandıriyoruz.

 

5. Adım: Verilerimiz,tablo şeklinde karşımıza geldi. MODEL TYPE kısmında kullanabileceğimiz analiz yöntemleri mevcut. ALL diyerek her modelin uygulanmasını sağlayalım.

6. Adım: Kısa bir süre sonra regresyon modellerimizin analizleri tamamlanmış olacaktır. Dikkat ederseniz her analiz tamalandığında kutucuğun en sağ tarafında RMSE değişkeni üretilir. Açılımı Root Mean Square Error olan bu değişken ne kadar küçükse kullanılan model o kadar etkili demektir. MATLAB bize en düşük RMSE değerine sahip modeli gösterecektir.

7. Adım: En uygun modeli seçtikten sonra karşımıza üç adet grafik çıkacaktır. Bu grafiklerin ne olduğuna bakalım.

Reponse Plot: Matematiksel yaklaşımımızın sonucunu gösterir. Mavi noktalar gerçek değerleri, sarı noktalar tahmin edilen değerleri ifade eder.

Predicted vs Actual Plot: Modelimizin performansını gösterir. Grafikteki mavi noktalar ortadaki siyah doğruya ne kadar yakınsa ve bu doğrunun her iki tarafına da eşit şekilde dağılıyorsa analiz başarılı demektir.

Residual Plot: Modelimizin hata oranını gösterir. Kırmızı noktalar siyah doğruya ne kadar yakınsa hata oranının o kadar düşük olduğu anlamına gelir.

 

8. Adım: Veriler ürettik, analiz yaptık, en uygun modeli bulduk. Şimdi sıradaki adım yeni parametrelere göre konum verisinin nasıl davranacağını gözlemlemek. Bunu yapmak için X-axis kısmını, Time olarak değiştiriyoruz ardından EXPORT bölümünden “Export Plot to Figure” seçeneğine tıklıyoruz.

 

9. Adım: Açılan pencerede “Tools à Basic Fitting” adımlarını izliyoruz. Böylece modelimize uygun bir grafik oluşturabileceğiz. Açılan pencerede “Plot fits à shape-preserving interpolant” seçeneğini işaretliyoruz. Seçilen bu nümerik analiz yöntemi grafiğimize mükemmel şekilde oturacaktır. “Show equation” diyerek grafik denklemine ulaşabiliriz ancak seçtiğimiz yöntemde bu şekilde denklem elde edemeyeceğiz çünkü matlab bir değil birden fazla denklem oluşturmuş oldu. “Save to Workspace” diyerek bu adımı tamamlayalım.

 

 

 

10. Adım: Command Window’a gelerek aşağıdaki programı çalıştıralım. Program bittikten sonra Workspace’te “eq” adında bir değişken oluşacaktır. Bu değişkenin üzerine çift tıklayarak hangi aralıklarda hangi denklemlerin üretildiğine ulaşabiliriz. Bu denklemleri bir sonraki konumu tahmin etmek için kullanmak mümkün. Aynı adımlar Position North of Launch parametresi için de tekrarlayalım.

 

 

 

 

Sayfayı Paylaş