【技术实现步骤摘要】
一种基于基因表达式编程的项目调度规则挖掘方法及系统
[0001]本专利技术属于项目调度领域,更具体地,涉及一种基于基因表达式编程的项目调度规则挖掘方法及系统。
技术介绍
[0002]多技能资源受限项目调度问题(MS
‑
RCPSP)是一门非常值得研究的管理学科问题,它从资源受限项目调度问题(RCPSP)扩展而来。MS
‑
RCPSP早已被证实是NP
‑
hard问题,因此很多学者的求解思路都是使用智能算法,用于得到一个可以接受的解。对于小规模问题,使用精确算法往往能够在较短的时间里得到最优解,但是对于大规模问题,使用精确算法求得可行解一般需要花费非常多的时间成本,这是管理者所不能接受的,元启发式算法在求解大规模问题时,往往能在较少的时间内求得问题的近优解。
[0003]由于项目存在资源限制问题,有限的资源供应量不能够在同一时刻满足所有可以执行的任务,因此一个合理的任务调度方案能够在最大限度的保证资源高效的利用率的同时,实现一个或多个目标的最小化或最大化,如最小化项目完工时间C
max
、最大化资源利用率等。基于调度规则的启发式算法通常被用于与调度生成机制相结合生成调度策略来处理资源受限问题,结合并行调度机制,已经提出了大量的调度规则,例如最短加工时间(SPT)、最小松弛时间(SLK)以及最早作业截止日期(ODD)等,结合这些调度规则往往能在最短的时间里获得一个调度方案,尽管这些调度方案并不一定都是最优的,但是大多数都能获得近优解,易于被管理者使用
【技术保护点】
【技术特征摘要】
1.一种基于基因表达式编程的项目调度规则挖掘方法,其特征在于,包括以下步骤:确定项目的任务集合、资源集合以及技能集合;所述任务集合包括多个任务,每个任务对应一个执行开始时间和持续时间;所述资源集合包括多种资源,每种资源精通几种不同熟练等级的技能,每个资源所精通技能按照其熟练度水平对其进行了熟练度等级划分;所述技能集合包括多种技能;每个任务仅需要一种资源来执行,且执行该任务的资源需要精通该任务所需要的技能,以及对所需要技能的熟练度等级需要大于预设等级;利用所述资源集合执行所述项目,当项目完工时,项目中的各个任务均被执行,其中,每个任务仅能被执行一次,每个资源均可被用于重复安排任务,但同一时刻每个资源仅能执行一个任务;根据各个任务的执行开始时间和持续时间确定项目完工时间,并根据每个资源执行任务时单位时间的花费确定项目完工所需总花费;将项目完工时间和项目完工所需总花费作为两个优化目标,均衡参考两个目标值最小化情况,基于改进基因表达式编程算法,采用无监督的学习方式,训练获得项目的元启发式调度规则,并根据元启发式调度规则与各个任务的多种属性,确定每个任务的调度顺序和执行每个任务所用的资源,从而获得对应的项目调度方案,作为挖掘的项目调度规则;其中,所述改进基因表达式编程算法在解码过程采用后向遍历解码方法,降低了解码的空间复杂度,并在进化过程中加入多种邻域结构算子,提高了搜索前沿解的效率,且在进化过程中加入规则挖掘扰动机制,以避免进化过程陷入局部最优,最后在解的评价过程中使用改进的ENS分层排序方法,减少遍历解的次数,并根据解之间的支配与被支配关系来选择个体进入新的种群,选择标准为:非支配层级越低的个体具有较高的优先权,其次对于相同非支配层的个体选择拥挤距离更大的个体进入新种群,以提高新种群基因多样性,优化项目调度规则挖掘能力。2.根据权利要求1所述的方法,其特征在于,所述两个优化目标对应的两个目标函数为:min C
max
=max(s
j
+d
j
),j∈T,其中,C
max
为项目完工时间,W为项目总花费,d
j
为T
j
的持续时间,T
j
表示任务j,T为任务集合,s
j
为T
j
的开始时间,x
jr
为决策变量,决定T
j
是否被安排个R
r
,x
jr
={0,1},w
r
为R
r
执行任务时每个单位时间的花费,R
r
表示资源r,R为资源集合。3.根据权利要求1所述的方法,其特征在于,各个任务的多种属性具体包括:持续时间、紧前任务个数、紧后任务个数、前续任务个数、后续任务个数、最大技能等级需求、剩余路径长度、剩余路径任务个数、最晚结束时间、任务松弛时间以及可选资源数量。4.根据权利要求1至3任一项所述的方法,其特征在于,基于改进基因表达式编程算法求解目标函数的过程包括:编码过程:结合项目的任务集合和资源集合,根据设定的种群规模和个体头部长度随机生成项目调度规则的初始种群;解码过程:首先按照子体头部长度和共用的尾部将染色体分为几个相同长度的子体,
对每个字体基因逐个读取解码,然后再对几个子体的解码结果进行求和;其中,对每个子体基因逐个读取解码采用后向遍历解码方式,将读取的元素放置在一个二重列表中,列表中每个子列表的所有元素可对应于表达式树的每个深度的所有元素,计算二重列表中每个根节点的函数值,每计算完一个根节点对应的函数值则将该根节点对应的子节点删除,以降低解码的空间复杂度。5.根据权利要求4所述的方法,其特征在于,基于改进基因表达式编程算法求解目标函数的过程还包括:对初始种群迭代进化,最后将得到Pareto前沿解集;在迭代进化的过程中采用了变异、顺序插入转座、根转座、单点重组以及两点重组几种基本进化算子,并采用规则挖掘扰动机制以打破局部最优,且引入多种邻域结构,以提高搜索前沿解的效率;所述规则挖掘扰动机制为:根据预设的规则挖掘扰动预设值d_value进行判断,如果在d_value次迭代内Pareto前沿解集F0未发生改变,则对种群A中每个个体按照一定的扰动概率选择进行扰动的染色体,然后对选中的每个染色体进行随机初始化;引入的多种领域结构包括:基因位置交换、基因前向插入、基因后向插入以及基因片段逆序操作。6.根据权利要求4所述的方法,其特征在于,基于改进基因表达式编程算法求解目标函数在解的评价过程中使用的改进的ENS分层排序方法具体为:将由迭代后得到的新种群A
new
与迭代前的老种群A
old
组成的种群A
all
中的2N个个体进行目标函数值评价,确立个体之间的支配关系,最终将2N个个体分解为L个非支配层,同一非支配层中的解为非支配关系,不同层级之间具有如下关系:F1>...>F
z
>...>F
L
,在上式中,F
z
为第z非支配层的个体集合,z={1,2,...,L},在F
z
中的所有个体均被F
z
‑1中某一个或某几个个体支配;对于2个目标函数优化问题,个体之间的支配关系由个体之间的所有目标函数值的大小来决定;将2个目标函数值矩阵按某一个目标函数的值从小到大进行排序,经由此过程后,可以保证排序在后的个体不能支配其前面的每个个体;然后,进行L次循环遍历,每次遍历对未...
【专利技术属性】
技术研发人员:张利平,胡敏,刘庆,高拯,龚雨成,谭红霞,
申请(专利权)人:武汉科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。