一种多约束条件的并行任务调度方法技术

技术编号:24800924 阅读:17 留言:0更新日期:2020-07-07 21:16
本发明专利技术公开了一种多约束条件的并行任务调度方法,包括如下步骤:1.初始化过程:为每个并行任务设置特征编号,构建候选解编码串的编号池,设置候选解的初始可行解范围;2.重复寻优过程:利用编号池和可行解范围,产生多个候选解编码串;计算各编码串的适合度值,若满足迭代终止条件,则将适合度值最佳的候选解编码串作为最优调度方案;否则,分组统计候选解编码串的分布模型,并计算各组编码串的可行解范围;从可行解范围中产生新的候选解编码串,然后重复寻优过程。本发明专利技术采用了分组寻优以及搜索范围自适应调整策略,能够在很短的时间内搜索到最优调度方案。

【技术实现步骤摘要】
一种多约束条件的并行任务调度方法
本专利技术涉及一种多约束条件的并行任务调度方法,属于生产调度

技术介绍
生产调度就是按照一定的生产作业条件,安排工序执行流程及人员分配的工作。合理的调度方案,可以高效地调配生产劳动力,提高工作的效率。由于生产调度问题是一类NP-Hard,不适合传统的最优化技术进行求解。为了能有效求解生产调度问题,申请号为CN201610281979.3、CN201710866667.3以及CN201710965924.9的专利分别采用进化算法、改进的帝国竞争算法以及萤火虫算法实现柔性车间的任务调度;申请号为CN201710013045.6和CN201610628188.3的专利采用遗传算法分别实现了装配工艺优化和Codelet调度。这些以智能优化算法为核心的生产调度方法,计算量较大,寻优时间长,常常会出现“早熟收敛”的现象。因此,提高生产调度过程的寻优性能和寻优速度,对于生产实践具有现实的意义。
技术实现思路
本专利技术的目的在于克服现有技术中的不足,针对一类具有约束条件的并行任务调度问题,提供一种方法简单、性能优良的快速生产调度方法。为达到上述目的,本专利技术是采用下述技术方案实现的:一种多约束条件的并行任务调度方法,包括如下步骤:步骤A、为每个并行任务设置特征编号,形成候选解编码串的编号池;设置初始可行解范围;步骤B、依据可行解范围以及编号池随机生成多个候选解编码串,并计算候选解编码串的适合度值;步骤C、根据所述适合度值判断是否满足寻优终止条件,则将适合度值最高的候选解编码串作为最优调度方案,结束迭代过程;否则执行步骤D;步骤D、根据候选解编码串的适合度值,将候选解编码串分成若干组,分别计算各组候选解编码串的分布模型;步骤E、依据分布模型分组计算候选解编码串的可行解范围,然后转至步骤B。进一步的,所述候选解编码串的生成方法包括如下步骤:选择候选解编码串的一个编码位,根据该编码位的可行解范围,从编号池中随机取出一个范围内的特征编号放入该编码位上,如果找不到满足该可行解范围的特征编号,则挑选最靠近该范围的特征编号放入该编码位上,直到所有编码位放置了特征编号为止,此时所得的编码串即为所生成的候选解编码串。进一步的,所述编号池的构成包括如下步骤:编号池的所有编号由并行任务的特征编号组成,特征编号的数量等于各自子任务的数量。进一步的,候选解编码串的可行解范围由如下方式确定:设候选解编码串第k个编码位的重心为ak,则该编码位的可行解范围为[ak-σkak+σk],其中σk为第k个编码位的标准差,该范围如果超过特征编号的许可范围,则用特征编号的许可范围代替。进一步的,候选解编码串适合度值的计算包括如下步骤:设并行任务的最后结束时间为T,则其适合度值为1/T;若当前候选解不满足预设的约束条件,则启用惩罚机制:将适合度值缩小两倍以上。进一步的,所述约束条件包括:1)同一任务内的各子任务满足执行的先后顺序要求和完成的时间长短要求;2)不同并行任务间的子任务满足执行先后的顺序要求;3)完成并行任务的总人数及参与子任务的人数满足限额要求。与现有技术相比,本专利技术提供的一种多约束条件的并行任务调度方法所达到的有益效果包括:采用候选解分组搜索的策略,提高的候选解的多样性,避免了迭代过程过早停止;通过动态计算候选解编码串的可行解范围,提高了问题求解的自适应能力,加快了寻优速度。附图说明图1是本专利技术实施例提供的一种多约束条件的并行任务调度方法的流程图。具体实施方式下面结合附图对本专利技术作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。假设有一个调度任务由四个并行任务组成,各子任务的预设完成时间(单位:分钟)和参与人数如表1所示。执行任务的总人数为5人,同一任务中的各子任务按照序号先后关系执行,并且要求任务A的子任务3必须在任务B的子任务2之前结束;候选解规模为27,分为三组,每组9个候选解;最短完工时间的持续次数为5次。表1调度任务的预设时间及参与人数安排表步骤1,设置必要参数。根据问题描述和表1,确定任务调度的各个必要参数。步骤2,构造编号池、设置初始可行解范围。按照并行任务编号,设置四个任务的特征编号分别为1、2、3、4.由四个并行任务的子任务数量知,编号池可表示为:X={1,1,1,1,1,2,2,2,2,3,4,4,4,4}由于特征编号的数值范围在1到4之间,候选解编码串各编码位的可行解初始范围均设为[14]。步骤3,产生初始候选解。表2是随机产生的9个候选解编码串。例如,候选解1可表示为:x1={24412214412113}表29个候选解编码串编码位置1234567891011121314候选解124412214412113候选解241214211234412候选解322241144141321候选解444311114212224候选解521344221111244候选解611441421122423候选解743221121112444候选解814241232424111候选解911441244123221<本文档来自技高网...

