Nếu tôi có thể giải Sudoku, tôi có thể giải bài toán Nhân viên bán hàng du lịch (TSP) không? Nếu vậy thì thế nào?


23

Giả sử có một chương trình sao cho nếu bạn cung cấp Sudoku một phần với bất kỳ kích thước nào, nó sẽ cung cấp cho bạn Sudoku hoàn thành tương ứng.

Bạn có thể coi chương trình này là một hộp đen và sử dụng nó để giải quyết TSP không? Ý tôi là có cách nào để biểu diễn vấn đề TSP dưới dạng Sudoku được lấp đầy một phần, để nếu tôi đưa ra câu trả lời cho Sudoku đó, bạn có thể cho biết giải pháp cho TSP trong thời gian đa thức không?

Nếu có, làm thế nào? làm thế nào để bạn đại diện cho TSP như một Sudoku được lấp đầy một phần và giải thích Sudoku đầy tương ứng cho kết quả.


1
Bài viết này tuyên bố sẽ giảm bớt vấn đề mang tính xây dựng từ Sudoku sang vấn đề chu kỳ Hamilton: scTHERirect.com/science/article/pii/S097286001630038X
cwindolf

@ C.Windolf Câu hỏi là hỏi hướng khác. (Thật vậy, có một câu trả lời bị xóa cũng mắc lỗi tương tự và trích dẫn cùng một bài viết.)
David Richerby

Câu trả lời:


32

Đối với Sudoku 9x9, không. Nó là hữu hạn nên có thể được giải trong thời gian O(1) .

Nhưng nếu bạn có một bộ giải cho Sudoku n2×n2 , nó hoạt động cho tất cả n và tất cả các bảng một phần có thể, và chạy trong thời gian đa thức, thì có, có thể được sử dụng để giải TSP trong thời gian đa thức, khi hoàn thành n2×n2 Sudoku là NP-hoàn chỉnh.

Bằng chứng về tính đầy đủ của NP hoạt động bằng cách giảm từ một số bài toán R hoàn thành NP thành Sudoku; sau đó bởi vì R là NP-đầy đủ, bạn có thể giảm từ TSP xuống R (theo định nghĩa của tính đầy đủ NP); và xâu chuỗi các mức giảm đó cung cấp cho bạn cách sử dụng bộ giải Sudoku để giải TSP.


1
Bạn có thể vui lòng giải thích làm thế nào? Có, giả sử tôi có bộ giải sudoku chung hoạt động như một hộp đen. Vậy làm thế nào bạn có thể sử dụng nó? Làm thế nào để bạn đại diện cho TSP như một Sudoku được lấp đầy một phần
Chakrapani N Rao

2
@ChakrapaniNRao, xem câu trả lời cập nhật. Vâng, tôi hiểu nó là một hộp đen. Để tìm hiểu chi tiết, hãy tìm bằng chứng về tính đầy đủ của NP cho Sudoku và hiểu cách thức giảm hoạt động.
DW

8
@ChakrapaniNRao Nó không trả lời hoàn toàn câu hỏi nhưng câu trả lời đầy đủ sẽ dài một cách lố bịch, đầy những chi tiết phức tạp và sẽ không cung cấp cho bạn bất kỳ sự giác ngộ nào hơn bản phác thảo ở đây. Có thể việc giảm một số vấn đề NP -complete thành sudoku có thể rất thú vị, nhưng trừ khi bằng chứng cho thấy sudoku là NP -complete thực sự là do giảm từ TSP (không chắc), câu trả lời vẫn sẽ kết thúc " và sau đó xâu chuỗi hai mức giảm đó lại với nhau ". n2×n2
David Richerby

8
@ChakrapaniNRao Bạn đang hỏi cách giải quyết vấn đề X bằng cách sử dụng hộp đen cho vấn đề Y. Đó là nghĩa đen yêu cầu giảm. Đó là "giảm" nghĩa là gì. Và, như câu trả lời này giải thích, câu trả lời cho câu hỏi có / không của bạn là có.
David Richerby

2
@SolomonUcko, tốt, không, không nhất thiết. Các câu hỏi đặt ra: nếu chúng ta có người giải Sudoku, chúng ta có thể sử dụng nó để giải TSP không? Câu trả lời là có, chúng ta có thể. Tôi giải thích thế nào. Điều này sẽ cung cấp cho bạn một cách để giải quyết TSP nhanh như người giải Sudoku sẽ giải Sudoku. Nếu bộ giải Sudoku chạy trong thời gian đa thức, điều này sẽ cho bạn một cách để giải quyết TSP trong thời gian đa thức. Nếu bộ giải Sudoku chạy trong thời gian phụ, điều này sẽ cung cấp cho bạn một cách để giải quyết TSP trong thời gian phụ. Và như vậy.
DW

26

Thực sự có thể sử dụng một bộ giải Sudoku chung để giải các trường hợp TSP và nếu bộ giải này mất thời gian đa thức thì toàn bộ quá trình cũng vậy (theo thuật ngữ phức tạp, có giảm thời gian đa thức từ TSP sang Sudoku). Điều này là do Sudoku hoàn thành NP và TSP nằm trong NP. Nhưng như thường thấy trong lĩnh vực này, nhìn vào các chi tiết giảm không đặc biệt chiếu sáng. Nếu bạn muốn, bạn có thể ghép nó lại với nhau bằng cách sử dụng phép rút gọn đơn giản từ hoàn thành hình vuông Latin thành Sudoku ở đây , giảm từ biểu đồ ba bên thống nhất tam giác sang hoàn thành hình vuông Latin ở đây , giảm từ 3SAT sang tam giác ở đâyvà một công thức của TSP là vấn đề 3SAT. Tuy nhiên, nếu bạn muốn hiểu ý tưởng đằng sau việc giảm từ Sudoku sang TSP, tôi nghĩ bạn sẽ tốt hơn khi nghiên cứu định lý Cook (cho thấy SAT hoàn thành NP) và một vài cách giảm đơn giản từ 3SAT (ví dụ như so khớp 3 chiều) và hài lòng với kiến ​​thức rằng việc giảm TSP-Sudoku chỉ là cùng một loại nhưng dài hơn và khó khăn hơn.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.