Kendi Otonom Aracını Kodlamak İsteyen Liseliler İçin Temel Python Simülasyonları

Kendi Otonom Aracını Kodlamak İsteyen Liseliler İçin Temel Python Simülasyonları

Geleceğin dünyasında direksiyon başında uyuyan sürücüler, trafik kazalarını sıfıra indiren yapay zeka algoritmaları ve birbirleriyle konuşarak yol hakkı devreden araçlar artık uzak birer hayal değil. Tesla, Waymo, Cruise gibi şirketlerin milyar dolarlık yatırımlarla geliştirdiği otonom (sürücüsüz) araç teknolojileri, aslında çok tanıdık ve erişilebilir bir temel üzerine yükseliyor: Python ve matematik.

Bir lise öğrencisi olarak gerçek bir otonom aracı garajınızda üretmek maliyet ve güvenlik açısından imkansız görünebilir. Ancak günümüz mühendislerinin de araçları yola çıkarmadan önce yaptığı gibi, her şey bilgisayar simülasyonları ile başlar. Bu yazıda, kendi sürücüsüz araç algoritmalarını yazmak isteyen genç yazılımcı adayları için Python diliyle geliştirilebilecek temel simülasyon konularını, robotik dünyasındaki güncel bilimsel çalışmaları ve bu simülasyonların avantaj-risk analizlerini detaylandıracağız.

1. Otonom Araçların Beyni Nasıl Çalışır? Veri, Karar ve Eylem Skalası

Sürücüsüz bir aracın çalışma felsefesi, aslında bir insanın araba kullanma mantığı ile birebir aynıdır. Süreç üç temel döngüden oluşur:

  1. Algılama (Perception): İnsan gözünün yerini LiDAR, radar ve kameralar alır. Araç çevresini tarar.
  2. Planlama (Planning): Beynin yerini Python ile yazdığımız yapay zeka ve kontrol algoritmaları alır. Araç “Önümde engel var mı? Hangi hızla gitmeliyim? Şerit değiştirmeli miyim?” sorularına yanıt arar.
  3. Kontrol (Control): Kasların yerini motor sürücüleri ve aktüatörler alır. Araç direksiyonu kırar veya frene basar.

Simülasyon ortamında bu döngüyü taklit etmek için Python, zengin kütüphane desteği (Pygame, NumPy, OpenCV, Matplotlib) sayesinde en ideal dildir.

2. Liseliler İçin Ev Laboratuvarında Geliştirilebilecek Python Ar-Ge Konuları

Bir lise öğrencisinin sıfırdan yazabileceği ya da açık kaynaklı araçlarla görselleştirebileceği, ulusal ve uluslararası bilim yarışmalarına (TÜBİTAK, Teknofest vb.) proje olabilecek 4 ana simülasyon başlığı şunlardır:

A. OpenCV ile Şerit Takip Çizgisi Algılama Algoritması

Otonom bir aracın yapması gereken ilk temel görev, yolun nerede olduğunu bilmektir. Kamera görüntülerindeki pikselleri analiz ederek şerit çizgilerini bulma işlemi, bilgisayarlı görü (computer vision) ile yapılır.

  • Ar-Ge Odak Noktası: Öğrenciler, internetten buldukları araç içi kamera kayıtlarını kullanarak Python ve OpenCV kütüphanesi yardımıyla bir algoritma yazabilirler. Görüntüyü önce gri tonlamaya çevirip, ardından Canny Edge Detection algoritması ile kenarları bulabilir ve Hough Transform tekniği ile şerit çizgilerini tespit edebilirler. Projelerini, “Hava durumunun (yağmur, sis, gece sürüşü) şerit algılama başarısına etkisi” başlığı altında test ederek bilimsel bir analiz raporuna dönüştürebilirler.

B. Pygame ile “PID Kontrolör” Tabanlı Çizgi İzleyen ve Duvara Çarpmayan Araç

