
Matlab非线性规划,急急急
老师要求只能用Matlab不能用lingo,fmincon函数没调用明白,求大神们编一个.m文件,小弟先行谢过了,题目如图。...
老师要求只能用Matlab不能用lingo,fmincon函数没调用明白,求大神们编一个.m文件,小弟先行谢过了,题目如图。
展开
1个回答
展开全部
function solvenonlin
f=@(x)x(1)+x(2)+x(3);
function [c,ceq]=nonlcon(x)
c=[-(x(4)*x(1)+x(5)*x(2)+x(6)*x(3))+50;
-(x(7)*x(1)+x(8)*x(2)+x(9)*x(3))+10;
-(x(10)*x(1)+x(11)*x(2)+x(12)*x(3))+20;
-(x(13)*x(1)+x(14)*x(2)+x(15)*x(3))+15;
4*x(5)+5*x(8)+6*x(11)+8*x(14)-19;
-(4*x(5)+5*x(8)+6*x(11)+8*x(14))+16;
4*x(4)+5*x(7)+6*x(10)+8*x(13)-19;
-(4*x(5)+5*x(7)+6*x(11)+8*x(14))+16;
4*x(6)+5*x(9)+6*x(12)+8*x(15)-19;
-(4*x(5)+5*x(8)+6*x(11)+8*x(14))+16;
];
ceq=[];
end
A=[];
B=[];
Aeq=[];
Beq=[];
lb=[];
ub=[];
[x,fval]=fmincon(f,rand(1,15),A,B,Aeq,Beq,lb,ub,@nonlcon)
end
以上保存为m文件运行即可
结果
x =
Columns 1 through 7
8.1363 9.0626 8.5906 1.5606 0.1392 4.1954 0.7595
Columns 8 through 14
0.4864 -0.0684 0.6760 1.6888 -0.0937 0.6131 0.7348
Column 15
0.3903
fval =
25.7895
f=@(x)x(1)+x(2)+x(3);
function [c,ceq]=nonlcon(x)
c=[-(x(4)*x(1)+x(5)*x(2)+x(6)*x(3))+50;
-(x(7)*x(1)+x(8)*x(2)+x(9)*x(3))+10;
-(x(10)*x(1)+x(11)*x(2)+x(12)*x(3))+20;
-(x(13)*x(1)+x(14)*x(2)+x(15)*x(3))+15;
4*x(5)+5*x(8)+6*x(11)+8*x(14)-19;
-(4*x(5)+5*x(8)+6*x(11)+8*x(14))+16;
4*x(4)+5*x(7)+6*x(10)+8*x(13)-19;
-(4*x(5)+5*x(7)+6*x(11)+8*x(14))+16;
4*x(6)+5*x(9)+6*x(12)+8*x(15)-19;
-(4*x(5)+5*x(8)+6*x(11)+8*x(14))+16;
];
ceq=[];
end
A=[];
B=[];
Aeq=[];
Beq=[];
lb=[];
ub=[];
[x,fval]=fmincon(f,rand(1,15),A,B,Aeq,Beq,lb,ub,@nonlcon)
end
以上保存为m文件运行即可
结果
x =
Columns 1 through 7
8.1363 9.0626 8.5906 1.5606 0.1392 4.1954 0.7595
Columns 8 through 14
0.4864 -0.0684 0.6760 1.6888 -0.0937 0.6131 0.7348
Column 15
0.3903
fval =
25.7895

2023-08-15 广告
通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准格式存在于文件...
点击进入详情页
本回答由光点科技提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询