Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

Barabasi Albert Graph (สำหรับ Scale Free Models) ใน C/C++


Barabási-Albert model ถือเป็นหนึ่งในหลายโมเดลที่เสนอมาเพื่อผลิต scale-free networks มันรวม 2 แนวคิดสำคัญ: growth และ preferential attachment ทั้ง 2 แนวคิดนี้มีอยู่จริงใน real networks ความหมายของ growth คือจำนวน nodes ใน network เพิ่มขึ้นตามเวลา

ความหมายของ preferential attachment คือ node ที่เชื่อมต่อมากเท่าไร โอกาสได้รับ link ใหม่ก็มากเท่านั้น

Higher degree nodes มีความสามารถจับ link ใหม่ที่เพิ่มเข้ามาใน network ได้ดีกว่า โดยพื้นฐาน preferential attachment เข้าใจได้ดีถ้าคิดใน social networks ที่เชื่อมต่อคน ในกรณีนี้ link จาก X ไป Y หมายถึงคน X "รู้จัก" หรือ "คุ้นเคยกับ" คน Y Heavily linked nodes แทนคนดังที่มี relations มาก เมื่อ newcomer เข้ามาใน community เขามักจะรู้จักกับคนดังเหล่านั้นมากกว่าคนไม่ดัง BA model เสนอขึ้นมาด้วย assumption ว่าใน World Wide Web หน้าใหม่ link ไปยัง hubs เช่น Yahoo, Google แทนที่จะ link ไปหน้าที่ไม่คู่ใคร ถ้าใครเลือกหน้าใหม่สุ่มจาก existing link โอกาสเลือกหน้าจะสัมพันธ์กับ degree

ภาพด้านล่างแสดง BA Model graph กับ 50 nodes ตาม preferential attachment model

Barabasi Albert Graph (สำหรับ Scale Free Models) ใน C/C++


กราฟด้านบน满足 logic ของ rich getting richer และ poor getting poorer