调度问题的描述
在一定的约束条件下,把有限的资源在时间上分配给若干个任务,以满足或优化一个或多个性能指标。
调度不仅要将任务排序,还要确定各个任务的开始或结束时间。因为在多个任务的开工时间之间可以插入无限的空闲时间。通常假定每个任务都按照其最早可开工时间开始加工,那么任务的一个排序就可以确定一个调度方案。
在制造业中,车间调度问题可以描述为:n个工件在m台机器上加工;一个工件有多道工序,每道工序可以在若干台机器上加工,并且必须按一些可行的工艺次序进行加工;每台机器可以加工工件的若干工序,并且在不同的机器上加工的工序集可以不同。调度的目标是将工件合理地安排到各机器,并合理地安排工件的加工次序和加工开始时间,使约束条件被满足,同时优化一些性能指标。在实际制造系统中,还要考虑刀具、托盘和物料搬运系统的调度问题。
车间调度问题的分类
1.单机调度问题
在单机调度问题(singlemachineschedulingproblem,SMP)中,加工系统只有一台机床,待加工的工件有且仅有一道工序,所有工件都在该机床上进行加工。此问题是最简单的调度问题,当生产车间出现瓶颈机床时的调度就可视为此调度问题。
2.并行机调度问题
在并行机调度问题(parallelmachineschedulingproblem,PMP)中,加工系统中有多个完全相同的机床,每个工件只有一道工序,工件可以在任意一台机床上进行加工。
3.开放车间调度问题
在开放车间调度问题(openshopschedulingproblem,OSP)中,每个工件的工序之间的加工顺序是任意的。工件的加工可以从任何一道工序开始,在任何一道工序结束。工件的加工没有特定的技术路线约束,各个工序之间没有先后关系约束。
4.流水车间调度问题
在流水车间调度问题(flowshopschedulingproblem,FSP)中,加工系统有一组功能不同的机床,待加工的工件包含多道工序,每道工序在一台机床上加工,所有工件的加工路线都是相同的。每个工件工序之间有先后顺序约束。
5.作业车间调度问题
在作业车间调度问题(jobshopschedulingproblem,JSP)中,加工系统有一组功能不同的机床,待加工的工件包含多道工序,每道工序在一台机床上加工,工件的加工路线互不相同,每个工件工序之间有先后顺序约束
以上几种调度问题及它们的扩展问题都可用三元组α/β/γ的形式进行描述,其中α表示机器的加工环境,β表示工件的加工特性,γ表示加工性能指标。鉴于流水车间和作业车间的特殊性、典型性和重要性,通常将其称为基本调度问题。一般用n/m/A/B将其简明表示,其中n表示工件数,m表示机器数,A表示工件流经机器的类型(作业车间用G表示,流水车间用F表示,置换流水车间用P表示等),B表示性能指标(如Cmax,Lmax,Tmax等)。
车间调度问题的特点
1.多约束性
在通常情况下,工件的加工路线是已知的,并且受到严格的工艺约束,使得各道工序在加工顺序上具有先后约束关系;同时,工件的加工机器集是已知的,工件必须按照工序顺序在可以选择的机床上进行加工。
2.离散性
车间生产系统是典型的离散系统,其调度问题是离散优化问题。工件的开始加工时间、任务的到达、订单的变更,以及设备的增添或故障等都是离散事件。可以利用数学规划、离散系统建模与仿真、排序理论等方法对车间调度问题进行研究。
3.计算复杂性
车间调度是一个在若干等式和不等式约束下的组合优化问题,从计算时间复杂度看是一个NP-hard问题。随着调度规模的增大,问题可行解的数量呈指数级增加。很简单的例子如:工件和机器的数量均为10的单机车间调度问题,当单纯考虑加工周期最短时,可能的组合数就已达到(10!)10。
4.不确定性
在实际车间调度中有很多随机因素,如:工件到达时间的不确定性,工件的加工时间随着不同的加工机器也有一定的不确定性。而且系统中常有突发事件,如:紧急订单插入、订单取消、原材料紧缺、交货期变更、设备发生故障等。
5.多目标性
在不同类型的制造企业和不同的生产环境下,调度目标往往形式多样、种类繁多。如:完工时间最小、交货期最早、设备利用率最高、成本最低、在制品库存量最少等。多目标性的含义:一个是目标的多样性;另一个是多个目标需要同时得到满足,并且各个目标之间往往是相互冲突的