NP-ครบถ้วนของปัญหาการระบายสีกราฟ


10

สูตรทางเลือก

ฉันคิดสูตรทางเลือกสำหรับปัญหาด้านล่าง การกำหนดทางเลือกเป็นจริงกรณีพิเศษของปัญหาการร้องและใช้กราฟสองฝ่ายเพื่ออธิบายปัญหา อย่างไรก็ตามฉันเชื่อว่าสูตรทางเลือกยังคงเป็นปัญหายาก การกำหนดทางเลือกใช้ชุด disjoint ของโหนดขาเข้าและขาออกที่ทำให้การกำหนดปัญหาง่ายขึ้น

ได้รับออกและโหนดเข้า (โหนดสีแดงและสีน้ำเงินในรูปตามลำดับ) และชุด 's ขนาดของน้ำหนักขอบระหว่างจุดออกและขาเข้า เป้าหมายของปัญหาคือสีขอบหนาในรูปเพื่อให้ทุกโหนดที่เข้ามามีเงื่อนไขnnwijn×n

กราฟสองส่วนของปัญหา

ได้รับชุดจุดยอดขาออก, ชุดของจุดยอดอินพุท,น้ำหนัก ระหว่าง 's และ ' s สำหรับ , และค่าคงที่บวก , หา จำนวนขั้นต่ำของสีสำหรับขอบ (ขอบหนาในรูปด้านบน) เช่นว่าทุก ,{Oi|i=1n}{Ii|i=1n}n×nwij0OiIji,j=1nβeiij=1n

wjj1+c(i)=c(j),ijwijβ

ที่แสดงสีของขอบ{}c(i)eii


สูตรเก่า

ปัญหาต่อไปนี้ดูเป็นปัญหาสำหรับฉัน แต่ฉันไม่สามารถแสดงได้ การพิสูจน์ / ความคิดเห็นใด ๆ เพื่อแสดงความแข็งหรือความสะดวกสบายของมันชื่นชม

สมมติที่สมบูรณ์แบบกราฟถ่วงน้ำหนักกับโหนดและขอบ ให้แสดงน้ำหนักของขอบและการแสดงสีของขอบIJให้เซตย่อยของขอบและค่าคงที่เป็นบวกเป้าหมายคือ: ค้นหาจำนวนสีขั้นต่ำเช่นนั้นสำหรับแต่ละ :Kn=V,Enn(n1)wij0ijc(ij)ijTEβeijT

wij1+c(kl)=c(ij),klijwkjβ.
และ
c(ij)c(ik)forjk

โปรดทราบว่าในปัญหาดังกล่าวข้างต้นเฉพาะขอบในจะต้องมีสี นั่นคือปัญหาที่เกิดขึ้นสามารถแก้ไขได้ใน|!)TO(|T|!)

ปรับปรุง:

หลังจากความคิดเห็นของ Tsuyoshi Ito ฉันได้อัพเดตปัญหาแล้ว ตัวส่วนเปลี่ยนจากเป็น{} ดังนั้นตัวส่วนประกอบด้วยน้ำหนักนอกเช่นกัน นั่นคือเหตุผลที่ฉันพูดถึงกราฟที่สมบูรณ์ในคำจำกัดความ1+c(kj)=c(ij),ki,ekjTwkj1+c(kl)=c(ij),klijwkjT

ฉันยังเพิ่มข้อ จำกัด เพิ่มเติมk นั่นหมายความว่าขอบขาออกจากโหนดจะต้องมีสีต่างกัน (แต่สีที่เข้ามาอาจจะเหมือนกันตราบใดที่ความไม่เท่าเทียมถือ) ทำให้นี้ใช้งานง่ายผูกพันลดลงในจำนวนของสีซึ่งเป็นการศึกษาระดับปริญญาออกสูงสุดของโหนดในTc(ij)c(ik)forjkT

ตามที่ Tsuyoshi พูดถึง 's,และเป็นอินพุตของปัญหาและสีของขอบเป็นผลลัพธ์wijTβ

อัปเดต 2:

