毕业设计带互动界面的遗传算法演示系统.docx
- 文档编号:1006973
- 上传时间:2022-10-15
- 格式:DOCX
- 页数:30
- 大小:448.92KB
毕业设计带互动界面的遗传算法演示系统.docx
《毕业设计带互动界面的遗传算法演示系统.docx》由会员分享,可在线阅读,更多相关《毕业设计带互动界面的遗传算法演示系统.docx(30页珍藏版)》请在冰豆网上搜索。
毕业设计带互动界面的遗传算法演示系统
本科毕业设计说明书(论文)
(2012届)
论文题目带互动界面的遗传算法演
示系统
摘要
遗传算法是模拟生物在自然环境中的遗传和进化过程而形成的一种自适应全局优化概率搜索方法。
它最早由美国密执安大学的Holland教授提出,起源于60年代对自然和人工自适应系统的研究。
遗传算法作为具有系统优化、适应和学习的高性能计算和建模方法的研究,广泛应用于自动控制、计算科学、模式识别、智能故障诊断管理科学和社会科学领域,适用于解决复杂的非线性和多维空间寻优问题。
带互动界面的遗传算法演示系统主要是演示运用遗传算法解决背包问题,对简单遗传算法的交叉算子和变异算子做了改进,通过实验验证了改进之后遗传算法在解决背包问题方面准确度以及效率的提高。
带互动界面的遗传算法演示系统使用MyEclipse作为开发工具,使用面向对象的Java语言进行编程设计,通过键盘输入或者读取特定文件来处理数据以达到互动演示效果。
带互动界面的遗传算法演示系统主要包括从文件读取数据,从键盘输入数据,参数曲线演示,关于演示系统,退出演示系统五大功能模块,其中演示的主要模块为从文件中读取数据,从键盘输入数据以及参数曲线演示。
从文件中读取数据要求用户输入将要处理的有效文件名,系统将给出最终运算结果;从键盘输入数据需要用户手动输入要处理的数据,系统将给出最终运算结果;参数曲线演示模块展示了最优值关于种群大小、交叉概率、变异概率的变化曲线;关于演示系统主要介绍了本系统的一些基本信息;用户通过退出演示系统模块来退出该系统。
经过各方面测试,该系统运行稳定,对于利用遗传算法解决背包问题来说,能够实现良好的互动演示效果并能给出正确的结果。
关键词:
遗传算法演示系统,背包问题,MyEclipse,Java
Abstract
Geneticalgorithmisanadaptiveandgloballyoptimizedandprobabilisticsearchingmethodwhichformsintheprocessofsimulatingtheorganisms’geneticsandevolutioninthenaturalenvironment.ItwasfirstlyproposedbyHollandwhowastheprofessorofUniversityofMichigan.Geneticalgorithmoriginatedfromtheresearchonnaturalandartificialadaptivesysteminthe1960s.Asaresearchwiththeabilityofsystemoptimizing,adaptiveandself-learninghigh-performancecomputingandmodeling,Geneticalgorithmiswidelyusedinthefieldofautomaticcontrol,computingscience,patternrecognition,intelligentfaultdiagnosismanagementsciencesandsocialsciences.Itissuitableforsolvingthecomplexnon-linearproblemandthemulti-dimensionalspaceoptimizationproblem.TheGeneticalgorithmdemonstrationsystemwithinteractiveinterfaceistodemonstratetheuseofGeneticalgorithmtosolvetheknapsackproblem.Ithasmadesomeimprovementsoncrossoveroperatorandmutationoperator.Itisverifiedthattheimprovedgeneticalgorithmindeedimprovedtheaccuracyandefficiencyinsolvingtheknapsackproblem.
TheGeneticalgorithmdemonstrationsystemwithinteractiveinterfaceuseMyEclipseasadevelopmenttool,theobject-orientedJavalanguagetoprogramanddesign,inputtingviathekeyboardorreadingaparticularfiletoprocessthedatainordertoachieveinteractivedemoeffect.
TheGeneticalgorithmdemonstrationsystemwithinteractiveinterfacemainlyincludesthefollowingfunctionalmodules:
readingfromaparticularfile,inputtingviathekeyboard,thedemonstrationofparametriccurves,aboutdemosystemandquit.Readingfromaparticularfile,inputtingviathekeyboardarethemainfunctionalmodules.Readingfromaparticularfilerequirestheusertoinputavalidfilenameandthesystemwillgivethefinalresultoftheoperation.Inputtingviathekeyboardrequirestheusertoinputthevaliddataandthesystemwillgivethefinalresultoftheoperationthedemonstrationofparametriccurvesdemonstratetheoptimalvaluesforpopulationsize,crossoverprobability,mutationprobabilitycurve.Theaboutdemosystemintroducessomebasicinformationofthesystem.Thequitallowstheusertoexitthesystem.Afterthecarefultest,thesystemisstable,anditcanachievegoodinteractivedemonstrationeffectandgivesthecorrectresult.
Keywords:
Geneticalgorithmdemonstrationsystem,knapsackproblem,myeclipse,java
图目录
表目录
第一章绪论
1.1研究开发的目的
遗传算法的应用无论是用来解决实际问题还是建模,其范围不断扩展,这主要依赖于遗传算法本身的逐渐成熟。
近年来,许多冠以“遗传算法”的研究与Holland最初提出的算法已少有雷同之处,不同的遗传基因表达方式,不同的交叉和变异算子,特殊算子的引用,以及不同的再生和选择方法,但这些改进方法产生的灵感都来自于大自然的生物进化,可以归为一个“算法簇”。
人们用进化计算(EC)来包容这样的遗传“算法簇”。
它基本划分为四个分支:
遗传算法(GA)、进化规划(EP)、进化策略(ES)和遗传程序设计(GP)[1]。
有些学者甚至提出,进化计算是人工智能的未来。
其观点是,虽然我们不能设计人工智能(即用机器代替人的自然智能),但我们可以利用进化通过计算获得智能[2]。
目前,进化计算与人工神经网络、模糊系统理论一起已经形成一个新的研究方向—计算智能(computationalintelligence)。
人工智能已经从传统的基于符号处理的符号主义,向以神经网络为代表的连接主义和以进化计算为代表的进化主义方向发展。
遗传算法作为具有系统优化、适应和学习的高性能计算和建模方法的研究,广泛应用于自动控制、计算科学、模式识别、智能故障诊断管理科学和社会科学领域,适用于解决复杂的非线性和多维空间寻优问题。
利用遗传算法的搜索过程不受优化函数的连续性约束,也没有优化函数的导数必须存在的要求;遗传算法采用多点搜索或者说是群体搜索,具有很高的隐含并行性,因而可以提高计算速度;遗传算法更适合大规模复杂问题的优化[3]。
鉴于遗传算法有以上这些优点,所以对它的研究将具有重要意义。
可以预料在不远的将来,随着理论研究的不断深入和应用领域的不断拓广,遗传算法将取得长足的进展。
本文旨在就具体的背包问题来展示利用遗传算法对其解决的具体过程与结果,以显示遗传算法在解决该类问题方面的良好性能,并在简单遗传算法的基础上对交叉算子和遗传算子进行改进,进一步提高遗传算法的解决问题的准确度和效率。
1.2国内外研究发展现状
在20世纪60年代,美国密歇根(Michigan)大学的Holland教授及其他一些科学家分别独立地对人工系统和自然的研究之后,提出了遗传算法的基本思想。
1975年,Holland教授出版了经典著作《AdaptationinNatureandArtificialSystem》,象征着遗传算法的正式诞生。
Holland教授提出的遗传算法即是后来的简单遗传算法。
简单遗传算法主要由交叉算子产生新个体,个体采取二进制编码方式,通过选择操作体现“优胜劣汰”的自然选择机制。
简单遗传算法以模式定理为其理论基础,认为遗传算法具有全局收敛性和隐含并行性。
经过几十年的研究与发展,遗传算法的理论研究取得了重大进展,其应用研究更是取得了辉煌的成就,已经渗透到了各行各业。
有关人工智能的著作中一般也有关于遗传算法的章节,现已有不少学术专著出版。
近年来,有不少博士学位论文对遗传算法的理论和应用作了专题论述。
遗传算法是一种非数值计算优化方法,它建立在群体遗传学和自然选择基础之上[4]。
遗传算法将问题的解表示成字符串,并把这样的字符串当作染色体,许多个体便构成了一个种群。
通过随机方式产生若干个个体构成初始种群,然后对群体不断进化,利用“优胜劣汰”的选择机制,使种群中的个体朝着最优值的方向进化,最终搜索到问题的近似最优解或者最优解。
个体通过选择、交叉和变异算子的作用生成子代个体。
通过定义个体的评价函数,也称为适应度函数,来评价个体的优劣。
个体的适应度反映个体适应环境的能力,适应度大的个体生存能力强。
按照自然选择的基本原理,适应度越大的个体被选择用来繁殖后代的机会越大。
遗传算法是模拟遗传进化的智能算法,而遗传算法的理论研究内容主要包括染色体的遗传控制参数的选择、编码方法、遗传算子、算法的运行过程、算法的收敛性和收敛速度以及遗传算法的改进和与其它方法的综合等[5]。
遗传算法
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 互动 界面 遗传 算法 演示 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)