หาชุดอิสระสูงสุดในเครือข่ายการกระจายของโหนดที่มีระดับสูงสุดΔ มีขอบเขตล่างที่ทราบ [3] ของนาที( Ω ( log Δ ) , Ω ( √nΔที่เก็บอัลกอริทึมแบบสุ่มและกำหนดไว้min(Ω(logΔ),Ω(logn−−−−√))
ต่อไปนี้เป็นอัลกอริธึมการกระจายแบบสุ่มอย่างง่าย [1] ที่ดำเนินการในรอบแบบซิงโครนัส (ในรอบทุกโหนดสามารถดำเนินการคำนวณและส่งข้อความท้องถิ่นบางอย่างเพื่อให้ประเทศเพื่อนบ้าน. ข้อความเหล่านี้มีการรับประกันว่าจะได้รับก่อนที่จะเริ่มรอบต่อไปได้.)u
- ในทุกรอบการใช้งานในแต่ละโหนดเครื่องหมายตัวเองด้วยความน่าจะเป็น1 / d Uที่d U > 0คือระดับของU ; ถ้าd U = 0 , ยูก็จะเข้าสู่การตั้งค่าความเป็นอิสระ (เริ่มแรกทุกโหนดทำงานอยู่)u1/dudu>0udu=0u
- หากเป็นเพียงโหนดที่ทำเครื่องหมายไว้ในละแวกนั้นคุณจะเข้าสู่ชุดอิสระปิดการใช้งานตัวเองและแจ้งเพื่อนบ้านทั้งหมดของตนเพื่อยกเลิกการใช้งานตัวเอง องศาของโหนดที่ทำงานอยู่ที่เหลือจะลดลงตามลำดับเช่นขอบทั้งหมดของโหนดที่ถูกปิดการใช้งานจะถูกลบออกuu
- มิฉะนั้นหากมีบางโหนดที่อยู่ใกล้เคียงที่ถูกทำเครื่องหมายจุดยอดระดับล่างจะยกเลิกการทำเครื่องหมายตัวเองและยังคงทำงานอยู่v
จะแสดงให้เห็นว่าอัลกอริทึมนี้จะสิ้นสุดในรอบที่มีความน่าจะเป็นสูงโดยการพิสูจน์ว่าครึ่งหนึ่งของขอบที่เหลือจะถูกลบในทุก ๆ รอบ ในทางตรงกันข้ามอัลกอริทึมแบบกระจายตัวที่กำหนดได้เร็วที่สุด [2] ใช้O ( n 1 / √)O(logn)ปัดเศษและซับซ้อนกว่ามากO(n1/logn√)
[1] Michael Luby: อัลกอริทึมแบบขนานอย่างง่ายสำหรับปัญหาชุดอิสระสูงสุด SIAM J. Comput 15 (4): 1036-1053 (1986)
http://dx.doi.org/10.1137/0215074
[2] Alessandro Panconesi, Aravind Srinivasan: ความซับซ้อนของการกระจายเครือข่ายแบบกระจาย J. อัลกอริทึม 20 (2): 356-374 (1996)
http://dx.doi.org/10.1006/jagm.1996.0017
[3] Fabian Kuhn, Thomas Moscibroda, Roger Wattenhofer: การคำนวณในท้องถิ่น: ขอบเขตล่างและบน abs / 1011.5470 CoRR (2010)
http://arxiv.org/abs/1011.5470