Skip to content

koesan/MERKUR

Repository files navigation

MERKÜR logo

Uçtan Uca, AI Tabanlı Son Mil Drone Lojistik ve Otonom Navigasyon Sistemi

SiparişAI Karar MotoruFilo PlanlamaAI Rota PlanlamaOtonom Drone Teslimatı


🎥 Tanıtım Videoları


🌐 Canlı Demo

MERKÜR web arayüzünü aşağıdaki bağlantı üzerinden canlı olarak inceleyebilirsiniz:

https://koesan-merkur.hf.space

Demo, sistemin temel akışlarını göstermek için sadeleştirilmiş bir versiyondur. Gerçek sistemde yer alan ROS, Gazebo ve bazı ileri bileşenler ortam kısıtları nedeniyle dahil edilmemiştir.

Note

Harita tabanlı simülasyonda, “Ürün Yüklendi” sonrası drone’un A* algoritması ile teslimat noktasına ilerleyişi ve ardından üsse dönüşü gerçek zamanlı olarak izlenebilir.



Proje Hakkında

MERKÜR, e-ticaret siparişlerinin operasyon tarafını yöneten uçtan uca bir drone lojistik platformudur. Sistem; siparişin AI ile değerlendirilmesinden drone atamasına, AI destekli rota planlama ve engelden kaçınma ile otonom uçuş süreçlerinden güvenli bırakma alanı seçimlerine kadar tüm akışı tek bir yapı içinde toplar. Bu yapı sayesinde platform yalnızca teslimat kararı veren bir yazılım değil; sipariş yönetimi, görev planlama, drone yönlendirme, engelden kaçınma ve güvenli teslimat kararlarını birlikte üreten bütünleşik bir AI destekli drone operasyon sistemidir.

Üç AI Katmanı

  • Operasyon Karar Motoru — Ürünün ağırlığını, boyutunu, hava durumunu, menzili ve bataryayı değerlendirir. Drone mu yoksa kara aracı mı uygun karar verir. Tahmini teslim süresini (ETA) hesaplar, gecikme riskini ölçer ve siparişleri önceliklendirir.
  • Drone AI Navigasyon Katmanı — Drone uçuş sırasında lidar verisini, haritayı ve görev hedefini birlikte yorumlayarak AI destekli rota planlama, engelden kaçınma ve sıkışma toparlama davranışları üretir. Bu katmanda drone için eğitilip sisteme entegre edilen NeuPAN tabanlı yol planlama modeli ile güvenli mikro bırakma noktası seçen MobileNetV3+FPN segmentasyon modeli birlikte çalışır.
  • AI Chatbot — Müşteri ve operatöre sipariş durumu, filo bilgisi ve karar açıklamalarını anlaşılır biçimde sunar.

Neden Drone Teslimatı?

Son mil lojistik, ürünün dağıtım merkezinden nihai müşteriye ulaştırıldığı aşamadır ve toplam lojistik maliyetlerin yaklaşık %50’sine kadarını oluşturabilmektedir. Bu aşama, özellikle şehir içi dağıtımda operasyonel verimsizliklerin, teslimat gecikmelerinin ve maliyet artışlarının en yoğun görüldüğü bölümdür.

Günümüzde küçük ve hafif paketler dahi çoğunlukla kara taşıtlarıyla teslim edilmektedir. Bu durum yakıt ve iş gücü maliyetlerini artırırken, trafik sıkışıklığı nedeniyle teslimat sürelerinin uzamasına ve gecikmelere yol açmakta; aynı zamanda karbon emisyonlarını da yükseltmektedir. Artan e-ticaret hacmiyle birlikte bu sorunlar daha belirgin hale gelmiş, son mil lojistiği hem maliyet hem de zaman verimliliği açısından kritik bir problem alanına dönüşmüştür.

Bu noktada akademik çalışmalar, drone tabanlı teslimat sistemlerinin önemli potansiyel avantajlar sunduğunu göstermektedir. Küçük drone sistemlerinin enerji tüketimini %94’e kadar azaltabildiği, sera gazı emisyonlarını %36–71 oranında düşürebildiği ve teslimat sürelerinde %40’a varan iyileşme sağlayarak gecikmeleri önemli ölçüde azaltabildiği rapor edilmiştir. Ayrıca son mil maliyetlerinde %28–93 arası düşüş potansiyeli ve şehir içi trafik yoğunluğunda anlamlı azalma tespit edilmiştir.

Bu doğrultuda MERKUR; daha düşük operasyon maliyeti, daha hızlı teslimat, daha düşük karbon salımı ve daha sürdürülebilir şehir içi lojistik hedefiyle geliştirilen yeni nesil bir son mil teslimat çözümüdür.


