Có phải NP-khó lấp đầy các thùng với các bước di chuyển tối thiểu?


33

Có thùng và loại bóng. Các th bin có nhãn cho , nó là số kỳ vọng của bóng kiểu .nmiai,j1jmj

Bạn bắt đầu với những quả bóng loại . Mỗi quả bóng loại có trọng lượng và muốn đặt các quả bóng vào thùng sao cho bin có trọng lượng . Một sự phân phối các quả bóng sao cho các điều kiện trước đó được gọi là một giải pháp khả thi.bjjjwjici

Hãy xem xét một giải pháp khả thi với các quả bóng loại trong bin , khi đó chi phí là. Chúng tôi muốn tìm một giải pháp khả thi chi phí tối thiểu.xi,jjii=1nj=1m|ai,jxi,j|

Vấn đề này rõ ràng là NP-hard nếu không có hạn chế nào đối với . Bài toán tổng hợp con làm giảm sự tồn tại của một giải pháp khả thi.{wj}

Tuy nhiên, nếu chúng ta thêm điều kiện chia cho mỗi , thì việc giảm tổng tập hợp con không còn hoạt động nữa, vì vậy không rõ vấn đề kết quả có còn là NP-hard hay không. Việc kiểm tra sự tồn tại của một giải pháp khả thi chỉ mất thời gian (đính kèm ở cuối câu hỏi), nhưng điều này không cung cấp cho chúng tôi giải pháp khả thi với chi phí tối thiểu.wjwj+1jO(nm)

Bài toán có một công thức chương trình nguyên tương đương. Cho cho : ai,j,ci,bj,wj1in,1jm

Minimize:i=1nj=1m|ai,jxi,j|subject to:j=1mxi,jwj=ci for all 1ini=1nxi,jbj for all 1jmxi,j0 for all 1in,1jm

Câu hỏi của tôi là,

Chương trình số nguyên ở trên có khó NP không khi chia w_ {j + 1} cho tất cả j ?wjwj+1j

Một thuật toán để quyết định xem có giải pháp khả thi nào trong thời gian O(nm) :

Xác định và . Đặt là phần còn lại khi được chia cho .wm+1=wm(maxjcj+1)dj=wj+1/wja%bab

  1. Nếu tồn tại một không chia hết cho , hãy trả về "không có giải pháp khả thi". ( bất biến chia sẽ luôn được duy trì trong vòng lặp sau)ciw1ciwj
  2. cho từ đến :j1m

    1. ki=1n(ci/wj)%djw j . (tối thiểu các quả bóng có trọng lượng yêu cầu)wj
    2. Nếu , trả về "không có giải pháp khả thi".bj<k
    3. cici((ci/wj)%dj)i w j cho tất cả . (loại bỏ số lượng bóng tối thiểu cần thiết có trọng lượng )iwj
    4. bj+1(bjk)/dj . (nhóm các quả bóng nhỏ hơn thành một quả bóng lớn hơn)
  3. trả lại "có một giải pháp khả thi".

Một giải pháp thời gian đa thức cho trường hợp đặc biệt trong đó và là thừa của sn=1wj2

Được biết, nếu và tất cả là thừa của , thì trường hợp đặc biệt này có thể được giải quyết trong thời gian đa thức. n=1wj2

Minimize:j=1m|ajxj|subject to:j=1mwjxj=c0xjbj for all 1jm

Giải pháp đã được gợi ý bởi Yuzhou Gu , và một bài viết có thể được tìm thấy ở đây .

Câu trả lời:


0

Một số nền tảng. Vấn đề trên là vấn đề ba lô với những hạn chế. Giải pháp vấn đề về chiếc ba lô hiệu quả nhất có hoặc không có hạn chế có thể được giải quyết trong thời gian giả, vẫn là NP-Hard. Để biết một số biến thể, hãy xem https://en.wikipedia.org/wiki/Knapsack_probols#DefDef . Hạn chế đầu tiên trong biến thể này là giá trị của các vật phẩm (quả bóng) được đặt trong ba lô (thùng) không quan trọng. Vấn đề sau đó được giới hạn trong khoảng thời gian cần thiết để đặt các vật phẩm vào trong ba lô. Vấn đề ban đầu đòi hỏi các vật phẩm có giá trị nhất phải được đặt trong khoảng thời gian ngắn nhất có thể. Một hạn chế khác với phiên bản này là trọng số và tất cả các đối số khác là số nguyên. Và hạn chế của sự quan tâm là trọng lượngwjchia cho tất cả j . Lưu ý: vấn đề ba lô phân số có thể được giải quyết trong thời gian đa thức, nhưng không trình bày các giải pháp thiết thực nhất cho vấn đề ban đầu. Vấn đề này sử dụng các số nguyên chia đều (không có giải pháp hợp lý). Có lẽ xem vấn đề lớn với vấn đề ba lô là gì? .wj+1j

