油库人员的优化配制.docx
- 文档编号:24988850
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:48
- 大小:383.62KB
油库人员的优化配制.docx
《油库人员的优化配制.docx》由会员分享,可在线阅读,更多相关《油库人员的优化配制.docx(48页珍藏版)》请在冰豆网上搜索。
油库人员的优化配制
2011 年河南科技大学数学建模竞赛选拔
承诺书
我们仔细阅读了数学建模竞赛选拔的规则.
我们完全明白,在做题期间不能以任何方式(包括电话、电子邮件、网上
咨询等)与队外的任何人研究、讨论与选拔题有关的问题。
我们知道,抄袭别人的成果是违反选拔规则的, 如果引用别人的成果或其他
公开的资料(包括网上查到的资料),必须按照规定的参考文献的表述方式在正
文引用处和参考文献中明确列出。
我们郑重承诺,严格遵守选拔规则,以保证选拔的公正、公平性。
如有违
反选拔规则的行为,我们将受到严肃处理。
我们选择的题号是(从 A/B/C 中选择一项填写):
C
队员签名:
1.方健
2.孙亚娜
3.张腾月
日期:
2011 年8月22
日
评
阅
人
评
分
备
注
评阅记录(评阅时使用):
2011 年河南科技大学数学建模竞赛选拔
编 号 专 用 页
评阅编号(评阅前进行编号):
油库人员的优化配制
摘要
这篇文章是为了解决某油库人员配置问题的。
由于油库工作性质的特殊性,
工作人员需要经过合理地调配,油库才能高效的运转。
我们讨论的油库中,油
库管理者设置了计量与质量检测管理、收发油料管理、装备维护与维修管理、
安全保障管理和服务保障管理等5大类岗位,工作项目复杂,类目繁多。
因此
要进行合理的人员配置优化,才能使油库正常运转。
第一题要求各大类均设专职,同类目可兼职。
因此我们从人员工作变动入
手,建立时间节点序列,从而找出了各约束条件,接着我们采用整数分析法,
借助 lingo 软件来求得最优解。
第二题我们用与第一题类似的方法进行求解,只是约束条件更加复杂。
我
们仍借助 lingo 软件求最优解。
第三题由于约束条件过于繁琐,我们采用模拟退火法进行优化,用 matlab
软件求得最优解。
关键字:
整数规划,最优解,目标函数,工作量,优化配置。
一、 问题重述
油库是储存、供应油料及油料装备的重要机构。
由于油料是一种易燃、易
爆、易挥发、易渗漏,并有一定腐蚀作用的物质。
因此,一个油库管理工作要
保证正常的运行,必须要设置计量与质量检测管理、收发油料管理、装备维护
与维修管理、安全保障管理、服务保障管理等相关的岗位和人员配制。
某油库现有不同功能、不同规格的大小储油罐 80 个,储油量达 16 万立方
米以上,年收发油量达 7000 多立方米,工作任务十分繁重。
根据实际需要按工
种分类,油库的工作岗位可以分为5大类:
(A)计量与质量检测管理;(B)
收发油料管理;(C)设备维护与维修管理;(D)安全保障管理;(E)服务保
障管理。
由于油库工作的性质要求,每一大类都包括若干个具体的工作岗位,每个
岗位都需要数量不等的人员和工作量,附表给出了各类工作岗位、所需要的人
员数量和全年的工作量。
通常油库的所有人员在保障油库正常运行的条件下,
还要参加必要业务学习等活动,所以实际要求每个人全年累积从事油库管理相
关工作的总工作量不超过 175 天(每天按8小时计算),除节假日外,其他时
间用于业务学习等活动。
请你们研究解决下列问题:
(1)根据油库正常的工作任务需要,如果要求(A)、(B)、(C)和
(D)类人员都配专职,同类中的各工作岗位人员可以兼职。
那么各类工作岗位
最少需要配制多少人员?
平均年工作量是多少?
(2)考虑到人员和编制的问题,有关部门提出除了(A)、(B)两大类
专业性较强的工作专职专人外,(C)、(D)两大类在时间允许的情况下可以
相互兼职。
那么这个油库最少需要多少人员才能保证油库的正常运行?
并说明
各类人员的年总工作量为多少?
(3)如果油库的所有人员都经过了专业的培训,每个人都能从事(A)、
(B)、(C)和(D)类中的任何一项工作,每一个岗位都不设专职人员,那么
在时间允许的情况下,最少需要多少人员能够保证油库的正常运行?
并说明各
类人员的年总工作量为多少?
(4)你对该油库的岗位和人员的配置、提高油库的管理水平和运行效率
等方面有什么合理化建议。
附表:
油库5大类岗位、需要人员及年工作量
二、 问题分析
问题一的任务要求是通过形成 A、B、C、D 类各自配有专职,各类工作中配
有兼职的工作模式以保证油库各项工作正常进行,同时满足这年总工作量不超
过 175 天,来完成各类工作的人员优化配置求解。
因为全为收油和零发油相关的工作,根据问题要求,所有收油与零发油的
相关任务依赖于设备操作,其岗位所需的人数固定不变,且必须同时在岗,故
本题可把所有收油任务归为一类,所有零发油任务归为一类,且零发油的时间
不确定,
且收油和法油的相关的所有任务可以不再同一时刻进行,故可以让收油的工人
兼职与零发油的相关工作,所以对于 B 类就比较容易求得人员配置的最少人数。
题中的问题都有涉及有最少人员的求解。
由分析可知,A、C、D 几项工作中,
能明显的判断出 C 类与 D 类工作 12 月份参加工作的人数最多。
又知题目要求求
解最少配置人数,所以在最多工作人员参与工作的前提下,求解的最少配置人
员,才可以保证工作的正常运行。
所以对于 C 类与 D 类工作选择 12 月份来进行
变动节点的分析更加合理和准确。
然而由分析知道,对于 A 类,由于单双月工
作的人数差不多,所以可以考虑单双月来进行模型的建立。
对于问题一和二,我们选择整数规划模型来作为求解的最优模型,并利用
lingo 软件来求解结果。
对于问题三我们选择遗传算法来建立模型并用 matlab
来求解各项工作人员的最小值。
三、 模型的假设
1.零发油操作相关人员限制
2.收油相关工作合并
3.工作持续执行时间,员工保持不变
4.员工能正常工作,不考虑请假问题。
5.附表中的信息是2011年的信息。
6.员工的工作时间用一天来进行计算,不足一天按一天来计算。
四、 符号说明
a ----A类工作单月优化配置的最少人员数
a ' ----A类工作双月优化配置的最少人员数
c ----C类工作优化配置的最少人员数
d ----D类工作优化配置的最少人员数
λ ----CD类工作优化配置的最少人员数
a
ij
----A类工作中第i项工作在 t j 时刻的在岗人数
c
ij
----C类工作中第i项工作在 t j 时刻的在岗人数
d
λ
ij
ij
----D类工作中第i项工作在 t j 时刻的在岗人数
----CD类工作中第i项工作在 t j 时刻的在岗人数
t
i
----第j个人员的变动节点
1
f
f
f
f
A
A
C
D
----A项工作岗位上单月需配置的工作人员数
' ----A项工作岗位上双月需配置的工作人员数
----C项工作岗位上需配置的工作人员数
----D项工作岗位上需配置的工作人员数
M
M
M
Ai
Ci
Di
----A类工作岗位上年总工作量
----C类工作岗位上年总工作量
----D类工作岗位上年总工作量
M
CDi
----CD类工作岗位上年总工作量
五、 模型建立与求解
问题一
前面问题分析中已经说明选择C类12份作为基准来作为人员的变动节点来求
解最少人员的数值解。
所以首先分析C类工作,来求解各小项任务所需人员的最
少人数。
由题意可知,为保证油库各项工作的正常进行,同类的各项工作岗位上的
人员可以相互兼职,即某工作人员在与自己工作时间不相冲突,且其年总工作
量未超过175 天时可帮助完成同类工作中的其他工作,进而可使各类工作配置
最优人员。
C 类工作的人员优化配置求解
对于C类分析可知,可以明显的看出12月份的工作人员最多,C2的工作时间
不确定,C6是单月工作,所以选择C1、C3、C4、C5、C7这五项的工作起始时间
作为人员的变动节点,其中将C2、C6的人数闲置处理。
查阅2011年的日历,结合上面分析的五项工作起始时间可得人员变动节点
序列为{1、2、5、9、10、12、14、15、16、19、23、26、28、30},根据时间变
动序列以工作配置的总工作人员最少为目标函数,建立如下的整数规划模型:
我们规定C1、C3、C4、C5、C7在j某时刻的在岗人数为 c1 j 、 c 2 j 、 c3 j 、 c 4 j 、
c
5 j
。
Subject to:
2
min f
c
= c
1 j
c = 0, ( j ≠ 5)
3 j
4 j
5 j
c = 0, ( j = 1, 2,5, 7,8,13)
c= 0, ( j ≠ 8,9)
c= 0, ( j ≠ 7,13)
15
3 j
5 j
c ≥ 2 , c 21 ≥ 12 , c 48 ≥ 3
c ≥ 12, ( j ≠ 1, 2,5, 7,8,13)
c ≥ 2, ( j = 7,13)
M
c
C
≤ 175
其中:
5
1≤ j≤14 ⎩ i=1
ij
⎫
⎭
⎧0, (t j - t 1)c 21 ≥ M C 3
c 2 j = ⎨
(j=2,3,…14)
c 49
⎧0, (t 9 - t 8)c 48 ≥ M C 5
=⎨
对于 c 49 道理一样。
c = max ⎨∑ cij ⎬ + 2 表示对于C612月没有人员工作要加上
上述模型中, M C ≤ 175 表示C类工作中所有的员工的年平均总工作量不能
c
超过175天。
c 2 j = 0 表示 t j 时刻C3项工作已经完成,另外一种情况是没有完成。
⎧ 5⎫
1≤ j≤14 ⎩ i=1⎭
C2项工作中的两人的人数。
按照上述约束条件,我们通过lingo软件(附录1)求得最优解14人。
3
D类工作的人员优化配置
对于D类工作,有D1、D2、D3、D4、D5、D6六项基本工作,经分析,12月份
上班人数最多,所以采用和C类相同的办法,以12月份来结合附表上的工作起始
时间来确定人员变动节点序列。
其中,D2的工作时间不确定,所以将其人数闲置。
同时D6项工作需一人工作
241天,又知要求是没人的工作量不得超过175天,所以将闲置一人作为专职。
所以由D1、D3、D4、D5这四项的工作起始时间作为人员的变动节点。
所以可
以得到
{1,3,5,7,9,10,11,12,13,15,17,19,21,23,25,26,27,29,3
1},然后建立人员优化的配置模型,其中我们规定,D1、D3、D4、D5在j时刻
的在岗人数为 d 1 j 、 d 2 j 、 d 3 j 、 d 4 j 所以可得整数规划模型如下:
min f
D
= d
1 j
d= 0, ( j ≠ 6)
2 j
3 j
4 j
16
d= 0, ( j ≠ 3,8,9,12,16,17)
d= 0, ( j ≠ 3,8,12,16)
d= 0, ( j = 6,8,16)
d≥ 6
4 j
2 j
d≥ 20, ( j ≠ 6,8,16)
d≥ 6, ( j = 3,8,12,16)
M
d
D
≤ 175
4
1≤ j≤19 ⎩ i=1
ij
⎫
⎭
4
⎧0, (t 9 - t 8)d 28≥M D3
其中, d 29 = ⎨
⎧0, (t 17 - t 16)d 2,16≥M D3
d 2,17 = ⎨
述模型中, M
d
D
≤ 175 表示D工作中所有的员工的年平均总工作量不能超过175
天。
d 29 = 0 表示 t j 时刻D3工作已经完成,另外一种情况是没有完成。
对于
d
2,17
道理一样。
d
4
1≤ j≤19 ⎩ i=1
ij
⎫
⎭
然后加上其他所有的最多在岗人数。
同样我们通过lingo软件,求得最优解33人。
(附录1)
A类工作的人员优化配置
对A类工作,有A1、A2、A3、A4、A5、A6共计6 项具体的工作,经分析,
这类工作在单双月中上班的人数差不多,故分别以单双月中这6 项工作的起始
时间作为人员的变动节点序列,并建立与C 类工作人员优化配制相同的整数规
划模型。
(1)A类的单月的人员优化配置
单月的人员变动节点序列是{10,15,25}A 类工作在单月的人员优化配制模型如
下:
min f
A
= a
Subject to
5
1 j
2 j
3 j
13
22
31
a = 0, ( j ≠ 3)
a= 0, ( j = 1)
a = 0, ( j ≠ 1)
a ≥ 2
a ≥ 2
a ≥ 2
M
a
A
≤ 175
a = max ⎨∑ aij ⎫⎬
⎧ 3
1≤ j≤3 ⎩ i=1⎭
其中,
a 23
⎧0, (t 3 - t 2)a 22≥M A3
=⎨
求得结果:
最优解为3人。
(2)A类双月的人员优化配置
双月的人员变动节点为{1,10,25},所以在双月的人员优化配置如下:
min f
A
' = a '
1 j
a = 0, ( j ≠ 3)
6
2 j
3 j
4 j
13
21
32
42
a= 0, ( j ≠ 1)
a = 0, ( j ≠ 2)
a= 0, ( j ≠ 2)
a ≥ 2
a ≥ 2
a ≥ 2
a ≥ 2
M
a
A
≤ 175
a ' = max ⎧⎨∑ a
4
1≤ j≤3 ⎩ i=1
ij
⎫
⎬
⎭
通过lingo软件可求得最优解:
单月为3人,双月为4人。
(附录1)
365⨯ y
因此,A类应具备最少人数4人。
B类的人员优化配置
B类工作是依赖于设备的收发油的相关工作,其岗位所需的人数固定不变,
且必须同时在岗,所以,把所有收油任务归为一类,所有发油任务归为一类,
且收油发油的工作可以不在同一时间进行,所以让收油工人代替发油工人工作,
可得知与收油相关的需要的最少工作人员是23人,即B类工作最少需要人员为23
人。
E类的人员优化配置
对于E 类工作,其具体的4 项工作均为全专职工作,为避免员工总的工作
量超过175 天,故可根据公式求得y
min e ≥ []
175
(y表示使E类某一项具体工作所需最少人数)
7
根据上述函数,将题给数据代入求得E2为 5 人, E3 为9 人, E4为17 人。
通过上述的求解,得出油库的除伙食服务保障外所需的员工数为125 人,根据题
给要求可以得出E1所需人数为20 人。
因此E类共需51人。
问题二
问题二中,C.D两大类工作在时间允许的情况下可以相互兼职,故本文将
C、D归为一类,称为CD类。
由问题一可知,CD两大类均在12月份得工作人数
最多。
且C2、D2项工作的工作人员需闲置,又因为D6项工作要求除节假日外
每天一次,为避免其工作人员的工作量超过175天,所以D6项需要让一人闲置
出来。
综上,应以CD类除C2、D2、D6项工作的其他项工作在12月份得起始时
间为变动节点,得到变动节点序列
{1,2,3,5,7,9,10,11,12,13,14,15,16,17,19,21,23,25,26,27,28,29,30,31}
并建立整数规划模型如下:
特别说明,C1、C3、C4、C5、C7、D1、D3、D4、D5在j时刻的在岗人数分别
为 λ 1 j 、 λ 2 j 、 λ 3 j 、 λ 4 j 、 λ 5 j 、 λ 6 j 、 λ 7 j 、 λ 8 j 、 λ 9 j
min
f
CD
= λ
Subject to:
1 j
2,24
λ = 0, ( j ≠ 7)
λ= 0
3 j
4 j
5 j
6 j
λ= 0, ( j ≠ 2, 4, 6,9,13,15,17,19, 23)
λ= 0, ( j ≠ 12,13,14)
λ= 0, ( j ≠ 11, 21)
λ= 0, ( j ≠ 7)
7 j
8 j
λ= 0, ( j ≠ 4,9,10,15,19, 20)
λ= 0, ( j ≠ 4,9,15,19)
9 j
17
λ= 0, ( j = 2, 7,9,11,13,19, 21, 23)
λ ≥ 2
21
4,12
λ ≥ 12
λ≥ 3
8
A
B
CD
E
总人数
4
23
69
51
145
λ ≤ 175
67
λ≥ 6
3 j
5 j
λ≥ 12, ( j = 2, 4, 6,9,13,15,17,19, 23)
λ≥ 2, ( j = 11, 21)
7 j
8 j
λ≥ 6, ( j = 4,9,15,19)
λ≥ 6, ( j = 4,9,15,19)
9 j
λ≥ 20, ( j ≠ 2, 7,9,11,13,19, 21, 23)
M CD
9
1≤ j≤24 ⎩ i=1⎭
λ
2, j
=⎨
2, j-1 2, j-1
⎧0, (t 2, j - t 2, j-1)λ 2, j-1 ≥ M C 3
C 3
λ
7,10
=⎨
⎪ 7,9 7,9
⎧0, (t 10 - t 9)λ 7,9 ≥ M D3
D3
λ
7,20
=⎨
⎪ 7,19 7,19
⎧0, (t 20 - t 19)λ 7,19 ≥ M D3
D3
λ
4, j
⎪λ 4, j-1, (t j - t j-1)λ 4, j-1 < M
5
C
5
( j = 13,14)
因为A、B类工作的工作人员只能在同类工作岗位上兼职,所以与问题一的
结果相同,E类工作所需的最少工作的人员的求解和问题一也相同。
对于CD类
工作,通过lingo软件可以计算出最终结果,其最小人数为69人。
(附表1)
问题三:
如果油库的所有人员都经过了专业的培训,每个人都能从事(A)、(B)、(C)和
(D)类中的任何一项工作,每一个岗位都不设专职人员,那么在时间允许的情
9
况下,最少需要多少人员能够保证油库的正常运行?
并说明各类人员的年总工
作量为多少?
一:
模型的建立
该问题要求 A、B、C、D 四类工作合为一类,因此我们将这四类工作作为一
个大类进行优化。
而这四项工作中的类目繁多,约束条件冗杂,不适合进行简
单的整数规划或者枚举法。
因此我们采用现代优化算法中的模拟退火算法
(SA)来优化这个较大规模的模型。
运用模拟退火算法,首先要确定研究范围的解空间,确定目标函数,经多
次降温后求得最优解。
这个问题我们分别从单月和双月进行分析,下面我们以
双月为例,优化过程如下:
(一)、建立解空间:
本题的解空间由一个 m ⨯ n 阶矩阵构成:
S =
Sm
{ ij}⨯n ,其中 S ij 为第 i 项
工作在 t j 时刻工作的人数。
由附表可知,双月中 12 月的工作量最大,因此我们只分析 12 月的最小人
数,即可适用于所有双月的最小人数。
由于零发油及其相关工作时间不确定,为了避免该类工作发生时无人上岗,
我们将这些人数预置,不参与优化;同样由于“油库环境保养与卫生工作”只
在节假日休息,我们也将 1 人作为专职(该人不参与优化),以避免个人工作量
超出 175 天。
此外,由于双月 10号的收油及其相关工作依赖于设备操作,这些岗位所
需人员数固定不变,必须同时在岗,因此,我们将这一类工作整合为一项工作
进行分析。
最后,由模型假设,我们将不到一天的工作时间也记为一天。
我们以题目附表中要求的最小人数作为初始解, S (0) =
ç 22000000000000000000
ç 000000000000020000
⎭
⎛ 00000000000000000000
ç
ç 000000000350000000000
ç
00120
ç1212121212121212121212121212121212121212
ç 00001200012 001200
ç
ç 000000000000003333
ç
ç 000066000006600000
⎝
ç 00006000000600000
00002200000
00000000000
00000000000
121212121212121212120
12000120012000120
0000000000000
0000000002000
6000000660000
06000000600000
⎫
⎪
⎪
⎪
⎪
⎪
⎪
⎪
⎪
⎪
⎪
⎪
⎪
min f (S ) = max ( ∑ S ij)
(二)、确定目标函数
依题意,优化的最终目标是求得总人数的最小值。
由此建立目标函数:
9
1≤ j≤31 i=1
(三)、产生新解和接受新解
10
1、运用 matlab 软件,可随机的对某一项工作的人数进行调整,调整后可
得新解 S
(1) ;
2、将新解 S
(1) 与原解 S (0) 进行比差,得到代价函数差:
∆f = f (S
(1)) - f (S (0))
3、新解接收准则:
当新解对应的函数值较原解小时(说明函数值减小),此时新解被无条件接
受;
当新解对应的函数值较原解大时(说明函数值增大),此时新解被以某一概
率接受。
即对于某一个温度T i 和该优化问题的一个解 S (k ) ,可以生成 S (k +1) 。
接受 S (k +1) 作为下一个新解的概率为:
⎧
⎪
⎪
1
exp(
∆f < 0
) ∆f ≥ 0
其中,T 0 为对应初始解 S (0) 的一个参数,T i 为对应解 S (k ) 的一个参数。
4、降温过程:
在温度
T i
下,
f (S ) 经过很多次的转移之后,降低温度得到T i+1<
T i 。
在T i+1
下重复上述过程。
因此整个优化过程就是不断寻找新解和缓慢
降温的交替过程。
最终的解是对该问题寻优的结果。
在matlab软件中,我们设
降温系数α =
T i+1 =0.999,这样缓慢的降温过程会使结果更加精确。
T i
(四)、得到最优解
由上述过程,我们看到在每个T i 下,所得到的一个新状态 S (k +1) 完全依
赖于前一个状态 S (k ) ,可以和前面的状态 S (0) , S
(1) ……
S (k -1) 无关,因此
这是一个马尔可夫过程。
使用马尔可夫过程对上述模拟退火的步骤进行分析,结果表明:
从任何一
个状态 S (k ) 生成 S (k +1) 的概率,在 S (k ) 的邻域中是均匀分布的,且新状态
S (k +1) 被接受的概率满足上述公式,那么经过有限次的转换,在温度T i 下的
11
平衡态 S (i) 的分布由下式给出:
Pi(T i) =
exp(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 油库 人员 优化 配制