Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Sekiz vezir bulmacası

bullvar_katip

Administrator
Katılım
21 Mayıs 2024
Mesajlar
532,105
8 Vezir Bulmacası, 8x8'lik bir satranç tahtasına 8 adet vezirin hiçbiri olağan vezir hamleleriyle birbirini alamayacak biçimde yerleştirmesi sorunudur. Her bir vezirin konumunun diğer bir vezire saldırmasına engel olması için hiçbir vezir başka bir vezirle aynı satıra, aynı kolona ya da aynı köşegene yerleştirilemez. 8 Vezir Bulmacası daha genel olan n Vezir Bulmacası'nın özel bir durumudur. n Vezir Bulmacası, n≥4 için n×n boyutunda bir satranç tahtasına n adet vezirin birbirini alamayacak biçimde yerleştirilmesi sorunudur. Bulmacanın Geçmişi 8 Vezir Bulmacası (ve genel haliyle n Vezir Bulmacası) ilk olarak 1848 yılında satranç oyuncusu Max Bezzel tarafından ortaya atılmış ve yıllar içinde Gauss ve Georg Cantor gibi pek çok matematikçi tarafından incelenmiştir. İlk çözüm Franz Nauck tarafından 1850'de ortaya atılmıştır. Franz Nauck aynı zamanda bulmacayı nxn'lik bir tahta üzerinde uygulanmak üzere n vezir bulmacası haline getirmiştir. Edsger Dijkstra 1972 yılında sekiz vezir bulmacası sorununu yapısal programlama adını verdiği yöntemin gücünü göstermek için yarattığı bir algoritmada kullanmıştır. Bulmacanın Çözümü Toplamda 283.274.583.,552 (64x63x..x58x57/8!) olasılık bulunmasına karşın yalnızca 92 çözüm bulunduğu için bulmacanın çözümü yüksek miktarda hesaplama gerektirir. Gereksiz yere yapılan hesaplamaların sayısını azaltmak için bazı kısayolların kullanılması mümkündür. Örneğin her bir satırda ya da sütunda tek bir vezirin olabileceği kısıtı uygulanarak çözüm sayısı 16.777.216 (8) düzeyine indirilebilir. Aşağıdaki adımlar sırasıyla izlenerek n vezir bulmacasının bir çözümü bulunabilir: n sayısını 12'ye böl. Kalanı aklında tut. (n sayısı sekiz vezir bulmacasında 8'dir). 2'den n sayısına kadar olan bütün çift sayıları sırayla yaz. Eğer kalan 3 ya da 9 ise 2'yi listenin en sonuna koy. 1'den nye kadar olan tek sayıları listeye ekle; eğer kalan sekizse her bir çiftin kendi arasında yerlerini değiştir (örnek: 3, 1, 7, 5, 11, 9, ...). Eğer kalan 2 ise, 1 ile 3'ün yerlerini değiştir ve 5'i listenin en sonuna al. Eğer kalan 3 ya da 9 ise, 1 ve 3'ü listenin sonuna al. Ortaya çıkan listedeki her bir sayı ilgili için ilgili kolonun listedeki sayının gösterdiği satırına bir vezir koy. Örneğin listedeki ilk sayı 2 ise satranç tahtasında ilk kolonun ikinci sırasına bir vezir konmalıdır. Bazı örnekler 14 vezir için liste (kalan 2): 2, 4, 6, 8, 10, 12, 14, 3, 1, 7, 9, 11, 13, 5. 15 vezir için liste (kalan 3): 4, 6, 8, 10, 12, 14, 2, 5, 7, 9, 11, 13, 15, 1, 3. 20 vezir için liste (kalan 8): 2, 4, 6, 8, 10, 12, 14, 16, 18, 20, 3, 1, 7, 5, 11, 9, 15, 13, 19, 17. Sekiz Vezir Bulmacasının Çözümleri Sekiz vezir bulmacasının 92 ayrı çözümü vardır. Ancak bu çözümlerin çoğu birbirinden yalnızca döndürme ve yansıma gibi simetri işlemleriyle üretilebilir. Bu nedenle, eğer simetriden doğan bu fazla çözümler birleştirilip tek çözüm olarak sayılırsa, bulmacanın aslında aşağıda gösterilen 12 eşsiz çözümü vardır. Değişik n Değerleri için Çözüm Sayıları [[Dosya:Eight-queens-animation.gif|küçükresim|sağ|upright=1.82|Özyinelemeli bir algoritmayla Sekiz Vezir Bulmacasının Çözümü]] Aşağıdaki tablo değişik n değerleri için çözüm sayılarını göstermektedir. Not: 6×6'lık bir satranç tahtasında bulunan çözüm sayısının 5×5 boyutundaki bir satranç tahtasında bulunan çözüm sayısından az oluşu dikkat çekicidir. n vezir bulmacasının en son n = 26 değeri için çözümü bulunmuştur. Ancak, çok yüksek hesaplama gücüne gereksinim duyulduğundan n = 27 için çözüm henüz bulunamamıştır. Kaynakça O.-J. Dahl, E. W. Dijkstra, C. A. R. Hoare Structured Programming, Academic Press, London, 1972 ISBN 0-12-200550-3 72-82 sayları arasında Dijkstra'nın 8 Vezir bulmacası için önerdiği çözüm bulunmaktadır. Dış bağlantılar An Applet simulating the random-greedy solution for the n-queen problem MathWorld article Solutions to the 8-Queens Problem Walter Koster's N-Queens Page Durango Bill's N-Queens Page On-line Guide to Constraint Programming n-Queens in C++; Implementation & analysis of several heuristics to speed up solving the n-queens problem NQueen@home Boinc project Çözüm İçeren Bağlantılar N Queens solutions on Sloane's On-Line Encyclopedia of Integer Sequences N Queens solutions achieved on the NQueen@home Boinc project N-Queens solvers in many programming languages A Koalog Constraint Solver model Find your own solution J Somers N-Queen code Atari BASIC Genetic algorithms Haskell/Java hybrid Java Java Standard ML Integer Sequences Quirkasaurus' 8 Queens Solution LISP solution for N-Queens Problem ANSI C (recursive, congruence-free NxN-size queens problem solver with conflict heuristics) javascript solution for 8-Queens Problem Abhinanth's Simple Javascript application for quick view - chess 8 queen problem Brute-force solution for eight queens in a web based interactive classic BASIC environment Conflict heuristics solution for the eight queens in a web based interactive classic BASIC environment A Simple PHP Solution Standart C Programlama Dili / Bir Örnek—Sekiz Vezir Problemi Kategori:Satranç ve matematik Kategori:Algoritmalar
 

