版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
洛阳理工学院毕业设计(论文)图2-1可知,遗传算法是一种群体型操作,该操作以群体中的所有个体为对象,选择(Selection)、交叉(Crossover)、变异(Mutation)是遗传算法的3个主要操作算子,它们构成了所谓的遗传操作(GeneticOperation),使遗传算法具有了其它传统方法所没有的特性。遗传算法中包含如下5个基本要素:(1)参数编码;(2)初始群体的设定;(3)适应度函数的设计;(4)遗传操作设计;(5)控制参数的设定(主要是群体大小和使用遗传操作的概率等)。图2-SEQ图5-\*ARABIC1基本遗传算法流程图2.3.1编码用遗传算法设计一个优秀的神经网络结构,首先是要解决网络结构的编码问题;然后才能以选择、交叉、变异操作得出最优结构。基本遗传算法使用固定长度的二进制符号串来表示群体中的个体,其等位基因是由二值符号集{0,1}所组成,编码包括以下几个步骤:(1)据具体问题确定待寻优的参数;(2)对每个参数确定它的变化范围,并用一个二进制数来表示;(3)将所有表示参数的二进制数串接起来组成一个长的二进制串。除了二进制编码之外,还有浮点数编码、符号编码等方法。所谓浮点数编码方法,是指个体的每个基因值用某一范围内的一个浮点数来表示,个体的编码长度等于其决策变量的个数。就二进制编码和浮点数编码比较而言,一般二进制编码比浮点数编码搜索能力强,但浮点数编码比二进制编码在变异操作上能够保持更好的种群多样性。符号编码方法很少采用,这里就不再介绍了2.3.2适应度函数在遗传算法中,以个体适应度的大小来确定该个体被遗传到下一代群体中的概率,因此适应度函数的定义方法对遗传算法具有极大的影响。在遗传算法中,目标函数到适应度函数的映射方式需要保证以下两点:1.映射后的适应度值是非负的;2.目标函数的优化方向应对应适应度值的增大或减小方向。对于求最大值的问题一般采用如下的适应度函数和目标函数的映射关系: (2-1)式中,可以是一个输入参数在理论上的最小值,也可以是到目前所有代中的最小值,此时会随着代数而变化。对于求最小值的问题一般采用如下的适应度函数和目标函数的映射关系: (2-2)式中,Cmax可以是一个输入参数在理论上的最大值,也可以是到目前所有代中的最小值,此时Cmax会随着代数而变化。2.3.3遗传算子遗传算法操作包括选择、交叉和变异三个基本遗传算子,综合考虑三种算子,可以得知它们有如下的特点:A.遗传操作的效果和它们所取的操作概率、编码方式、群体大小、初始群体以及适应度函数的设定密切相关;B.它们的操作方式或操作策略随着具体的求解问题的不同而异。1.选择算子选择算子又称复制算子(Reproduction),是从种群中选择生命力强的染色体,产生新种群的过程。常见的有以下几种方法:(1)适应度比例选择方法(ProportionalModel),又称为轮盘赌法(RouletteWheel)或蒙特卡洛(MonteCarlo)模型,是目前最常用的选择方法,具体表达方法如下: (2-3)式中,为个体i被选中的概率,为个体i的适应度,M为群体大小。(2)确定式采样选择(DeterministicSampling),它的基本思想是按照一种确定的方式来进行选择操作,其具体操作过程如下:a、计算群体中各个个体在下一代群体中的期望生存数目Ni: (2-4)b、用的整数部分确定各个对应个体在下一代群体中的生存数目。其中表示不大于x的最大的整数。由该步可以确定出下一代群体中的个个体。c、按照Ni的小数部分对个体进行降序排序,顺序取前个个体加入到下一代群体中。至此可完全确定出下一代群体中的M个个体。(3)排序选择法(Rank-basedModel),是按个体的适应度的大小排序,然后按事先设计的概率表分配给每一个个体,作为各自的选择概率。2.交叉算子所谓交叉运算,是指对两个相互配对的染色体依据交叉概率Pc按某种方式相互交换其部分基因,从而形成两个新的个体。交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起关键作用,是产生新个体的主要方法。SGA中交叉算子采用单点交叉算子。3.变异算子所谓变异运算,是指依据变异概率Pm将个体编码串中的某些基因值用其它基因值来替换,从而形成一个新的个体。遗传算法中的变异运算是产生新个体的辅助方法,它决定了遗传算法的局部搜索能力,同时保持种群的多样性。交叉运算和变异运算的相互配合,共同完成对搜索空间的全局搜索和局部搜索。在遗传算法中使用变异算子主要有以下两个目的:1)改善遗传算法的局部搜索能力;2)维持群体的多样性,防止出现早熟现象。2.3.4遗传算法的运行参数遗传算法中需要选择的运行参数主要有个体编码串长度L、群体大小M、交叉率Pc、变异率Pm、终止代数T等(a)L:编码串长度。(b)M:种群规模。一般取为20~100;(c)Pc:交叉概率。一般取为0.4~0.99;(d)Pm:变异概率。一般取为0.0001~0.1(b)T:遗传运算的终止进化代数。一般取为100~1000;至于遗传算法的终止条件,还可以利用某种判定准则,当判定出群体已经进化成熟且不再有进化趋势时就可以终止算法的运行过程。常用的判定准则有下面两种:①连续几代个体平均适应度的差异小于某一个极小的阈值;②群体中所有个体适应度的方差小于某一个极小的阈值。2.3.5遗传算法的收敛性在遗传算法的进化过程中,如果把每一代群体看作一个状态的话,则可以把整个进化过程看作一个随机过程来进行考查,并可以用Markov链来对进化过程进行理论分析,从而得到遗传算法收敛性方面的重要结论:(1)基本遗传算法收敛于最优解的概率小于1;(2)使用保留的最佳个体策略的遗传算法能收敛于最优解的概率为1;采用有限Markov链模型上述原理可以被证明。2.4用步骤遗传算法的应对于一个需要进行优化的实际问题,一般可按下述步骤构造遗传算法:第一步:确定决策变量及各种约束条件,即确定出个体的表现型X和问题的解空间;第二步:建立优化模型,即确定出目标函数的类型及数学描述形式或量化方法;第三步:确定表示可行解的染色体编码方法,即确定出个体的基因型x及遗传算法的搜索空间;第四步:确定解码方法,即确定出由个体基因型x到个体表现型X的对应关系或转换方法;第五步:确定个体适应度的量化评价方法,即确定出由目标函数值到个体适应度F(x)的转换规则;第六步:设计遗传算子,即确定选择运算、交叉运算、变异运算等遗传算子的具体操作方法。第七步:确定遗传算法的有关运行参数,即M,G,Pc,Pm等参数。2.5基本遗传算法的不足SGA是早期的遗传算法,求解效率还不高,也就是在搜索的快速性、全局性方面还不能达到较好的效果,可从如下几方面分析:1.早期收敛遗传算法的过早收敛,是我们在用遗传算法求解问题时,经常遇到的现象。标准遗传算法不能收敛至全局最优解,一些改进的遗传算法虽能收敛到全局最优解,但所需时间很长,如何有效的防止遗传算法过早收敛,而又有较快的求解速度,是有效的使用遗传算法所应达到的两个目标。一般说来,遗传算法的过早收敛是由于群体的多样性过低,次优个体过早的控制了整个群体,新生的个体存活率低,这样以来,反复在次优个体的邻域内搜索,从而最终找不到全局最优解,而群体的多样性又跟选择压力有很大的关系,选择压力过大,群体群体内重复的个体增多,群体的多样性就会降低,但选择压力过小,虽然群体的多样性高,但不能倾向于适应度较好的个体,这时算法搜索效率极低,近似于盲目搜索。所以应使选择压力和群体的多样性保持一定的平衡。2.变异问题变异虽然可以使陷入某一超平面的个体得以解脱,但由于是随机的,不能有效地保证这一问题的解决。3.微调能力差当搜索到最优解附近时,很难精确地确定最优解的位置,也就是说,局部搜索不具备微调能力。4.GA参数的选择问题如何选取GA的参数,如种群规模N、位串长度L等,目前还靠经验来确定。5.模式(Schema)定理是SGA的理论基础,但只适用于{0,1}二值编码。第3章改进的遗传算法优化PID控制器3.1PID控制器的结构本文采用经典增量式数字PID的控制算法,控制器每个采样周期输出的控制量,是相对于上一次控制量的增加 (3-4) (3-5)式中,,,分别为比例、积分、微分系数。增量式数字PID的优点:1.增量的确定仅与最近几次误差采样值有关,不会产生大的累加误差;计算误差或计算精度问题,对控制量的计算影响较小。2.得出的是控制量的增量,误动作影响小,必要时可以通过逻辑判断限制或禁止本次输出,不会严重影响系统的工作。3.容易实现手动到自动的无冲击切换。3.2改进遗传算法3.2.1参数编码Srinvivas等人提出自适应遗传算法,即Pc和Pm能够随适应度自动改变,当种群的各个个体适应度趋于一致或趋于局部最优时,使二者增加,而当种群适应度比较分散时,使二者减小,同时对适应值高于群体平均适应值的个体,采用较低的PC和Pm,使性能优良的个体进入下一代,而低于平均适应值的个体,采用较高的PC和Pm,使性能较差的个体被淘汰。本文将采用二进制编码,因为二进制编码最易于实现遗传操作。采用“串联二进制编码”法,将这优化的参数排成一排,作为一个个体。用二进制编码的基因与实际的参数值有以下的对应关系: (3-1)其中,为待优化的参数的实际范围;n为各个参数所对应的基因编码的长度;y为二进制基因所对应的十进制数值。3.2.2初始群体的产生为了增加初始群体的多样性,有效地避免早熟现象地发生,引入了相似度的概念(两个个体中在相对应的位置上存在着相同的字符(基因)的数量定义为相似度R)。先随机生成一个较大的群体,在群体中取大于适应度平均值的个体进行相似度判断,当相似度R超过个体长度的一半时,即认为这两个个体相似,然后滤除两者中适应度小的那个个体。图2-2产生初试群体的程序流程图相似度的判断实际上是确定群体中的个体是否含有相同模式,剔除相似个体,选择不同模式的个体组成新的群体,将这个新的群体作为遗传操作的初始群体。在滤除相似个体后,当剩余的个体数达不到设定的初始群体规模Size时,将滤除掉的个体按照适应小排序,选取适应度大的一些个体来补充初始群体的不足。产生初试群体的程序流程图如2-2所示。3.2.3确定交叉概率和变异概率本文采用了一种动态确定交叉概率和变异概率的方法。交叉概率为: (3-2)变异概率为: (3-3)其中,为最大适应度函数值,为平均适应度函数值,为交叉个体中适应度函数值较大的个体的适应度函数值;为变异个体的适应度函数值。由上式可以看出,适应度函数值最大的个体的变异概率为0。这样的话,对于适应度函数值较大的个体的交叉和变异概率都较小,这样就保护了优良个体;对于适应度函数值较小的个体的交叉和变异概率较大。3.2.4遗传算子的改进下面根据优化设计要求,设计优化过程中的各个遗传算子,包括:选择算子、交叉算子和变异算子。选择算子:选择算子是遗传算法用来对群体中个体进行优胜劣汰的操作。遗传算法通过选择算子确定如何将父代群体中的个体遗传到下一代群体中去。选择算子是建立在对个体适应度评价的基础上,通过选择可以避免基因缺失,并提高全局收敛性和计算效率。常用的选择算子有多种,但对于不同的问题应选用一种甚至两种最合适的选择算子。在用遗传算法优化群体的过程中,通过对个体进行交叉、变异等遗传操作而不断产生出新的个体。虽然随着群体的进化过程会产生出越来越多的优良个体,但由于选择、交叉和变异等操作的随机性,它们也有可能会破坏掉当前群体中适应度最高的个体,这将会降低群体的平均适应度,并且对遗传算法的运行效率、收敛性都有不利的影响。所以,我们希望适应度最好的个体要尽可能的被保留到下一代中。为达到这个目的,可以使用最佳个体保留法来进行优胜劣汰操作,即当前群体中适应度最高的个体不参与交叉和变异运算。一般认为,带有选择、交叉和变异算子的标准遗传算法是不收敛的,而在标准遗传算法基础上具有最优保留特性的改进遗传算法则是全局收敛的。这里选用的选择算子是确定式采样选择法和最佳个体保留法相结合的选择方式。首先按确定式采样选择法执行遗传算法的选择操作,然后将当前群体中适应度最高的个体结构完整地复制到下一代群体中。通过最优保留操作来保留进化群体中迄今为止所发现的最优解。最佳个体保留法是指群体中适应度最大的个体不经变异、交叉算子的处理而直接复制到下一代群体的选择方法。Rudolph曾用齐次Markov链证明了使用保留最佳个体策略的遗传算法能够收敛于全局最优解的概率为1。采用最佳个体保留法的主要优点是能保证遗传算法终止时得到的最后结果是历代出现过的适应度最高的个体。本文的交叉算子采用的是单点交叉。因为本文采用的是二进制编码,变异操作就是某个基因座上的基因值取反。3.3仿真结果分析在图3-1中,曲线是采用改进后的遗传算法优化后的PID串级控制系统的相应曲线,这里取为:副调节器为比例调节器,Kp=15优化后的PID的参数为:Kp=0.1584,Ki=0.0220,Kd=0。由于采用二进制编码,每个参数选择的编码长度为10位,若三个参数都优化,运行时间太长,为了加快运行效率,这里只优化Kp,Ki两个参数,让Kd=0。图3-1用改进后的遗传算法优化前后PID串级控制系统的响应曲线从图3-1中可以看出,系统的响应速度加快,系统稳态误差减小,减小了系统的振荡次数,使系统很快趋于稳定。说明用遗传算法优化后的PID控制器控制效果好,说明改进后的遗传算法起到了主要作用,证明了遗传算法的有效性。个体评价方法:由于所求解的函数的值域总是非负的,并且优化目标是求目标函数的最小值,故可将个体的适应度直接取为对应的目标函数值,即:F(x)=f(x1,x2),将目标函数的倒数作为适应度函数:。图3-2为采用改进遗传算法后目标函数J的收敛曲线图3-2采用改进遗传算法后目标函数J的收敛曲线从图3-2可以看出,收敛曲线很快达到一个稳定的状态,说明改进后的遗传算法有很好的寻优效率。REF_Ref168484640\r\h错误!未找到引用源。REF_Ref168484646\h错误!未找到引用源。PAGE23结论本文介绍了遗传算法基本概念和基本理论,对基本遗传算法进行了改进,改进主要集中在初试群体的产生、交叉概率与变异概率的确定等方面。对于主汽温这样的大惯性、大迟延、具有时变性、现场存在诸多干扰因素的被控对象,本文采用改进的遗传算法优化PID控制器,仿真研究表明,与传统PID控制器相比,用改进的遗传算法优化后的PID控制器用于主汽温控制时具有更优的控制性能和更为满意的控制效果,这也为主汽温的控制提供了一种更有效的控制方式。由于时间仓促和本文作者水平有限,本文存在着很多的不足之处,有待今后做进一步研究完善,例如,怎样确定遗传算法的运行参数,即编码长度,初始群体的大小,终止进化的代数等,本文是在仿真过程中反复调整确定的,带有一定的盲目性,另外,还需要对遗传算法的其它方面做进一步的改进。谢辞经过几个月的努力奋斗,由于之前经验的匮乏,难免有许多考虑周全严禁的地方,如果没有@@老师的耐心的指导,以及同学们的帮助和支持,想要完成这个设计是非常困难的。在写论文的过程中,得到了@@老师耐心的指导,认真负责的监督。从课题的选择到资料的搜集整理以及论文的最终完成,@老师都始终给予我细心的指导和不懈的支持。她严肃的科学态度,严谨的治学精神,精益求精的工作作风,深深地感染和激励着我。除了敬佩王老师的专业水平外,她治学严谨和科学研究的精神也是值的我永远学习,并将积极影响我今后的学习和工作。在此谨向王老师致以崇高的敬意和衷心的感谢!大学三年来,我们能无忧无虑地学习生活,背后都是有父母的支持和鼓励,所以我们更要感谢我们的父母,为了我们他们操碎了心。最后感谢带领我们在知识海洋里遨游的老师们和无时无刻关心我的父母。参考文献[1]马平,朱燕飞,牛征.基于神经网络的主汽温控制系统.华北电力大学学报,2001[2]李敏强,寇纪淞,林丹等.遗传算法的基本理论与应用.北京:科学技术出版社,2002[3]罗万金.电厂热工过程自动调节.北京:中国电力出版社.1991[4]于湘涛,刘红军,丁俊宏等.二自由度PID内模主汽温控制.华北电力大学学报,2004[5]飞思科技产品研发中心.MATLAB辅助优化计算与设计.北京:电子工业出版社,2003[6]王小平,曹立明.遗传算法:理论、应用及软件实现.西安:西安交通大学出版社,2002[7]张恩勤.模糊控制与PID控制方法的比较.上海交通大学学报,1999[8]闻新超,周琳霞.一种基于混合编码的遗传算法.电子技术,2003[9]史奎凡,陈月辉.提高遗传算法收敛速度的方法.信息与控制,1998[10]周金荣.遗传算法的改进及其应用研究、控制与决策,1995[11]张晶涛,王伟,曹方.一种智能控制方法在300MW机组主汽温控制系统中的应用研究.中国电机工程学报,1999[12]甘世红,褚建新,顾伟.基于遗传算法的模糊控制在电弧冶炼炉中的应用.电机与控制学报,2004[13]杨献勇.热工过程自动控制.北京:清华大学出版社,2001,187~192[14]胡国四,韩生廉.遗传算法适值函数定义方法的研究.控制与决策,1999[15]刘金琨.先进PID控制及其MATLAB仿真.北京:电子工业出版社,2006[16]陈国良,孙树栋.遗传算法原理及应用.北京:国防工业出版社,1999[17]胡寿松.自动控制原理第4版.北京:科学出版社,2001[18]楼顺天,胡昌华,张伟等.基于MATLAB的系统分析与设计一模糊控制.西安:西安电子科技大学出版社,2001[19]陈国良,王煦法,庄镇泉等.遗传算法及其应用.北京:人民邮电出版社,1996[20]邵裕森.过程控制及仪表(修订版).上海:上海交通大学出版社,2007[21]陶永华,尹怡欣,葛芦生.新型PID控制系统及其应用.北京:机械工业出版社,1998[22]黄文梅,杨勇,熊桂林.系统分析与仿真-MATLAB语言应用.长沙:国防科技大学出版社,1999[23]王群主编.电气信息类专业英语.长沙:湖南大学出版社,2004[24]薛定宇著控制系统计算机辅助设计:MATLAB语言与应用(第2版).北京:清华大学出版社,2006[25]徐安主编.微型计算机控制技术.北京:科学出版社,2004[26]宋晓燕,马德库,冬健峰等.过热蒸汽温度的自动调节.自动化技术与应附录改进的遗传算法源程序%二进制编码遗传优化PID参数clearall;closeall;clc;globalrinyouttimefu1G=100;Size=30;CodeL=10;MinX(1)=0;MaxX(1)=0.4;MinX(2)=0;MaxX(2)=0.04;%用于增量式PID的优化的参数范围%MaxX(2)=0.004;E=round(rand(Size,2*CodeL));%编码初始化%*************开始运行************forkg=1:1:Gtime(kg)=kgfors=1:1:Sizem=E(s,:);BSJ=0;y1=0;y2=0;m1=m(1:1:CodeL);fori=1:1:CodeLy1=y1+m1(i)*2^(CodeL-i);endKpid(s,1)=(MaxX(1)-MinX(1))*y1/1023+MinX(1);m2=m(CodeL+1:1:2*CodeL);fori=1:1:CodeLy2=y2+m2(i)*2^(CodeL-i);endKpid(s,2)=(MaxX(2)-MinX(2))*y2/1023+MinX(2);%**********步骤1:计算目标函数*************Kpidi=Kpid(s,:);[Kpidi,BSJ]=ycpidcs3(Kpidi,BSJ);BSJi(s)=BSJ;end[OderJi,IndexJi]=sort(BSJi);BestJ(kg)=OderJi(1);BJ=BestJ(kg);Ji=BSJi+1e-10;%防止除以零fi=1./Ji;[Oderfi,Indexfi]=sort(fi);%将fi从小到大排列Bestfi=Oderfi(Size);%让Bestfi=max(fi);BestS=E(Indexfi(Size),:);%让BestS=E(m),m是max(fi)的Indexfi%kg%BJ%BestS%************步骤2:选择和复制操作*********fi_sum=sum(fi);fi_Size=(Oderfi/fi_sum)*Size;fi_S=floor(fi_Size);r=Size-sum(fi_S);Rest=fi_Size-fi_S;[RestValue,Index]=sort(Rest);%保证总个体数为Sizefori=Size:-1:Size-r+1fi_S(Index(i))=fi_S(Index(i))+1;endkk=0;fori=Size:-1:1forj=1:1:fi_S(i)kk=kk+1;TempE(kk,:)=E(Indexfi(i),:);endend%************步骤3:交叉处理**************%采用自适应交叉概率%%%%%计算适应度函数最大值和平均适应度值fmax=Bestfi;favg=sum(fi)/Size;%%%%%%%%%%%%%%%%%%%%%%n=ceil(2*CodeL*rand);fori=1:2:(Size-1)%%%%%%%找出交叉个体的适应度较大值iffi(i)>fi(i+1)f=fi(i);elsef=fi(i+1);end%%%%%%%%%计算交叉概率的公式,个体适应度大于平均适应度的,随适应度的增大,pc减小if(fmax-f)<(fmax-favg)pc=0.9*(fmax-f)/(fmax-favg);elsepc=0.9;endifkg>0.8*Gpc=pc-0.03;%接近收敛时,减小交叉概率endtemp=rand;ifpc>tempforj=n:1:2*CodeLTempE(i,j)=E(i+1,j);TempE(i+1,j)=E(i,j);endendendTempE(Size,:)=BestS;E=TempE;%***********步骤4:变异操作***********Pm=0.1-[1:1:Size]*(0.01)/Size;%fi越大,Pm越小fori=1:1:Sizeforj=1:1:2*CodeLtemp=rand;ifPm>tempifTempE(i,j)==0TempE(i,j)=1;elseTempE(i,j)=0;endendendend%保证最好的个体留下TempE(Size,:)=BestS;E=TempE;%***********************************************endBestfiBestSKpidiBest_J=BestJ(G)figure(1);plot(time,BestJ);xlabel('Times');ylabel('BestJ');figure(2);plot(timef,10*rin,'r',timef,yout,'b');xlabel('Time(s)');ylabel('rin,yout');figure(3);plot(timef,u1);xlabel('Time(s)');ylabel('u1');%***************返回PID控制器的参数**********%初始群体的产生%在群体中取大于适应度平均值的个体进行相似度判断,%当相似度R超过个体长度的一半时,即认为这两个个体相似。%相似度的判断实际上是确定群体中个体是否含有相同模式,剔除相似个体,选择不同模式的个体组成新的群体。functionE=popf(SIZE,CodeL,Size)e=round(rand(SIZE,2*CodeL));%编码初始化fors=1:1:SIZEm=e(s,:);BSJ=0;Kpidi=dcodef(m,CodeL);[Kpidi,BSJ]=ycpidcs3(Kpidi,BSJ);%调用cjcsf.m函数,该函数通过计算串级控制系统的输出来计算目标函数BSJI(s)=BSJ;endfi=1./BSJI;%由目标函数到适应度函数的转换[Oderfi,Indexfi]=sort(fi);%将fi从小到大排列fi_sum=sum(fi);f_avg=fi_sum/SIZE;gg=0;%适应度大于平均适应度的个体的数目fori=SIZE:-1:1ifOderfi(i)>f_avggg=gg+1;elsebreakendend%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%kk=0;%大于平均适应度的个体保留下来的数目dd=0;%滤除掉的个体数fori=SIZE-gg+1:1:SIZE-1%大于平均适应度的个体在sort(fi)中的序号biaozhi=0;forj=i+1:1:SIZEpp=0;%pp是两个个体的相似度forg=1:1:2*CodeLife(Indexfi(i),g)==e(Indexfi(j),g)pp=pp+1;endendifpp>=0.6*(12*CodeL)biaozhi=1;%相似dd=dd+1;del(dd,:)=e(Indexfi(i),:);%滤除掉的个体的序号,个体为e(Indexfi(i),:)breakendendifbiaozhi==0%i中的个体和j中的已经有相似的了,则跳出i循环kk=kk+1;remain(kk,:)=e(Indexfi(i),:);%保留下来的个体endend%适应度最大的个体不用进行适应度判断,肯定留下kk=kk+1;remain(kk,:)=e(Indexfi(SIZE),:);%适应度最大的个体%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%s=0;if(SIZE-gg+kk)>=Size%滤除后的总个体数足够时fori=1:1:kks=s+1;E(s,:)=remain(i,:);endfori=(SIZE-gg):-1:((SIZE-gg+1)-(Size-kk))s=s+1;E(s,:)=e(Indexfi(i),:);endelse%滤除后的个体总数不够时fori=1:1:kks=s+1;E(s,:)=remain(i,:);endfori=1:1:(SIZE-gg)%把适应度小于平均适应度的全部复制s=s+1;E(s,:)=e(Indexfi(i),:);endfori=dd:-1:(dd+1-(Size-(SIZE-gg+kk)))s=s+1;E(s,:)=del(i,:);%按照删除掉的个体的适应度大小,依次补充不足的个体数endend外文资料翻译TellthetimeasystemdesignaccordingtotheautooflistslicemachineAbstract:Especiallyappearandlivethechangeofbringingtherootformankindwiththelargescaleintegrationalongwiththequickdevelopmentofelectronicstechnique.Fromitislistslicethemachineistechnicalofappliedtheproducthasalreadywalkedintothousand10000.Theemergenceoftheelectronicstenthousandcalendarsbringspeople'slifeofmanyconveniences.AutomaticallytellthetimethesystemisusedofthesinglesliceofmachinechipisAT89C51chipses,inadditionstillinclude:DS1302chips,crystalflapelectriccircuitandresettheelectriccircuitcomposinglistslicemachine'sleastapplicationsystem,thereisalsoindependenttypekeyelectriccircuit,thedynamicstateshowsanelectriccircuitetc..Itnotonlycancarryoutvariousfunctionofnumberelectronicsclock,ifhavetocompare,adjust,infixedtime,alarmclocketc.function,andcanalsocarryoutthefunctionthatthefixed-pointtellsthetime.Keywords:MCU,Thesinglesliceofmachinemakesbellclock,code,segmentcode,showForeword:Actuallyandalwaystheclockcanprovidesecond,cent,,theday,week,monthandyeararesmallcanautomaticallyadjust,andhaveleapyearrepairfunctionwith31weathersforamonth.Thisdesignisstilladditionalthefixed-pointtellsthetimeoffunction,thusandfurthercompletedautomaticallyadesignoftellingthetimethesystem.Inbriefdescribedtheworkprincipleofhardwaresystemfirstinthetext,andattacheddiagramwiththedesignframeofthehardwaresystem,discussthisgraduationdesignconnectsthefunctionandworkprocessthatapeople'stechniqueandeachoneconnectapeoplemoldpiecevarioushardwareapplying,andconcretedescribedtocircumscribeelectriccircuittoconnectofsoft,thehardwareadjusttotry.Singlesliceofmachinetotaldesignwayofthinking(1)Designminimumhardwaresystemofasinglesliceofmachineofabilitynormalwork,theoutercircleelectriccircuitincludestoestablishakeyboard,themonitorofLCDorLED;(2)Carryonasoftwaredesign,makeuseofsinglesliceofmachinesystemtheclockdesigntheinternalclocksystemofhighaccuracyfirst,minimumandaccuratetimeisperiod1;(3)Designonsecondfoundationthatcountsamachinefora24hours,clock,anddesignsomeinfixedtimefunction;(4)Designadozenofbellsperformanceorganization,completeanautotobeatbellfunction.2.ThealternativeofhardwareAutomaticallytellthetimesystem,itneedstobewalkedaccurately,compare,adjust,infixedtime,thefixed-pointtellthetimeetc.,thereforewhatIchoseisoneAT89C51listslicemachinechip,thengotogetherwithwiththeDS12C887,keyelectriccircuit,crystalflapelectriccircuitandresetelectriccircuitandLEDdynamicstateofdisplay,cancarryout.Thekeyconnects,iscompletedbyP1.0,P1.1,P1.2andP1.3,fourfunctionsofkeysrespectivelyBE:OneisthefunctionkeyK1;OneisanumbertoadjustthekeyK2;OneiscanceltoestablishthekeyK3,usetoestablishtime;OneisK4keyses,usetoestablishinfixedtimetime.Seventypefigurestubesdrivemoldpiece,buzzertodriveamoldpieceandresetamoldpiece,keyboardmoldpieceandcrystaltoflaptoconcussanelectriccircuitmoldapiecefivepartstoconstitute.AndallpassAT89C51tocarryout.2.1seventypefigurestubesdriveamoldpieceAdoptadynamicstatescanningmethod,throughasetofsinglesliceofmachineportdrivetomergetogetherofLCDgiveoutlightatubeofoncarrying(totalYinortotalsuncarry),LCDgivesoutlightanotherfeetoftubetoconnecttouseanI/Oandcontrolitbrightputout.ThemethodcandrivemoreLCDandcontrolawaymorevivid,andeconomicallisttheresourcesoftheslicemachine.2.2buzzersdriveamoldpieceTheadoptionpresseselectricitytypebuzzerandpressesanelectricitytypebuzzertobemainlyflappedbymanyXiestoconcussamachineandpresstogiveorgetanelectricshockFengtoblareslice,resistancetomatchmachineandsympathybox,andoutershell...etc.toconstitute.ManyXiesflaptoconcussthemachineconstitutesto°fromthetransistorortheintegratedcircuit,whenafterconnectingthepower(1.5-15Vdirectcurrentworkelectricvoltage),manyXiesflaptoconcussmachinetoflapandoutputtheaudiofrequencysignalwith1.5~2.5khzs,theresistancematchesamachinepushtopresstogiveorgetanelectricshockFengtoblareasliceofphonation.2.2ResetamoldpieceListslicemachinewhileswitchingonormakeprocedurelosecontrolbecauseofinterferenceinthework,ortheprocedureintheworkisplacedinacertaindeadcirculatingstatusandallneedstoberesetinthiscase.ThefunctionofresettingisthebeginningthatmakesCPUCPUandotherfunctionpartsesallresumetoanassurancetostartstatus,andrestartaworkfromthisstatus.The89S51listslicemachineresetstodependanexternalelectriccircuitrealization,thesignalisledafeetimportationbyRESET(RST),GaoDianPingiseffective,whileflappingtoconcussamachinework,aslongaskeepingRSTtoleadfeettwomachineperiodsofGaoDianPing,singlesliceofmachinenamelyreset.Afterresetting,thePCprocedurecountsthecontentsofmachineas0000Hs,thecontentsisconstantinRAMinsidetheslice.Resettingelectriccircuittogenerallyhavetoupwirereply,moveaswitchtoresettingandautomaticallyresetelectriccircuitis3kindsof,thisadoptionhandmovestoresetaway.2.3KeyboardmoldpieceKeyboardstructure:Thekeyboardcanisdividedinto2types:independentconjunctiontypeanddeterminant(matrixtype),eachpressittranslateacodemethodandcanisdividedintocodeanddon'tcodetwo,hereuseanindependentconjunctiontypedon'tcodeakeyboard,theadvantageofthiskindofkeyboardstructureisthattheelectriccircuitissimple;Theweaknessistobekeytocountmore,takeupmoreI/Oline.2.4ThecrystalflapstoconcussanelectriccircuitmoldpieceThecrystalflapsthefunctionquartzcrystalofconcussingthemachinetoflaptoconcussamachinetoalsocallquartzcrystaltheXieflapsamachine,itusestothestablefrequencyandthechoicefrequency,being1kindcanreplacethecrystalXiethattheLCXieflapsabacktracktoflapacomponent,thisiscrystaltoflapthequartzthattheelectriccircuitchoosescrystalflapfrequencyto6Mhzs.Theclockperiodisasinglesliceofmachinetocircumscribecrystalflapofreciprocal,forexample12Msofcrystalflap,itstimetheperiodisa1/12us),isthemostbasicinthecalculator,minimumoftimeunit.3.Thedesignprojectofsoftware3.1Systemworkflow1.Theclockshows:LCDfromleftarriverightshowatatime,cent,second,adopttoaccountfor24hours.2.Thekeycontrolsfunction:Adopt4independentkeyboards,anamongthosearefunctionkeys;Oneisanumberadjustmentkey;Oneiscanceltoestablishkey,usetoestablishtime;OneisanALMkey,usetoestablishinfixedtimetime.3.Timeshows:Afterswitchingonelectricity,thesystemautomaticallygetsintoaclockconstitution,from00:00:When00beginningsaccount,cansetcurrenttimeatthistime.4.Theadjustmentoftime:Pressfunctionkey,systemsuggestedwhilestoppingaccounting,getintotimetosetstatus,systemthecontentsthatshowahour,restotherisplacedinwholedarkstatusesandwaitsforakeyconstitution.Atthistimepresstomoveahourwilladdafterthenumberadjustment'skey1,pressmovetocancelkeybehindagainbackagaintimeshowstatusafresh;Ifagainpressmovefunctionkeytothenusetoadjustminute,otherinhourandsecondindicateatthistimewholedark,canincreasetotheminuteafteradjustingkeyaccordingtothenumber1adjust,pressmovetocancelkeybehindagainbackagaintimeshowstatusafresh;Againpressmovefunctionkeytothenusetoadjustsecond,otherinhourandminuteindicateatthistimewholedark,secondshowscurrentnumber,thedarknumberadjustmentkeycancarryonincreasingtosecond1adjust,pressmovetocancelkeybehindandthenbackagaintimeshowsstatusafresh,pressmoveafterthefunctionkeysystemwillautofromsetbehindoftimeshowedwhilestartingaccounting.5.Alarmclockconstitution/theQimake:PressK4keyses,whenthesystemcontinuestoaccountbutshowto00:00:00,pressagaintomovefunctionkeyjuniorstoestablishstatusintothealarmclockatthistime,showafterestablishingprocessandtimetoadjustahomology,butfinallypressingthefunctionkeyassurancetimeinfixedtime30Ssbehindautomaticallystartalarmclockfunctioninfixedtime,andresumetimetoshow.Infixedtimetimearrives,thebuzzerafterblaringtocallthe1minautomaticallystopstomake,cansettleonceandneedtore-establishnexttimejustwhileestablishingeachtime.3.2ThelordprocedureprocessdesignsThelordprocedurebeginningstartstoturn,andopeninterruption,thencarryoutinterruptionserviceprocedure.Carryout24hourssystemelectricclock,8figurestubessuggest,centsecondshowsaformatwhileshowing:23-59-59(thehouristeniffor0don'tshow)toscheduletotimestartbuzzeremulationtobeatbell,buzzerBEEP:Use4keys,3keysarebeenusedtoadjusttime,anotheradjusttochoosekeySET_KEYforcompulsivedozenbellbutton:P1.0;PassingchoosesthatthekeychoosesanadjustmentandpicksoutaflickerincrementkeyADD_KEY:P1.1;Presstomaketopickouttoaddatatime1reducekeyDEC_KEY;P1.2;Presstomaketopickouttoreduceatatime1,ifislongtopressADD_KEYorDEC_KEY,whilebeingthencarryonadjustingafteridentifyingenterquickly,stopflickeratthistime.3.3KeyprocedureGetintokeyprocedure,doesthejudgmentincludekeytopress?Haveno,re-judgewhilethenadjustingtousetopostpone,ifarrive,trembleprocedurewhileadjustingtousetopostpone,againthejudgmenthaskeytopresstodeny,didn'tthenreturntopostponeaschedulepreface,ifhaveakey,thenjudgekey,heapinn,judgmentwhetherkeyreleases,haveno,continuetojudge,release,theninputkeytosendintotiredaddamachine,thenreturnlordprocedure.3.4ShowprocedureShowaprocedureadoptiondynamicstatesuggests,iscontroledthatfigurestubebythecodetosuggest,fromsegmentcodecontrolthefigurestubeshowwhatnumber,accordingtobreakofftheprocedureshowtimetochecksformtoshownumber,fromthefirstarrivethefourthpursuepointbright,atthesametimeeachtimeshow1tojudgefouratatimefinishshowinghaveno,haveneverfinishedshowingtocarryonshowingnext,showthatfinishingisfromthefirstagaincircularly.Endlanguage:ThisdesignisusedofthesinglesliceofmachinechipisAT89C51chipses,inadditionstillinclude:DS1302chips,crystalflapelectriccircuitandresettheelectriccircuitcomposinglistslicemachine'sleastapplicationsystem,thereisalsoindependenttypekeyelectriccircuit,thedynamicstateshowsanelectriccircuitetc..Itnotonlycancarryoutvariousfunctionofnumberelectronicsclock,ifhavetocompare,adjust,infixedtime,alarmclocketc.function,andcanalsocarryoutthefunctionthatthefixed-pointtellsthetime.Secondlyelaboratedtheprocessofprocedureandcarryoutprocess.Thisdesignistoeditcollectedmaterialslanguagebythebasiclanguageoflistslicemachinetocarryonasoftwaredesign,thedesignadoptionmoldpieceofsoftwareturnsstructureandmakethelogicofprogramdesignrelatetomoresimpleanddirectclear.Makethehardwaremoderateunderthecontrolofsoftwaretooperate.基于单片机的自动报时系统设计摘要:随着电子技术的迅速发展,特别是随大规模集成电路出现,给人类生活带来了根本性的改变。由其是单片机技术的应用产品已经走进了千家万户。电子万年历的出现给人们的生活带来的诸多方便。自动报时系统用到的单片机芯片是AT89C51芯片,除此之外还包括:DS1302芯片、晶振电路和复位电路构成单片机最小应用系统,还有独立式按键电路,动态显示电路等等。它不仅能实现数字电子时钟的各种
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度个人合伙艺术品交易公司退伙收益分配合同4篇
- 2025年度个人入股合作协议书范本:旅游文化产业股权投资协议4篇
- 2024年优化金融环境治理金融乱象攻坚战实施方案
- 二零二五年度股权抵押融资租赁合同范本3篇
- 二零二五年度金属模具加工与维修服务合同3篇
- 2025年销售薪资与绩效奖金合同范本
- 影视培训网上课程设计
- 2025年度酒店餐饮废弃物资源化利用技术研发合同3篇
- 2025年重型货车抵押贷款合同模板4篇
- 2025年水果产品线上线下联合促销合同3篇
- 品牌策划与推广-项目5-品牌推广课件
- 信息学奥赛-计算机基础知识(完整版)资料
- 发烟硫酸(CAS:8014-95-7)理化性质及危险特性表
- 数字信号处理(课件)
- 公路自然灾害防治对策课件
- 信息简报通用模板
- 社会组织管理概论全套ppt课件(完整版)
- 火灾报警应急处置程序流程图
- 耳鸣中医临床路径
- 安徽身份证号码前6位
- 分子生物学在动物遗传育种方面的应用
评论
0/150
提交评论