一种基于重采样粒子群优化算法的复杂系统设计方法
【专利摘要】一种基于重采样粒子群优化算法的复杂系统设计方法,包括以下步骤:一:建立具体优化问题的适应度函数;二:初始化粒子种群;三:对粒子种群进行重采样操作;四:更新粒子位置和速度;五:更新每个粒子的历史最优位置和群体最优位置;六:如果不满足精度要求且尚未达到最大迭代次数,迭代次数加一,返回步骤三,否则记录并输出结果;本发明能有效处理复杂系统优化设计的实际问题,而且由于本发明引入了重采样技术,一方面加快了收敛速度,提高了效率,一方面改善了全局搜索的能力,提高了优化精度,最终达到了高效、精确地解决复杂系统优化设计问题的目的。
【专利说明】
一种基于重采样粒子群优化算法的复杂系统设计方法
技术领域
[0001] 本发明涉及一种基于重采样粒子群优化算法的复杂系统设计方法,可以快速、有 效地实现复杂系统的优化设计,属于计算机技术领域。
【背景技术】
[0002] 随着科学技术水平的不断提高与优化理论的持续发展,同时也为了弥补传统优化 算法的不足,一类被称为现代智能优化算法的新型算法得到了飞速的发展以及广泛的应 用,成为处理某些复杂系统优化问题的新方法。智能优化算法是指通过计算机编程模拟自 然现象,模仿动物乃至人类的社会行为和进化机制,从而实现对复杂优化问题求解的一大 类算法的统称。目前被提出并得到迅速发展和广泛应用的智能优化算法主要有:遗传算法、 模拟退火算法、蚁群算法、粒子群算法以及最近提出的萤火虫算法等。这些算法相比与传统 优化方法的显著优点是:不依赖于目标函数本身的性质,适用范围广泛;解决非线性、多极 值问题的能力更强;在处理大型复杂系统的优化问题方面表现出良好的效果和巨大的潜 力。
[0003] 粒子群优化算法(Particle Swarm Optimization,PS0)是由J.Kennedy和 R.Eberhart在1995年提出的,这是基于群体智能理论的一种新兴现代智能优化算法,其本 质是对一种生物界群体体现的群体智能一一鸟群的觅食行为一一的借鉴。鸟群在觅食时, 每个个体首先会随机寻找某些位置,而且总会有一部分个体找到食物较多的地方,这就会 成为良好的经验,引导着其他的个体向食物多的地方移动。而粒子群优化算法便是基于这 个原理,先在设计空间中随机分布一些粒子(相当于鸟类个体)并随机生成每个粒子的速度 矢量,然后在每次迭代中,利用每个粒子的最优点和群体的最优点修正每个粒子的速度矢 量,使大部分粒子逐渐向最优解靠近,以达到寻优的目的。
[0004] 粒子群优化算法的原理简单,编程实现容易,而且它在复杂系统优化设计的实践 中已经体现出良好的效果,这使它得到了广泛的应用和关注。然而,由于粒子群优化算法本 身的固有属性,在收敛与求解上依然存在着一些局限性。一方面,随着迭代次数的增加,一 些表现较差的"次等"粒子会占用大量的计算能力,从而降低算法效率。另一方面,经过多次 迭代以后,粒子群体的位置已经大体存在与包含某个极值的局部区域内而缺乏跳出此区域 的能力,这就使算法容易陷入局部最优解。
[0005] 为了解决上述问题,本发明将重采样技术结合到粒子群优化算法中,提出一种基 于重采样粒子群优化算法的复杂系统设计方法。
【发明内容】
[0006] 1、目的
[0007] 本发明提供一种基于重采样粒子群优化算法的复杂系统设计方法,以克服传统优 化设计方法在一定程度上浪费计算能力,以及容易陷入局部最优解的缺点。
[0008] 2、技术方案
[0009] 为了实现上述发明目的,本发明采用以下技术方案。
[0010] 本发明提供一种基于重采样粒子群优化算法的复杂系统设计方法,主要包括以下 几个步骤:
[0011]步骤一:建立具体优化问题的适应度函数
[0012] 所述具体优化问题是指具体的数值优化问题或复杂系统工程优化问题,其表现形 式为一组数学公式的集合或一段软件程序。
[0013] 所述的适应度函数是指利用具体优化问题中的目标函数以及所有约束条件,采用 现有的分层罚函数的方法,所建立的可以反映各个设计点优劣程度的函数关系。在本发明 中其具体建立方法如下:
[0014] 根据罚函数法写出适应度函数的数学表达式为:
[0015] F(入,x,h(x,y)) = f(x,h(x,y))+Mt)H(x,h(x,y))
[0016]其中,?〇,^11(^5〇)既为所建立适应度函数4(^11(^5〇)为目标函数人(〇为惩 罚因子,H(x,h(x,y))为惩罚项。
[0017]所述目标函数f (x,h(x,y))为具体复杂系统优化设计问题中的优化目标的数学表 达式。
[0018]所述惩罚因子Mt)的确定方法为:
[0019] 雄)=tW,t为迭代次数
[0020]所述惩罚项H( x,h( x,y))的确定方法为:
[0022] Gi(x) =max{0,gi(x)},i = l,2,…,I
[0023]其中,I是优化问题中约束条件的个数,gl(x)是第i个约束条件的数学表达式,<^和 &是和惩罚项有关的惩罚因子,其取值和具体优化问题有关,可根据需要自行拟定。
[0024]步骤二:初始化粒子种群
[0025]所述初始化粒子种群包括:确定粒子种群中的粒子个数N、生成每个粒子的初始位 置坐标x和初始速度矢量V、以及初始化每个粒子的历史最优位置pbest和群体的最优位置 gbest〇
[0026]所述粒子个数N的取值与具体优化问题有关,一般取10~30。
[0027] 所述初始位置坐标x的生成方法为:
[0028] Xid = Xmin(d)+randlid ? (Xmax(d)-Xmin(d))
[0029] 其中,Xid是第i个粒子第d维的坐标值,Xmin(d)和Xmax(d)分别是粒子第d维坐标值的 下限和上限,randl是一组0~1之间的随机数。
[0030] 所述初始速度矢量v的生成方法为:
[0031] Vid = Xmin(d)+rand2id ? (Xmax(d)-Xmin(d) )-Xid
[0032] 其中,Vid是第i个粒子第d维的速度值,Xmin(d)和Xmax(d)以及Xid的含义同上,rand2 是一组0~1之间的随机数。
[0033]所述每个粒子的历史最优位置pbest的初始化方法为:记粒子的初始位置为粒子 历史最优位置pbest的初始值,即pbest = x。同时根据步骤一中的适应度函数公式求出每个 粒子的历史最优位置所对应的适应度函数值,称之为历史最优值,记为pbest_f。
[0034]所述群体的最优位置gbest的初始化方法为:比较上述每个粒子的历史最优值,其 中历史最优值最小的粒子的位置为群体最优位置gbest的初始值,该历史最优值为当前的 全局最优值,记为gbest_f。
[0035]步骤三:对粒子种群进行重采样操作
[0036] 所述重采样操作是本发明为了克服粒子群优化算法在处理复杂系统优化设计问 题时所存在的收敛速度慢和易陷入局部最优的缺点而进行的特殊操作,其具体实施过程 为:
[0037] 首先对每个粒子按照高斯分布的规律进行权值分配,距离当前群体最优位置越近 的粒子权值越大,越远的粒子权值越小,分配公式为:
[0040] 其中qi为对第i个粒子赋予的权值,F(xi)为适应度函数,gbest为当前群体最优位 置,〇为以F(Xl)-gbest为样本计算所得的方差。&为第i个粒子归一化后的权值。
[0041] 然后对每个粒子的权值进行判断,当某个粒子的权值小于给定的阀值qt时,便以 Pr的概率随机产生新的粒子取代之:
[0042] 当Qi<qt时,=右⑴)=
[0043] 其中,为(t)是新的粒子位置坐标,其确定方法为:
[0044] (0 - ^min TQ.lld.3 C-^-mux ~ ^win)
[0045] 其中,t为当前迭代次数,Xmin和Xmax分别是粒子坐标值的下限和上限,rand3是一组 〇~1之间的随机数。
[0046]同时根据本发明提出的自适应速度修正公式修正该粒子的速度矢量:
[0048] 其中T为最大迭代次数,t为当前迭代次数,每(t)为新引入的粒子速度。这个式子表 达的是新的速度由两部分组成:原粒子速度与新引入粒子速度,而且随着优化的深入,新引 入的粒子速度的影响将越来越大。
[0049] 其中,新引入的粒子速度的确定方法为:
[0050] _ -^min TCltldA ' (^Xmax - Xmin~) _ Xj (t)
[0051 ] 其中,Xmin和Xmax分别是粒子坐标值的下限和上限,rand4是一组0~1之间的随机 数。勾(t)是上一步产生的新的粒子位置
[0052] 步骤四:更新粒子位置和速度
[0053] 所述更新粒子位置和速度为:每个粒子在各自历史最优位置pbest和群体最优位 置gbest的影响下根据给定规律生成新的位置坐标和速度矢量,其具体的更新方式为:
[0054] vi(t+l) = x{vi(t)+ciri[pbesti-Xi(t) ]+C2r2[gbest-Xi(t) ]}
[0055] xi(t+l) =Xi(t)+Vi(t+l)
[0056] -式为速度更新公式,由三项构成,第一项Vi(t)为原速度,第二项ciri[pbesti-Xi (t)]为个体历史最优位置对速度的影响,第三项C2r2[pg- Xl(t)]为群体最有位置对速度的 影响。
[0057]其中C1,C2为加速度系数,代表着个体历史最优位置和群体最优位置对速度影响作 用的大小,其取值和具体优化问题有关。n,r2为随机因子,是0~1之间的随机数。x是压缩因 子,其确定方法为:
[0060] 二式为位置更新公式,由两项构成,第一项^(〇为原位置,第二项^(1+1)为根据 上述速度更新公式得到得新的速度。
[0061] 步骤五:更新每个粒子的历史最优位置和群体最优位置
[0062] 经过步骤三和步骤四的操作,粒子的位置更新,导致每个粒子的历史最优位置和 群体最优位置有所变化,所以要更新每个粒子的历史最优位置和群体最优位置。
[0063] 所述每个粒子的历史最优位置pbest的更新过程为:
[0064] 首先,根据步骤一中的适应度函数公式求出每个粒子当前位置所对应的适应度函 数值 F(Xi(t+l))。
[0065 ] 然后,比较F (Xi (t+1))和该粒子的历史最优值pbe s t_fi。
[0066] if F(xi(t+1))<pbest_fi
[0067] then pbesti = xi(t+l)
[0068] pbest_fi = F(xi(t+l))
[0069] 上式中,脚标i代表第i个粒子。上式的含义为,当粒子当前位置对应的适应度值小 于该粒子历史最优值时,用当前位置作为该粒子的历史最优位置,用该适应度值作为该粒 子的历史最优值。否则,pbest和pbest_f保留原值。
[0070] 所述群体的最优位置gbest的更新过程为:比较上述每个粒子的历史最优值,其中 历史最优值最小的粒子的位置为群体最优位置gbest,该历史最优值为当前的全局最优值, 记为 gbest_f〇
[0071] 步骤六:如果不满足精度要求且尚未达到最大迭代次数,迭代次数加一,返回步骤 三,否则记录并输出结果。
[0072] 所述结果主要包括该优化设计问题的最优设计点和目标函数最优值。所述最优设 计点即当前的群体最优位置,所述目标函数最优值即当前全局最优值。
[0073] 通过以上流程和步骤,可以有效处理复杂系统优化设计的实际问题,而且由于本 发明引入了重采样技术,一方面加快了收敛速度,提高了效率,一方面改善了全局搜索的能 力,提高了优化精度。最终达到了高效、精确地解决复杂系统优化设计问题的目的。
[0074] 3、优点及功效
[0075]本发明提供一种基于重采样粒子群优化算法的复杂系统设计方法,其主要优点 是:合理分配计算能力,提高了复杂系统优化设计的效率,加快了收敛速度;增强了全局寻 优能力,有效避免了陷入局部最优解,提高了优化设计精度。
【附图说明】
[0076]图1本发明所述方法流程图。
[0077]图2某复杂系统优化设计实例的数据传递结构图。
[0078]图3重采样操作流程图。
[0079]图4某复杂系统优化设计实例的设计迭代图。
【具体实施方式】
[0080] 以下结合附图和一个复杂系统优化设计实例对本方法作进一步描述,但本实例并 不用于限制本方法,绝大部分复杂系统优化设计问题都可以用本方法优化求解。
[0081] 由图1可以看出,本发明提供的基于重采样粒子群优化算法的复杂系统设计方法 主要包括以下六个步骤:
[0082] 步骤一:建立具体优化问题的适应度函数
[0083] 为了阐明方法的逻辑过程,这里结合一个复杂系统优化设计实例对本方法作详细 描述。本例为超音速飞机航程优化设计问题,涉及到结构、气动、推力三个学科,共有10个设 计变量、6个耦合变量,共有12个约束条件,共有1个优化目标,即飞机航程最大,图2为本例 的数据传递结构图。
[0084] 根据此实例可以建立的优化模型为:
[0085] min f(x,h(x,y))
[0086] s ? t ? gi(x,h(x,y) X〇,i = 1,2,…,12
[0087] x<x<x
[0088] 其中:X=[X1,X2,…,X1Q],为十个设计变量
[0089] i、互为设计变量x的上下限
[0090] y为工程系统内部的耦合变量
[0091] f(x,h(xy))为目标函数
[0092] gi(x,h(x,y)X〇,i = l,2,".,12为 12个约束条件
[0093] 所述的适应度函数是指利用具体优化问题中的目标函数以及所有约束条件,采用 现有的分层罚函数的方法,所建立的可以反映各个设计点优劣程度的函数关系。在本发明 中其具体建立方法如下:
[0094] 根据罚函数法写出适应度函数的数学表达式为:
[0095] F(入,x,h(x,y)) = f(x,h(x,y))+Mt)H(x,h(x,y))
[0096]其中,?〇,^11(^5〇)既为所建立适应度函数4(^11(^5〇)为目标函数人(〇为惩 罚因子,H(x,h(x,y))为惩罚项。
[0097] 所述目标函数f (x,h(x,y))为具体复杂系统优化设计问题中的优化目标的数学表 达式。
[0098] 所述惩罚因子Mt)的确定方法为:
[0099] 又⑴=tVF,t为迭代次数
[0100]所述惩罚项H( x,h( x,y))的确定方法为:
[0102] Gi(x) =max{0,gi(x)},i = l,2,…,I
[0103]其中,I是优化问题中约束条件的个数,gl(x)是第i个约束条件的数学表达式,(^和 &是和惩罚项有关的惩罚因子,其取值和具体优化问题有关,可根据需要自行拟定。在本例 中CXi和的取值为:
[0104] 当 0<Gi(x)<l 时,a = l,& = 50
[0105] 当 Gi(x)彡 1 时,a = 2,0i = 2〇〇
[0106] 步骤二:初始化粒子种群
[0107] 所述初始化粒子种群包括:确定粒子种群中的粒子个数N、生成每个粒子的初始位 置坐标x和初始速度矢量V、以及初始化每个粒子的历史最优位置pbest和群体的最优位置 gbest 〇
[0108] 所述粒子个数N的取值与具体优化问题有关,一般取10~30。
[0109] 所述初始位置坐标x的生成方法为:
[0110] Xid = Xmin(d)+randlid ? (Xmax(d)-Xmin(d))
[0111 ]其中,Xid是第i个粒子第d维的坐标值,Xmin(d)和Xmax(d)分别是粒子第d维坐标值的 下限和上限,randl是一组0~1之间的随机数。
[0112]所述初始速度矢量v的生成方法为:
[01 13] Vid - Xmin(d)+rand2id * (Xmax(d) -Xmin(d) ) -Xid
[0m] 其中,Vid是第i个粒子第d维的速度值,Xmin(d)和Xmax(d)以及Xid的含义同上,rand2 是一组0~1之间的随机数。
[0115]所述每个粒子的历史最优位置pbest的初始化方法为:记粒子的初始位置为粒子 历史最优位置pbest的初始值,即pbest = x。同时根据步骤一中的适应度函数公式求出每个 粒子的历史最优位置所对应的适应度函数值,称之为历史最优值,记为pbest_f。
[0116]所述群体的最优位置gbest的初始化方法为:比较上述每个粒子的历史最优值,其 中历史最优值最小的粒子的位置为群体最优位置gbest的初始值,该历史最优值为当前的 全局最优值,记为gbest_f。
[0117]步骤三:对粒子种群进行重采样操作
[0118] 所述重采样操作是本发明为了克服粒子群优化算法在处理复杂系统优化设计问 题时所存在的收敛速度慢和易陷入局部最优的缺点而进行的特殊操作。图3所示为重采样 操作流程图,其具体实施过程为:
[0119] 首先对每个粒子按照高斯分布的规律进行权值分配,距离当前群体最优位置越近 的粒子权值越大,越远的粒子权值越小,分配公式为:
[0122]其中qi为对第i个粒子赋予的权值,F(xi)为适应度函数,gbest为当前群体最优位 置,0为以F(Xl)-gbest为样本计算所得的方差。&为第i个粒子归一化后的权值。
[0123] 然后对每个粒子的权值进行判断,当某个粒子的权值小于给定的阀值qt时,便以 Pr的概率随机产生新的粒子取代之:
[0124] 当Qi<qt时,P(x,:⑴=&(〇) =.#¥
[0125] 其中,fi(t)是新的粒子位置坐标,其确定方法为:
[0126] -- ^min ^ CLTldS ? (.Xmax -^tniri}
[0127] 其中,t为当前迭代次数,Xmin和Xmax分别是粒子坐标值的下限和上限,rand3是一组 〇~1之间的随机数。
[0128] 所述阀值qt的确定方法为:
[0129] qt = y(Q)-2Xo(Q)
[0130] 其中,y(Q)是各粒子权重的均值,〇(Q)是各粒子权重的方差。
[0131]所述概率Pr的取值可以有使用者根据需要自行确定,在本例中取Pr = 0.5
[0132]接着根据本发明提出的自适应速度修正公式修正该粒子的速度矢量:
[0134] 其中T为最大迭代次数,t为当前迭代次数,%(t)为新引入的粒子速度。这个式子表 达的是新的速度由两部分组成:原粒子速度与新引入粒子速度,而且随着优化的深入,新引 入的粒子速度的影响将越来越大。
[0135] 其中,新引入的粒子速度的确定方法为:
[0136] = Xmta + mnd4 - (xmeix - Xmin) ~ XiiO
[01 37] 其中,Xmin和Xmax分别是粒子坐标值的下限和上限,rand4是一组0~1之间的随机 数。是上一步产生的新的粒子位置
[0138] 步骤四:更新粒子位置和速度
[0139] 所述更新粒子位置和速度为:每个粒子在各自历史最优位置pbest和群体最优位 置gbest的影响下根据给定规律生成新的位置坐标和速度矢量,其具体的更新方式为:
[0140] vi(t+l) = x{vi(t)+ciri[pbesti-Xi(t) ]+C2r2[gbest-Xi(t) ]}
[0141] xi(t+l) =Xi(t)+Vi(t+l)
[0142] -式为速度更新公式,由三项构成,第一项Vi(t)为原速度,第二项ciri[pbesti_xi (t)]为个体历史最优位置对速度的影响,第三项C2r2[pg- Xl(t)]为群体最有位置对速度的 影响。
[0143]其中C1,C2为加速度系数,代表着个体历史最优位置和群体最优位置对速度影响作 用的大小,其取值和具体优化问题有关,在本例中取d = c2 = 2.05^42为随机因子,是0~ 1之间的随机数。x是压缩因子,其确定方法为:
[0146]二式为位置更新公式,由两项构成,第一项^(〇为原位置,第二项^(1+1)为根据 上述速度更新公式得到得新的速度。
[0147] 步骤五:更新每个粒子的历史最优位置和群体最优位置
[0148] 经过步骤三和步骤四的操作,粒子的位置更新,导致每个粒子的历史最优位置和 群体最优位置有所变化,所以要更新每个粒子的历史最优位置和群体最优位置。
[0149] 所述每个粒子的历史最优位置pbest的更新过程为:
[0150] 首先,根据步骤一中的适应度函数公式求出每个粒子当前位置所对应的适应度函 数值 F(Xi(t+l))。
[0151] 然后,比较F (Xi (t+1))和该粒子的历史最优值pbe s t_fi。
[0152] if F(xi(t+1))<pbest_fi
[0153] then pbesti = xi(t+l)
[0154] pbest_fi = F(xi(t+l))
[0155] 上式中,脚标i代表第i个粒子。上式的含义为,当粒子当前位置对应的适应度值小 于该粒子历史最优值时,用当前位置作为该粒子的历史最优位置,用该适应度值作为该粒 子的历史最优值。否则,pbest和pbest_f保留原值。
[0156]所述群体的最优位置gbest的更新过程为:比较上述每个粒子的历史最优值,其中 历史最优值最小的粒子的位置为群体最优位置gbest,该历史最优值为当前的全局最优值, 记为 gbest_f〇
[0157] 步骤六:如果不满足精度要求且尚未达到最大迭代次数,迭代次数加一,返回步骤 三,否则记录并输出结果。
[0158] 所述结果主要包括该优化设计问题的最优设计点和目标函数最优值。所述最优设 计点即当前的群体最优位置,所述目标函数最优值即当前全局最优值。
[0159] 通过以上流程和步骤,可以有效处理复杂系统优化设计的实际问题,而且由于本 发明引入了重采样技术,一方面加快了收敛速度,提高了效率,一方面改善了全局搜索的能 力,提高了优化精度。最终达到了高效、精确地解决复杂系统优化设计问题的目的。如图4为 该复杂系统优化设计问题的迭代过程对比图。图中,实线为采用本专利提供的基于重采样 粒子群优化算法的复杂系统设计方法的迭代图,虚线为采用不含重采样操作的设计方法的 迭代图。可以看出,本专利提供的方法收敛速度更快,优化精度更高。
[0160] 上面对本专利的实施方式作了详细说明,但是本专利并不限于上述实施方式,在 本领域的普通技术人员所具备的知识范围内,还可以在不脱离本专利宗旨的前提下做出各 种变化。
【主权项】
1. 一种基于重采样粒子群优化算法的复杂系统设计方法,其特征在于:它包括以下几 个步骤: 步骤一:建立具体优化问题的适应度函数 所述具体优化问题是指具体的数值优化问题及复杂系统工程优化问题,其表现形式为 一组数学公式的集合及一段软件程序; 所述的适应度函数是指利用具体优化问题中的目标函数以及所有约束条件,采用现有 的分层罚函数的方法,所建立的能反映各个设计点优劣程度的函数关系; 步骤二:初始化粒子种群 所述初始化粒子种群包括:确定粒子种群中的粒子个数N、生成每个粒子的初始位置坐 标X和初始速度矢量v、以及初始化每个粒子的历史最优位置Pbest和群体的最优位置 gbest; 所述粒子个数N的取值与具体优化问题有关,一般取10~30; 所述初始位置坐标X的生成方法为: Xid - Xmin(d)+raildlid · (Xmax(d)_Xmin(d)) 其中,Xld是第i个粒子第d维的坐标值,X_(d)和Xmax⑷分别是粒子第d维坐标值的下限 和上限,:randl是一组0~1之间的随机数; 所述初始速度矢量V的生成方法为: Vid - Xmin( d)+rand2id * (Xmax(d) -Xmin(d) ) -Xid 其中,Vid是第i个粒子第d维的速度值,Xmin(d)和xmax(d)以及Xid的含义同上,rand2是一 组0~1之间的随机数; 所述每个粒子的历史最优位置Pbest的初始化方法为:记粒子的初始位置为粒子历史 最优位置pbest的初始值,即pbest = x;同时根据步骤一中的适应度函数公式求出每个粒子 的历史最优位置所对应的适应度函数值,称之为历史最优值,记为pbest_f; 所述群体的最优位置gbest的初始化方法为:比较上述每个粒子的历史最优值,其中历 史最优值最小的粒子的位置为群体最优位置gbest的初始值,该历史最优值为当前的全局 最优值,记为gbest_f; 步骤三:对粒子种群进行重采样操作 所述重采样操作是本发明为了克服粒子群优化算法在处理复杂系统优化设计问题时 所存在的收敛速度慢和易陷入局部最优的缺点而进行的特殊操作,其具体实施过程为: 首先对每个粒子按照高斯分布的规律进行权值分配,距离当前群体最优位置越近的粒 子权值越大,越远的粒子权值越小,分配公式为:其中qi为对第i个粒子赋予的权值,F(Xi)为适应度函数,gbest为当前群体最优位置,σ 为以F(Xl)-gbest为样本计算所得的方差,Q1为第i个粒子归一化后的权值; 然后对每个粒子的权值进行判断,当某个粒子的权值小于给定的阀值qt时,便以Pr的概 率随机产生新的粒子取代之: 当Qi <qt时,P (Xi(t)=勾(〇) = Pr 其中,右众)是新的粒子位置坐标,其确定方法为:其中,t为当前迭代次数,Xmir^Pxmax分别是粒子坐标值的下限和上限,rand3是一组O~1 之间的随机数; 同时根据本发明提出的自适应谏度修ιΗ公式修ιΗ该粒子的速度矢量:其中,T为最大迭代次数,t为当前迭代次数,巧(t)为新引入的粒子速度;这个式子表达 的是新的速度由两部分组成:原粒子速度与新引入粒子速度,而且随着优化的深入,新引入 的粒子速度的影响将越来越大; 其中,新引入的粒子速度的确定方法为:其中,Xmin和Xmax分别是粒子坐标值的下限和上限,rand4是一组O~1之间的随机数, 4(0是上一步产生的新的粒子位置; 步骤四:更新粒子位置和速度 所述更新粒子位置和速度为:每个粒子在各自历史最优位置Pbest和群体最优位置 gbest的影响下根据给定规律生成新的位置坐标和速度矢量,其具体的更新方式为: Vi(t+1) = x{vi(t)+ciri[pbesti_Xi(t) ]+C2r2[gbest_Xi(t) ]} Xi(t+1) =Xi(t)+Vi(t+l) 一式为速度更新公式,由三项构成,第一项Vi(t)为原速度,第二项ciri[pbesti_xi(t)] 为个体历史最优位置对速度的影响,第三项c2r2[pg-Xl(t)]为群体最有位置对速度的影响; 其中 C1,C2为加速度系数,代表着个体历史最优位置和群体最优位置对速度影响作用的 大小,其取值和具体优化问题有关;n,r 2为随机因子,是0~1之间的随机数;X是压缩因子, 其确定方法为:二式为位置更新公式,由两项构成,第一项^(0为原位置,第二项^(1+1)为根据上述 速度更新公式得到得新的速度; 步骤五:更新每个粒子的历史最优位置和群体最优位置 经过步骤三和步骤四的操作,粒子的位置更新,导致每个粒子的历史最优位置和群体 最优位置有所变化,所以要更新每个粒子的历史最优位置和群体最优位置; 所述每个粒子的历史最优位置Pbest的更新过程为: 首先,根据步骤一中的适应度函数公式求出每个粒子当前位置所对应的适应度函数值 F(xi(t+1)); 然后,比较F(xi(t+1))和该粒子的历史最优值pbest_fi; if F(xi(t+1))<pbest_fi then pbesti = xi(t+l) pbest_fi = F(xi(t+l)) 上式中,脚标i代表第i个粒子;上式的含义为,当粒子当前位置对应的适应度值小于该 粒子历史最优值时,用当前位置作为该粒子的历史最优位置,用该适应度值作为该粒子的 历史最优值,否则,pbest和pbest_f保留原值; 所述群体的最优位置gbest的更新过程为:比较上述每个粒子的历史最优值,其中历史 最优值最小的粒子的位置为群体最优位置gbest,该历史最优值为当前的全局最优值,记为 gbest_f; 步骤六:如果不满足精度要求且尚未达到最大迭代次数,迭代次数加一,返回步骤三, 否则记录并输出结果; 所述结果主要包括该优化设计问题的最优设计点和目标函数最优值;所述最优设计点 即当前的群体最优位置,所述目标函数最优值即当前全局最优值; 通过以上步骤,能有效处理复杂系统优化设计的实际问题,而且由于本发明引入了重 采样技术,一方面加快了收敛速度,提高了效率,一方面改善了全局搜索的能力,提高了优 化精度,最终达到了高效、精确地解决复杂系统优化设计问题的目的。2.根据权利要求1所述的一种基于重采样粒子群优化算法的复杂系统设计方法,其特 征在于:在步骤一中所述的"建立具体优化问题的适应度函数",其具体建立方法如下: 根据罚函数法写出适应度函数的数学表达式为: F(A,x,h(x,y))=f(x,h(x,y))+A(t)H(x,h(x,y)) 其中,F(X,x,h(x,y))既为所建立适应度函数,f(x,h(x,y))为目标函数λ(〇为惩罚因 子,H(x,h(x,y))为惩罚项; 所述目标函数f (x,h(x,y))为具体复杂系统优化设计问题中的优化目标的数学表达 式; 所述惩罚因子λ (t)的确定方法为: λ(?_) = tvT,t为迭代次数 所述惩罚项H( X,h (X,y))的确定方法为:Gi(x)=max{0,gi(x)},i = l,2,.",I 其中,I是优化问题中约束条件的个数,gl(x)是第i个约束条件的数学表达式,CU和&是 和惩罚项有关的惩罚因子,其取值和具体优化问题有关,根据需要自行拟定。
【文档编号】G06F17/50GK105893694SQ201610251772
【公开日】2016年8月24日
【申请日】2016年4月21日
【发明人】王晓慧, 张昊, 樊思思
【申请人】北京航空航天大学