ความซับซ้อนของปัญหากราฟนี้คืออะไร?


16

ให้กราฟไม่ได้บอกทิศทางอย่างง่ายหาเซตย่อยของจุดยอดเช่นนั้นA GA

  1. สำหรับจุดสุดยอดอย่างน้อยครึ่งหนึ่งของเพื่อนบ้านของก็อยู่ใน , และx AxAxA

  2. ขนาดของนั้นน้อยที่สุดA

นั่นคือเรากำลังมองหากลุ่มซึ่งอย่างน้อยครึ่งหนึ่งของพื้นที่ใกล้เคียงของจุดสุดยอดภายในทุกจุดยังคงอยู่ภายใน การดำรงอยู่ของกระจุกนั้นเป็นสิ่งที่ชัดเจนเนื่องจากจุดสุดยอดทั้งชุดมักจะมีคุณสมบัติ 1 แต่มันยากแค่ไหนที่จะหากลุ่มที่เล็กที่สุด (ไม่ว่างเปล่า)?V(G)

มีชื่อมาตรฐานสำหรับปัญหานี้หรือไม่? สิ่งที่เป็นที่รู้จักเกี่ยวกับความซับซ้อนของมัน?


2
ดูเหมือนว่าจะแตกต่างจากปัญหาพาร์ติชันที่น่าพอใจ ฉันไม่รู้ว่าตัวแปรของคุณเป็นที่รู้จักและได้รับการพิสูจน์แล้วว่าเป็น NPC หรือไม่ แต่อาจลดลงจาก K-ก๊กควรทำงาน: เชื่อมโยงแต่ละโหนดviของกราฟเดิมk+1โหนดของCi "ก๊กภายนอก" ขนาด2(k+1) (แต่ละโหนดมีก๊กภายนอก) จากนั้นคุณจะพบชุดAของขนาดkถ้าหากk-clique มีอยู่ในกราฟดั้งเดิม (คุณต้องเลือกอย่างน้อยหนึ่งโหนด แต่คุณต้องหลีกเลี่ยงกลุ่มภายนอกใด ๆ ) แต่มันเป็นเพียงความคิด ถ้าฉันมีเวลามากพอฉันจะลองดูว่าการลดนั้นถูกต้องหรือไม่
Marzio De Biasi

@MarzioDeBiasi ขอบคุณหลังจากการค้นหาฉันพบว่าพาร์ทิชันที่น่าพอใจปัญหาเกี่ยวข้องแน่นอน อย่างไรก็ตามในตัวแปรทุกตัวที่ฉันสามารถหาได้พวกเขามองหาพาร์ทิชัน แทนที่จะเป็นชุดเดียว ไม่ชัดเจนว่าเกี่ยวข้องกันอย่างไร ในการลดลงของคุณยกเว้นว่าฉันเข้าใจผิดบางอย่างk -clique ของกราฟต้นฉบับไม่เป็นไปตามคำจำกัดความเนื่องจากแต่ละโหนดในนั้นจะมีk1เพื่อนบ้านภายใน แต่อย่างน้อยk+1เพื่อนบ้านภายนอกเนื่องจากการเพิ่มภายนอก ชมรม
Andras Farago

2
ฉันคิดว่าปัญหานี้เป็นที่รู้จักในนาม "พันธมิตรเพื่อการป้องกัน"
daniello

1
@daniello: ยอดเยี่ยมฉันค้นหาในแบบสำรวจ IG Yero, JA Rodriguez-Velazquez, "การป้องกันพันธมิตรในกราฟ: แบบสำรวจ", 2013 แต่ไม่พบคำว่า "ครึ่ง" เมื่อฉันมีเวลาเพียงพอฉันจะอ่านอย่างระมัดระวัง อาจเป็นไปได้ว่าปัญหา OP เป็นที่รู้จักกันดี!
Marzio De Biasi

2
ดูเหมือนว่าจะมีสูตรเป็น "จุดสุดยอดทุกคนมีเพื่อนบ้านอย่างน้อยหนึ่งข้างในข้างนอก" ซึ่งเหมือนกับในคำถามจนถึงการปัดเศษและอาจรวมถึง / ไม่รวมจุดยอดในการนับ
daniello

คำตอบ:


6

นี่คือการลดจาก Clique ถึงปัญหาของคุณ

เราเริ่มต้นด้วยตัวอย่างของก๊กนี้: กราฟและจำนวนเต็มkให้V = { โวลต์1 , V 2 , . . , V n }GkV={v1,v2,...,vn}

