数学建模(一):LP 问题
在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济效益的问题。此类问题构成了运筹学的一个重要分支—数学规划,而线性规划(Linear Programming 简记LP)则是数学规划的一个重要分支。自从1947年G.B.Dantzig提出求解线性规划的单纯形方法以来,线性规划在理论上趋向成熟,在实用中日益广泛与深入。特别是在计算机能处理成千上万个约束条件和决策变量的线性规划问题之后,线性规划的适用领域更为广泛了,已成为现代管理中经常采用的基本方法之一。
我们可以使用 lingo 来求解复杂的线性规划问题:https://blog.csdn.net/qq_62789540/article/details/125926169,这里的重点不是 lingo
一、 MATLAB求解
线性规划求解主要弄清楚两个部分,目标函数(max,min)和约束条件(s.t.),我们求解时一般要化为MATLAB标准形式:
其中 c 和 x 为 n 维列向量,A、Aeq为适当维数的矩阵,b、beq为适当维数的列向量。
注意,是求最小值,而不是最大值。
如果使用MATLAB求解的代码为:
[x,fval]=linprog(c,A,b,Aeq,beq,LB,UB,X0,OPTIONS)
%% LB,UB分别为x的上界和下界,即最优解的范围
如,求解:
代码示例:
c = [-2,