基于中心差分公式的进化策略算法优化步长h求解数值微分.doc

基于中心差分公式的进化策略算法优化步长h求解数值微分.doc

ID:50906753

大小:181.00 KB

页数:4页

时间:2020-03-15

基于中心差分公式的进化策略算法优化步长h求解数值微分.doc_第1页
基于中心差分公式的进化策略算法优化步长h求解数值微分.doc_第2页
基于中心差分公式的进化策略算法优化步长h求解数值微分.doc_第3页
基于中心差分公式的进化策略算法优化步长h求解数值微分.doc_第4页
资源描述:

《基于中心差分公式的进化策略算法优化步长h求解数值微分.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于中心差分公式的进化策略算法优化步长求解数值微分夏慧明(南京师范大学泰州学院,泰州,225300)1引言微积分学已经给出求函数导数的许多方法,但这些方法对一些实际问题往往难以实行。如实际问题常常将函数在一些离散点上的值用表格的形式给出,则求就不那么容易了。这种对列表函数求导的方法通常称为数值微分。本文主要是基于中心差分公式来求解数值微分的近似解。进化策略(EvolutionStrategies,ES)是由德国柏林技术大学的I.Rechenbery和H.P.Schweful为研究风洞中的流体力子问题而提出的。进化策略的基本算法构成类

2、似于遗传算法的构成形式,区别主要在于进化算子的不同选择。在遗传算法中主要采用交叉算子来产生新个体,而变异算子只是作为生成新个体的辅助手段。但在进化策略中则是主要采用变异来生成新个体,而交叉算子则较少使用。文中利用进化策略算法来优化步长,通过对由进化策略产生的模型参数采用突变的方式产生新的参数,这样通过不断进化,直至得到最优的步长,将其代入中心差分公式得到近似微分值。实践证明该算法所求得的微分值精度较高、收敛速度较快。2中心差分公式据数学分析中导数的定义,容易想到,当充分小时,可用差商近似导数,这是最简单的数值微分公式。如果函数在点的

3、左边和右边的值可计算,则最佳二点公式包含两边的两个对称的横坐标。定理2.1[精度为的中心差分公式]设,且,则(1)而且存在数,满足(2)其中(3)项称为截断误差。定理2.2[精度为的中心差分公式]设,且,,则(4)而且存在数,满足(5)其中(6)用中心差分公式计算导数的近似值,必须选取合适的步长。因为,从中心差分公式的截断误差看,步长越小,计算结果就越精确,但从舍入误差的角度看,当很小时,与很接近,两相近数直接相减会造成有效数字的严重损失,精度降低,因此,步长又不易取的太小。因为,步长的优越性直接影响微分值的精度,所以,寻求出最优步

4、长是非常有必要的。3求解数值微分的进化策略算法(ESA)(1)确定个体的表达方式:表达式中个体由目标变量和标准差两部分组成,因为步长是用随机生成的某一区间的两个端点的差的绝对值表示的,所以每部分个体有2个分量,分别代表区间的左端点与右端点,即。(2)随机生成初始群体:进化策略中初始群体由个个体组成,每一个个体包含2个分量。初始个体是随机生成的,初始个体的标准差。(3)计算适应度:将步长代入中心差分公式求出在点处的近似微分值,将所得的微分值与精确值进行作差,所得结果记为,若越接近于零,则微分值的近似程度越好,取适应度函数为,适应度值越

5、接近1,微分值就越优,,终止条件选择一个很接近1的值,当适应度值大于时终止。(4)如果满足条件,则终止,此时选出最优步长及最优微分值。否则,继续向下进行训练学习。(5)根据进化策略,采用下述操作产生新群体:5.1)重组:从父代个体中随机取出两个个体,交换目标变量和随机因子,产生新个体。目标变量采用离散重组,随机因子采用黄金分割重组。5.2)突变:对重组后的个体添加随机量,采用柯西突变原则产生新个体。5.3)计算个体适应度。5.4)选择:采用选择策略,挑选优良的个体作为进化的结果。(6)反复执行第(5)步,直到满足终止条件,选择最佳的

6、个体作为进化策略的结果,即所求的最优步长及最优微分值。4数值实例为验证本文算法在求解数值微分时的正确性,取适应度函数,其中

7、近似值-精确值

8、。由上节算法思想可知,当的值越接近1时,则表示所得到的步长最优、微分值与精确值间的误差越小。以下各例均采用选择策略,其中取,,对于公式(1)以下各例中的终止条件均取为,对于公式(4)以下各例中的终止条件均取为。例1:利用中心差分公式求在处的导数值。计算结果如表1所示。表1最优步长及微分值中心差分公式公式(1)公式(4)最佳步长5.176103238782592e-0040.00368144253

9、123ESA法0.288675135669010.28867513459467精确值0.288675134594810.28867513459481误差1.074200006723203e-009-1.399991234052322e-013例2:利用中心差分公式求振荡函数在处的导数值。计算结果如表2所示。表2时最优步长及微分值中心差分公式公式(1)公式(4)最佳步长1.645899522229044e-0063.497237051936220e-004ESA法24.0042571667019924.00425716626365精确

10、值24.0042571662591524.00425716625915误差4.428386546351248e-0104.497735517361434e-012例3:利用中心差分公式求在处的导数值。计算结果如表3所示。表3最优步长及

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。