一、获取代码方式

获取代码方式1:
完整代码已上传我的资源:【优化求解】基于matlab改进的遗传算法求解带约束的优化问题【含Matlab源码 1773期】

获取代码方式2:
通过订阅紫极神光博客付费专栏,凭支付凭证,私信博主,可获得此代码。

备注:
订阅紫极神光博客付费专栏,可免费获得1份代码(有效期为订阅日起,三天内有效);

二、部分源代码

clear;clc;close all%% 参数设置
PopSize = 20;
MaxGen = 20;
plt = 1; % 运行过程是否实时画迭代优化图,默认关闭(可极大提高运行速度)%% 初始化
Population = Init(PopSize);
ConvergenceObj = zeros(2,PopSize);
ConvergenceCon = zeros(2,PopSize);
BestSol = repmat(Population(1),1,MaxGen);%% 开始优化求解
h = figure();
for gen = 1:MaxGenMatingPool = TournamentSelection(2,PopSize,[Population.con],[Population.obj]); %挑选父代Offspring = GA(Population(MatingPool)); %进行交叉变异操作Population = EnviornmentalSelection(Population,Offspring,gen/MaxGen); %挑选子代RecordInfo(); % 记录迭代优化信息
end
function New_Population = EnviornmentalSelection(Population,Offspring,state)
% 本函数用来挑选新的种群N = length(Population);
New_Population = Population;%% 基本思路如下:为了确保种群的多样性,采用一对一替换机制。只有后代表现强于父代才会发生替换。
for i=1:Npcv = Population(i).con;ccv = Offspring(i).con;pf = Population(i).obj;cf = Offspring(i).obj;if (pcv == 0 && ccv == 0) % 采用 feasible rules 挑选新解if pf < cfNew_Population(i) = Population(i);elseNew_Population(i) = Offspring(i);endelseif pcv < ccvNew_Population(i) = Population(i);elseNew_Population(i) = Offspring(i);endend
end% %% 此处采用精英保留策略,每一次迭代之后,挑选指定数量的最佳解替换最劣解,其中数量于概率根据迭代进度计算
% objs = [New_Population.obj];
% cons = [New_Population.cons];
% [~,index] = sortrows([cons' objs']);
% n = ceil((1-state)*(N/100));
% if rand>state*state/2
%     New_Population(index(end-n+1:end)) = New_Population(index(1:n));
% end

三、运行结果

四、matlab版本及参考文献

1 matlab版本
2014a

2 参考文献
[1] 包子阳,余继周,杨杉.智能优化算法及其MATLAB实例(第2版)[M].电子工业出版社,2016.
[2]张岩,吴水根.MATLAB优化算法源代码[M].清华大学出版社,2017.
[3]周品.MATLAB 神经网络设计与应用[M].清华大学出版社,2013.
[4]陈明.MATLAB神经网络原理与实例精解[M].清华大学出版社,2013.
[5]方清城.MATLAB R2016a神经网络设计与应用28个案例分析[M].清华大学出版社,2018.

【优化求解】基于matlab改进的遗传算法求解带约束的优化问题【含Matlab源码 1773期】相关推荐

  1. 【Matlab路径规划】改进的遗传算法机器人避障路径规划【含GUI源码 703期】

    一.代码运行视频(哔哩哔哩) [Matlab路径规划]改进的遗传算法机器人避障路径规划[含GUI源码 703期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] ...

  2. 【Matlab验证码识别】遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别【含GUI源码 1694期】

    一.代码运行视频(哔哩哔哩) [Matlab验证码识别]遗传算法和最大熵优化+大津法(OTSU)+自定义阈值数字验证码识别[含GUI源码 1694期] 二.matlab版本及参考文献 1 matlab ...

  3. 【Matlab指纹识别】指纹识别门禁系统【含GUI源码 1692期】

    一.代码运行视频(哔哩哔哩) [Matlab指纹识别]指纹识别门禁系统[含GUI源码 1692期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余继 ...

  4. 【Matlab人脸识别】人脸实时检测与跟踪【含GUI源码 673期】

    一.代码运行视频(哔哩哔哩) [Matlab人脸识别]人脸实时检测与跟踪[含GUI源码 673期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1]孟逸凡,柳益君 ...

  5. 【Matlab树叶分类】BP神经网络植物叶片分类【含GUI源码 916期】

    一.代码运行视频(哔哩哔哩) [Matlab树叶分类]BP神经网络植物叶片分类[含GUI源码 916期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...

  6. 【Matlab水果蔬菜识别】形态学水果蔬菜识别【含GUI源码 919期】

    一.代码运行视频(哔哩哔哩) [Matlab水果蔬菜识别]形态学水果蔬菜识别[含GUI源码 919期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅. ...

  7. 【Matlab青草识别】形态学马唐草+牛筋草识别【含GUI源码 908期】

    一.代码运行视频(哔哩哔哩) [Matlab青草识别]形态学马唐草+牛筋草识别[含GUI源码 908期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...

  8. 【Matlab限速标志识别】形态学限速标志识别【含GUI源码 1142期】

    一.代码运行视频(哔哩哔哩) [Matlab限速标志识别]形态学限速标志识别[含GUI源码 1142期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 蔡利梅 ...

  9. 【Matlab电力负荷预测】粒子群优化支持向量机短期电力负荷预测【含GUI源码 751期】

    一.代码运行视频(哔哩哔哩) [Matlab电力负荷预测]粒子群优化支持向量机短期电力负荷预测[含GUI源码 751期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 ...

  10. 【Matlab图像融合】小波变换遥感图像融合【含GUI源码 744期】

    一.代码运行视频(哔哩哔哩) [Matlab图像融合]小波变换遥感图像融合[含GUI源码 744期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

最新文章

  1. grep之字符串搜索算法Boyer-Moore由浅入深(比KMP快3-5倍)
  2. 栈和队列--算法设计题3.15
  3. (转)类库 框架 模式
  4. pythongetattribute_对Github上Python开源项目进行分析时遇到的一个AttributeError的解释及其解决方法。...
  5. ddos中的tcp反射攻击技术分析
  6. Scrapy实例1-爬取天气预报存储到Json
  7. vue+iview 设置全局的url以及跨越问题
  8. Android 编程下 java.lang.NoClassDefFoundError: cn.jpush.android.api.JPushInterface 报错
  9. 将shell命令结果直接输出到HDFS上
  10. Scrum Master们,难道每天都在摸鱼?
  11. ssm把后端数据传到前端_ssm框架中前端jsp页面的数据除了表单提交以外如何传到后台?...
  12. 查询 mysql所有表名
  13. html模块常用命名总结
  14. 数学软件Maple使用教程
  15. 树莓派51/100 - Pico下用MicroPython在ssd1306上显示汉字
  16. Stimulsoft Reports.JS 2021.3.6 Crack
  17. 学习SEO有别的味道
  18. 计算机磁盘在线分区,电脑硬盘分区几个最好?你还把电脑硬盘分成C、D、E、F盘吗?...
  19. Python|计算工资
  20. 同比、定比和环比分析

热门文章

  1. 天翼如何才能鹏程×××?
  2. 在ubuntu下安装openjdk
  3. Leetcode题目practice
  4. toLocaleTimeString()方法在IE和谷歌浏览器上 根据本地时间格式,把 Date 对象的时间部分(不含日期)转换为“时间字符串”存在区别...
  5. c# log4net
  6. text-overflow:ellipsis
  7. Java实现栈和队列
  8. python opencv 创建滑动条调整值
  9. 七月算法机器学习1 相关数学基础
  10. unity动画实现物体颜色闪烁