第一篇:遗传算法的应用及研究动向
遗传算法的应用及研究动向
摘要 本文主要介绍了遗传算法的基本概念和基本原理,分析说明了遗传算法应用领域,指出了遗传算法在应用中的几个关键问题,同时简要介绍了遗传算法研究新动向及存在的问题。
关键词 遗传算法;编码机制;遗传算子;适应度函数
一、遗传算法的基本原理
遗传算法类似于自然进化,通过作用于染色体上基因寻找最好的染色体来求解问题。与自然界相似,遗传算法对求解问题的本身一无所知,它所需要的仅是对遗传算法所产生的染色体有更多的繁殖机会。在遗传算法中,通过随机方式产生若干个所求解问题的数字编码,即染色体,形成初始种群;通过适应度函数给每个个体一个数值评价,淘汰低适应度的个体,选择高适应度的个体参加遗传操作,经过遗传操作后的个体集合成下一代新的种群,对这个新种群进行下一轮进化[1]。
二、遗传算法的应用
遗传算法在应用中最关键的问题有如下3 个[2-3]。
(1)串的编码方式。本质是问题编码。一般把问题的各种参数用二进制编码,构成子串;然后把子串拼接构成“染色体”串。串长度及编码形式对算法收敛影响极大。
(2)适应函数的确定。适应函数(fitness function)也称对象函数(object function),这是问题求解品质的测量函数;往往也称为问题的“环境”。一般可以把问题的模型函数作为对象函数;但有时需要另行构造。
(3)遗传算法自身参数设定。遗传算法自身参数有3 个,即群体大小n、交叉概率Pc 和变异概率Pm。群体大小n 太小时难以求出最优解,太大则增长收敛时间。一般n=30-160。交叉概率Pc 太小时难以向前搜索,太大则容易破坏高适应值的结构。一般取Pc=0.25-0.75。变异概率Pm太小时难以产生新的基因结构,太大使遗传算法成了单纯的随机搜索。一般取Pm=0.01-0.2。
遗传算法的主要应用领域[4-5]在于函数优化(非线性、多模型、多目标等),机器人学(移动机器人路径规划、关节机器人运动轨迹规划、细胞机器人的结构优化等),控制(瓦斯管道控制、防避导弹控制、机器人控制等),规划(生产规划、并行机任务分配等),设计(VLSI 布局、通信网络设计、喷气发动机设计等),组合优化(TSP 问题、背包问题、图分划问题等),图像处理(模式识别、特征提取、图像恢复等),信号处理(滤波器设计等),人工生命(生命的遗传进化等)。
三、遗传算法的研究新动向(1)基于遗传算法的机器学习
这一新的研究方向把遗传算法从历史离散的搜索空间的优化搜索算法扩展到具有独特的规则生成功能崭新的机器学习算法。这一新的学习机制对于解决人工智能中知识获取和知识优化精炼的瓶颈难题带来了希望。遗传算法作为一种搜索算法从一开始就与机器学习有着密切联系。分类器系统CS-1 是GA 的创立Holland 教授等实现的第一个基于遗传算法的机器学习系统。分类器系统在很多领域都得到了应用。例如,分类器系统在学习式多机器人路径规划系统中得到了成功应用;Goldberg 研究了用分类器系统来学习控制一个煤气管道仿真系统;Wilson 研究了一种用于协调可移动式视频摄像机的感知运动的分类器系统等。(2)遗传算法与其他计算智能方法的相互渗透和结合
遗传算法正日益和神经网络、模糊推理以及混沌理论等其它智能计算方法相互渗透和结合,以达到取长补短的作用。近年来在这方面已经取得了不少研究成果,并形成了“计算智能”的研究领域,这对开拓21 世纪中新的智能计算技术具有重要意义。GA 的出现使神经网络的训练(包括连接权系数的优化、网络空间结构的优化和网络的学习规划优化)有了一个崭新的面貌,目标函数既不要求连续,也不要求可微,仅要求该问题可计算,而且搜索始终遍及整个解空间,因此容易得到全局最优解。(3)并行处理的遗传算法
并行处理的遗传算法的研究不仅是遗传算法本身的发展,而且对于新一代智能计算机体系结构的研究都是十分重要的。GA 在操作上具有高度的并行性,许多研究人员都在探索在并行机上高效执行GA 的策略。研究表明,只要通过保持多个群体和恰当地控制群体间的相互作用来模拟并执行过程,即使不使用并行计算机,我们也能提高算法的执行效率。在并GA 的研究方面,一些并GA 模型已经被人们在具体的并行机上执行了;并行GA 可分为两类:一类是粗粒度并行GA,主要开发群体间的并行性;另一类是细粒GA,主要开发一个群体中的并行性。(4)遗传算法与人工生命的渗透
人工生命是用计算机、机械等人工媒体模拟或构造出的具有自然生物系统特有行为的人造系统,人工生命与遗传算法有着密切的关系,基于遗传算法的进化模型是研究人工生命现象的重要理论基础。虽然人工生命的研究尚处于启蒙阶段,但遗传算法已在其进化模型、学习模型、行为模型、自组织模型等方面显示出了初步的应用能力,并且必将得到更为深入的应用和发展。人工生命与遗传算法相辅相成,遗传算法为人工生命的研究提供了一个有效的工具,人工生命的研究也必将促进遗传算法的进一步发展。(5)遗传算法与进化规则及进化策略的结合
遗传算法、进化规则及进化策略是演化计算的3 个主要分支,这3 种典型的进化算法都以自然界中生物的进化过程为自适应全局优化搜索过程的借鉴对象,所以三者之间有较大的相似性;另一方面,这3 种算法又是从不完全相同的角度出发来模拟生物进化过程,分别是依据不同的生物进化背景、不同的生物进化机制而开发出来的,所以三者之间也有一些差异。随着各种进化计算方法之间相互交流深入,以及对各种进化算法机理研究的进展,要严格地区分它们既不可能、也没有必要。在进化计算领域内更重要的工作是生物进化机制,构造性能更加优良、适应面更加广泛的进化算法。
参考文献
[1] 张文修,梁怡.遗传算法的教学基础[M].西安:西安交通大学出版社,2000.[2] 余建坤,张文彬,陆玉昌.遗传算法及其应用[J].云南民族学院学报,2002(4).[3] 蔡自兴,徐光祐.人工智能及应用[M].北京:清华大学出版社,2003.[4]蒋腾旭.智能优化算法概述[J].电脑知识与技术,2007(8).[5]任庆生,叶中行.遗传算法中常用算子的分析[J].电子学报,2005(5).
第二篇:遗传算法学习心得体会
遗传算法
概念
遗传算法是模仿自然界生物进化机制发展起来的随机全局搜索和优化方法,它借鉴了达尔文的进化论和孟德尔的遗传学说。其本质是一种高效、并行、全局搜索的方法,它既能在搜索中自动获取和积累有关空间知识,并自适应地控制搜索过程以求得最优解遗传算法操作使用适者生存的原则,在潜在的解决方案种群中逐次产生一个近视最优方案。在遗传算法的每一代中,根据个体在问题域中的适应度值和从自然遗传学中借鉴来的再造方法进行个体选择,产生一个新的近视解。这个过程导致种群中个体的进化,得到的新个体比原个体更适应环境,就像自然界中的改造一样。
应用
遗传算法在人工智能的众多领域具有广泛应用。例如,机器学习、聚类、控制(如煤气管道控制)、规划(如生产任务规划)、设计(如通信网络设计、布局设计)、调度(如作业车间调度、机器调度、运输问题)、配置(机器配置、分配问题)、组合优化(如tsp、背包问题)、函数的最大值以及图像处理和信号处理等等。遗传算法多用应与复杂函数的优化问题中。原理
遗传算法模拟了自然选择和遗传中发生的复制、交叉、和变异等现象,从任一初始种群出发,通过随机选择、交叉、变异操作,产生一群更适合环境的个体,使群体进行到搜索空间中越来越好的区域,这样一代一代地不断繁衍进化,最后收敛到一群最适合环境的个体求得问题的最优解。
算法流程 1.编码:解空间中的解数据x,作为作为遗传算法的表现型形式。从表现
型到基本型的映射称为编码。遗传算法在进行搜索之前先将解空间的解数据表示成遗传空间的基本型串结构数据,这些串结构数据的不同的组合就构成了不同的点。2.初始种群的形成:随机产生n个初始串数据,每个串数据称为一个个体,n个串数据构成了一个群体。遗传算法以这n个串结构作为初始点开始迭代。设置进化代数计数器t 0;设置最大进行代数t;随机生成m个个体作为初始群体p(0)。3.适应度检测:适应度就是借鉴生物个体对环境的适应程度,适应度函数 就是对问题中的个体对象所设计的表征其优劣的一种测度。根据具体问题计算p(t)的适应度。
4.选择:将选择算子作用于群体。选择的目的是把优化的个体直接遗传到
下一代或通过配对交叉产生新的个体再遗传到下一代。选择操作是建立在群体中个体的适应度评估基础上的。
5.交叉:将交叉算子作用于群体。所谓交叉是指把两个父代个体的部分结
构加以替换重组而生成新个体的操作。遗传算法中起核心作用的就是交叉算子。6.变异:将变异算子作用于群体。即是对群体中的个体串的某些基因座上的基因值作变动。
群体p(t)经过选择、交叉、变异运算之后得到下一代群体p(t+1)。7.终止条件判断:若t<=t,则t=t+1,转到第3步,否则以进化过程中所得
到的具有最大适应度个体作为最优解输出,终止计算。
遗传算法流程图如下图所示: 遗传算法
下几种:适应度比例方法、随机遍历抽样法、局部选择法。
其中轮盘赌选择法是最简单也是最常用的选择方法。在该方法中,各个个体的选择概率和其适应度值成比例。设群体大小为n,其中个体i的适应度为,则i 被选择的概率,为遗传算法
2、交叉:在自然界生物进化过程中起核心作用的是生物遗传基因的重组(加上变异)。同样,遗传算法中起核心作用的是遗传操作的交叉算子。所谓交叉是指把两个父代个体的部分结构加以替换重组而生成新个体的操作。通过交叉,遗传算法的搜索能力得以飞跃提高。
交叉算子根据交叉率将种群中的两个个体随机地交换某些基因,能够产生新的基因组合,期望将有益基因组合在一起。根据编码表示方法的不同,可以有以下的算法: b)二进制交叉(binary valued crossover)1)单点交叉(single-point crossover)2)多点交叉(multiple-point crossover)3)均匀交叉(uniform crossover)4)洗牌交叉(shuffle crossover)5)缩小代理交叉(crossover with reduced surrogate)。
3、变异
变异算子的基本内容是对群体中的个体串的某些基因座上的基因值作变动。依据个体编码表示方法的不同,可以有以下的算法: a)实值变异 b)二进制变异。
一般来说,变异算子操作的基本步骤如下: a)对群中所有个体以事先设定的编译概率判断是否进行变异 b)对进行变异的个体随机选择变异位进行变异。
例:简单一元函数优化
求下面函数的最大值:
f(x)=xsin(10*pi*x)+2.0,-1<=x<=2;程序: figure(1);fplot(variable.*sin(10*pi*variable)+2.0,[-1,2]);%画出函数曲线 %定义遗传算法参数
nind=40;%个体数目(number of individuals)maxgen=25;%最大遗传代数(maximum number of generations)preci=20;%变量的二进制位数(precision of variables)ggap=0.9;%代沟(generation gap)trace=zeros(2, maxgen);%寻优结果的初始值 fieldd=[20;-1;2;1;0;1;1];%区域描述器(build field descriptor)chrom=crtbp(nind, preci);%初始种群 gen=0;%代计数器 variable=bs2rv(chrom, fieldd);
%计算初始种群的十进制转换
objv=variable.*sin(10*pi*variable)+2.0;%计算目标函数值 while gen 基本概念 遗传算法(genetic algorithms, ga)是一类借鉴生物界自然选择和自然遗传机制的随机化搜索算法。 它模拟自然选择和自然遗传过程中发生的繁殖、交叉和基因突变现象,在每次迭代中都保留一组候选解,并按某种指标从解群中选取较优的个体,利用遗传算子(选择、交叉和变异)对这些个体进行组合,产生新一代的候选解群,重复此过程,直到满足某种收敛指标为止。ga的组成:(1)编码(产生初始种群) (2)适应度函数 (3)遗传算子(选择、交叉、变异) (4)运行参数 编码 基因在一定能够意义上包含了它所代表的问题的解。基因的编码方式有很多,这也取决于要解决的问题本身。常见的编码方式有: (1)二进制编码,基因用0或1表示(常用于解决01背包问题)如:基因a:00100011010(代表一个个体的染色体)(2)互换编码(用于解决排序问题,如旅行商问题和调度问题) 如旅行商问题中,一串基因编码用来表示遍历的城市顺序,如:234517986,表示九个城市中,先经过城市2,再经过城市3,依此类推。 (3)树形编码(用于遗传规划中的演化编程或者表示) 如,问题:给定了很多组输入和输出。请你为这些输入输出选择一个函数,使得这个函数把每个输入尽可能近地映射为输出。 编码方法:基因就是树形结构中的一些函数。 (4)值编码(二进制编码不好用时,解决复杂的数值问题) 在值编码中,每个基因就是一串取值。这些取值可以是与问题有关任何值:整数,实数,字符或者其他一些更复杂的东西。 适应度函数 遗传算法对一个个体(解)的好坏用适应度函数值来评价,适应度函数值越大,解的质量越好。适应度函数是遗传算法进化过程的驱动力,也是进行自然选择的唯一标准,它的设计应结合求解问题本身的要求而定。 如tsp问题,遍历各城市路径之和越小越好,这样可以用可能的最大路径长度减去实际经过的路径长度,作为该问题的适应度函数。 遗传算子——选择 遗传算法使用选择运算来实现对群体中的个体进行优胜劣汰操作:适应度高的个体被遗传到下一代群体中的概率大;适应度低的个体,被遗传到下一代群体中的概率小。选择操作的任务就是按某种方法从父代群体中选取一些个体,遗传到下一代群体。sga(基本遗传算法)中采用轮盘赌选择方法。 轮盘赌选择又称比例选择算子,基本思想:各个个体被选中的概率与其适应度函数值大小成正比。设群体大小为n,个体i 的适应度为 fi,则个体i 被选中遗传到下一代群体的概率为: 遗传算子——交叉 所谓交叉运算,是指对两个相互配对的染色体依据交叉概率按某种方式相互交换其部分基因,从而形成两个新的个体。交叉运算在ga中起关键作用,是产生新个体的主要方法。1.单交叉点法(用于二进制编码) 选择一个交叉点,子代在交叉点前面的基因从一个父代基因那里得到,后面的部分从另外一个父代基因那里得到。 如:交叉前: 00000|***00 11100|***01 交叉后: 00000|***01 11100|***00 2.双交叉点法(用于二进制编码) 选择两个交叉点,子代基因在两个交叉点间部分来自一个父代基因,其余部分来自于另外一个父代基因.如:交叉前: 01 |0010| 11 11 |0111| 01 交叉后: 11 |0010| 01 01 |0111| 11 3.基于“ 与/或 ”交叉法(用于二进制编码)对父代按位与”逻辑运算产生一子代a;按位”或”逻辑运算产生另一子代b。该交叉策略在解背包问题中效果较好.如:交叉前: 01001011 11011101 交叉后: 01001001 11011111 4.单交叉点法(用于互换编码) 选择一个交叉点,子代的从初始位置出发的部分从一个基因复制,然后在另一个基因中扫描,如果某个位点在子代中没有,就把它添加进去。如:交叉前: 87213 | 09546 98356 | 71420 交叉后: 87213 | 95640 98356 | 72104 5.部分匹配交叉(pmx)法(用于互换编码)先随机产生两个交叉点,定义这两点间的区域为匹配区域,并用交换两个父代的匹配区域。 父代a:872 | 130 | 9546 父代b:983 | 567 | 1420 变为: temp a: 872 | 567 | 9546 temp b: 983 | 130 | 1420 对于 temp a、temp b中匹配区域以外出现的数码重复,要依据匹配区域内的位置逐一进行替换。匹配关系:1<——>5 3<——>6 7<——>0 子代a:802 | 567 | 9143 子代b:986 | 130 | 5427 6.顺序交叉法(ox)(用于互换编码) 从父代a随机选一个编码子串,放到子代a的对应位置;子代a空余的位置从父代b中按b的顺序选取(与己有编码不重复)。同理可得子代b。父代a: 872 | 139 | 0546 父代b: 983 | 567 | 1420 交叉后: 子代a: 856 | 139 | 7420 子代b: 821 | 567 | 3904 7.循环交叉(cx)法(用于互换编码)cx同ox交叉都是从一个亲代中取一些城市,而其它城市来自另外一个亲代,但是二者不同之处在于:ox中来自第一个亲代的编码子串是随机产生的,而cx却不是,它是根据两个双亲相应位置的编码而确定的。 父代a:1 2 3 4 5 6 7 8 9 | | | | | 父代a:5 4 6 9 2 3 7 8 1 可得循环基因:1->5->2->4->9->1 用循环的基因构成子代a,顺序与父代a一样 1 2 4 5 9 用父代b剩余的基因填满子代a: 1 2 6 4 5 3 7 8 9 子代b的编码同理。(循环基因 5->1->9->4->2->5) 遗传算子——变异 变异是指依据变异概率将个体编码串中的某些基因值用其它基因值来替换,从而形成一个新的个体。ga中的变异运算是产生新个体的辅助方法,它决定了ga的局部搜索能力,同时保持种群的多样性。交叉运算和变异运算的相互配合,共同完成对搜索空间的全局搜索和局部搜索。 注:变异概率pm不能太小,这样降低全局搜索能力;也不能太大,pm > 0.5,这时ga退化为随机搜索。篇三:计算智能学习心得体会 计算智能学习心得体会 本学期我们水利水电专业开了“计算智能概论”这门课,有我们学院的金菊良教授给我们授课,据说这门课相当难理解,我们课下做了充分的准备,借了计算智能和人工智能相关方面的书籍,并提前了解了一点相关知识,我感觉看着有点先进,给我们以往学的课程有很大区别,是一种全新的概念和理论,里面的遗传算法、模糊集理论、神经网络更是闻所未闻,由于课前读了一些书籍,我以为课堂上应该能容易理解一点,想不到课堂上听着还是相当玄奥,遗传算法还好一点,因为高中学过生物遗传,遗传算法还能理解一点。像模糊集理论神经网络便不知所云了。虽然金老师讲课生动形象,幽默风趣,而且举了好多实际的例子,但有一些理论有点偏难。 多关于ci的解释。 虽然有好多计算智能理论还不太清楚,但是我对新知识还是相当渴望的,因为我本身比较爱学习,且喜欢读书。我感觉学到了许多知识:计算智能是一门经验科学,它研究自然的或人工的智能行为形成之原理以“推理即计算”为基本假设,开发某种理论、说明某项智能可以算法化,从而可以用机器模拟和实现;寻求和接受自然智能之启迪,但不企图完全仿制人类智能,其中心工程目标是研究设计和建立智能计算系统的方法。 由于我们只有16课时,所以我们学的面并不广,金老师主要教了一些计算智能方面的经典理论,我们所学的计算智能所涉及的领域主要包括以下三方面:遗传算法、人工神经网络方法和模糊集理论。 遗传算法最早由美国michigan大学john h.holland教授提出,按照生物进化过程中的自然选择(selection)、父代杂交(crossover)和子代变异(mutation)的自然进化(natural evolution)方式,编制的计算机程序,能够解决许多复杂的优化问题,这类新的优化方法称之为遗传算法(genetic algorithm,ga)[7]。ga模拟生物进化过程中的主要特征有:(1)生物个体的染色体(chromosomes)的结构特征,即基因码序列(series of genetic code)决定了该个体对其生存环境的适应能力。(2)自然选择在生物群体(population)进化过程中起着主导作用,它决定了群体中那些适应能力(adaptability)强的个体能够生存下来并传宗接代,体现了“优胜劣汰”的进化规律。(3)个体繁殖(杂交)是通过父代个体间交换基因材料来实现的,生成的子代个体的染色体特征可能与父代的相似,也可能与父代的有显著差异,从而有可能改变个体适应环境的能力。 (4)变异使子代个体的染色体有别于其父代个体的染色体,从而也改变了子代个体对其环境的适应能力。(5)生物的进化过程,从微观上看是生物个体的染色体特征不断改善的过程,从宏观上看则是生物个体的适应能力不断提高的过程。作为利用自然选择和群体遗传机制进行高维非线性空间寻优的一类通用方法,遗传算法(ga)不一定能寻得最优(optimal)点,但是它可以找到更优(superior)点,这种思路与人类行为中成功的标志是相似的。例如不必要求某个围棋高手是最优的,要战胜对手只需他(她)比其对手更强即可。因此,ga可能会暂时停留在某些非最优点上,直到变异发生使它迁移到另一更优点上。遗传算法随编码 方式、遗传操作算子的不同而表现为不同形式,因此难以象传统的共轭梯度法那样从形式上给以明确定义,它的识别标志在于它是否具有模拟生物的自然选择和群体遗传机理这一内在特征。目前国内外普遍应用的实施方案是标准遗传算法(simple genetic algorithm,sga)。bp神经网络 bp神经网络是用反向传播学习算法(back-propagation algorithm,bp算法)训练的一种多层前馈型非线性映射网络,网络中各神经元接受前一级的输入,并输出到下一级,网络中没有反馈联接。bp神经网络通常可以分为不同的层(级),第j层的输入仅与第j–1层的输出联接。由于输入层节点和输出层节点可与外界相连,直接接受环境的影响,所以称为可见层,而其它中间层则称为隐层(hidden layer)。决定一个bp神经网络性质的要素有三个:网络结构、神经元作用函数和学习算法,对这三个要素的研究构成了丰富多彩的内容,尤其是后者被研究得最多。bp算法是目前应用最为广泛且较成功的一种算法,它解决了多层前馈网络的学习问题,从而使该网络在各方面获得了广泛应用。它利用梯度搜索技术(gradient search technique)使代价函数(cost function)最小化。bp算法把一组样本的输入输出问题归纳为一非线性优化问题,它使用了最优化方法中最常用的负梯度下降算法。用迭代运算求解网络权重和阈值对应于网络的学习记忆过程,加入隐层节点使得优化问题的可调参数增加,从而可得到更精确的解。 模糊集理论 模糊集理论(又称模糊数学,fuzzy mathematics)就是应用模糊集这一模拟人脑模糊思维的数学工具,来描述、分析、识别、分类、判断、推理、决策和控制各种模糊事物所形成的一门现代应用数学分支学科。经典数学仅考虑现实世界的数量而抛弃现实世界的质量,而模糊集理论则反映了现实世界数量与质量的统一性,是对经典数学的一种补充和完善。定义模糊集、模糊关系的不同运算(目前主要是代数运算),就可得到相应的不同模糊数学方法。目前已研究成熟并广为应用的模糊数学方法主要有模糊模式识别、模糊聚类分析、模糊综合评价、模糊推理、模糊控制等方法。在现代科学技术体系中定性因素和主观因素定量化处理的方法至今仍很少,而模糊数学方法正是其中的典型代表,目前已在各科学和工程领域得到了广泛的成功应用,其主要原因在于它异于其它方法的一些显著特点:(1)模糊集的引入改善了二值逻辑中硬性的分类方法,是普通集合的推广,使模糊数学方法更加接近于广泛存在模糊性和不精确性的现实世界,也更加接近于人类思维方式。这些真实性使得模糊数学方法能很好地平衡系统的复杂性与描述系统的精确性,也有助于模糊数学方法充分提取各种专家经验信息和其它人类语言信息。(2)当系统为多输入多输出、强非线性、定性信息与定量信息混杂的动态系统时,系统的数学模型非常复杂或根本就不存在确定性数学模型,常规方法难以或不能有效处理这样的复杂系统,而模糊数学方法可以用建立在语言型经验之上的模糊集及其运算就可以简便有效地处理,有时甚至不需要辅以确定的数学模型。(3)模糊数学方法可以直接利用人类语言型概念及其运算,篇四:遗传算法总结 遗传算法总结 遗传算法是借鉴生物的自然选择和遗传进化机制而开发出的一种全局自适应概率搜索算法。 一、遗传算法流程图 图1 遗传算法流程图 二、遗传算法的原理和方法 1)染色体编码 把一个问题的可行解从其解空间转换到遗传算法所能处理的搜索空间的转换方法就称为编码。de jong曾提出了两条操作性较强的实用编码原则:编码原则一:应使用能易于产生与所求问题相关的且具有低阶、短定义长度模式的编码方案;编码原则二:应使用能使问题得到自然表示或描述的具有最小编码字符集的编码方案。 编码方法主要有以下几种:二进制编码方法、格雷码编码方法、浮点数编码方法、符号编码方法、参数级联编码方法、多参数交叉编码方法。2)适应值计算 由解空间中某一点的目标函数值f(x)到搜索空间中对应个体的适应度函数值 fit(f(x))的转换方法基本上有一下三种: a. 直接以待解的目标函数值f(x)转化为适应度函数值fit(f(x)),令 ?f(x)目标函数为最大化函数 fit(fx())= ? ??f(x)目标函数为最小化函数 ?cmax?f(x)f(x)?cmax b. 对于最小值的问题,做下列转化fit(f(x))??,其中cmax是 0 其他? f(x)的最大输入值。 c. 若目标函数为最小值问题,fit(f(x))? 1 , c?0, c?f(x)?0 1?c?f(x)1 , c?0, c?f(x)?0 1?c?f(x)若目标函数为最大值问题,fit(f(x))?3)选择、交叉、变异 遗传算法使用选择算子来对群体中的个体进行优胜劣汰操作:根据每个个体的适应度值大小选择。适应度较高的个体被遗传到下一代群体中的概率较大;适应度较低的个体的被遗传到下一代群体中的概率较小。其中选择的方法有:轮盘赌选择、随机竞争选择、最佳保留选择、无回放随机选择、确定式选择等。 遗传算法中的所谓交叉运算,是指对两个相互配对的染色体按某种方式相互交换其部分基因,从而形成两个新的个体。交叉操作主要有单点交叉、两点交叉与多点交叉、均匀交叉和算数交叉四种。 遗传算法中的变异运算,是指将个体染色体编码串中的某些基因座上的基因值用该基因座的其他基因来替换,从而形成一个新的个体。主要有基本位变异、均匀变异、边界变异等几种变异操作方法。4)控制参数选择 交叉概率pcpm 三、算例 min f(x1,x2)?(x1?3)2?(x2?2)2 2 ?g1(x1,x2)?x12?x2?5? s.t.?h1(x1,x2)?x1?2x2?4?0?x,x?10,x?n 121?(1)1)三种不同的遗传方法 方法一:原模型中x1、x2均为决策变量,操作如下。a.采用混合整数编码,对x1进行十进制编码,x2进行二进制编码; b.适应度函数值采用fit(f(x1,x2))? 1 计算,其中 c?f(x1,x2)c???max{0,g1(x1,x2)?5}???max{0,|h1(x1,x2)?4|},?=?=10000; c.采用赌轮盘选择、单点交叉和基本位变异; d.pc=0.8,pm=0.1,遗传代数为200,种群中个体数100; e.终止条件为连续十次最优个体保持不变或遗传代数到达200。方法二:已知等式约束h1(x1,x2),可得x2?(4?x1)/2,则原问题可化为 min f(x1)?(x1?3)2?((4?x1)?2)22(2)4?x12?2 g(x)?x?()?5111? 2?s..t?0?x1?10,x1?n?4?x1?0??10 2? x min f(x1)?(x1?3)2?(1)2 2 即等式约束简化后的模型为 4?x12?2 g(x)?x?()?5?1 s..t?112??0?x1?4,x1?n 其中a~b的操作如下,而c~e的操作同方法一。a.对x1进行十进制编码; b.适应度函数值采用fit(f(x1,x2))?(3)1 计算,其中 c?f(x1,x2)c???max{0,g1(x1,x2)?5},?=10000 方法三:在方法二的基础上,改变x1的编码方法,对x1进行二进制编码。由于0?x1?4,且为自然数,则二进制编码至少为3位,但3位的二进制可以表示0~7的整数,所以存在冗余编码。则通过惩罚来排除冗余编码,即适应度函数值采用 fit(f(x1,x2))? 1 计算。c?f(x1,x2)其中c???max{0,g1(x1,x2)?5}???max{0,x1(i)?4},?=10000。x1(i)表示个体解码后的x1。 2)三种方法的计算结果 方法一可得到三个不同的解: 解1:x1?2,x2?1, fit(f(x1,x2))?0.4646, f(x)?2.0000,适应度趋势图如下: 图2 方法一解1的适应度趋势图 解2:x1?0,x2?2, fit(f(x1,x2))?0.1075, f(x)?9.0000,适应度趋势图如下: 篇五:遗传算法学习作业 遗传算法学习总结 1.1 概述 遗传算法是一类借鉴生物界的进化规律(适者生存,优胜劣汰遗传机制)演化而来的自适应概率性随机化迭代搜索算法。1962年霍兰德(holland)教授首次提出了ga算法的思想,它的基本思想是基于darwin进化论和mendel的遗传演说。darwin进化论最重要的是适者生存的原理,它认为每一代种群总是向着前进方向发展,越来越适应环境。每一个个体都有继承前代的特性,但不是完全继承,会产生一些新特性。最终只有适应环境的特征才能被保留下来。mendel遗传学说最重要的是基因遗传原理,它认为遗传以密码方式存在细胞中,并以基因形式包含在染色体内。一条染色体中存在很多基因,每个基因有自己的位置并控制着外部特征;基因的产生和变异直接影响到个体的特性是否能适应环境。经过存优去劣的自然淘汰,适应性高的基因结构得以保存下来。 遗传算法正是借用了仿真生物遗传学和自然选择机理,通过自然选择、遗传、变异等作用机制,实现各个个体的适应性的提高。 与自然界相似,遗传算法对求解问题的本身一无所知,从代表问题可能潜在解集的一个种群(population)开始,每一个种群则由经过基因(gene)编码(coding)的一定数目的个体(individual)构成。每个个体实际上是染色体(chromosome)带有特征的实体。把问题的解表示成染色体,并基于适应值来选择染色体,遗传算法所需要的仅是对算法所产生的每个染色体进行评价,使适应性好的染色体有更多的繁殖机会。在算法中也就是以二进制编码的串。并且,在执行遗传算法之前,给出一群染色体,也就是假设解。然后,把这些假设解置于问题的“环境”中,也即在一个适应度函数中来评价。并按适者生存的原则,从中选择出较适应环境的染色体进行复制,淘汰低适应度的个体,再通过交叉,变异过程产生更适应环境的新一代染色体群。对这个新种群进行下一轮进化,直到最适合环境的值。1.2遗传算法的基本原理和特点 1.2.1 算法原理 在遗传算法中,通过随机方式产生若干个所求解问题的数字编码,即染色体,形成初始种群;通过适应度函数给每个个体一个数值评价,淘汰低适应度的个体,选择高适应度的个体参加遗传操作,经过遗传操作后的个体集合形成下一代新的种群,再对这个新种群进行下一轮进化,这就是遗传算法的基本原理。 遗传算法的主要步骤如下: 1)随机产生一个由确定长度的特征串组成的初始群体; 2)对串群体迭代地执行步骤(1)和(2),直到满足停止准则:(1)计算群体中每个个体的适应值。(2)应用复制、杂交和变异算子产生下一代群体。3)把在任一代中出现的最好的个体串指定为遗传算法的执行结果。这个结果可以表示问题的一个解(或近似解)。基本遗传算法的流程图如图 1-1,其中gen是当前代数,m为每代种群中最大个体数。 图1-1 基本遗传算法的流程图 1.2.2 算法特点 遗传算法的特点如下: 1)遗传算法中不包含待解决问题所持有的形态。它是从改变基因的配置来实现问题的整体优化的,因而属于自下而上的优化方法; 2)类似于生物的进化过程,遗传算法处理的是变量集合的编码而非变量本身。它直接 对结构对象进行操作,不存在求导和函数连续性的限定; 3)遗传算法具有内在的隐并行性和更好的全局寻优能力; 4)遗传算法采用概率化的寻优方法,能自动获取和指导优化的搜索空间,自适应地调整搜索方向,不需要确定的规则。 遗传算法的这些特点已被人们广泛地应用于组合优化、机器学习、信号处理、自适应控制和人工生命等领域。它是现代有关智能计算中的关键技术之一。1.3 基本遗传算法的步骤 1.3.1 染色体编码(chromosome coding)与解码(decode)基本遗传算法使用固定长度的二进制符号串来表示群体中的个体,其等位基因由二值{0,1}所组成。初始群体中各个个体的基因可用均匀分布的随机数来生成。例如:x=***101就可表示一个个体,该个体的染色体长度是n=18。(1)编码:变量x作为实数,可以视为遗传算法的表现型形式。从表现型到基因型的映射称为编码。设某一参数的取值范围为[u1,u2],我们用长度为k的二进制编码符号来表示该参数,则它总共产生2k种不同的编码,可使参数编码时的对应关系为: 000000?0000=0→u1 000000?0001=1→u1+? 000000?0010=2→u1+2? ? 111111?1111=2k-1→u2 u?u其中,?=2 k1。2?1(2)解码:假设某一个体的编码为bkbk-1bk-2?b2b1,则对应的解码公式为 x?u1?(?bi?2i?1)? i?1ku2?u1 ① k2?1 例如:设有参数x∈[2,4],现用5位二进制编码对x进行编码,得25=32个二进制串(染色体): 00000,00001,00010,00011,00100,00101,00110,00111 01000,01001,01010,01011,01100,01101,01110,01111 10000,10001,10010,10011,10100,10101,10110,10111 11000,11001,11010,11011,11100,11101,11110,11111 对于任一个二进制串,只要代入公式①,就可得到相应的解码,如x22=10101,它对应的十进制为?bi?2i?1=1+0*2+1*22+0*23+1*24=21,则对应参数 i?15 x的值为2+21*(4-2)/(25-1)=3.3548。1.3.2 个体适应度的检测评估 基本遗传算法按与个体适应度成正比的概率来决定当前群体中各个个体遗传到下一代群体中的机会多少。为了正确估计这个概率,要求所有个体的适应度 必须为非负数。所以,根据不同种类的问题,需要预先确定好由目标函数值到个体适应度之间的转换规律,特别是要预先确定好当目标函数值为负数时的处理方法。例如,可选取一个适当大的正数c,使个体的适应度为目标函数值加上正数c。1.3.3 遗传算子 基本遗传算法使用下列三种遗传算子: (1)选择运算使用比例选择算子。比例选择因子是利用比例于各个个体适应度的概率决定其子孙的遗传可能性。若设种群数为m,个体i的适应度为fi,则个体i被选取的概率为 pi?fi/?fk k?1m 当个体选择的概率给定后,产生[0,1]之间的均匀随机数来决定哪个个体参加交配。若个体的选择概率大,则能被多次选中,它的遗传基因就会在种群中扩大;若个体的选择概率小,则被淘汰。 我们经常采用的是轮盘赌的原理,个体的选择概率是基于它们的性能进行的一些计算。实值范围——总和是所有个体期望的选择概率的总和或当前种群中所有个体原始适应度值的总和。个体采用一对一方式 映像到范围[0,sum]的一连续区间,每一个体区间的 大小与对应个体的适应度值相匹配。如图1所示,轮 盘赌轮的周长是6个个体适应度值的总和,个体5 是最大适应度个体,它占有最大的区间。选择一个个 体,用在[0,sum]间产生随机数,看此随机数在哪个 个体的区间上,则此个体被选中。重复此过程,直到 所需数量个体被选中为止。 (2)交叉运算使用单点交叉算子。只有一个交叉点位置,任意挑选经过选择操作后种群中两个个体作为交叉对象,随机产生一个交叉点位置,两个个体在交叉点位置互换部分基因码,形成两个子个体,如图2所示。 父个体1 父个体2 110 11 011 00 单点交叉 子个体1 子个体2 图2 单点交叉示意图 (3)变异运算使用基本位变异算子或均匀变异算子。为了避免问题 过早收敛,对于二进制的基因码组成的个体种群,实现基因码的小概率翻转,即0变为1,而1变为0,如图3所示。 变异 图3 变异操作示意图 1.3.4 基本遗传算法的运行参数 基本遗传算法有下列4个运行参数需要预先设定,即m,t,pc,pm。m为群体大小,即群体中所含个体的数量,一般取为20~100; t为遗传算法的终止进化代数,一般取为100~500; pc为交叉概率,一般取为0.4~0.99;pm为变异概率,一般取为0.0001~0.1。1.4遗传算法的应用 进入90年代后,遗传算法迎来了兴盛发展时期,无论是理论研究还是应用研究都成了十分热门的课题。尤其是遗传算法的应用研究显得格外活跃,不但它的应用领域扩大,而且利用遗传进行优化和规则学习的能力也显著提高,同时产业应用方面的研究也在摸索之中。 遗传算法提供了一种求解复杂系统问题的通用框架,它不依赖于问题的具体领域,对问题的种类有很强的鲁棒性,所以广泛应用于很多学科。如工程结构优化、计算数学、制造系统、航空航天、交通、计算机科学、通信、电子学、材料科学等。1)ga在数值优化上的应用 最优化问题是遗传算法经典应用领域,但采用常规方法对于大规模、多峰态函数、含离散变量等问题的有效解决往往存在许多障碍。对全局变化问题,目前存在确定性和非确定性两类方法。前者以brianin的下降轨线法、levy的隧道法和r.ge的填充函数为代表。该类方法虽然收敛快、计算效率高,但算法复杂,求得全局极值的概率不大。遗传算法作为现代最优化的手段,实践证明,它应用于大规模、多峰多态函数、含离散变量等情况下的全局优化问题是合适的,在求解速度和质量上远远超过常规方法。2)ga 在组合优化中的应用 3)遗传算法在机器学习中的应用 机器学习系统实际上是对人的学习机制的一种抽象和模拟,是一种理想的学习模型。基于符号学习的机器学习系统如监督型学习系统、条件反射学习系统、类比式学习系统、推理学习系统等,只具备一些较初级的学习能力。近年来,由于遗传算法的发展,基于进化机制遗传学习成为一种新的机器学习方法,它将知识表达为另一种符号形式—遗传基因型,通过模拟生物的进化过程,实现专门领域知识的合理增长型学习。4)遗传算法在并行处理中的应用 遗传算法固有的并行性和大规模并行机的快速发展,促使许多研究者开始研究遗传算法的并行化问题,研究数量更加接近自然界的软件群体将成为可能。遗传算法与并行计算的结合,能把并行机的高速性和遗传算法固有的并行性两者的长处彼此结合起来,从而也促进了并行遗传算法的研究与发展。 司法体制改革动向及问题研究讲座报告 学号:2014120007 姓名:赵金铭 夏明权教授结合自身多年的从业经验对于我国司法体制改革动向及问题就八个方面给我们进行了深入讲解,我感到受益颇深。 首先,第一方面,夏明权教授就我国司法改革恢复法院的审判工作后的进程所遇到的问题作为开篇,让我们了解到了在司法改革的过程中我国司法体制不断进化的过程。 他谈到了在司法改革初期,我国司法工作人员并不足够专业,大多数都是从其他领域转入司法机构,其中大概只有30%的工作人员是真正的法律专业出身而绝大部分都是经过成人教育直接上岗的,所以相对比较缺乏专业知识和实战经验。其次谈到的是第一个五年纲要,1999年—2003年,在此期间地方保护主义比较严重,很难保证司法公正的程度,但同时增设了一些部门,从司法理念和部门分工上都更加详细。第二个五年纲要,2004年—2008年,这段时期主张严打,导致很多的冤假错案,并且死刑复核权收回到了最高人民法院。第三个五年纲要,2009年—2013年,主要在法院内部调整,各个职能部门有所改变,对于一些不必要的部门进行清理。同时提出法院审理案件既要保证实体公正也要保证程序公正,强调了程序公正的重要性。 重点在第四个五年纲要,2014年—2018年,党的十八大四中全会明确再次强调了依法治国的重要性,首先应该注重法院的自身建设,探索设立跨行政区划的人民法院和人民检察院。因为随着社会主义市场经济深入发展和行政诉讼出现,跨行政区划乃至跨境案件越来越多,涉案金额越来越大,导致法院所在地有关部门和领导越来越关注案件处理,甚至利用职权和关系插手案件处理,造成相关诉讼出现“主客场”现象,不利于平等保护外地当事人合法权益、保障法院独立审判、监督政府依法行政、维护法律公正实施。设立跨行政区划的人民法院和人民检察院,有利于排除对审判工作和检察工作的干扰、保障法院和检察院依法独立公正行使审判权和检察权,有利于构建普通案件在行政区划法院审理、特殊案件在跨行政区划法院审理的诉讼格局。 第二方面,他强调了要建立以审判为中心的诉讼制度改革。在司法实践中,存在办案人员对法庭审判重视不够,常常出现一些关键证据没有收集或者没有依法收集,进入庭审的案件没有达到“案件事实清楚、证据确实充分”的法定要求,使审判无法顺利进行。推进以审判为中心的诉讼制度改革,目的是促使办案人员树立办案必须经得起法律检验的理念,确保侦查、审查起诉的案件事实证据经得起法律检验,保证庭审在查明事实、认定证据、保护诉权、公正裁判中发挥决定性作用。这项改革有利于促使办案人员增强责任意识,通过法庭审判的程序公正实现案件裁判的实体公正,有效防范冤假错案产生。 第三方面,他谈到了立案登记制在实践中的好处与不足,立案登记制是指法院接到当事人提交的民事起诉状时,对符合法定条件的起诉,应当登记立案;对 当场不能判定是否符合起诉条件的,应当接收起诉材料,并出具注明收到日期的书面凭证。需要补充必要相关材料的,人民法院应当及时告知当事人。在补齐相关材料后,应当在七日内决定是否立案,对依法应该受理的案件,做到有案必立、有诉必理,保障当事人诉权。自从五月一日实施以后,全国各地法院接受案件数量迅速增多,其中行政案件翻了一倍,沿海地区案件翻了多倍,从某种程度上也降低了法院审理案件的效率,夏教授提出,其中不归法院管的案件,可以不管或者移送管辖,这样可以相对节约成本,提高有效案件的数量,但不可否认的是,立案登记制虽然增加了工作量,但确实保证了老百姓的诉讼权利,更体现了全心全意为人民服务的宗旨。 第四方面,他提到了审判责任制,也是当前法院改革的中心。在现实审判中,不是每个法官都能达到收放自如的程度,有些法官不愿担责,一味将责任推脱给合议庭或者审判委员会,这样很难达到预期的审判效果,而审判责任制在全面赋予法官独立审判权力的同时,明确了对法官行使审判权的监督程序,实现了司法效率和公平的进一步提升。把审判权真正还给主审法官,让法官敢担责。夏教授说“过去,我们审理案件确实受到各方面因素影响,现在,我们的审判流程很清晰,自己审理的案子自己判,审判结果自行负责!”在实践中的确有了实实在在的改善。 第五方面,关于法院审理案件的三公开制度,首先审判流程公开,做到及时立案程序合法条理清晰。其次是裁判文书公开,这一规定对法官书写法律文书的水平提出了更高的要求,夏教授指出,在很多基层法院工作的法官,职业技能不足的现象很普遍,法律文书很难达到专业水平,在要求裁判文书公开以后,无疑对他们专业技能方面是一个有效的督促。最后是执行信息公开,他特别指出同案不同判的问题,尤其是铁路,民航还有税务部门,要建立完善的诚信系统,保证所有执行信息公开。 第六方面,在实战中,司法系统每年招收新人面临这样的现状,要进的人进不来,该走的人走不了。科学合理的法官员额制,可确保优秀法官留在审判一线,但是以什么标准把最优秀的法官选出来就成为我们讨论的内容。法官遴选委员会应设在省一级,省级法官遴选委员会应细化每一审级法官准入条件,由法官管理部门根据条件提出名单,由法官遴选委员会按程序遴选;法官入额条件应分三项:专业素质、经验、职业操守。其中夏教授提出,最让人担心的问题是男女比例严重失衡,因为很多女生的应试能力强于男生,自然通过考试的女性多于男性,法院为了尽量保持平衡,只能通过招法警的方法来改善男女失衡问题。 第七方面,夏教授提到了省级以下法院人财物统一管理问题,之前在基层法院和在省级法院上班,同样的工作时间和工作内容,甚至在基层法院有更繁琐的任务更艰苦的工作环境,而二者的工资却相差甚远,夏教授曾经在随州中院做法官,工资不到5000,后来调到武汉中院,工资至少10000,明显感受到基层法院得不到更多的财政的支持,这样也不利于鼓励基层法院综合方面的发展,所以如果能做到省级以下法院的人财物统一管理,能帮助基层法院摆脱原有经费问题,并且吸引更多的年轻人投入到基层工作当中。 第八方面,他补充了一个问题,有很多人指出领导干部会对司法裁判进行干预,这一现象其实在现实生活中是比较少见的,领导也不愿意去冒风险而破坏司法公正。同时,有些地方出台了领导干部插手司法案件的条例,很有效的规避这一现象,便于法官更加公平公正的裁决。 最后,夏教授强调,全面推进司法改革是一个系统工程,是国家治理领域一场广泛而深刻的革命。鼓励大家要全面理解和正确对待重大改革举措,深刻领会其重大现实意义和深远历史意义,自觉支持改革、拥护改革。作为新时代法律人,为司法改革贡献自己的绵薄之力! 分析:二次函数y=x2-bx+1可化为,可知抛物线的顶点坐标为(),当b从-1逐渐变化到1的过程中,顶点横坐标的值逐渐增大,表示抛物线往右方移动;而当b从-1逐渐变化到1的过程中,顶点纵坐标的值先逐渐增大后逐渐减小,表示抛物线先往上方移动再往下方移动,故选答案D。 解:(1)y=x2-4x+1 配方,得y=(x-2)2-3,向左平移4个单位,得平移后得抛物线的解析式为y=x2+4x+1(2)由(1)知,两抛物线的顶点坐标为(2,3),(-2,-3)解,得 ∴两抛物线的交点为(0,1) 由图象知,若直线y=m与两条抛物线有且只有四个交点时,m>-3且m≠1(3)由y=ax2+bx+c配方得,向左平移-个单位长度得到抛物线的解析式为 ∴两抛物线的顶点坐标分别为,解 得 ∴两抛物线的交点为(0,c)由图象知满足(2)中条件的m的取值范围是:m>且m≠c 评析:图形与变换是《初中数学新课程标准》中新增加的内容,把它与二次函数相结合,既考查了学生几何建模以及探究活动的能力,又考查了学生对几何与代数之间的联系、多角度、多层次综合运用数学知识、数学思想方法分析和解决问题的能力,是今后命题的重点。 略解:(1)S=24(km); (2)当0≤t≤10时, ; 当10<t≤20时,s=30t-150; 当20<t≤35时,s=-(t-35)2+675.(3)沙尘暴发生后30h将侵袭到N城。 评析:分段函数是高中数学的一块重要内容,本题以动直线l运动的不同位置来确定面积S关于时间t的函数关系式,学生在充分理解了S的涵义后,求出函数关系式并不困难。像这类运动变化问题是中考命题的热点。 2、求闭区间上二次函数的最值。 解:(1)通过描点,画图或分析表一中数据可知y1是t的二次函数。设y1=a(t-20)2+60,把t1=0,y1=0.代入得a=,故y1=t2+6t(0≤t≤40且t为整数)。经验证,表一中的所有数据都符合此解析式。 (2)通过描点,画图或分析表二中数据可知当0≤t≤30时y2是t的正比例函数;当30≤t≤40时y2是t的一次函数。可求得 经验证,表二中的所有数据都符合此解析式。,(3)由y=y1+y2得时y有最大值为106.65万件。,经比较可知第7天评析:二次函数问题是近几年高考的热点,倍受命题者的青睐,二次函数在闭区间上的最值问题是高考的重要题型之一。解决这类问题的策略是:画出函数在给定范围内的图象,找出图象的最高(低)点和坐标得出结果。另外,本题也体现了二次函数解析式考查方式的新变化:让学生从函数对应值表分析猜想出函数类别,进而用待定系数法确定函数关系式。 解:(1)设y=kx+b,由图象可知,解得 ∴y=-20x+1000(30≤x≤50). (2)p=(x-20)y=(x-20)(-20x+1000)=-20x2+1400x-20000. ∵a=-20<0,∴p有最大值.当时,p最大值=4500. 即当销售单价为35元/千克时,每天可获得最大利润4500元. 解:(1)根据图象可知c<0 且抛物线y1=x2-2x+c与x轴有两个交点,故一元二次方程x2-2x+c=0有两个不等的实数根,∴△=(-2)2-4c=4-4c>0,且c<0∴c<1(2)因为抛物线经过点(0,-1)代入y1=x2-2x+c 得c=-1故所求抛物线的解析式为y1=x2-2x-1(3)因为反比例函数的图象经过抛物线y1=x2-2x-1上的点(1,a)把x=1,y=a代入y1=x2-2x-1,得a=-2 把x=1,a=-2代入,得 所以 画出的图象如图6所示。 观察图象,y1与y2除交点(1,-2)外,还有 两个交点大致为(-1,2)和(2,-1) 把x=-1,y2=2和x=2,y2=-1分别代入y1=x2-2x-1和是y1与y2的两个交点。 根据图象可知: 可知,(-1,2)和(2,-1)当x<-1或0 评析:例五第3问的求解借助了二次函数的图象,通过解一元二次方程求出利润为4480元与4180元时销售单价x的值,应用函数性质分析得出结果。它较好地考查了学生数形结合的数学思想方法。 解:(1)80的新数为802÷100=64,26的新数为262÷100=6.76(2)这一说法不对。设旧数为x,则相应的新数为,列方程x =,解得x =0或x =100,所以不符合这一说法的旧数是0和100(3)设旧数为x,旧数与新数之差为y,则 当x = 50时,y的值最大,因此,减小了最多的旧数是50。 解:(1)50只 (2)当l0 由二次函数图象可知,x≤45,最低售价为20-0.1(45-10)=16.5元 数学建模是培养学生实际应用能力的重要途径,是数学教育改革发展的方向。在新课标高中教材中还将学习数学模型、建模方法以及用数学建模来解决实际问题的步骤。这就要求教师在平时教学中要引导学生逐步养成用数学的眼光看待周围事物和现象的习惯,激励学生将所学数学知识和方法应用于现实生活,体会数学应用的价值,进而形成数学建模意识,促进数学素质提高。 人工智能实验报告 实验六 遗传算法实验II 一、实验目的: 熟悉和掌握遗传算法的原理、流程和编码策略,并利用遗传求解函数优化问题,理解求解TSP问题的流程并测试主要参数对结果的影响。 二、实验原理: 旅行商问题,即TSP问题(Traveling Salesman Problem)是数学领域中著名问题之一。假设有一个旅行商人要拜访n个城市,他必须选择所要走的路径,路经的限制是每个城市只能拜访一次,而且最后要回到原来出发的城市。路径的选择目标是要求得的路径路程为所有路径之中的最小值。TSP问题是一个组合优化问题。该问题可以被证明具有NPC计算复杂性。因此,任何能使该问题的求解得以简化的方法,都将受到高度的评价和关注。 遗传算法的基本思想正是基于模仿生物界遗传学的遗传过程。它把问题的参数用基因代表,把问题的解用染色体代表(在计算机里用二进制码表示),从而得到一个由具有不同染色体的个体组成的群体。这个群体在问题特定的环境里生存竞争,适者有最好的机会生存和产生后代。后代随机化地继承了父代的最好特征,并也在生存环境的控制支配下继续这一过程。群体的染色体都将逐渐适应环境,不断进化,最后收敛到一族最适应环境的类似个体,即得到问题最优的解。要求利用遗传算法求解TSP问题的最短路径。 三、实验内容: 1、参考实验系统给出的遗传算法核心代码,用遗传算法求解TSP的优化问题,分析遗传算法求解不同规模TSP问题的算法性能。 2、对于同一个TSP问题,分析种群规模、交叉概率和变异概率对算法结果的影响。 3、增加1种变异策略和1种个体选择概率分配策略,比较求解同一TSP问题时不同变异策略及不同个体选择分配策略对算法结果的影响。 4、上交源代码。 四、实验报告要求: 1、画出遗传算法求解TSP问题的流程图。 2、分析遗传算法求解不同规模的TSP问题的算法性能。 规模越大,算法的性能越差,所用时间越长。 3、对于同一个TSP问题,分析种群规模、交叉概率和变异概率对算法结果的影响。 (1) 种群规模对算法结果的影响 x 0 1.1 3.5 4.5 y 1.1 5.1 4.5 实验次数:10 最大迭代步数:100 交叉概率:0.85 变异概率:0.15 种群规模 平均适应度值 最优路径 25.264 4-5-8-7-6-3-1-0-9-2 26.3428 2-9-1-0-3-6-7-5-8-4 25.1652 1-3-6-7-5-8-4-2-9-0 25.1652 0-1-3-6-7-5-8-4-2-9 25.1652 9-0-1-3-6-7-5-8-4-2 25.1652 1-0-9-2-4-8-5-7-6-3 150 25.1652 5-8-4-2-9-0-1-3-6-7 200 25.1652 1-3-6-7-5-8-4-2-9-0 250 25.1652 3-1-0-9-2-4-8-5-7-6 300 25.1652 5-8-4-2-9-0-1-3-6-7 如表所示,显然最短路径为25.1652m,最优路径为1-0-9-1-3-6-7-5-8-4-2或3-1-0-9-2-4-8-5-7-6,注意到这是一圈,顺时针或者逆时针都可以。当种群规模为10,20时,并没有找到最优解。因此并不是种群规模越小越好。 (2) 交叉概率对算法结果的影响 x 1.1 3.5 3.5 4.5 y 1.1 5.1 8.5 实验次数:15 种群规模:25 最大迭代步数:100 变异概率:0.15 实验结果: 交叉概率 最好适应度 最差适应度 平均适应度 最优解 0.001 28.0447 36.6567 32.6002 9-2-6-0-5-4-8-7-3-1 0.01 27.0935 34.9943 32.1495 7-8-3-1-9-2-6-0-5-4 0.1 28.0447 35.3033 31.9372 7-3-1-9-2-6-0-5-4-8 0.15 28.0447 34.1175 31.2183 0-5-4-8-7-3-1-9-2-6 0.2 28.7108 33.9512 30.9035 3-1-9-2-6-5-0-4-7-8 0.25 28.0447 35.1623 30.7456 1-3-7-8-4-5-0-6-2-9 0.3 27.0935 31.9941 29.9428 8-3-1-9-2-6-0-5-4-7 0.35 27.0935 32.8085 30.9945 9-1-3-8-7-4-5-0-6-2 0.4 27.0935 32.5313 30.1534 1-3-8-7-4-5-0-6-2-9 0.45 27.0935 33.2014 30.1757 8-3-1-9-2-6-0-5-4-7 0.5 28.0934 33.6307 30.9026 5-0-2-6-9-1-3-8-7-4 0.55 27.0935 33.5233 29.1304 1-9-2-6-0-5-4-7-8-3 0.6 27.0935 33.2512 30.7836 3-1-9-2-6-0-5-4-7-8 0.65 28.0447 33.7003 30.9371 5-4-8-7-3-1-9-2-6-0 0.7 27.0935 32.0927 29.9502 9-1-3-8-7-4-5-0-6-2 0.75 28.0447 32.4488 30.3699 0-5-4-8-7-3-1-9-2-6 0.8 27.0935 32.1551 29.9382 7-4-5-0-6-2-9-1-3-8 0.85 27.0935 34.5399 30.3594 5-0-6-2-9-1-3-8-7-4 0.9 27.0935 32.6273 30.69 6-0-5-4-7-8-3-1-9-2 0.95 27.0935 32.4672 29.919 6-2-9-1-3-8-7-4-5-0 (注:红色表示非最优解) 在该情况下,交叉概率过低将使搜索陷入迟钝状态,得不到最优解。 (3) 变异概率对算法结果的影响 x 1.1 3.5 3.5 4.5 y 1.1 5.1 8.5 实验次数:10 种群规模:25 最大迭代步数:100 交叉概率:0.85 实验结果: 变异概率 最好适应度 最差适应度 平均适应度 最优解 0.001 29.4717 34.732 32.4911 0-6-2-1-9-3-8-7-4-5 0.01 29.0446 34.6591 32.3714 8-4-5-0-2-6-9-1-3-7 0.1 28.0934 34.011 30.9417 5-0-2-6-9-1-3-8-7-4 0.15 27.0935 32.093 30.2568 6-0-5-4-7-8-3-1-9-2 0.2 27.0935 32.2349 30.3144 8-7-4-5-0-6-2-9-1-3 0.25 27.0935 32.718 30.1572 4-5-0-6-2-9-1-3-8-7 0.3 27.0935 32.4488 30.2854 0-5-4-7-8-3-1-9-2-6 0.35 27.0935 33.3167 30.7748 1-3-8-7-4-5-0-6-2-9 0.4 29.0446 34.3705 31.3041 2-0-5-4-8-7-3-1-9-6 0.45 27.0935 31.374 29.6816 2-6-0-5-4-7-8-3-1-9 0.5 27.0935 32.3752 30.2211 2-9-1-3-8-7-4-5-0-6 0.55 27.0935 33.3819 30.6623 1-3-8-7-4-5-0-6-2-9 0.6 28.0934 33.2512 30.36 1-3-8-7-4-5-0-2-6-9 0.65 27.0935 32.7491 30.0201 3-1-9-2-6-0-5-4-7-8 0.7 28.7108 32.4238 30.785 1-3-8-7-4-0-5-6-2-9 0.75 27.0935 31.8928 30.2451 1-9-2-6-0-5-4-7-8-3 0.8 28.0934 31.6135 30.3471 9-1-3-8-7-4-5-0-2-6 0.85 29.662 33.2392 31.1585 2-9-1-3-7-8-4-0-5-6 0.9 28.0447 32.0387 30.4152 0-5-4-8-7-3-1-9-2-6 0.95 28.0447 31.3036 30.0067 9-1-3-7-8-4-5-0-6-2 从该表可知,当变异概率过大或过低都将导致无法得到最优解。 4、增加1种变异策略和1种个体选择概率分配策略,比较求解同一TSP问题时不同变异策略及不同个体选择分配策略对算法结果的影响。 不同变异策略和不同个体选择分配策略几乎不影响算法运行的时间,但会影响适应度。 五、实验心得与体会 通过本实验,更加深入体会了参数设置对算法结果的影响。同一个算法,参数值不同,获得的结果可能会完全不同。 同时通过本次实验,使自己对遗传算法有了更进一步的了解。遗传算法是一种智能优化算法,它能较好的近似求解TSP问题,在问题规模比较大的时候,遗传算法的优势就明显体现出来,当然不能完全保证能得到最优解。第三篇:司法体制改革动向及问题研究讲座报告
第四篇:研究中考命题动向_加强二次函数教学 3
第五篇:遗传算法求解TSP问题实验报告