[發明專利]基于異質雙種群粒子群優化的WSN節點定位方法有效
| 申請號: | 201310467407.0 | 申請日: | 2013-10-09 |
| 公開(公告)號: | CN103517413A | 公開(公告)日: | 2014-01-15 |
| 發明(設計)人: | 郭肇祿;岳雪芝;劉建生;熊小峰;劉松華;張克俊;謝大同 | 申請(專利權)人: | 江西理工大學 |
| 主分類號: | H04W64/00 | 分類號: | H04W64/00;H04W84/18 |
| 代理公司: | 北京科億知識產權代理事務所(普通合伙) 11350 | 代理人: | 湯東鳳 |
| 地址: | 341000 *** | 國省代碼: | 江西;36 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 異質雙 種群 粒子 優化 wsn 節點 定位 方法 | ||
1.一種基于異質雙種群粒子群優化的WSN節點定位方法,其特征在于,包括以下步驟:
步驟1,用戶自定義初始化參數,所述初始化參數包括錨節點個數K,K個錨節點位置向量Z,其中第j個錨節點的位置為(Zj×3-2,Zj×3-1,Zj×3),未知傳感器節點個數D,子種群大小SubPopsize,粒子最大速度絕對值Vmax粒子加速因子c1和c2學習概率Pl遷移間隔代數Mt,遷移大小Mn,遷移最優率Bestp最大評價次數MAX_FEs;
步驟2,通過錨節點和未知傳感器節點之間發射并接收信號強度的傳統方法測得所有未知傳感器節點到所有錨節點的距離記錄到D行K列的矩陣Dis中,其中Disj,m為第j個未知傳感器節點到第m個錨節點的距離;
步驟3,令交叉率Cri=0.5其中i=1,...,SubPopsize,當前演化代數t=0當前評價次數FEs=0;
步驟4,隨機產生兩個初始子種群SubP1t={A1,A2,...,Ai,...,ASubPopsize}
SubP2t={B1,B2,...,Bi,...,BSubPopsize}其中:i=1,...,SubPopsize,并且Ai和Bi分別為子種群SubP1t和SubP2t中的第i個粒子,它們的隨機產生公式分別為:
Ai,2,j=-Vmax+rand(0,1)·2·Vmax
Bi,2,j=-Vmax+rand(0,1)·2·Vmax
其中j=1,...,D×3,并且D為未知傳感器節點個數;Ai,l和Bi,l分別為在子種群Subp1t和SubP2t中的第i個粒子所存儲的D個未知傳感器節點的探測位置,其中在子種群SubP1t中第i個粒子所存儲的第j個未知傳感器節點的探測位置為(Ai,l,j×3-2,Ai,l,j×3-1,Ai,l,j×3);Ai,2和Bi,2分別為在子種群Subp1t和SubP2t中的第i個粒子在每一維度上的速度大小;rand(0,1)為在[0,1]之間產生均勻分布的隨機數函數;L1和U1分別為傳感器節點分布區域的x軸坐標的下界和上界;L2和U2分別為傳感器節點分布區域的y軸坐標的下界和上界;L3和U3分別為傳感器節點分布區域的z軸坐標的下界和上界;
步驟5,計算兩個子種群SubPt1和SubPt2中每個粒子的適應值,其中任意一粒子Ai的適應值Fiti按以下公式計算:
其中K為錨節點個數,D為未知傳感器節點個數,(Zm×3-2,Zm×3-1,Zm×3)為第m個錨節點的三維坐標位置,Disj,m為第j個未知傳感器節點到第m個錨節點的距離;當前評價次數FEs=FEs+SubPopsize×2,并保存子種群SubP1t和SubP2t中適應值最小的粒子為最優粒子;
步驟6,計算當前代的慣性權值其中t為當前演化代數,
步驟7,在[0,1]之間產生一個服從均勻分布的隨機數r1;如果r1小于學習概率Pl則執行步驟8,否則執行步驟9;
步驟8,對子種群SubPt1中的每個粒子執行復合反向學習操作產生復合反向種群OPt={OA1,OA2,...,OASubPopsize};然后計算復合反向種群OPt中每個粒子的適應值,再從SubPt1∪OPt中選擇出適應值最小的前SubPopsize個粒子作為下一代子種群然后轉到步驟10;
步驟9,對子種群SubPt1執行傳統粒子群優化算法的操作算子,按以下公式更新每個粒子的速度和位置產生下一代子種群
Ai,2,j=Wt×Ai,2,j+cl×rand1×(ApBesti,j-Ai,l,j)+c2×rand2×(AgBestj-Ai,l,j)
Ai,l,j=Ai,l,j+Ai,2,j
其中,Wt為當前代的慣性權值,c1和c2為粒子加速因子,rand1和rand2分別為[0,1]之間的隨機數,ApBesti和AgBest分別為子種群Subpt1的第i個粒子的歷史最優位置和全局最優位置;當前評價次數FEs=FEs+SbuPopsize;
步驟10,在[0,1]之間產生一個服從均勻分布的隨機數r2;如果r2小于學習概率Pl則執行步驟11,否則執行步驟12;
步驟11,對子種群SubPt2執行精英混沌學習操作算子產生下一代子種群然后轉到步驟13;
步驟12,對子種群SubPt2執行傳統粒子群優化算法的操作算子,按以下公式更新每個粒子的速度和位置產生下一代子種群
Bi,2,j=Wt×Bi,2,j+c1×rand1×(Bpbesti,j-Bi,l,j)+c2×rand2×(Bgbestj-Bi,l,j)
Bi,l,j=Bi,l,j+Bi,2,j
其中,Wt為當前代的慣性權值,c1和c2為粒子加速因子,ranD1和rand2分別為[0,1]之間的隨機數,BpBesti和BgBest分別為子種群SubPt2的第i個粒子的歷史最優位置和全局最優位置;當前評價次數FEs=FEs+SbuPopsize;
步驟13,如果當前演化代數t除以遷移間隔代數Mt的余數等于0,則執行步驟14,否則執行步驟17;
步驟14,在子種群SubP1t中選擇出前MN×Bestp個最優粒子,并隨機選擇出Mn×(1-Bestp)個粒子,其中Mn為遷移大小,Bestp為遷移最優率;然后把從子種群SubP1t中選擇出來的這Mn個粒子組成遷移子種群MP1t,并從子種群SubP1t中刪除在遷移子種群MP1t中存在的粒子;
步驟15,在子種群SubP2t中選擇出前Mn×Bestp個最優粒子,并隨機選擇出Mn×(1-Bestp)個粒子,其中Mn為遷移大小,Bestp為遷移最優率;然后把從子種群SubP2t中選擇出來的Mn個粒子組成遷移子種群MP2t,并從子種群SubP2t中刪除在遷移子種群MP2t中存在的粒子;
步驟16,把遷移子種群MP1t中的粒子加入到子種群SubP2t中,并把遷移子種群MP2t中的粒子加入到子種群SubP1t中;
步驟17,保存子種群SubP1t和SubP2t中適應值最小的粒子為最優粒子ABgBestt;當前演化代數t=t+1;
步驟18,重復步驟6至步驟17直至當前評價次數FEs達到MAX_FEs后結束,執行過程中得到的最優粒子ABgBestt即為各個未知傳感器節點的位置。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于江西理工大學,未經江西理工大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201310467407.0/1.html,轉載請聲明來源鉆瓜專利網。