Ölçüt Beklenen Etki Akademik Kaynak
Son mil teslimatın toplam maliyetteki payı %50'ye kadar A Review of Last-Mile Delivery Optimization (2025)
Enerji tüketimi azalımı %94'e varan azalma Carnegie Mellon Üniversitesi / Patterns Dergisi (2022)
Sera gazı emisyonu azalımı %36-71 arası azalma Critical Assessment of Emissions, Costs, and Time (2023)
Teslimat süresi iyileşmesi %40'a varan iyileşme A Review of Last-Mile Delivery Optimization (2025)
Son mil maliyet düşüşü %28-93 arası düşüş potansiyeli Systematic Literature Review (2025)
Trafik tıkanıklığı azalımı %90+ azalma U.S. DOT / Drone Traffic Management (2021)

Ne Yapıyor?

Sistem şu soruları gerçek zamanlı olarak cevaplar:

  • Bu ürün drone ile taşınabilir mi? → Karar modeli + hard-stop kuralları birlikte değerlendirir
  • Hangi sipariş önce çıkmalı? → Öncelik modeli sıralar
  • Tahmini teslim süresi nedir? → ETA modelleri hesaplar
  • Gecikme riski var mı? → Risk modeli ölçer
  • Hangi drone ne zaman çıkmalı? → Filo planlama algoritması planlar
  • En uygun rota nedir? → NeuPAN tabanlı yol planlama modeli bulur
  • Ürünü nereye bırakmalı? → MobileNetV3+FPN segmentasyon modeli belirler

Sistem Akışı

flowchart TD
    A["🛒 Sipariş"] --> B["🧠 AI Karar Motoru"]
    B --> C["📊 ETA + Risk + Öncelik"]
    C --> D{"🚁 Drone uygun mu?"}
    D -->|Hayır| E["🚗 Araç teslimat planı"]
    D -->|Evet| F["🚁 Filo atama"]
    F --> H["📦 Ürün yükleme"]
    H --> I["🛫 Otonom kalkış"]
    I --> J["📡 LiDAR + A* + AI navigasyon"]
    J --> K["🧠 Drone AI rota planlama<br/>NeuPAN tabanlı"]
    K --> L["📍 Hedef bölge"]
    L --> M["📸 Güvenli bırakma alanı seçimi"]
    M --> N["✅ Teslimat"]
    N --> O["🔄 Eve dönüş"]
Loading

Adım Adım Akış

  1. Müşteri, e-ticaret arayüzü üzerinden sipariş oluşturur.

  2. İlk yapay zeka katmanı olan AI operasyon karar motoru devreye girer. Bu katman; ürünün drone veya kara aracı ile teslimata uygunluğunu analiz eder.

  3. AI operasyon karar motoru, drone ve araç senaryoları için tahmini teslim süresini hesaplar. Uçuş süresi, batarya durumu, dönüş ihtiyacı ve şarj etkisi gibi operasyonel verileri değerlendirir.

  4. Aynı katman, siparişin gecikme riskini ölçer ve öncelik skoru oluşturur. Böylece acil, bekleyen veya operasyon açısından kritik siparişler önceliklendirilir.

  5. AI operasyon planlama katmanı, filo durumunu ve görev yoğunluğunu analiz ederek sipariş için en uygun drone'u seçer.

  6. Ürün drone'a yüklendikten sonra, Operatör web arayüzündeki "Ürün Yüklendi" butonuna basar; Ardından drone otomatik olarak kalkış yapar ve teslimat adresine doğru ilerler.

  7. İkinci yapay zeka katmanı olan Drone AI Navigasyon Katmanı bu aşamada devrededir. Drone, uçuş sırasında LiDAR ile çevresini algılar, engelleri haritalandırır ve A* ile NeuPAN tabanlı AI rota planlama modeli kullanılarak güvenli rota oluşturur. Sistem, senaryoya göre bu iki yaklaşım arasında geçiş yapabilir.

  8. Hedef bölgeye ulaşıldığında aynı katmanın görsel güvenlik bileşeni devreye girer. Aşağı bakan kamera görüntüsü MobileNetV3+FPN segmentasyon modeli ile analiz edilir; uygun ve güvenli mikro teslim noktası belirlenir.

  9. Drone, seçilen güvenli bölgeye yönelerek paketi teslim eder.

  10. Teslimat tamamlandıktan sonra dron üsse geri döner ve yeni görev için hazır hale gelir.

  11. Üçüncü yapay zeka katmanı olan AI chatbot, müşteri ve operasyon panelinde farklı bağlamlarla çalışır. Sipariş durumu, filo bilgisi ve sistem kararlarını kullanıcıya anlaşılır şekilde açıklar.


Web demo demo

Otonom teslimat demo



Yapay Zeka Mimarisi

MERKÜR'ün AI katmanı üç ayrı alanda çalışır. Sistemde toplamda 5 ayrı Gradient Boosting modeli, drone için eğitilip entegre edilen NeuPAN tabanlı AI rota planlama modeli ve MobileNetV3+FPN segmentasyon modeli bulunur. Bu modeller, proje ihtiyaçlarına özel olarak hazır veri setleri kullanılarak ya da sentetik veri setleri oluşturularak proje için sıfırdan eğitilmiştir.