ปัญหาไม่ได้บังคับใช้ขอบและเป็นสีเดียวกันeijeji


@ ราฟาเอล: โดยปกติแล้วปัญหาการระบายสีขอบดูเหมือนจะเป็นตัวเลือกที่ดีสำหรับการลด การค้นหาปัญหา np-hard ที่ง่ายที่สุดสำหรับการลดลงคือส่วนที่ยากที่สุด ขั้นตอนต่อไปคือการหาน้ำหนักที่เหมาะสมสำหรับการทำแผนที่ ฉันเดาว่าหากปัญหาการระบายสีขอบลดลงจากปัญหาข้างต้นน้ำหนักควรเป็น 0/1 หรือเราจำเป็นต้องแก้ระบบสมการเพื่อหาน้ำหนัก
Helium

ความคิดเห็นเล็กน้อยเกี่ยวกับการกำหนดปัญหา: (1) อินพุตคืออะไร? ฉันเดาว่าอินพุตเป็น w_ij สำหรับทุกขอบ T และβ แต่ถ้าเป็นเช่นนั้นคุณไม่ควรกำหนด w_ij และ c (ij) ราวกับว่าพวกเขาได้รับแบบเดียวกัน (2) เมื่อฉันเข้าใจสิ่งที่คุณเขียนขอบนอก T จะไม่ถูกอ้างถึง ดังนั้นจึงง่ายกว่าที่จะกำหนดกราฟกำกับที่ประกอบด้วยขอบใน T แทนที่จะพิจารณากราฟกำกับที่สมบูรณ์
Tsuyoshi Ito

@TsuyoshiIto: ขอบคุณสำหรับความคิดเห็นของคุณฉันได้อัพเดตคำถาม
Helium

1
โดยวิธีการปัญหาดูเหมือนยุ่งมากสำหรับฉัน หากคุณอธิบายว่าคุณมาถึงปัญหานี้ได้อย่างไร (กล่าวอีกนัยหนึ่งว่าทำไมคุณถึงสนใจปัญหานี้) มันอาจช่วยให้ผู้อื่นเข้าใจปัญหา
Tsuyoshi Ito

1
@TsuyoshiIto: 1) ปัญหาเป็นกรณีพิเศษของการกำหนดเวลาในเครือข่ายเฉพาะกิจไร้สาย หมายถึงชุดส่งและน้ำหนักเป็นตัวแทนของค่าสัมประสิทธิ์การลดทอนสัญญาณ ข้อ จำกัด กำปั้นยังหมายถึงสัญญาณการรบกวนบวกกับอัตราส่วนเสียงรบกวน 2)“ ส่วนที่มีน้ำหนักของขอบใน T เท่านั้น” จะถูกลบออกทันที T
ฮีเลียม

คำตอบ:


3

มันค่อนข้างง่ายที่จะแสดงว่าสูตรทางเลือกคือ NP-hard การลดลงมาจากปัญหาการระบายสีจุดยอด ได้รับกราฟ G มีจุดที่เราสร้างตัวอย่างของปัญหาดังกล่าวที่มีจุดส่งออกและจุดอินพุต น้ำหนักมีการตั้งค่าดังต่อไปนี้: สำหรับทุกให้ 1 สำหรับถ้ามีขอบระหว่างจุดสุดยอดและจุดสุดยอดให้ , อื่นให้ 0 นอกจากนี้ให้ 1nnniwii=1ijijwij=wji=1wij=wji=0β=1

นี่ค่อนข้างชัดเจน แต่ยากที่จะอธิบายว่าทำไมการลดลงจึงถูกต้อง ให้แสดงอินสแตนซ์ของการระบายสีกราฟและแสดงอินสแตนซ์ที่ลดลงของปัญหา ในการแสดงการลดลงข้างบนนั้นเป็นวิธีแก้ปัญหาที่ถูกต้องเราต้องแสดงให้เห็นว่า (1) ทุกสีที่ใช้ได้สำหรับนั้นใช้ได้สำหรับเช่นกัน (2) คำตอบที่ได้รับจากเป็นน้อยที่สุดสำหรับ{C}CRRCRC

