Sự phức tạp của vấn đề nuôi mèo con


14

Điều này xuất hiện trong khi tôi đang cố gắng trả lời câu hỏi này về Tối thiểu hóa chiều dài dây . Tôi sẽ gọi đây là vấn đề "hôn nhân đa thê", nhưng internet, vì vậy mèo con. Yay!

Giả sử chúng ta có mèo con mà cần phải được thông qua bởi N người, M > N . Đối với mỗi con mèo con, tôi và mỗi người j có một chi phí c i j . Chúng tôi muốn giảm thiểu tổng chi phí để nhận tất cả mèo con được nhận nuôi. Ngoài ra còn có một tập các ràng buộc: mỗi người j có thể áp dụng không quá u j mèo con.MNM>Nijcijjuj

Không có các ràng buộc, vấn đề là dễ dàng; mỗi con mèo con đi với người jc i j là tối thiểu. Với các ràng buộc là có một thuật toán hiệu quả cho vấn đề này hay nó là NP-hard?ijcij

Câu trả lời:


5

Đây là vấn đề dòng chảy tối đa chi phí tối thiểu.

Xét một đồ thị , trong đó A là tập hợp của mèo con, B là tập hợp người.G=(AB{s,t},E)AB

Đặt là công suất của các cạnh và c : E R + là chi phí của một cạnh. Chúng tôi đảm bảo rằngC:ER+c:ER+

  1. Có một cạnh giữa , trong đó a iAb jBC ( a i , b j ) = 1 , c ( a i , b j ) = c i , j .ai,bjaiAbjBC(ai,bj)=1c(ai,bj)=ci,j
  2. Có một cạnh giữa a iAC ( s , a i ) = 1 , c ( s , a i ) = 0 .saiAC(s,ai)=1c(s,ai)=0
  3. Có một cạnh giữa t , và C ( b j , t ) = u j , c ( b j , t ) = 0 .bjBtC(bj,t)=ujc(bj,t)=0

Nếu lưu lượng tối đa là , thì chúng ta biết có tồn tại một giải pháp. Bạn có thể xây dựng một giải pháp chi phí tối thiểu từ luồng tối đa chi phí tối thiểu.M


4

Đây là vấn đề kết hợp hoàn hảo trọng lượng tối thiểu là đa thức. Hãy xem xét đồ thị lưỡng cực hoàn chỉnh , trong đó L chứa một nút l i cho mỗi mèo con i , R bao gồm các bản sao u j của nút r j cho mỗi người j và các cạnh e i jE nằm giữa l i và mỗi bản sao của r j , với trọng số c i j .(L,R,E)LliiRujrjjeijElirjcij

Chúng tôi biết rằng , nếu không, không phải tất cả mèo con có thể được chỉ định cho người.|L||R|

Kể từ khi kết hợp hoàn hảo phải phù hợp với tất cả các nút, chúng ta cần phải thêm các nút giả để (để có được | L | = | R | ) và kết nối chúng với zero cạnh trọng lượng cho tất cả các nút trong R .L|L|=|R|R


2

Có thể quan tâm là quan sát rằng người ta có thể giảm Phân vùng thành một biến thể của vấn đề này. Nhất định là một thể hiện của phân vùng với các yếu tố với q thậm chí từ đó chúng ta phải chọn một tập con S { 1 , ... , q } với | S | = q / 2 sao cho i S x i = i S x i = K{x1,,xq}qS{1,,q}|S|=q/2iSxi=iSxi=K. (Lưu ý rằng yêu cầu chọn chính xác một nửa các yếu tố không phải là hình thức thông thường nhưng hình thức này vẫn là NP-hard.) Hãy để mỗi chú mèo con là một thành phần của tập hợp; để có hai người; Đặt các trọng số là c i 2 = - x i ; cho u 1 = u 2 = q / 2 . Sau đó, trường hợp này của Kitten Adoption có tối đa0 nếu trường hợp của Phân vùng có một giải pháp.ci1=xici2=xiu1=u2=q/20

CCq

Tôi không chắc điều này nói gì về sự phức tạp của vấn đề ban đầu, nhưng với điều kiện thường thấy là "một trong số tối thiểu hóa / tối đa hóa là NP-hard, cái còn lại là trong thiết lập P" cho các vấn đề tối ưu hóa tổ hợp, tôi sẽ bắt đầu tìm kiếm thuật toán hiệu quả.

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.