发明名称 一种基于二进制粒子群算法的风机优化布置方法
摘要 本发明涉及一种基于二进制离散粒子群优化算法(Binary Particle Swarm Optimization,简写为BPSO)的风机优化布置方法,可以解决非规则形状风场的风机优化布置问题。所述方法包括:获取待优化的风场的气象和地理条件以及待选的风机参数;确定优化目标及优化约束;划分矩形区域的网格;对应于网格和风场区域的形状,编写有效位置数组矩阵,所述有效位置数组矩阵中,每个元素取值为“1”或“0”,“1”代表可以布置风机的位置,“0”代表不能布置风机的位置,不能布置风机的位置对应于风场区域中地理条件不适合布置风机的地方,及风场区域以外的地方;以待优化的设计变量构造解空间,运用二进制离散粒子群优化算法在解空间中按照目标函数寻找最优风机布置方案,优化后得到最优风机布置方案。
申请公布号 CN102622482B 申请公布日期 2013.10.09
申请号 CN201210057518.X 申请日期 2012.03.06
申请人 中国科学院工程热物理研究所 发明人 张明明;乐婉贞;徐建中
分类号 G06F17/50(2006.01)I 主分类号 G06F17/50(2006.01)I
代理机构 代理人
主权项 1.一种基于二进制粒子群算法的风机优化布置方法,其特征在于,所述风机优化布置方法包括如下步骤:1)获取待优化的风场的气象和地理条件,以及待选的风机参数;2)确定至少一个优化目标及至少一个优化约束;3)以风场区域最大的南北向距离和最大的东西向距离为边长来构造矩形区域,将矩形区域划分为若干个网格,假设风机只能位于每个网格的正中央;4)对应于矩形区域的网格和风场区域的形状,编写有效位置数组矩阵,所述有效位置数组矩阵中,每个元素取值为“1”或“0”,“1”代表可以布置风机的位置,“0”代表不能布置风机的位置,不能布置风机的位置对应于风场区域中地理条件不适合布置风机的地方,及风场区域以外的地方;5)以待优化的设计变量构造解空间,运用二进制离散粒子群优化算法在解空间中按照目标函数寻找最优风机布置方案,优化后得到最优风机布置方案;所述二进制离散粒子群优化算法包括以下子步骤,(a)种群内设有若干个粒子,每个粒子代表一种风机布置方案;每个粒子都有一个位置矢量和速度矢量,并含若干个维度,维度数与有效位置数组矩阵中所有元素的个数相同,每个维度的取值为1或0,分别对应可以安放与不可以安放风机的位置;(b)随机产生种群中各粒子的初始位置与初始速度,限定任意时刻粒子的最大速度,设定迭代终止条件;(c)记录当前迭代步数,计算当前迭代步数下各粒子的目标函数值,更新各粒子的历史最优值,更新当前迭代步数下的全局最优值;(d)依次判断所述有效位置数组矩阵各元素是否为0:若为0,则强制更新与该元素相对应的粒子维度的值为0;若不为0,则根据式1更新粒子的速度,根据式2更新粒子的位置:v<sup>new</sup><sub>id</sub>=w·v<sup>old</sup><sub>id</sub>+c<sub>1</sub>·r<sub>1</sub>·(p<sub>id</sub>-x<sup>old</sup><sub>id</sub>)+c<sub>2</sub>·r<sub>2</sub>·(p<sub>gd</sub>-x<sup>old</sup><sub>id</sub>)    (式1)<img file="FDA00003218775400021.GIF" wi="628" he="167" />(式2)<maths num="0001"><![CDATA[<math><mrow><mi>Sigmoid</mi><mrow><mo>(</mo><msub><msup><mi>v</mi><mi>new</mi></msup><mi>id</mi></msub><mo>)</mo></mrow><mo>=</mo><mfrac><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mi>exp</mi><mrow><mo>(</mo><mo>-</mo><msub><msup><mi>v</mi><mi>new</mi></msup><mi>id</mi></msub><mo>)</mo></mrow></mrow></mfrac></mrow></math>]]></maths>    (式3)其中:v<sup>new</sup>、x<sup>new</sup>,更新后的粒子速度、位置;v<sup>old</sup>、x<sup>old</sup>,上一迭代步数中粒子的速度、位置;i,粒子编号;d,粒子维度;w,惯性权重;c1、c2,学习因子;r<sub>1</sub>、r<sub>2</sub>、ρ,介于0与1之间的随机数;p<sub>id</sub>,编号i的粒子的d维度的历史最佳取值;p<sub>gd</sub>,当前迭代步数下全体粒子的d维度的最佳取值;每次迭代时,按照式4动态调整式1中的惯性权重w值:<maths num="0002"><![CDATA[<math><mrow><mi>w</mi><mo>=</mo><msup><mrow><mo>(</mo><mfrac><msub><mi>w</mi><mi>max</mi></msub><msub><mi>w</mi><mi>min</mi></msub></mfrac><mo>)</mo></mrow><mfrac><mn>1</mn><mrow><mn>1</mn><mo>+</mo><mn>10</mn><mo>&CenterDot;</mo><msub><mi>N</mi><mi>cur</mi></msub><mo>/</mo><mi>N</mi></mrow></mfrac></msup></mrow></math>]]></maths>    (式4)其中:w<sub>max</sub>、w<sub>min</sub>,最大、最小惯性权重限定值;N<sub>cur</sub>,当前迭代步数;N,最大迭代步数;(e)重新评价各粒子的目标函数值,并据此更新各粒子的历史最优值及粒子群的全局最优值;(f)判断程序是否收敛,当已达到最大迭代步数或已满足收敛条件时算法迭代结束,否则转向第(d)步。
地址 100190 北京市海淀区北四环西路11号A202
您可能感兴趣的专利