Tema özelleştirme sistemi

Bu menüden forum temasının bazı alanlarını kendinize özel olarak düzenleye bilirsiniz.

Zevkine göre renk kombinasyonunu belirle

Tam ekran yada dar ekran

Temanızın gövde büyüklüğünü sevkiniz, ihtiyacınıza göre dar yada geniş olarak kulana bilirsiniz.

Izgara yada normal mod

Temanızda forum listeleme yapısını ızgara yapısında yada normal yapıda listemek için kullanabilirsiniz.

Forum arkaplan resimleri

Forum arkaplanlarına eklenmiş olan resimlerinin kontrolü senin elinde, resimleri aç/kapat

Sidebar blogunu kapat/aç

Forumun kalabalığında kurtulmak için sidebar (kenar çubuğunu) açıp/kapatarak gereksiz kalabalıklardan kurtula bilirsiniz.

Yapışkan sidebar kapat/aç

Yapışkan sidebar ile sidebar alanını daha hızlı ve verimli kullanabilirsiniz.

Radius aç/kapat

Blok köşelerinde bulunan kıvrımları kapat/aç bu şekilde tarzını yansıt.

Foruma hoş geldin 👋, Ziyaretçi

Forum içeriğine ve tüm hizmetlerimize erişim sağlamak için foruma kayıt olmalı ya da giriş yapmalısınız. Foruma üye olmak tamamen ücretsizdir.

Geri