本發(fā)明涉及到物聯(lián)網(wǎng)技術領域,特別是一種物聯(lián)網(wǎng)網(wǎng)關最優(yōu)節(jié)點選擇方法。
背景技術:
現(xiàn)有技術提供的物聯(lián)網(wǎng)網(wǎng)關,容易出現(xiàn)數(shù)據(jù)阻塞。物聯(lián)網(wǎng)是一種超大規(guī)模的網(wǎng)絡,在物聯(lián)網(wǎng)上傳輸?shù)臄?shù)據(jù)可以看成是海量數(shù)據(jù),同時每個網(wǎng)絡的數(shù)據(jù)處理能力有限,因此很容易在網(wǎng)關上出現(xiàn)數(shù)據(jù)阻塞。此時使用局部優(yōu)化的方法,雖然在一定程度上會減輕擁塞的程度,但是并不能從根本上解決和預防擁塞的產生。如果要從根本上解決和預防擁塞的產生,必須從產生擁塞的源頭入手。因為實際中從物聯(lián)網(wǎng)感知層流入的物聯(lián)網(wǎng)的數(shù)據(jù)占整個網(wǎng)關轉發(fā)數(shù)據(jù)量的絕大部分,因此在物聯(lián)網(wǎng)感知層中根據(jù)每個網(wǎng)關的負載壓力來選擇合適的不同的網(wǎng)關作為轉發(fā)到物聯(lián)網(wǎng)的橋梁時,才能避免網(wǎng)絡上出現(xiàn)擁塞?,F(xiàn)有技術目前還沒有提供高效的網(wǎng)關的選擇方法。
技術實現(xiàn)要素:
為解決上述技術問題,本發(fā)明提供了一種物聯(lián)網(wǎng)網(wǎng)關最優(yōu)節(jié)點選擇方法,其包括以下步驟:
S1:將不同的網(wǎng)絡節(jié)點作為搜索粒子形成粒子群,初始化粒子群,隨機初始化各粒子的速度、位置以及設定群體的規(guī)模、最大迭代次數(shù)、最大速率;
S2:根據(jù)具體的目標函數(shù)計算各個粒子的適應值,將各個粒子的位置和適應值保存在自身極值中,將所有粒子自身極值中適應值最優(yōu)的那個個體的位置和適應值保存在全局極值中;
S3:按照公式
vij(t+1)=vij(t)+c1r1(pij(t)-xij(t))+c2r2(pgj(t)-xgj(t))
計算各個粒子下一輪的速度;
其中i代表的事粒子i,j代表的是該粒子的維度是第j維,t代表的是該粒子處于低t代;C1以及C2代表的是加速度常數(shù),C1表示的是粒子向本身最優(yōu)方位的加速的權重值,C2表示的是粒子向全局最優(yōu)方位的加速的權重值;r1和r2表示在0和1之間的兩個相互獨立的隨機函數(shù),表示粒子可能出現(xiàn)變異的情形;xij和vij分別表示粒子的位置和速度,pij和pgi分別表示個體的歷史最優(yōu)位置和全局的歷史最優(yōu)位置;
S4:按照公式
xij(t+1)=xij(t)+vij(t)
計算各個粒子下一輪的位置;
S5:根據(jù)目標函數(shù)重新計算各個粒子的適應值;
S6:更新各個粒子的自身最優(yōu)位置,如果粒子當前的適應值優(yōu)于自身歷史最優(yōu)位置對應的適應值,則將當前的位置作為新的自身最優(yōu)位置;
S7:更新群體的全局最優(yōu)位置,如果當前最優(yōu)個體的適應值優(yōu)于全局歷史最優(yōu)位置對應的適應值,則將這個最優(yōu)個體的位置作為新的全局最優(yōu)位置。
本發(fā)明具有以下有益效果:
本發(fā)明保證了選擇出的網(wǎng)關能夠滿足物聯(lián)網(wǎng)動態(tài)特性、以數(shù)據(jù)為中心特性和地理空間分布不均衡特性;同時本發(fā)明對傳統(tǒng)粒子群算法進行了改進,改進后的粒子群算法可以更快更準確地選擇出合適的節(jié)點成為網(wǎng)關,更適合物聯(lián)網(wǎng)的動態(tài)變化特性。
當然,實施本發(fā)明的任一產品并不一定需要同時達到以上所述的所有優(yōu)點。
具體實施方式
下面將結合本發(fā)明實施例對本發(fā)明中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
本發(fā)明實施例提供了一種物聯(lián)網(wǎng)網(wǎng)關最優(yōu)節(jié)點選擇方法,其包括以下步驟:
S1:將不同的網(wǎng)絡節(jié)點作為搜索粒子形成粒子群,初始化粒子群,隨機初始化各粒子的速度、位置以及設定群體的規(guī)模、最大迭代次數(shù)、最大速率;
S2:根據(jù)具體的目標函數(shù)計算各個粒子的適應值,將各個粒子的位置和適應值保存在自身極值中,將所有粒子自身極值中適應值最優(yōu)的那個個體的位置和適應值保存在全局極值中;
S3:按照公式
vij(t+1)=vij(t)+c1r1(pij(t)-xij(t))+c2r2(pgj(t)-xgj(t))
計算各個粒子下一輪的速度;
其中i代表的事粒子i,j代表的是該粒子的維度是第j維,t代表的是該粒子處于低t代;C1以及C2代表的是加速度常數(shù),C1表示的是粒子向本身最優(yōu)方位的加速的權重值,C2表示的是粒子向全局最優(yōu)方位的加速的權重值;r1和r2表示在0和1之間的兩個相互獨立的隨機函數(shù),表示粒子可能出現(xiàn)變異的情形;xij和vij分別表示粒子的位置和速度,pij和pgj分別表示個體的歷史最優(yōu)位置和全局的歷史最優(yōu)位置;
S4:按照公式
xij(t+1)=xij(t)+vij(t)
計算各個粒子下一輪的位置;
S5:根據(jù)目標函數(shù)重新計算各個粒子的適應值;
S6:更新各個粒子的自身最優(yōu)位置,如果粒子當前的適應值優(yōu)于自身歷史最優(yōu)位置對應的適應值,則將當前的位置作為新的自身最優(yōu)位置;
S7:更新群體的全局最優(yōu)位置,如果當前最優(yōu)個體的適應值優(yōu)于全局歷史最優(yōu)位置對應的適應值,則將這個最優(yōu)個體的位置作為新的全局最優(yōu)位置;
本發(fā)明保證了選擇出的網(wǎng)關能夠滿足物聯(lián)網(wǎng)動態(tài)特性、以數(shù)據(jù)為中心特性和地理空間分布不均衡特性;同時本發(fā)明對傳統(tǒng)粒子群算法進行了改進,改進后的粒子群算法可以更快更準確地選擇出合適的節(jié)點成為網(wǎng)關,更適合物聯(lián)網(wǎng)的動態(tài)變化特性。
以上公開的本發(fā)明優(yōu)選實施例只是用于幫助闡述本發(fā)明。優(yōu)選實施例并沒有詳盡敘述所有的細節(jié),也不限制該發(fā)明僅為所述的具體實施方式。顯然,根據(jù)本說明書的內容,可作很多的修改和變化。本說明書選取并具體描述這些實施例,是為了更好地解釋本發(fā)明的原理和實際應用,從而使所屬技術領域技術人員能很好地理解和利用本發(fā)明。本發(fā)明僅受權利要求書及其全部范圍和等效物的限制。