Kayan Bulmaca Çözücü — 3×3'ten 8×8'e Her Tahtayı Online Çöz

Yazar: · Güncellendi

Tahtanı gir, Çöz'e bas, en kısa hamle dizisini al — ücretsiz, tarayıcıda, yükleme yok. Aracın altında: bir kayan bulmaca çözücünün çalışabileceği altı algoritma ve bu çözücünün gerçekte hangisini kullandığı.

Nasıl çalışır ↓

Kayan bulmaca çözücü

Taşları sürükleyip tahtayı kendi bulmacanızla aynı hale getirin ya da rastgele bir tahta için Karıştır'a basın. Çöz, hamleleri adım adım oynatır. 3×3 çözümleri en kısa çözümdür.

Nasıl çalışır

  1. 1Tahtanızı kurunTaşları bulmacanızdaki gibi sürükleyin — ya da sayıları yazın.
  2. 2Çöz'e basınÇözücü hamleleri yaklaşık bir saniyede bulur — 3×3'te en kısası, 8×8'e kadar.
  3. 3Hamleleri izleyinİleri'ye basın — her adım hangi taşı kaydıracağınızı gösterir.

Oyundan resimli bulmaca, sayı yok mu? Üç adım:

  1. 1Bulmacayı tarayınOyununuzdaki karışık tahtanın ekran görüntüsü.
  2. 2Bitmiş resmi ekleyinOyunun gösterdiği hedef resim — parçalar buna göre eşleştirilir.
  3. 3Çözümü alınYanlış yerdeki parçayı sürükleyip düzeltin, sonra Çöz'e basın.

Çözücü nasıl kullanılır

Yukarıdaki araç, çözülebilir herhangi bir 3×3, 4×4 veya 5×5 tahtayı optimal çözer — verdiği cevap yalnızca işe yarayan değil, mümkün olan en kısa hamle dizisidir.

  1. Düzenle'ye bas ve tahtanı gir: taşları bitmiş bulmacada okunacakları gibi numaralandır (sol üst 1'dir) ve şu an bulundukları yerlere yerleştir. Resimli bir bulmaca mı çözüyorsun — bir oyundan, bir fotoğraf uygulamasından, ahşap bir oyuncaktan? Önce bitmiş resmi zihninde sol üstten sağ alta doğru numaralandır.
  2. Çöz'e bas. Hamle listesi 3×3 tahtalarda anında, 4×4'te birkaç saniye içinde belirir.
  3. Hamleleri gerçek bulmacanda teker teker uygula.

Çözücü tahtanın çözülemez olduğunu söylüyorsa bu bir hata değil — tüm dizilimlerin tam yarısı asla çözülemez ve hiçbir geçerli hamle dizisi bunu düzeltemez. Hamleleri okumak yerine tekniği öğrenmeyi mi tercih edersin? İnsan yöntemi burada.

Bir kayan bulmaca çözücü nasıl çalışır — altı algoritmanın karşılaştırması

Kendi kayan bulmaca çözücünü yazıyorsan ve hangi algoritmayı kullanacağından emin değilsen, makalenin geri kalanı iyi bilinen altı algoritmayı hız, bellek, kod karmaşıklığı ve rahatça başa çıktıkları tahta boyutu açısından karşılaştırıyor. Cevaplar 3×3, 4×4 ve 5×5 için farklıdır.

1. Genişlik öncelikli arama (BFS)

En aptal ama doğru algoritma. Hedefi bulana kadar durumları seviye seviye keşfet.

2. Manhattan mesafeli A*

İlk gerçek algoritma. Yapı BFS ile aynı, ama durumlar f = g + h ile sıralanan bir öncelik kuyruğundan çekilir; buradaki h, Manhattan mesafesi sezgiselidir.

3. Manhattan + doğrusal çakışmalı A*

Aynı satırda olup ikisi de hedef satırında ama yanlış sırada duran her taş çifti için sezgisele 2 hamle ekle (sütunlar için de aynısı). Birbirlerinin yanından geçmeleri gerekecek — Manhattan mesafesinin göremediği şey bu.

4. Manhattan + doğrusal çakışmalı IDA*

Yinelemeli derinleştirmeli A*. f-maliyetini derinlik ölçüsü olarak kullanarak derinlik sınırlı DFS yap, her yinelemede sınırı yükselt. Yeniden keşfetme pahasına belleği zamana takas eder.

5. Walking distance'lı IDA*

Walking distance daha sıkı bir sezgiseldir. Her taş dizilimi için, yalnızca satırlara izdüşümü alınmış halde, her taşı doğru satırına götürecek minimum satır-değişimi sayısını önceden hesapla. Sütunlar için de aynısını yap. Topla.

Manhattan'ın kaçırdığı bir şeyi yakalar: aynı satırdaki taşların aynı yer için "kavga etmesini".

6. Toplanabilir ayrık örüntü veritabanlı IDA*

Kayan bulmacalar için bilinen en güçlü sezgisel. Taşları ayrık gruplara böl (15'li bulmacada yaygın bölümleme 7+8 veya 5+5+5'tir). Her grup için, o grubun olası tüm dizilimleri üzerinde, grubun taşlarını hedef konumlarına götürmenin maliyetini önceden hesapla. Arama sırasında her grubun katkısını tablodan oku ve topla.

Özet öneriler

Bugün bir çözücü yazıyorsan:

Peki ya makine öğrenmesi?

2026'da makul bir soru. Sinir ağı sezgiselleri en az 2014'ten beri çalışılıyor ve kayan bulmacalar için hızlı sezgiseller üretebiliyor. Sorun şu: bunlar tipik olarak kabul edilebilir (admissible) değildir — maliyeti fazla tahmin edebilirler, bu da ortaya çıkan algoritmanın artık optimal sonucu garanti etmediği anlamına gelir. Zorluk kalibrasyonu için garantili-optimal çözümler isteyen uygulama geliştiricileri açısından klasik örüntü veritabanları doğru araç olmaya devam ediyor.

Araştırma merakı için: sinir ağıyla eğitilmiş örüntü veritabanları, en zor 15'li bulmaca örneklerinde küçük hızlanmalar sağlıyor. Akademik makaleler için faydalı, yayınlanan yazılım için marjinal.

Gerçek bir uygulamaya ne girer

İpucu üretimi için çözücüye ihtiyaç duyan, yayınlanmış bir mobil uygulama neredeyse her zaman şuraya varır:

Sakin bir telefon uygulaması için doğru pragmatik yığın bu. Slide Puzzle'ın ipucu düğmesi tam olarak böyle çalışıyor.