实验1利用matlab工具箱求解线性规划.docx
文本预览下载声明
实验1
利用Matlab工具箱求解线性规划
实验类型:
?验证性实验 ?综合性实验 ?设计性实验
实验目的:
会利用Matlab工具箱求解线性规划。
实验内容:熟悉linprog命令,会用该命令求解线性规划问题。
实验内容:
实验例题:
1、min z = -3xj + 4x2 一 2x3 + 5x4 4xj — + 2易 _ 易=—2 尤]+易+3工3 -尤4 V 14
V
一2工]+ 3x2 一 X3 + 2心-2x^x2,x3 0,x4无约束
2、运筹学课本48页例2.10
实验原理:
min f (x)
cTx
s. t? Ax
=b,
AeqX = beq lb = x = ub
程序由用户输入约束方程组的系数矩阵、常数向量、目标函数系数行向量及决 策的上下界,通过调用函数的形式,求解线性规划问题,并输出结果。
实验步骤:
上机实验前先编写出程序代码
录入、编辑程序
调适程序至正确运行
记录运行时的输入和输出
对程序做进一步完善
程序代码:
1、f=[?3;4;?2;5];
A=[1 1 3-1;2 -31-2];
b=[14;-2];
Aeq=[4-1 2-1];
beq=-2;
lb=[O;O;O;-inf];
[x,fval,exitfalg]=linprog(f,A,b)Aeq,beqJlb)
2S f=[0;0.1;0.2;0.3;0.8];
A=[0 0 0 0 0];
b=0;
Aeq=[1 201 0;0 02 2 1;3 1 203];
beq=[100;100;100];
lb=[0;0;0;0;0];
ub=[inf;inf;inf;inf;inf];
[x,favl]=linprog(f,A,b,Aeq,beqJlb,ub)
程序输出:
1、X 二
0
8. 0000
0
-6. 0000
fval =
2. 0000
exitfalg =
1
2、 ? Untitled3
Optimal solution found.
x =
30. 0000
10. 0000
0
50. 0000
0
favl 二
16
实验总结:
在使用1 inprog函数时,需要先定义相关变量。变量f定义了目标函数的系数,
约束条件是不等式时表示为AxCb,变量A定义约束了条件系数,变量b定义了 约束条件的不等号右边的常数,变量lb和ub分别对应决策的上下界向量,即所 求解需满足大于等于lb并小于等于ub,约束条件为等式时表示为Ax=b,变量 Aeq定义了约束条件的系数,变量beq定义了约束条件等式右边的常数。在定义 变量之后输入[x, fval, exitfalg]=linprog(f, A, b, Aeq, beq, lb)来调用 1 inprog 函数从而得到目标函数在约束条件下的最优解,其中x为得到的最优解,fval为 目标函数的最优值,exitfalg判断最优解是否存在,存在为1不存在为0.
显示全部