第26卷第9期 计算机应用 Vo1.26 No.9 2006年9月 Computer Applications Sept.2006 文章编号:1001—9081(2006)09—2166—3 一种基于工作流图的时间资源分配策略 刘丹妮,陈秀寓 (东北大学东软信息学院,辽宁大连116023) (1iudanni@neusoft.edu.an) 摘要:研究了工作流中时间分配问题。在具体活动基础上增加标记活动,以记录所在路由分支 的资源使用情况;将时间看作一种不可更新资源,并将时间资源分为私有资源、公有资源和双重资源 三类;提出了一种路由结构的时间资源分析方法和分配算法,根据不同路由分支的特点及初始分配 资源在实际执行过程中的使用情况,通过裂变与聚合进行时间资源再分配,保证整个工作流的顺利完 成。通过实例说明工作流图中时间资源分配过程。 关键词:工作流;时间资源;松弛时间 中图分类号:TP302 文献标识码:A A strategy for time resource allocation based on workflow graph LIU Dan—ni.CHEN Xiu一1Iru (/Veu,o ̄Information Institute,Northeastern Unwemity,Dalian Liaoning 116023,China) Abstract:Time allocation in worldlow was studied.Fimfly,labelde activities were added in order to make records of the resources usage on each route origin.Secondly,time was regarded as a kind of non—ernewable resources,and WaS claSsiifed into three types:private,public and mixed.Thirdly,an approach for time resource analysis and allcoation WaS proposed.In the ebginning,time resource WaS pre—allocated according to the characteristics of diferent routing,then during hte process of actual operation,time resource waS reallocatde according to time consuming situation by the method of splitting and converigng.Finally,a eaSe study illustratde the time resource allcoaiton process in workflow graph. Key words:worldlow;TR(time ersource);TSlaek(time slack) 0 引言 动不紧急,则将这些资源和相应时间的权限一同对该活动开 放。时间起到对其他资源权限的开放和关闭作用。 近年来,在科学研究和实践中,工程的时序安排越来越多 本文基于文献[7,8]的工作流模型,给出标记活动和具 地受到学者关注。Brueker对资源环境、活动特征和客观功能 体活动的概念,通过对时间资源的特性分析,将时间资源分为 等进行分类,对资源约束的单一模式和多重模式应用启发式算 私有资源、公有资源和双重资源三类。对四种结构中的活动 法进行了活动执行序列的讨论 J。Senkul提出了模拟资源消 和路由分支进行时间资源与松弛时间的界值确定。依据以上 耗和资源分配信息的语言,含有约束解决方案的进度表模型将 分析,给出时间资源的分配算法,详细描述了时间资源分配策 得到的工作流描述转换成约束语言,生成满足资源分配约束的 略,以及松弛时间的裂变和聚合。最后通过实例演示了算法 时刻表 。Hongehen将时间工作流进行扩展,对工作流描述 的分配过程。 的资源一致性进行验证的同时考虑了时间约束条件∞J。依据 业务实例在工作流四种路由结构的逗留时间分布,给出以资源 1 工作流模型 单位时间消耗成本最小化为目标的求解最优资源数量的方 在实际的工作流中,常有可跨越活动和可替换路径,对可 法 。目前很多文献将时间作为约束条件分析资源模型中人 跨越活动适当取舍和可替换路径适当选择,会提高工作流的 员、设备、软件等资源的分配和调度情况¨刮,但是将时间作为 执行效率。以文献[7,8]的工作流模型为基础,把时间纳入 不可更新资源纳入资源范畴,与其他资源统一分配和回收,取 资源范畴,对活动、分支和路由结构进行时间资源分配。 消模型外部时间约束的分配策略几乎未见报道。本文将研究 ,I和out分别表示工作流的入口和出口。活动节点形式化 时间作为资源在四种路由结构中的分配情况,以及工作流图中 地描述为:node( )=(DUR,E,L,opt.);这里,E=(E ,Ebs, 活动、各种路由分支的时间分配策略。 Ewf,Ews),L=( ,Lbs,Lwf,Lws)。opt.∈{0,1},opt.=1表示 工作流的过程模型由资源模型、组织模型、功能映射模型 i是可跨越活动,opt.=0时表示i不是可跨越活动。DUR是建 和约束规则组成。约束规则中时间约束是首要约束,如能将 模阶段活动的执行延迟;opt.标记可跨越活动;ElL表示此活 时间作为资源,并入资源模型,可减少约束规则描述的内容, 动的最早/最迟结束时间;b/w表示若出现条件分支,则选择 简化工作流模型的建模过程。将活动需要的时间、人员、设备 最优/最差分支运行; 表示跨过/保留所有可跨越活动, 等资源分配给某活动,当时间资源耗尽时,其他资源的权限立 并且,选择最优/最差可替换路径。 即被回收。如果这些非时间资源闲置或其他需要此资源的活 文中对该模型进行扩展,在并发结构和选择结构的分又 收稿日期:2006—01—22;修订日期:2006—04—03 作者简介:刘丹妮(1975一),女,黑龙江哈尔滨人,讲师,硕士,主要研究方向:工作流建模技术、工作流可达性分析方法、工作流资源分配策 略; 陈秀寓(1977一),女,讲师,硕士,主要研究方向:工作流模型建立方法、工作流静态验证与动态验证技术. 维普资讯 http://www.cqvip.com
第9期 刘丹妮等:一种基于工作流图的时间资源分配策略 2167 汇合处以及各分支末尾处分别增加活动以标记时间资源。 TSlacJ}( )=豫( )一∑DUR( ) 2)并发结构 2 时间资源分配策略 2.1 基本概念 并发结构中存在多个并发分支,各分支分配相同的资源, 由于活动实例不同,各分支的松弛时间会有不同(如图1),每 个分支的豫和TSlck记录在该分支末尾的标记活动上。以 a分支为例,资源分配情况如下: 豫 ( )=Ebf(j)一Ebf( )一DUR(j); 豫~( )=Ews(j)一Ebf( )一DUR(j); 对文献[8]的工作流图进行扩展,在具有实际含义的具 体活动基础上增加标记活动。 定义1 标记活动:是一种只起到标记作用且没有实际 含义的活动,它不被执行,只记录它所在分支的时间分配情 况。例如:并发结构和条件结构的分叉点(and_split,or_split)、 汇合点(andjoin,orjoin)以及顺序结构的末尾节点。 定义2 具体活动:工作流图中有实际含义,可被执行的 活动称为具体活动(activity,简称act)。 资源分为可更新资源、不可更新资源和双重约束资源。时 间的不可再生性决定了时间属于不可更新资源。作为一种资 源,时间有其特殊性: 1)可消耗性。时间也有折旧,例如有DUR(t)=6,则分配 给事件t的时间资源s为6,当t执行结束的时间为h=6,则t 的执行使得s的折旧率达到了100%;否则,(6一h)作为t的 松弛时间,并入t所在分支。 2)可裂变。时间具有非原子性。活动、分支或路由结构执 行未结束时出现资源耗尽,可向上一级申请资源支持,上级结 构将松弛时间出一部分分配给请求者的过程称为裂变。 3)可聚合。活动、分支或路由结构执行结束时,剩余资源 的权限提交给上一级并与上级资源合并的过程称为聚合。 时间资源分为三种:私有资源、公有资源和双重资源。 定义3 私有资源:私有资源用来描述路由结构、分支或 活动k的独有资源,记为TR(k)。该资源一旦分配给k,就被k 独占,k执行结束时的松弛时间记为TSlcak(J}),可按照资源 分配策略进行聚合。 定义4公有资源:公有资源用来描述工作流实例别 的 松弛时间,记为TSlack(WF)。所有活动实例或结构分支在资 源不足时,都有权限按照裂变规则请求裂变TSlack(WF)。 定义5 双重资源:双重资源用来描述路由结构中任一 分支 的松弛时间,记为TSlcak( )。它具有私有资源和公有 资源的双重特征。 中的任一活动k未结束时出现TR(k)耗 尽,可申请裂变TSlcak( )。同时,只有理中的活动有权申请裂 变TSlack( ), 分支执行结束时,TSlack( )剩余资源失效或 者聚合,具体情况依据 所在路由结构和资源分配策略而定。 结束时的剩余资源记在该分支的标记活动k上,记为 TSlack(k)。 TR(k)∈[豫 (k),豫~(k)],k为活动或分支。 豫 (k)=DUR~(k),豫~(k):DUR. ̄(k)。TSlack(k) ∈[TSlack (k),TSlack. ̄(k)]。 任意分支 的标记活动-『描述为(豫~( ),豫~( ), TSlcak. ̄(卢),TSlack. ̄,( ))。 2.2 各种路由结构时间资源分析 1)顺序结构 顺序结构中只有一个分支 ,按活动 ( ∈( ,…, ,))的执行时间分配私有资源TR( ),活动执行时出现资源 不足时,请求裂变上层资源。因为DUR. ̄(k):D ~(k)= DUR(k),所以有下述关系存在: rR( )=DUR( ); TSlack ( ):豫 ( )一∑DUR(^ l a^); f∞J}~( )=豫~(口)一∑DUR(a^); ==嚣扭 图1并发结构 ==嚣参 图2条件结构 3)条件结构 条件结构中存在多个分支,各分支资源分配情况由活动 决定,松弛时间不尽相同。如图2。 豫~( )=E a )一E a。)+DUR(a1); 豫~( )=Ew3(a )一Ebf(a1)+DUR(aI); ^ TSlack ( )=豫~( )一∑DUR(^=l a^); ^ TSlcak. ̄,( )=豫~( )一∑DUR(口^); 4)循环结构 循环分支 的最少执行次数为0,最大执行次数由该分支 的最大概率循环次数A决定,A根据经验确定。 豫 ( )=0;豫~( ):A DUR( ^); ^=1 TSlack ̄( )=0;TSlcak. ̄,( )=0 2.3 工作流图的时间分配策略 从工作流入口开始,依次访问每一个节点,按活动执行时间 为其分配资源。遇到并发结构、选择结构或循环结构的分叉点时, 找到相应的汇合点,分别依据各分支的特点,按照顺序结构分配 时间资源。活动执行过程中资源不足或剩余,可向所在分支申请 裂变或聚合双重资源。结构分支执行过程中资源缺乏或过剩,向 上一层结构请求裂变或聚合双重资源和公有资源。 Branch(or_split)是条件结构中or_split节点后继分支的集 合,令Branch(or_split)={田, };Branch(and_split)是并发结 构中and_split节点后继分支的集合,令Branch(and_split): { ,cc,}。时间资源分配算法详细描述如下: 依次遍历每一个活动节点k, IF(k==act)THEN 按照顺序结构的分配策略为k分配TR( ), 在执行过 程中不断消耗TR(k), 当TR(k)=0时,k未执行完,则请求裂变k所在分支 的TSlack( ),令TSlack( )=TSlack( )一 维普资讯 http://www.cqvip.com
2168 计算机应用 2006盎 豫 (k),TR (k)是根据实际情况确定的k所需要的后 续资源。 执行活动C(进入库房点货),否则与客户沟通延期发货(活 动D),并告知销售部经理(活动E)、告知销售小组组长(活 动F)、通知生产部门经理(活动G)和生产小组组长(活动 当k执行结束时,TR(k)>0,则将剩余资源TSlack(k) 与k所在分支ot的TSlack(ot)聚合,令TSlack(ot)= TSlack(ot)+TSlack(k)。 END IF H),然后组织生产(活动I),其中E和H是可跨越的。两条 件分支汇合后为客户开出发货单(活动J),告知客户准备发 货(K)与货物装箱(L)并发执行,填写销售登记表(M)后选 择空运(N)、陆运(O)或海运(P)方式运输,最后与客户结账 IF(k==or_split)THEN 找到与其对应的汇合点or_join; 对于任意ot∈Branch(or_split),按照条件结构的分配 (Q)。orl,or2,andl,and2,altl,ah2和ah3分别是各分支标记 节点。or_split,or_join,and—split,and-join,alternative—split和 规则,找到各分支的豫 (ot)和豫~(ot)。 豫(田)=TR( )=Max(豫~(田),豫~( )); TR(妒)=Max(豫~(田),豫~( )); TSlack(田)=TD(田)一豫~(田); TSlack(妒)=TD( )一豫~( ) ot分支一旦执行,其他非ot分支的豫和TSlack资源消 亡。 ot分支执行结束时,剩余资源的权限作为该分支所在 结构的剩余资源向上一层路由结构聚合, TSlack(or_join)=TSlack(or1),0r1是ot分支的标记 A B C D E F G H活动。 END IF IF(k==and_split)THEN 找到相对应的汇合点and_join,对于任意ot∈ Branch(and_split),按照并发结构的分配规则,找到各 分支的豫~(ot)和豫~(ot) TR( )=TR(09)=Max(豫~( ),豫~(09)); TR(09)=Max(豫~( ),豫~(09)); TSlack( )=TD( )一豫~( ); TSlack(09)=TD(09)一豫~(09)。 并发结构各分支均执行结束时,TSlack(and_join)= MAX(TSlack(and1),TSlack(and2)),andl和and2分 别是 和09的标记活动。TSlack(and_join)作为并发结 构的松弛资源向上层路由结构聚合。 END IF IF(k==circle)THEN 根据实际情况确定循环分支o/的最大概率执行次数 A,依据循环结构的分配规则,令TR(ot)=豫~(ot), TSlack(ot)=0。 END IF 3 实例分析 图3一个生产销售实例 如图3,A表示销售部接到客户订单,B表示销售部查看 库存量,根据库存量选择不同的分支,能够满足客户需求时, alternative_join分别是各路由结构的分叉和汇合节点。对具 体活动的时间描述如表1所示。 表1活动节点的时间描述 node 活动的时间描述 (1,(1,1,1,1),(1,1,1,1),0) (2,(3,3,3,3),(3,3,3,3),0) (2,(5,5,5,5),(5,5,8,11),0) (1,(4,4,4,4),(1,一2,4,4),0) (2,(4,6,4,6),(1,0,4,6),1) ●J K L M N 0 P Q (1,(5,7,5,7),(2,1,5,7),0) (1,(6,8,6,8),(3,2,6,8),0) (1,(6,9,6,9),(3,3,6,9),1) (2,(8,11,8,11),(5,5,8,11),0) (1,(6,6,9,12),(6,6,9,12),0) (1,(7,7,1O,13),(8,8,11,14),0) (2,(8,8,11,14),(8,8,11,14),0) (1,(9,9,12,15),(9,9,12,15),0) (1,(1O,1O,13,16),(1O,12,13,18),0) (2,(11,11,14,17),(10,12,13,18),0) (3,(12,12,15,18),(1O,12,13,18),0) (3,(14,16,17,22),(14,16,17,22),0) 从in开始遍历每一个活动,依据活动执行时间为具体活 动分配时间资源:TR(A)=1,TR(B)=2,…。下面重点讨论 各路由结构分配情况: 访问到or_split节点,找到与其对应的or_join,用标记活 动or1和or2分别标记该条件结构中的两个分支 和B;访 问到and—spht活动,找到对应的and-join,用andl和and2分 别标记并发分支 和8;访问到alternative—split节点,找到对 应的ahernative_join,用altl,ah2和ah3分别标记各替换分支 0,-i1和 。标记活动记录所在分支可能分配拥有的最小资 源、最大资源、实际分配的时间资源和松弛时间。标记活动分 别描述如下: orl:(5,8,8,o);or2:(2,2, 6);andl:(1,1,1,1);and2:(2,2, o); altl:(1,1,1,2);alt2:(2,2,2,1);alt3:(3,3,3,o);cicle:(3,4,4'o) 在实际执行过程中,根据资源消耗情况可对双重资源或 公有资源裂变和聚合。执行到or_split节点时,假设经过条件 判断进入B分支。c活动分配的资源是2,由于突发事件,2 单位时间消耗完时,c未执行结束。因为TSlack(B)=6,所以 可向B分支申请裂变一定量的资源。申请数量如果大于6, 多余部分要向TSlack(wF)申请。如果c活动执行完毕只消 耗1单位,剩余的1单位松弛时间与TSlack(B)聚合,此时or2 标记的TSlack(B)=7,B分支结束时,TSlack(B)向上与 TSlack(or_join)聚合,最后与TSlack(wF)聚合。 (下转第2171页) 维普资讯 http://www.cqvip.com
第9期 王德志等:基于多克隆策略的应用层组播路由算法 217l 州,按照变异概率取代抗体上原有的值,从而生成新抗体群 D(t)。若产生的解不满足组播树条件,则重新进行克隆变异 操作。 (6)克隆选择 对父代抗体群A(t)和变异后的克隆抗体群D(t)进行克 的抗体群规模 ),且每次计算开始时遗传算法的初始群由 克隆算法的初始抗体群复制得到,以使三种算法的初始数量 和分布上处在同一水平上。遗传算法的突变概率为0.05,交 叉概率为0.9。 仿真结果图2为采用免疫克隆算法得到的应用层组播 树。通过进行200次仿真取平均值,得到三种算法的性能比 较,如表1所示。从表中可以看出基于免疫多克隆策略的组 播路由算法比遗传算法具有更快的收敛速度,并且解的性能 隆选择操作,利用亲和度函数 )选出亲和度最高且互不相 同的Ⅳ个抗体组成新抗体群A(t+1)。 (7)结束条件 在最优个体,则算法终止;否则转到(2)继续操作。 根据文献[6]证明,免疫多克隆策略算法的种群序列 {A(a),n≥0}是有限齐次马尔可夫链,并且该算法是以概 率1收敛的。 计算A(t+1)中每个抗体的亲和度,若新一代抗体中存 要比其他两种算法高。 表1算法性能比较 c(5o)G(100)G(150)c(2oo)G(250)G(300)G(350) 本文算法 33 改进GA 35 29 32 25 28 23 25 19 2O 17 18 17 18 该算法的时间复杂度与抗体群规模Ⅳ,免疫克隆规模 , 标准GA 36 33 29 27 24 2 21 20 3 4 5 6 算法的迭代次数t有关,所以算法的复杂度为0( t)。 4仿真实验及结果分析 本文采用Maflab 7.0作为仿真工具,分别采用文献[3] 5 结语 应用层组播是目前网络研究领域的研究热点。本文对基 于树的应用层组播路由算法进行了研究,建立了网络模型,提 提出的改进遗传算法、标准遗传算法以及本文提出的基于免 疫多克隆策略的路由算法。为了验证仿真结果,随机生成完 出基于免疫多克隆策略的带度约束的应用层组播路由问题。 本算法克服了遗传算法中的“早熟”现象,取得比遗传算法更 好的结果,同时,该算法具有更快的收敛速度。实验结果证 全图的网络拓扑G,节点数为8个,网络边的延迟代价为一个 范围的随机整数,并且每个节点的度约束指定为[2,n/2]之 间的一个随机整数,网络拓扑如图1所示。 明,本算法具有较好的性能。 参考文献: 【1】DE CAATRO LN,VON ZUBEN FJ.Learning and Optimization U— sing the donal selection principle【J】.IEEE Transactions on Evolu- tionary computation,2002,6(3):239—251. ZHU Y,WU MY.SHU W.Comparison stuay and evaltlation of o_ verlay multicast ne ̄orks『A1.Multlmedia and Expo.2003.ICME'03 【C】,20o3,(3):493—496. 徐磊,章兢.广义最小生成树的遗传算法求解及其应用【J】.系 统工程与电子技术,2004,26(3):390—392. 潘耘,余镇危,王励成.求解应用层组播路由问题的遗传算法 【J】.小型微型计算机系统,2005,26(1):55—58. 余波,王东.基于加权选择函数的应用层组播路由算法【J】.计 算机工程,20o5,31(18):105—107. 刘若辰,杜害峰,焦李成.免疫多克隆策略【J】.计算机研究与发 展,2004,41(4):571-576. (上接第2168页) 2005,30(5):399—422. 4 结语 本文将时间纳入资源范畴,定为不可更新资源。通过对 路由结构的分析,提出时间资源分配算法,在建模阶段进行资 源分配,在执行过程中实现资源的动态裂变与聚合。时间是 种特殊资源,供活动消耗,同时决定着其他资源权限的开放 一【3】U H,YANG Y,CHEN TY.Re ̄ume conslralnts analysis ofwork— lfow speciifcations【J】.The Journal of Systems and Software,2OO4, 73(2):271—285. 【4】 刘胜,范玉顺,尹朝万.基于工作流模型的资源配置优化方法 【J】.计算机集成制造系统,2005,l1(9):1272—1278. 【5】 李伟平,范玉顺.基于工作流的资源受限项目调度研究【J】.清 华大学学报(自然科学版),2004,10(44):1384—1388. 【6】 綦方中,王正肖,孙永军.虚拟企业运营过程中项目调度和执行 与关闭。 参考文献: 【1】 BRUCKER P,DREXL A,MOH ̄NG R,et aL Re ̄ume—con— strained pmject scheduling:Notation,classiifcation,model,and methods[J】.European Journal of Operational Research,1999,1 12 (3):3—41. 策略【J】.计算机工程,2002,5(28):70—72. 【7】 EDER J.PANAGOS E,POZEWAUNING H,et aL Time manage- merit in workf]ow systems[A】.ABRAMOWICZ W,ORLDWSKA ME,ed.Proceedings of the 3rd International Conference on Business Information Systems【C】.Berlin:Springer—Verlag,1999.265—280. 【2】 SENKUL P,TOROSLU 1H.An architecture for workflow scheduling under res0urce allocation constraints【J】.Information System, 【8】 唐达,刘丹妮.一种工作流时间截止期限的动态验证方法fJ】. 计算机集成制造系统——CIMS,2004,9(10):1 154—1 159.
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- yrrf.cn 版权所有 赣ICP备2024042794号-2
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务