问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请高人指点:matlab遗传算法工具箱编程,求一个多约束,多元方程的最小值?

发布网友 发布时间:2022-05-02 07:08

我来回答

1个回答

热心网友 时间:2023-10-10 17:32


将下属两个目标函数分别保存在两个m文件中
function f1=func1(x) %第一目标函数
f1=x(:,1).*x(:,1)./4+x(:,2).*x(:,2)./4;
function f2=func2(x) %第二目标函数
f2=x(:,1).*(1-x(:,2))+10;

function GA()
clear;clc;close all
NIND=100; %个体数目
MAXGEN=50; %最大遗传代数
NVAR=2; %变量个数
PRECI=20; %变量的二进制位数
GGAP=0.9; %代沟
trace1=[];trace2=[];trace3=[]; %性能跟踪
%建立区域描述器
% rep([PRECI],[1,NVAR])
FieldD=[rep([PRECI],[1,NVAR]);rep([1;2],[1,NVAR]);rep([1;0;1;1],[1,NVAR])];
Chrom=crtbp(NIND,NVAR*PRECI); %初始种群
v=bs2rv(Chrom,FieldD) ; %初始种群十进制转换
gen=1;
while gen<MAXGEN,
[NIND,N]=size(Chrom);
M=fix(NIND/2);
ObjV1=func1(v(1:M,:)); %分组后第一目标函数值
FitnV1=ranking(ObjV1); %分配适应度值
SelCh1=select('sus',Chrom(1:M,:),FitnV1,GGAP); %选择
ObjV2=func2(v(M+1:NIND,:)); %分组后第二目标函数值
FitnV2=ranking(ObjV2); %分配适应度值
SelCh2=select('sus',Chrom(M+1:NIND,:),FitnV2,GGAP); %选择
SelCh=[SelCh1;SelCh2]; %合并
SelCh=recombin('xovsp',SelCh,0.7); %重组
Chrom=mut(SelCh); %变异
v=bs2rv(Chrom,FieldD);
trace1(gen,1)=min(func1(v));
trace1(gen,2)=sum(func1(v))/length(func1(v));
trace2(gen,1)=min(func2(v));
trace2(gen,2)=sum(func2(v))/length(func2(v));
trace3(gen,1)=min(func1(v)+func2(v));
trace3(gen,2)=sum(func1(v))/length(func1(v))+sum(func2(v))/length(func2(v));
gen=gen+1;
end
figure(1);clf;
plot(trace1(:,1));hold on;plot(trace1(:,2),'-.');
plot(trace1(:,1),'.');plot(trace1(:,2),'.');grid on;
legend('解的变化','种群均值的变化')
xlabel('迭代次数');ylabel('目标函数值');
figure(2);clf;
plot(trace2(:,1));hold on;
plot(trace2(:,2),'-.');
plot(trace2(:,1),'.');
plot(trace2(:,2),'.');grid;
legend('解的变化','种群均值的变化');
xlabel('迭代次数');ylabel('目标函数值');
figure(3);clf;
plot(trace3(:,1));hold on;
plot(trace3(:,2),'-.');
plot(trace3(:,1),'.');
plot(trace3(:,2),'.');grid;
legend('解的变化','种群均值的变化');
xlabel('迭代次数');ylabel('目标函数值');
figure(4);clf;plot(func1(v));hold on;
plot(func2(v),'r-.');grid;追问呵呵 你这个是多目标优化问题,书上的的例子吧。。。还是谢谢你·

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...先讲女主的灵魂飘荡了一段时间,然后重生,请问是那本? 拯救者散热器怎么开 电脑如何一键还原系统电脑一键还原怎么操作 神舟笔记本电脑怎么重新设置神舟战神bios恢复出厂设置 神舟电脑恢复出厂设置神舟战神怎么恢复原厂系统 水泥楼梯如何铺木楼梯 家里面楼梯是水泥的不想铺地毯或者地砖还能铺什么 楼梯的水泥台阶上可以铺地板革吗 手机腾讯会议共享屏幕播放视频没声 腾讯会议共享屏幕没声音怎么办 求解方程组Ax=b; 用C语言编程算法: 我要解一个8方程7参数(或9参数)的非线性方程组,是不是最好用模拟退火和遗传算法? 非线性解析反演与遗传算法的结合反演方法 matlab中用遗传算法拟合方程 如何将微分方程组转化为约束条件,进而使用遗传算法求解? 怎样用遗传算法解较复杂的非线性方程组啊 目标方程和约束条件有微分方程,应该怎么用遗传算法拟合 用遗传算法解方程? 如何用matlab遗传算法求解方程最优问题 遗传算法解非线性方程组能解准吗 设计类工作月薪多少~! 要选择专业,做什么工作工资高? 平面设计师怎样才能月薪上万? 商业美术设计师就业前景如何? 怎样判断一个男的看到你时紧不紧张呢? 如何确定汽车刹车过紧 对于男友怎样才算是该松的时候松,该紧的时候紧? 怎么判断石膏紧还是松 昨天晚上睡觉梦见自己早上上班迟到,在路上没有等到公交车,认识了一个比自己小十岁左右的从来没见过的中 请问大连哪里可以换到1元 5角的硬币 要换大概2000元左右的 哪里有 要手续费的可以商量 请教!怎样用遗传算法应用于实际方程中,怎样确定个体评价?分清群体、个体、基因关系 MATLAB解一个奇怪的方程 南宁高速路况实时查询 建筑工地节后复工总结 月末,从南宁东进城至少需50分钟,明后天做好5点可轻松避堵! 10.01,2016.南宁高速实时路况请问各高速路车来往多吗 建筑施工现场的春节后复工报告怎么打 复工报告需要哪些部门签字? 云南文山州富宁县 距安徽合肥市有多少公里? 出道多年为人低调,嫁给比自己大15岁老公,如今竟被宠成公主,她是谁? 南宁到北海高速公路路况 东宫演员表介绍是怎样的? 广西梧州到南宁要多少公里 济宁到广西南宁有多远 春节后工程复工报告 南宁市坛洛收费站到贺州市回龙收费站高速怎么走 东宫的女主角是狐吗 南宁市距离广东省多少公里 无头东宫演员名单 2021年4月4号清明节,从深圳做大巴回广西南宁这边高速公路堵车吗?