flowchart TD
    subgraph DATA["📊 Veri Katmanı"]
        SD["Sentetik Veri Motoru
30.000 eğitim · 6.000 test"]
        FE["32 Feature Engineering"]
        SD --> FE
    end

    subgraph ML["🧠 ML Karar Motoru — 5 GBM Modeli"]
        CL["Classifier — Dron / Araç"]
        DE["Dron ETA"]
        VE["Araç ETA"]
        PR["Priority Model"]
        RI["Risk Model"]
    end

    subgraph SAFE["🛡️ Güvenlik Katmanı"]
        HS["Hard-Stop Kuralları
ML'den bağımsız — daima öncelikli"]
    end

    subgraph NAV["🚁 AI Navigasyon Katmanı"]
        LI["2D LiDAR · Occupancy Grid"]
        AS["A* Global Rota Planlama"]
        NP["NeuPAN Tabanlı AI Planner"]
        HY["Hibrit Takip Katmanı
A* ↔ NeuPAN"]
        LI --> AS & NP --> HY
    end

    subgraph CV["📸 Teslimat Noktası Katmanı"]
        SM["MobileNetV3 + FPN + Derinlik"]
        LM["Güvenlik Filtresi"]
        LC["Bırakma Noktası Seçimi"]
        SM --> LM --> LC
    end

    FE --> CL & DE & VE & PR & RI
    CL & DE & VE & PR & RI --> SAFE
    SAFE --> NAV
    HY --> CV
Loading


Sentetik Veri Motoru

Gerçek operasyon verisi henüz sınırlı olduğu için, Amazon/DHL benzeri lojistik senaryoları modelleyen bir sentetik veri motoru yazıldı:

Parametre Detay
Örnek Sayısı 30.000 eğitim + 6.000 bağımsız test siparişi
Ürün Kategorisi 8 kategori (Elektronik, Sağlık, Market, Moda, Ev Yaşam, Kozmetik, Kitap/Kırtasiye, Oyuncak)
Mevsimsel Talep Kış ↑, Yaz ↓ dalgalanması
Saat Bazlı Yoğunluk 10:00–13:00 ve 17:00–20:00 arası peak
Rüzgar Modeli Headwind ve crosswind ayrımı + cyclical encoding (sin/cos)
Batarya Modeli CC-CV eğrisi (doğrusal olmayan şarj)
Trafik Faktörü Mesai saatleri ve kent yoğunluğu
Stokastik Gürültü Sınır kararlarında gerçekçi etiket çevirme


5 GBM Modeli

Tabuler veri için en güçlü model ailesi olan Gradient Boosting, proje ihtiyacına göre JavaScript'te sıfırdan yazıldı — böylece Node.js ortamında ek bağımlılık gerektirmeden doğrudan çalışır.

Parametre Değer Amaç
Karar Ağacı Derinliği 4 (maks. 16 yaprak) Non-linear öğrenme kapasitesi
Ağaç Sayısı 150 (Classifier) / 100 (diğerleri) Yeterli ensemble kapasitesi
Öğrenme Hızı 0.06 Düşük LR + yüksek ağaç = daha stabil öğrenme
Subsample Oranı 0.70 Stokastik GBM — row sampling ile varyans azaltma
L2 Regularizasyon λ = 0.1 Overfitting önleme
Min. Yaprak Örneği 8 Gürültülü yaprakları engelleme
Cross Validation 5-Fold CV Model güvenilirliğini ölçme
PRNG Seeded Tekrarlanabilirlik
Feature Importance Split gain accumulation Açıklanabilirlik

Model Performansı

Modeller 5-Fold Cross Validation ile doğrulanır; final değerlendirme eğitim setinden tamamen bağımsız, farklı seed ile üretilmiş 6.000 örneklik test seti üzerinde yapılır. Her fold'da scaler ayrı fit edilerek veri sızıntısı (data leakage) önlenir.

Model Görev Metrik Değer
Classifier Drone / Araç kararı Accuracy / F1 / AUC-ROC %89.2 / %73.6 / 0.920
Drone ETA Hava hattı teslim süresi MAE 0.4 dakika
Vehicle ETA Kara hattı teslim süresi MAE 126.2 dakika
Priority Sipariş öncelik skoru MAE 3.8 puan
Risk Gecikme riski tahmini Accuracy %90.9

5-Fold CV Özeti Ortalama Standart Sapma
Accuracy %88.6 ±%0.9
AUC-ROC 0.920 ±0.011

Düşük standart sapma (±%0.9 accuracy, ±0.011 AUC), modelin farklı veri dilimlerinde tutarlı performans gösterdiğini kanıtlar.


Hibrit Karar: ML + Hard-Stop

ML modeli tek başına karar vermez. Güvenlik-kritik kurallar modelden bağımsız olarak her zaman önceliklidir:

if (yük > 8 kg)              → ARAÇ  (drone taşıyamaz)
if (boyut > 55 cm)           → ARAÇ  (hazne sınırı)
if (şehir != İstanbul)       → ARAÇ  (drone servisi şehir dışında kapalı)
if (rüzgar > 38 km/sa)       → ARAÇ  (uçuş güvenli değil)
if (yağış > 2 mm/sa)         → ARAÇ  (sensör ve görev riski)
if (görüş < 3 km)            → ARAÇ  (görüş yetersiz)
if (gerekli_batarya > %100)  → ARAÇ  (enerji marjı yetersiz)

Tasarım felsefesi: "ML yanlış karar verse bile güvenli tarafta kal" — gerçek drone operasyonlarında zorunlu bir mimari gerekliliktir.

Modeller eğitildikten sonra ecommerce/server/data/models/delivery-gbm/ dizinine kaydedilir. Operasyon panelindeki 🧠 Model Eğit butonu ile istenen anda yeniden eğitim tetiklenebilir; 🧠 AI Model Performansı paneli tüm metrikleri, confusion matrix'i, feature importance grafiğini ve K-Fold CV sonuçlarını gerçek zamanlı gösterir.



Not: Dron tarafı yalnızca yazılım akışı olarak tasarlanmamıştır; ROS ve Gazebo tabanlı simülasyon ortamında doğurdan çalışır. Dron uçuşu, rota planlama, engel algılama ve teslimat senaryoları OSRF CitySim dünyası üzerinde denenir. Bu sayede sistem, gerçek dünya koşullarına geçmeden önce şehir benzeri bir simülasyon ortamında doğrulanabilir.

Otonom Navigasyon ve Engellerden Kaçınma

Dron süreç boyunca tamamen otonom hareket eder:

flowchart TD
    L["🔵 2D Lidar Taraması"] --> G["Occupancy Grid\nLog-odds harita · gürültü filtresi · inflation"]
    G --> A["🔷 A* Rota Planlama\nHarita tabanlı global rota"]
    G --> H["🟣 NeuPAN Tabanlı AI Planner\nDrone için eğitilmiş AI katmanı"]
    A --> P["⚙️ Hibrit / Seçilebilir Takip Katmanı\nMod seçimi: ortam · senaryo · tercih"]
    H --> P
    P --> N["Waypoint Takibi"]
    N --> M["MAVLink Hız Komutları"]
    M --> D["ArduPilot SITL"]
    D --> L
Loading
Bileşen Açıklama
Lidar 360° tarama, anlık engel algılama
Occupancy Grid Kalıcı harita, gürültü filtreleme, inflation
A* Harita tabanlı global rota üretimi
NeuPAN tabanlı AI planner Drone için özel güncellenmiş ve eğitilmiş yol planlama katmanı
Hibrit yapı A* ve AI planlama birlikte sistemde bulunur; senaryoya ve ortama göre mod değiştirilebilir

AI Yol Planlama Katmanı: NeuPAN

Sistemde kullanılan AI navigasyon katmanı, NeuPAN (Neural Proximal Alternating-minimization Network) mimarisine dayanarak drone platformu için uyarlanmış ve yeniden eğitilerek entegre edilmiştir. Bu yapı, klasik bir rota izleme sisteminden farklı olarak uçtan uca çalışır ve ham LiDAR nokta bulutunu doğrudan kontrol komutlarına dönüştürür.

Model, haritalama, nesne tespiti veya çokgenleştirme gibi ara adımlara ihtiyaç duymadan her LiDAR noktasını fiziksel olarak yorumlanabilir bir uzayda işler. Yerel boşlukları, engel geometrisini ve hedef yönünü birlikte değerlendirerek gerçek zamanlı rota planlama ve çarpışma kaçınma davranışı üretir.

Bu sayede sistem, özellikle İstanbul gibi yoğun, dar ve düzensiz şehir ortamlarında ani engel değişimlerine, sıkışık koridor yapısına ve beklenmedik çevresel dinamiklere hızlı uyum sağlayabilir. Sonuç olarak bu katman yalnızca bir navigasyon modülü değil, drone için optimize edilmiş gerçek zamanlı, öğrenilmiş bir AI yol planlama ve engelden kaçınma sistemidir.

Sistem Mimarisi

Architecture Diagram


NeuPAN, iki ana modülün iteratif iş birliğiyle çalışır:

1. DUNE — Deep Unfolded Neural Encoder LiDAR'dan gelen binlerce noktayı, robotun geometrisine göre fiziksel olarak yorumlanabilir Latent Distance Features (LDF) adı verilen özelliklere dönüştürür. Her noktanın robota olan mesafesi ve kaçınma yönü anlık olarak hesaplanır.

2. NRMP — Neural Regularized Motion Planner DUNE'den gelen bu özellikleri alarak Model Predictive Control (MPC) çerçevesinde optimal hız ve dönüş komutlarını üretir. Sistem, referans yoldan sapmayı ve çarpışma riskini aynı anda minimize eder.

Bu iki modül, PnP PAN (Plug-and-Play Proximal Alternating-Minimization) algoritmasıyla birkaç iterasyonda birleştirilir ve her kontrol döngüsünde hem algıyı hem de planlamayı eş zamanlı iyileştirir.


Özellik Açıklama
Uçtan Uca Ham LiDAR'dan kontrol komutuna tek optimizasyon; ara modüllerdeki hata birikimini ortadan kaldırır
Gerçek Zamanlı Dar koridorlarda ani manevra için kritik olan düşük gecikme
Haritasız Önceden inşa edilmiş harita gerektirmez; dinamik ve haritalanmamış alanlarda aktiftir
Kolay Deploy Drone geometrisine göre bir kez eğitilir (CPU'da 1–2 saat); simülasyondaki model gerçek dünyada doğrudan kullanılabilir
Ortamdan Bağımsız Ofis, koridor, park veya yoğun şehir sokağı fark etmeksizin keyfi şekilli engelleri işler

Dar Geçitler Grid tabanlı planlayıcıların "geçilmez" olarak işaretleyebileceği dar boşlukları, nokta seviyesi hassasiyetle değerlendirip geçilebilir hale getirir.

Ani Engeller Havada yeni bir nesne(canlı/cansız), hareketli bir araç(Dron vb..) veya ani bir engel belirdiğinde; MPC ufku içinde anlık kaçınma manevrası üretir. Global rota replanlaması beklemeden tepki verir.

Takılma & Sıkışma Klasik planlayıcıların lokal minimumda sıkıştığı durumlarda, iteratif alternatif minimizasyon yapısı sayesinde sıkışma noktasından çıkış yolu bulur.

Hibrit Esneklik Sistemde A* global planlama ile birlikte bulunur. Açık alanlarda A* referans rotasını takip ederken, dar ve karmaşık bölgelerde NeuPAN lokal kaçınma davranışını devreye girer. Senaryoya göre mod değiştirilebilir.


A* ve AI Rota Planlama Karşılaştırması

Kesikli mavi çizgi A* algoritmasının ürettiği rota
Turuncu düz çizgi AI rota planlama katmanının ürettiği rota

A* ve AI rota planlama karşılaştırma görseli


A* ve AI rota planlama karşılaştırma görseli 2



Segmentasyon Modeli ve Güvenli Teslimat Noktası Seçimi

Dron'un ürünü bırakacağı güvenli alanı belirleyen görsel model, teslimat anındaki AI güvenlik katmanıdır.

Genel Mimari

Architecture Diagram


Sistem, MobileNetV3-Large-Minimal backbone + FPN (Feature Pyramid Network) tabanlı hafif bir segmentasyon ağı kullanır. Model, hızlı inference ve edge cihaz uyumluluğu için ONNX formatında dışa aktarılmıştır.

MobileNetV3 Backbone

MobileNetV3 Mimarisi

Architecture Diagram


MobileNetV3, depthwise separable convolution ve Squeeze-and-Excitation (SE) blokları kullanan hafif bir CNN mimarisidir. Her katmanda kanal bazlı dikkat mekanizması uygulayarak hesaplama maliyetini düşük tutarken özellik ayırt edicilik gücünü korur. Bu sayede Jetson, Raspberry Pi gibi edge cihazlarda gerçek zamanlı segmentasyon yapılabilir.

Backbone, görüntüyü farklı çözünürlüklerde (1/8, 1/16, 1/32) işleyerek çok ölçekli özellik haritaları üretir. Bu katmanlar, FPN'nin girdisi olarak kullanılır.


FPN (Feature Pyramid Network)

FPN Mimarisi

Architecture Diagram


Backbone'un ürettiği farklı çözünürlükteki özellik haritalarını tek bir piramitte birleştiren FPN, modelin hem büyük alanları (park, tarla) hem de küçük detayları (uzaktaki insan, araç) aynı anda görmesini sağlar.

FPN, MobileNetV3'ten gelen çok ölçekli katmanları (1/8, 1/16, 1/32) önce 1×1 konvolüsyonla aynı kanal sayısına (256) indirger, sonra üst katmandan gelen bilgiyi 2× upsampling ile aşağı taşıyarak alt katmanlarla toplar. Her seviyeye son bir 3×3 konvolüsyon uygulanarak sınır artefaktları temizlenir. Böylece derin katmanlardaki semantik anlam, sığ katmanlardaki yüksek çözünürlüklü konum bilgisiyle birleşir.


Hibrit Mimari: MobileNetV3 + FPN

MobileNetV3 + FPN Mimarisi

Architecture Diagram

Sistem, MobileNetV3-Large-Minimal backbone + FPN tabanlı bir hibrit segmentasyon ağı olarak çalışır. MobileNetV3, görüntüyü farklı çözünürlüklerde işleyerek çok ölçekli özellik çıkarır; FPN bu özellikleri top-down pathway ve lateral bağlantılarla birleştirerek decoder'a zenginleştirilmiş bir piramit sunar. Decoder, FPN çıktılarını birleştirip son sınıflandırıcı head'e iletir. Bu yapı sayesinde model, tek bir ağ üzerinden hem genel sahne anlayışı hem de piksel düzeyinde hassas sınır tespiti yapar.

Eğitim, iSAID, Semantic Drone, Swiss/Okutama ve AeroScapes kaynaklarından derlenen 6.000'den fazla havadan görüntü içeren özel bir veri seti üzerinde gerçekleştirilmiştir. Eğitim Google Colab ortamında tamamlanmış,


Metrik Değer
Mean Precision 0.8965
Mean Recall 0.8670
Mean F1-Score 0.8874
Mean mIoU 0.7201

Güvenli Bırakma Noktası Nasıl Seçilir?

Model tek başına karar vermez; çok aşamalı bir güvenlik filtresi uygulanır:

flowchart LR
    K["Kamera"] --> S["MobileNetV3 + FPN"]
    S --> F["Alan Kontrolü"]
    F --> P{"Depth Kamera?"}
    P -->|Evet| C["Düzlük Kontrolü"]
    P -->|Hayır| N
    C --> N["En Uygun Bırakma Noktası"]
    N --> W["Dünya Koordinatına Çevirme"]
    W --> M["İniş Komutu"]
Loading
  1. Segmentasyon — Kamera görüntüsünden sınıf maskeleri üretilir (yaya, araç, bina, yeşil alan, yol vb.)
  2. Güvenlik Filtresi — İnsan, araç ve hareketli nesneler içeren bölgeler elenir
  3. Alan Doğrulama — Küçük veya yetersiz boyuttaki parçalar filtrelenir
  4. Düzlük Kontrolü (opsiyonel) — Derinlik kamerası varsa aday bölgenin düzlemselliği skora eklenir
  5. Nokta Seçimi — En yüksek güvenlik skoruna sahip alan teslimat noktası olarak belirlenir
  6. Koordinat Dönüşümü — Seçilen piksel bölgesi dünya koordinat sistemine çevrilerek iniş komutu üretilir

Özellik Açıklama
Hafif Edge Mimarisi MobileNetV3 + FPN + ONNX sayesinde Jetson ve Raspberry Pi gibi gömülü sistemlerde gerçek zamanlı çalışır
Drone Görüş Açısı Uyumu Veri seti aşağı bakan kamera açısından toplandığı için teslimat anındaki bakış açısına özel optimize edilmiştir
Çok Katmanlı Güvenlik Model çıktısı + post-process filtreler + derinlik doğrulaması; tek bir hata noktasına dayanmaz
Derinlik Opsiyonelliği Derinlik sensörü olmadan yalnızca görsel segmentasyonla, derinlikli sistemlerde ise 3B düzlük doğrulamasıyla çalışır
Çok Ölçekli Segmentasyon FPN sayesinde farklı irtifa ve nesne boyutlarına karşı robust; hem geniş park alanı hem uzaktaki yaya aynı karede doğru tespit edilir
Yüksek Sınır Doğruluğu Hibrit yapı, düzlemsel büyük alanlarla birlikte iniş alanının kenarlarını da hassas çizer; güvenlik tamponu hesaplaması için kritik
Hızlı Inference Depthwise separable convolution + hafif FPN füzyonu, edge cihazlarda 15–30 FPS arası segmentasyon sunar

Hibrit Model Çıktısı

Segmentasyon model çıktısı



Operasyon Merkezi

Web tabanlı operasyon paneli tüm süreci tek ekrandan yönetir:

Özellik Açıklama
🤖 AI Önceliklendirme Siparişleri gecikme riski ve aciliyete göre sıralar
⚖️ Dengeli Filo Ataması Siparişleri tek drone'a yığmadan filoya dağıtır
📅 Drone Zaman Çizelgesi Kalkış, teslim, dönüş ve şarj akışını görselleştirir
🧠 AI Model Performansı Accuracy, F1, AUC-ROC, confusion matrix, feature importance, K-Fold CV sonuçları
🧠 Model Eğit Tek tuşla yeniden eğitim ve önceki/sonraki model karşılaştırması
🗺️ Canlı Harita Leaflet ile teslimat noktaları, rota çizgileri ve aktif siparişler
🌤️ Hava Durumu Katmanı Open-Meteo tabanlı anlık hava durumu ve 5 günlük tahmin
💬 AI Chatbot Gemini destekli operasyon ve müşteri asistanı
🔐 Kimlik Doğrulama Müşteri / admin oturumu, sipariş ve filo görünümü ayrımı
🛒 Ürün ve Yorum Sistemi Ürün kataloğu, kategori filtreleme, yorum ve puan akışı


Teknolojiler

Katman Teknoloji
AI / ML Custom GBM (depth-4, L2 reg, 5-Fold CV, AUC-ROC, Seeded PRNG), A* Pathfinding, MobileNetV3 ONNX Runtime, NeuPAN (PyTorch, CVXPYLayers)
Navigasyon ROS Noetic, Gazebo 11, ArduPilot SITL, PyMAVLink, Occupancy Grid (log-odds)
Sensör / Görü 2D LiDAR (360°), RGB Kamera, Opsiyonel Depth Kamera, OpenCV, ONNX Runtime, SciPy
Backend Node.js 22+, Express 5, node:sqlite (native SQLite), node:crypto (scrypt auth, SHA-256), Tornado (Python proxy)
Frontend Vanilla JS, CSS, Vite 8, Leaflet 1.9 + OpenStreetMap
AI Asistan Google Gemini 2.5 Flash + kural tabanlı yerel fallback
Harici Veri Open-Meteo hava durumu / tahmin API
Altyapı Docker, Python 3.8+, Node.js 22+, Ubuntu 20.04+, SQLite WAL


Proje Yapısı

kargo/
├── main.py                         # Ana başlatıcı
├── config/params.yaml              # ROS, lidar, navigasyon parametreleri
├── scripts/
│   ├── mission_controller.py       # Görev yönetimi: kalkış → teslimat → dönüş
│   ├── grid_map.py                 # Occupancy grid + A* planlama
│   ├── hybrid_local_planner.py     # NeuPAN tabanlı AI rota planlama / lokal kaçınma
│   ├── mavlink_client.py           # ArduPilot MAVLink haberleşme
│   ├── pose_bridge.py              # Gazebo → ROS veri köprüsü
│   ├── landing_zone_detector.py    # ONNX segmentasyon + depth doğrulama
│   ├── port_utils.py               # Port temizleme / uygun port bulma
│   ├── pygame_panel.py             # Yerel Pygame telemetri paneli
│   └── web_server.py               # Tornado proxy + WebSocket + sim servisleri
├── ecommerce/
│   ├── index.html                  # Mağaza shell
│   ├── operations.html             # Operasyon paneli shell
│   ├── public/
│   │   └── mapping.html            # LiDAR / simülasyon harita ekranı
│   ├── server/
│   │   ├── index.js                # Express API sunucusu
│   │   ├── db.js                   # SQLite veritabanı
│   │   ├── data/                   # SQLite DB + drone/order seed verisi + model artifact
│   │   └── ai/
│   │       ├── ml-classifier.js    # 🧠 5 GBM modeli (32 feature, depth-4, K-Fold CV)
│   │       ├── training-data.js    # 📊 Sentetik veri motoru
│   │       ├── ops-model.js        # ⚙️ Filo atama + görev süresi + CC-CV şarj
│   │       ├── vrp-planner.js      # 🗺️ Rota / görev gruplama planlayıcısı
│   │       ├── gemini-engine.js    # 💬 XAI + Chatbot
│   │       └── operating-hours.js  # 🕐 Araç mesai takvimi
│   └── src/
│       ├── main.js                 # Frontend (Vanilla JS)
│       └── styles/index.css        # UI stilleri
├── landing_zone/
│   ├── final_model.onnx            # Segmentasyon modeli
│   ├── config.yaml                 # Model ayarları
│   └── neupan/
│       ├── planner_omni.yaml       # NeuPAN AI planner ayarları
│       └── models/route_planning.pth  # NeuPAN checkpoint
├── images/landing_zone/            # İniş alanı artifact çıktıları
├── kargo_run.log                   # main.py birleşik log dosyası
└── model_world/
    ├── drone_with_lidar/           # Gazebo drone modeli
    └── simple_city.world           # Simülasyon dünyası

Kurulum

Ön Gereksinimler

Docker tabanlı simülasyon ortamı için kurulum adımları ArduGazeboSim-Docker deposundaki dokümantasyon takip edilerek gerçekleştirilmelidir. Bu kurulum; ROS paketleri, ArduPilot SITL ve Gazebo simülasyon ortamının tüm bağımlılıklarını otomatik olarak yapılandırır.

1. Python Bağımlılıkları

pip3 install onnxruntime scipy pyyaml opencv-python-headless tornado numpy rospkg pymavlink

NeuPAN tabanlı AI yol planlama modeli için ek bağımlılıklar:

pip3 install torch cvxpy cvxpylayers ecos rich scikit-learn dill colorama gctl==1.2

2. Node.js Bağımlılıkları

Docker container içinde Node.js 22.x kurulumu:

curl -fsSL https://deb.nodesource.com/setup_22.x | sudo -E bash -
sudo apt-get install -y nodejs
cd MERKUR/ecommerce && npm install && cd ..

3. Simülasyon Dosyaları

# BASE dizinini Docker workspace yapısına göre tanımlayın
BASE=/workspaces/ArduGazeboSim-Docker

# Model ve dünya dosyalarını ArduGazeboSim ROS workspace'ine kopyalayın
cp -r model_world/drone_with_lidar $BASE/catkin_ws/src/iq_sim/models/
cp -r model_world/actor $BASE/catkin_ws/src/iq_sim/models/
cp -r model_world/city_terrain $BASE/catkin_ws/src/iq_sim/models/
cp -r model_world/ocean $BASE/catkin_ws/src/iq_sim/models/
cp model_world/multi_drone.world $BASE/catkin_ws/src/iq_sim/worlds/

export GAZEBO_MODEL_PATH=$BASE/catkin_ws/src/iq_sim/models:$GAZEBO_MODEL_PATH
source /opt/ros/noetic/setup.bash
source $BASE/catkin_ws/devel/setup.bash

4. Son Adımlar

Ana bilgisayarda Gazebo GUI'nin açılabilmesi için erişim izni verin (her yeniden başlatmada yapılması gerekir):

xhost +local:

ROS ortam değişkenlerini yükleyin. Her terminal açılışında otomatik yüklenmesi için .bashrc'ye ekleyebilirsiniz:

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc
echo "source /workspaces/ArduGazeboSim-Docker/catkin_ws/devel/setup.bash" >> ~/.bashrc
source ~/.bashrc

Çalıştırma

Important

Chatbot'un çalışabilmesi için ecommerce/.env dosyasına Gemini API anahtarı eklenmelidir:

GEMINI_API_KEY=your_api_key_here

Üç ayrı terminal açın:

# Terminal 1 — Gazebo Simülasyonu
roslaunch iq_sim multi_drone.launch

# Terminal 2 — ArduPilot SITL
sim_vehicle.py -v ArduCopter -f gazebo-iris -I0

# Terminal 3 — MERKÜR
cd MERKÜR
python3 main.py

Tip

Eğer aşağıdaki hata alınırsa:

Got COMMAND_ACK: COMPONENT_ARM_DISARM: FAILED
AP: Arm: Main loop slow (333Hz < 400Hz)

MAVProxy terminalinde geçici olarak çözebilirsiniz:

param set ARMING_CHECK 0

(Simülasyon ortamındaki zaman senkronizasyonu sorunlarını bypass etmek için geçici bir çözümdür.)


main.py başlatıldığında aşağıdaki servisleri otomatik olarak ayağa kaldırır:

  • ecommerce/server/index.js (port 3001)
  • scripts/pose_bridge.py
  • scripts/landing_zone_detector.py
  • scripts/mission_controller.py
  • scripts/web_server.py (varsayılan port 5000; doluysa yakın boş porta geçer)

Tüm süreç çıktıları kargo_run.log dosyasına yazılır.


Web Arayüzleri

Adres Açıklama
localhost:5000/store/ E-ticaret mağazası
localhost:5000/operations/ Operasyon merkezi
localhost:5000/mapping.html LiDAR harita ekranı

Web portu duruma göre 5000 yerine yakın bir porta kayabilir; başlatma sırasında terminale yazdırılır.


Segmentasyon Modeli Veri Kaynakları

Referanslar

Akademik Kaynaklar

# Çalışma Bağlantı
1A Review of Last-Mile Delivery OptimizationMDPI
2Research suggests drones more efficient for last-mile deliveriesCMU
3Critical assessment of emissions, costs, and time for last-mile goods delivery by drones versus trucksNCBI
4Optimal drone deployment for cost-effective and sustainable last-mile delivery operationsWiley
5Drones in last-mile delivery: a systematic literature reviewDIVA
6Demand-Side Management of Auto Traffic for Urban Parcel Delivery by DronesDOT
7Drone Delivery Systems: State of the Art and Future Trends in LogisticsDOI
8Urban Drone Logistics: Optimization Models and ApplicationsDOI
9Unmanned Aerial Vehicles in Logistics and Transportation SystemsScienceDirect
10Electric UAV Energy Consumption and Delivery Feasibility AnalysisDOI
11Sustainable Last-Mile Logistics with Drones: A Review of Environmental ImpactsDOI
12Drone-Based Parcel Delivery: Energy, Cost and Environmental Trade-offsDOI
13Autonomous Delivery Drones in Urban Environments: A Simulation StudyDOI
14Airborne Delivery Networks: Optimization and Fleet ManagementIEEE
15Energy Consumption Comparison of UAV vs Ground Vehicles in Logistics SystemsDOI
16FM-Planner: Foundation Model Guided Path Planning for Autonomous Drone NavigationarXiv
17Multi-UAV autonomous obstacle avoidance with DWA and ORCANature
18LiDAR-Based Deep Reinforcement Learning UAV Navigation FrameworkIMAVS
19Deep Reinforcement Learning for Autonomous Drone NavigationIJESH
20DRL-based UAV navigation and collision avoidanceDOI
21DRL UAV Navigation with LiDAR and Depth FusionMDPI
22Causal reinforcement learning for UAV obstacle avoidanceScienceDirect
23Swarm intelligence-based drone route optimizationResearchGate
24Hybrid PSO-GOOSE UAV path planningLUT
25PSO and Genetic Algorithm optimization for UAV navigationMDPI
26Autonomous UAV landing via object recognitionFrontiers
27Visual SLAM with digital twins for UAV localizationUZH
28Air corridor planning for drone deliveryScienceDirect
29UAV power and charging systems reviewarXiv
30AI-driven predictive maintenance in aircraft systemsMDPI
31Truck-multi drone collaborative delivery systemsSpringer
32Truck and drone cooperative delivery problem reviewWorld Scientific
35NeuPAN: Direct Point Robot Navigation With End-to-End Model-Based LearningACM

SiparişAI Karar MotoruFilo PlanlamaAI Rota PlanlamaOtonom Drone Teslimatı

About

End-to-end AI-powered autonomous drone delivery & last-mile logistics platform. Features hybrid A*/NeuPAN LiDAR obstacle avoidance, real-time visual landing zone detection (MobileNetV3+FPN), and smart fleet operations.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors