除了紧前关系与资源约束外,在某些特定情形下,项目的执行还面临时间约束(temporal constraint)。通常,一项任务在其所有紧前任务完成后即可开始,但是可能存在额外的时间上的要求使得该任务无法即刻开始。目前文献中常见的主要有两类时间约束(Chen et al.,1997)。一种是时间窗约束,另一种是时序约束。由于增加了约束条件,项目工期通常会显著延长,而项目调度的复杂性也急剧增加(Kreter et al.,2016)。
时间窗约束(time-window constraint)限制任务在特定时间区域内启动,即任务受传统的紧前关系限定其开始时间外,还受时间窗限制其可行的开始时间。时间窗设定两个任务的开始时间与完成时间之间的最大及最小滞后量(Bartusch et al.,1988)。对于一对给定的任务i与j,其时间窗约束可以表示为:
其中,表示任务j相对于任务i的最小(最大)开始-开始滞后量(start-to-start lag)。因此,对于任务j就构成了一个相对于任务i的时间窗。类似地可以定义基于其他三类搭接关系的时间窗约束。(www.xing528.com)
时间窗约束事实上是紧前关系的一种拓展。设定,即得到时间窗,这时式(2.9)就退化成传统的紧前关系或搭接关系约束。此外,任务的到达时间(release time)和截止时间(due date)也可以采用时间窗约束的形式进行表达。例如,任务的截止日期可以表示为该任务与虚拟任务1之间的最大开始-完成滞后量(maximal start-to-finish lag)。因此,有些学者认为时间窗约束就是对任务之间的搭接关系的全面描述,也称其为通用优先关系(generalized precedence relation,GPR)。
时序约束(time-schedule constraint)则限制任务只能在一组特定的开始时间序列(ordered list of scheduled start times)上开始(Chen et al.,1997)。交通时刻表是一类常见的情形。当所有紧前任务已经完成,而下一个可行的开始时间还没有到的时候,任务只能等待,因此就造成额外的等待时间(waiting time)。值得注意的是,等待时间不同于传统网络分析中的自由时差(free float)。等待时间是一种浪费,由于资源的闲置造成了额外的成本;而自由时差对项目经理来说则意味着便利,甚至可以带来收益,因为项目经理可以有意识地利用时差来推迟部分任务。简而言之,等待时间增加调度的刚性,而自由时差则增加调度的柔性。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。