一种解决移动瓶颈法不可行解问题的解环方法技术

技术编号:19344353 阅读:20 留言:0更新日期:2018-11-07 14:42
本发明专利技术公开了一种解决移动瓶颈法不可行解问题的解环方法,属于调度领域。包括两个步骤,S1判定环,运用工件甘特图排序算法对未调度机器集合中的机器运用Catier算法求解的排序进行间接的无环判定;S2解环,对导致环的机器,运用解环算法进行解环。本发明专利技术解决了移动瓶颈法对于部分作业车间调度实例不能求解的不足。本发明专利技术提供的工件甘特图排序算法大大降低了算法复杂度。解环算法中结合了回溯策略,所解得的无环机器排序在不降低解的质量的同时,使得当前析取图最大完工时间尽量偏小,求解的质量也并不会差。

A solution method for solving the problem of infeasible solution of mobile bottleneck method

The invention discloses a method for solving the unfeasible problem of mobile bottleneck method, which belongs to the field of scheduling. There are two steps, S1 decision ring, indirect acyclic judgment of the machines in the unscheduled machine set by using job Gantt graph sorting algorithm and S2 decoupling, which is used to decouple the machines that lead to the rings. The invention solves the problem that the mobile bottleneck method can not solve part of the job shop scheduling instances. The Gantt chart sorting algorithm provided by the invention greatly reduces the complexity of the algorithm. The algorithm combines the backtracking strategy, and the resulting acyclic machine sorting can minimize the maximum completion time of disjunctive graphs and the quality of the solution is not bad at the same time without reducing the quality of the solution.

【技术实现步骤摘要】
一种解决移动瓶颈法不可行解问题的解环方法
本专利技术属于调度领域。
技术介绍
随着客户需求的多样化、大量的研究工作从面向库存的生产问题转向面向订单的生产调度问题,它们通常描述为一个作业车间(Jobshop)调度问题。该问题是最近二十年来的重要研究课题,取得了许多研究成果,它的重要性体现在利用企业现有的资源,合理制定企业和车间生产计划、保证按时交货,提高企业的信誉赢得更多的客户,是企业赖以生存的关键。移动瓶颈法(SB,ShiftingBottleneckAlgorithm)是解决作业车间调度最大完工时间最小化问题的高效启发式算法,对于当前一些Benchmark问题可以求得最优解。该算法通过运用Calier算法不断求解单机调度问题,从而得到所有机器的排序,但是在运用Calier算法求解单机调度问题时,并不能总得到作业车间调度问题的可行解,也就是说析取图中有环的产生。
技术实现思路
针对上述技术问题,本专利技术提出一种解决移动瓶颈法不可行解问题的解环方法,该方法基于移动瓶颈法之上,当运用Calier算法求解单机调度问题出现环时,就运用解环算法进行解环。为了实现上述技术目的,本专利技术采用如下具体技术方案:一种解决移动瓶颈法不可行解问题的解环方法,包括两个步骤,S1.1作业车间调度问题输入,初始时所有机器均未排序,此时当前工件顺序矩阵M(j,i)=-1,其中,j为机器的索引(j=1,…,m),m为机器数量;i为机器j所加工工序的索引(i=1,…,lj),其中lj等于机器j所加工工序数量;S1.2依次对未调度机器集合中的机器运用calier算法求解其单机子问题,将calier算法求解的机器排序更新到当前工件顺序矩阵中,运用工件甘特图排序算法对该机器所在的工件顺序矩阵进行间接环的判定,如果形成环,转到S2;否则转到S1.3;S1.3瓶颈机选择,取瓶颈机所在的工件顺序矩阵为当前工件顺序矩阵;S1.4对已调度机器集合进行局部优化,将更新的机器排序更新到当前工件顺序矩阵中;S1.5判断所有机器是否都被排序,如果是,则运用局部优化直到解不再改变;如果否,则回到步骤S1.2;S2解环对于导致环的机器,运用解环算法进行解环,得到该机器新的排序,所述解环算法具体包括如下步骤:S2.1对于待排序机器k,令该机器所在工件顺序矩阵M(k,i)=(-1,-1…,-1),(i=1,…,lk);S2.2运用解环算法得到待排序机器新的排序并更新到其所在的工件顺序矩阵中,回到步骤S1.2。进一步的,所述的甘特图排序算法具体包括如下步骤:Step1.记J为机器顺序矩阵,x为J矩阵中工件的索引,x=1,2…n,n为工件数量,yx为工件x的可加工工序索引;g为M矩阵中机器的索引,g=1,2…m,zg为机器g的可加工工序索引;初始时机器顺序矩阵J和工件顺序矩阵M的第一道工序均为可加工工序,令yx=1,zg=1,(x=1,2…n,g=1,2…m);Step2.从J矩阵中依次选取工件x的可加工工序J(x,yx)进行加工,找到J(x,yx)所对应的机器g,判定M矩阵中M(g,zg)所对应的工件号:如果M(g,zg)=x,转到Step3;如果M(g,zg)=-1,转到Step4;如果当前所有工件的可加工工序都不能被加工,则转到Step5;Step3.将J(x,yx)安排在max{当前工件x完工时间,机器g完工时间}之后开始加工,加工完成后,令机器g的完工时间等于工件x的完工时间,J(x,yx)的下一道工序和M(g,zg)的下一道工序变为可加工工序。判断机器顺序矩阵J的所有工序是否都被加工,是,转到Step6;否则,令yx=yx+1,zg=zg+1,转到Step2;Step4.将J(x,yx)安排在当前工件x完工时间之后加工,加工完成后,令机器g的完工时间等于工件x完工时间,J(x,yx)的下一道工序和M(g,zg)的下一道工序变为可加工工序。判断机器顺序矩阵J的所有工序是否都被加工,是,转到Step6;否则,令yx=yx+1,zg=zg+1,转到Step2;Step5.当前调度无解,也就是形成了环;Step6.输出最大完工时间。进一步的,所述的解环算法是以待排序机器的待加工工件的可加工时间间隔作为基准,结合回溯策略,每次从待排序机器的待加工工件的可加工时间间隔集合中选取α个可加工时间间隔最小的对应工件,并加入回溯树中,同时更新每个节点的工件顺序矩阵M,对当前α个节点进行无环判定,选取具有最小下界的无环排序工件,直到所有工件都被选取,其中回溯树中每个节点都有一个下界,下界值为基于工件顺序矩阵M求解的最大完工时间;具体包括如下步骤:StepA.当机器k运用Calier算法求解的排序导致环时,假设此时该机器的工件顺序矩阵为M,令工件顺序矩阵M(k,i)=(-1,-1…,-1)(i=1,2…,lk);令Ie为待排序机器k待加工工件的可加工时间间隔集合,M0为待排序机器k所有工件集和,J0为回溯树的根结点,初始Ie={Ie1,Ie2,Iei,…Ien},i=0;StepB.对回溯树进行构造,从Ie中选取α个可加工时间间隔最小的对应工件,作为弧添加到回溯树中,对于弧r,将J0=J0U{jr}作为该弧对应的子结点,更新每个子节点相应的工件顺序矩阵M(k,i)=jr;运用工件甘特图排序算法对该α个子节点进行无环判定,从无环节点中选取具有最小下界的结点w,节点w的工件顺序矩阵为Mw;令J0=Jw,M=Mw,通过M运用工件甘特图排序算法得到此时待加工工件(M0\J0)的可加工时间间隔集合为Ie′,令Ie=Ie′,并删除其余α-1个结点;StepC.判定所有工件是否都被加工,如果是,算法结束,否则,i++,转StepB。本专利技术的有益效果是:本专利技术提供了一种解环方法,解决了移动瓶颈法对于部分作业车间调度实例不能求解的不足。本专利技术提供的甘特图排序算法大大降低了算法复杂度。解环算法中结合了回溯策略,所解得的无环机器排序在不降低解的质量的同时,使得当前析取图最大完工时间尽量偏小,求解的质量也并不会差。附图说明图1为本专利技术中解环方法流程图;图2为可加工时间间隔甘特图;图3为回溯算法结构图;图4为无可行解加工实例析取图;图5为待排序机器1下的甘特图;图6为实施例中机器1排序为1→3→2的析取图;图7为实施例中机器1排序为1→2→3的析取图。具体实施方式本专利技术提供了一种解决移动瓶颈法不可行解问题的解环方法,解环的本质就是对当前导致环的机器进行重新排序,该排序为无环,并使得当前析取图最大完工时间尽量偏小。其中瓶颈机为未调度机器集合中用calier算法求解单机调度问题,选择其中解得调度的最大完工时间最大的机器。局部优化为:依次对已调度机器运用calier算法求解其单机调度问题,用好的解的结果替代原来的解。解环方法的具体步骤(1)判定环,运用工件甘特图排序算法对未调度机器集合中的机器运用Calier算法求解的排序进行间接的无环判定。机器的工件顺序约束用M表示,工件顺序矩阵M表示方法如下:M(j,i)表示第j个机器的第i个工序的工件号,j为机器的索引(j=1,…,m),m为机器数量;i为机器j所加工工序的索引(i=1,…,lj),其中lj等于机器j所加工工序数量。对于未排序机器的工序的工件号用-1表示,本文档来自技高网...

