ฉันเชื่อว่า "การจับคู่สองฝ่ายที่มีน้ำหนักยุติธรรมสูงสุด" ตามที่คุณกำหนดไว้ว่าเป็นเรื่องยาก ยิ่งไปกว่านั้นการพิจารณาการมีอยู่ของการจับคู่สองฝ่ายที่ยุติธรรมคือ NP-hard
ก่อนที่ฉันจะให้ภาพร่างหลักฐานสำหรับปรีชาลองพิจารณาตัวอย่างเล็ก ๆ น้อย ๆ ต่อไปนี้ ใช้ที่ ,\} ใช้นั้นสำหรับและ , ในขณะที่สำหรับและ\} จากนั้นและเทียบเท่าในแง่ที่สำหรับทั้งหมดดังนั้นการจับคู่ที่เป็นธรรมใด ๆ จะต้องให้และกำไรเท่ากัน ดังนั้นการจับคู่ที่เป็นธรรมเท่านั้นจะจับคู่กันG′=(L,R,E′=L×R)G′=(L,R,E′=L×R)L={a,b}L={a,b}R={c,d,e,f}R={c,d,e,f}ppp(u,w)=0p(u,w)=0u∈Lu∈Lw∈{c,d}w∈{c,d}p(u,w)=1p(u,w)=1u∈Lu∈Lw∈{e,f}w∈{e,f}aabbp(a,w)=p(b,w)p(a,w)=p(b,w)w∈Rw∈RaabbaaและไปและหรือพวกเขาตรงกับและจะและFการใช้อุปกรณ์ประเภทนี้เราสามารถบังคับให้มีการประสานงานของขอบในการจับคู่ นี่คือพื้นฐานของการลดbbccddaabbeeff
นี่คือความพยายามในการพิสูจน์ มันเกี่ยวข้องกับเล็กน้อย อาจมีข้อผิดพลาดบางอย่าง แต่หวังว่าจะสามารถแก้ไขข้อผิดพลาดได้
บทแทรก 1. ให้และตามที่อธิบายไว้ในปัญหาการพิจารณาว่ามีการจับคู่ที่เหมาะสมคือ NP -hardG′=(L,R,E′=L×R)G′=(L,R,E′=L×R)p:E′→R+p:E′→R+G′G′
ร่างหลักฐาน หลักฐานคือการลดลงจากชุดอิสระในกราฟลูกบาศก์ อนุญาตเป็นอินสแตนซ์ที่กำหนดโดยที่เป็นกราฟลูกบาศก์ (จุดยอดทุกอันมีระดับ 3) เราอธิบายวิธีสร้างกราฟและฟังก์ชันกำไรเช่นนั้นมีการจับคู่สองฝ่ายที่ยุติธรรมถ้าและ เฉพาะในกรณีที่มีชุดที่เป็นอิสระจากขนาดk(G=(V,E),k)(G=(V,E),k)G′G′G′=(L,R,E′=L×R)G′=(L,R,E′=L×R)p:E′→R+p:E′→R+G′G′GGkk
จุดยอดในจะมาเป็นคู่เรียกว่าคู่ค้า ในทำนองเดียวกันสำหรับจุดในRสำหรับแต่ละจุดสุดยอดเราให้หมายถึงพันธมิตรของโวลต์แต่ละจุดสุดยอดและพันธมิตรจะเท่ากันซึ่งหมายความว่าเราจะทำให้
ดังนั้นการจับคู่ยุติธรรมใด ๆ จะต้องกำหนดกำไรเดียวกันกับและell' ในสิ่งต่อไปนี้เราจะใช้
เพื่อแสดงค่าของR)LLRRv∈L∪Rv∈L∪Rv′v′vvℓ∈Lℓ∈Lℓ′∈Lℓ′∈Lp(ℓ,r)=p(ℓ′,r) for all r∈R.
p(ℓ,r)=p(ℓ′,r) for all r∈R.
ℓℓℓ′ℓ′π(ℓ,r)π(ℓ,r)p(ℓ,r)=p(ℓ′,r)p(ℓ,r)=p(ℓ′,r)
นอกจากนี้สำหรับแต่ละคู่ในและแต่ละคู่ของในเราจะสร้าง
หรือเราสร้าง
ในกรณีก่อนหน้านี้เราบอกว่าเราอนุญาตให้และถูกจับคู่กับและ
(เพราะการทำเช่นนั้นจะกำหนดกำไรเดียวกันให้กับและตามที่ต้องการ) ในกรณีหลังนี้เราบอกว่าเราป้องกันและถูก (ทั้งคู่) จับคู่กับและℓℓLLr,r′r,r′RRπ(ℓ,r)=π(ℓ,r′)
π(ℓ,r)=π(ℓ,r′)
π(ℓ,r)≠π(ℓ,r′).π(ℓ,r)≠π(ℓ,r′).
ℓℓℓ′ℓ′rrr′r′ℓℓℓ′ℓ′ ℓℓℓ′ℓ′rrr′r′
(เพราะการทำเช่นนั้นจะไม่ให้ผลกำไรเดียวกันกับและ )
ℓℓℓ′ℓ′
เมื่อกราฟที่ระบุเป็นลูกบาศก์มันตรงกับและชุดอิสระขนาดในจะเกิดขึ้นที่ขอบสมมติเพื่อความสะดวกของโน้ตที่\}G=(V,E)G=(V,E)3|V|=2|E|3|V|=2|E|IIkkGG3k3kV={1,2,…,n}V={1,2,…,n}
สำหรับแต่ละขอบให้ทำดังนี้{i,j}∈E{i,j}∈E
เพิ่มคู่ของจุดหุ้นส่วนเพื่อR r({i,j}),r′({i,j})r({i,j}),r′({i,j})RR
สำหรับปลายทางเพิ่มคู่ของพันธมิตรจุดเพื่อLตั้งค่าช่วยให้และ
จะได้รับการจับคู่กับและ\}) iiℓ(i,j),ℓ′(i,j)ℓ(i,j),ℓ′(i,j)LLπ(ℓ(i,j),r({i,j}))=π(ℓ(i,j),r′({i,j}))=i,
π(ℓ(i,j),r({i,j}))=π(ℓ(i,j),r′({i,j}))=i,
ℓ(i,j)ℓ(i,j)ℓ′(i,j)ℓ′(i,j)r({i,j})r({i,j})r′({i,j})r′({i,j})
สมมาตรสำหรับจุดปลายอื่น ๆ : เพิ่มอีกคู่หนึ่งของจุดยอดพันธมิตรถึงและตั้ง
อนุญาตให้และจะได้รับการจับคู่กับ
และ\})jjℓ(j,i),ℓ′(j,i)ℓ(j,i),ℓ′(j,i)LLπ(ℓ(j,i),r({i,j})=π(ℓ(j,i),r′({i,j}))=j,
π(ℓ(j,i),r({i,j})=π(ℓ(j,i),r′({i,j}))=j,
ℓ(j,i)ℓ(j,i)ℓ′(j,i)ℓ′(j,i)r({i,j})r({i,j})r′({i,j})r′({i,j})
สำหรับและเพิ่มเข้าไปทุกครั้งหากคู่ไม่ได้รับอนุญาตอย่างชัดเจน (ด้านบน) ให้จับคู่กับจากนั้นป้องกันการแข่งขันโดยกำหนดและแต่ละหมายเลขไม่ซ้ำกันℓ∈Lℓ∈Lr∈Rr∈Rℓ,ℓ′ℓ,ℓ′r,r′r,r′π(ℓ,r)π(ℓ,r)π(ℓ,r′)π(ℓ,r′)
ถัดไปเพิ่มคู่ของฟิลเลอร์จุดที่จะRฟิลเลอร์สำหรับแต่ละจุดสุดยอดและแต่ละชุด03(|V|−k)3(|V|−k)RRrrℓ(i,j)∈Lℓ(i,j)∈Lπ(ℓ(i,j),r)=0π(ℓ(i,j),r)=0
สุดท้ายเพิ่มสองจุดและ (พันธมิตร) เพื่อพร้อมกับสองจุดและ (ยังเป็นพันธมิตร) เพื่อRชุดช่วยให้และที่จะจับคู่กับและR'_0สำหรับจุดสุดยอดอื่น ๆให้ตั้งค่าเป็นจำนวนที่ไม่ซ้ำกัน (ดังนั้นการจับคู่ที่เป็นธรรมใด ๆ จะต้องตรงกับและถึงและ ) สำหรับทุกครั้งL0L0L′0L′0LLR0R0R′0R′0RRπ(L0,R0)=π(L0,R′0)=1π(L0,R0)=π(L0,R′0)=1L0L0L′0L′0R0R0R′0R′0r∈Rr∈Rπ(L0,r)π(L0,r)L0L0L′0L′0R0R0R′0R′0i∈Vi∈Vสำหรับขอบของเหตุการณ์ชุดและ 1{i,j}∈E{i,j}∈Eπ(ℓ(i,j),R0)=iπ(ℓ(i,j),R0)=iπ(ℓ(i,j),R′0)=|V|−i+1π(ℓ(i,j),R′0)=|V|−i+1
ที่ลดลงเสร็จสมบูรณ์ เพื่อให้เสร็จสมบูรณ์เราพิสูจน์ว่าถูกต้อง
ก่อนอื่นพิจารณาสิ่งที่คู่ของ vertices
หลังครอบงำอดีตนั่นคือ
ℓ(i,j),ℓ(i′,j′)∈Lℓ(i,j),ℓ(i′,j′)∈L(∀r∈R) π(ℓ(i,j),r)≤π(ℓ(i′,j′),r).
(∀r∈R) π(ℓ(i,j),r)≤π(ℓ(i′,j′),r).
เมื่อพิจารณาถึงผลกำไรที่กำหนดให้กับขอบของเหตุการณ์ที่เกิดขึ้นกับและเงื่อนไขนี้สามารถพบได้ก็ต่อเมื่อและตรวจสอบคำจำกัดความของสำหรับขอบที่เหลืออยู่เงื่อนไขที่นั้นเพียงพอ ดังนั้นการจับคู่จึงมีความยุติธรรมถ้าหากมันกำหนดและให้กับและและสำหรับแต่ละตัวให้ผลกำไรเหมือนกันทุกจุดใน
R0R0R′0R′0i=i′i=i′ππi=i′i=i′L0L0L′0L′0R0R0R′0R′0i∈Vi∈VN(i)={ℓ(i,j):{i,j}∈E}∪{ℓ′(i,j):{i,j}∈E}.
N(i)={ℓ(i,j):{i,j}∈E}∪{ℓ′(i,j):{i,j}∈E}.
ครั้งแรกคิดว่ามีชุดที่เป็นอิสระขนาดkรับการจับคู่ที่เหมาะสมสำหรับจากดังต่อไปนี้ GGIIkkG′G′II
Matchและเพื่อและR'_0L0L0L′0L′0R0R0R′0R′0
สำหรับแต่ละจุดสุดยอดให้เป็นขอบเหตุการณ์ทั้งสาม สำหรับแต่ละขอบให้จับคู่จุดยอดและคู่ของ
กับและ\}) นี้จะช่วยให้ทุกจุดในกำไรฉันi∈Ii∈I{i,j1},{i,j2},{i,j3}{i,j1},{i,j2},{i,j3}{i,jh}{i,jh}ℓ(i,jh)ℓ(i,jh)ℓ′(i,jh)ℓ′(i,jh)r({i,jh})r({i,jh})r′({i,jh})r′({i,jh})N(i)N(i)ii
สำหรับแต่ละ vertices , สำหรับแต่ละสามขอบเหตุการณ์ที่เกิดขึ้นกับ , จับคู่และหุ้นส่วน
บางคู่ที่ไม่ซ้ำกันของจุดฟิลเลอร์และพันธมิตรR'นี้จะช่วยให้ทุกจุดในกำไร0|V|−k|V|−ki∈V∖Ii∈V∖I{i,j}{i,j}iiℓ(i,j)ℓ(i,j)ℓ′(i,j)ℓ′(i,j)rrr′r′N(i)N(i)00
ดังนั้นการจับคู่นี้จึงยุติธรรม
ถัดไปสมมติว่ามีการจับคู่ยุติธรรมMG′M
Mจะต้องตรงกับและเพื่อและR'_0สำหรับแต่ละการจับคู่ต้องให้แต่ละจุดยอดใน
กำไรเท่ากัน สำหรับแต่ละคู่ก็อยู่ในเช่นกัน ดังนั้นโดยการตรวจสอบการลดลงกำไรของแต่ละจุดยอดดังกล่าวจะต้องเป็น
(ซึ่งในกรณีนี้จุดยอดทั้งหกในถูกจับคู่กับจุดยอดและหุ้นส่วนของพวกเขา) หรือศูนย์ (ในกรณีนี้จุดยอดทั้งหกในถูกจับคู่กับฟิลเลอร์จุดยอดใน ) ปล่อยL0L′0R0R′0i∈VN(i)ℓ(i,j)∈N(i)ℓ′(i,j)N(i)iN(i)r({i,j})N(i)RIเป็นเซตของจุดยอดที่เคสเดิมเก็บ สำหรับแต่ละขอบจุดสุดยอดและคู่ของมันจะถูกจับคู่กับหนึ่งจุดยอด มันตามมาว่าเป็นชุดอิสระ เนื่องจากจำนวนของจุดฟิลเลอร์คือขนาดของต้องมีอย่างน้อยk{i,j}r({i,j})I6(|V|−k)Ik
QED (?)
ฉันคิดว่ามันถูกต้องถ้าเป็นเรื่องเล็กน้อย แจ้งให้เราทราบหากคุณเห็นข้อผิดพลาดใด ๆ หรือวิธีการลดความซับซ้อนของการพิสูจน์
การลดที่กล่าวมาข้างต้นถือว่าเป็นเรื่องปกติที่จะใช้. ถ้านั่นเป็นสิ่งที่ไม่พึงประสงค์ฉันก็เดาได้ว่าเราสามารถใช้
กับจุดฟิลเลอร์, การกำหนดกำไร 0 ทั้งหมดของขอบยกเว้นขอบเพื่อและR'_0เราสามารถกำหนดผลกำไรให้กับขอบหลังเพื่อให้แน่ใจว่าจุดยอดฟิลเลอร์ไม่ได้ถูกครอบงำโดย (หรือควบคุม) จุดยอดอื่นใด|R|>|L|L|R|−|L|R0R′0