Sudoku'yu çözebilirsem, Seyahat Eden Satıcı Sorununu (TSP) çözebilir miyim? Öyleyse nasıl?


23

Diyelim ki herhangi bir boyutta kısmen doldurulmuş bir Sudoku verirseniz, size karşılık gelen tamamlanmış Sudoku'yu verir.

Bu programı bir kara kutu gibi ele alabilir ve TSP'yi çözmek için kullanabilir misiniz? Demek istediğim, TSP problemini kısmen doldurulmuş Sudoku olarak göstermenin bir yolu var, bu yüzden size bu Sudoku'nun cevabını verirseniz, polinom zamanında TSP'nin çözümünü söyleyebilir misiniz?

Evet ise nasıl? TSP'yi kısmen doldurulmuş bir Sudoku olarak nasıl temsil ediyor ve sonuç için karşılık gelen doldurulmuş Sudoku'yu nasıl yorumluyorsunuz?


1
Bu yazıda
Sudoku'dan

@ C.Windolf Soru diğer yöne soruyor. (Gerçekten, aynı hatayı yapan ve aynı
yazıyı

Yanıtlar:


32

9x9 Sudoku için, hayır. Sonlu olduğu için O(1) zamanda çözülebilir .

Eğer için bir çözücü olsaydı Ama n2×n2 tüm çalıştı Sudoku, n polinom sürede ve mümkün olan tüm kısmi panoları ve ran, o zaman evet, bu bir tamamlama gibi, polinom zamanda TSP çözmek için kullanılabilecek n2×n2 Sudoku NP tamamlandı.

NP-bütünlüğünün kanıtı, NP-bütün probleminin R'den Sudoku'ya indirgenmesiyle çalışır; o zaman R NP-tamamlanmış olduğundan, TSP'den R'ye (NP-bütünlüğünün tanımından sonra) azaltabilirsiniz; ve bu indirimleri zincirlemek size TSP'yi çözmek için Sudoku çözücüyü kullanmanın bir yolunu sunar.


1
Lütfen nasıl açıklar mısınız? Evet, kara kutu gibi davranan genel sudoku çözücüm olduğunu varsayalım. Peki nasıl kullanabilirsin?
TSP'yi

2
@ChakrapaniNRao, güncellenmiş cevaba bakınız. Evet, kara kutu olduğunu biliyorum. Detayları araştırmak için Sudoku için NP eksiksizliğinin kanıtını bulun ve azaltmanın nasıl çalıştığını anlayın.
DW

8
n2×n2

8
@ ChakrapaniNRao X sorununu, Y sorunu için kara kutu kullanarak nasıl çözeceğinizi soruyorsunuz. "Azaltma" ne anlama geliyor? Ve bu cevabın açıkladığı gibi, evet / hayır sorunuza cevap evet.
David Richerby

2
@SolomonUcko, iyi, hayır, mutlaka değil. Sorular soruyor: Eğer bir Sudoku çözücümüz varsa, TSP'yi çözmek için kullanabilir miyiz? Cevap evet, yapabiliriz. Nasıl olduğunu açıklarım. Bu size, TSP'yi Sudoku çözücüsünün Sudoku'yu çözeceği kadar hızlı bir şekilde çözme yolu verecektir. Sudoku çözücüsü polinom zamanında çalışıyorsa, bu size TSP'yi polinom zamanında çözmenin bir yolunu verecektir. Sudoku çözücü subexponential zamanla çalışıyorsa, bu TSP'yi subexponential zaman içinde çözmenin bir yolunu verecektir. Ve bunun gibi.
DW

26

TSP örneklerini çözmek için genel bir Sudoku çözücü kullanmak gerçekten mümkündür ve eğer bu çözücü polinom zaman alırsa, o zaman tüm süreç de olacaktır (karmaşıklık terminolojisinde, TSP'den Sudoku'ya bir polinom zaman azalması söz konusudur). Bunun nedeni Sudoku'nun NP tamamlandı ve TSP'nin NP'de olması. Ancak bu alanda genellikle olduğu gibi, azaltma detaylarına bakmak özellikle aydınlatıcı değildir. Eğer isterseniz, Sudoku Latin kare tamamlanması basit azaltma kullanarak bunu birlikte parçası olabilir burada , Latin kare tamamlanması için üniform üçlü grafikleri nirengi gelen azalma burada , nirengi 3SAT gelen azalma buradave 3SAT problemi olarak TSP'nin bir formülasyonu. Bununla birlikte, Sudoku’dan TSP’ye düşürmenin ardındaki fikri anlamak istiyorsanız, Cook’un teoremini (SAT’ın NP'nin tamamlandığını göstererek) ve 3SAT’ten (örneğin 3 boyutlu eşleşmeye kadar) birkaç basit azaltma çalışmasından daha iyi olacağınızı düşünüyorum. ve TSP-Sudoku azaltmasının aynı şey olduğu, ancak daha uzun ve daha yanlış olduğu bilgisinde tatmin olmak.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.