ถ้าและมีสองจุดที่อยู่ติดกันของแล้วพวกเขาก็จะต้องมีสีที่แตกต่างกันใน{R} นั่นเป็นเพราะถ้าและอยู่ติดกันและมีสีเดียวกันเศษส่วนจะส่งผลให้โดยที่มีค่าเป็นบวก ดังนั้นเงื่อนไขไม่ถือ นอกจากนี้ทุกสีที่ถูกต้อง (แต่ไม่จำเป็นต้องน้อยที่สุด) สำหรับเป็นสีที่ถูกต้องสำหรับเช่นกัน มันเป็นไปตามความจริงที่ว่าในสีที่ถูกต้องของijCRijwjj1+c(i)=c(j),ijwij11+XXCRCทุกคู่ของโหนดที่อยู่ติดกันมีสีต่างกันดังนั้นเงื่อนไขจะถือเป็นขอบสีทั้งหมดของในการแก้ปัญหา เนื่องจากทุกสีของเป็นสีที่ถูกต้องสำหรับการแก้ปัญหาน้อยที่สุดเพื่อจะต้องเป็นวิธีแก้ปัญหาที่น้อยที่สุดเพื่อ เช่นกัน ไม่อย่างนั้นจะไม่ใช่วิธีที่น้อยที่สุดเพราะวิธีแก้ปัญหา ให้วิธีแก้ปัญหาที่มีจำนวนสีน้อยกว่าRCRRCC


0

แก้ไข : การก่อสร้างด้านล่างทำงานได้ค่อนข้างเป็นต่อความคิดเห็นซึโยชิอิโตะด้านล่างก็ไม่ได้บังคับว่า(Ji) ฉันปล่อยไว้ในกรณีที่มันเป็นประโยชน์เริ่มต้น นอกจากนี้ไม่ควรมีส่วนโค้งที่มีน้ำหนัก0c(ij)=c(ji)T0

ตามเส้นที่แนะนำ Mohsen ให้เริ่มด้วย Edge Coloring, แปลงกราฟเป็น digraphบนจุดสุดยอดชุดเดียวกันกับที่เรามีและใน , ให้ส่วนโค้งทั้งหมด (ณ จุดนี้) น้ำหนัก , จากนั้นเพิ่มและให้กับกับชุดไปและ aG=(V,E)D=(V,A)uvE(u,v)(v,u)AaAwa=1xyE(x,y)(y,x)Awxy=wyx=0β1T=A

จากนั้นเงื่อนไขก็น่าพึงพอใจก็ต่อเมื่อไม่มีส่วนโค้งสองอันที่จุดยอดเดียวกันมีสีเดียวกันโดยไม่สนใจส่วนโค้งที่มาจากที่ไม่ใช่ขอบในกราฟดั้งเดิม (เนื่องจากมีน้ำหนัก ) สีนี้สามารถแปลงกลับไปเป็นสีที่เหมาะสมสำหรับกราฟต้นฉบับ0

โดยทางเทคนิคแล้วฉันได้แปลงปัญหาดั้งเดิมของคุณเป็นปัญหาการตัดสินใจ ("กราฟมีสีเป็นหรือไม่?") แต่สิ่งนี้จำเป็นต้องทำเพื่อให้พอดีกับต่อไปและมันเปลี่ยนได้อย่างมีประสิทธิภาพเป็นพหุนามkNP

ดังนั้นฉันคิดว่ามันใช้งานได้หรือว่าฉันเพิ่งแสดงสิ่งอื่นเพื่อเป็น -hard? ;)NP


คุณบังคับใช้อย่างไร c (ij) = c (ji) สิ่งนี้ไม่จำเป็นต้องเป็นปัญหาจริงหากฉันเข้าใจอย่างถูกต้อง
Tsuyoshi Ito

จุดดี. ฉันจะแก้ไขโพสต์ต้นฉบับเพื่อบันทึกปัญหา
Luke Mathieson
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.