LPA 算法的基本思想是為網路中所有的節點賦予不同的標籤,設計一個傳播規則,標籤根據這個規則在網路上疊代傳播,直到所有節點的標籤傳播達到穩定,最後將具有相同標籤的節點劃分到一個社區中。在每次疊代傳播時,每個節點的標籤都更新為最多數量的鄰居節點擁有的標籤。這個傳播規則定義了網路的社區結構,即網路中每個節點選擇加入的社區是它最多數量的鄰居節點屬於的社區。
該算法具體的步驟如下:
(1)開始時,所有節點使用獨一無二的標籤初始化;
(2)按照隨機的順序掃描所有的節點,每個節點的標籤被更新為其最大數量的鄰居所具有的標籤。如果同時有多個標籤被最多的鄰居節點使用,則隨機的選擇一個標籤;
(3)當所有節點的標籤與其最大數量的鄰居擁有的標籤相同時,進行步驟(4),否則返回步驟 (2);
(4)最後,將網路中每一個具有相同標籤的連通部分作為一個社區。