编辑: star薰衣草 | 2016-10-20 |
23 No.
5 2001 ! 收稿日期: 2001-05-29 基金项目:国家863 基金资助项目( 863-2-5-2.
4 ) 作者简介:王石( 1972- ) ,男,博士生. 图1 轨道转移和拦截示意图 F ig.
1 Schematic of obrbit transfer and intersection 加冲量前的速度,!
1 为施加冲量后的速度,T 为从
1 到
2 的飞行时间,!
1 和!2 为加权值,视具体问题的需要而定. 不失一般性,令!1 =1 ,!2 = K (可调权系数) ,因此优化 指标可变为: \ ! !1 \ + KT = m in 同理,轨道转移的冲量―时间优化指标为: \ ! !1 \ +\ ! !2 \ + KT = m in 其中,! !2 = !2 - !
2 ,其中 !2 为位置
2 的速度,!
2 为航 天器至
2 施加冲量前的速度. ! ・ ! 表示向量取模. 显而易见,如果初始轨道的速度改变量一旦给出,就 给出了最优轨道,因此求出了改变量,就给出了问题的解, 这是一个典型的组合优化问题.
2 E A算法的设计 一般而言,进化算法设计在一般的参考书上均有论述 [
4 ] , [
5 ] .一般包括基因的编码,产生初始群 体,设计进化算子(交叉,变异,选择) ,适应度评价及收敛准则,EA 算法具有不过分依赖于问题 的具体模型,对于有约束的优化问题,一般采用惩罚函数的方法 [
1 ] .但对本问题而言,由于是在大范 围内的搜索,采用惩罚函数方法极不容易收敛,用从
1 到
2 的飞行时间一旦确定,便可用Le mbert 飞行时间定理(或Gauss 法)来解决边值约束问题.这样做不仅可以避免由惩罚函数导致不收敛,而 且可以减少编码的数量及搜索的空间,使EA 等方法显示其应有的优越性.
2 .
1 编码方法 由于搜索空间大及高精度的要求,我们采用对个体浮点数编码,而避免二进制编码码位过长的问 题,而且还可以避免解码的繁琐细节.因而我们得出的个体为问题的最优解.
2 .
1 E A算子的设计
1 )交叉算子的设计 由于个体的编码方法是实数编码,我们采用线性交叉的方法,对个体Z 和Y ,则交叉后产生的 算子为: Z = Z +(
1 - ) Y Y = Y +(
1 - ) Z 其中 为[
0 ,
1 ]上的均匀随机数,对于不同的个体随机数为相互独立的.
2 )变异算子的设计 设T 的取值范围为[T m in ,T m ax ] ,则个体Z 经过变异后为 Z = Z + ! ( r , U m ax - V ) rardom (
0 ,
1 ) =
0 Y = Y + ! ( r , V - U m in ) rardom (
0 ,
1 ) =
1 其中,!( r , y )=y (
1 -r (
1 -r T ) b ) ,式中r 为[
0 ,
1 ]中的均匀随机数,T 为最大进化代数, b 为系统参数,我们这里取为区间(
2 ,
3 )中的数.
2 .
3 适应度函数的计算 就本问题而言,因为已经把有约束的问题变为无约束的问题.因而可直接把优化的目标函数值作 为个体的适应度.给定的个体Z ,应用Le mbert 定理(或Gauss 方法)算出 !
1 和!2从而算出 ! ! !1! , ! ! !2! .这样对于拦截问题适应度为 fitnedd =\ ! !1 \ + KT 对于轨道转移问题 fitnedd =\ ! !1 \ +\ ! !2 \ + KT
2 国防科技大学学报2001 年第5 期2.4选择算子 对每个个体计算出相应的适应度的值,然后对每个个体的适应度从小到大排列,保留前面最好的 N 个(N 为初始群体的大小)个体.这种选择方法一般称为!+ 选择规则 [
4 ] , [
5 ] . 应当指出,上面的算法还不一定能保证收敛到最优解,其原因是搜索空间过大,很可能陷入局部 最优解而导致早熟的现象.为了保证收敛到全局最优解而不致陷入局部最优,我们采用了小生境 (N ichling )技术,所谓小生境技术就是根据个体的相似程度而对其施以惩罚因子,以便个体分散在更 大的搜索空间,能够保证个体的多样性,从而避免了个体过早聚集在某处而导致个体的早熟.