遗传算法在计算机仿真技术中的应用

时间:2020-09-26 17:09:32 计算机应用毕业论文 我要投稿

遗传算法在计算机仿真技术中的应用

摘 要:通过对随机性问题进行计算机仿真,从而得出待解问题的解。提出了基于遗传算法进行计算机仿真 的基本模型。通过圆周率的计算,实践了该模型的应用过程。实践证明,该模型在进行计算机仿真时准确度比较高。 关键词:蒙特卡罗方法;;随机数;遗传算法  

0     

计算机的出现和计算技术的发展为仿真技术的发展 提供了强有力的手段和工具最近几年随着计算机的迅 速发展和普及尤其是微型计算机的发展和普及很多大 计算量的仿真系统得以实现并在国民生产科学研究等 领域得到广泛的应用。

现代科技发展中提出愈来愈复杂的随机性问, 除极 少数, 要想通过仿真给出其严格解是困难, 用确定性 方法给出其近似解也很困难, 甚至不可能遗传算 GA (Genetic Algorithm)[1]是模拟生物进化的优化算法把遗 传算GA 应用到仿真技术中是一种很强的特殊的数值 方法。

 

 

1      遗传算法[ 1 ]

1.1 并行遗传算法实现方案 目前并行遗传算法的实现方案大致可分3 (1)全局型—主从式模(master-slave model)并行

系统分为一个主处理器和若干个从处理器主处理器监控 整个染色体种群并基于全局统计执行选择操各个从 处理器接受来自主处理器的个体进行重组交叉和变异生新一代个体并计算适应度再把计算结果传给主处理

器。


从而加快满足终止条件的要求粗粒度模型也称岛屿模型

(island model)基于粗粒度模型的遗传算法也称为分布 式遗传算法(Distributed Genetic Algorithm)也是目 前应用最广泛的一种并行遗传算法。

(3)分散型—细粒度模(fine-grained model)为种 群中的每一个个体分配一个处理器每个处理器进行适应 度的计算而选择重组交叉和变异操作仅在与之相邻的 一个处理器之间相互传递个体中进行细粒度模型也称邻 域模(neighborhood model)适合于连接机阵列机和 SIMD 系统。

1.2 迁移策略

迁移(migration)是并行遗传算法引入的一个新的算 它是指在进化过程中子群体间交换个体的过程一般 的迁移方法是将子群体中最好的个体发给其它的子群体, 通过迁移可以加快较好个体在群体中的传播提高收敛速 度和解的精度最基本的迁移模型是环状拓扑模型如图

1 所示。


(2)独立型—粗粒度模型(coarse-grained model)种群分成若干个子群体并分配给各自对应的处理器每个 处理器不仅独立计算适应度而且独立进行选择重组交 叉和变异操作还要定期地相互传送适应度最好的个体,

从而加快满足终止条件的要求。粗粒度模型也称岛屿模型 (island model),基于粗粒度模型的遗传算法也称为分布 式遗传算法(Distributed Genetic Algorithm),也是目 前应用最广泛的一种并行遗传算法。 (3)分散型—细粒度模型(fine-grained model):为种 群中的每一个个体分配一个处理器,每个处理器进行适应 度的计算,而选择、重组交叉和变异操作仅在与之相邻的 一个处理器之间相互传递个体中进行,细粒度模型也称邻 域模型(neighborhood model),适合于连接机、阵列机和 SIMD 系统。 1.2 迁移策略 迁移(migration)是并行遗传算法引入的一个新的算 子,它是指在进化过程中子群体间交换个体的过程,一般 的迁移方法是将子群体中最好的个体发给其它的子群体, 通过迁移可以加快较好个体在群体中的传播,提高收敛速 度和解的精度。最基本的迁移模型是环状拓扑模型,如图

1 所示。

1.3 并行遗传算法的性能参数 为了评价并行算法的性能,人们提出了许多不同的 评价指标,其中最重要的一个评价标准是加速比。设T 1 为

 

某算法在串行计算机上的运行时间T P 是该算法在p 处理机所构成的并行机上的运行时间则此算法在该并行 机上的加速S p 定义

                                      ,                                 1并行遗传算法的性能主要体现在收敛速度和精度两

个方面它们除了与迁移策略有关还与一些参数选取的 合理性密切相关如遗传代数群体数目群体规模移率和迁移间隔。

 

 

2     计算机仿真

“系统仿真是通过对系统模型的实验研究一个存在 的或设计中的系统[2] 对于给定目标仿真过程可大致分 为仿真建模程序实现仿真结果的统计分析三大部分[3] 其中仿真建模是最基础的.关系整个仿真成败的环节果有软件能够辅助用户方便快捷地完成仿真建模工作么不仅可大大减少工作量而且还可使用户集中精力于提 高建模质量[4]

