概述
##matlab中常用线性规划的代码和例子:##
1.代码:#
2.例子:
代码:
f=[3;-2]; a=[2,3;2,1]; b=[18;10]; lb=[0,0]; [x,favl]=linprog(f,a,b,[],[],lb)%求出f(1)的极大值% clc,clear f=[-4;-3]; a=[2,3;2,1]; b=[18;10]; lb=[0,0]; [x,favl]=linprog(f,a,b,[],[],lb)%求出f(2)的极大值% clc,clear x0=[1;1]; a=[2 3;2 1]; b=[18;10]; lb=[0;0]; ub=[]; x=fmincon('((-3*x(1)+2*x(2)-12)^2+(4*x(1)+3*x(2)-24)^2)^(1/2)',x0,a,b,[],[],lb,ub) %同时求出f(1),f(2)的极小值% f1=-3*x(1)+2*x(2) f2=4*x(1)+3*x(2)在这里插入代码片
运行结果:
例2:
用optimization toolbox工具箱求解:
第一步建立2个.m文件
function f=fitness(x)
f=-24*x(1)-16*x(2)-44*x(3)-32*x(4)+3*x(5)+3*x(6);
function [c,ceq]=constraint(x)
c(1)=(x(1)+x(5))/3+(x(2)+x(6))/4-50;
c(2)=4*(x(1)+x(5))+2*(x(2)+x(6))+2*x(5)+2*x(6)-480;
c(3)=x(1)+x(5)-100;
ceq(1)=x(3)-0.85*x(5);
ceq(2)=x(4)-0.75*x(6);
第二步
输入optimization或optimtool 或matlab中app点击optimization
点击star运行
可能出现“ 提示未定义与 ‘double’ 类型的输入参数相对应的函数 ‘fitness’。
解决方法:(m文件不在一个文件夹,2个m文件点击另保存就好)
在运行结果:
15为迭代次数,还有结果在下方
最后
以上就是生动咖啡豆为你收集整理的多线性规划例子与”未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘fitness‘“的全部内容,希望文章能够帮你解决多线性规划例子与”未定义与 ‘double‘ 类型的输入参数相对应的函数 ‘fitness‘“所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复