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 và 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 là w j ∗ p , 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+1wj∗ppjp=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 là w j ∗ R 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+1wj∗RpRpjwjwj+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