一種基於群體智能的移動社交網絡中的數據傳輸方法與流程
2023-05-05 12:00:16 4

本發明涉及移動社交網絡數據傳輸領域,具體涉及一種基於群體智能的移動社交網絡中的數據傳輸方法。
背景技術:
隨著網際網路產業的飛速發展、智能移動終端的大量普及、4G移動互聯時代的到來,促進了社交網絡服務與移動終端的自然結合,移動社交網絡應運而生。數據研究表明,在全世界,雖然目前人口的增長已經相對緩慢,但是網際網路產業的發展速度卻在不斷加快。目前全世界擁有手機的人口超過半數,其中三分之一擁有社交網絡帳號。而在中國,據WeAreSocial在《2015年全球移動&社交報告精華解讀》中指出:當前中國人口約有13.67億,網民約有6.42億,滲透率高達47%,高於全球平均水平(42%),其中手機網民數量為5.27億,佔網民總數的81.6%,90.1%的用戶使用移動終端來訪問社交網站。這表明,社交網絡已經不再是一種工具,而逐漸成為了人們的一種生活方式。
目前社交網絡在社會中扮演的角色越來越重要,越來越多的公司和企業開始利用網際網路思維和社交網絡來構建企業內部的交流網絡,其地位正在逐漸趕上電子郵件和電話。根據行業機構易觀國際的分析報告指出,2015年第1季度,中國移動網際網路用戶規模達到7.4億人,環比增長1.6%,同比增長10.27%,增勢平穩。移動網際網路用戶基於龐大用戶基數正在不斷增長,移動社交網絡的發展勢頭正勁。
當前,針對移動社交網絡的應用越來越多,也越來越成熟,但在其發展過程仍然需要解決很多問題。首先來說,移動社交網絡中的節點通常是一些移動終端設備,它們的服務能力受到帶寬、內存、電量、運算能力等限制;其次是移動社交網絡中的節點往往伴隨著人的社會特性,這給設計數據分發機制帶來了極大的複雜性;最後,考慮到移動社交網絡中的節點通常會帶有人的自私性,因此如何採取辦法降低自私節點給網絡性能帶來的損害是一個難題。總體來說,目前針對移動社交網絡的主要研究有社區檢測、內容分發、上下文情景感知的數據傳輸、移動模型、隱私等幾個方面。
技術實現要素:
本發明的目的在於克服現有技術存在的問題,提供一種基於群體智能的移動社交網絡中的數據傳輸方法。
為實現上述技術目的,達到上述技術效果,本發明通過以下技術方案實現:
一種基於群體智能的移動社交網絡中的數據傳輸方法,該方法包括以下步驟:
A:針對移動社交網絡中的數據分發問題,對其進行模型化分析,歸納出移動社交網絡的一般模型;
B:在歸納出移動社交網絡一般模型的基礎上,利用蟻群優化算法在處理優化問題上的高效性採用基於蟻群優化的移動社交網絡算法ACOMSNet;
C:針對ACOMSNet算法容易陷入局部最優的缺陷,將粒子群算法與ACOMSNet融合,得到改進後的ACOMSNet算法;
D:針對網絡中的自私節點基於節點聲譽值採用適用於移動社交網絡的激勵機制算法。
進一步的,所述步驟A中,定義歸納移動社交網絡的一般模型的步驟為:
A1:用圖表示一個擁有n個節點的MSN,表示網絡中所有節點的集合,表示節點間邊e的集合,m為邊數,整個MSN網絡結構表示為節點組成的列表;
A2:定義在某段時間內與MSN結點i之間存在數據轉發關係的結點稱為結點i的「社交鄰居節點」,定義在某一時刻與MSN結點i直接連接的結點稱為結點i 的「物理鄰居結點」,簡稱「鄰居結點」。
進一步的,所述步驟B中,基於蟻群優化的移動社交網絡算法ACOMSNet的步驟為:
B1:網絡中存在n個節點,整個路由算法要維護一個n×n的矩陣列表,列表中的每個點,存儲節點i和節點j之間的信息,包括i,j之間的社會親密度Si,j,物理親密度Pi,j,並定義社會親密度的單次增長幅度Rs,物理親密度的單次增長幅度為Rp,定義之間的信息列表表示成;
B2:當節點i向節點j發送信息時,Si,j按公式更新;
B3:在數據傳輸的過程中,當一條傳輸鏈路為:i->j->k->m->n…,無論最後數據是否傳輸到n,路徑中任意兩個節點的物理親密度將按公式更新,其中表示i和j之間的路由跳數;
B4:根據社會親密度得出節點的社會效用US,物理親密度得出節點的物理效用UP,節點i選擇j作為下一跳的轉發效用值為:,其中參數用於平衡社會親密度與物理親密度的重要性,結點i選擇轉發效用值最高的結點j作為下一跳;
B5:節點轉發策略如下步驟:
B51:若周圍就有目標節點,直接傳輸並按公式、公式更新數據;
B52:在沒有信息或者遇到有兩個節點都合適時,根據公式計算節點的中心度,利用節點的中心度定奪轉發給哪個節點,並按規則更新信息列表的數據,若相鄰節點的中心度都沒有自身高,那麼暫時不傳輸,將數據包留存在本節點內;
B53:每次轉發時,皆查詢節點的信息列表,根據信息列表決定數據包傳輸對象,比如傳送給對象B,那麼尋找信息列表的二元組中後者有對象B的項,比如列表中有,,三項含有對象B,那麼根據公式算出這三項的效用值,按值的高低依序在本節點周圍查找I、J、K,若有則傳送給相應節點,並更新相應信息列表,若沒有找到對象B的相關信息,跳到步驟B52,若相鄰節點中找不到節點I、J、K,同樣跳到步驟B52;
B6:蒸發信息策略為:假設信息素不會隨著時間流逝蒸發,每當有信息經過節點時,此節點皆蒸發自己的信息列表的信息素濃度,用於避免消息過期了依然被使用,以及避免對連接稀少的適應而不至於信息素蒸發過快導致知識無效。
進一步的,所述步驟C中,將粒子群算法與ACOMSNet融合得到改進後的ACOMSNet算法步驟為:
C1:定義融合策略如下:
C11:,K為迭代次數或搜索次數,設最大迭代次數為,初始化,產生大量的路徑,從中選擇比較優的,使這些路徑留下信息素;
C12:根據當前位置或目標函數計算適應值,設當前位置個體極值位置pcbest,根據各個粒子的個體極值位置找出全局極值位置gcbest;
C13:對每個粒子進行如下操作,第j個粒子路徑與gcbest交叉得到,與pcbest交叉得到,以一定概率變異到,根據當前位置計算對應的目標函數值,若新的目標函數變好,接受新值,否則拒絕,第j個粒子路徑仍然為,重新找出各只螞蟻的個體極值位置pcbest和全局極值位置gcbest;
C14:計算各粒子對應的目標函數值,記錄當前的最好解;
C15:;
C16:若且沒有退化行為,即找到的都是相同解,則轉步驟C13;
C17:輸出目前最好解;
C2:目標函數定義如下:
定義一個目標函數來判定每個粒子所在位置的適應值,並滿足服務質量QoS多約束條件,假設從源節點S到目的節點D的一條可行路徑為P,以下為QoS多約束條件下目標函數的定義:(1)帶寬,
(2)延遲,
(3)丟包率,
其中,,、分別表示鏈路上的帶寬和延遲,表示節點i的丟包率,則目標函數如下:
其中,B為網絡中設定的最大帶寬,D為設定的最大延遲,P為設定的最大丟包率,、、代表三種性能約束條件的權重值,且滿足。
進一步的,所述步驟D中,自私節點的激勵機制包括以下步驟:
D1:自私節點定義網絡中的一個節點擁有一個內在屬性,即願意合作程度CD,表示一個節點願意同其他節點合作的程度,它是一個概率常量,簡稱之為節點願意合作概率,另外,還定義一個外在屬性,即聲譽值RD,表示除本節點外其他節點對該結點的聲譽評估,它以節點的行為變化而改變,用表示節點i的願意合作概率,時,表示節點完全不合作,時,表示節點100%願意合作,用表示在t時刻節點j對i的聲譽評價,則在t時刻節點i的聲譽值可以表示為一個維向量:;
D2:節點交互策略,其步驟如下:
在t時刻當節點i和j相遇時,i和j交換它們的聲譽值向量,節點i轉發數據包時有兩個依據:和,具體的數據包接收和轉發策略如下:
D21:t時刻,節點i和節點j相遇,節點i希望節點j接收數據包;
D22:節點i選擇當前遇到的所有節點中聲譽最好的傳給它;
D23:假設當前最高,節點j以概率來決定是否接收數據包;
D3:節點的聲譽值更新策略,其步驟如下:
聲譽值的更新分為兩種:直接更新策略和間接更新策略:
D31:直接更新策略,即當兩個節點i和j相遇並完成交互時,在t時刻,節點i與節點j相遇,此時定義時刻節點j對i的聲譽評價為:
在上式中,當節點i與節點j相遇,並且j在i的幫助下完成數據包的轉發,則,否則,表示聲譽值的自然衰減;
D32:間接更新策略,即指當第三方節點的聲譽值的改變對當前節點的影響,定義:
在上式中,k表示第三方節點。
進一步的,所述步驟A1中,採用二元組加數據的方式組成存儲信息的結構中的一個點,MSN網絡結構的節點列表中還存儲包括節點的社會親密度、物理親密度。
進一步的,所述步驟D2中,節點交互策略採用多播的形式傳播聲譽值向量,用於保證周圍節點都能收到信息。
本發明的有益效果是:
本發明方法綜合考慮了移動社交網絡的網絡特性,又考慮了網絡中節點的社會特性,利用群體智能理論中的蟻群優化、粒子群優化思想來優化路由,使得移動社交網絡中能有較高的數據傳輸成功率以及較低的時延。
附圖說明
圖1為本發明基於網絡編碼的分布式存儲系統的修復過程中最優供應節點和數據傳輸方案的流程圖;
圖2為本發明社交網絡示意圖;
圖3為本發明數據包傳輸成功率隨節點緩存的變化示意圖;
圖4為本發明數據平均傳輸延遲隨節點緩存的變化示意圖;
圖5為本發明改進後算法的數據包傳輸成功率隨節點緩存的變化示意圖;
圖6為本發明改進後算法的數據包平均傳輸延遲隨節點緩存的變化示意圖;
圖7為本發明激勵機制下合作節點比例示意圖。
具體實施方式
下面將參考附圖並結合實施例,來詳細說明本發明。
參照圖1所示,一種基於群體智能的移動社交網絡中的數據傳輸方法,該方法包括以下步驟:
A:針對移動社交網絡中的數據分發問題,對其進行模型化分析,歸納出移動社交網絡的一般模型;
B:在歸納出移動社交網絡一般模型的基礎上,利用蟻群優化算法在處理優化問題上的高效性採用基於蟻群優化的移動社交網絡算法ACOMSNet;
C:針對ACOMSNet算法容易陷入局部最優的缺陷,將粒子群算法與ACOMSNet融合,得到改進後的ACOMSNet算法;
D:針對網絡中的自私節點基於節點聲譽值採用適用於移動社交網絡的激勵機制算法。
所述步驟A中,定義歸納移動社交網絡的一般模型的步驟為:
A1:用圖表示一個擁有n個節點的MSN,表示網絡中所有節點的集合,表示節點間邊e的集合,m為邊數,在本實施例中使用二元組加數據的方式組成存儲信息的結構中的一個點,整個MSN網絡結構就可以表示成這樣的點組成的列表,比如,表示這是A節點到B節點之間的信息;
A2:定義在某段時間內與MSN結點i之間存在數據轉發關係的結點稱為結點i的「社交鄰居節點」,定義在某一時刻與MSN結點i直接連接的結點稱為結點i 的「物理鄰居結點」,簡稱「鄰居結點」。
所述步驟B中,基於蟻群優化的移動社交網絡算法ACOMSNet的步驟為:
B1:網絡中存在n個節點,整個路由算法要維護一個n×n的矩陣列表,列表中的每個點,存儲節點i和節點j之間的信息,包括i,j之間的社會親密度Si,j,物理親密度Pi,j,並定義社會親密度的單次增長幅度Rs,物理親密度的單次增長幅度為Rp,定義之間的信息列表表示成;
B2:當節點i向節點j發送信息時,Si,j按公式更新;
B3:在數據傳輸的過程中,當一條傳輸鏈路為:i->j->k->m->n…,無論最後數據是否傳輸到n,路徑中任意兩個節點的物理親密度將按公式更新,其中表示i和j之間的路由跳數;
B4:根據社會親密度得出節點的社會效用US,物理親密度得出節點的物理效用UP,節點i選擇j作為下一跳的轉發效用值為:,其中參數用於平衡社會親密度與物理親密度的重要性,結點i選擇轉發效用值最高的結點j作為下一跳;
B5:節點轉發策略如下步驟:
B51:若周圍就有目標節點,直接傳輸並按公式、公式更新數據;
B52:在沒有信息或者遇到有兩個節點都合適時,根據公式計算節點的中心度,利用節點的中心度定奪轉發給哪個節點,並按規則更新信息列表的數據,若相鄰節點的中心度都沒有自身高,那麼暫時不傳輸,將數據包留存在本節點內;
B53:每次轉發時,皆查詢節點的信息列表,根據信息列表決定數據包傳輸對象,比如傳送給對象B,那麼尋找信息列表的二元組中後者有對象B的項,比如列表中有,,三項含有對象B,那麼根據公式算出這三項的效用值,按值的高低依序在本節點周圍查找I、J、K,若有則傳送給相應節點,並更新相應信息列表,若沒有找到對象B的相關信息,跳到步驟B52,若相鄰節點中找不到節點I、J、K,同樣跳到步驟B52;
B6:蒸發信息策略為:因為是時延容忍網絡,考慮到網絡特性,蒸發信息按較短時間進行可能會導致信息素蒸發過快,本實施例中假設信息素不會隨著時間流逝蒸發,而每當有信息經過節點時,此節點都蒸發自己的信息列表的信息素濃度,這即避免了消息過期了依然被使用,也避免了對連接稀少的適應而不至於信息素蒸發過快導致知識毫無用處,本發明充分考慮到社會節點的中心性以及社會節點間的親密度,即使是在節點稀疏的動態網絡中,該算法對實際物理網絡的支持也相當不錯,此外,通過將螞蟻與傳輸數據進行綁定,節省了資源,效果也會更好。
所述步驟C中,將粒子群算法與ACOMSNet融合得到改進後的ACOMSNet算法步驟為:
C1:定義融合策略如下:
C11:,K為迭代次數或搜索次數,設最大迭代次數為,初始化,產生大量的路徑,從中選擇比較優的,使這些路徑留下信息素;
C12:根據當前位置或目標函數計算適應值,設當前位置個體極值位置pcbest,根據各個粒子的個體極值位置找出全局極值位置gcbest;
C13:對每個粒子進行如下操作,第j個粒子路徑與gcbest交叉得到,與pcbest交叉得到,以一定概率變異到,根據當前位置計算對應的目標函數值,若新的目標函數變好,接受新值,否則拒絕,第j個粒子路徑仍然為,重新找出各只螞蟻的個體極值位置pcbest和全局極值位置gcbest;
C14:計算各粒子對應的目標函數值,記錄當前的最好解;
C15:;
C16:若且沒有退化行為,即找到的都是相同解,則轉步驟C13;
C17:輸出目前最好解;
C2:目標函數定義如下:
在粒子群算法中,有一個目標函數來判定每個粒子所在位置的適應值,針對移動社交網絡路由這類網絡問題,需要滿足QoS多約束條件,QoS(quality of service),即服務質量,在RFC2386中描述為:QoS是網絡在傳輸數據流要求滿足的一系列服務請求,具體可以量化為帶寬、延遲、延遲抖動、丟失率、吞吐量等性能指標,此處的服務具體是指數據包(流)經過若干網絡節點所接受的傳輸服務,強調端到端(end-to-end)或網絡邊界到邊界的整體性,QoS反映了網絡元素在保證信息傳輸和滿足服務要求方面的能力;
結合移動社交網絡的特點,在本實施例中需要考慮到的性能指標為:帶寬(bandwidth)、延遲(delay)、丟包率(package loss),假設從源節點S到目的節點D的一條可行路徑為P,以下為QoS多約束條件下目標函數的定義:(1)帶寬,
(2)延遲,
(3)丟包率,
其中,,、分別表示鏈路上的帶寬和延遲,表示節點i的丟包率,則目標函數如下:
其中,B為網絡中設定的最大帶寬,D為設定的最大延遲,P為設定的最大丟包率,、、代表三種性能約束條件的權重值,且滿足。
所述步驟D中,自私節點的激勵機制包括以下步驟:
D1:自私節點定義網絡中的一個節點擁有一個內在屬性,即願意合作程度(Cooperation Degree,CD),表示一個節點願意同其他節點合作的程度,它是一個概率常量,簡稱之為節點願意合作概率,另外,還定義一個外在屬性,即聲譽值(Reputation Degree,RD),表示除本節點外其他節點對該結點的聲譽評估,它以節點的行為變化而改變,在本實施例中,如果節點i幫助了j轉發數據,那麼j對i的聲譽評價就變高了,反之亦然,因為每個節點都是獨立的,所以節點對之間的聲譽評價值也是各不相同的,用表示節點i的願意合作概率,時,表示節點完全不合作,時,表示節點100%願意合作,用表示在t時刻節點j對i的聲譽評價,則在t時刻節點i的聲譽值可以表示為一個維向量:;
D2:節點交互策略,其步驟如下:
在t時刻當節點i和j相遇時,i和j交換它們的聲譽值向量,節點i轉發數據包時有兩個依據:和,具體的數據包接收和轉發策略如下:
D21:t時刻,節點i和節點j相遇,節點i希望節點j接收數據包;
D22:節點i選擇當前遇到的所有節點中聲譽最好的傳給它;
D23:假設當前最高,節點j以概率來決定是否接收數據包;
D3:節點的聲譽值更新策略,其步驟如下:
聲譽值的更新分為兩種:直接更新策略和間接更新策略:
D31:直接更新策略,即當兩個節點i和j相遇並完成交互時,在t時刻,節點i與節點j相遇,此時定義時刻節點j對i的聲譽評價為:
在上式中,當節點i與節點j相遇,並且j在i的幫助下完成數據包的轉發,則,否則,表示聲譽值的自然衰減,在本實施例中,定義=0.5;
D32:間接更新策略,即指當第三方節點的聲譽值的改變對當前節點的影響,定義:
在上式中,k表示第三方節點,在本實施例中,在節點間交互完成之後就更新聲譽值,而不是在數據包到達目的節點之後。
所述步驟A1中,採用二元組加數據的方式組成存儲信息的結構中的一個點,MSN網絡結構的節點列表中還存儲包括節點的社會親密度、物理親密度。
所述步驟D2中,節點交互策略採用多播的形式傳播聲譽值向量,用於保證周圍節點都能收到信息。
此外,需要說明的是,除非特別說明或者指出,否則說明書中的術語「第一」、「第二」、「第三」等描述僅僅用於區分說明書中的各個組件、元素、步驟等,而不是用於表示各個組件、元素、步驟之間的邏輯關係或者順序關係等。
以上所述僅為本發明的優選實施例而已,並不用於限制本發明,對於本領域的技術人員來說,本發明可以有各種更改和變化。凡在本發明的精神和原則之內,所作的任何修改、等同替換、改進等,均應包含在本發明的保護範圍之內。