发明名称 一种基于粒子群算法的单频点上的天线布局优化
摘要 本发明公开了一种基于粒子群算法的单频点上的天线布局优化方法,该方法步骤一在FEKO中建立天线优化模型,生成一个*.pre文件;步骤二在MATLAB中设置PSO中的参数;步骤三设置初始迭代步长t=1,随机初始化所有粒子的位置x<sub>i</sub>(t)和速度v<sub>i</sub>(t);步骤四将x<sub>i</sub>(t)写入*.pre文件;步骤五启动PREFEKO、RUNFEKO模块,生成*.out文件;步骤六从*.out文件中读取S参数,计算粒子i的适应值f<sub>i</sub>(t);步骤七更新种群最优值<img file="DDA0000814161110000011.GIF" wi="247" he="74" />步骤八更新所有粒子的速度v<sub>i</sub>(t)和位置x<sub>i</sub>(t);步骤九判断是否完成全部迭代,若未完成,则设置t=t+1并返回第四步;步骤十得到所有天线最优位置的向量<img file="DDA0000814161110000012.GIF" wi="115" he="70" />相对于FEKO,本发明中PSO算法中的参数可调,优化结果更优,在确保优化效果前提下,还能提高优化速度。
申请公布号 CN105243207A 申请公布日期 2016.01.13
申请号 CN201510633159.1 申请日期 2015.09.29
申请人 北京航空航天大学 发明人 贾云峰;杨柳;尚进;魏嘉利;苏东林;刘焱
分类号 G06F17/50(2006.01)I;G06N3/00(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 北京永创新实专利事务所 11121 代理人 赵文颖
主权项 一种基于粒子群算法的单频点上的天线布局优化方法,具体包括以下几个步骤:其中第二步到第十步均在MATLAB中进行:第一步:建立天线优化模型;根据天线的种类,在CADFEKO中建立天线优化模型,设置每种天线的工作频率,在EDITFEKO中将天线的几何位置设置为优化变量,生成*.pre文件;在PSO算法中,设x<sub>i</sub>(t)=(x<sub>i1</sub>,x<sub>i2</sub>,…,x<sub>in</sub>)表示第i个粒子的n维位置向量,v<sub>i</sub>(t)=(v<sub>i1</sub>,v<sub>i2</sub>,…,v<sub>in</sub>)表示第i个粒子的n维速度向量,在天线布局方案中,将优化变量抽象为粒子的位置向量x<sub>i</sub>(t),优化变量和粒子的位置向量存在一一对应的关系,假设要优化k根天线,由待优化的所有天线的位置集合Φ表示优化变量,p<sub>i</sub>表示第i根天线的三维位置坐标,则优化变量Φ如下:Φ={P<sub>1</sub>,P<sub>2</sub>,…,P<sub>k</sub>}={(x<sub>1</sub>,y<sub>1</sub>,z<sub>1</sub>),(x<sub>2</sub>,y<sub>2</sub>,z<sub>2</sub>),…(x<sub>k</sub>,y<sub>k</sub>,z<sub>k</sub>)}采用粒子的位置向量x<sub>i</sub>(t)来代表优化变量Φ;第二步:在MATLAB中设置PSO中的参数;设置优化变量的维数D、优化变量的变化范围VarRange、最大速度mv、迭代次数T、粒子个数N、学习因子c<sub>1</sub>、学习因子c<sub>2</sub>、惯性权重w;第三步:设置初始迭代步长t=1,随机初始化所有粒子的位置x<sub>i</sub>(t)和速度v<sub>i</sub>(t),其中粒子的位置在VarRange的范围内,粒子的速度被限制在[0,mv]内;第四步:读取第一步生成的*.pre文件,将x<sub>i</sub>(t)写入*.pre文件,每当一个粒子的x<sub>i</sub>(t)被写入*.pre文件中,就生成一个新的*.pre文件,文件的个数与粒子个数相等,在此假设粒子群中共有N个粒子,最终就生成N个*.pre文件;第五步:在MATLAB中通过dos(‘prefeko filename’)命令,启动PREFEKO模块对N个*.pre模型进行网络刨分,通过dos(‘runfeko filename’)命令,调用RUNFEKO模块,运行N个*.pre文件,计算当前优化变量的仿真结果,生成N个新的*.out文件;第六步:从*.out文件中读取S参数,计算粒子i的目标函数值,即其适应值f<sub>i</sub>(t);第七步:更新粒子i和种群最优值<img file="FDA0000814161080000021.GIF" wi="231" he="72" />如果<img file="FDA0000814161080000022.GIF" wi="254" he="76" />则<img file="FDA0000814161080000023.GIF" wi="525" he="71" />如果<img file="FDA0000814161080000024.GIF" wi="254" he="71" />则<img file="FDA0000814161080000025.GIF" wi="549" he="70" />在每一次的迭代过程中,对于每个粒子都有自己的个体极值<img file="FDA0000814161080000026.GIF" wi="85" he="74" />和该极值所对应的粒子的位置<img file="FDA0000814161080000027.GIF" wi="125" he="79" /><img file="FDA0000814161080000028.GIF" wi="87" he="78" />表示第i个粒子适应值的极小值,<img file="FDA0000814161080000029.GIF" wi="94" he="69" />表示此极小值所对应的天线的几何位置;对于整个种群具有全局极值<img file="FDA00008141610800000210.GIF" wi="85" he="70" />和该极值所对应的粒子的位置<img file="FDA00008141610800000211.GIF" wi="125" he="69" /><img file="FDA00008141610800000212.GIF" wi="91" he="71" />表示所有粒子的个体极值中的最优解,<img file="FDA00008141610800000213.GIF" wi="96" he="70" />表示此最优解所对应的天线的几何位置。第八步:按照公式(1)、(2)更新所有粒子的速度v<sub>i</sub>(t)和位置x<sub>i</sub>(t),每个粒子都会根据个体极值<img file="FDA00008141610800000214.GIF" wi="93" he="78" />和全局极值<img file="FDA00008141610800000215.GIF" wi="116" he="70" />以速度v<sub>i</sub>(t)在指定区域内搜索最优解和最优位置;其中:每个粒子按照以下两个公式更新它的速度和位置:<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><msub><mi>v</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>+</mo><mn>1</mn><mo>)</mo></mrow><mo>=</mo><msub><mi>wv</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mo>+</mo><msub><mi>c</mi><mn>1</mn></msub><msub><mi>r</mi><mrow><mn>1</mn><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mrow><mo>(</mo><msubsup><mi>p</mi><mrow><mi>b</mi><mi>e</mi><mi>s</mi><mi>t</mi><mo>,</mo><mi>j</mi></mrow><mi>i</mi></msubsup><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>x</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>+</mo><msub><mi>c</mi><mn>2</mn></msub><msub><mi>r</mi><mrow><mn>2</mn><mi>j</mi></mrow></msub><mrow><mo>(</mo><mi>t</mi><mo>)</mo></mrow><mrow><mo>(</mo><msubsup><mi>p</mi><mrow><mi>b</mi><mi>e</mi><mi>s</mi><mi>t</mi><mo>,</mo><mi>j</mi></mrow><mi>g</mi></msubsup><mo>(</mo><mi>t</mi><mo>)</mo><mo>-</mo><msub><mi>x</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>(</mo><mi>t</mi><mo>)</mo><mo>)</mo></mrow><mo>-</mo><mo>-</mo><mo>-</mo><mrow><mo>(</mo><mn>1</mn><mo>)</mo></mrow></mrow>]]></math><img file="FDA00008141610800000216.GIF" wi="1685" he="79" /></maths>x<sub>ij</sub>(t+1)=x<sub>ij</sub>(t)+v<sub>ij</sub>(t+1)   (2)其中:i=1,2,…,m表示第i个粒子,j=1,2,…,n表示粒子的第j维,c<sub>1</sub>、c<sub>2</sub>为学习因子或加速常数,r<sub>1</sub>、r<sub>2</sub>是均匀分布在(0,1)区间中的随机函数,t为迭代次数的步长,w为惯性权重;第九步:根据<img file="FDA00008141610800000217.GIF" wi="96" he="70" />和当前的迭代次数判断迭代是否结束,若完成全部迭代,或连续多次迭代结果相同,则迭代结束;否则设置t=t+1并返回第四步;第十步:迭代结束后,得到<img file="FDA00008141610800000218.GIF" wi="92" he="71" />和<img file="FDA00008141610800000219.GIF" wi="124" he="69" /><img file="FDA00008141610800000220.GIF" wi="91" he="71" />为所有天线间相互干扰都最小时天线的几何位置的向量。
地址 100191 北京市海淀区学院路37号