在人们的生产实践中,经常会遇到如何利用现有资源来安排生产,以取得最大经济效益的问题。此类问题构成了运筹学的一个重要分支—数学规划,而线性规划(LinearProgramming 简记LP)则是数学规划的一个重要分支。自从1947年G. B.Dantzig 提出求解线性规划的单纯形方法以来,线性规划在理论上趋向成熟,在实用中日益广泛与深入。特别是在计算机能处理成千上万个约束条件和决策变量的线性规划问题之后,线性规划的适用领域更为广泛了,已成为现代管理中经常采用的基本方法之一。
目标函数及约束条件均为线性函数,故被称为线性规划问题。线性规划问题是在一组线性约束条件的限制下,求一线性目标函数最大或最小的问题。
在解决实际问题时,把问题归结成一个线性规划数学模型是很重要的一步,往往也是很困难的一步,模型建立得是否恰当,直接影响到求解。而选适当的决策变量,是我们建立有效模型的关键之一。
线性规划的Matlab标准形式及软件求解:
Matlab中求解线性规划的命令为
[x,fval]= linprog(f,A,b)
[x,fval]= linprog(f,A,b,Aeq,beq)
[x,fval]= linprog(f,A,b,Aeq,beq,lb,ub)
其中x返回的是决策向量的取值,fval返回的是目标函数的最优值,f为价值向量,A,b对应的是线性不等式约束,Aeq,beq对应的是线性等式约束,lb和ub分别对应的是决策向量的下界向量和上界向量。
实例1:
运行求解得到:
x =
6.4286
0.5714
0.0000
z =
14.5714