当前位置: 首页 > 专利查询>济南大学专利>正文

一种基于矩阵的作业车间调度死锁检测与修复方法技术

技术编号:15541266 阅读:83 留言:0更新日期:2017-06-05 10:45
本发明专利技术公开了一种基于矩阵的作业车间调度死锁检测与修复方法,其特征包括如下步骤:(1)根据调度结果对应的析取图模型

Matrix based job shop scheduling deadlock detection and repair method

The invention discloses a matrix based job shop scheduling deadlock detection and repair method, which comprises the following steps: (1) a disjunctive graph model corresponding to a scheduling result;

【技术实现步骤摘要】
一种基于矩阵的作业车间调度死锁检测与修复方法
本专利技术涉及生产调度
,具体涉及一种基于矩阵的作业车间调度死锁检测与修复方法。
技术介绍
作业车间调度问题(JobShopSchedulingProblem,JSP)是制造执行系统研究的核心和重点之一,其研究具有重要的理论意义和应用价值。目前,以遗传算法、差分进化算法、禁忌搜索算法、人工蜂群算法等为代表的智能算法在求解JSP问题中得到了成功应用。研究发现,各种高效智能算法的一个共同点是总会融入基于邻域结构的邻域搜索技术,因为邻域结构能够体现问题本身的特征领域知识,结合问题本身的特点,可以有效的指导搜索方向。但是,在基于邻域结构的关键工序移动过程中,可能会导致已有可行解不可行,即死锁状态。死锁是相互竞争资源的事务间相互等待、各事物的资源请求在现行的并发控制机制下永远得不到满足的一种停滞状态。反映在JSP问题上,是工件工序的加工顺序约束关系得不到满足。进而使得加工进程不能顺利进行,甚至造成新的加工进程不能开始,因此,有必要研究死锁问题。目前,解决JSP死锁问题有三种策略:死锁预防,死锁避免,死锁检测与修复。其中,针对死锁检测与修复,大多数的研究都是基于图模型理论,尤其涉及一种析取图模型,即构造能描述问题特征的析取图模型,如果发现该模型中存在有向回路,则发生死锁。死锁修复的关键在于拆断有向回路,使各工件工序的加工顺序约束关系得到满足。目前文献中的各种修复策略,只是将其修复为一个可行解,本专利技术拟实现一种更为先进的修复策略,在得到可行解的前提下,尽可能修复为目标函数值更为优良的可行解。
技术实现思路
本专利技术的目的是将数学中的邻接矩阵和可达矩阵引入作业车间调度问题的研究中,进而从数学矩阵运算和性质的角度进行相关的理论研究,提出一种基于矩阵的作业车间调度死锁检测与修复方法,以期通过数学逻辑运算能快速检测出由工序移动引发的死锁,并给出死锁时,导致死锁的信息。然后结合JSP问题的领域知识,根据工序类型信息,拆断导致死锁的有向回路,实现更为先进的修复,不但修复为可行解,而且尽可能修复为目标函数值更好的可行解,进而使得各种基于邻域结构搜索的高效智能算法在求解JSP问题时更加高效可行。本专利技术的目的采用如下技术方案实现。一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于包括如下步骤:步骤1:根据调度结果对应的析取图模型G构建邻接矩阵A;步骤2:根据邻接矩阵A,计算可达矩阵M;步骤3:死锁检测,如果发现死锁则寻找导致死锁的矩阵元素,并标记,否则,结束;步骤4:根据死锁信息,结合JSP问题的领域知识,拆断导致死锁的有向回路,打破死锁;步骤5:根据步骤4中修改的结果修正析取图模型G,返回步骤1。步骤1中所述析取图模型G=<V,E>,其中:V是节点集合,V={v1,v2,…,vn},包括一个虚拟的开始节点S和一个虚拟的结束节点F;E是有向边的集合;V中除节点S和节点F以外的节点均表示工序;E包括连接弧和析取弧,连接弧表示工件工序的二元关系,析取弧表示机器工序的二元关系。步骤1中所述邻接矩阵A是n阶方阵,A=(aij)n×n,aij的值通过下式确定:矩阵最左边和最上边的元素代表工序号,当i等于j时,xi和yj表示相同工序。步骤2中所述可达矩阵M是根据所构建的邻接矩阵A计算得到,M也是n阶0-1方阵,且符合布尔代数运算法则,其计算公式为:,其中I为与A同阶次的单位矩阵,反映元素自身到达,最大传递次数(路长)r根据下式确定:。步骤3中所述死锁检测是在计算得到的可达矩阵M的基础上,检测以矩阵主对角线为对称线的对称位置是否存在两两相等且等于1的元素,即:Mij=Mji=1。如果不存在,说明在析取图模型G中无有向回路,则此调度结果可行。如果存在,说明在析取图模型G中必存在有向回路,此调度结果不可行,判为死锁,并标记导致死锁的矩阵元素。步骤4中所述根据死锁信息,结合JSP问题的领域知识,拆断导致死锁的有向回路,原理如下:死锁信息包括导致死锁的元素及元素间的二元关系,反映在JSP问题上是工序及工序间的二元关系,由于同工件工序间二元关系是不能改变的,所以要拆断有向回路需改变同机器工序间二元关系。由于作业车间调度的最后完工时间是由关键路径的长度所确定,因此,对同机器工序中的关键工序进行优先操作,改变其二元关系,打破死锁。其具体步骤如下:步骤4.1:将所得到的死锁信息分成两类:同工件工序间二元关系和同机器工序间二元关系;步骤4.2:对同机器工序根据其是否是关键工序也分成两类,优先选择关键工序,改变其二元关系,打破死锁。本专利技术具有以下优点及有益效果。(1)本专利技术将数学中的邻接矩阵和可达矩阵引入JSP问题的研究中,进而从数学矩阵运算和性质的角度进行相关的理论研究,提供了一种新的研究作业车间调度死锁问题的思路。(2)本专利技术可以快速检测出由工序移动引发的死锁,并给出出现死锁时,导致死锁的信息,根据死锁信息,结合JSP问题的领域知识实现更为先进的修复,不但修复为可行解,而且尽可能修复为目标函数值更好的可行解,进而使得各种基于邻域结构搜索的高效智能算法在求解JSP问题时更加高效可行。附图说明图1是本专利技术实施方法流程图。图2是一已知可行的作业车间调度甘特图。图3是在图2基础上移动一个工序得到的新的存在死锁的甘特图。图4是图3对应的析取图模型。图5是图4对应的邻接矩阵A。图6是根据邻接矩阵A计算得到的可达矩阵M。图7是基于可达矩阵M检测死锁的结果。图8是对图3存在死锁甘特图修复后的甘特图。下面结合附图及实施例对本专利技术作进一步的说明。一种基于矩阵的作业车间调度死锁检测与修复方法流程图如图1所示。如图2为一已知可行的作业车间调度甘特图,该甘特图表示有3个工件,每个工件有3道工序,在3台机器上的加工顺序安排。横轴表示加工时间,纵轴表示加工机器,填充数字的矩形块表示工件工序,例如:(3,1)表示第3个工件的第一道工序,(1,2)表示第1个工件的第二道工序。图中用箭头连接起来的工序表示关键工序,所有关键工序组成一条关键路径,最大完工时间为19。现对关键路径上的工序进行移动,在图2的甘特图基础上把工序(1,2)按照导向箭头移动到工序(2,1)的前面,得到一个新的调度甘特图,如图3所示。对比图2和图3,发现关键路径发生变化,最大完工时间缩短为18,是一次有益的移动。但是移动过后的甘特图是否可行,需要进行死锁检测,检测过程如下。1.根据所给析取图G构建邻接矩阵A根据图3画出其对应的析取图G,如图4所示。其中虚拟节点S和F分别代表开始和结束,节点Oi,j代表第i个工件的第j道工序。根据图4构建邻接矩阵A,如图5所示。2.计算可达矩阵M根据构建的邻接矩阵A计算可达矩阵M,将可达矩阵M主对角线元素标记出来,计算结果如图6所示。3.死锁检测在可达矩阵M基础上检测是否存在Mij=Mji=1,结果如图7所示。由结果可知,M23=M32=1,M25=M52=1,M26=M62=1,M35=M53=1,M36=M63=1,M65=M56=1,即在图4中存在有向回路(O1,1→O1,2→O2,1→O2,2→O1,1),此解不可行,判定为死锁。将导致死锁的矩阵元素及其二元关系标记出来,如图7所示。4.修复由图3可知,关键工序为(O本文档来自技高网...
一种基于矩阵的作业车间调度死锁检测与修复方法

【技术保护点】
一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于包括如下步骤:步骤1:根据调度结果对应的析取图模型

【技术特征摘要】
1.一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于包括如下步骤:步骤1:根据调度结果对应的析取图模型G构建邻接矩阵A;步骤2:根据邻接矩阵A,计算可达矩阵M;步骤3:死锁检测,如果发现死锁则寻找导致死锁的矩阵元素,并标记,否则,结束;步骤4:根据死锁信息,结合JSP问题的领域知识,拆断导致死锁的有向回路,打破死锁;步骤5:根据步骤4中修改的结果修正析取图模型G,返回步骤1。2.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述析取图模型G=<V,E>,其中:V是节点集合,V={v1,v2,…,vn},包括一个虚拟的开始节点S和一个虚拟的结束节点F;E是有向边的集合;V中除节点S和节点F以外的节点均表示工序;E包括连接弧和析取弧,连接弧表示工件工序的二元关系,析取弧表示机器工序的二元关系。3.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述邻接矩阵A是n阶方阵,A=(aij)n×n,aij的值通过下式确定:矩阵最左边和最上边的元素代表工序号,当i等于j时,xi和yj表示相同工序。4.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述可达矩阵M是根据所构建的邻接矩阵A计算得到,M也是n阶0-1方阵,且...

【专利技术属性】
技术研发人员:石飞赵诗奎
申请(专利权)人:济南大学
类型:发明
国别省市:山东,37

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

1