【数学建模】12 线性规划模型的求解方法
2023-09-14 09:13:11 时间
1 图解法
(1)有线性规划模型
• 目标函数
• 约束条件
在二元的约束条件画出来是直线,三元的约束条件画出来是一个平面。所以在约束条件转化为等于后,可以采用图解法
2 MATLAB函数求解方法
(1)模型: min z = cX
s.t AX <=b
命令
x = linprog(c,A,b)
(2)模型: min z = cX
s.t Ax <=b
Aeq.X = beq(等式约束)
命令
x = linprog(c,A,Aeq,beq)
(3)模范规范化
f = [-72 -64]'
A = [1 1;12 8]
b = [50 480]
vlb = [0 0]% 约束条件下限
vub=[100/3;inf]
[x,xmin] = linprog(f,A,b,[],[],vlb,vub)
运行结果
x =[20 30]’ fmin = 3360
3 Lingo法
(1)代码实现
model
max = 72*x1 +64*x2
[milk] x1 + x2 < 50
[time] 12*x1 + 8*x2 < 480
[epct] x*x1 <100
end
(2)Lingo实验结果分析
如图中的
MILK 0.0000 48.0000表示MILK增加一个单位,利润增加48。就比如如果公式中的50变成51,fmin = 3360+48
TIME 0.0000 2.00000表示TIME增加一个单位,利润增长2.
CPCT 40.000 0.0000 表示这个约束有40的波动,在这个区间内变化,利润是不会变的
(3)价值和应用分析
Lingo options -->Output Level–>选择Verbose
Lingo options–>Dual Computations -->选择Price & Range
X1 72 24 8表示X当前系数是72,增加24范围内或减小8的范围内,整个方案是不变的
X2 64 8 16 表示X2当前系数是64,增加8范围内或减小16的范围内,整个方案是不变的
MILK 50 10 6.66667 表示可以变动范围是最多增加10,最多减小6.66667
以下同理
4 课后习题
clear all;
close all;
clc;
f=[-5, -4,-6];
A=[1 -1 1;3 2 4;3 2 0];
b=[20 42 3]';
lb=[0 0 0 ]'; %自变量下界bai
[X,FVAL]=linprog(f,A,b,[],[],lb)
clear all;
close all;
clc;
f=[-5, -4,-6];
A =[2 -1 1;-8 2 -2]% 不等式参数
b =[12 8]'
Aeq=[-2 0 1;1 1 0];% 等式参数
beq=[3 7]';
lb=[0 0 0 ]'; %自变量下界bai
[X,FVAL]=linprog(f,A,b,Aeq,beq,lb,ub)
相关文章
- 3D游戏建模真的很累吗?前景怎么样?又需要哪样的基础
- 《软件方法(上)业务建模和需求》第2版 勘误(2022年10月24日更新)
- 软件方法(下)第9章分析类图案例篇Part05-案例二-智能建模工具
- R语言分布滞后线性和非线性模型(DLM和DLNM)建模|附代码数据
- 常用建模方法_建模方法有哪几种
- 数据仓库建模方法详解视频_三维建模流程步骤
- 数据仓库常见建模方法与建模实例演示[通俗易懂]
- 新版Rhino 7 for Mac(犀牛3D建模软件)中文版
- 数据建模方法/模型/规范/工具全解
- 建模与表单的动态化设计
- iPad 建模 | 三维形象创意指南
- 生态学建模:增强回归树(BRT)预测短鳍鳗生存分布和影响因素|附代码数据
- Revit 2023建筑信息建模(BIM)软件:为建筑行业提供完整的设计建模和协作平台
- 【普林斯顿博士论文】深度神经网络在监督学习、生成建模和自适应数据分析中的泛化
- 三大UML建模工具Visio、Rational Rose、PowerDesign的区别详解程序员
- Linux建模:提高操作系统性能的有效方法(linux建模)