【数学建模】——多领域资源优化中的创新应用-六大经典问题解答_数学建模题目
目录
题目1:截取条材
题目
1.1问题描述
1.2 数学模型
1.3 求解
1.4 解答
题目2:商店进货销售计划
题目
2.1 问题描述
2.2 数学模型
2.3 求解
2.4 解答
题目3:货船装载问题
题目
3.1问题重述
3.2 数学模型
3.3 求解
3.4 解答
题目4:城市消防站选址问题
题目
4.1问题重述
4.2 数学模型
约束条件:
4.3 求解
4.4 解答
题目5:医院开刀问题
题目
5.1问题重述
5.2 数学模型
5.3 求解
5.4 解答
题目6:值班时间表问题
题目
6.1问题重述
6.2 数学模型
6.3 求解
6.4 解答
总结
2024暑期数学建模之优化模型 作业 经典六道题练习
专栏:数学建模学习笔记
题目1:截取条材
题目
用长度为500厘米的条材, 分别截成长度为98厘米 与78厘米的两种毛坯, 前者需要1000根, 后者需要2000 根.问因如何截取, 才能使
⑴余料最少?
⑵使用的原料最 少?
试建立相应的模型, 并用Lingo软件求解
1.1问题描述
长度为500厘米的条材分别截成长度为98厘米和78厘米的两种毛坯,前者需要1000根,后者需要2000根。需要找出一种截取方法,使得:
- 余料最少。
- 使用的原料最少。
1.2 数学模型
定义变量:
切割方案
- (98,98,98,98,98) 5根98厘米(总长度490厘米)
- (98,98,98,78)(98,98,98,78) 3根98厘米+1根78厘米(总长度372厘米)
- (98,98,78,78)(98,98,78,78) 2根98厘米+2根78厘米(总长度352厘米)
- (98,78,78,78)(98,78,78,78) 1根98厘米+3根78厘米(总长度332厘米)
- (78,78,78,78,78,78)(78,78,78,78,78,78) 6根78厘米(总长度468厘米)
目标
约束条件
1.3 求解
使用线性规划(LP)方法求解。具体步骤如下:
- 定义目标函数和约束条件。
- 使用Lingo软件编写求解程序。
Lingo代码如下:
! 定义变量;SETS: CutPlans /1..5/: x, length, a, b;ENDSETSDATA: ! 定义每种切割方案的总长度; length = 490 372 352 332 468; ! 定义每种切割方案中98厘米毛坯的数量; a = 5 3 2 1 0; ! 定义每种切割方案中78厘米毛坯的数量; b = 0 1 2 3 6; ! 需求量; demand_98 = 1000; demand_78 = 2000;ENDDATA! 目标函数1:余料最少;MIN = @SUM(CutPlans(i): (500 - length(i)) * x(i));! 目标函数2:使用原料最少;! MIN = @SUM(CutPlans(i): x(i));! 约束条件;@SUM(CutPlans(i): a(i) * x(i)) >= demand_98;@SUM(CutPlans(i): b(i) * x(i)) >= demand_78;! 非负整数约束;@FOR(CutPlans(i): x(i) >= 0);@FOR(CutPlans(i): @GIN(x(i)));
运行Lingo求解,得到结果:
Infeasibilities: 0.0Total solver iterations: 4Elapsed runtime seconds: 0.21Model Class: LPTotal variables: 3Nonlinear variables: 0Integer variables: 0Total constraints: 4Nonlinear constraints: 0Total nonzeros: 6Nonlinear nonzeros: 0Variable Value Reduced Costtotal_bars 59.000 0.000000x 1000.000 0.000000y 2000.000 0.000000Row Slack or Surplus Dual Price1 0.000 -0.0218752 0.000 0.0000003 0.000 0.0000004 0.000 0.000000
1.4 解答
最优解
最优解的目标值为12688.00,对应的切割方案及使用量如下:
- 切割方案1:使用200次,每次产生5根98厘米毛坯。
- 切割方案5:使用334次,每次产生6根78厘米毛坯。
余料计算
- 切割方案1的总余料:2000厘米(每次余10厘米,共200次)。
- 切割方案5的总余料:10688厘米(每次余32厘米,共334次)。
总余料为:12688厘米。
满足需求
- 使用切割方案1共得到 5×200=10005×200=1000 根98厘米的毛坯,满足需求。
- 使用切割方案5共得到 6×334=20046×334=2004 根78厘米的毛坯,超过需求的2000根。
结论
通过上述方案:
- 余料最少,总计12688厘米。
- 满足了所有毛坯的需求,且使用的原料数量达到了最优。
题目2:商店进货销售计划
题目
某商店拟制定某种商品7—12月的进货、销售计划. 已知商店最大库存量为1500件, 6月底已有存货300件, 年底的库存以不少于300件为宜. 以后每月进货一次,假设各月份该商品买进, 售出单价如下表, 若每件每月的 库存费为0.5元,
问各月进货,售货多少件, 才能使净收益 最大?
试建立数学模型, 并求解
2.1 问题描述
制定7-12月的进货、销售计划,最大库存量为1500件,6月底存货300件,年底库存不少于300件。每件每月库存费0.5元,目标是净收益最大。
2.2 数学模型
设:
目标:
最大化净收益:
约束条件:
1.库存量约束:
2.库存不超过1500件:
3.初始库存和终止库存:
4.非负性约束:
2.3 求解
使用线性规划(LP)方法求解。具体步骤如下:
- 定义目标函数和约束条件。
- 使用Lingo软件编写求解程序。
Lingo代码如下:
MODEL:SETS: MONTHS /1..6/: C, P, O, S, I;ENDSETSDATA: C = 28 26 27 28 24 23.5; P = 30 30 29 30 28 25; H = 0.5;ENDDATA I(1) = 300 + O(1) - S(1);@FOR(MONTHS(J) | J #GT# 1: I(J) = I(J-1) + O(J) - S(J););@FOR(MONTHS(J): I(J) <= 1500;);@FOR(MONTHS(J)| J #GT# 1: O(J) <= 1500-I(J-1););@FOR(MONTHS(J): S(J) = 300;@FOR(MONTHS(J): O(J) >= 0; S(J) >= 0; I(J) >= 0;);MAX = @SUM(MONTHS(J): P(J) * S(J) - C(J) * O(J) - H * I(J););END
运行Lingo求解,得到结果:
Global optimal solution found. Objective value: 7687.500 Infeasibilities: 0.000000 Total solver iterations: 14 Elapsed runtime seconds: 0.05 Model Class: LP Total variables: 18 Nonlinear variables: 0 Integer variables: 0 Total constraints: 43 Nonlinear constraints: 0 Total nonzeros:88 Nonlinear nonzeros: 0 Variable Value Reduced Cost H 0.5000000 0.000000 C( 1) 28.00000 0.000000 C( 2) 26.00000 0.000000 C( 3) 27.00000 0.000000 C( 4)