【技术保护点】
1.一种多约束条件的并行任务调度方法,其特征在于,包括如下步骤:/n步骤A、为每个并行任务设置特征编号,形成候选解编码串的编号池;设置初始可行解范围;/n步骤B、依据可行解范围以及编号池随机生成多个候选解编码串,并计算候选解编码串的适合度值;/n步骤C、根据所述适合度值判断是否满足寻优终止条件,则将适合度值最高的候选解编码串作为最优调度方案,结束迭代过程;否则执行步骤D;/n步骤D、根据候选解编码串的适合度值,将候选解编码串分成若干组,分别计算各组候选解编码串的分布模型;/n步骤E、依据分布模型分组计算候选解编码串的可行解范围,然后转至步骤B。/n

【技术特征摘要】
1.一种多约束条件的并行任务调度方法,其特征在于,包括如下步骤:
步骤A、为每个并行任务设置特征编号,形成候选解编码串的编号池;设置初始可行解范围;
步骤B、依据可行解范围以及编号池随机生成多个候选解编码串,并计算候选解编码串的适合度值;
步骤C、根据所述适合度值判断是否满足寻优终止条件,则将适合度值最高的候选解编码串作为最优调度方案,结束迭代过程;否则执行步骤D;
步骤D、根据候选解编码串的适合度值,将候选解编码串分成若干组,分别计算各组候选解编码串的分布模型;
步骤E、依据分布模型分组计算候选解编码串的可行解范围,然后转至步骤B。


2.根据权利要求1所述的一种多约束条件的并行任务调度方法,其特征在于,所述候选解编码串的生成方法包括如下步骤:
选择候选解编码串的一个编码位,根据该编码位的可行解范围,从编号池中随机取出一个范围内的特征编号放入该编码位上,如果找不到满足该可行解范围的特征编号,则挑选最靠近该范围的特征编号放入该编码位上,直到所有编码位放置了特征编号为止,此时所得的编码串即为所生成的候选解编码串。


3.根据权利要求2所述的一种多约束条件的并...

【专利技术属性】
技术研发人员:杨启文余诗琦薛云灿陈俊风
申请(专利权)人:河海大学常州校区
类型:发明
国别省市:江苏;32

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

1