- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
非线性整数规划的遗传算法 Matlab 程序
通常,非线性整数规划是一个具有指数复杂度的 NP 问题,如果约束较为复杂,Matlab 优化工具箱和一些优化软件比如 lingo 等,常常无法应用,即使能应用也不能给出一个较为令人满意的解。这时就需要针对问题设计专门的优化算法。下面举一个遗传算法应用于非线性整数规划的编程实例,供大家参考!
模型的形式和适应度函数定义如下:
这是一个具有200个01决策变量的多目标非线性整数规划,编写优化的目标函数如下,其中将多目标转化为单目标采用简单的加权处理。
function Fitness=FITNESS(x,FARM,e,q,w)
适应度函数
输入参数列表
% x 决策变量构成的4×50的0-1矩阵
FARM细胞结构存储的当前种群,它包含了个体 x
e4×50的系数矩阵
q4×50的系数矩阵
% w 1×50的系数矩阵
%%
gamma=0.98;
N=length(FARM);%种群规模
F1=zeros(1,N);
F2=zeros(1,N);
for i=1:N
xx=FARM{i};
ppp=(1-xx)+(1-q).*xx;
F1(i)=sum(w.*prod(ppp));
F2(i)=sum(sum(e.*xx));
end
ppp=(1-x)+(1-q).*x;
f1=sum(w.*prod(ppp));
f2=sum(sum(e.*x));
Fitness=gamma*sum(min([sign(f1-F1);zeros(1,N)]))+(1-gamma)*sum(min([sign(f2-
F2);zeros(1,N)]));
针对问题设计的遗传算法如下,其中对模型约束的处理是重点考虑的地方
function [Xp,LC1,LC2,LC3,LC4]=MYGA(M,N,Pm)
求解01整数规划的遗传算法
输入参数列表
% M 遗传进化迭代次数
% N 种群规模
% Pm 变异概率
输出参数列表
% Xp 最优个体
LC1 子目标1的收敛曲线
LC2 子目标2的收敛曲线
LC3 平均适应度函数的收敛曲线
LC4 最优适应度函数的收敛曲线
参考调用格式[Xp,LC1,LC2,LC3,LC4]=MYGA(50,40,0.3)
第一步:载入数据和变量初始化
load eqw;%载入三个系数矩阵 e,q,w
%输出变量初始化
Xp=zeros(4,50);
LC1=zeros(1,M);
LC2=zeros(1,M);
LC3=zeros(1,M);
LC4=zeros(1,M);
Best=inf;
第二步:随机产生初始种群
farm=cell(1,N);%用于存储种群的细胞结构
k=0;
while k %以下是一个合法个体的产生过程
x=zeros(4,50);%x 每一列的1的个数随机决定
for i=1:50
R=rand;
Col=zeros(4,1);
if R0.7
RP=randperm(4);%1的位置也是随机的
Col(RP(1))=1;
elseif R0.9
RP=randperm(4);
Col(RP(1:2))=1;
else
RP=randperm(4);
Col(RP(1:3))=1;
end
x(:,i)=Col;
end
%下面是检查行和是否满足约束的过程,对于不满足约束的予以抛弃 Temp1=sum(x,2);
Temp2=find(Temp120);
if length(Temp2)==0
k=k+1;
farm{k}=x;
end
end
以下是进化迭代过程counter=0;%设置迭代计数器 while counter
第三步:交叉
%交叉采用双亲双子单点交叉
newfarm=cell(1,2*N);%用于存储子代的细胞结构
Ser=randperm(N);%两两随机配对的配对表
A=farm{Ser(1)};%取出父代 A
B=farm{Ser(2)};%取出父代 B
P0=unidrnd(49);%随机选择交叉点
a=[A(:,1:P0),B(:,(P0+1):end)];%产生子代 a
b=[B(:,1:P0),A(:,(P0+1):end)];%产生子代 b
newfarm{2*N-1}=a;%加入子代种群
newfarm{2*N}=b;
%以下循环是重复上述过程
for i=1:(N-1)
A=farm{Ser(i)};
B=farm{Ser(i+1)};
P0=unidrnd(49);
a=[A(:,1:P0),B(:,(P0+1):end)];
b=[B(:,1:P0),A(:,(P0+1):end)];
newfarm{2*i-1}=a;
newfarm{2*i}=b;
end
FARM=[farm,n
您可能关注的文档
- 麒麟饮料有限公司战略分析.docx
- 三门峡陶瓷产业园项目预可研报告.docx
- 合肥动漫产业政策汇编.docx
- 上海思鸣电子商务发展有限公司-财务报销制度及报销流程.docx
- 外国税制概览.docx
- 《成本会计》案例.docx
- 烽火EPON网管操作手册.docx
- 外汇收支情况表的编制说明.docx
- 以中国工商银行为比较对象对中国建设银行的综合分析.docx
- 公司活动小游戏.docx
- 3.1笔墨之美 课件 2025湘美版美术八年级上册.pptx
- 4.10认识船(教学课件)科学人教鄂教版二年级上册2025.pptx
- 第12课《 巧妙化解冲突》 课件 北师大版心理健康八年级上册.pptx
- 浙教版信息科技四年级下册全册教学设计教案.docx
- 2.3游戏中的观察(教学课件)科学教科版一年级上册2025.pptx
- 第13课《 合作的秘诀》课件 北师大版心理健康七年级上册.pptx
- 5.24 制作“冰琥珀”(教学课件)科学青岛版五四制三年级上册2025.pptx
- 人自然社会第9课《面对考试,你准备好了吗》课件.pptx
- 浙教版信息科技四年级下册全册学习任务单.docx
- 4.10认识船(教学课件)科学人教鄂教版二年级上册2025.ppt
最近下载
- 水利水电工程移民安置验收规程(2025版).docx
- 建筑装饰制图 项目1 手工抄绘装饰平面图、顶棚图、地面图 学习情境5 抄绘建筑装饰立面图.ppt VIP
- DB34_T 4986-2025 建设项目临时用地规模核定指南.docx VIP
- 2025年国土资源调查与管理生涯人物访谈报告.docx VIP
- 模块1 了解商品拍摄《商品拍摄与素材编辑》教学课件.pptx VIP
- 安徽博微太赫兹信息科技有限公司2018年校园招聘简章.PDF VIP
- 大学生职业规划大赛《机械设计制造及其自动化专业》生涯发展展示PPT三.pptx VIP
- 单元工程施工质量检验表与验收表(样表:5林草工程)(SLT 336—2025)水土保持工程质量验收与评价规范 - 副本.docx VIP
- 2023-2024学年上海市复旦附中高三下学期3月阶段性质量检测化学试卷含详解.pdf VIP
- 试油施工方案.doc VIP
原创力文档


文档评论(0)