利用遗传算法实现的自动排班方法及系统技术方案

技术编号:15823359 阅读:886 留言:0更新日期:2017-07-15 05:21
本发明专利技术公开了一种利用遗传算法实现的自动排班方法及系统,所述自动排班方法包括以下步骤:S1、接收排班请求,提交排班参数开始排班;S2、获取原始排班数据;S3、利用遗传算法对原始排班数据进行调整,生成新的排班数据;S4、返回所述新的排班数据。本发明专利技术能够保证在排班过程中,对上班时间、上班时长的调整贴近实际业务场景,精确控制每种调整的概率,并且本发明专利技术的排班结果的整体拟合度无震荡、平稳上升,可以达到排班目标、满足业务需求。

【技术实现步骤摘要】
利用遗传算法实现的自动排班方法及系统
本专利技术涉及一种遗传算法应用领域,特别是涉及一种利用遗传算法实现的自动排班方法及系统。
技术介绍
排班是合理安排上班人力的重要手段,在所有企业中均广泛应用。排班主要是根据公司实际业务发展需要,合理的安排各个时间段内上班人力,保证满足公司业务需求,且又不引起人力资源的浪费。一般企业中大都由管理人员或者专门的排班师进行手动排班,该工作方式存在天然缺陷:1、排班结果难以量化比较,排班人员的经验、技能、应变能力等各方面的综合素质都会影响排班结果。2、排班的效率低、耗时长,对排班人员的工作压力提出较高要求。3、每个排班人员有自己的排班风格和偏好,会引起排班结果存在较大差异,对上班员工的自我调节能力存在一定的考验。
技术实现思路
本专利技术要解决的技术问题是为了克服现有技术中手工排班存在很多缺点的缺陷,提供一种利用遗传算法实现的自动排班方法及系统。本专利技术是通过下述技术方案来解决上述技术问题的:本专利技术提供了一种利用遗传算法实现的自动排班方法,其特点在于,包括以下步骤:S1、接收排班请求,提交排班参数开始排班;S2、获取原始排班数据;S3、利用遗传算法对原始排班数据进行调整,生成新的排班数据;S4、返回所述新的排班数据。较佳地,步骤S1中所述排班参数包括上班时长;步骤S2中所述原始排班数据包括原始上班时长;步骤S3包括:S31、计算原始上班时长矩阵;其中,所述原始上班时长矩阵为1×N矩阵,所述原始上班时长矩阵中只有一个元素取值为1、其余元素取值为0,N个元素依次对应时长递增的N个上班时长,取值为1的元素对应所述原始上班时长;S32、生成概率转移矩阵;其中,所述概率转移矩阵为N×N矩阵,所述概率转移矩阵中的每个元素aij表示每个组上班时长从Ti调整为Tj的概率,i∈[1,N],j∈[1,N],T1-TN依次对应时长递增的所述N个上班时长;aij=a(N-i+1)(N-j+1);在所述概率转移矩阵的每一行中,aii均为每一行的最大值,并且每一行越靠近aii的元素取值越大;S33、用所述原始上班时长矩阵乘以所述概率转移矩阵,得到调整为各种上班时长所对应的概率;S34、按照调整为各种上班时长所对应的概率,随机生成一个新的上班时长;所述新的排班数据包括所述新的上班时长。较佳地,在所述时长递增的N个上班时长中,任意相邻两个上班时长的差值相等。较佳地,步骤S1中所述排班参数包括上班时间;步骤S2中所述原始排班数据包括原始上班时间;步骤S3包括:S31’、生成步长调整概率矩阵;其中,所述步长调整概率矩阵为1×M矩阵,M个元素依次对应递增的M个时间调整幅度;tk=tM-k;S32’、根据所述步长调整概率矩阵,随机生成一个调整步长;S33’、将所述调整步长与所述原始上班时间进行加法运算,生成新的上班时间;所述新的排班数据包括所述新的上班时间。较佳地,在所述递增的M个时间调整幅度中,任意相邻两个时间调整幅度的差值相等。本专利技术的目的在于还提供了一种利用遗传算法实现的自动排班系统,其特点在于,包括:接收模块,用于接收排班请求,提交排班参数开始排班;获取模块,用于获取原始排班数据;生成模块,用于利用遗传算法对原始排班数据进行调整,生成新的排班数据;返回模块,用于返回所述新的排班数据。较佳地,所述排班参数包括上班时长;所述原始排班数据包括原始上班时长;所述生成模块包括:第一计算单元,用于计算原始上班时长矩阵;其中,所述原始上班时长矩阵为1×N矩阵,所述原始上班时长矩阵中只有一个元素取值为1、其余元素取值为0,N个元素依次对应时长递增的N个上班时长,取值为1的元素对应所述原始上班时长;第一生成单元,用于生成概率转移矩阵;其中,所述概率转移矩阵为N×N矩阵,所述概率转移矩阵中的每个元素aij表示每个组上班时长从Ti调整为Tj的概率,i∈[1,N],j∈[1,N],T1-TN依次对应时长递增的所述N个上班时长;aij=a(N-i+1)(N-j+1);在所述概率转移矩阵的每一行中,aii均为每一行的最大值,并且每一行越靠近aii的元素取值越大;乘法运算单元,用于用所述原始上班时长矩阵乘以所述概率转移矩阵,得到调整为各种上班时长所对应的概率;第一随机单元,用于按照调整为各种上班时长所对应的概率,随机生成一个新的上班时长;所述新的排班数据包括所述新的上班时长。较佳地,在所述时长递增的N个上班时长中,任意相邻两个上班时长的差值相等。较佳地,所述排班参数包括上班时间;所述原始排班数据包括原始上班时间;所述生成模块包括:第二生成单元,用于生成步长调整概率矩阵;其中,所述步长调整概率矩阵为1×M矩阵,M个元素依次对应递增的M个时间调整幅度;tk=tM-k;第二随机单元,用于根据所述步长调整概率矩阵,随机生成一个调整步长;加法运算单元,用于将所述调整步长与所述原始上班时间进行加法运算,生成新的上班时间;所述新的排班数据包括所述新的上班时间。较佳地,在所述递增的M个时间调整幅度中,任意相邻两个时间调整幅度的差值相等。为了避免现有技术的手工排班存在的诸多缺点,本专利技术采用计算机自动排班,可以在各个维度上进行量化比较、避免排班人员的经验、技能、偏好而导致的排班结果差异。业内计算机自动排班算法中,遗传算法是一种较成熟且有成功案例的算法。该算法一般由:择优复制、交叉、变异等步骤组成,其中变异是遗传算中最重要的步骤。在自动排班中各个组每天的上班时间和上班时长时可以在规定范围内随机调整,故可将其抽象为算法中变异算子。要求变异过程所代表的实际调整内容尽量符合实际业务场景。实际使用过程中可以采用合适的概率(转移)矩阵作为调整参数,使上班时间和上班时长的调整,符合实际的业务场景。本专利技术的积极进步效果在于:本专利技术能够保证在排班过程中,对上班时间、上班时长的调整贴近实际业务场景,精确控制每种调整的概率,并且本专利技术的排班结果的整体拟合度无震荡、平稳上升,可以达到排班目标、满足业务需求。附图说明图1为本专利技术的实施例1的利用遗传算法实现的自动排班方法的流程图。图2为本专利技术的实施例2的利用遗传算法实现的自动排班系统的模块示意图。具体实施方式下面通过实施例的方式进一步说明本专利技术,但并不因此将本专利技术限制在所述的实施例范围之中。实施例1如图1所示,本实施例的利用遗传算法实现的自动排班方法包括以下步骤:步骤101、接收排班请求,提交排班参数开始排班;步骤102、获取原始排班数据;步骤103、利用遗传算法对原始排班数据进行调整,生成新的排班数据;步骤104、返回所述新的排班数据。其中,步骤101中所述排班参数包括上班时长;步骤102中所述原始排班数据包括原始上班时长;步骤103包括:步骤1031、计算原始上班时长矩阵;其中,所述原始上班时长矩阵为1×N矩阵,所述原始上班时长矩阵中只有一个元素取值为1、其余元素取值为0,N个元素依次对应时长递增的N个上班时长,其中优选地,在所述时长递增的N个上班时长中,任意相邻两个上班时长的差值相等;取值为1的元素对应所述原始上班时长;在本实施例的具体实施过程中,例如上班时长的范围依次为8、8.5、9、9.5、10、10.5、11小时,则N取值即为7,若原始上班时长矩阵为(1000000),则表示原始上班时长为8小时,若原始上班时长矩阵为本文档来自技高网...
利用遗传算法实现的自动排班方法及系统

