本文介绍了遗传算法的流程及几个算子,给出了在matlab 语言环境下实现编码、译码、选择、重组和变异各算子的编程方法,最后用一个实例来说明遗传算法在寻找全局最优解中的应用。
上传时间: 2014-12-21
上传用户:362279997
电动汽车用异步电机系统效率优化控制研究 (中科院博士论文)目前,大量应用于工农业生产的交流异步电机驱动系统,存在着整体效率较低的缺陷,造成资源浪费严重。本文以应用于电动汽车的中小功率等级异步电机驱动系统为研究对象,并针对被广泛应用的SVPWM电压型逆变器输出调制电压中含有基波电压以及谐波电压的实际特点,提出要从两个方面对稳态轻载工况下异步电机系统进行效率优化控制:优化电机的基波励磁磁链,寻找由基波电压所引起的电机铁芯损耗和铜损的最优平衡点,以减少由基波电压引起的电机损耗 优化SVPWM发生方法,控制逆变器的谐波电压输出,以减少由谐波电压引起的电机铁芯损耗和铜损。论文主要包括以下几个方面: 针对常用MATLAB/Simulink模块库所提供的异步电机模型不包含铁芯损耗这一缺陷,本文提出了一种计及铁芯损耗的异步电机数学模型,模型不包含微分环节,保证了仿真时的稳定性,模型所需参数均可通过普通的短路和空载实验获取。模型符合电机实际情况,具有简单、可靠、易于实现的优点。 基于损耗模型控制(LMC)以及最小直流母线功率在线搜索控制(SC)的研究成果,本文提出了一种新型混合在线式直流最小功率模糊搜索效率优化控制算法(FLSC)。
上传时间: 2013-12-17
上传用户:坏坏的华仔
轨道FSK信号发送的小函数。这个函数虽然少,但却是在无数可行方案中选的最优,性能最佳的。在这基础上进行信号处理很不错的。
上传时间: 2013-12-16
上传用户:AbuGe
内存管理系统,上操作系统课的一个实验,分析了最优和最差的内存速度
标签: 内存管理
上传时间: 2017-08-28
上传用户:huql11633
这个小程序可以简单的选取回归分析中box-cox变换的lambda值,通过matlab强大的矩阵运算功能可以通过简单比较RSS值的方式来得到lambda,使用时只需要输入实验值矩阵X和Y即可,然后输入minRSS(X,Y)就能简单明了的看到最优变换参数 (这个程序虽然小但是学习回归分析的初学者学习时都会经过这个算法,上载时因为不到1KB所以我又放了个文本格式的)
上传时间: 2017-09-09
上传用户:aig85
计算机仿真 报童问题的matlab实现,对于不同的分布情况,最优值的计算
上传时间: 2017-09-14
上传用户:yan2267246
这是一个应用遗传算法解决的函数优化问题,通过一系列的交叉变异得到最优的函数解。
上传时间: 2017-09-27
上传用户:1159797854
0/1背包问题的贪心优化解法 邓宏涛朱蜘 (江汉大学数学与计算机学院武汉430056) 摘要:介绍了0/1背包问题的基本贪心算法的解决策略,通过对贪心算法的改进和优化,找出0/1背包问题的最优解 的很好近似。
上传时间: 2017-09-28
上传用户:冇尾飞铊
生成约束Delaunay三角网算法是处理二维平面点分布最优问题的关键,该文献提出的方法可以帮助生成网络。
上传时间: 2015-03-28
上传用户:zhangsongbo
遗传算法为群体优化算法,也就是从多个初始解开始进行优化,每个解称为一个染色体,各染色体之间通过竞争、合作、单独变异,不断进化。 优化时先要将实际问题转换到遗传空间,就是把实际问题的解用染色体表示,称为编码,反过程为解码,因为优化后要进行评价,所以要返回问题空间,故要进行解码。SGA采用二进制编码,染色体就是二进制位串,每一位可称为一个基因;解码时应注意将染色体解码到问题可行域内。 遗传算法模拟“适者生存,优胜劣汰”的进化机制,染色体适应生存环境的能力用适应度函数衡量。对于优化问题,适应度函数由目标函数变换而来。一般遗传算法求解最大值问题,如果是最小值问题,则通过取倒数或者加负号处理。SGA要求适应度函数>0,对于<0的问题,要通过加一个足够大的正数来解决。这样,适应度函数值大的染色体生存能力强。 遗传算法有三个进化算子:选择(复制)、交叉和变异。 SGA中,选择采用轮盘赌方法,也就是将染色体分布在一个圆盘上,每个染色体占据一定的扇形区域,扇形区域的面积大小和染色体的适应度大小成正比。如果轮盘中心装一个可以转动的指针的话,旋转指针,指针停下来时会指向某一个区域,则该区域对应的染色体被选中。显然适应度高的染色体由于所占的扇形区域大,因此被选中的几率高,可能被选中多次,而适应度低的可能一次也选不中,从而被淘汰。算法实现时采用随机数方法,先将每个染色体的适应度除以所有染色体适应度的和,再累加,使他们根据适应度的大小分布于0-1之间,适应度大的占的区域大,然后随机生成一个0-1之间的随机数,随机数落到哪个区域,对应的染色体就被选中。重复操作,选出群体规模规定数目的染色体。这个操作就是“优胜劣汰,适者生存”,但没有产生新个体。 交叉模拟有性繁殖,由两个染色体共同作用产生后代,SGA采用单点交叉。由于SGA为二进制编码,所以染色体为二进制位串,随机生成一个小于位串长度的随机整数,交换两个染色体该点后的那部分位串。参与交叉的染色体是轮盘赌选出来的个体,并且还要根据选择概率来确定是否进行交叉(生成0-1之间随机数,看随机数是否小于规定的交叉概率),否则直接进入变异操作。这个操作是产生新个体的主要方法,不过基因都来自父辈个体。 变异采用位点变异,对于二进制位串,0变为1,1变为0就是变异。采用概率确定变异位,对每一位生成一个0-1之间的随机数,看是否小于规定的变异概率,小于的变异,否则保持原状。这个操作能够使个体不同于父辈而具有自己独立的特征基因,主要用于跳出局部极值。 遗传算法认为生物由低级到高级进化,后代比前一代强,但实际操作中可能有退化现象,所以采用最佳个体保留法,也就是曾经出现的最好个体,一定要保证生存下来,使后代至少不差于前一代。大致有两种类型,一种是把出现的最优个体单独保存,最后输出,不影响原来的进化过程;一种是将最优个体保存入子群,也进行选择、交叉、变异,这样能充分利用模式,但也可能导致过早收敛。 由于是基本遗传算法,所以优化能力一般,解决简单问题尚可,高维、复杂问题就需要进行改进了。 下面为代码。函数最大值为3905.9262,此时两个参数均为-2.0480,有时会出现局部极值,此时一个参数为-2.0480,一个为2.0480。算法中变异概率pm=0.05,交叉概率pc=0.8。如果不采用最优模式保留,结果会更丰富些,也就是算法最后不一定收敛于极值点,当然局部收敛现象也会有所减少,但最终寻得的解不一定是本次执行中曾找到过的最好解。
标签: 遗传算法
上传时间: 2015-06-04
上传用户:芃溱溱123