1 概述
线性规划 (Linear Programming) 是规划类问题的重要分支。自1947年G.B.Dantzing提出求解线性规划的单纯型方法以来,线性规划在理论上趋向成熟。线性规划问题是在一组线性约束条件的限制下,求一线性目标函数最大或最小的问题。
线性规划模型的三要素:决策变量、目标函数、约束条件。
一般线性规划问题的标准型:
满足约束条件的解称为线性规划问题的可行解,使目标函数达到最大值的可行解为最优解,所有可行解的集合称为问题的可行域。
2 模型应用
线性规划问题常用于求解优化类问题,其目标函数、约束条件必须为线性函数。
3 编程求解(基于matlab)
Matlab中常用linprog函数求解线性规划问题。调用格式:
[x,fval]=linprog(f,A,b);
[x,fval]=linprog(f,A,b,Aeq,beq);
[x,fval]=linprog(f,A,b,Aeq,beq,lb,ub);
A,Aeq为矩阵;f,x,b,beq,lb,ub均为列向量。
示例:求解线性规划问题
编写Matlab程序如下:
c=[2;3;1];
a=[1,4,2;3,2,0];
b=[8;6];
[x,y]=linprog(c,-a,-b,[],[],zeros(3,1))
结果分析:y为目标函数最优值,x为对应决策变量取值。