Phát hiện các trường hợp dễ dàng của các vấn đề NP-hard có dễ không?


8

Câu hỏi của tôi là như sau. Giả sử rằng là một vấn đề khó NP. Với một thể tùy ý của và cho rằng một kẻ thù biết rằng trường hợp này rất dễ dàng để giải quyết, là nó có thể tìm thấy một thuật toán thời gian đa thức xác định để giải quyết trường hợp cụ thể này ?tôi Π tôiΠIΠI

Ví dụ: Giả sử là MÀU SẮC. Đối thủ cung cấp cho bạn một đồ thị với đỉnh.G nΠGn

  1. Kẻ thù biết rằng đã hoàn thành nhưng bạn thì không. Bạn có thể tìm thấy thuật toán đa thức thời gian có nội dung "Biểu đồ này có thể tô màu với các màu " không?Δ + 1GΔ+1
  2. Kẻ thù biết rằng có một số tài sản nhưng bạn thì không. Bạn có thể tìm thấy một thuật toán đa thức thời gian có nội dung "Biểu đồ này có thể tô màu với màu" không?P bGPb
  3. ...

5
Như đã nói ở trong câu trả lời của DW, vấn đề là không có hạn chế đặt trên . Ví dụ: " là một trong 42 biểu đồ mà tôi tình cờ đã tính toán giải pháp tối ưu cho" là một thuộc tính hợp lệ . Để đi đến bất cứ nơi nào theo hướng này, tôi nghĩ rằng bạn sẽ cần phải hạn chế tập hợp các thuộc tính có thể - giả sử, đối với các thuộc tính có thể biểu thị trong một số dạng logic bị hạn chế. G P PPGPP
j_random_hacker

Câu trả lời:


17

Vấn đề không thực sự được đặt ra. Đối với bất kỳ trường hợp đặc biệt, có một giải pháp duy nhất, nói . Do đó, chúng ta có thể tưởng tượng một thuật toán mà có câu trả lời hardcoded trong: không có vấn đề gì đầu vào bạn cho nó, tất cả nó chỉ là in . Câu trả lời này được tính là một thuật toán đa thức thời gian xác định để giải quyết trường hợp cụ thể .S S ISSSI

Do đó, câu trả lời cho câu hỏi của bạn là "Có", nhưng vì những lý do không thú vị. Có thể bạn cần suy nghĩ thêm về cách xây dựng câu hỏi của mình để phù hợp với những gì bạn thực sự muốn biết.


Phần cuối cùng của câu hỏi của bạn thực sự là một chút khác nhau. Nó không hỏi về một trường hợp duy nhất . Thay vào đó, nó hỏi về một trường hợp đặc biệt của vấn đề, tức là một nhóm các trường hợp vô hạn là một tập hợp con đúng của tất cả các trường hợp có thể có cho . Trong trường hợp đó, câu trả lời là "nó phụ thuộc"; một số trường hợp đặc biệt có thể vẫn là NP-hard và những trường hợp khác có thể ở P.ΠIΠ

Cuối cùng, tôi không biết ý nghĩa của việc nói "Kẻ thù biết X nhưng bạn thì không". Tôi tự do viết một thuật toán giả sử X là đúng và chỉ hoạt động khi X đúng. "Kiến thức" là một điều buồn cười và không được mô hình hóa tốt bằng các loại công cụ mà bạn dường như đang nói đến; lý thuyết phức tạp liên quan nhiều đến "sự tồn tại" hơn là "kiến thức".


7

Ở một khía cạnh nào đó, câu trả lời cho câu hỏi của bạn là khẳng định, do thuật toán tìm kiếm phổ quát của Levin. Xem xét cho màu biểu đồ cụ thể, và một lớp cụ thể của các trường hợp dễ dàng. Là một nhân chứng cho thấy lớp này dễ, bạn có một thuật toán, được đưa ra một biểu đồ trong lớp này, tạo ra (trong thời gian đa thức) một màu hợp pháp cùng với một bằng chứng kích thước đa thức rằng màu là tối ưu.

Thuật toán tìm kiếm phổ quát của Levin chạy tất cả các thuật toán thời gian đa thức trong trường hợp của nó (điều này đạt được bằng cách thử tất cả các giới hạn thời gian đa thức có thể cho mỗi thuật toán), kiểm tra xem chúng có cung cấp màu hợp pháp cùng với bằng chứng tối ưu không. Trên bất kỳ lớp nào của các trường hợp dễ dàng, thuật toán này chạy trong thời gian đa thức. Thật không may, các hằng số sẽ rất lớn, vì vậy thuật toán này không thực tế.


Lưu ý rằng câu hỏi chỉ nói rằng là NP -hard, vì vậy không đảm bảo rằng các giải pháp có thể được xác minh trong thời gian đa thức. Π
David Richerby
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.