【技术保护点】
一种利用遗传算法实现的自动排班方法,其特征在于,包括以下步骤:S1、接收排班请求,提交排班参数开始排班;S2、获取原始排班数据;S3、利用遗传算法对原始排班数据进行调整,生成新的排班数据;S4、返回所述新的排班数据。

【技术特征摘要】
1.一种利用遗传算法实现的自动排班方法,其特征在于,包括以下步骤:S1、接收排班请求,提交排班参数开始排班;S2、获取原始排班数据;S3、利用遗传算法对原始排班数据进行调整,生成新的排班数据;S4、返回所述新的排班数据。2.如权利要求1所述的利用遗传算法实现的自动排班方法,其特征在于,步骤S1中所述排班参数包括上班时长;步骤S2中所述原始排班数据包括原始上班时长;步骤S3包括:S31、计算原始上班时长矩阵;其中,所述原始上班时长矩阵为1×N矩阵,所述原始上班时长矩阵中只有一个元素取值为1、其余元素取值为0,N个元素依次对应时长递增的N个上班时长,取值为1的元素对应所述原始上班时长;S32、生成概率转移矩阵;其中,所述概率转移矩阵为N×N矩阵,所述概率转移矩阵中的每个元素aij表示每个组上班时长从Ti调整为Tj的概率,i∈[1,N],j∈[1,N],T1-TN依次对应时长递增的所述N个上班时长;aij=a(N-i+1)(N-j+1);在所述概率转移矩阵的每一行中,aii均为每一行的最大值,并且每一行越靠近aii的元素取值越大;S33、用所述原始上班时长矩阵乘以所述概率转移矩阵,得到调整为各种上班时长所对应的概率;S34、按照调整为各种上班时长所对应的概率,随机生成一个新的上班时长;所述新的排班数据包括所述新的上班时长。3.如权利要求2所述的利用遗传算法实现的自动排班方法,其特征在于,在所述时长递增的N个上班时长中,任意相邻两个上班时长的差值相等。4.如权利要求1所述的利用遗传算法实现的自动排班方法,其特征在于,步骤S1中所述排班参数包括上班时间;步骤S2中所述原始排班数据包括原始上班时间;步骤S3包括:S31’、生成步长调整概率矩阵;其中,所述步长调整概率矩阵为1×M矩阵,M个元素依次对应递增的M个时间调整幅度;tk=tM-k;S32’、根据所述步长调整概率矩阵,随机生成一个调整步长;S33’、将所述调整步长与所述原始上班时间进行加法运算,生成新的上班时间;所述新的排班数据包括所述新的上班时间。5.如权利要求4所述的利用遗传算法实现的自动排班方法,其特征在于,在所述递增的M个时间调整幅度中,任意相邻两个时间调整幅度的差值相等。6.一种利用遗传算法实现的自...

【专利技术属性】
技术研发人员:范红霞顾春峰邱志勇刘以初
申请(专利权)人:携程旅游信息技术上海有限公司
类型:发明
国别省市:上海,31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1