用于生物学分析的机电系统的作业调度程序的制作方法

文档序号:6497857阅读:295来源:国知局
用于生物学分析的机电系统的作业调度程序的制作方法
【专利摘要】本发明涉及用于调度多个具有优先约束和互斥约束的并行作业序列的方法和系统。具体地说,本发明涉及用于对临床样本执行包括非抢占的作业的生物学分析的系统的调度程序,所述非抢占的作业必须使用一组资源(机器)并且具有关于释放时间和执行时间的约束。在现实工业系统中引起了调度问题。原则上,该问题可以被阐述为关于例如时间Petri网或者设定时间的自动机的并行模型的实时模型检验的例子。然而,在预期的运行时嵌入式平台中,该方法不是切实可行的。根据本发明的优选实施方式的调度方法,其利用了从成熟的模型检验工具的引擎提取DBM数据结构和Floyd-Warshall算法的核心的针对目的的算法解决方案,并且对其进行调整以适应该例子的特定要求。允许关于次优解的启发式大大降低了搜索的复杂度,并且通过递增算法改进的方式来容许获得预期的性能要求。
【专利说明】用于生物学分析的机电系统的作业调度程序

【技术领域】
[0001]本发明涉及用于调度受限于互斥约束和互相延迟约束的设定时间的作业的多个并行序列的方法和系统。具体地说,本发明涉及用于执行多个并行生物学分析的系统的调度程序,所述并行生物学分析对不同的样本应用不同的分析协议,同时共享一组机电设备。

