欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 计算机应用 > 遗传算法的Matlab实现及应用

遗传算法的Matlab实现及应用

日期:2023-01-24 阅读量:0 所属栏目:计算机应用


摘 要:摘要:本文简要阐述了遗传算法的基本原理,利用Matalab编程实现了遗传算法,通过仿真示例验证了该实现方法的有效性,实现了遗传算法在函数全局寻优中的应用。

关键词:关键词:Matlab;遗传算法


中图分类号:TP312    文献标识码:A    文章编号:

    1. 遗传算法概述
    遗传算法最初是由美国的d教授于1975年提出的 。遗传算法(Genetic Algorithm)是模拟自然界生物遗传进化过程中“物竞天泽、适者生存”的原理而开发出的一种全局优化随机搜索算法,具有非线性求解、隐含的并行性,且易与其他模型相结合等特点。它借鉴了生物遗传学的观点,通过自然选择、交叉、变异等机制,实现各个体适应性的提高,适合解决大搜索空间的优化问题。目前,已经在工业工程和设计、经济管理、交通运输等领域得到了广泛应用。
    遗传算法的基本过程是:首先用某种编码方式将解空间映射到编码空间,每个编码对应问题的一个解。然后随机生成一个初始种群,通过迭代优化评价函数以解决给定的问题。在算法的每次迭代中,评价函数对每个个体进行度量,计算适应度,根据适应度或某种竞争机制保留某些个体,放弃其他个体,利用交叉概率和变异概率对保留的个体进行交叉和变异等,产生下一代种群,再开始进行下一次迭代。如此进化下去,直到满足期望的终止条件。算法的终止条件是达到一定的迭代次数,或者最优个体的适应度达到某个阈值,或者种群的适应度没有显著提高等。以下是遗传算法的过程描述。
    输入:种群大小N,评价函数F,交叉概率 ,变异概率 ,最大迭代次数T。
    输出:最优解。
    1)初始化群体P(1),初始迭代次数t=1;
    2)根据F计算个体适应度;
    3)选择适应度高的个体复制;
    4)利用交叉和变异算子,从P(t)生成新群体P(t+1),令t=t+1;
    5)如未满足终止条件,则返回第2)步,否则终止。
    2. 遗传算法的Matlab编程实现
    Matlab是一个高性能和功能十分强大的计算与仿真软件。利用Matlab实现遗传算法简单且易操作。
    (1) 初始化
    初始化的函数是init (N,chromlength),N表示种群大小,chromlength表示染色体的长度,长度取决于变量的二进制编码长度。
    (2)根据评价函数计算个体适应度
    由评价函数F,计算种群中个体的适应度。F作为求解问题的目标函数,求解的目标是该函数的最大或最小值。本文是以f(x)=cos(5*x)-sin(3*x)为例进行计算。
    (3)选择
    选择哪些个体可以进入下一代。个体在下一代种群中出现的可能性由个体的适应度决定,适应度越高,产生后代的概率越高,反之,被淘汰的概率越高。本文采用赌轮盘法进行选择。根据方程  ,选择步骤如下:
    1)在第t代,根据上式计算和  ;
    2)产生{0,1}的随机数 rand( ),求 s=rand( )* ;
    3)求  s 中最小的 k,则第 k 个个体被选中;
    4)进行 N 次2)、3)操作,得到N个个体,成为第t+1代种群。
    选择的函数是selection(P,fitvalue),代码略。
   (4)交叉
    把两个串的部分基因进行交换,产生两个新串作为下一代个体,例如,10101和11011是两个个体,从第三个基因开始交叉,产生新个体10011和11101。个体进行交叉的可能性由交叉概率决定,交叉概率太小难以向前搜索,太大容易破坏适应度高的个体。
    交叉的函数是crossover(P,  ),其中 是交叉概率,代码略。
   (5)变异
    变异是随机地改变染色体的部分基因,把0变为1,或者把1变为0。例如,个体10111的第二个基因变异,产生新个体11111。个体变异的可能性由变异概率决定。若变异概率太小,则难以产生新的基因结构,太大会使遗传算法变成单纯的随机搜索。
    变异的函数是mutation(P, ),其中 是变异概率,代码略。
    (6)求出群体中最大的适应度及其个体
    3.示例仿真
    本文以单变量函数为例验证遗传算法的全局寻优能力,例如求函数f(x)的最大值,f(x)=cos(5*x)-sin(3*x),x∈[0,6],函数特性如图1所示。
    取种群大小N =20,交叉概率=0.6,变异概率 =0.001。图2是在迭代过程中,最佳个体的适应度变化情况,x轴表示遗传代数,y轴表示最佳个体的适应度。图3是最佳个体的变化情况,x轴表示遗传代数,y轴表示最佳个体的解码值。
 
                 图1 f(x)函数示意图
         
图2 最佳个体的适应度变化情况                图3 最佳个体变化情况
  从图中可以看出,全局最大的极值点是当x=3.7423时,此时f(x)=1.9638。

参考文献:
[1] 周明,孙树栋.遗传算法原理及应用[M].北京:国防工业出版社,1999
[2] John d.Adaptation in natural and artificial systems[M]. University
of Michigan Press,1975
[3]李敏强,寇纪淞等.遗传算法的基本理论及应用[M].北京:科学出版社,2002

本文链接:http://www.qk112.com/lwfw/jsjlw/jisuanjiyingyong/243102.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学