[PlantSimulation]GAWizard遗传算法的应用
来源:互联网 发布:小智淘宝店外设店 编辑:程序博客网 时间:2024/06/17 16:04
PlantSimulation除了提供常规的建模功能外,还可以通过额外的库来进行模型的优化,比如说遗传算法、瓶颈分析等,今天主要讲一下Tools中GAWizard的使用方法。
遗传算法是20世纪60~70年代主要由美国 Michigon 大学 John Holland 教授提出. 其内涵哲理启迪于自然界生物从低级、简单到高级、复杂,乃至人类这样一个漫长而绝妙的进化过程。借鉴 Darwin 的物竞天择、优胜劣汰、适者生存的自然选择和自然遗传的机理。其本质是一种求解问题的高效并行全局搜索方法,它能在搜索过程中自动获取和积累有关搜索空间的知识,并自适应
地控制搜索过程以求得最优解。
l 基本思想
从一初始化的群体出发, 通过随机选择(复制)(使群体中优秀的个体有更多的机会传给下一代),交叉(体现了自然界中群体内个体之间的信息交换),和变
异(在群体中引入新的变种确保群体中信息的多样性)等遗传操作,使最具有生存能力的染色体以最大可能生存, 群体一代一代地进化到搜索空间中越来越好的区域。
l 生物遗传概念在遗传算法中的对应关系
l 适应函数:即目标函数
l 基本步骤
l PlantSimulation示例
某公司一条混流生产线生产5种产品,设计遗传算法安排生产顺序使其切换时间最短。
1.在PlantSimulation中建立如下图所示模型:
2.Source的产生选择Sequence Cydical,并将sequence拖入到table的设置框内,点击apply,确定将sequence设置成相应的格式。
3.三个machine的处理时间均按默认即可,setup time设置成matrix(type),并将三个setup_machine的表格拖入到相应处理器的setup设置框内。
Setuptime的tablefile可以按照如下时间设置:
4.在Eventcontroller中设置结束时间为10天;并勾选展示报告。
5.全局变量TotalSetupTime的设置方法设置在endsim方法中实现,总的切换时间等于三个机器切换时间的总和。
6.将sequence图标拖到GAWizard上并松开鼠标,此为设置需要优化的参数,也可理解为初始种群的选择;其次将全局变量TotalSetupTime拖到GAWizard中,此为设置适应度函数,即目标函数。
7.可以根据自身需要设置世代数以及世代大小;
8.点击运行选项卡下的开始,即可对模型进行分析计算,并展示最终的效果。
以世代数为50、世代大小为100为例,最佳顺序为5,3,1,4,2,最佳适应度为24:10:24:00.000。
- [PlantSimulation]GAWizard遗传算法的应用
- [PlantSimulation]GAWizard遗传算法的应用(二)
- 遗传算法工具箱的应用
- 遗传算法工具箱的应用
- 遗传算法工具箱的应用
- [PlantSimulation]矢量图vector graphic的应用
- 遗传算法的C#实现及应用
- 遗传算法的C#实现及应用
- 从应用的角度了解遗传算法
- [PlantSimulation]Resources应用
- 遗传算法及其应用简介
- 遗传算法及其应用part1
- 遗传算法及其应用part2
- 遗传算法的发展现状与应用实例
- 遗传算法的应用(求解迷宫问题)
- 遗传算法的资源
- 遗传算法的概念
- 遗传算法的原理
- Kettle:利用设置变量(时间戳)实现数据增量更新
- LeetCode 224.Basic Calculator
- overflow: hidden;
- 默认构造函数和拷贝构造函数总结
- 九度 题目1325:Battle Over Cities
- [PlantSimulation]GAWizard遗传算法的应用
- 软考-信息安全工程师-ICMP协议
- 一些类型转换小方法
- 剑指offer--旋转数组中的最小数
- pcl 在使用uniform_sampling 出现segmention fault
- netty 配置启动服务器
- 网站建设-网站设计怎么样做的更好?
- 软考-信息安全工程师-IP协议
- 面向对象编程思想的六大原则