Günümüzün hızla değişen iş dünyasında, tedarik zinciri yönetimi artık sadece depo ve nakliyeden ibaret değil. Yapay zeka destekli sistemler, lojistik operasyonlarını tahmin edilebilir, veriye dayalı ve optimize edilmiş hale getiriyor. Birkaç hafta önce, gerçek dünya senaryolarını simüle eden tam yığınlı bir mobil uygulama ve yapay zeka destekli tedarik zinciri optimizasyon platformu oluşturdum. Bu projenin amacı, mobil geliştirme, arka uç mühendisliği, veri analitiği ve makine öğrenimini tek bir üretim benzeri mimaride birleştirmekti.
Proje, React Native (Expo + TypeScript), Zustand, TanStack Query, FastAPI, MySQL ve SQLAlchemy gibi araçlarla geliştirildi. Veri analitiği için Pandas ve Scikit-learn kütüphaneleri kullanılırken, sistemde rota optimizasyonu, depo analitiği, talep tahmini, anomali tespiti ve sevkiyat gecikmesi tahminleri gibi ileri lojistik özellikler desteklendi.
Mobil ve Yapay Zeka Mühendisliğinin Kesişimi
Projenin en ilginç yönlerinden biri, mobil mühendisliği ile yapay zeka mühendisliğini birleştirmekti. Genellikle izole edilmiş makine öğrenimi not defterlerinde bulunan modelleri, kullanıcıların tahminlere ve analitik raporlara doğrudan mobil uygulama üzerinden erişebileceği bir sisteme dönüştürdüm. Bu yaklaşım, kullanıcıların gerçek zamanlı operasyonel bilgiler elde etmesini ve tahminleri uygulamaya aktarmasını sağladı.
Mobil uygulama, kullanıcılara aşağıdaki temel özellikleri sunuyordu:
- Sevkiyatların gerçek zamanlı durumunu izleme
- Rotaların ve teslimat performansının analizi
- Tahmin edilen ve gerçekleşen teslimat sürelerinin karşılaştırılması
- Anomali tespiti ve gecikme tahminlerine dayalı uyarılar
Arka Uç Mimarisi ve Veritabanı Tasarımı
Proje, modüler bir arka uç mimarisi üzerine inşa edildi. Uygulama katmanı, servisler, veritabanı işlemleri ve yardımcı programlar gibi bileşenlerden oluşan bir yapıya sahipti. Veritabanı tasarımında üç temel varlık modeli kullanıldı: sevkiyatlar, depolar ve sürücüler.
Veritabanı şeması aşağıdaki gibiydi:
class ShipmentCreate(BaseModel):
product_name: str
origin: str
destination: str
status: str
distance_km: float
expected_delivery_days: int
actual_delivery_days: int
warehouse_id: Optional[int] = None
driver_id: Optional[int] = None
class WarehouseCreate(BaseModel):
name: str
city: str
class DriverCreate(BaseModel):
name: str
truck_number: strBu ilişkiler, basitleştirilmiş bir lojistik ağı modellememize olanak tanıdı. Her sevkiyat, kargo tipine, menşeine, varış noktasına, mesafeye ve tahmini teslimat süresine göre sınıflandırıldı. Depolar ve sürücüler, sevkiyatların atanması ve izlenmesi için temel bileşenler olarak kullanıldı.
Veri Analitiği Katmanının Oluşturulması
Bu katman, projenin basit bir CRUD uygulaması olmaktan çıkıp yapay zeka destekli bir sisteme dönüşmesinde kritik bir rol oynadı. Pandas kütüphanesi kullanılarak lojistik verileri analiz için hazır veri çerçevelerine dönüştürüldü. Örneğin, aşağıdaki kod parçası veritabanından sevkiyat verilerini çekerek analiz için uygun hale getirdi:
shipments_df = pd.read_sql(
"SELECT * FROM shipments",
engine
)Veri analitiği katmanında gerçekleştirilen bazı analizler şunlardı:
- Sevkiyat Durumu Analizi: Farklı sevkiyat durumlarının sayısal dağılımı
- Teslimat Performansı: Tahmini ve gerçek teslimat süreleri arasındaki ortalama fark
- Rota Analizi: En sık kullanılan rota ve gecikme yaşanan bölgelerin belirlenmesi
- Ürün Analizi: En çok sevk edilen ürünlerin yüzdesel dağılımı
Bu analizler, FastAPI üzerinden sunulan API'ler aracılığıyla mobil uygulama tarafından tüketildi ve kullanıcılara anlık olarak sunuldu.
Gerçekçi Veri Üretimi ve Makine Öğrenimi Entegrasyonu
AI modellerinin anlamlı sonuçlar üretmesi için geniş veri setlerine ihtiyaç vardır. Bu nedenle, sahte veri üretmek için Faker ve Mockaroo gibi araçlardan yararlandım. Bu sayede binlerce sevkiyat, çok sayıda depo ve sürücü içeren gerçekçi bir lojistik ağı simüle edildi.
Makine öğrenimi entegrasyonu, projenin en heyecan verici kısmıydı. Gelecekteki gelişmeler için planlanan makine öğrenimi özellikleri şunlardı:
- Rota Optimizasyonu: En verimli lojistik rotaların belirlenmesi
- Depo Verimlilik Skorlaması: Depo performansının analizi ve tıkanıklıkların tespiti
- Talep Tahmini: Gelecekteki sevkiyat hacimlerinin tahmin edilmesi
- Anomali Tespiti: Olağandışı sevkiyat davranışlarının belirlenmesi
Projeden Çıkarılan Dersler ve Gelecek Planları
Bu proje, arka uç sistemleri ile yapay zeka sistemlerinin nasıl entegre edilebileceğini anlamamı sağladı. Başlangıçta basit bir lojistik CRUD uygulaması olarak başlayan proje, yazılım mühendisliği ve yapay zeka mühendisliğinin kesişiminde ilginç bir dönüşüm geçirdi.
Gelecekte, bu platformu daha da geliştirerek gerçek zamanlı tahmin modelleri ve otomatik karar destek sistemleri eklemeyi planlıyorum. Ayrıca, kullanıcı arayüzünü iyileştirerek daha sezgisel ve kullanıcı dostu bir deneyim sunmayı hedefliyorum. Bu proje, yapay zekanın lojistik sektörüne nasıl devrim yaratabileceğini gösteren önemli bir adım oldu.
Yapay zeka özeti
FastAPI, React Native ve veri bilimiyle entegre bir yapay zeka platformu geliştirerek lojistik operasyonları nasıl optimize edebileceğinizi keşfedin. Gerçek dünya senaryoları için adım adım rehber.