Trọng lượng tối đa


9

Tôi quan tâm đến một biến thể của đối sánh trọng lượng tối đa trong biểu đồ, mà tôi gọi là "Kết hợp công bằng tối đa".

Giả sử rằng đồ thị có đầy đủ (ví dụ: ), có số chẵn các đỉnh, và trọng lượng được đưa ra bởi một hàm lợi nhuận . Cho khớp , biểu thị bằng M (v) lợi nhuận của cạnh v được khớp với.E=V×Vp:(V2)NMM(v)v

Một kết hợp M là một iff phù hợp công bằng, cho bất kỳ hai đỉnh u,vV :

(wV:  p({w,v})p({w,u}))M(v)M(u)

Nghĩa là, nếu với bất kỳ đỉnh wV , khớp w với đỉnh v mang lại lợi nhuận cao hơn so với khớp với đỉnh u , thì khớp phù hợp phải đủ M(v)M(u) .

Chúng ta có thể tìm thấy một kết hợp công bằng trọng lượng tối đa hiệu quả?


Một trường hợp thú vị là khi đồ thị là lưỡng cực và sự công bằng chỉ áp dụng cho một bên, giả sử rằng G=(LR,L×R) và chúng ta được cấp một hàm lợi nhuận p:L×RN .

Một Fair song phương Matching là một kết hợp trong G như vậy mà cho bất kỳ hai đỉnh u,vL :

(wR:  p({v,w})p({u,w}))M(v)M(u)

Làm thế nào nhanh chóng chúng ta có thể tìm thấy một kết hợp bipartite công bằng tối đa trọng lượng?


Động lực cho vấn đề này đến từ trường hợp đặc biệt lưỡng cực. Giả sử bạn có công nhân và nhiệm vụ, và công nhân có thể tạo ra lợi nhuận từ công việc . Vấn đề ở đây là thiết kế hợp lý (theo nghĩa nào đó, người lao động sẽ không cảm thấy "bị gạt"), trong khi tối đa hóa tổng số tiền chi trả. (Có một sự đánh đổi ở đây giữa sức mạnh của cơ chế chuyển nhượng và lợi ích xã hội).m i p i , j jnmipi,jj

Nếu chúng ta xác định phúc lợi xã hội (hoặc lợi nhuận của nhà máy) của việc phân công người lao động làm việc là tổng lợi nhuận.

Nhìn vào các kịch bản khác nhau cho sức mạnh của người giao việc, chúng tôi nhận được các kết quả sau:

  • Nếu chúng tôi được phép chỉ định bất kỳ công nhân nào cho bất kỳ công việc nào, chúng tôi có thể tối ưu hóa nhà máy một cách hiệu quả (chỉ cần tìm một kết hợp trọng lượng tối đa).

  • Nếu mỗi công nhân tự mình chọn một nhiệm vụ, giả sử rằng công việc của anh ta sẽ được chọn (chỉ có thể chọn một công việc duy nhất cho mỗi công việc) thì anh ta sẽ là công nhân có trình độ nhất đã chọn nhiệm vụ đó, công nhân sẽ hội tụ vào '' tham lam ' 'cân bằng. Lý do là người lao động có thể kiếm được nhiều tiền nhất ( ) sẽ chọn công việc có lợi nhất, v.v. Theo tỷ lệ gần đúng của thuật toán tham lam để phù hợp, điều này sẽ đưa ra mức xấp xỉ 2 của phúc lợi xã hội tối đa có thể.i=argmaximaxjpi,j

Tôi đang tìm kiếm một cái gì đó ở giữa. Giả sử chúng ta có thể phân công công nhân làm việc, nhưng phải hứa với họ rằng không có công nhân "kém chất lượng" nào kiếm được nhiều tiền hơn họ.

Làm thế nào chúng ta có thể tìm thấy một trọng lượng phù hợp tối đa hứa hẹn "công bằng" cho nhân viên một cách hiệu quả?