Clique ยังคง NPC แม้ภายใต้ข้อ จำกัด ที่ (ภาพร่างหลักฐาน: ถ้าm a x ( d e g ( v i ) > 2 ( k - 1 )จากนั้นเพิ่มK tโดยที่t = 2 ( k - 1 ) - m a xmax(deg(vi))2(k1)max(deg(vi)>2(k1)Ktและเชื่อมต่อกับโหนดทั้งหมดของ Gและขอกลุ่มขนาด k = k + tในกราฟใหม่)t=2(k1)max(deg(vi))Gk=k+t

ดังนั้นเราจึงคิดว่าใน , m x ( d อีกรัม( วีฉัน ) ) 2 ( k - 1 ) สำหรับแต่ละโหนดv iที่d e g ( v i ) < 2 ( k - 1 )เราสร้างกลุ่ม "ภายนอก" C iขนาด2 ( k + 1 ) + 1 (ทุกโหนดของCGmax(deg(vi))2(k1)videg(vi)<2(k1)Ci2(k+1)+1ก๊กมีอย่างน้อย 2 ( k + 1 )เพื่อนบ้าน)Ci2(k+1)

หากคือระดับของโวฉันเราเชื่อมต่อวีฉันไป2 ( k - 1 ) - d อีกรัม( วีฉัน )โหนดCฉันdeg(vi)vivi2(k1)deg(vi)Ci

ในผลลัพธ์แต่ละv ฉันมีระดับ2 ( k - 1 ) ; ดังนั้น| A | kเนื่องจากต้องเลือกจุดสุดยอดอย่างน้อยหนึ่งจุดGvi2(k1)|A|k

เป็นที่ชัดเจนว่าถ้าหนึ่งในจุดสุดยอดของถูกรวมอยู่ในAดังนั้นอย่างน้อย2 ( k + 1 ) / 2 = k + 1โหนดจะต้องถูกแทรกเข้าไปด้วย โปรดทราบว่าถ้าโหนดเดิมมีd อีกรัม( วีฉัน ) < k - 1แล้วอย่างน้อยหนึ่งโหนดที่เชื่อมโยงC ฉันจะต้องรวมที่นำไปสู่| A | > k .CiA2(k+1)/2=k+1deg(vi)<k1Ci|A|>k

ดังนั้นเราสามารถสร้างชุดขนาดต่ำสุด| A | = kถ้าหากGมีกลุ่มขนาดkเท่านั้นA|A|=kGk

ตัวอย่างของการลดลงที่เราถามว่ากราฟแสดงโดยโหนดสีเหลืองและขอบตัวหนามีกลุ่มขนาดk = 3 (สามเหลี่ยม)Gk=3

satisfactory problem variant 30CC0991E0BCCCD16E41CBD9CD3EEECC

โหนดสีฟ้า (จัดกลุ่มเพื่อให้สามารถอ่านได้ดีขึ้น) เป็นขอบสีแดงมีการเชื่อมโยงระหว่างโหนดของGกับd อีกรัม( วีฉัน ) < 2 ( k - 1 )K9Gdeg(vi)<2(k1)


@ WillardZhan: เนื่องจากจุดสุดยอดของทุกแห่งมีระดับ2 ( k - 1 )โดยการก่อสร้างดังนั้นหากAมีจุดสุดยอดหนึ่งจุดจะต้องมีอย่างน้อย2 ( k - 1 ) / 2 = k - 1เพื่อนบ้าน (และเหมือนกัน นำไปใช้กับทุกจุดของA ) ดังนั้น| A | k . ขนาด "ขั้นต่ำ" kสามารถทำได้เฉพาะในกรณีที่เป็นก๊กขนาดk G2(k1)A2(k1)/2=k1A|A|kkAk
Marzio De Biasi

@ WillardZhan: ฉันได้เพิ่มเงื่อนไขอื่นในปัญหาการเริ่มต้นของกลุ่ม (แต่ควรเป็น NPC) ... ฉันยังคงตรวจสอบอยู่ (ยังไม่แน่ใจว่าถูกต้องหรือไม่)
Marzio De Biasi

1
ใช่แล้วตอนนี้มันทำงานได้อย่างสมบูรณ์แบบ (แม้ว่ามันควรจะเป็นในการแสดงออกของt ) บางทีฉันจะลบความคิดเห็นของฉัน? kt
Willard Zhan

@WillardZhan: I think it's correct, because in that paragraph I'm referring to the reduction from Clique [instance (G,k)] to Clique+constraint max(deg(vi))2(k1) [instance (G,k)]. t is the number of the nodes (clique) to add to G to get the new instance of Clique that stastisfies the constraint.
Marzio De Biasi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.