รันไทม์ของอัลกอริทึมการโลภ


16

|P|=nkknC={c1,c2,,ck}kcost(C)=maximinjD(pi,cj)Dหมายถึงระยะทางยุคลิดระหว่างจุดเชื่อมต่ออินพุตและเป็นจุดศูนย์c_jกำหนดแต่ละจุดตัวเองไปยังศูนย์คลัสเตอร์ที่อยู่ใกล้จุดการจัดกลุ่มลงในกลุ่มที่แตกต่างกันpicjk

ปัญหานี้เป็นที่รู้จักกันในชื่อปัญหา (ไม่ต่อเนื่อง)และ -hard มันจะแสดงให้เห็นกับการลดลงจากที่ปัญหาที่สมบูรณ์มีอำนาจเหนือชุดว่าถ้ามีอยู่ -approximation อัลกอริทึมสำหรับปัญหากับแล้ว{}kNPNPρρ<2P=NP

อัลกอริทึม -approximation ที่ดีที่สุดนั้นง่ายและใช้งานง่าย คนแรกเลือกจุดโดยพลการและวางไว้ในเซตของศูนย์คลัสเตอร์ จากนั้นหนึ่งจะเลือกศูนย์คลัสเตอร์ถัดไปซึ่งอยู่ไกลที่สุดจากศูนย์คลัสเตอร์อื่นทั้งหมด ดังนั้นในขณะที่เราซ้ำ ๆ หาจุดที่ระยะทางที่ขยายและเพิ่มเข้าไปในCครั้งเดียวเราเสร็จแล้ว2pPC|C|<kjPD(j,C)C|C|=k

มันไม่ยากที่จะเห็นว่าดีที่สุดโลภขั้นตอนวิธีการทำงานในO(nk)เวลา นี่ทำให้เกิดคำถาม: เราสามารถบรรลุเวลาo(nk)หรือไม่ เราจะทำยังไงดี

คำตอบ:


7

ปัญหาสามารถดูได้ในเชิงเรขาคณิตในลักษณะที่เราต้องการปิดจุดด้วยลูกkซึ่งรัศมีของลูกบอลที่ใหญ่ที่สุดจะถูกย่อให้เล็กสุดVk

นั้นง่ายมากที่จะทำสำเร็จ แต่ก็ทำได้ดีกว่า เฟเดอเรอร์และกรีน, อัลกอริธึมที่เหมาะสมที่สุดสำหรับการจัดกลุ่มโดยประมาณปี 1988บรรลุเวลาทำงานของ Θ ( n log k )โดยใช้โครงสร้างข้อมูลที่ฉลาดกว่าและแสดงให้เห็นต่อไปว่าO(nk)Θ(nlogk)


1

คำถามของฉัน: มีวิธีที่ฉันสามารถทำให้กลยุทธ์การเลือกโลภทำงานในเวลาหรือไม่o(|V|2)

ดูเหมือนว่าคุณจะอธิบาย ในกรณีที่ฉันอ่านคำอธิบายของคุณมากเกินไปนี่คือสิ่งที่ฉันเข้าใจ มีโครงสร้างข้อมูลเชื่อมโยงการเชื่อมโยงองค์ประกอบของแต่ละกับผลรวมของระยะทางที่องค์ประกอบของS โครงสร้างข้อมูลนี้สามารถเริ่มต้นได้ที่ต้นทุนO ( | V | )ด้วยระยะทางถึงpและการเริ่มต้นนี้สามารถสร้างองค์ประกอบถัดไปเป็นผลข้างเคียงโดยไม่ต้องเพิ่มความซับซ้อน สามารถอัปเดตได้หลังจากการเลือกองค์ประกอบใหม่ด้วยต้นทุนO ( | V | )อีกครั้งโดยจะสร้างองค์ประกอบถัดไปเป็นผลข้างเคียง ทำซ้ำเพื่อรับSVSO(|V|)pO(|V|)S. ความซับซ้อนที่เกิดคือ )O(k|V|)


1
แต่ให้สังเกตขอบเขตของ : ในกรณีที่เลวร้ายที่สุดมันอาจมีขนาดใหญ่เท่ากับ| V | . ฉันสงสัยว่ามีโครงสร้างข้อมูลที่บรรลุขอบเขตที่ดียิ่งขึ้น แต่ฉันไม่รู้จริงๆ k|V|
Juho

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