通过以上的概念分析可以看仿真成败的关键是 仿真前的建模模型建起来以后对输入数据的优化也很重 因此可以把并行遗传算法应用在计算机仿真中而来提高仿真的准确度。

 

 

3     并行遗传算法在计算机仿真中的应用

并行遗传算法叙述如

( 1) 基于对待解问题的详细分析建立详细的符合其 特点的并行遗传算法模型。

( 2) 基于并行遗传算法模型确定仿真前各参数的实现 方案。

(3)运用蒙特卡罗方法生成的大量随机数结合(2)实现方案对随机数进行优化。

( 4) 进行仿真试验得出仿真结果。

( 5) 若这个结果和预期理论结果不相符则说明仿真 失败重新回到第一步否则此次仿真过程成功仿真 过程如2 所示。


遗传算法在计算机仿真技术中的应张少刚 面随意地投掷长度 l 的细针, 设细针与平行线的垂直方 向的夹角a,则细针与平行线相交的概率I=Igcosa∣。

a 是在[0, π] 间均匀分布的所以细针与平行线相交

的概率等1/ cosa da=2/ π设进行N 次投针试 M 次与平行线相交N 足够大时细针与平行线相 交的频率就等于以上的概率于是得到计算的π公式π=2N/M

4.2 计算方法和结果

4.2.1 模型

在二维平面上画三条相距O.5 长度L 的平行线, 取细针长度 O.5 3 所示因为本文所用随机数在 [0 1] 之间所以平行线的有效长度L 也就是说所有投 掷试验都等效于在上述边长 L 的正方形区域内进行的。

根据对这个问题的分析可以确定该仿真例子适合 遗传算法的第(1) 类全局型—主从式模型基于并行遗传 算法模型确定仿真前各参数x1x2y1y2其实现方案见

以下算法。

4.2.2 算法

(1)为计算作准备取总投针次数初始N=0 相交次 M=0设定总投针试验次Nmax

(2) 由蒙特卡罗方法产生两个[O 1] 间均匀分布的随 机数并作为随机构造的细针的一个端点的坐标(x 1 ,y 2 )(3) 再产生一个随机数作为细针另一端点的横坐标

X2

(4)如果x2-x1 >0.5说明本次欲构造的细针长度已 0.5 应舍弃之并回到上

(5) 利用细针长度0.5 这个约束条件计算细针端 点的纵坐y2=y1 ± y1>1 y2<0说明

细针已不在选定的区域之内应舍弃回到(3 )否则投针

有效投针次数1N=N+1(6)判断细针是否与平行线相交如x1>05 x2>05,

x1<05 x2<05则细针与平行线不相交回到(2)

否则相交M=M+1(7)N=Nmax试验结束输出结果否则(2)

继续下一次投针试验。

4.2.3 计算结果


 

 

 

 

 


 

4     投针试验

4.1 试验


2 仿真过程图


著名Bufon 投针实验是一种求π近似值的方法, 方法是在平坦桌面上划一组相距 l 的平行线, 然后向桌


3 模拟计算结果



 

模拟计算结果如 3 所示可以看出基于并行遗传


度和求解质量。


 

参考文献


算法模型确定的仿真前各参数的实现方案准确所得圆周 率的计算精度比较高因此并行遗传算法模型具有一定 的实用性。

5      结束语

本文将遗传算法应用到计算机仿真技术中提出了 基于并行遗传算法的仿真模型并通过圆周率的计算践了它的应用过程成功地解决了一类多变量多约束条 件的线性仿真问题结果表明PGA 有效地提高了运行速


1   Holland J. Adaptation in Natural and Artificial Systems

[M].Michigan:University of Michigan Press,2005

2  李书, 赵礼峰. 仿真技术的现状及发展[J].自动化与仪表,

2004,14(6):14

3  徐庚保.系统仿真的过去现在和未来[J].计算机仿真,2006,

15(3):24

4  惠天舒,李裕山,陈宗基.仿真模型的可重用性研究[J].北京航 空航天大学学报,2008,25(3):329333

            

【遗传算法在计算机仿真技术中的应用】相关文章:

1.计算机仿真技术在物流服务中的应用

2.浅谈计算机仿真技术在实验教学中的应用论文

3.计算机三维仿真技术在复杂足踝部骨折手术中的应用

4.计算机仿真技术的发展应用论文

5.计算机在医药仓库管理中的应用

6.计算机在酒店管理中的应用论文

7.浅谈计算机在中学教学中的应用

8.计算机在大桥施工测量中的应用