【背景技术】
[0002]尽管调度具有互相延迟约束和互斥约束的具有允许的有限空余时间的多个并行且设定时间的作业序列的问题可以适用于各种各样的背景,但是在本发明中,我们参考用于生物学分析的机电系统的运行时的调度程序的具体实例来讨论该问题,而不失一般性,例如,所述机电系统诸如由b1M6rieux设计的VIDAS系统。
[0003]本实例的系统能够运行多个并行分析的组、每个并行分析都交替样本的生物学反应的步骤和由共享的机电设备执行的传送操作的步骤;每个反应步骤的持续时间是由该分析的生物学协议(protocol)确定的,但是在每个反应步骤完成之后,可以增加有限等待时间。
[0004]这引起了在每个步骤之后确定等待时间,以便符合最大允许延迟并且避免在共享资源的使用中的冲突,同时最大化并行分析的数量并且最小化它们的总完成时间的调度问题。
[0005]更详细地说,每种类型的生物学分析是由预处理阶段和分析协议组成的。在分析开始时,样本被包含在通过条形码唯一标识的试管中,而其他的管子含有稀释液和培养液并且其余的管子是空的。在预处理阶段,自动取样器在各个管子之间反复地倾倒样本;每个取样器操作持续确定的时间量。在连续的操作之间允许等待时间,但是它们被约束为在由培养期/反应期以及样本变质特性确定的最小值和最大值之间变化。在预处理阶段完成之后,分析协议遵循固定的步骤序列,在这期间,样本与试剂结合了并且通过其操作花费确定持续时间的读取头进行了多个测量(见图1)。
[0006]为了机电组件的有效利用,多个可能为不同类型的分析被并行执行。为此,该系统构成了多个单元,每个单元都用于每个分析。进而,每个单元被分成多个插槽,所述插槽携带可以经过不同的预处理并且可以在不同对象的样本上操作的不同的样本。然而,由于读取头被设计为同时对整个单元进行测量,因此在同一个单元中的所有插槽被约束为运行相同的分析协议(见图2)。
[0007]取样器和读取头在不同的插槽和单元之间共享并且不能被两种不同的分析同时使用。这引起了必须确定每个预处理的初始延迟以及在相同分析的事件之间的等待时间的可行值的调度问题。这种值必须避免取样器和读取头同时期操作的需求,避免等待时间超过允许的界并且保持尽可能短的分析组的总时间间隔。
[0008]问题阐述
[0009]该问题可以采用如同独立且非抢占的η个作业J1-.Jn的组的作业车间的调度的一般概念来正式建模,这η个作业J1--Jn的组具有释放时间Ir...rn以及确定的执行时间e^...en,每个作业被静态分配到m个独立的机器M^...Mni中的一个机器上,这受限于优先约束和互斥约束:
[0010]-对于任意两个作业Ji和Jk,优先约束可能要求在Jk完成和Ji开始之间的延迟在最小量Cfik和最大量d+ik内变化:
[0011](Tik≤ T1- (rk+ek)≤ d+ik
[0012]-对于任意两个作业Ji和Jk,互斥约束可能要求Jk和Ji的执行期不重叠;这可以使用以下两个判定中的任意一个来实现,所述两个判定保证Ji在Jk完成之后开始,或者保证Jk在Ji完成之后开始:
[0013]T1 ≤ rk+ek 或者 T^ei ( rk
[0014]该调度问题相当于确定释放时间y...rn,其受限于所有指定的优先约束和互斥约束,以便最小化多个作业序列的总完成时间。图3a示出了该问题的实例:作业Λ、J2、J3以及J4被分派到机器M1和M2上;作业J2具有相对J4的互斥以及相对于J1和J3的完成时间限制其开始时间的优先约束。优先约束还相对于J3的完成限制J4的开始时间的延迟。图3b示出了对于该问题的解决方案。
[0015]上文定义的调度问题是以非确定的释放时间与互斥约束和优先约束的密切联系为特征的,并且其因此可以根据例如时间Petri网(TPN)或者设置时间的自动机(TA)的非确定形式,通过像作业、约束以及资源的调度概念到地点/位置、转换、前提条件以及后置条件的直接转变来方便地进行阐述。这为建模工具和验证工具的应用开辟了道路,所述应用通过基于区域(见R.Alur, D.L.Dill在1990年的第17届ICALP会议论文集中的“Automata for modeling real-time systems”)或者差分界矩阵(DBM)带(见 D.Dill在 1989 年的 Workshop on Computer Aided Verificat1n Methods for Finite StateSystems 会议论文集中的“Timing Assumpt1ns and Verificat1n of Finite-StateConcurrent Systems” )的状态空间的符号分析,管理并行约束和非确定的计时器的结合。从这个方面来看,该调度问题可以被阐述为对符号状态空间中满足实时模型检验公式(例如,见 A.Fehnker 在 1999 年第 99 次 RTCSA 的 Real-Time Computing Systems andApplicat1ns中的以及1999年第6次国际会议上的第280-286页的“Scheduling a steelplant withtimed automata”)中的见证实例的识别,所述实时模型检验公式选择了 “在仅遍历在资源的使用中没有冲突的状态之后,在最大时间T内达到完成状态的所有行为”。T的最优值可以通过其被各种工具并且尤其是Uppaal环境支持的多项式迭代来获得(例如,见 K.Larsen 于 2003 年在 Springer Berlin-Heidelberg 的 Lecture Notes in ComputerScience 中的、编者为 Rajeev Alur 和 Insup Lee 的 Embedded Software 第 2855 卷第 16-19页中的 “Resource-efficient scheduling for real time systems” ;或者见 AlAttil1、F.Houben>G.1gna、S.Michels、F.Zhu> 以及F.ff.Vaandrager 在 2009 年的 QFM第 1-11 页中的“Adaptive scheduling of data paths using uppaal tiga”)。在 Oris 工具中(G.Bucci和 L.Carnevali 和 L.Ridi 以及 E.Vicar1.在 2010 年的 “ Internat1nal Journal ofSoftware Tools for Technology Transfer,,的第 12 卷第 5 其月的第 391-403 页的“Oris:aTool for Modeling, Verificat1n and Evaluat1n of Real-Time Systems”),通过估计在每个满足预期的排序约束的转换序列上花费的最少时间和最多时间来采用直接方式导出最优值T(E.Vicar1 在 2001 年8 月的 IEEE Trans, on Sff Eng.的第 27 卷第 I 期第 728-748页的“Static Analysis and Dynamic Steering of Time Dependent Systems Using TimePetri Nets”)。
[0016]不幸的是,这种类型的符号状态空间分析技术的直接应用面临状态空间爆炸(由于状态的数量随着作业的数量呈指数增长)和维数灾难(由于编码每个状态的数据结构的大小随着序列的数量呈平方增长)的问题。这导致了目前为止在线调度程序无法承受的存储器复杂度和时间复杂度,即使在通常不是在工业应用中会有的情况下,即在通常的PC上执行计算,也是如此。
[0017]要计算出实际复杂度的大小的量级,在TPN表示上使用Oris工具试验了基于DBM带的状态空间分析,该TPN表示由每单元三个插槽以及确定的延迟的两个单元组成的简单化的情况:TPN枚举程序将产生255128个DBM状态类的巨大的状态空间,这需要在双核2千兆赫兹的台式计算机上执行约20分钟,使用从初始状态到终端节点的4216条可能的路径。
[0018]即使应用通过模型简化来降低复杂度的现有技术,最终甚至通过DBM带(这比区域要紧凑的多)分割状态空间,此类状态空间分析技术的处理时间和存储器需求也不会与如上文描述的那个工业应用内的预期用途一致:这需要调度问题采用准实时方法被在线解决,并且在运行在有限处理资源和存储器资源上的嵌入式组件内可承受其执行。在这种生物学测试机器(但更普遍是在工业机电机器中)中通常可用的硬件资源是非常有限的,并且不与这种复杂数学算法实施的巨大需求相一致。
[0019]因此,将非常需要能在特定的问题中对换关于效率的普遍性分析,以便更快地运行并且对存储器和处理能力的要求更低的解决方案。
[0020]本公开目标
[0021]本公开的目标是克服至少一些与现有技术有关的问题。
[0022]本发明的另一个目的是提供需要有限的存储器和处理时间的方法,所述有限的存储器和处理时间用于计算符合要求并且有效的调度,该调度用于多个受限于互斥约束和互相延迟约束并且允许被延迟有限等待时间的设置时间的步骤的并行序列。
[0023]这被表示为在现实工业机电系统中引起的调度问题,其包括找到关于由一组共享的机电组件执行的操作的可行的时间安排,以便在最小的可能时间间隔中完成一组并行生物学分析,同时满足互斥约束和互相延迟约束。在这里描述的特定实例中,要求调度算法在装有目前配备了 200兆赫兹CPU和小于10兆字节的存储器的机电系统的硬件板上运行。此外,为了保证用于操作员和系统交互的足够的响应度,允许算法找到次优但有效的解,但是要求其在数秒量级的短时间内最终结束。
[0024]本发明的另一个目标是提供执行多个并行生物学分析的机电系统,每个并行生物学分析根据由生物学分析协议确定的时间安排约束和互相延迟约束,以及根据由对共享设备的互斥的使用确定的互斥约束,交替反应持续时间并且转换由共享设备执行的操作。


【发明内容】

[0025]本公开提供了如附图中说明的调度方法。
[0026]根据第一种实施方式,本公开提供一种调度方法,其在适合于执行具有确定的执行时间e^...en的多个非抢占作业Λ....Jn系统中,每个作业被静态分配到m个独立的机器Μ^...Mm中的一个上,以便确定关于每个作业Jf.Jn的释放时间ly...rn,以最小化整个作业集的完成时间,同时遵守以下优先约束:
[0027]-对于多个作业的预先确定的对Jx和Jy的集,在Jy完成和Jx开始之间的延迟在最小延迟d xy和最大延迟d+xy范围内:
[0028]d'y ≤ rx - (ry+ey) ( d+xy
[0029]以及遵守以下排斥约束:
[0030]-对于多个作业的预先确定的对Ji和Jk的集,其满足排斥约束的以下两个判定中的一个:
[0031]T1 ≤ rk+ek 或者 T^ei ( rk
[0032]因此,Jk和Ji的执行期不重叠,
[0033]该方法包含以下步骤:A)建立包括了收集满足优先约束的释放时间的差分界矩阵(DBM)带的边界集;B)选择DBM带中的一个并且将其从边界集移除;C)响应于被选择的DBM带不满足预先确定的对集合中的一对Ji和Jk的至少一个排斥约束,根据解决冲突的两个判定中的每个判定,建立被选择的DBM带的一个限制带Cri≥rk+ek或者I^ei ( rk) ;D)检查被限制的DBM带是否是非空的并且将非空的被限制的DBM带添加到边界集;E)重复步骤B到D,直到被选择的DBM带满足所有的排斥约束。
[0034]本发明的方法通过捕捉经由差分界矩阵(DBM)带的等价可能解集,并且通过将可行的解的识别安排为在图论结构中的搜索来允许对具有互斥约束和互相延迟约束的设置时间的作业的并行序列的调度。这使一系列算法优化和启发式方法成为可能,以加速对解的搜索,同时保持可能的时间安排配置集的准确(即,既不量化也不近似)表示。
[0035]根据另一种实施方式,执行重复步骤,直到边界集中的所有DBM带满足所有的排斥约束。或者,当已经达到了预先确定的最大搜索时间时,停止该重复步骤。在另一种实施方式中,在满足所有排斥约束的所有DBM带内选择最优解(调度)。
[0036]根据另一种实施方式,步骤B的选择是基于包括所谓的最长间隔启发式(安全的)或者所谓的最短间隔启发式(贪婪的)的启发式估计的。
[0037]根据另一种实施方式,提供了用于执行该方法的计算机程序。
[0038]根据本发明的另一种实施方式,提供了实施上述方法的系统。例如,这种系统可用在用于执行生物学分析的机电设备中。
[0039]本发明提供了大量的益处。本发明的优选实施方式的一个优势是可以使用有限的时间和硬件资源执行复杂的调度操作。原则上,该问题可以被阐述为实时模型检验,并且通过很好建立的状态空间分析方法来解决的例子。然而,由于被预期的嵌入式平台施加的硬件限制,这种枚举方法在特定的设置中不是切实可行的。使用本发明的方法,对DBM理论直接的有目的的调整,并且通过允许采用驱动搜索面向可行解的启发,大大降低了算法的复杂度。在本发明的优选实施方式中,之后的算法改进容许进一步减少计算时间,获得预期的性能要求。
[0040]根据本发明的实施方式的方法和系统的其他优势是允许该情况:其中通过回收未使用的资源,将一个或者多个分析添加到正在进行的调度,而没有危害已经被调度的分析的执行。