Về mặt tiếp theo, đối với trường hợp thứ hai (lưỡng cực), có vẻ dễ dàng xây dựng các ví dụ trong đó mọi kết hợp "công bằng" mang lại lợi nhuận cho công nhân đầu tiên 1 và phần còn lại bằng 0, mặc dù có các kết quả "không công bằng" mang lại lợi nhuận cho công nhân đầu tiên và mọi người khác kiếm được . Tương tự, các ví dụ trong đó kết hợp công bằng trọng số tối đa mang lại cho mỗi công nhân lợi nhuận , mặc dù có những kết quả không công bằng mang lại cho mỗi công nhân lợi nhuận trong . 1 - ε 2 / n { 1 - ε , 1 - 2 ε }12ϵ1ϵ2/n{1ϵ,12ϵ}
Neal Young

@NealYoung - Tôi có đúng không khi cho rằng những kịch bản này không thể tồn tại nếu lợi nhuận là khác biệt?
RB

Nó có vẻ như là một vấn đề tiêu chuẩn trong lý thuyết trò chơi trong đó việc không thể phân biệt giữa các lựa chọn thay thế làm giảm đáng kể phúc lợi xã hội.
RB

Rất tiếc, tôi lấy lại nhận xét của mình - Tôi không chắc chắn những ví dụ đó có thể thực hiện được không!
Neal Young

Câu trả lời:


1

Tôi tin rằng "kết hợp lưỡng cực công bằng trọng lượng tối đa" như bạn đã xác định đó là NP-hard. Thậm chí, việc xác định sự tồn tại của một kết hợp lưỡng cực công bằng là NP-hard.

Trước khi tôi đưa ra một bản phác thảo bằng chứng, cho trực giác, hãy xem xét trường hợp nhỏ sau đây. Lấy trong đó , . Lấy sao cho cho và , trong khi cho và . Khi đó và là tương đương, theo nghĩa là cho tất cả , do đó, bất kỳ kết hợp công bằng nào cũng phải cho và cùng một lợi nhuận. Do đó, các trận đấu công bằng duy nhấtL = { a , b } R = { c , d , e , f } p p ( u , w ) = 0 u L w { c , d } p ( u , w ) = 1 uG=(L,R,E=L×R)L={a,b}R={c,d,e,f}pp(u,w)=0uLw{c,d}p(u,w)=1uLa b p ( a , w ) = p ( b , w ) w R a b a b c d a b e fw{e,f}abp(a,w)=p(b,w)wRaba và với và , hoặc chúng khớp và với và . Sử dụng loại tiện ích này, chúng ta có thể buộc phối hợp các cạnh trong khớp. Đây là cơ sở của việc giảm.bcdabef

Đây là một nỗ lực tại một bằng chứng. Đó là một chút liên quan. Có thể có một số sai lầm, nhưng hy vọng bất kỳ sai lầm có thể được sửa chữa.

Bổ đề 1. Cho và như được mô tả trong bài toán, xác định xem có chứa kết hợp công bằng là NP không -cứng.p : E 'R + G 'G=(L,R,E=L×R)p:ER+G

