决策类问题数学建模论文设计
-
标准
赛
行
健
参赛队员
文案
杯
数
学
建
模
竞
队长:吴玎祥
队员:张浩
队员:张兵兵
中国矿业大学“行建杯”数学建模竞赛
编
号
专
用
页
参赛队伍的参赛号码:(请各个参赛队提前填写好):
竞赛统一编号(由竞赛组委会送至评委团前编号):
竞赛评阅编号(由竞赛评委团评阅前进行编号):
中国矿业大学“行建杯”数学建模竞赛
题
目
公司决策优化问题
一.摘要
在充分理解题意的基础上,
我们提出问题,
并对问题作出分析,
提
出了合理的假
设模型,建立“利润
=
总
产值(销售额)
-
总成本”来使得利润最大化的生产销售
方案,
并对模型进行验证。
通过对问题的深入
分析计算,
我们将本题归结为规划
问题,并建立了线性规划模型
。通过计算得出:
(
1
)处理问题时,通过建立模型,尽可能利用数学手段,得到问题最优解,解
得
1~6
月份分别生产轻工艺品
800<
/p>
件、
1100
件、
1150
件、
1300
件、
1400
件、
1300
件时获得最大利润
898360.0
元
(
2
)
通过问
题
---
模型经过类比发现,
不促销获
得利润高于淡季促销以及旺季促
销,其获得利润分别如下:
89
8360.0
,
874780.0
,<
/p>
867426.0
。得出结论,不促销
旺
季促销情况下的产销方案优于淡季促销和旺季促销,
最大利润为
898360.0
元。
关键字:
线性规划
LINGO
利润最大化
总成本
总产值
销售
二.问题重述
某企业主要生产一种轻
工艺品,
在现有的营销策略下,
年初对上半年
< br>6
个月
的产品需求预测如表
1<
/p>
所示。
表
1
产品需求预测估计值(件)
月份
1
月
2
月
3
月
4
月
5
月
6
月
预计需求量
1000
1100
1150
1300
1400
1300
1
月初工人数为
12
人,工人每月工作
20
天,每天工作
8
小时,按
规定,工
人每个月加班时间不得超过
15
个小时。
1
月初的库存量为
200<
/p>
个。产品的销售
价格为
240
元
/
件。该产品的销售特点是,如果当月的需求不
能得到满足,顾客
愿意等待该需求在后续的某个月内得到满足,但公司需要对产品的价格
进行打
折,可以用缺货损失来表示。
6
月末的库存不大于
150
个。各种成本费用如表
2
所示。
表
2
产品各项成本费用
原材料成本
库存成本
缺货损失
外包成本
培训费用
100
元
/
件
10
元
/
件
/
月
20
元<
/p>
/
件
/
月
200
元
/
件
50
元
/
人
解聘费用
产品加工时间
工人正常工资
工人加班工资
100
元
/
人
1.6
小时
/
< br>件
12
元
/
小时
/
人
18
元
/
小时
/
人
(
1
)若你
是公司决策人员,请建立数学模型并制定出一个成本最低、利润最大
的最优产销方案;<
/p>
(
2
)公司销
售部门预测:在计划期内的某个月进行降价促销,当产品价格下降
为
220
元
/
件时,则接下来的两个
月中
8%
的需求会提前到促销月发生。试就一月
份(淡季)促销和四月份(旺季)促销两种方案以及不促销最优方案(
1
)进行
对比分析,进而选取最优的产销规划方案。
三.模型的假设
由于市场的不稳定性和一些问题的不确定性,我们做出以下的假设:
p>
(
1
)工厂正常生产且销售连续不间断且市
场稳定即各项费用及销售价格均不发
生变化
;
(
2
p>
)生产的产品都合格且都进行外包装;
(
3
)所有工人都在正常情况下(不允许请假离职)工作且培训期
间,员工正常
生产;
(
4
)在问题(
2
)中,促销
只把
5
、
6
月
份的需求提前到促销月
4
月中;
p>
(
5
)
本题中给定
的产品预测需求均为定值;
四.符号约定
n
Sum
生产月份
六个月的销售总额
Z
六个月的总成本
六个月的总利润值
Q
W
i
H
i
L
p>
i
i
月份的人力规模,
i
1
,2,3,4,5,6
p>
i
月初培训的员工数,
i
1
,2,3,4,5,
6
i
月初解聘的员工数,
i
1
,2,3,4,5,
6
P
i
U
i
S
p>
i
C
i
A
i
i
月份工人生产的产品数量,
i
1
,2,3,4,5,6
i
月份末的存货量,
i
1
,2,3,4,5,6
i
月份末的缺货量,
i
1
,2,3,4,5,6
i
月份的外包产品数量,
i
1
,2,3,4,5
,6
i
月份的加班工时数,
i
1
,2,3,4,5,
6
i
月份的市场需求量,
i
1
,2,3,4,5
,6
D
i
五.问题分析
根据题意要求建立数学模型并制定出一个成本最低、
利润最大的最优产销方
案;
该问题是一个在一定约束条件下的最优化问题,
初步分析题意后可知约束条
件是线性的,
所以用线性规划来
解决。
由于该题目涉及数据变量不是教多,
我们
可以直接使用
lingo
软件直接求解。
问题的约束条件由人数变化和每月销售件
数变化范围确定。
问题的目标函数
就是总利润函数,即总利润<
/p>
=
总销售额
-
成
本(包括人力成本、生产成本,库存缺
货成本以及其他成本等)
。
我们的目标是确定人数变化和每月销售件数的可行值,
使得我
们的成本尽可能低,总利润最大。
第二问实质上就是对于第一问的扩展,根据程序运行结果对
1
月
份和
4
月份促
销方案进行判断、
并改变相应的数字利用
Lingo
求解,
p>
得到最优结果与未促销时
的方案比较得到最优的产销规划方案。
p>
由上面部分,可设每月生产的产品数量
P
i
,每月的缺货量
S
< br>i
,
,
每月的库存量
U
i
,
每月解聘的工人数
L
i
,
每月培
训的工人数
H
i
,
每月所有工人总加工时间
A
i
,
每月的工人数
W
< br>i
,
以及每月的外包数量
总成本
的表达式为:
C
i
< br>和总成本
Z
其中
i=1,2,3
,4,5,6.
可得
Z
p>
Min
1920
Wi
18
Ai
50
Hi
100
Li
10
Ui
i
1
i
1
i<
/p>
1
i
1
i
1
6
6
6
6
6
i
1
i
1
i
1
p>
(注:
1920=12*8*20
即为每个
员工每月不加班情况下的工资)
根据以上分析,建立线性规划模型:
20
Si
100
Pi
200
Ci
6
6
6
Q
Sum
Z
根据该模型求解问题。
六.模型的建立与求解
(1)
目标函数:
6
6<
/p>
6
6
6
Z
Min
1920
Wi
18
Ai
50
Hi
10
0
Li
1
0
Ui
i
1
i
1
p>
6
i
1
i
1
i
1
< br>20
Si
< br>100
Pi
200
Ci
i
1
i
1
< br>i
1
6
6
(2)
约束条件
:
1
:
<
/p>
通过分析可知月份的工人数与当月初解雇人数之和应该等于上月工人
人数与当月初雇佣人数,由此得到
W
i
W
i
1
< br>H
i
L
i
0
2
:月份有工人数,而每个月工人
工作
20
天,每天工作
8
小时,每生产一
件产品需要
1.6
< br>小时,因此每个员工正常工作一个月能生产的产品数为
100
(
20*8/1.6
)件,考虑到加班情况,表示每月所有
工人加班总工时,因此每月加
班能生产的产品数为,
而每月总的
生产能力应该要大于实际生产的产品数,
所以
得到
A
100
W
i
i
< br>P
0
1.6
i
3
:在
i
月生产量在满足本月预计需求的
情况下与相邻两月的库存量或缺货
量满足
U
i-1
P
i
C
i
D
i
S
i
1
U
i
S<
/p>
i
0
<
/p>
4
:由题意可知,
1
月初的缺货量、
6
月末的缺货量为
0
、
6
月末的存货量不
大于
150
件,又因为
1
p>
月初的存货量为
200
,
< br>1
月初的工人人数为
12
,因此
得到
S
0
0
,
U
6
150
,
W
0
p>
12
,
S
1
200
(注:<
/p>
S0
表示
1
月初
的缺货量)
5
:
因为每
个工人每个月加班时间不得超过
15
小时,所以得到
15
W
i<
/p>
A
i
0
6
:
p>
因为
6
月末的库存不大于
< br>150
,
因此所有能生产的产品数与
1
月份的存货
量之和应该满足
7050
P
i
C<
/p>
i
U
0
7200
i
p>
1
i
1
6
6
除此之外,计划期间的市场需求量是常量,可以用计
划需求量
D
i
表示为
< br>
D
=
1000
,
1100
,
1150
,
1300
,
140
0
,
1300
i
i=1,
,6
< br>
则可得以下综合约束条件:
W
i
W
i
1
H
< br>i
L
i
0
i=1,
,6
p>
A
i
1.6
p>
P
i
0
i=1,
,6
100
W
i
U
p>
i
-
1
P
i
C
i
D
i
< br>
S
i
1
U
i
S
i
0
p>
i=1,
,6
ST.
S<
/p>
0
0
,
U
6
150
,
W
0
12
,
S
1
200
15
W
i
<
/p>
A
i
0
i=1,<
/p>
,6
7
050
P
i
C
i<
/p>
U
0
7200
i
1
p>
i
1
6
6
i=1,
,6
七.模型求解
问题(
1
)的求解:
根据目标函数
、约束条件并考虑实际应用中有些决策变量只能取整数,利用
Lingo
进行求解可以得到最优解,该公司的总生产计划如下所示:
表
3
总生产计划表
培训
加班
解聘
产品
产品
外包
生产
员工
时间
/
小
人工数
/
人
工
库存
/
缺货
/
数量
/
数量
/
月份
数
/
人
时
人
数
/
人
件
件
件
件
(
n
)
(
H
i
)
(
A
i
)
(
W
i
)
(
L
i
)
(
U
i
)
(
S
i
)
(
C
i
)
(
P
i
)
0
1
2
3
4
5
6
0
0
3
0
2
1
0
0
0
0
80
0
0
0
12
8
11
11
13
14
13
0
4
0
0
0
0
1
200
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
800
1100
1150
1300
1400
1300
得到最小成本的最优解为
841640.0
元。
而产品的销售
价格为
240
元
/
件,
则计划期间的销售收入为:
240*7250=174
0000.0
元;
计划
期间的利润为
1740000.0-841640.0=898360.0
元。
问题(
2
)
问题(
2
)利用的仍是问题(
1
)的模型,只是每个月的计划需求量有变化,
一月份促销方案中接下来的两个月中
8%
的需求会提前到当月,
于是得到一月份
需求
四月份促销方案
中,因此得到两种促销方案的预计产品需求量为
:
表
4
一月和四月促销方案的预计产品需求量
月份促销
1
2
3
4
5
6
一月份
四月份
1180
1000
1012
1100
1058
1150
1300
1516
1400
1288
1300
1196
利用前面给出的成本最小规划模型,将相关参数值代入该模型进行求解,得
到
一月份促销方案和四月份促销方案的结果分别为:
一月份促销方案:
总成本为
841620.0
元。
销售收入为元
220*1180+240*
(
1012+1058+1300+1400+1300
)
=1716400
;
利润为
1716400.0-841620.0=874780.0
元。
p>
各期间生产计划安排如下表
表
5
一月份促销方案中各期间生产计划安排表
加班
员工
时间
/
小
月份
数
/
人
时
(
n
)
(
H
i
)
(
A
i
)
培训
人工数
/
人
(
W
i
)
解聘
产品
人工
库存
/
数
/
人
件
(
L
i
)
(
U
i
)
产品
缺货
/
件
(
S
i
)
外包
生产
数量
/
数量
/
件
件
(
C
i
)
(
P
i
)
0
0
0
12
0
200
0
0
0
1
0
0
10
2
20
0
0
1000
2
0
0
10
0
8
0
0
1000
3
0
80
10
0
0
0
0
1050
4
3
0
13
0
0
0
0
1300
5
1
0
14
0
0
0
0
1400
6
0
0
13
1
0
0
0
1300
四月份促销方案:
总成本为
842254.0
元
销售收入为元
220*1516+240*(1000+1100+1150+1288
+1196)=1709680.0
;
利润为
1709680.0-842254.0=86726.0
元。
各期间生产计划安排如下表
表
6
四月份促销方案中各期间生产计划安排
加班
员工
时间
/
小
月份
数
/
人
时
(
n
)
(
H
i
)
(
A
i
)
0
1
2
3
4
5
6
0
0
3
0
4
0
0
0
0
0
80
8
0
0
培训
人工数
/
人
(
W
i
)
12
8
11
11
15
13
12
解聘
产品
人工
库
存
/
数
/
人<
/p>
件
(
L
i
)
0
4
0
0
0
2
1
(
U
i
)
200
0
0
0
0
0
0
产品
缺货
/
件
(
S
i
)
0
0
0
0
11
0
0
生产
外包
数量
/
数量
/
件
件
(
C
i
)
(
P
i
)
0
0
0
0
0
0
0
0
800
1100
1150
1505
1299
1196
结论
问题一:最大利润为
898360.0
元。
最优化决策:
1
月初时裁去
4
人,
2<
/p>
月初培训
3
人,
3
月不做改变,
4
月
< br>
初招聘
2
人,
5
月培训
1
人,
6
月裁去
1
人
1~6
月分别生产轻工艺品
800
、
1100
、
p>
1150
、
1300
、
1400
、
1300
件,销售轻工艺品
1000
、
1100
、
1150
p>
、
1300
、
14
00
、
1300
件,获
得最大利润
898360.0
元。
问题二:不促销盈利最多,为
898360.0
元。
根据经济学经验,所得结论与经验是不太
吻合。运用简单的数学工具,我们
对日常生活的小事做了定量分析。
但同时必须注意,
这里建立的数学模型与实际
产销还有一定
的距离,
因为在建模的过程中我们做了一些简化和假设,
也忽略
了
一些因素,但对于我们仍有一定的指导作用。
八.模型的分析
运用简单的数学工具
,
我们对日常生活的小事做了定量分析。
但同时必须注
意,
这里建立的数学模型与实际产销还有一定的距离,
< br>因为在建模的过程中我们
做了一些简化和假设,也忽略了一些因素,但对于我们仍
有一定的指导作用。
优点:
(
1
)
Lingo<
/p>
的程序清晰明了
,
通用性好。
(
2
)模型的建立运用
了线性规划来解决问题,使问题简单化。
(
3
)
p>
考虑影响产品的产销情况的各个因素,
尤其考虑到在第六个月
,
可能有缺货
的请况
,
使得分析更贴合实际
,
得到的结果也
更加合理。
缺点:
(
1
)
此模型过于理想化
p>
,
缺乏一定的合理性,
不能完全与实际情况
相符合,
存在
一定的误差。
(
2
)实际中员工的培训需要一定的时间
,
但在这里为了简化模型
,
< br>我们没有考虑
员工的培训时间
,
从而与实际情况脱节。
九.模型应用与推广
本模型具有很好
的推广前景,适用于企业工作人员任意变动,加班时间任意
变化的优化模型;当销售量变
化时,只需对模型中的相应
D
i
作以修
改;本模型
的条件中每月加班时间不超过
15
< br>小时,如改变需对模型适当修改。在问题(
2
)
中,
我们只考虑利润,
而确定了方案一比较好并
且其本身就是一个线性规划问题,
所以沿用问题(
1
)的模型。
十.参考文献
【
1
】王兵团。数学建模基础
[M].
北京:清华大学出版社,北京交通大学出版社,
2004
<
/p>
【
2
】王连堂主编,
《数学建模》
,西安:陕西师范大学,
2008.5
【
3
】姜启源,谢
金星,叶俊。数学建模(第三版)
【
M
】
.
北京:高等教育出版社,
2003
【
4
】
p>
《优化建模与
LINDO/LINDO
软件
》
,谢金星,薛毅编著,北京:清华大学出
版社,
2005.7
【
5
】姜启
源,数学模型【
M
】
.
北京:高等教育出版社,
1993.2
附录
lingo
代码:
MODEL
:
SETS
:
SET1/1..6/:W,A,H,L,U,S,P,C,D;
ENDSETS
DATA
:
D=1000,1100,1150,1300,1400,1300;
ENDDATA
MIN
=
@SUM
(SET1(i):1920*W(i)
+18*A(i)+50*H(i)+100*L(i)+10*U(i)+20*S(i)+1
00*P(i)+200*C(i));
@FOR
(
SET1(i)|i#GT#1:W(i)-W(i-1)-H(i)+L(i)=0;);
W(1)-12-H(1)+L(1)=0;
@FOR
(SET1(i):100*W(i)+A(i)/1.6-P(i)>=0);
200+P(1)+C(1)-D(1)-U(1)+S(1)=0;
U(1)+P(2)+C(2)-D(2)-S(1)-U(2)+S(2)=0;
U(2)+P(3)+C(2)-D(3)-S(2)-U(3)+S(3)=0;
U(3)+P(4)+C(4)-D(4)-S(3)-U(4)+S(4)=0;
U(4)+P(5)+C(5)-D(5)-S(4)-U(5)+S(5)=0;
U(5)+P(6)+C(6)-D(6)-S(5)<=150;
p>
P(1)+P(2)+P(3)+P(4)+P(5)+P(6)+C(1)+C(2)+C
(3)+C(4)+C(5)+C(6)>=7050;
P(1)+P(2)+P(3
)+P(4)+P(5)+P(6)+C(1)+C(2)+C(3)+C(4)+C(5)+C(6)<=72
00;
@FOR
(SET1(i):15*W(i)-A(i
)>=0);
@FOR
(SET1(i):
< br>@GIN
(W(i)););
@FOR
(SET1(i):
@GIN
(A(i));); <
/p>
@FOR
(SET1(i):
@GIN<
/p>
(H(i)););
@FOR
(SET
1(i):
@GIN
(L(i)););
@FOR
(SET1(i):
@GIN
(U(i)););
@FOR
(SET1(i):
@GIN
(S(i)););
@FOR
p>
(SET1(i):
@GIN
(P(i))
;);
@FOR
(SET1(i):
@GIN
(C(i)););
@FOR
(SET1(i):
@GIN
(D(i)););
END
Global optimal solution found.
Objective value:
841640.0
Extended solver steps:
0
Total solver iterations:
47
Variable Value Reduced Cost
W( 1)
8.000000 1920.000
W( 2) 11.00000 1920.000
W( 3)
11.00000 1920.000
W( 4) 13.00000 1920.000
W( 5)
14.00000 1920.000
W( 6) 13.00000 1920.000
A( 1)
0.000000 18.00000
A( 2) 0.000000 18.00000
A( 3)
80.00000 18.00000
A( 4) 0.000000 18.00000
A( 5)
0.000000 18.00000
A( 6) 0.000000 18.00000
H( 1)
0.000000 50.00000
H( 2) 3.000000 50.00000
H( 3)
0.000000 50.00000
H( 4) 2.000000 50.00000
H( 5)
1.000000 50.00000
H( 6) 0.000000 50.00000
L( 1)
4.000000 100.0000
L( 2) 0.000000 100.0000
L( 3)
0.000000 100.0000
L( 4) 0.000000 100.0000
L( 5)
0.000000 100.0000
L( 6) 1.000000 100.0000
U( 1)
0.000000 10.00000
U( 2) 0.000000 10.00000
U( 3)
0.000000 10.00000
U( 4) 0.000000 10.00000
U( 5)
0.000000 10.00000
U( 6) 0.000000 10.00000
S( 1)
0.000000 20.00000
S( 2) 0.000000 20.00000
S( 3)
0.000000 20.00000
S( 4) 0.000000 20.00000
S( 5)
0.000000 20.00000
S( 6) 0.000000 20.00000
P( 1)
800.0000 100.0000
P( 2) 1100.000 100.0000
P( 3)
1150.000 100.0000
P( 4) 1300.000 100.0000
P( 5)
1400.000 100.0000
P( 6) 1300.000 100.0000
C( 1)
0.000000 200.0000
C( 2) 0.000000 200.0000
C( 3)
0.000000 200.0000
C( 4) 0.000000 200.0000
C( 5)
0.000000 200.0000
C( 6) 0.000000 200.0000
D( 1)
1000.000 0.000000
D( 2) 1100.000 0.000000
D( 3)
1150.000 0.000000
D( 4) 1300.000 0.000000
D( 5)
1400.000 0.000000
D( 6) 1300.000 0.000000
Row Slack or Surplus Dual Price
1
841640.0 -1.000000
2 0.000000 0.000000
3 0.000000 0.000000
4 0.000000 0.000000
5 0.000000 0.000000
6 0.000000 0.000000
7 0.000000 0.000000
8 0.000000 0.000000
9 0.000000 0.000000
10 0.000000 0.000000
11 0.000000 0.000000