Mühendislik dünyasının en popüler kontrol mekanizması PID (Proportional-Integral-Derivative) kontrolörüdür. Araç, gitmesi gereken çizgi ile arasındaki mesafeyi (hatayı) ölçer ve direksiyonu bu hatayı sıfırlayacak şekilde anlık olarak ayarlar.

  • Ar-Ge Odak Noktası: Pygame kütüphanesi kullanılarak 2 boyutlu (kuş bakışı) bir harita tasarlanabilir. Haritaya yerleştirilen yapay bir araca 3 adet sanal mesafe sensörü (ışın) eklenir. Araç, sağındaki ve solundaki duvarlara olan mesafesini kontrol ederek, PID algoritması sayesinde virajları duvara çarpmadan dönmeyi öğrenir. Öğrenciler P, I ve D katsayılarını değiştirerek aracın savrulma ve salınım grafiklerini Matplotlib kütüphanesiyle görselleştirebilirler.

C. Yapay Sinir Ağları ve Genetik Algoritma ile Kendi Kendine Sürmeyi Öğrenen Araç

Makine öğrenmesinin en eğlenceli kısımlarından biri, araca nasıl sürüleceğini doğrudan söylemek yerine, onun hata yaparak öğrenmesini sağlamaktır.

  • Ar-Ge Odak Noktası: Herhangi bir hazır yapay zeka kütüphanesi (TensorFlow veya PyTorch) kullanmadan, saf Python ile çok basit bir ileri beslemeli yapay sinir ağı (Artificial Neural Network) yazılabilir. Genetik Algoritma kullanılarak ekrana ilk nesilde 50 tane araç bırakılır. Duvara çarpan araçlar elenir, en uzak mesafeye giden araçların “beyin kodları (ağırlıkları)” bir sonraki nesle aktarılır. Yaklaşık 20-30 nesil sonra araçların pisti kusursuz şekilde döndüğü gözlemlenir. Bu, lise seviyesi için harika bir evrimsel yapay zeka projesidir.

D. A* (A-Star) ve Dijkstra Algoritmaları ile Akıllı Rota Planlama

Robotik araçların A noktasından B noktasına giderken trafik, yol çalışması veya engeller arasından en kısa ve güvenli yolu bulması gerekir.

  • Ar-Ge Odak Noktası: Bir grid (ızgara) harita üzerinde engeller tanımlanır. Python kullanarak A* veya Dijkstra grafik arama algoritmaları kodlanır. Araç simülasyonda dinamik olarak değişen engeller karşısında en kısa rotayı hesaplar. Bu çalışma, lojistik robotların depo içi yönetim simülasyonlarına da uyarlanabilir.

3. Güncel Bilimsel Araştırmalar ve Saha (Klinik) Çalışmaları

Otonom araç dünyasında yazılım simülasyonları ile gerçek dünya arasındaki boşluğu kapatmak (Sim-to-Real problemi) akademinin en sıcak araştırma konularından biridir. Sektördeki bilimsel araştırmalar simülasyonların güvenilirliğini test etmektedir.

CARLA ve Gazebo Simülatörleri Üzerine Güvenilirlik Çalışmaları

IEEE ve uluslararası robotik konferanslarında (ICRA) yayınlanan güncel makaleler, açık kaynaklı gelişmiş otonom araç simülatörleri olan CARLA ve Gazebo üzerindeki testlere odaklanmaktadır. Stanford Üniversitesi tarafından yürütülen bir saha çalışmasında, Python tabanlı derin pekiştirmeli öğrenme (Deep Reinforcement Learning) algoritmaları önce CARLA simülatöründe milyonlarca kilometre test edilmiş, ardından elde edilen yapay zeka modeli ölçeklendirilmiş gerçek bir test aracına yüklenmiştir.

Araştırmanın “saha/klinik test” aşamasında, simülasyonda %99 başarı gösteren yapay zeka modelinin, gerçek dünyadaki beklenmedik gölgeler, yaprak uçuşmaları ve kamera lensi kirlenmeleri nedeniyle ilk etapta başarısının %82’ye düştüğü gözlemlenmiştir. Bu durum, simülasyonlarda “sensör gürültüsü (sensor noise)” adı verilen rastgele hataların kodlanmasının ne kadar hayati olduğunu bilimsel olarak kanıtlamıştır.