Bằng chứng phác thảo. Bằng chứng là bằng cách giảm từ Tập độc lập trong đồ thị khối. Đặt là một thể hiện nhất định của Tập độc lập trong đó là đồ thị hình khối (mọi đỉnh đều có bậc 3). Chúng tôi mô tả cách xây dựng biểu đồ và hàm lợi nhuận sao cho có khớp bipartite hợp lý nếu và chỉ khi có một tập kích thước độc lập .G ' G ' = ( L , R , E ' = L × R ) p : E 'R + G ' G k(G=(V,E),k)GG=(L,R,E=L×R)p:ER+GGk

Các đỉnh trong sẽ đi theo cặp, được gọi là đối tác . Tương tự như vậy đối với các đỉnh trong . Với mỗi đỉnh , chúng ta để biểu thị đối tác của . Mỗi đỉnh và đối tác của nó sẽ tương đương nhau , nghĩa là chúng ta sẽ tạo Do đó, bất kỳ kết hợp công bằng nào cũng phải gán cùng một lợi nhuận cho và . Trong phần tiếp theo, chúng tôi sử dụng để biểu thị giá trị của .R v L R v ' v L 'L p ( , r ) = p ( ' , r )  cho tất cả  r R . ' π ( , r ) p ( , r ) = p ( ' , r )LRvLRvvLL

p(,r)=p(,r) for all rR.
π(,r)p(,r)=p(,r)

Hơn nữa, với mỗi cặp trong và mỗi cặp đối tác trong , chúng ta tạo hoặc chúng ta tạo Trong trường hợp trước, chúng tôi nói rằng chúng tôi cho phép và khớp với và (vì làm như vậy sẽ gán cùng một lợi nhuận cho và , theo yêu cầu). Trong trường hợp sau, chúng tôi nói rằng chúng tôi ngăn không cho và khớp (cả hai) khớp với vàL r , r ' R π ( , r ) = π ( , r ' ) π ( , r ) π ( , r ' ) . ' r r ''' r r ''Lr,rR

π(,r)=π(,r)
π(,r)π(,r).
rr rr (vì làm như vậy sẽ không gán cùng một lợi nhuận cho và ).

Vì đồ thị đã cho là khối, nó thỏa mãnvà bất kỳ tập độc lập nào có kích thước trong đều xảy ra với các cạnh chính xác . Giả sử để dễ dàng ký hiệu rằng .3 | V | = 2 | E | I k G 3 k V = { 1 , 2 , Mạnh , n }G=(V,E)3|V|=2|E|IkG3kV={1,2,,n}

Đối với mỗi cạnh , hãy làm như sau.{i,j}E

  1. Thêm một cặp đỉnh đối tác để . Rr({i,j}),r({i,j})R

  2. Đối với thiết bị đầu cuối , thêm một cặp đối tác đỉnh để . Đặt cho phép và khớp với và . ( i , j ) , ( i , j ) L π ( ( i , j ) , r ( { i , j } ) ) = π ( ( i , j ) , r ( { i , j } ) ) = i , ( i ,i(i,j),(i,j)L

    π((i,j),r({i,j}))=π((i,j),r({i,j}))=i,
    ( i , j ) r ( { i , j } ) r ( { i , j } )(i,j)(i,j)r({i,j})r({i,j})
  3. Đối xứng, đối với điểm cuối khác : thêm một cặp đỉnh đối tác khác thành và đặt cho phép và được khớp với và .( j , i ) , ( j , i ) L π ( ( j , i ) , r ( { i , j } ) = π ( ( j , i ) , r ( { i , j } ) ) = j , ( j , tôij(j,i),(j,i)L

    π((j,i),r({i,j})=π((j,i),r({i,j}))=j,
    ( j , i ) r ( { i , j } ) r ( { i , j } )(j,i)(j,i)r({i,j})r({i,j})

Cho mọi và được thêm vào cho đến nay, nếu cặp không được phép rõ ràng (ở trên) được khớp với , sau đó ngăn khớp bằng cách gán và mỗi số duy nhất.r R , ' r , r ' π ( , r ) π ( , r ' )LrR,r,rπ(,r)π(,r)

Tiếp theo, thêm cặp phụ đỉnh để . Đối với mỗi đỉnh filler và mỗi , đặt .R r ( i , j ) L π ( ( i , j ) , r ) = 03(|V|k)Rr(i,j)Lπ((i,j),r)=0

Cuối cùng, thêm hai đỉnh và (đối tác) để , cùng với một hai đỉnh và (còn đối tác) để . Đặt , cho phép và được khớp với và . Đối với mọi đỉnh khác , đặt thành một số duy nhất. (Do đó, mọi kết hợp công bằng phải khớp và với và .) Với mọiL 0 L R 0 R 0 R π ( L 0 , R 0 ) = π ( L 0 , R 0 ) = 1 L 0 L 0 R 0 R 0 r R π ( L 0 , r ) L 0 L ' 0 R 0 R 'L0L0LR0R0Rπ(L0,R0)=π(L0,R0)=1L0L0R0R0rRπ(L0,r)L0L0R0 iV{i,j}Eπ((i,j),R0)=iπ((i,j),R ' 0 )=| V| -tôi+1R0iV, với mọi cạnh sự cố , đặt và .{i,j}Eπ((i,j),R0)=iπ((i,j),R0)=|V|i+1

Điều đó hoàn thành việc giảm. Để kết thúc, chúng tôi chứng minh nó là chính xác.


Trước tiên hãy xem xét các cặp đỉnh sau này chiếm ưu thế trước, nghĩa là (i,j),(i,j)L

(rR) π((i,j),r)π((i,j),r).

Xem xét lợi nhuận được gán cho sự cố cạnh cho và , điều kiện này chỉ có thể được đáp ứng nếu và, kiểm tra định nghĩa của cho các cạnh còn lại, điều kiện là đủ. Do đó, kết quả khớp là công bằng khi và chỉ khi nó gán và cho và , và, với mỗi , sẽ mang lại lợi nhuận như nhau cho tất cả các đỉnh trong R0R0i=iπi=iL0L0R0R0iV

N(i)={(i,j):{i,j}E}{(i,j):{i,j}E}.

Đầu tiên, giả sử rằng có tập độc lập có kích thước . Có được kết hợp công bằng cho từ như sau. GIkGI

Khớp và với và .L0L0R0R0

Đối với mỗi đỉnh , hãy để là ba cạnh sự cố của nó. Đối với mỗi cạnh , khớp đỉnh và đối tác của nó với và . Điều này mang lại cho tất cả các đỉnh trong lợi nhuận .iI{i,j1},{i,j2},{i,j3}{i,jh}(i,jh)(i,jh)r({i,jh})r({i,jh})N(i)i

Đối với mỗi đỉnh , đối với mỗi trong ba cạnh sự việc cho , trận đấu và đối tác của mình với một số đỉnh filler duy nhất và đối tác của nó . Điều này cho tất cả các đỉnh trong lợi nhuận .|V|kiVI{i,j}i(i,j)(i,j)rrN(i)0

Do đó, kết hợp này là công bằng.


Tiếp theo, giả sử rằng có phù hợp công bằng .GM

M phải khớp và với và . Đối với mỗi , khớp phải cho mỗi đỉnh trong cùng một lợi nhuận. Đối với mỗi , đối tác của nó cũng nằm trong . Vì vậy, bằng cách kiểm tra mức giảm, lợi nhuận của mỗi đỉnh như vậy phải là (trong trường hợp tất cả sáu đỉnh trong được khớp với các đỉnh và các đối tác của chúng) hoặc bằng 0 (trong trường hợp tất cả sáu đỉnh trong được khớp với các đỉnh phụ trong ). Để choL0L0R0R0iVN(i)(i,j)N(i)(i,j)N(i)iN(i)r({i,j})N(i)RI là tập hợp các đỉnh mà trường hợp trước giữ. Đối với mỗi cạnh , đỉnh và đối tác của nó, mỗi cạnh được khớp với một đỉnh. Theo sau là một bộ độc lập. Vì số đỉnh của filler là , nên kích thước của phải ít nhất là .r ( { i , j } ) I 6 ( | V | - k ) Tôi k{i,j}r({i,j})I6(|V|k)Ik

QED (?)


Tôi nghĩ rằng về cơ bản là chính xác, nếu một chút phức tạp. Hãy cho tôi biết nếu bạn thấy bất kỳ sai lầm, hoặc một cách để đơn giản hóa bằng chứng.

Việc giảm ở trên giả định rằng bạn có thể dùng. Nếu đó là điều không mong muốn, thì tôi đoán chúng ta có thể đệm vớiđỉnh filler, gán lợi nhuận 0 cho tất cả các cạnh của chúng ngoại trừ các cạnh cho và . Chúng ta có thể gán lợi nhuận cho các cạnh sau để đảm bảo các đỉnh phụ không bị chi phối bởi (cũng không chi phối) bất kỳ đỉnh nào khác.L | R | - | L | R 0 R ' 0|R|>|L|L|R||L|R0R0

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.