CN116468137A - 一种分布式工艺规划与车间调度集成优化方法 - Google Patents
一种分布式工艺规划与车间调度集成优化方法 Download PDFInfo
- Publication number
- CN116468137A CN116468137A CN202210025512.8A CN202210025512A CN116468137A CN 116468137 A CN116468137 A CN 116468137A CN 202210025512 A CN202210025512 A CN 202210025512A CN 116468137 A CN116468137 A CN 116468137A
- Authority
- CN
- China
- Prior art keywords
- workpiece
- machine
- time
- sub
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 237
- 238000005457 optimization Methods 0.000 title claims abstract description 58
- 238000004519 manufacturing process Methods 0.000 claims abstract description 103
- 238000003462 Bender reaction Methods 0.000 claims abstract description 64
- 238000012545 processing Methods 0.000 claims description 58
- 238000004422 calculation algorithm Methods 0.000 claims description 32
- 238000000354 decomposition reaction Methods 0.000 claims description 25
- 238000003754 machining Methods 0.000 claims description 17
- 238000005259 measurement Methods 0.000 claims description 4
- 238000012805 post-processing Methods 0.000 claims description 3
- 239000003054 catalyst Substances 0.000 claims 1
- 230000035484 reaction time Effects 0.000 claims 1
- 238000012163 sequencing technique Methods 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000004088 simulation Methods 0.000 abstract description 3
- 230000006870 function Effects 0.000 description 12
- 230000010354 integration Effects 0.000 description 6
- 238000013461 design Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 239000011230 binding agent Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 230000002787 reinforcement Effects 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000011031 large-scale manufacturing process Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06316—Sequencing of tasks or work
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/04—Manufacturing
Abstract
本发明公布了一种分布式工艺规划与车间调度集成优化方法。本发明首先将分布式工艺规划与车间调度集成优化问题的四个决策子问题归为两类:选择问题和排序问题。然后将选择问题视为主问题,将排序问题当作子问题,对其分别进行求解,并设计两组Benders最优性割和一个Benders最优性割选择策略将本次迭代的求解情况反馈给主问题,从而实现主问题和子问题之间的来回迭代,直到满足收敛规则。本发明不仅适用于对计算时间有较高要求的生产场景,还适用于对解的质量有较高要求的生产场景。通过大量仿真实验验证了本发明可以实现对分布式工艺规划与车间调度集成优化问题的快速求解,并且保证了解的质量。
Description
技术领域
本发明属于分布式环境下的生产制造技术领域,具体涉及一种分布式工艺规划与车间调度集成优化方法。
背景技术
分布式工艺规划与车间调度集成优化(Distributed Integrated ProcessPlanning and Scheduling,DIPPS)问题考虑在分布式制造环境下同时决策工艺规划和车间调度,从而实现对提前制定的衡量指标的优化。分布式制造环境下每个工件都可由具有多个柔性制造单元(Flexible Manufacturing Cells,FMCs)的系统进行加工。目前,文献研究中针对分布式工艺规划与车间调度集成优化问题只有一些基于元启发式算法的方法,并且这些方法的使用效果非常一般。
在分布式工艺规划与车间调度集成优化问题中,有H个独立柔性制造单元分布在工厂不同地理位置,和M台机器以及N个具有多个可选工艺流程的工件。当为一个工件选定了柔性制造单元以后,那么该工件的所有工序都必须在该柔性制造单元中进行加工,即不允许跨柔性制造单元进行生产。当所有工件都已指定好柔性制造单元后,需要为每个工件选择合适的工艺流程和为选中的工艺流程的每道工序选择合适的加工机器。然后,需要确保每台机器每次只可以加工一道工序,并且属于同一个工艺流程的工序需要按照它们预先制定的顺序进行加工。此外,假设所有的柔性制造单元和机器在初始时刻都可用,并且所有工件都可以由任意一个柔性制造单元进行处理。一旦一个工件在指定的柔性制造单元完成了加工,那么该工件需要立刻被运输到缓冲区,并且运输时间是固定的。因此,在分布式工艺规划与车间调度集成优化问题中,需要解决以下四个决策子问题:为每个工件选择一个柔性制造单元进行加工,为每个选定了柔性制造单元的工件选择一个工艺流程,为被选中的工艺流程中的每道工序选择机器,以及确定分配到同一台机器上的工序的加工顺序。
虽然目前工业界和学术界在处理工艺规划与车间调度集成优化(IntegratedProcess Planning and Scheduling,IPPS)问题方面取得了显著成果,但随着现代制造系统中广泛使用的多柔性制造单元设置,传统的集中式制造环境已被灵活的分布式制造环境所取代,这也导致针对工艺规划与车间调度集成优化问题设计的方法无法直接应用于求解作为工艺规划与车间调度集成优化问题的扩展问题的分布式工艺规划与车间调度集成优化问题。此外,目前针对分布式工艺规划与车间调度集成优化问题提出的各种基于元启发式算法的方法获得的解的质量不高,难以满足实际生产的需要。
发明内容
为了克服现有技术的不足,本发明的目的在于提供一种分布式工艺规划与车间调度集成优化方法,可以做到无论生产场景规模的大小如何,不仅可以提升分布式工艺规划与车间调度集成优化问题的解的质量,还减少了算法消耗的计算时间,满足实际生产的需要。为了实现上述目的,本发明采用如下技术方案:一种分布式工艺规划与车间调度集成优化方法,包括以下步骤:
步骤S1:将分布式工艺规划与车间调度集成优化问题转换为数字符号的形式化描述;
步骤S2:分析分布式工艺规划与车间调度集成优化问题的预设约束条件;
步骤S3:获取待优化的目标,构建相应的目标优化函数;
步骤S4:基于模型重构对分布式工艺规划与车间调度集成优化问题进行子问题分解:将分布式工艺规划与车间调度集成优化问题的四个子决策任务划分为两类子问题(选择问题和排序问题)。选择问题是指为每个工件选择一个柔性制造单元进行加工,为每个选定了柔性制造单元的工件选择一个工艺流程,并为被选中的工艺流程中的每道工序选择机器;排序问题是指用来确定分配到同一台机器上的工序的加工顺序;
步骤S5:构建基于逻辑的Benders分解(Logic-Based Benders Decomposition,LBBD)算法;对基于逻辑的Benders分解算法进行迭代优化,直至输出最终解集合,并解析出最后的工艺规划选择和生产调度安排。
进一步的,所述步骤S1具体为:设i,i′为工件的序号,N为工件的集合,i,i′∈N,|N|为N的基数,表示待处理的工件数量;k为机器的序号,M为机器的集合,k∈M;h,h′为可以用来加工工件i的柔性制造单元的序号,Hi为可以用来加工工件i的柔性制造单元的集合,h,h′∈Hi;l,l′为工件i在柔性制造单元h的可选工艺流程的序号,为工件i在柔性制造单元h的可选工艺流程的集合,/>j,j′为工件i在柔性制造单元h中的第l个工艺流程中的工序的序号,/>为工件i在柔性制造单元h中的第l个工艺流程中的工序的集合,为/>的基数,表示工件i在柔性制造单元h中的第l个工艺流程中的工序数量,J等于所有工件中最大的/>Oij为工件i的第j个工序;/>为工件i在柔性制造单元h中的第l个工艺流程中的第j个工序/>表示/>的最后一道工序);表示机器k可以用来加工/>否则/>表示/>在机器k上的加工时间;/>为工件i在柔性制造单元h中的运输时间;A为一个足够大的正整数;Cmax为生产周期;ci为工件i的完工时间;如果工件i被分配到柔性制造单元h中则/>否则/>如果工件i在柔性制造单元h中第l个工艺流程被选中则/>否则/>如果工序/>被分配到机器k则/>否则/> 为工序/>在机器k上的开始加工时间;/>为工序/>在机器k上的结束加工时间;如果工序Oi′j′和工序Oij都分配到机器k上加工,且工序Oi′j′直接或者间接在Oij后加工则/>否则/>
进一步的,步骤S2所述预设约束为:
从每个工件可选的柔性制造单元中只选择一个来处理该工件:
从选择的柔性制造单元中工件的可选工艺流程中只选择一个工艺流程来对该工件进行加工:
接下来,必须为每个工件所选工艺流程的每道工序选择一台加工机器:
确定工序的开始加工时间和结束加工时间的约束如下:
约束(4)确保当时,即工序/>没有分配到机器k上,那么工序/>在机器k上的开始加工时间和结束加工时间均为0。相反,根据约束(5)可知,如果工序/>分配到机器k上进行加工,那么工序/>在机器k上的结束加工时间和开始加工时间之间的差值不能短于工序/>在机器k上的加工时间/>
分配到同一台机器上的工序之间的加工顺序由下式决定
同一工艺流程相邻两道工序的开始加工时间和结束加工时间由下式决定
每个工件的完工时间不短于该工件最后一道工序的加工结束时间。因此,有约束如下:
对于目标函数,有以下约束:
最后,所有变量的可行域定义如下:
进一步的,所述步骤S3具体为:在本发明中以最小化生产周期即最小化最大完工时间为衡量指标,由此可得目标函数如下:
min Cmax (12)
进一步的,所述步骤S5具体为:
步骤S51:将选择问题视为主问题(Master Problem,MP),并建立混合整数线性规划(Mixed-Integer Linear Programming,MILP)模型对主问题进行求解。为了描述该混合整数线性规划模型,本发明引入了一个0-1变量yk来指示是否有工序分配到机器k上加工。此外,两个连续变量r k和q k用来表示机器k上最小的可开始加工时间与最小的剩余加工时间,0-1变量和/>用于指示/>是否是机器k上产生最小可开始加工时间或最小剩余加工时间的工序。具体的混合整数线性规划模型如下:
min Cmax (13)
s.t.(1),(2),(3)
Benders最优性割 (24)。
步骤S52:将排序问题当作子问题(Sub-Problem,SP)。通过求解步骤S51中建立的混合整数线性规划模型可得到和/>的一组值,并将其看作子问题中的已知参数,因此,子问题就被简化成了经典的车间调度问题,用来确定分配到同一台机器上的工序的加工顺序并计算原问题的解。基于此,建立约束规划(Constraint Programming,CP)模型对子问题进行求解。为了描述该约束规划模型,本发明定义变量Ok为可以在机器k上加工的工序集合;/>为工件i在FMC h中的第l个工艺流程中第0道工序,该工序是虚构的,所以 为可以用来加工工序/>的机器集合;/>为工序/>的时间间隔,可选的(可选表示如果在解决方案中考虑它们,则存在;否则不存在);/>表示工序在机器k上加工的时间间隔,可选的,/>如果/>存在则/>否则且size=0;IS(Ok)为针对Ok的时间间隔集合。此外,本发明引入了函数endOf(I)来表示如果I存在则返回I的结束时间,否则返回0;函数noOverlap(IS)来指定IS中的各个时间间隔不能有重叠;函数endBeforeStart(I,I′)来保证时间间隔I的结束时间小于时间间隔I′的开始时间。具体的约束规划模型如下:
步骤S53:判断求解主问题得到的解和求解子问题得到的解是否收敛,如果收敛,则方法结束;否则,基于子问题获得的原问题的可行解和主问题的输出设计两种Benders最优性割(经典和加强),然后进行Benders最优性割选择,最后将选中的Benders最优性割添加到主问题的混合整数线性规划模型中,并返回步骤S51。
进一步的,步骤S53所述的经典Benders最优性割如下:
其中表示第t次迭代时子问题获得的可行解。
步骤S53所述的加强Benders最优性割如下:
其中Ns是选定作业的集合,是相应的可行解。
步骤S53所述Benders最优性割选择策略如下:
基于以上设计,当本发明提出的方法每次获得一个可行解时,都会推导出两组Benders最优性割。但是,如果将推导出的两组Benders最优性割都包含在主问题中,随着迭代次数的增加,主问题的求解难度也越来越大。因此,需要根据具体情况来分析两组Benders最优性割的适用性从而进行选择。由于Benders最优性割(29)仅考虑被选中的工件的的取值情况,而对那些没有选择的工件的/>的取值不做任何限制,因此Benders最优性割(29)比Benders最优性割(28)要更有效。例如,如果工件i∈Ns,有/>并且那么Benders最优性割(28)将只会限制主问题的一个解,而Benders最优性割(29)则可以限制主问题的多个解。因为那些未被选中的工件的/>的值不受限制,可以随意取0或者1。因此,当有Benders最优性割(29)产生的时候,本发明只将包含最少工件数量的Benders最优性割(29)添加到主问题中,相反如果没有Benders最优性割(29)产生的时候,本发明将Benders最优性割(28)添加到主问题中。
最后,步骤S53所述收敛的准则如下:
1.即子问题和主问题的解在第t次迭代时收敛;
2.即第t次迭代时主问题的解等于迄今为止子问题得到的最佳解。
本发明的技术效果如下:
本发明解决的分布式工艺规划与车间调度集成优化问题是想通过同时将工件分配到最合适的柔性制造单元、为工件选择最合适的工艺流程、为所选择的工艺流程的每道工序选择最合适的机器以及确定分配到同一台机器上的工序的加工顺序来最小化完工时间。本发明首先将分布式工艺规划与车间调度集成优化问题的四个决策子问题归为两类:选择问题和排序问题。选择问题被视为主问题,排序问题被当作子问题,然后设计两组Benders最优性割和一个Benders最优性割选择策略将本次迭代的求解情况反馈给主问题,从而实现主问题和子问题之间的来回迭代,直到满足收敛准则。本发明不仅适用于对计算时间有较高要求的生产场景,还适用于对解的质量有较高要求的生产场景。最后通过大量仿真实验验证了本发明可以实现对分布式工艺规划与车间调度集成优化问题的快速求解,并且可以获得不错质量的解。
附图说明
图1为本发明流程示意图;
图2为本发明具体实施例的加强Benders最优性割生成示意图;
图2(a)为本发明具体实施例中子问题针对所有工件的最优调度方案;
图2(b)为本发明具体实施例中子问题针对所选工件(1,5)的最优调度方案;
图2(c)为本发明具体实施例中子问题针对所选工件(3,4)的最优调度方案;
图3为本发明具体实施例的两种收敛情况示意图;
图3(a)为本发明具体实施例的第一种收敛情况示意图;
图3(b)为本发明具体实施例的第二种收敛情况示意图。
具体实施方式
参考图1,本发明实施例提供了一种如图1所示的分布式工艺规划与车间调度集成优化方法,具体包括以下步骤:
步骤S1:定义变量符号对分布式工艺规划与车间调度集成优化问题进行数学描述;
步骤S2:分析分布式工艺规划与车间调度集成优化问题的约束条件;
步骤S3:分析待优化的衡量指标,建立相应的目标优化函数;
步骤S4:基于模型重构对分布式工艺规划与车间调度集成优化问题进行子问题分解:将分布式工艺规划与车间调度集成优化问题的四个子决策任务划分为两类子问题(选择问题和排序问题)。选择问题是指为每个工件选择一个柔性制造单元进行加工,为每个选定了柔性制造单元的工件选择一个工艺流程,并为被选中的工艺流程中的每道工序选择机器;排序问题是指用来确定分配到同一台机器上的工序的加工顺序;
步骤S5:构建基于逻辑的Benders分解算法;对基于逻辑的Benders分解算法进行迭代优化,直至输出最终解集合;并解析获取最终的工艺规划选择和调度安排。
在本实施例中,步骤S1具体为:定义以下变量符号:
设i,i′为工件的序号,N为工件的集合,i,i′∈N,|N|为N的基数,表示待处理的工件数量;k为机器的序号,M为机器的集合,k∈M;h,h′为可以用来加工工件i的柔性制造单元的序号,Hi为可以用来加工工件i的柔性制造单元的集合,h,h′∈Hi;l,l′为工件i在柔性制造单元h的可选工艺流程的序号,为工件i在柔性制造单元h的可选工艺流程的集合,j,j′为工件i在柔性制造单元h中的第l个工艺流程中的工序的序号,/>为工件i在柔性制造单元h中的第l个工艺流程中的工序的集合,/>为/>的基数,表示工件i在柔性制造单元h中的第l个工艺流程中的工序数量,J等于所有工件中最大的Oij为工件i的第j个工序;/>为工件i在柔性制造单元h中的第l个工艺流程中的第j个工序(/>表示/>的最后一道工序);/>表示机器k可以用来加工/>否则/>表示/>在机器k上的加工时间;/>为工件i在柔性制造单元h中的运输时间;A为一个足够大的正整数;Cmax为生产周期;ci为工件i的完工时间;如果工件i被分配到柔性制造单元h中则/>否则/>如果工件i在柔性制造单元h中第l个工艺流程被选中则/>否则/>如果工序/>被分配到机器k则/>否则为工序/>在机器k上的开始加工时间;/>为工序/>在机器k上的结束加工时间;如果工序Oi′j′和工序Oij都分配到机器k上加工,且工序Oi′j′直接或者间接在Oij后加工被分配到机器k则/>否则/>
在本实施例中,步骤S2中的约束条件包括:
从每个工件可选的柔性制造单元中只选择一个来处理该工件:
从选择的柔性制造单元中工件的可选工艺流程中只选择一个工艺流程来对该工件进行加工:
接下来,必须为每个工件所选工艺流程的每道工序选择一台加工机器:
确定工序的开始加工时间和结束加工时间的约束如下:
约束(33)确保当时,即工序/>没有分配到机器k上,那么工序/>在机器k上的开始加工时间和结束加工时间均为0。相反,根据约束(34)可知,如果工序/>分配到机器k上进行加工,那么工序/>在机器k上的结束加工时间和开始加工时间之间的差值不能短于工序/>在机器k上的加工时间/>
分配到同一台机器上的工序之间的加工顺序由下式决定
同一工艺流程相邻两道工序的开始加工时间和结束加工时间由下式决定
每个工件的完工时间不短于该工件最后一道工序的加工结束时间。因此,有约束如下:
对于目标函数,有以下约束:
最后,所有变量的可行域定义如下:
在本实施例中,步骤S3具体为:确定所要优化的衡量指标为最小化生产周期,即最小化最大完工时间,由此可得目标函数如下:
min Cmax (41)
在本实施例中,步骤S5具体包括以下步骤:
步骤S51:将选择问题视为主问题。考虑变量和约束(30),(31),(32)建立混合整数线性规划模型对主问题进行求解;
步骤S52:将排序问题当作子问题。通过求解步骤S51中的混合整数线性规划模型可得到和/>的一组值,将其看作子问题中的已知参数,则子问题就被简化成了经典的车间调度问题,用来确定分配到同一台机器上的工序的加工顺序并计算原问题的解。基于此,建立约束规划模型对子问题进行求解;
步骤S53:判断求解主问题得到的解和求解子问题得到的解是否收敛,如果收敛,则方法结束;否则,基于子问题获得的原问题的可行解和主问题的输出设计两种Benders最优性割(经典和加强),然后进行Benders最优性割选择,最后将选中的Benders最优性割添加到主问题的混合整数线性规划模型中,并返回步骤S51。
优选的,所述步骤S51具体为:
步骤S511:仅考虑变量和约束(30),(31),(32),是可以用来处理选择问题,但是无法用于求解生产周期。因此,通过简化工件的最大完工时间的计算,可以得到分布式工艺规划与车间调度集成优化问题的一个下界:
步骤S512:通过简化机器的最大完工时间的计算,也可以得到分布式工艺规划与车间调度集成优化问题的一个下界:
步骤S513:已知由此可得求解主问题的混合整数线性规划模型如下:
min Cmax (42)
Benders最优性割 (49)。
步骤S514:
由于约束(46)和(47)都是非线性的,所以随着问题规模变大,求解下界的计算时间呈指数型增长。因此,需要对约束(46)和(47)进行线性化处理以提高计算效率。为了描述该线性化模型,本发明定义了一个0-1变量yk来指示是否有工序分配到机器k上加工。此外,两个连续变量r k和q k用来表示机器k上最小的可开始加工时间与最小的剩余加工时间,0-1变量和/>用于指示/>是否是机器k上产生最小可开始加工时间或最小剩余加工时间的工序。具体的线性化模型如下:
min Cmax (50)
s.t.(43),(44),(45)
/>
Benders最优性割 (61)。
优选的,所述步骤S52具体为:
定义变量Ok为可以在机器k上加工的工序集合;为工件i在FMC h中的第l个工艺流程中第0道工序,该工序是虚构的,所以/>为可以用来加工工序/>的机器集合;/>为工序/>的时间间隔,可选的(可选表示如果在解决方案中考虑它们,则存在;否则不存在);/>表示工序/>在机器k上加工的时间间隔,可选的,如果/>存在则/>否则/>且size=0;IS(Ok)为针对Ok的时间间隔集合。此外,本发明引入了函数endOf(I)来表示如果I存在则返回I的结束时间,否则返回0;函数noOverlap(IS)来指定IS中的各个时间间隔不能有重叠;函数endBeforeStart(I,I′)来保证时间间隔I的结束时间小于时间间隔I′的开始时间。具体的约束规划模型如下:
优选的,所述步骤S53具体为:
步骤S531:基于子问题获得的原问题的可行解和主问题的输出设计的Benders最优性割是为了当本发明提出的方法在本次迭代中获得的解只是一个可行解,那么在之后迭代过程中,Benders最优性割被添加到主问题,以确保当之后迭代过程中主问题的变量的值与本次迭代的值相同的时候,限定主问题获得的解大于等于本次迭代过程中子问题获得的可行解。因为主问题的输出是和/>的一组值,所以可以通过改变任何一个/>的值来获得两个不同解,据此设计了经典Benders最优性割如下:
其中表示第t次迭代时子问题获得的可行解。
步骤S532:众所周知,Benders最优性割的有效性对于基于逻辑的Benders分解算法的收敛速度至关重要。不幸的是,由于Benders最优性割(65)考虑了所有值为1的因此Benders最优性割(65)只会影响到一小部分主问题的解。极端情况下,通过Benders最优性割(65)进行约束,主问题在第t+1次迭代中获得的一组/>中只有一个值不同于它在第t次迭代中的值。因此,Benders最优性割(65)在实践应用中表现不佳,需要设计更有效的Benders最优性割来提升基于逻辑的Benders分解算法的计算效率。因此,本发明通过结合基于调度规则的算法和约束规划模型的混合方法来获得分布式工艺规划与车间调度集成优化问题的一个上界。该混合方法的设计动机是分布式工艺规划与车间调度集成优化问题的最小生产周期由工件或机器的最大完工时间来决定。所以,在该混合方法中,每个工件的柔性制造单元和工艺流程都是使用调度规则来进行选择的(通过为每个工件选择加工时间和最小的工艺流程来确定)。需要注意的是,虽然在计算每个工艺流程的加工时间和时,是为每道工序选择加工时间最小的机器,但是在机器选择的过程中必须考虑每道工序所有的可选机器,从而使得每台机器的负荷尽可能均衡。最后,该混合方法利用约束规划模型进行分配到同一台机器上的工序之间的排序从而计算出上界。混合方法的伪代码如下所示。
/>
基于该上界,本发明设计的加强Benders最优性割如下。在每次迭代中,一旦得到了子问题的解,并且该解大于当前的上界,本发明就会从主问题的输出中选择一定数量的工件(大于等于2但小于n。n的值由决定,其中Tmax是给基于逻辑的Benders分解算法设置的最大计算时间。如果n>N,我们设置n=N。如果n<2,本发明设置n=2)。然后本发明计算选定工件集对应的最小生产周期。如果获得的最小生产周期依然大于当前的上界,那么本发明设计如下的加强Benders最优性割:
其中Ns是选定作业的集合,是相应的可行解。
值得注意的是,如果基于逻辑的Benders分解算法得到的可行解优于当前的上界,就用该可行解来更新当前的上界。
图2是生成加强Benders最优性割的说明性示例。假设有2个独立柔性制造单元分布在工厂不同地理位置,和10台机器以及6个具有多个可选工艺流程的工件。图2(a)显示了考虑所有工件的最优调度方案,对应的最小生产周期为109,大于当前的上界(100)。因此,我们可以针对该实例生成加强Benders最优性割。在此我们以n=2为例,得到图2(b)和图2(c)。从图2(b)中,可以看到当Ns={1,5}时,对应的最小生产周期为93,小于当前的上界(100),因此不生成加强Benders最优性割。同时,从图2(c)中,可以看到当Ns={3,4}时,对应的最小生产周期为108,大于当前的上界(100),因此可以生成如下所示的加强Benders最优性割:
步骤S533:基于以上设计,当基于逻辑的Benders分解算法每次获得一个可行解时,都会推导出两组Benders最优性割。但是,如果将推导出的两组Benders最优性割都包含在MP中,随着迭代次数的增加,主问题的求解难度也越来越大。因此,需要根据具体情况来分析两组Benders最优性割的适用性从而进行选择。由于Benders最优性割(66)仅考虑被选中的工件的的取值情况,而对那些没有选择的工件的/>的取值不做任何限制,因此Benders最优性割(66)比Benders最优性割(65)要更有效。例如,如果工件i∈Ns,有/>并且/>那么Benders最优性割(65)将只会限制主问题的一个解,而Benders最优性割(66)则可以限制主问题的多个解。因为那些未被选中的工件的/>的值不受限制,可以随意取0或者1。因此,当有Benders最优性割(66)产生的时候,我们只将包含最少工件数量的Benders最优性割(66)添加到主问题中,相反如果没有Benders最优性割(66)产生的时候,我们将Benders最优性割(65)添加到主问题中。
步骤S534:如图3所示,基于逻辑的Benders分解算法的解的收敛准则如下:
1.即子问题和主问题的解在第t次迭代时收敛;
2.即第t次迭代时主问题的解等于迄今为止子问题得到的最佳解。
为了测试本发明性能,在仿真实验中构建了一个最多有120个工件和20台机器组成的数据集。该数据集共包含34个生产场景,根据工件的数量,可以将该34个生产场景分为4组:A组(最多8个工件)、B组(10到30个工件)、C组(36到54个工件)和D组(56到120个工件)。
运用本发明算法对上述34个不同生产场景进行测试,同时,在同一个生产场景,将本发明提出的基于逻辑的Benders分解算法(LBBD)与混合整数线性规划模型(MILP)、约束规划模型(CP)、改进的遗传算法(GA1)、扩展的遗传算法(GA2)和改进的帝国主义竞争算法(ICA)比较。由于这些基于元启发式的对比算法具有随机性,因此针对每个生产场景这些基于元启发式的对比算法都独立运行30次,并将最小的生产周期值作为该生产场景下的最终结果。实验结果如表1所示。
表1实验结果表
从表1可以看出,相较于GA1、GA2和ICA,本发明提出的基于逻辑的Benders分解算法有非常显著的优势。具体的,相较于GA1,本发明基于逻辑的Benders分解算法虽然消耗了更多的计算时间,但是针对34个生产场景本发明基于逻辑的Benders分解算法获得解都远远好于GA1获得的。相较于GA2和ICA,本发明基于逻辑的Benders分解算法实现了求解精度和求解效率两方面的同时提升。此外,相较于MILP和CP,本发明提出的基于逻辑的Benders分解算法在小规模生产场景的求解时间要稍微大于这两个模型的求解时间,这是因为小规模生产场景本质是个简单的分布式工艺规划与车间调度集成优化问题,存在可行的调度方案数量有限,因此MILP和CP可以在很短的时间内求解出这些生产场景的最优解。然而,在本发明提出的基于逻辑的Benders分解算法中,主问题求得的解是分布式工艺规划与车间调度集成优化问题的下界,所以可能出现如图3(b)所示的那种收敛情况,也就是当子问题已经获得分布式工艺规划与车间调度集成优化问题的最优解了,但是由于主问题求得的解只是分布式工艺规划与车间调度集成优化问题的一个下界,因此本发明提出的基于逻辑的Benders分解算法一直不能收敛,直到主问题求得的解等于分布式工艺规划与车间调度集成优化问题的最优解时才收敛。针对中等规模和大规模生产场景,MILP存在无法求得部分生产场景可行解的情况。相比较之下,本发明基于逻辑的Benders分解算法表现出了压倒性的优势,不仅获得了更好的解,而且算法消耗的计算时间也更短。
以上实施例仅用以说明本发明的技术方案而非对其进行限制,本领域的普通技术人员可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明的精神和范围,本发明的保护范围应以权利要求书所述为准。
Claims (9)
1.一种分布式工艺规划与车间调度集成优化方法,其特征在于,包括以下步骤:
步骤S1:将分布式工艺规划与车间调度集成优化问题转换为数字符号的形式化描述;
步骤S2:分析分布式工艺规划与车间调度集成优化问题的预设约束条件;
步骤S3:获取待优化的目标,构建相应的目标优化函数;
步骤S4:基于模型重构对分布式工艺规划与车间调度集成优化问题进行子问题分解:将分布式工艺规划与车间调度集成优化问题的四个子决策任务划分为两类子问题,该两类子问题为选择问题和排序问题,选择问题是指为每个工件选择一个柔性制造单元进行加工,为每个选定了柔性制造单元的工件选择一个工艺流程,为被选中的工艺流程中的每道工序选择机器;排序问题是指用来确定分配到同一台机器上的工序的加工顺序;
步骤S5:构建基于逻辑的Benders分解算法;对基于逻辑的Benders分解算法进行迭代优化,直至输出最终解集合;最终获取工艺规划选择和调度安排,具体为:
步骤S51:将选择问题视为主问题,并建立混合整数线性规划模型对主问题进行求解;
步骤S52:将排序问题当作子问题,通过求解步骤S51中建立的混合整数线性规划模型可得到和/>的一组值,并将其看作子问题中的已知参数,则子问题退化为经典的车间调度问题,建立约束规划模型对子问题进行求解;
步骤S53:判断求解主问题得到的解和求解子问题得到的解是否收敛,如果收敛,则方法结束;否则,基于子问题获得的原问题的可行解和主问题的输出设计两种Benders最优性割,然后进行Benders最优性割选择,最后将选中的Benders最优性割添加到主问题的混合整数线性规划模型中,并返回步骤S51。
2.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,所述步骤S1具体为:设i,i′为工件的序号,N为工件的集合,i,i′∈N,|N|为N的基数,表示待处理的工件数量;k为机器的序号,M为机器的集合,k∈M;h,h′为用来加工工件i的柔性制造单元的序号,Hi为用来加工工件i的柔性制造单元的集合,h,h′∈Hi;l,l′为工件i在柔性制造单元h的可选工艺流程的序号,为工件i在柔性制造单元h的可选工艺流程的集合,/>j,j′为工件i在柔性制造单元h中的第l个工艺流程中的工序的序号,/>为工件i在柔性制造单元h中的第l个工艺流程中的工序的集合,/> 为/>的基数,表示工件i在柔性制造单元h中的第l个工艺流程中的工序数量,J等于所有工件中最大的Oij为工件i的第j个工序;/>为工件i在柔性制造单元h中的第l个工艺流程中的第j个工序;/> 表示机器k用来加工/>否则/> 表示/>在机器k上的加工时间;/>为工件i在柔性制造单元h中的运输时间;A为一个足够大的正整数;Cmax为生产周期;ci为工件i的完工时间;如果工件i被分配到柔性制造单元h中则/>否则/>如果工件i在柔性制造单元h中第l个工艺流程被选中则/>否则/>如果工序/>被分配到机器k则/>否则/> 为工序/>在机器k上的开始加工时间;为工序/>在机器k上的结束加工时间;如果工序Oi′j′和工序Oij都分配到机器k上加工,且工序Oi′j′直接或者间接在Oij后加工则/>否则/>
3.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,步骤S2所述预设约束为:从每个工件可选的柔性制造单元中只选择一个来处理该工件:
从选择的柔性制造单元中工件的可选工艺流程中只选择一个工艺流程来对该工件进行加工:
接下来,必须为每个工件所选工艺流程的每道工序选择一台加工机器:
确定工序的开始加工时间和结束加工时间的约束如下:
分配到同一台机器上的工序之间的加工顺序由下式决定
同一工艺流程相邻两道工序的开始加工时间和结束加工时间由下式决定
每个工件的完工时间不短于该工件最后一道工序的加工结束时间,约束如下:
对于目标函数,有以下约束:
最后,所有变量的可行域定义如下:
4.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,所述步骤S3具体为:以最小化生产周期为衡量指标,由此可得目标函数如下:
min Cmax (12)。
5.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,步骤S51具体为,引入了一个0-1变量yk来指示是否有工序分配到机器k上加工,两个连续变量r k和q k用来表示机器k上最小的可开始加工时间与最小的剩余加工时间,0-1变量和/>用于指示/>是否是机器k上产生最小可开始加工时间或最小剩余加工时间的工序,具体的混合整数线性规划模型如下:
min Cmax (13)
s.t.(1),(2),(3)
Benders最优性割 (24)。
6.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,步骤S52具体为,定义变量Ok为在机器k上加工的工序集合;为工件i在FMC h中的第l个工艺流程中第0道工序,该工序是虚构的,所以/> 为用来加工工序/>的机器集合;/>为工序/>的时间间隔;/>表示工序/>在机器k上加工的时间间隔,如果/>存在则/>否则/>且size=0;IS(Ok)为针对Ok的时间间隔集合,引入了函数endOf(I)来表示如果I存在则返回I的结束时间,否则返回0;函数noOverlap(IS)来指定IS中的各个时间间隔不能有重叠;函数endBeforeStart(I,I′)来保证时间间隔I的结束时间小于时间间隔I′的开始时间,具体的约束规划模型如下:
7.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,步骤S53所述的经典Benders最优性割如下:
其中表示第t次迭代时子问题获得的可行解;
步骤S53所述的加强Benders最优性割如下:
其中Ns是选定作业的集合,是相应的最小生产周期。
8.如权利要求7所述的分布式工艺规划与车间调度集成优化方法,其特征在于,步骤S53所述Benders最优性割选择策略如下:当有Benders最优性割(29)产生的时候,将包含最少工件数量的Benders最优性割(29)添加到主问题中,相反如果没有Benders最优性割(29)产生的时候,将Benders最优性割(28)添加到主问题中。
9.如权利要求1所述的分布式工艺规划与车间调度集成优化方法,其特征在于,步骤S53所述收敛的准则如下:
1.子问题和主问题的解在第t次迭代时收敛;
2.第t次迭代时主问题的解等于迄今为止子问题得到的最佳解。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210025512.8A CN116468137A (zh) | 2022-01-11 | 2022-01-11 | 一种分布式工艺规划与车间调度集成优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210025512.8A CN116468137A (zh) | 2022-01-11 | 2022-01-11 | 一种分布式工艺规划与车间调度集成优化方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116468137A true CN116468137A (zh) | 2023-07-21 |
Family
ID=87174000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210025512.8A Pending CN116468137A (zh) | 2022-01-11 | 2022-01-11 | 一种分布式工艺规划与车间调度集成优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116468137A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116843157A (zh) * | 2023-08-02 | 2023-10-03 | 天津大学 | 一种批处理增材制造机器调度问题的解决方法和装置 |
-
2022
- 2022-01-11 CN CN202210025512.8A patent/CN116468137A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116843157A (zh) * | 2023-08-02 | 2023-10-03 | 天津大学 | 一种批处理增材制造机器调度问题的解决方法和装置 |
CN116843157B (zh) * | 2023-08-02 | 2024-03-29 | 天津大学 | 一种批处理增材制造机器调度问题的解决方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112561194B (zh) | 一种混合流水车间生产与物流集成调度方法及系统 | |
Chaudhry et al. | Integrated process planning and scheduling using genetic algorithms | |
Zhang et al. | Multi-objective scheduling simulation of flexible job-shop based on multi-population genetic algorithm | |
CN106611288A (zh) | 一种改进的柔性流水车间调度问题的求解算法 | |
Ak et al. | A guide for genetic algorithm based on parallel machine scheduling and flexible job-shop scheduling | |
Nikabadi et al. | A hybrid algorithm for unrelated parallel machines scheduling | |
CN115130789A (zh) | 一种基于改进灰狼优化算法的分布式制造智能调度方法 | |
Yu et al. | Dynamic integration of process planning and scheduling using a discrete particle swarm optimization algorithm | |
Zhang et al. | Effective genetic approach for optimizing advanced planning and scheduling in flexible manufacturing system | |
CN116700176A (zh) | 一种基于强化学习的分布式阻塞流水车间调度优化系统 | |
CN115640898A (zh) | 一种基于ddqn算法的大规模柔性作业车间调度方法 | |
CN116468137A (zh) | 一种分布式工艺规划与车间调度集成优化方法 | |
CN113705978B (zh) | 一种多机任务刀具静态与动态集成决策方法及系统 | |
Low et al. | Mathematical modelling of multi-objective job shop scheduling with dependent setups and re-entrant operations | |
Shi et al. | A hybrid immune genetic algorithm with tabu search for minimizing the tool switch times in CNC milling batch-processing | |
CN117148796A (zh) | 一种求解多目标柔性作业车间调度问题的优化方法 | |
Fattahi | A hybrid multi objective algorithm for flexible job shop scheduling | |
CN110705844A (zh) | 基于非强制空闲时间的作业车间调度方案鲁棒优化方法 | |
CN115730799A (zh) | 一种柔性装配作业车间生产任务调度方法、系统及设备 | |
CN114237166A (zh) | 基于改进spea2算法求解多转速节能调度问题的方法 | |
CN113673164A (zh) | 求解带运输时间和调整时间的柔性作业车间调度方法 | |
Vignier et al. | A hybrid method for a parallel-machine scheduling problem | |
CN116468136A (zh) | 一种工艺规划与车间调度集成优化方法 | |
Kuroda et al. | Robust design of a cellular-line production system with unreliable facilities | |
CN117215275B (zh) | 一种基于遗传编程的柔性车间大规模动态双效调度方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |