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

文档序号:12463715阅读:来源:国知局

技术特征:

1.一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于包括如下步骤:

步骤1:根据调度结果对应的析取图模型G构建邻接矩阵A

步骤2:根据邻接矩阵A,计算可达矩阵M

步骤3:死锁检测,如果发现死锁则寻找导致死锁的矩阵元素,并标记,否则,结束;

步骤4:根据死锁信息,结合JSP问题的领域知识,拆断导致死锁的有向回路,打破死锁;

步骤5:根据步骤4中修改的结果修正析取图模型G,返回步骤1。

2.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述析取图模型G=<VE>,其中:V是节点集合,V={v1v2,…,vn},包括一个虚拟的开始节点S和一个虚拟的结束节点FE是有向边的集合;V中除节点S和节点F以外的节点均表示工序;E包括连接弧和析取弧,连接弧表示工件工序的二元关系,析取弧表示机器工序的二元关系。

3.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述邻接矩阵An阶方阵,A=(aij)n×naij的值通过下式确定:

矩阵最左边和最上边的元素代表工序号,当i等于j时,xiyj表示相同工序。

4.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述可达矩阵M是根据所构建的邻接矩阵A计算得到,M也是n阶0-1方阵,且符合布尔代数运算法则,其计算公式为: ,其中I为与A同阶次的单位矩阵,反映元素自身到达,最大传递次数(路长)r根据下式确定:

5.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述死锁检测是在计算得到的可达矩阵M的基础上,检测以矩阵主对角线为对称线的对称位置是否存在两两相等且等于1的元素,即:Mij=Mji=1,如果不存在,说明在析取图模型G中无有向回路,则此调度结果可行;如果存在,说明在析取图模型G中必存在有向回路,此调度结果不可行,判为死锁,并标记导致死锁的矩阵元素。

6.根据权利要求1所述的一种基于矩阵的作业车间调度死锁检测与修复方法,其特征在于所述拆断导致死锁的有向回路的原理为:死锁信息包括导致死锁的元素及元素间的二元关系,反映在作业车间调度问题上是工序及工序间的二元关系,由于同工件工序间二元关系是不能改变的,所以要拆断有向回路需改变同机器工序间二元关系,由于作业车间调度的最后完工时间是由关键路径的长度所确定,因此,对同机器工序中的关键工序进行优先操作,改变其二元关系,打破死锁,其具体步骤如下:

步骤6.1:将所得到的死锁信息分成两类:同工件工序间二元关系和同机器工序间二元关系;

步骤6.2:对同机器工序根据其是否是关键工序也分成两类,优先选择关键工序,改变其二元关系,打破死锁。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1