【技术保护点】
1.一种解决移动瓶颈法不可行解问题的解环方法,其特征在于,包括两个步骤,S1判定环具体包括以下几个子步骤:S1.1作业车间调度问题输入,初始时所有机器均未排序,此时当前工件顺序矩阵M(j,i)=‑1,其中,j为机器的索引(j=1,…,m),m为机器数量;i为机器j所加工工序的索引(i=1,…,lj),其中lj等于机器j所加工工序数量;S1.2依次对未调度机器集合中的机器运用calier算法求解其单机子问题,将calier算法求解的机器排序更新到当前工件顺序矩阵中,运用工件甘特图排序算法对该机器所在的工件顺序矩阵进行间接环的判定,如果形成环,转到S2;否则转到S1.3;S1.3瓶颈机选择,取瓶颈机所在的工件顺序矩阵为当前工件顺序矩阵;S1.4对已调度机器集合进行局部优化,将更新的机器排序更新到当前工件顺序矩阵中;S1.5判断所有机器是否都被排序,如果是,则运用局部优化直到解不再改变;如果否,则回到步骤S1.2;S2解环对于导致环的机器,运用解环算法进行解环,得到该机器新的排序,所述解环算法具体包括如下步骤:S2.1对于待排序机器k,令该机器所在工件顺序矩阵M(k,i)=(‑1,‑1…,‑1),(i=1,…,lk);S2.2运用解环算法得到待排序机器新的排序并更新到其所在的工件顺序矩阵中,回到步骤S1.2。...

【技术特征摘要】
1.一种解决移动瓶颈法不可行解问题的解环方法,其特征在于,包括两个步骤,S1判定环具体包括以下几个子步骤:S1.1作业车间调度问题输入,初始时所有机器均未排序,此时当前工件顺序矩阵M(j,i)=-1,其中,j为机器的索引(j=1,…,m),m为机器数量;i为机器j所加工工序的索引(i=1,…,lj),其中lj等于机器j所加工工序数量;S1.2依次对未调度机器集合中的机器运用calier算法求解其单机子问题,将calier算法求解的机器排序更新到当前工件顺序矩阵中,运用工件甘特图排序算法对该机器所在的工件顺序矩阵进行间接环的判定,如果形成环,转到S2;否则转到S1.3;S1.3瓶颈机选择,取瓶颈机所在的工件顺序矩阵为当前工件顺序矩阵;S1.4对已调度机器集合进行局部优化,将更新的机器排序更新到当前工件顺序矩阵中;S1.5判断所有机器是否都被排序,如果是,则运用局部优化直到解不再改变;如果否,则回到步骤S1.2;S2解环对于导致环的机器,运用解环算法进行解环,得到该机器新的排序,所述解环算法具体包括如下步骤:S2.1对于待排序机器k,令该机器所在工件顺序矩阵M(k,i)=(-1,-1…,-1),(i=1,…,lk);S2.2运用解环算法得到待排序机器新的排序并更新到其所在的工件顺序矩阵中,回到步骤S1.2。2.根据权利要求1所述的解决移动瓶颈法不可行解问题的解环方法,其特征在于,所述步骤S1.2中的工件甘特图排序算法具体包括如下步骤:Step1.记J为机器顺序矩阵,x为J矩阵中工件的索引,x=1,2…n,n为工件数量,yx为工件x的可加工工序索引;g为M矩阵中机器的索引,g=1,2…m,zg为机器g的可加工工序索引;初始时机器顺序矩阵J和工件顺序矩阵M的第一道工序均为可加工工序,令yx=1,zg=1,(x=1,2…n,g=1,2…m);Step2.从J矩阵中依次选取工件x的可加工工序J(x,yx)进行加工,找到J(x,yx)所对应的机器g,判定M矩阵中M(g,zg)所对应的工件号:如果M(g,zg)=x,转到Step3;如果M(g,zg)=-1,转到Step4;如果当前所有工件的可加工工序都不能被加工,则转到Step5;Step3.将J(x,yx)安排在max{当前工件x完工时间,机器g完工时间}之后开始加工,加工完成后,令机器g的完工时间等于工件x的完工时间,J(x,yx)的下一道工序和M(g,zg)的下一道工序变为...

【专利技术属性】
技术研发人员:李小林张亮
申请(专利权)人:中国矿业大学
类型:发明
国别省市:江苏,32

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

1