码迷,mamicode.com
首页 > 编程语言 > 详细

高职机械制造专业数学教学中遗传算法的运用

时间:2015-01-27 09:30:33      阅读:191      评论:0      收藏:0      [点我收藏+]

标签:

面对新形势下的高职教育,将实用先进的数学工具融合到课程的教学中去,使学生在众多解决未来实际问题的途径和方法中选取最优的。本文通过对在高职机械制造专业数学教学中引入遗传算法的探讨,目的是增强机械制造专业学生对实际问题进行优化的能力,有效提升高等数学的针对性和实用性,激发学生利用应用手段解决实际问题的兴趣。

  一、遗传算法的应用现状

  近一百多年以来,对于遗传算法的研究从理论进入到应用领域,逐渐变成了一个十分热门的研究课题。随着研究的深入,研究者们不断发现由于其应用的广泛性,许多领域都可以利用遗传算法寻优,所以它的研究领域从开始的理论计算到现在的工业应用和产业应用。与此同时,其他领域的理论研究也影响着遗传算法的发展,从开始的组合求最优解到现在的自学习规则能力。目前的遗传算法已经具备依靠软件即可实现寻优的功能,依据设定好的遗传算子进行求解。据德国 Dortmund 大学的一份研究报告报道:“依据不完全地统计,遗传计算已经在 16 个领域和250 个场合得到了应用”。遗传算法在工程研究领域得到广泛的应用,车间生产线调度是较难的组合优化问题。遗传算法具有简单、通用和鲁棒性强等优点,因而迅速成为车间调度应用的重要而有效的手段。

  二、遗传算法的教学内容及过程

  对于教师来说,遗传算法也并不是一个十分熟悉的领域,由于知识领域的广阔,让我们不知道该选取哪些内容能够真正的在教学过程中对学生进行有效的指导。基于这几年来对遗传算法的研究,笔者对遗传算法的教学归纳出了以遗传算法的组成及使用方式为主的教学过程。

  遗传算法是由一群染色体组成的种群,每一染色体均表示问题的一个潜在解,都根据适应值被评价优劣。某些染色体要经过遗传操作的随机变化而产生新的染色体,这有两种变换方式:交叉和变异。交叉是将两个染色体的某部分组合形成新的个体;变异是将一个染色体的某部分改变获得的染色体。生成的新个体可以表示为后代,对后代再用适应函数进行筛选,从而选出一些后代个体,形成新的种集,再选出那些优良的染色体。经过很多代遗传后,会搜索到一个最棒的染色体个体,该个体就可能代表问题的最优解法、次优解法或满意解法。遗传算法是一种在复杂的解空间上进行有向随机搜索的方法。

  将遗传算法归纳为 5 个基本部分组成:编码、遗传算子交叉和变异、选择、适应值的确定、终止规则。

  1.编码

  遗传算法开始计算的关键是将所求问题的解编码构成染色体。其有如下几种编码方式:二进制式编码、实数式编码、字母与整数排列式编码,以及一般数据结构式编码。

  组合优化问题关键是要找到满足约束条件的最优排列组合。实数编码对于函数优化和约束优化问题要比二进制编码更有效,容易借鉴经典的优化方法从而形成高效的遗传算子。

  2.遗传算子交叉和变异

  遗传算法是融合了随机和局部两种搜索能力的方法,既能对搜索空间进行广度搜索,又能进行深度搜索,由遗传算子广泛的搜索全部解空间,由选择机制挖掘搜索局部信息。

  在经典遗传算法中,交叉算子为主要算子,而变异算子常作为次要算子出现,产生自主随机变化。对于交叉和变异这两个遗传算子,一个随机搜索并尝试搜索局部最优解以外的解,另外的一个则搜索局部并尝试找到更优的解,此时交叉算子与变异算子在遗传搜索中的地位同样的重要。

  3.选择

  选择为遗传算法提供了动力。动力过大搜索会过早地终止,这就是所谓的早熟;若动力过小优化程序会很复杂,计算起来也会很慢。在进行遗传搜索的开始部分要选择小一些的动力,进行广度的空间搜索;进行到遗传搜索的最后时要选择较大的动力,控制在很小的空间中。常用的选择方法有:

  一是轮盘赌选择法。此法的特点是随机采样,利用选择轮盘转动的次数的方法与种群规模数量相一致,每转动一次选出一个染色体构成新种群。其原理是结合每一染色体的适应值在种群中所占的比例来确定选择概率。

  二是 (μ+λ) 选择法。由于此方法不从种群中选择同一个染色体,所以该选择方式更适宜解决组合优化问题。此方法属于确定性的选择过程,可以从父代和子代中选择最优秀的个体进行遗传。

  三是竞争选择法。在种群中随机选择染色体,之后再择优染色体遗传变异,比较重要的参数是选择染色体的个数,二者竞争的竞争规模比较常用。而随机竞争是用一般方法算出选择概率后,再利用轮盘赌的方法选择染色体对,最后选取适应值高的染色体构成新种群,此法不断迭代,当新种群的数量满足种群规模时停止。

  4.适应值的确定

  为使遗传算法应用到实际问题中并能有效实施,提出了很多确定适应值的适应方法。我们希望适应性不只是可以用来求给定问题的解,还想使遗传算法适应特定问题的变化。总体而言有两种方法来确定适应性:一种是针对问题提出的适应性,提取遗传算法的某些共同可修改元素得到算法的优化形式,以此来体现问题的实质;一种是针对进化过程的适应性,对参数动态调整的同时解决遗传算法问题。此适应性还可细分为适应参数设置、适应性选择、适应性函数、适应性遗传算子。遗传算法选择能力显着受到这些策略性参数的制约。

  5.终止规则

  遗传算法具有概率为 1 的极限性,但是实际应用中难以实现此收敛条件。确定算法的终止经常使用的方法有三种,第一种是固定一个最大代数,当遗传到该代数时停止计算;第二种是将遗传算法的个体总数作为停止计算的规则;第三种是根据算法评价的一些自适应性规则,无论算法如何进化都己无法改进解的性能时,则停止计算。

  三、使用功能强大的 eM-Plant 软件寻优
  
  遗传算法作为一种随机寻优方法,在生产线调度优化的研究已经取得了许多进展,但在实际的教学中却使用的很少,教学中应该更多的介绍基于遗传计算的计算软件eM-Plant。首先介绍该软件的可视化建模功能。在操作界面可以直接拖动图标进行建模,建立模型后通过软件的设置,使用内置的遗传算法模块可以进行模型优化。优化的过程不改变仿真模型,只是对模型进行参数调整,直至找到最优的方案。教学过程可以通过设置一个具体的工作环境、工作流程,指导学生通过软件建立仿真模型,之后试运行得到结果,判断是否满意。第一次运行结果一般都不会令人满意的,这时适时的引出使用遗传算法模块,并介绍该模块的使用方法。利用建立好的仿真模型设置遗传模块,此时模型不需要进行更改,之后再运行便会得到比较满意的结果了。在学生的学习过程中:首先掌握了用软件建立仿真模型;其次理解了遗传模块的运行原理和模式;最后圆满地解决了工作上的问题。这一过程,学生有成就感,使得学生的学习体验和实践体验相互交织在一起,激发他们学习的兴趣,激起学生利用 eM-Plant 软件进行优化仿真的进一步探索的兴趣。

高职机械制造专业数学教学中遗传算法的运用

标签:

原文地址:http://blog.csdn.net/xiejl002/article/details/43166613

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!