Bu proje, iki popülasyon tabanlı optimizasyon yaklaşımını etkileşimli olarak görselleştirir:
- 🐜 Karınca Kolonisi Optimizasyonu (Ant Colony Optimization, ACO)
- 🧬 Gen Aktarımı Algoritması (Genetik Algoritma)
Arayüz Türkçe'dir ve parametreleri canlı olarak değiştirip sonuçları anlık görebilirsiniz.
 İki algoritma arasından seçim yapabileceğiniz ana menü
İki algoritma arasından seçim yapabileceğiniz ana menü
 Karıncaların feromon izleri ile en kısa yolu bulması
Karıncaların feromon izleri ile en kısa yolu bulması
 Genetik operatörlerle evrimsel optimizasyon süreci
Genetik operatörlerle evrimsel optimizasyon süreci
 Gerçek zamanlı parametre ayarlama paneli
Gerçek zamanlı parametre ayarlama paneli
Aşağıdaki adımlar, zip’tan çıkardıktan sonra projeyi başlatmak için yeterlidir:
cd ant-colony-app
npm install
npm startArdından tarayıcıda otomatik olarak http://localhost:3000 açılır (açılmazsa manuel olarak açabilirsiniz).
- Node.js 18 LTS veya 20 LTS önerilir
- npm (Node ile birlikte gelir)
Not: Kurumsal makinalarda güvenlik duvarı veya proxy internet erişimini etkiliyorsa, npm install aşamasında engellenebilir. Böyle bir durumda çevrimdışı kurulum için bilgi verin.
Projeyi zip’ten çıkardıktan sonra:
cd ant-colony-app
npm install
npm start- Geliştirme sunucusu http://localhost:3000 üzerinde çalışır.
- İlk kurulum sırasında bağımlılıklar indirilir; bu adım bağlantı hızına göre zaman alabilir.
Uygulama bir ana sayfa üzerinden iki algoritma arasında geçiş yapmanızı sağlar:
- Karınca Kolonisi Optimizasyonu: Izgara üzerinde başlangıç ve hedef noktası arasında, engelleri dikkate alarak, feromon izleri yardımıyla en kısa yolu bulmaya çalışan karınca ajanlarını simüle eder.
- Gen Aktarımı Algoritması: İkili (0/1) genlerden oluşan kromozomlar üzerinde çaprazlama (crossover), mutasyon ve elit koruma operatörleriyle fitness’i maksimize etmeyi hedefler.
- Dinamik parametre kontrolü:
- Karınca sayısı (1–100)
- Engel sayısı (0–12)
- Feromon buharlaşma oranı (%1–%50)
- Simülasyon hızı
- α (feromon etkisi), β (mesafe etkisi), bırakılan feromon miktarı
 
- Canlı metrikler: İterasyon sayısı, bulunan en kısa yol uzunluğu, durum (bulundu/arıyor)
- Görselleştirme:
- Kırmızı: Arama yapan karıncalar
- Yeşil: Hedefe ulaşmış karıncalar
- Mor tonlar: Feromon izlerinin yoğunluğu
 
- “Nasıl Çalışır?” bölümü ve olasılık formülü açıklaması:
- P(komşu) = [τ^α] × [η^β]
- τ: feromon yoğunluğu, η: hedefe yakınlık (1/mesafe)
 
- Parametreler:
- Kromozom boyutu (8–32 gen)
- Popülasyon boyutu (4–30 birey)
- Mutasyon oranı (%1–%30)
- Çaprazlama oranı (%50–%100)
- Elit koruma (1–5 birey)
- Maksimum nesil ve adım hızı (ms)
 
- Operatörler ve mantık:
- Turnuva seçim (tournament selection)
- Tek noktalı çaprazlama (single-point crossover)
- Bit flip mutasyon
- Elit koruma ile en iyi bireyleri taşıma
 
- Görselleştirme:
- Ebeveynler, kesim noktası ve oluşan çocuk üzerinde adım adım gösterim
- En iyi/ortalama/en düşük fitness istatistikleri ve ilerleme çubukları
 
Geçiş olasılığı (komşu j, karınca i için), normalleştirilmiş olarak:
Feromon güncellemesi (buharlaşma ve birikim):
Burada: 
Temsil ve uygunluk (fitness):
Turnuva seçimi (boyut t): rastgele seçilen 
Tek noktalı çaprazlama (kesim noktası 
Bit-flip mutasyon (olasılık 
Elit koruma: her nesilde en iyi 
- 
Uygulama açıldığında ana sayfadan algoritma seçin: - “Karınca Kolonisi Optimizasyonu” veya “Gen Aktarımı Algoritması”
 
- 
ACO için: - Slaytırlardan parametreleri ayarlayın (karınca, engel, buharlaşma, hız, α, β, feromon miktarı).
- “Başlat/Durdur” ile simülasyonu kontrol edin, “Yeniden Başlat” ile temiz bir koşu yapın.
- En kısa yol bulunduğunda durum kısmında “Bulundu!” görünür.
 
- 
Gen Algoritması için: - “Ayarlar” ekranında popülasyon ve operatör parametrelerini belirleyin.
- “Evrimi Başlat” deyin; ardından “BAŞLAT/DURDUR” ve “SIFIRLA” düğmeleriyle akışı yönetin.
- Çaprazlama görselleştirmesinde kesim noktası ve gen akışı adım adım gösterilir.
 
Proje kökünde (ant-colony-app) şu komutlar kullanılabilir:
# Bağımlılıkları kur
npm install
# Geliştirme sunucusunu başlat (http://localhost:3000)
npm start
# Testleri çalıştır (interaktif mod)
npm test
# Üretim için derle
npm run buildant-colony-app/
├─ public/
│  └─ index.html
├─ src/
│  ├─ App.js                 # Ana yönlendirme; ana sayfa / algoritma ekranları
│  ├─ HomePage.js            # Algoritma seçim ekranı
│  ├─ AntColonySimulation.js # ACO simülasyonu ve görselleştirme
│  ├─ GeneTransferAlgorithm.js # Genetik algoritma ve görselleştirme
│  ├─ index.js, index.css    # Uygulama girişi ve Tailwind stilleri
│  └─ App.css, test dosyaları vb.
├─ package.json              # Komutlar ve bağımlılıklar
├─ tailwind.config.js        # Tailwind CSS ayarları
└─ postcss.config.js         # PostCSS/Tailwind entegrasyonu
- Port meşgulse: npm startsırasında 3000 portu doluysa, sistem sizden farklı bir port kullanma izni isteyebilir. “Y” diyerek onaylayabilirsiniz.
- Node sürümü: Node 18 veya 20 LTS tavsiye edilir. Çok eski bir sürüm, bağımlılıkların kurulmasını veya çalışmasını engelleyebilir.
- Güvenlik yazılımları: Bazı kurum bilgisayarlarında npm installinternet erişimi nedeniyle takılabilir. Gerekirse offline kurulum seçenekleri konuşulabilir.