4. Python Tabanlı Otonom Araç Simülasyonlarının Avantaj ve Risk Değerlendirmesi

Kendi otonom araç simülasyonunuzu kodlamak size büyük bir vizyon kazandırabileceği gibi, gerçek dünya mühendisliğinde bazı yanılgılara da yol açabilir.

Avantajlar Tablosu

KriterSimülasyon Dünyası (Python)Gerçek Dünya (Fiziksel Robotik)Simülasyonun Öğrenciye Sağladığı Avantaj
Maliyet$0$ TL (Sadece bir bilgisayar yeterli)Binlerce Dolar (LiDAR, motorlar, şasi, batarya)Maddi imkansızlıklara takılmadan Ar-Ge yapabilme.
GüvenlikSıfır Risk (Yazılım çökse de fiziksel zarar oluşmaz)Yüksek Risk (Hatalı kodda araç kontrolden çıkabilir)Korkusuzca en uç algoritmaları ve hız sınırlarını test etme.
Zaman ve HızÇok Hızlı (Simülasyon hızı 10 katına çıkarılabilir)Gerçek Zamanlı (Testler saatler sürer)Binlerce saatlik sürüş deneyimini birkaç dakikada toplama.
Çevre ŞartlarıKusursuz ve Kontrol EdilebilirKaotik, Değişken ve ÖngörülemezTemel algoritma mantığını saf ve net bir şekilde kavrama.

Riskler ve Gerçek Dünya Zorlukları

  • “Sim-to-Real” Yanılsaması (Fiziksel Risk): Python simülasyonunda sürtünme katsayısı, rüzgar esintisi, motorun milisaniyelik gecikmesi (backlash) veya pillerin voltaj düşüşü genellikle ihmal edilir ya da kusursuz kabul edilir. Simülasyonda harika dönen bir viraj algoritması, gerçek bir RC arabaya yüklendiğinde aracın aşırı eylemsizlik momenti yüzünden takla atmasına neden olabilir.
  • İşlemci Gücü ve Gecikme (Matematiksel Risk): Yazdığınız Python kodu bilgisayarınızda saniyede 60 kez (60 FPS) çalışıyor olabilir. Ancak gerçek araç üzerindeki mini bilgisayar (örneğin bir Raspberry Pi veya Nvidia Jetson Nano), anlık olarak LiDAR verisi işlerken ısınabilir ve döngü hızı düşebilir. Bu gecikme (latency), gerçek hayatta kazalara sebebiyet verir. Python’un hız sınırlarını bilmek ve kod optimizasyonu yapmak bu yüzden çok önemlidir.

5. Sonuç ve Sürücüsüz Geleceğe İlk Adım

Otonom araç teknolojileri, geleceğin mühendislik dünyasında yapay zeka ile mekaniğin en kusursuz birleşimidir. Lise yıllarında klavyenin başına geçip import pygame veya import cv2 yazarak başlayacağınız bu serüven, size sadece kodlama öğretmekle kalmaz; analitik düşünmeyi, trigonometriyi, matrisleri ve fizik kurallarını bir amaca hizmet edecek şekilde kullanmayı öğretir.

Yazdığınız ilk araç simülasyonu sürekli duvara çarpabilir, şeritleri kaybedebilir ya da hedefi bulamayabilir. Mühendisliğin temel kuralı tam olarak budur: Simülasyonda bin defa başarısız ol ki, gerçek dünyada bir kez bile hata yapma. Kod editörünüzü açın, sanal dünyanızı tasarlayın ve aracınızın o ilk virajı kendi kendine dönmesini izlemenin keyfini çıkarın.

Yazar hakkında

profesör administrator

Yorum yapabilmek için giriş yapmalısınız.

1
×
Merhaba! Bilgi almak istiyorum.
AI
Nanokar AI
Cevrimici

Merhaba! Ben Nanokar AI asistaniyim. Size nasil yardimci olabilirim?