Vol.42,No.7Jul,20171002-0007-0072-04文章编号:(2017)火力与指挥控制FireControl&CommandControl第42卷第7期2017年7月基于改进差分进化算法的内弹道参数优化张泽峰,傅建平,曹营修,朱建杰(军械工程学院,石家庄050003)摘要:火炮内弹道参数直接影响其计算结果,内弹道参数优化设计是内弹道分析计算的重要环节。基于经典内弹道计算模型,以火药内弹道计算中最为敏感的燃速指数及其燃速系数为设计参量,以最大膛压及弹丸初速的计算值与测试值一致性为目标,对差分进化算法群体的初始化、变异因子及变异模式进行了改进,对某型火炮的内弹道参数进行了优化计算。优化设计结果表明改进后的差分进化算法满足内弹道设计工程实践要求,为内弹道参数优化设计提供了一种有效的算法。关键词:内弹道,多参数,差分进化,群体规模,变异因子,变异模式中图分类号:TJ012.1文献标识码:ADOI:10.3969/j.issn.1002-00.2017.07.016InteriorBallisticParameterOptimizationBasedon
ImprovedDifferentialEvolutionAlgorithm
ZHANGZe-feng,FUJian-ping,CAOYing-xiu,ZHUJian-jie(OrdnanceEngineeringCollege,Shijiazhuang050003,China)Abstract:Theballisticparametersdirectlyaffectthecalculationresults,interiorballisticparameteroptimizationdesignisanimportantpartofinteriorballisticanalysisandcalculation.Inthispaper,basedontheclassicalinteriorballisticscalculationmodel,themostsensitiveburningrateexponentanditsburningrateasthedesignparameters,inordertogetthecalculationofthemaximumchamberpressureandthemuzzlevelocityvaluestobeconsistentwithtestvalue,theinitializationofdifferentialevolutionalgorithm,thevariationfactorandthemodelofmutationareimprovedandtheinteriorballisticparametersofacertaintypeofgunareoptimizedandcalculated.Theoptimizationresultsshowthattheimproveddifferentialevolutionalgorithmmeetstheengineeringpracticerequirementsofinteriorballisticdesignandprovidesanefficientalgorithmfortheoptimaldesignofinteriorballisticparameters.interiorballistic,multiparameter,differentialevolution,groupsize,variationfactor,Keywords:variationpattern0引言果相吻合[1]。目前内弹道参数优化广泛采用逐步逼近法、遗传算法等算法[2],但逐步逼近法需要给定合理的参数调整范围;遗传算法易出现未成熟收敛及局部搜索能力差。差分进化(DifferentialEvolution,DE)算法原理简单,是一种基于群体的实参数随机优化算法,受控参数少,群体搜索与协同搜索相结合,优化精度高,搜索速度快[3],是内弹道参数优化设计的理想方法。内弹道解法是内弹道理论的核心,对火炮的设计与改进有着重要的作用。内弹道计算中涉及到很多参数的选取,这些参数都有一定的取值范围。参数取值的差异会对内弹道计算结果带来很大的影响,因此,内弹道参数必须进行优化,使最大膛内压力pm、弹丸初速v0等内弹道计算结果中与其测试结收稿日期:2016-04-05修回日期:2016-06-15作者简介:张泽峰(1991-),男,山西阳泉人,硕士研究生。研究方向:火炮检测与诊断。·72·张泽峰,等:基于改进差分进化算法的内弹道参数优化(总第42-1183)1内弹道参数优化原理1.1内弹道计算模型火炮发射后,火药燃烧产生的高温、高压气体使弹丸在膛内高速运动。经典的内弹道计算模型如下[4]:(1)式中:鬃为气体生成百分数;Z为已燃相对厚度;、、滋为火药形状特征量;t为弹丸在膛内运动的时间(s);u1为燃速常数(dm·s-1/kg·dm-2);e1为1/2火药起始厚度(mm);n为燃速指数;p为平均压力pa);S炮膛横断面面积(m2);渍为次要功计算系数;m为弹丸重量(kg);v为水弹运动的速度m/s);l为弹丸行程长(m);l鬃为药室自由容积缩径长(m),,琢为火药气体余容(dm3/kg);籽p为火药密度(kg/m3);f为火药力(kJ/kg);棕为装药量(kg);兹=k-1,k为绝热指数。1.2内弹道参数优化原理由内弹道计算模型可以知道,内弹道计算结果p、v、l与内弹道参数之间存在着隐含的非线性关系,任意改变一个内弹道参数均会使计算结果发生明显的变化。其中燃速指数n及系数兹对内弹道计算的结果影响最为敏感,故本文通过优化燃速指数n及系数兹,使计算结果同测试值相一致。由此,可建立内弹道参数优化模型:(2)式中,pstd、vstd为测试值,p、v为计算值,着为所要求的设计精度,通常取着≤0.001。2内弹道参数改进差分进化计算模型差分进化算法作为一种基于群体进化的算法,是由RainerStorn和KennethPrice于1995年为求解切比学夫多项式拟合问题而提出的一种优化算法[5-6]。2.1差分进化算法差分进化算法与标准进化算法有类似的操作,包括变异、交叉和选择。其基本思想为:利用随机选择的不同个体的比例差分矢量作为当代种群个体的扰动量,得到变异后的向量,变异向量与目标向量进行杂交操作,生成新的向量后与基准向量竞争,较优者保留下来作为子代群体,故无需单独通过概率分布生成子代群体。这样,DE算法不断优化群体质量,最终收敛于最优解位置[7]。DE算法的计算流程如图1所示,其具体计算步骤为:图1DE算法计算的流程(1)种群初始化。设D为个体的维数,NP为种群的规模,t为进化的代数,每个个体对应问题解为:(3)DE算法随机产生NP个个体构成第0代种群。通常,根据具体问题确定初始变量的寻优区间[xmin,xmax],并利用均匀分布的随机函数来生成:(4)式中:t为进化的代数,rand为在区间[0,1]区间上的随机数,(2)差分变异操作。在每一代进行全局搜索中,DE算法会通过变异操作为当前种群中的每一个个体x(it)生成一个目标个体y(it)。目前,最基本的变异操作就是随机生成3个互不相同的随机个体作为变异操作的基,对其中两个个体的差值进行缩放,并与第3个个体相加得到变异后的个体。即:(5)式中:r1、r2、r3为互不相同的整数,F为DE算法的变异因子。(3)交叉操作。为了保证种群的多样性,变异操·73·(((总第42-1184)火力与指挥控制2017年第7期作之后便进行交叉操作。将目标个体与变异后的个体按如下规则进行交叉操作,生成新的试验个体。(6)式中:xi(,jt),yi(,jt),zi(,jt)分别为第t代种群中第i个个体的j维分量,r=rand(0,1),cr为介于0和1之间的交叉概率,rnd为介于1和D之间分布的整数,这样做的目的是保证至少有一维分量来自目标个体x(it)。(4)选择操作。通过交叉操作生成新的试验个体z(it)后,计算该个体的目标函数值与当前个体xit)对应的目标函数值进行比较,保留较优个体。比如对于最小值优化的问题,即:(7)2.2改进差分进化算法分析DE算法计算的过程,该算法易出现早熟收敛,其运算效率受差分进化模式及控制参数的取值影响很大。因此,为提高其优化性能,本文从群体的初始化、变异因子及变异模式3个方面对差分进化算法进行了改进。2.2.1基于混沌理论的群体初始化DE算法中,群体的初始化随机性较大,由此产生的初始群体不能均匀地分布在解空间内,容易导致大部分个体远离最优解,制约了该算法的求解效率。逻辑斯谛映射在一定条件下处于混沌状态,可用于对群体的初始化;混沌的遍历性可实现全局搜索,有利于提高求解效率[8]。逻辑斯谛映射的表达式为:(8)式中:n代表代数,a为状态参量。无论xn以介于0~1之间的任何初值开始,多次迭代总会得到0~14a之间的随机数,将参数a取4,从而使得到的随机数处于区间[0,1]内。单纯使用逻辑斯谛映射得到的随机数并不是均匀的随机数数列,这是由于式(8)的迭代值是以概率密度(9)分布在区间[0,1]。为了得到均匀分布的随机数数列,求其分布函数为:(10)则y(x)为均匀分布在区间[0,1]的随机数列,记为randY。因此,改进后的群体初始化为:·74·x(it)=xmin+randY*(xmax-xmin)(11)2.2.2动态随机调整变异因子DE算法中,变异因子F默认为固定值,其取值影响着优化过程的收敛性及收敛速度。当取值较小时,收敛速度快,但容易出现早熟;当取值较大时,能够找到最优解,但收敛速度较慢。因此,对于不同的问题需要根据经验调整F的取值[9]。为此提出一种自适应动态随机调整变异因子F=rand(),即:(12)式中,rand为区间[0,1]之间的随机数。2.2.3自适应差分进化模式随着DE算法的不断发展,出现了许多不同的变异方式,可用DE/x/y的形式来表示。其中,x表示在变异操作时是随机(rand)选取个体作为变异操作的基还是选取当代最优个体(best)作为变异操作的基;y表示变异时所用差分项的数目。常见的变异机制有式(5)、式(13)~式(15)等4种。DE/best/1:(13)DE/rand/2:(14)DE/best/2:(15)通过对DE算法的分析可知变异个体引导着优化的方向,同时影响着全局最优解的搜索能力[10]。标准差分进化算法的变异操作为DE/rand/1,这样容易使得变异个体的随机性变大,降低寻优效率。如果选用变异操作为DE/best/1,变异个体为当前种群中最佳个体,虽然保证了优化的方向,但使得变异个体过于单一极易陷入局部最优解。为了克服以上缺点,不仅要降低变异个体的随机性,同时保证种群的多样性。故对变异操作进行改进,采用自适应选取差分进化模式,使得在不同代的进化过程中采用不同的变异操作。即:I=unidrnd(4)(16)式(16)能够随机产生1~4之间的整数,每一个整数对应于相应的变异操作,然后按照对应的变异方式进行变异和交叉。3内弹道优化结果分析以某型火炮为例,首先计算得到内弹道的膛内压力p及弹丸速度v随时间的变化曲线,在此基础上利用改进的差分进化算法进行多参数符合计算。经过仿真计算,得到某型火炮的膛内压力p及弹丸(张泽峰,等:基于改进差分进化算法的内弹道参数优化(总第42-1185)速度v随时间的变化曲线如图2、图3所示。图2膛内压力p随时间的变化曲线图3弹丸速度v随时间的变化曲线通过火炮实弹射击测试得到该火炮的膛内最大压力pstd=106.14MPa,弹丸出炮口的速度vstd=469.m/s。故通过DE算法及改进DE算法进行符合计算,DE的参数设置为进DE算法参数设置NP=10,F=0.85,CR=0.5;改NP=10,CR=0.5。优化结果如表1所示。表1内弹道计算结果DE算法改进DE算法pmax/MPavmax/ms-1pmax/MPavmax/ms-1测试值106.14469.106.14469.符合计算值106.1170470.0028106.1495469.9442终止代数6926目标函数值E0.0004590.00021DE算法及改进DE算法进行符合计算时目标函数值E的变化情况如图4所示,从图4可以看图4参数符合计算结果到改进后的DE算法在第26代便得到了符合计算精度的目标函数的最佳值,相对于标准差分进化算法不仅提高了收敛速度,而且收敛精度也优于DE算法。4结论基于经典内弹道计算模型,以火药的燃速指数n及系数兹两个敏感参数为设计参量,以最大膛压及弹丸初速的计算值与测试值的相对误差为目标函数,通过DE算法中的群体初始化、变异因子及变异模式3方面改进,对某炮内弹道参数进行优化。改进DE算法相对传统DE算法,提高了全局搜索能力和收敛速度。今后优化变异和交叉操作以及引入混合算法等,可进一步提高DE算法的精度和速度。本文所采用的改进DE算法精度和速度满足内弹道参数优化设计要求,可应用于火炮内弹道参数优化设计。参考文献:1]刘林,樊成军,胡敬坤,等.混合装药内弹道仿真及多参数符合计算[J].火炮发射与控制学报,2014,35(1):48-51.2]张晓东,傅建平,张培林.基于改进遗传算法的内弹道多参数符合计算[J].弹道学报,2006,18(4):41-44.3]汪慎文,丁立新,张文生,等.差分进化算法研究进展[J].武汉大学学报(理学版),2014,60(4):283-292.4]张小兵.炮内弹道学[M].北京:北京理工大学出版社,2014:80-127.5]STORNR,PRICEKV.Differentialevolution-asimpleandefficientadaptiveschemeforglobaloptimizationovercontin-uousspaces[C]//TechnicalReportTR-95-012,InternationalComputerScienceInstitute,Berkley,1995.6]STORNR,PRICEKV.Differentialevolution-asimpleandefficientheuristicforforglobaloptimizationovercontinuousspaces[J].JournalofGlobalOptimization,1997,11(4):341-359.7]王凌,钱斌.混合差分进化与调度算法[M].北京:清华大学出版社,2012:1-10.8]周燕,覃朝玲.用混沌法产生随机数发生器的研究[J].西南师范大学学报(自然科学版),2000,25(2):150-154.9]夏莘媛,刘伯颖,李洋,等.一种改进的差分进化算法及其应用[J].河北工业大学学报,2015,44(1):12-22.10]许小健,黄小平,钱德玲.自适应加速差分进化算法[J].复杂系统与复杂性科学,2008,5(1):87-92.·75·[[[[[[[[[[