Bu proje, farklı yol bulma algoritmalarının nasıl çalıştığını interaktif bir şekilde görselleştirmenizi sağlayan bir web uygulamasıdır. Algoritmalar arasındaki farkları gözlemleyebilir ve performanslarını karşılaştırabilirsiniz.
-
6 Farklı Algoritma:
- A* (A-Star) Algoritması
- Dijkstra Algoritması
- Breadth-First Search (BFS)
- Depth-First Search (DFS)
- Greedy Best-First Search
- Bidirectional BFS
-
İnteraktif Grid:
- 20x20 grid sistemi
- Sürükle-bırak ile duvar oluşturma
- Başlangıç ve bitiş noktalarını taşıma
- Rastgele duvar oluşturma
- Engel yoğunluğunu ayarlama
-
Animasyonlar:
- Algoritmaların çalışmasını adım adım görselleştirme
- Ayarlanabilir animasyon hızı
- Smooth geçiş efektleri
- Hücre hover efektleri
-
Kullanıcı Dostu Arayüz:
- Modern ve temiz tasarım
- Dark mode
- Detaylı tutorial
- Responsive layout
- React.js
- Tailwind CSS
- Framer Motion
- JavaScript ES6+
-
Repo'yu klonlayın:
git clone https://github.com/yucelgmus/pathfinding-simulator.git
-
Proje dizinine gidin:
cd pathfinding-simulator -
Bağımlılıkları yükleyin:
npm install
-
Uygulamayı başlatın:
npm start
-
Grid Kontrolü:
- Boş hücrelere tıklayıp sürükleyerek duvarlar oluşturabilirsiniz
- Mavi başlangıç noktasını sürükleyerek taşıyabilirsiniz
- Kırmızı hedef noktasını sürükleyerek taşıyabilirsiniz
- "Rastgele Duvarlar" butonu ile rastgele engeller oluşturabilirsiniz
-
Algoritma Seçimi:
- Dropdown menüden istediğiniz algoritmayı seçin
- Her algoritmanın kendine özgü avantajları vardır
-
Ayarlar:
- Engel yoğunluğunu %0 ile %40 arasında ayarlayabilirsiniz
- Animasyon hızını değiştirebilirsiniz
- "Grid'i Sıfırla" ile temiz bir başlangıç yapabilirsiniz
- 🔵 Mavi: Başlangıç noktası
- 🔴 Kırmızı: Hedef noktası
- ⚫ Siyah: Engeller
- 💛 Sarı: Ziyaret edilen hücreler
- 💚 Yeşil: Bulunan en kısa yol
-
A Algoritması*:
- En iyi ilk arama algoritması
- Hedef odaklı çalışır
- Genellikle en kısa yolu bulur
- Heuristic fonksiyon kullanır
-
Dijkstra Algoritması:
- En kısa yolu garantiler
- Her yöne eşit maliyetle ilerler
- Hedef odaklı değildir
-
BFS (Breadth-First Search):
- Grafiği katman katman dolaşır
- En kısa yolu garanti eder
- Eşit maliyetli yollarda optimal
-
DFS (Depth-First Search):
- Grafiği derinlemesine dolaşır
- En kısa yolu garanti etmez
- Labirent çözümünde etkili
-
Greedy Best-First Search:
- Sadece hedefe olan mesafeyi dikkate alır
- Hızlı çalışır
- En kısa yolu garanti etmez
-
Bidirectional BFS:
- İki noktadan eşzamanlı BFS
- Normal BFS'den daha hızlı
- Karmaşık yollarda etkili
Bu proje MIT lisansı altında lisanslanmıştır.
- Bu repo'yu fork edin
- Yeni bir feature branch oluşturun (
git checkout -b feature/amazing-feature) - Değişikliklerinizi commit edin (
git commit -m 'feat: Add amazing feature') - Branch'inizi push edin (
git push origin feature/amazing-feature) - Bir Pull Request oluşturun