Câu hỏi chính có lẽ là "vấn đề này vẫn là NP-Hard khi không bị ràng buộc bởi một đa thức tương ứng với i , vì vấn đề này ít phức tạp hơn (trong P) khi nó bị chặn? Lý do tôi nói điều này là do vấn đề có thể được hiển thị ở P khi w j bị chặn và NP-Hard khi w j không nhất thiết phải chia w j + 1wjiwjwjwj+1đồng đều (các trọng số chỉ đơn giản là ngẫu nhiên), tất cả các hạn chế giới hạn sự phức tạp của vấn đề này đối với hai điều kiện này. Những điều kiện này (1. vấn đề ba lô trọng lượng ngẫu nhiên mà không có hạn chế giá trị vật phẩm và 2. vấn đề ba lô trọng lượng chia hết mà không hạn chế giá trị vật phẩm) phủ nhận lẫn nhau về mặt giảm độ phức tạp, vì các chỉ số của trọng số có thể là ngẫu nhiên ( đặc biệt là khi không bị ràng buộc), do đó áp đặt các phép tính thời gian theo cấp số nhân (điều này sẽ được hiển thị trong ví dụ bên dưới). Ngoài ra, vì chia w j + 1 , w j tăng kích thước theo cấp số nhân cho mỗi jwjwj+1wjj. Điều này là do thay vì sử dụng các vật có trọng số ngẫu nhiên (các quả bóng có trọng lượng đơn vị đều có thể bị giới hạn ở trọng số đơn vị dưới 100 hoặc 50 hoặc thậm chí 10), hạn chế thay vào đó gây ra sự phức tạp về thời gian phụ thuộc vào số chữ số của , giống nhau như phân chia thử nghiệm, đó là cấp số nhân.wj

Vì vậy, có, chương trình số nguyên ở trên vẫn là NP-hard ngay cả khi chia w j + 1 cho tất cả j . wjwj+1j Và điều này dễ dàng được quan sát.

Ví dụ 1: đặt w p là lũy thừa của hai. Do hằng số hai, toàn bộ vấn đề được giải quyết trong thời gian bậc hai, như ví dụ của bạn cho thấy. Các trọng số không phải là ngẫu nhiên và do đó việc tính toán được giải quyết một cách hiệu quả.n=1wp

Ví dụ 2: đặt w jp , trong đó p là số nguyên tố tương ứng với j , sao cho p = 2 , j = 1 : p = 3 , j = 2 , p = 5 , j = 3 , p = 7 , j = 4 , . . . , P , Jwj+1wjppjp=2,j=1:p=3,j=2,p=5,j=3,p=7,j=4,...,P,J. Điều này được áp dụng, vì chia w j + 1 cho tất cả j . Chúng tôi nhận được mỗi w j là sản phẩm của tất cả các số nguyên tố cho đến j . Các giá trị của các trọng đơn vị tăng như vậy: 1 , 2 , 6 , 30 , 210 , 2310 , 30030 , . . . . Vì có một ràng buộc ( p j ~ j l o g ( j )wjwj+1jwjj1,2,6,30,210,2310,30030,...pjjlog(j), thông qua định lý số nguyên tố), vì các chỉ số đều là số nguyên tố, chúng ta có được độ phức tạp NP-Trung gian.

Ví dụ 3: đặt w jR p , trong đó R p là số nguyên tố được chọn ngẫu nhiên từ hai đến vô cùng, tương ứng với j . Điều này có thể áp dụng cho vấn đề này, vì w j chia w j + 1 cho tất cả j . Chúng tôi nhận được 5 chỉ tiêu đầu tiên (ngẫu nhiên rơi từ hai xuống vô cùng), như 101 , 2657 , 7 , 3169 , 2wj+1wjRpRpjwjwj+1j101,2657,7,3169,2. Chúng tôi thấy rằng ngay cả ở quả bóng thứ 5, trọng lượng có mười một chữ số. May mắn thay, thương số thứ năm là hai và không phải là số nguyên tố theo thứ tự hoặc lớn hơn. 10100

Ví dụ ba ở trên là những gì xảy ra khi không bị giới hạn (trọng số ngẫu nhiên) bởi một đa thức tương ứng với i . Độ phức tạp thời gian là theo cấp số nhân, NP-Hard. Đối với một số quan điểm, chỉ cần thêm tất cả các trọng lượng, xem nếu chúng phù hợp. Nhưng không có giải pháp nào để giải quyết nó nhanh hơn đáng kể bằng cách làm cho các trọng số chia hết so với thử từng tập hợp con để xem nó có hoạt động không. Sau vài chục quả bóng, bạn vẫn đang bước vào vương quốc thậm chí hàng nghìn tỷ tập con hoặc hàng nghìn tỷ chữ số.wji


1
Nhưng yếu tố chính được coi là không phải là NP-hard. Nó được coi là NP-indermediate.
rus9384

2
Tôi không thấy giảm ở đây. Giảm thực tế là gì? Lấy đầu vào của thừa số nguyên tố, và bằng cách nào đó xuất ra hệ số bằng cách sử dụng giải pháp của chương trình số nguyên.
Chao Xu

2
Bạn có nghĩa là "chương trình số nguyên ở trên là NP-hard"? Một chương trình cá nhân không thể là NP-hard.
Yuval Filmus

1
Trong thực tế nguyên tố là trong . Vì vậy, nó là N P -Hard nếu N P = c o N P . NPcoNPNPNP=coNP
rus9384

2
Thật không may, các chỉnh sửa bổ sung đã không làm rõ nó. Giảm thực tế sẽ hữu ích.
Chao Xu
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.