油库人员优化问题.docx
- 文档编号:1151357
- 上传时间:2022-10-18
- 格式:DOCX
- 页数:32
- 大小:596.02KB
油库人员优化问题.docx
《油库人员优化问题.docx》由会员分享,可在线阅读,更多相关《油库人员优化问题.docx(32页珍藏版)》请在冰豆网上搜索。
油库人员优化问题
油库人员的优化配置模型
摘要
本题研究的是油库人员的优化配置问题。
一个油库管理工作要保证正常的运行,必须要设置计量与质量检测管理、收发油料管理、装备维护与维修管理、安全保障管理、服务保障管理等相关的岗位和人员配制。
对各类岗位人员进行合理配置,把提高油库的管理水平和运行效率作为整个模型的目标。
为了达到这一目标,在充分阅览资料和适当假设的基础上,我们将整个问题划分为一下几个部分进行解决。
第一部分主要进行数据处理。
在整个题中,我们需要对题中的数据进行分类整合,对于平均120次的岗位,不仅考虑了随机性和确定性的影响,还考虑了时间(月份/日期/周)的影响,得到了不仅方便运用而且相对简洁明了的数据处理结果(见附件二、附件三)。
第二部分主要是模型的建立可和求解。
在模型一中,我们考虑不同种类的岗位或类之间的兼职、专职情况,利用整数规划建立了模型。
为了防止不同岗位或类之间可兼职叠加准确度很低,我们采用粒子群算法,建立基于交叉pso算法的叠加模型,得到准确度很高的数据。
粒子群算法的运用不失为本文的一大特色。
利用matlab软件,对模型求解,在问题一中,我们得到A类最少配置4人,平均工作量为64.5,B类最少配置23人,平均工作量为21.4,C类最少配置29人,平均工作量为67.5,D类最少配置39人,平均工作量为126.2。
同样,对二、三问进行了求解,并获得了最优解。
第三部分主要针对模型结果进行分析,提出合理化建议。
对于合并的类越多,员工操作面越广,那么员工间的工作时间越接近,不会造成培训时的差别,对于员工的差异就越少。
保证各员工的工作时间一致,这样有利于缩短员工的培训学习时间的差距,使得员工间的工作量减小。
在此基础上,提出了8条合理化建议。
最后,在原有模型的基础上,我们还提出了模型推广。
此模型具有很大的推广性,不仅可以运用于多阶段的动态规划问题、实际工作安排问题和图论中的网络优化问题,具有很强的实用性。
关键字
整数规划MATLAB粒子群算法
一、问题重述
一个油库管理工作要保证正常的运行,必须要设置计量与质量检测管理、收发油料管理、装备维护与维修管理、安全保障管理、服务保障管理等相关的岗位和人员配制。
某油库现有不同功能、不同规格的大小储油罐80个,储油量达16万立方米以上,年收发油量达7000多立方米。
油库有五个岗位,由于油库工作的性质要求,每一大类都包括若干个具体的工作岗位,每个岗位都需要数量不等的人员和工作量,附录一给出了各类工作岗位、所需要的人员数量和全年的工作量。
通常油库的所有人员的总工作量不超过175天(每天按8小时计算),除节假日外,其他时间用于业务学习等活动。
需要建立模型,对(A)、(B)、(C)和(D)需要专职人员、(C)、(D)类可以兼职、(A)、(B)、(C)和(D)都可兼职三种情况分别求解,得到各类工作岗位最少需要配置的人员数、平均年工作量和年总工作量,最后得对该油库的岗位和人员的配置、提高油库的管理水平和运行效率等方面有什么合理化建议。
二、基本假设
1、收油操作同时进行
2、忽略机器故障、天气等客观特殊情况;
3、在工作持续执行期间,员工保持不变;
4、查阅的资料真实可靠,具有科学的严谨和真实性;
5、工作人员都为多技术人员,可以兼职多种工作岗位;
6、员工的工作时间以天为单位,不足一天按一天计算;
7、将同时进行的同类型工作(如收油相关工作)归为同一工作;
8、在工作过程中,不考虑员工生病、请假等特殊情况导致工作终止。
三、符号说明
:
第个工作人员:
工作持续时间
:
一年中的任何一天:
岗位上的第工作项
:
第i个粒子的第d维:
各类工作的年总工作量
:
服从均匀分布的岗位总和:
第项工作结束工作的时刻
:
第项工作开始工作的时刻()
:
的第d维是选择下式中取得最大值的分量
四、数据处理和模型建立
4.1数据处理
我们首先对年份进行划分:
:
平年;:
闰年;在对年份划分后,我们先考虑(平年):
我们直接从=[1~365]天,从中取定时间变动节点:
:
每次开始工作的间隔:
工作持续时间
:
第项工作开始工作的时刻:
第项工作结束工作的时刻
4.1.1仅限于月份时间
对于仅限于月份时间的,我们直接根据平年的月份长度排列:
我们将定义为工作时间间隔,那么
(1-1-1)
(1-1-2)
对于周期排列的,我们以下取定时间节点:
由于1月1日有可能是星期中的任意一天,那么我们将定义为1月1日距离工作开始的时间的长度;
1、对于工作每周一和周五开始工作,工作周期为7天。
对于周一:
(1-1-3)
(1-1-4)(1-1-5)
对于周五:
由于我们先定的周一,那么对于周五到工作开始的时间距离和的对应值如下:
(1-1-6)
(1-1-7)
(1-1-8)
2、对于是双周三开始工作,同理可得:
(1-1-9)
(1-1-10)
(1-1-11)
3.对于,我们可由中周一得出:
(1-1-12)
(1-1-13)(1-1-14)
4.1.2对于特定时间
对于,每两天一次,有以下情况:
1、假如从一号开始:
(1-2-1)
(1-1-14)
(1-2-2)
2、从二号开始:
(1-2-3)
(1-2-4)
(1-2-5)
对于,我们只有根据对应取定的年份,来进行取定:
(1-2-6)
(1-2-5)
4.1.3对于平均120次的工作类
由于每年平均120次,刚好是一年中的三分之一,那么我们就采用以下方法:
产生365个服从[01]均匀分布的数,如果在[0,0.33]区间内,则输出,反之则,表示的和,那么,
的依次值则为开始工作的时间点;即:
=(1-3-1)
(1-3-2)
产生随机数的程序见附件四,随机数见附件五。
根据以上这些数据分析方法,我们将题目中的数据进行了整合与分解,得到数据,见附件二。
同理可知,闰年可以获得整理后的数据,见附件三
4.2模型一配置最少人员模型
4.2.1问题分析
该模型是根据油库正常的工作任务需要,模型设计到同类相互兼职,不同类之间的兼职,专职等因素,同时员工在某一类工作中,只要是工作时间不冲突,个人的工作年工作时间天内即可相互兼职。
配置人员数最少即达到最优。
4.2.2模型的建立:
1、整数规划
要使工作人员的配制达到最优,我们建立如下的整数规划模型。
个人被要求去做项工作,每一个人如果时间不冲突,可以兼职做其他工作。
已知第个人开始工作的时间时刻是,结束工作的时刻是,由于完成这些工作所需要的时间是题中已知的,所以只需要求解出完成这些工作的人员最少即是最优。
我们将该问题由一个整数规划模型转化为一个人员优化配置模型的问题,其数学模型的标准形式如下:
(2-2-1)
(2-2-2)
根据表格中的数据,由类建立人员数量矩阵Y如下:
(2-2-3)
矩阵中的数据处理如下:
每次工作所需要用的时间:
(i=j=岗位代号)(2-2-4)
工作的时间节点:
(2-1-1)(
工作的时间节点之差:
(2-2-5)
其中:
问题求解出各类工作岗位最优配制员工数,为此本文确定了目标函数如下:
(i是取随机值的)(2-2-6)
平均年工作量:
)(2-2-7)
其中表示各类工作的年总工作量
2、pso算法
由于问题中有“平均每年120次,每年双周的周三进行”等随机性因素的产生,所以上面的人员配制优化模型不能完全的求解出B,C,D类工作岗位最优配制员工数。
基于出现这样的困难,我们采用粒子群优化算法(PSO)先将问题处理,在建立交叉粒子群算法的优化模型。
以下介绍粒子群算法的数学模型。
在一个以n维搜索空间和由m个粒子组成的种群中,第i个粒子的位置是用一个n维向量表示的,即每个粒子的位置都代表所求问题的一个候选解。
这些解得好坏由适应度函数值决定,适应度函数值越好则与之相关联的解就越好。
适应度函数与目标函数有关系,一般要根据具体闯题设定。
粒子的跳跃速度也是一个n维向量,即第i个粒子跳跃过程中所遇到的最好位置是S空间的一个点,可以表示为用g表示粒子群在前面跳跃过程中获得的种群最好位置的粒子,表示种群最好粒子的位置,t表示此时的循环次数。
粒子群中粒子的初始位置是在搜索区域内随机产生,每个粒子群的初始速度也是随机给定的。
在搜索的过程中,粒子群和每个粒子所经历的最好位置及相应的适应度函数值部分别被记忆下来。
粒子群算法最基本的概念在于加速每个粒子朝它自己所经历的和种群所经历的最好位置移动,移动过程可以用图2.1来描述:
图2.1pso粒子移动示意图
粒子群中每个粒子跳跃的速度和下一次的位置分别由公式(2-1)和(2-2)决定:
(2-2-8)
(2-2-9)
其中i=1,2,3...…m,,是正的常量,叫做加速常数。
是均匀分布在区间[0,1]的随机数,t=1,2,3......是循环次数。
从(2-2-1)式可看出,第f个粒子新速度的计算与粒子前面的速度、粒子当前位置和粒子个体最好位置的距离、种群所经历的最好位置与第i个粒子当前位置的距离有关系。
根据(2.2)式,第i个粒子将飞到一个新的位置。
一般的,每个粒子的好坏山目标函数的适应度值决定。
每个粒子的最好解和整个粒子群的最好解是分别按照下列两式更新的,对
(2-2-10)
(2-2-11)
3、交叉粒子群算法的模型
针对问题二中C,D类的员工可以相互兼职工作,而问题三中A,B,C,D类都不设专职工作者,即相互之间可以兼职工作(只要时间不冲突)。
所以我们上面的模型提出的粒子群算法中粒子就会交叉的移动,这时候上面的模型就不适用,而且在算法收敛求解过程中,为了防止过早成熟的收敛,我们进行局部搜索,设置最大的拉伸次数。
这样就能建立更加满意的人员配置优化模型。
交叉粒子群的算法:
步骤:
定义适应度函数,设置参数,,,,,,,的初始值和最大迭代次数是T。
步骤1:
种群规模设为m,随机在可行域里产生初始种群p(O)和初始速度v(O),
令t=O;
步骤2:
求中最好的点,求中第i个粒子的最好点,i=l,2,..m;
步骤3:
根据下式交换参数值
(2-2-12)
(2-2-13)
(2-2-14)
步骤4;按照公式(2-2-8)和(2-2-9)更新每个粒予的速度和位置
),得到新种群以及其中的每个粒子i的新速度和新位置,t=1,2⋯m;并依据计算结果更新和;
(2-2-15)(2-2-16)
步骤5:
求中的最好点)中第i个粒子的最好点,i=l,2,...m;
步骤6:
按照公式(2-2-10)和(2-2-11)更新中每个粒子的速度和位置,得到新种群p(t+1)和其中的每个粒子i的新速度和新位置i=l,2,...m;其中由公式(2-2-12)得到。
(2-2-17)
(2-2-18)
步骤7:
满足终止条件t=T,则停;否则,t=t+1,转步骤2。
注:
本算法的一些设置
1)参数设置:
初始值,,和结束时的值,,,,
2)的选取:
的第d维是选择下式中取得最大值的分量,即
表示绝对值,d表示第i个粒子的第d维。
五、模型的求解
5.1问题一
该问题主要是解决(A),(B),(C),(D)类人员都要配专职,并且同类中各工作岗位人员是可以兼职的。
只要时间不冲突,同类人员之间是可以相互兼职的。
所以根据上面的模型,我们的求解结果为:
A类:
由于,
由模型一分析得到以下结果:
=2+2=4
B类:
这类收油操作是同时进行的,但收油操作与零发油操作有0.5天的工作单
量,所以就有可能上午或者下午工作,而他们工作时间重叠的概率
由于
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 油库 人员 优化 问题