Matlab线性规划求解
线性规划问题的 Matlab 解法真挺顺手的,是用它的linprog函数。你只要把目标函数和约束条件丢进去,基本就能跑出个靠谱的解,响应也快,代码也简单。常见的资源分配、运输、生产优化这些问题,用它搞定不费劲。
Matlab 的优化工具箱里头,linprog
是主力选手,支持各种输入:目标函数系数c
、不等式约束A, b
、等式约束Aeq, beq
,还有变量上下界lb, ub
都能配。连初始值x0
都能设,灵活得。
最基本的使用格式也清爽:
x = linprog(c, A, b, Aeq, beq, lb, ub, x0);
返回结果也挺全:解向量x
、目标函数值fval
、退出标志exitflag
、运行信息output
,还有一堆拉格朗日乘子信息,全都打包送上。
还有个细节你得注意:Matlab 默认x >= 0
,也就是说变量默认不能为负。如果你要无限制,就得自己把lb
设成-Inf
。
我自己比较推荐你去看几个例子,啥都讲清楚了。像这个Matlab 优化工具 linprog 求解线性规划问题,示例清晰又实用。还有这几个链接也不错,适合你细细研究:
如果你经常在搞资源优化、物流调度这些问题,linprog确实是个蛮好用的利器,值得你试试。
下载地址
用户评论