做线性规划的老大是LINGO,用起来很方便,比较傻瓜的一种。
MATLAB做矩阵问题比较厉害。
MATLAB做线性和非线性规划都有工具箱,做整数线性规划要额外到网上下载ipslv_mex的工具箱。我感觉是不太好用。
在MATLAB中输入help linprog就会看到用法。
intlinprog 函数,用于进行整数规划和整数非整数的混合规划
[x,y,flag]=intlinprog(f,[1,2],A,b,C,d,xm,xM)
函数 linprog %用于求解线性规划问题(即目标函数与约束条件均为线性)
[x,fva] = linprog(f,A,b,Aeq,beq,lb,ub,x0,options)
x = linprog(f,A,b) %求min f ' *x sub.to 线性规划的最优解。
x = linprog(f,A,b,Aeq,beq) %等式约束 ,若没有不等式约束 ,则A=[ ],b=[ ]。
x = linprog(f,A,b,Aeq,beq,lb,ub) %指定x的范围 ,若没有等式约束 ,则Aeq=[ ],beq=[ ]
x = linprog(f,A,b,Aeq,beq,lb,ub,x0) %设置初值x0
x = linprog(f,A,b,Aeq,beq,lb,ub,x0,options) % options为指定的优化参数
[x,fval,exitflag,output,lambda] = linprog(…)
% fval返回目标函数最优值,即fval= f ' *x。
% exitflag为终止迭代的错误条件。
% output为关于优化的一些信息
% lambda为解x的Lagrange乘子。
希望能帮助你!