2017.6.18调试记录:
1、源代码运行出错:
Error in Cross (line 32)
v1=chrom(index(1),pos);
Error in Genetic (line 71)
individuals.chrom=Cross(pcross,lenchrom,individuals.chrom,sizepop,bound);
对其分析可知:
size(individuals.chrom)
ans =
5 21
即经过选择(Select)后individuals.chrom里只包含了5条染色体,但是sizepop还是10,所以会出现下标值(index)溢出。
2、解决办法:
(1)在select函数中增加返回参数index,在挑选出来的染色体中进行交叉交叉之后再把新染色体合并到原来的染色体之中,以保证individuals.chrom里面一直是10条染色体,就不会发生下标溢出情况。
function [ret,index]=select(individuals,sizepop)
2、在Genetic.m后面加了一些修改,目的是获得原书中的图3-6.
没有合适的资源?快使用搜索试试~ 我知道了~
ACM代码程序资源+基于GA优化的非线性函数拟合+matlab代码
共21个文件
m:11个
jpg:5个
asv:3个
需积分: 5 2 下载量 166 浏览量
2024-01-26
14:52:29
上传
评论
收藏 259KB ZIP 举报
温馨提示
遗传算法 GA 是一种生物智能优化算法。它实质上是一种全局搜索寻找最优值的技术。遗传算法针对对随机产生的可能结果,在这些结果中选择一定量的可能解作为一个种群,根据相应的规则,即自然遗传学的选择及交叉变异等方法,通过种群的迭代,得到最优解。在种群迭代的过程中,需要对个体适应度的大小进行比较,按照优胜劣汰以及适者生存的原理,逐渐搜索得到一个最优解,最终得到一个新的解集的群体。这个解集即需要解决的问题的最理想的解。 实际的数据拟合问题研究中一般分为线性数据拟合和非线性数据拟合。其中,线性数据拟合通常是采用一组简单的、线性无关的基函数来逼近试验数据。而对于非线性数据拟合问题,通常分为两种情形进行处理,一种是利用变量代换,将其转为线性问题再求解。另一种是不能线性化的问题,处理起来比较麻烦,可以用MATLAB等程序来实现。在科学技术的各领域中,不同变量之间的相互关系通常用函数描述。有些函数关系可由经典理论分析推导得出,不仅为进一步的分析研究工作提供理论基础,也可以方便的解决实际工程问题。但是,很多工程问题难以直接推导出变量之间的函数表达式,或者即使能得出表达式,公式也十分复杂,不利于进一步的分析与
资源推荐
资源详情
资源评论
收起资源包目录
基于GA优化的非线性函数拟合.zip (21个子文件)
案例17 基于GA优化的非线性函数拟合
图 3-2.JPG 15KB
hhhh.m 394B
图3-5.JPG 79KB
case3_Genetic.m 5KB
fun.asv 1021B
Select.m 1KB
data.m 134B
调试记录.txt 693B
Decode.m 1KB
PSO.m 5KB
图 3-3.JPG 95KB
Code.m 420B
Cross.asv 2KB
图3-4.JPG 41KB
Cross.m 2KB
test.m 291B
图 3-1.JPG 21KB
Genetic.asv 4KB
fun.m 1KB
data.mat 45KB
Mutation.m 2KB
共 21 条
- 1
资源评论
nwsuaf_huasir
- 粉丝: 4115
- 资源: 49
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功