matlab数学建模-遗传算法基本原理
目录
1.遗传操作
2.选择
3.交叉
4.变异
5.终止条件
1.遗传操作
对群体里的个体,按照环境适应度,施加一定的操作,实现优胜劣汰的进化过程。
可以使得问题一代一代的优化,逼近最优解。
三基本遗传算子:选择、交叉 和 变异。
个体遗传算子的操作在扰动情况下进行,向最优解迁移的规则是随机的,这种随机化操作是高校有向的搜索,而不是传统随机搜索那种无向搜索。
操作效果,与三种遗传算子所取 操作概率、编码方法、群体大小、初始群体和适应度函数的设定密切相关。
2.选择
选择的目的是把优化算子遗传到下一代,或配对交叉产生新的个体再遗传到下一代。
选择操作建立在个体的适应度评价之上。
常用选择算子:适应度比例、随机遍历抽样、局部选择。
3.交叉
交叉是起到核心作用的遗传操作。
把两个父代结构替换重组,生成新个体。通过交叉,搜索能力得到飞速提高。
1)实值重组:离散重组、中间重组、线性重组、扩展线性重组。
2)二进制交叉:单点交叉、多点交叉、均匀交叉、洗牌交叉、缩小代理交叉。
单点交叉:设一个交叉点,交叉点前后的个体的部分互换,生成两个新个体。
A 0101 (交叉点) 000
B 0111 (交叉点) 101
生成C,D
C 0101 101
D 0111 000
4.变异
按个体编码表示方法,分实值变异和二进制变异。
变异算子操作步骤:
1)对所有个体事先设定概率判断是否变异。
2)对变异个体,随机选择变异位进行变异。
变异目的:
1)使遗传算法有局部的搜索能力
2)使遗传算法维持群体多样性,放置出现未成熟收敛。
交叉算子作为主要算子,变异算子因其局部搜索能力是辅助算子,相互配合,所以兼顾全局和局部搜索能力。
相互配合:群体在进化中,线图某个搜索空间或超平面,依靠交叉不能摆脱,通过变异可以帮助摆脱。
相互竞争:交叉形成的积木块,可能被变异破坏,有效配合交叉和变异操作是遗传算法的重要研究内容。
基本变异算子,挑出一个或者几个基因座,对基因值做变动。
1010 变异后 1011
变异率很小,一般取0.001到0.01
5.终止条件
最优个体适应度达到阈值、最优个体或群体的适应度不再上升、迭代次数达到预设次数,算法终止。
matlab数学建模-遗传算法基本原理相关推荐
- 【MATLAB数学建模算法代码(六)之遗传算法】
MATLAB数学建模算法代码(六) 遗传算法: 根据自己需要修改参数即可!!! %遗传算法主程序 %Name:genmain05.m function genmain() tic; clear clf ...
- 数学建模——遗传算法步骤及程序详解
数学建模--遗传算法步骤及程序详解 文章目录 数学建模--遗传算法步骤及程序详解 前言 一.遗传算法的基础 1.编码和解码 2.适应度函数 3.交叉 4.变异 5.选择 二.遗传算法原理步骤 1.初始 ...
- matlab球落点的数学建模,MATLAB数学建模:智能优化算法-人工鱼群算法
MATLAB 数学建模: 人工鱼群算法 1. 基本原理 人工鱼群算法是一种受鱼群聚集规律而启发的优化算法. 在人工鱼群算法中, 我们假定鱼群的活动行为分为: 觅食行为, 群聚行为, 追随行为和随机行为 ...
- 数学建模matlab imread,《matlab数学建模方法与实践》第三章 数据的处理
3.1数据的获取 3.1.1从Excel中读取数据 a= xlsread('路径',n(sheetn),'A(n-1):Bn(读入的数据范围)') 3.1.2从TXT中读取数据 3.1.2.1.1 同 ...
- Matlab中一球反弹的高度,matlab数学建模2乒乓球的弹跳和罗基斯帝模型.doc
matlab数学建模2乒乓球的弹跳和罗基斯帝模型.doc 1乒乓球的弹跳罗基斯第模型问题罗基斯第模型一个乒乓球离球拍的高度为H0,落在球拍上反弹,设恢复系数为E,不计空气阻力.1如果E为常数,讨论球的 ...
- matlab数学建模方法与实践 笔记1:快速入门
入门案例 1.导入数据 2.数据探索 3.多项式拟合 4.发布功能 5.数据类型 6.全部代码 代码在Cha2文件夹下 1.导入数据 2.数据探索 3.多项式拟合 4.发布功能 5.数据类型 6.全部 ...
- 排课系统matlab,matlab数学建模排课
matlab数学建模排课Tag内容描述: 1.TOMLAB课表编排问题 我们老师让我们做一个课表编排问题 题目见 我试图用基于MATLAB的一个软件TOMLAB做 因为他有一个例子 见 由于我对MAT ...
- 《MATLAB数学建模方法与实践(第3版)》第2章学习笔记
第2章 MATLAB数学建模快速入门 2.1 MATLAB快速入门 2.1.1 MATLAB概要 MATLAB是矩阵实验室(Matrix Laboratory)的缩写.MATLAB的基本数据单元是矩阵 ...
- 视频教程-MATLAB数学建模-Matlab
MATLAB数学建模 图像和算法等领域有多年研究和项目经验:指导发表科技核心期刊经验丰富:多次指导数学建模爱好者参赛. 宋星星 ¥12.00 立即订阅 扫码下载「CSDN程序员学院APP」,1000+ ...
- Matlab数学建模工具箱(mathmodl),国赛必备
数学建模国赛马上开始了,给正在准备参赛的小伙伴推荐一个学习数学建模MATLAB的一个工具箱-->mathmodl matlab数学建模工具箱,里面有一些数学建模常用算法或函数的matlab程序和 ...
最新文章
- 买得嗨更要聊得嗨 阿里通免费电话惠战双11
- editplus 3 注册码
- JavaWeb开发环境配置
- lisp 河道水面线计算_水面漂浮泡沫生活垃圾隔离拦载浮筒使用方法
- DRF的版本控制,认证,权限和频率限制
- [渝粤教育] 广东-国家-开放大学 21秋期末考试建筑工程概预算10326k2
- 怎么把java程序放进php_如何在php脚本中执行Java程序?
- 百度SEO优化技术点总结
- easy_install django==1.4.2_百度搜索
- 日本要向中国收二维码使用费?每人一分钱?
- 15投影矩阵与Moore-Penrose逆(1)
- SQL基础语句汇总-学习
- FCPX字幕插件、转场插件、效果插件、MG动画、调色插件、AE模板、AE插件、PR插件
- 第十五届全国大学生智能汽车竞赛安徽赛区获奖名单
- faster rcnn:towards real-time object detection with region proposal network
- 小白日记2:kali渗透测试之被动信息收集(一)
- python 网易云音乐评论爬取3
- 用Ruby替代Java做rest接口的单元测试!
- C语言的 a, *a, a
- js 和php 互操cookie 作用域