【专利附图】

【附图说明】
[0041]现在将通过实例的方式参考附图,其中:
[0042]图1是在用于执行生物学测试的机电设备中运行单个分析的系统组件的物理结构的示意图;
[0043]图2是包含在用于执行根据本发明的实施方式的生物学测试的机电设备中的插槽和单元中的多个分析的整个系统的物理结构的示意图;
[0044]图3a是确定释放时间ri…rn的调度问题的实例的示意图,该调度问题受限于所有指定的优先约束和互斥约束,以便最小化整个作业集的完成时间。图3b是确定释放时间值的可能解;
[0045]图4a示出了编码用于一对变量\和tj的解集的2维DBM ;
[0046]图4b示出了突出显示非有效约束的存在的2维DBM ;
[0047]图4c示出了涉及三个变量tp tj和tk的DBM的图论表示;
[0048]图5示出了由之后的关于根据本发明的优选实施方式的调度方法的排斥约束的选择构成的二叉树的实例。
[0049]图6示出了根据本发明的优选实施方式使用两个不同的启发式的性能测试实验的结果。

【具体实施方式】
[0050]为了之后的处理的目的,我们在这里介绍调度解依据的主要概念:差分界矩阵(DBM)和 Floyd-Warshall 算法。
[0051]DBM编码了识别关于N个变量的向量τ = (T1...Tn)的解集的不等式组的系统:

【权利要求】
1.一种调度方法,其在适合于执行具有确定的执行时间ei....en的多个非抢占的作业Λ....Jn,且每个作业被静态分配到m个独立的机器M1--Mni中的一个机器上的系统中,以便确定关于每个作业J1--Jn的释放时间IV...rn,目的是最小化整个作业集的完成时间,同时遵循以下优先约束: -对于所述多个作业的预先确定的对Jx和Jy的集合,在Jy完成和Jx开始之间的延迟在最小延迟d xy和最大延迟d+xy范围内:
d、y ≤ rx - (ry+ey) ( d+xy 以及遵循以下排斥约束: -对于所述多个作业的预先确定的对Ji和Jk的集合,满足排斥约束的以下两个判定中的一个:
T1 ≤ rk+ek 或者!T^ei ( rk 使得Jk和Ji的执行期不重叠,所述方法包含以下步骤: -A)建立包括了收集满足所述优先约束的释放时间的差分界矩阵(DBM)带的边界集; -B)选择所述DBM带中的一个并且将其从所述边界集移除; -C)响应于所选择的DBM带不满足所预先确定的对集合中的一对Ji和Jk的至少一个排斥约束,根据解决冲突的两个判定Cri ^ rk+ek或者I^ei ( rk)中的每个判定,建立所选择的DBM带的一个限制带; -D)检查被限制的DBM带是否是非空的并且将非空的被限制的DBM带添加到所述边界集; -E)重复所述步骤B到D,直到被选择的DBM带满足所有的所述排斥约束。
2.如权利要求1所述的方法,其中,执行所述重复步骤,直到所述边界集中的所有DBM带都满足所有的所述排斥约束。
3.如权利要求2所述的方法,其中,所述重复步骤在达到了预先确定的最大搜索时间时停止。
4.如任一前述权利要求所述的方法,其还包括: -在所有的满足所有的排斥约束的DBM带内选择最优调度。
5.如任一前述权利要求所述的调度方法,其中,步骤B是依据启发式估计来执行的。
6.如权利要求5所述的调度方法,其中,所述启发式包括估计所选择的满足所有排斥约束的DBM带的性能的最长间隔的(安全的)启发式。
7.如权利要求5或6所述的调度方法,其中所述启发式包括估计所选择的最小化总完成时间的DBM带的性能的最短间隔的(贪婪的)启发式。
8.如任一前述权利要求所述的调度方法,其中,在步骤C的执行中,使用将复杂度从O (η3)降低到0(η2)的Floyd-Warshall算法的优化版本,通过避免重新计算没有被限制影响的DBM系数,导出了限制带的标准形,其中η是作业的数量。
9.如任一前述权利要求所述的调度方法,其中,为了限制算法的时间复杂度以及所利用的数据结构的空间占用,实施代码优化。
10.如任一前述权利要求所述的方法,其中,所述系统包括多个资源,每个作业要求所述多个资源中的至少一个资源的可用性,以便执行,在每个预先确定的作业对之间的排斥约束表示所述对的两个作业对相同资源的可用性要求。
11.如权利要求10所述的方法,其中,所述资源包括被任何所调度的作业用于对其任务进行评价而利用的任何逻辑单元、电子单元或者机械单元。
12.—种计算机程序,所述计算机程序包括程序代码装置,以便当在计算机上运行所述程序时,执行根据任一前述权利要求所述的调度方法。
13.一种计算机程序产品,所述计算机程序产品包括存储根据权利要求X所述的计算机程序的计算机可读装置。
14.一种用于对多个非抢占的作业1....Jn的执行进行调度的系统,其中所述多个非抢占的作业Λ....Jn具有释放时间ly...rn以及确定的执行时间er..en,每个作业被静态分配到m个独立的机器Μ^...ΜΠ*的一个机器上,所述系统包括一个或者多个适合于执行根据权利要求1到11中的任意一个所述的调度方法的步骤的组件。
15.—种用于执行 生物学分析的机电系统,所述机电系统包括如权利要求14所述的系统。
【文档编号】G06F9/48GK104081352SQ201280065420
【公开日】2014年10月1日 申请日期:2012年12月13日 优先权日:2011年12月30日
【发明者】恩里科·维卡里奥, 洛伦佐·理迪, 安德里亚·卡里尼亚诺, 雅格布·特瑞妮 申请人:生物梅里埃公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1