机器在一段时间不可用条件下的单机调度问题
随机加工时间的单机随机调度问题
关 键 词 : 机 ; 机 加 工 时 间 ; 匀 分 布 ; 后 工件 数 ; 先 策 略 单 随 均 拖 优
中 图分 类 号 言
实 际 生 产 环 境 中 , 虑 随 机 因素 ( 随机 加 工 时 间 和 机 器 随 机 故 障 等 )的 调 度 问 题 ( 随 机 调 度 )具 有 重 要 意 义 . 考 如 即 因
1 p~UO ) 一dl ( wU) (, , I E ∑ j ̄
度 函 数 为
( ) 一
() 2
其 中 目标 函 数 为 期 望 加 权 误 工 任务 数 , ~ u( , ) 示 任 务 的加 工 时 间服 从 区 问 ( , ) 的 均 匀 分 布 , 的 概 率 密 o 表 O 上 它
此 , 机 调 度 问题 受 到 了人 们 的广 泛 关 注 . 是 大 多 数 研 究 只 是 涉 及 正 规 目标 函数 ( 目标 函数 是 完 成 时 间 的增 函 随 但 即 数 ) 随 着 JT 生产 思 想 在 实 际 中 的广 泛 采 用 , 正 规 目标 函数 更 多 地 受 到 人 们 的 重视 . . I 非
. Vo1 3l N O 3 .
S p. e
2 08 0
文 章 编 号 :0 01 3 ( 0 8 0 — 2 70 1 0 — 7 5 2 0 ) 30 8 — 3
随机加工时间的单机随机调度问题
李 扬 , 闫
巫
1 1 2 ( 阳化 工 学 院 数 理 系 , 宁 沈 阳 1 O 4 ) 沈 辽
收 稿 日期 : 0 70 - 0 2 0-92
作 者 简 介 : 扬 ( 9 2 , , 龙 江拜 泉 人 , 阳化 工 学 院 副 教 授 , 士 李 1 7一) 女 黑 沈 硕
单台机器上任务调度问题
4 问题分析单机调度问题可直观的表示为如下图:图1任务持续时间为线上标注所示。
问题1,完成所有任务总需时应该从0时刻计时,求最后所有任务完成的时刻。
为此,可能出现几种不同的情况:(1)任务发布时间~任务实际完成时间所构成的集合没有交集;(2)任务发布时间~任务实际完成时间所构成的集合有交集。
对于情况(1),当某个任务执行完毕后,则由假设2和3,机器必需等待;对于情况(2),则由假设2,有交集处,机器连续执行且任务切换时间忽略不计。
问题2,平均处理任务是指任务发布时间到任务完成时刻这段时间。
问题3,总超时时间是指,如果某个任务没有超时,则超时时间为0;如果某个任务超时,则超时时间为规定完成时刻到任务实际完成时刻这段时间。
总超时时间为超时时间之和。
为此,解决上述问题,必然要解决两个基本问题。
定理1定理25 模型建立由问题分析,可建立如下模型:问题1,问题2,问题3,6 模型求解利用LINGO 9.0,对以上问题进行求解。
其程序代码和数据结果如下:问题1,model:sets:task/1..7/:G,ts,tp,tc,C;!集合/成员(属性下标)/属性;endsetsdata:G=2 5 4 0 0 8 9;tp=5 6 8 4 2 4 2;C=10 21 15 10 5 15 22;enddatamin=@smax(tc(1),tc(2),tc(3),tc(4),tc(5),tc(6),tc(7));@for(task(i):ts(i)>=G(i));@for(task(i):tc(i)=ts(i)+tp(i));@for(task(i):@for(task(j)|j #gt#i:(ts(j)-tc(i))*(ts(i)-tc(j))<=0));!for中嵌套for;End结果1,(仅给出未知数的值,下同)Objective value: 31.00000TS( 1) 14.00000 0.000000TS( 2) 25.00000 0.000000TS( 3) 6.000000 0.000000TS( 4) 2.000000 0.000000TS( 5) 0.000000 0.000000TS( 6) 21.00000 0.000000TS( 7) 19.00000 0.000000TC( 1) 19.00000 0.000000TC( 2) 31.00000 0.000000TC( 3) 14.00000 0.000000TC( 4) 6.000000 0.000000TC( 5) 2.000000 0.000000TC( 6) 25.00000 0.000000TC( 7) 21.00000 0.000000问题2,model:sets:task/1..7/:G,ts,tp,tc,C;!集合/成员(属性下标示)/属性;endsetsdata:G=2 5 4 0 0 8 9;tp=5 6 8 4 2 4 2;C=10 21 15 10 5 15 22;enddatamin=@sum(task(i):(tc(i)-G(i))/7);!目标函数二;@for(task(i):ts(i)>=G(i));@for(task(i):tc(i)=ts(i)+tp(i));@for(task(i):@for(task(j)|j #gt#i:(ts(j)-tc(i))*(ts(i)-tc(j))<=0));!for中嵌套for;End结果2:Objective value: 12.85714TS( 1) 14.00000 0.000000TS( 2) 25.00000 0.000000TS( 3) 6.000000 0.000000TS( 4) 2.000000 0.000000TS( 5) 0.000000 0.000000TS( 6) 21.00000 0.000000TS( 7) 19.00000 0.000000TC( 1) 19.00000 0.000000TC( 2) 31.00000 0.000000TC( 3) 14.00000 0.000000TC( 4) 6.000000 0.000000TC( 5) 2.000000 0.000000TC( 6) 25.00000 0.000000TC( 7) 21.00000 0.000000问题3,model:sets:task/1..7/:G,ts,tp,tc,C;!集合/成员(属性下标示)/属性;endsetsdata:G=2 5 4 0 0 8 9;tp=5 6 8 4 2 4 2;C=10 21 15 10 5 15 22;enddatamin=@sum(task(i):@abs(tc(i)-C(i))/2-(tc(i)-C(i))/2);!目标函数三;@for(task(i):ts(i)>=G(i));@for(task(i):tc(i)=ts(i)+tp(i));@for(task(i):@for(task(j)|j #gt#i:(ts(j)-tc(i))*(ts(i)-tc(j))<=0));!for中嵌套for;end结果3:Objective value: 32.00000TS( 1) 6.000000 0.000000TS( 2) 11.00000 0.000000TS( 3) 17.00000 0.000000TS( 4) 2.000000 0.000000TS( 5) 0.000000 0.000000TS( 6) 27.00000 0.000000 TS( 7) 25.00000 0.000000TC( 1) 11.00000 0.000000TC( 2) 17.00000 0.000000TC( 3) 25.00000 0.000000TC( 4) 6.000000 0.000000TC( 5) 2.000000 0.000000TC( 6) 31.00000 0.000000TC( 7) 27.00000 0.0000007 结果分析及算法改进由图1,可直观的得出问题1的结果是正确的,另外其他两个问题也都可以直观的推算出来。
单台机器上的任务调度问题
单台机器上的任务调度问题(谢宇)摘要本文主要是研究在一台机器上处理一组任务,任务的执行不具有抢先性,然后分别构建以完成任务时间最小、平均处理任务时间最小和总超时时间最小为准则下建立相应的非线性通用数学模型,具有一定的实用性和推广性。
问题一,此时由于各任务之间不具有抢先行,即任务是一个一个顺序执行的,我们采用解非线性规划的的方法来建立一个关于对这一组任务的执行顺序排序以达到完成任务总序是最小的的运筹优化[1]模型,用lingo软件对模型进行求解,得到的结果是完成所有任务总需时最小为31小时。
问题二,处理任务时间是指任务发布时刻到任务实际完成时刻这段时间,需要得到平均处理任务时间最小,我们首先可以得到总处理任务时间最小,然后用它除以任务个数就可以了,我们可以建立一个关于这组任务的执行顺序以达到平均处理任务时间最小的运筹优化模型,用lingo软件求解该模型得到平均处理任务时间的最小值为12.28571小时。
问题三,对于超时时间,有两种情况:当实际完成时间不超过规定完成时间时,这是超时时间为0;当实际完成时间大于规定完成时间时,超时时间为实际完成时间减去规定完成时间。
我们可以建立一个关于这组任务的执行顺序来以到总超时时间最小的运筹优化模型,用lingo程序对模型求解得到总超时时间最小为18小时。
关键词:运筹优化;lingo;单台机器;任务调度;一、问题重述在一台机器上将要处理一组任务,任务的执行之间不具有抢先性,也就是任务一个一个的顺序执行,任务的发布时刻,持续时间,规定完成时间如表一所示:1 2 5 102 5 6 213 4 8 154 0 4 105 0 2 56 8 4 15任务时间的最小值和总超时时间的最小值。
二、问题分析首先我们可以把题目中的数据进行处理,在不考虑任务重叠的情况下各任务执行过程可直观的表示为如图二所示:(图二)(实线表示任务的持续时间段,虚线所指的点为开始执行时间即是任务发布间)问题一,每个任务都有自己的执行时间区间,也就是开始执行时间到实际完成时间这一段时间区间,在任务执行的过程中不能发生中断,也就可以简单的看成任意两个任务的执行时间区间不发生重叠,这样任务就可以一个一个的顺序执行。
机器调度问题
1)问题描述机器调度是指有m台机器需要处理n个作业,设作业i的处理时间为t i,则对n个作业进行机器分配,使得:(1) 一台机器在同一时间内只能处理一个作业;(2) 一个作业不能同时在两台机器上处理;(3) 作业i一旦运行,则需要t i个连续时间单位。
设计算法进行合理调度,使得在m台机器上处理n个作业所需要的处理时间最短。
2) 基本要求(1) 建立问题模型,设计数据结构;(2) 设计调度算法,为每个作业分配一台可用机器;(3) 给出分配方案。
3) 设计思想假设有七个作业,所需时间分别为{2, 14, 4, 16, 6, 5, 3},有三台机器,编号分别为m1、m2和m3。
这七个作业在三台机器上进行调度的情形如图9所示,阴影区代表作业的运行区间。
作业4在0到16时间被调度到机器1上运行,在这16个时间单位中,机器1完成了对作业4的处理;作业2在0到14时间被调度到机器2上处理,之后机器2在14到17时间处理作业7;在机器3上,作业5在0~6时间完成,作业6在6~11时间完成,作业3在11~15时间完成,作业1在15~17时间完成。
注意到作业i只能在一台机器上从s i时刻到s i+t i时间完成且任何机器在同一时刻仅能处理一个作业,因此最短调度长度为17。
在上述处理中,采用了最长时间优先(LPT)的简单调度策略。
在LPT算法中,作业按其所需时间的递减顺序排列,在分配一个作业时,将其分配给最先变为空闲的机器下面设计完成LPT算法的存储结构。
·为每个机器设计数据类型:struct MachineNode{int ID; //机器号int avail; //机器可用时刻};·为每个作业设计数据类型:struct JobNode{int ID; //作业号int time; //处理时间};LPT算法用伪代码描述如下:1. 如果作业数n≤机器数m,则1.1 将作业i分配到机器i上;1.2 最短调度长度等于n个作业中处理时间最大值;2. 否则,重复执行以下操作,直到n个作业都被分配:2.1 将n个作业按处理时间建成一个大根堆H1;2.2 将m个机器按可用时刻建立一个小根堆H2;2.3 将堆H1的堆顶作业分配给堆H2的堆顶机器;2.4 将H2的堆顶机器加上H1的堆顶作业的处理时间重新插入h2中;2.5 将堆H1的堆顶元素删除;3. 堆H2的堆顶元素就是最短调度时间;#include<iostream>#define N 10 //限定机器数和作业数不超过N个,这里N取10 using namespace std;//******************************************struct MachineNode{int ID; //机器号int avail; //机器可用时间};struct JobNode{int ID; //作业号int time; //处理时间};//*******************************************//建立大根堆void SiftD(JobNode r[],int k,int m){int i,j;i=k;j=2*i;while(j<=m){if(j<m&&r[j].time<r[j+1].time)j++;if(r[i].time>r[j].time)break;else{int temp1,temp2;temp1=r[i].time;r[i].time=r[j].time;r[j].time=temp1;temp2=r[i].ID;r[i].ID=r[j].ID;r[j].ID=temp2;}}}void HeapSortD(JobNode r[],int n){for(int i=n/2;i>=1;i--)SiftD(r,i,n);}//********************************************* //********************************************* //建立小根堆void SiftX(MachineNode r[],int k,int m){int i,j;i=k;j=2*i;while(j<=m){if(j<m&&r[j].avail>r[j+1].avail)j++;if(r[i].avail<r[j].avail)break;else{int temp1,temp2;temp1=r[i].avail;r[i].avail=r[j].avail;r[j].avail=temp1;temp2=r[i].ID;r[i].ID=r[j].ID;r[j].ID=temp2;}}}void HeapSortX(MachineNode r[],int n){for(int i=n/2;i>=1;i--)SiftX(r,i,n);}//**********************************************void assign(MachineNode M[],JobNode J[],int m,int j) //完成任务分配{if(m>=j) //如果机器数m大于或等于作业数j{cout<<"一台机器完成一个作业,最大工作时间为:";HeapSortD(J,j); //以各作业所需时间建立大根堆,堆顶元素即为最大耗时的作业cout<<J[1].time<<endl; //最大工作时间即为最大耗时的作业的所需时间}else //如果机器数m小于作业数j{for(int i=1;i<=m;i++) //先为每台机器分配一个作业,先把所需时间最大的m个作业分配给m台机器。
单机调度与非完美视情维修的联合决策与优化
单机调度与非完美视情维修的联合决策与优化随着工业化的发展,机器设备越来越智能化,随之而来的问题就是单机调度和维修调度的联合决策和优化。
在生产制造过程中,设备的故障和维修会对生产进程产生严重的影响。
因此,如何在单机调度和维修调度中实现最优决策是一个重要而又复杂的课题。
本篇论文将会探究单机调度和非完美视情维修的联合决策与优化问题,并提出相应的解决方案。
1. 单机调度的基本原理单机调度作为生产制造过程中最基本的一环,在生产过程中具有至关重要的地位。
单机调度是指根据生产工艺要求以及所需的人力、物力资源来制定合理的设备运行计划。
具体而言,单机调度的目的是通过尽可能合理地安排各项任务的顺序和时间,来保证生产效率和生产品质的最大化。
单机调度的实现过程中需要考虑许多因素,例如生产周期、生产能力、工艺流程、生产质量等。
为了达到最优化的生产效果,单机调度需要通过科学的规划和调度来实现人力、物力的最大价值和资源的最佳利用。
当然,实现优化的单机调度也要避免过多的设备故障和维修带来的影响。
实现单机调度的优化需要在这些因素之间取得平衡。
2. 非完美视情维修的基本原理设备故障和维修是生产制造过程中不能避免的问题。
而维修的时间对于设备的正常生产很有影响,因此对设备的维修需要尽可能缩短。
在现代制造业中,各种设备不断智能化并且大规模集成,因此,设备故障与维修的形式也需要发生改变。
非完美视情维修便是一种比较新的维修方式,这种方式并不是基于不同时间段设备的维修来设计的,而是考虑到设备故障的类型和维修时长的不确定性。
这种非完美视情维修方式下,需要通过分析设备的维修历史以及其它相关因素得到设备可能产生故障的类型,从而选择哪个设备是需要维修的。
同时,在确定维修类型之后,还需要考虑设备的维修工作的具体问题,例如维修所需的人力、物力等,以及相关的质量监控措施等。
这样才能确保设备的正常运行和减少维修周期对生产的影响。
3. 联合决策与优化为了实现生产的高效率和高产量,单机调度和维修调度需要紧密配合和协调。
单机动态调度问题研究
单机动态调度问题研究
单机动态调度问题是指在单个机器上,有多道作业(任务)需要按照一定的优先级、约束和指定的目标进行动态调度,以最大化完成数量、最小化完成时间、最小化花费等为目标的问题。
这类问题通常涉及到任务的相对优先级、工期、预计完成时间、机器的可用时间、资源的约束等因素。
单机动态调度问题的研究可以帮助提高生产效率、降低生产成本,以及优化生产调度计划。
在实际生产中,许多制造业、服务业和物流业等企业都需要对自己的生产过程进行动态调度,以达到最优化的生产效果。
目前,单机动态调度问题已成为运筹学中重要的研究领域,许多优化策略和算法已应用于实际生产中,以提高生产效率和降低成本。
常用的优化策略包括贪心算法、遗传算法、模拟退火算法、蚁群算法等,这些算法均可用于单机动态调度问题的建模和求解。
作业车间调度问题的几种模型
作业车间调度问题是指如何合理地安排工件在不同工序间的加工顺序,以达到最优的生产效率和成本控制。
针对这一主题,我将从几种常见的模型出发,深入探讨作业车间调度问题,旨在为您提供一篇有价值的文章。
一、传统作业车间调度模型1.1 单机调度模型在单机调度模型中,工件依次经过一个加工机器的加工过程。
我们需要考虑如何安排加工顺序、加工时间等因素,以最大程度地减少工件的等待时间和加工时间,提高生产效率。
1.2 流水车间调度模型流水车间调度模型是指在多台加工机器之间,工件按照特定的加工顺序依次进行加工。
我们需要考虑如何合理安排工件的加工顺序,以减少生产中的瓶颈和待机时间,提高整个流水线的生产效率。
1.3 作业车间调度的经典排序问题这种模型主要关注如何将待加工的工件按照特定的规则进行排序,以便在加工过程中最大程度地降低总加工时间和成本。
以上是传统作业车间调度问题的一些经典模型,它们都是针对不同的生产场景和加工流程所提出的解决方案。
接下来,我将对每种模型进行更深入的探讨,以便更好地理解作业车间调度问题。
二、作业车间调度问题的多种解决方法2.1 基于启发式算法的调度方法启发式算法是一种基于经验和规则的算法,它能够快速、高效地求解作业车间调度问题。
常见的启发式算法包括遗传算法、模拟退火算法等,它们能够在短时间内找到较优的解,并且适用于各种不同规模和复杂度的生产场景。
2.2 基于数学规划的调度方法数学规划方法是指利用数学建模和优化理论,对作业车间调度问题进行严格的数学求解。
通过建立数学模型,我们可以利用线性规划、整数规划等方法,对作业车间调度问题进行最优化求解,得到最优的生产调度方案。
2.3 基于仿真的调度方法仿真方法是指利用计算机模拟生产场景,通过模拟实际的生产过程,找到最优的调度方案。
通过仿真,我们可以更加真实地模拟生产现场的情况,找到最优的生产调度策略,提高生产效率和降低成本。
以上是作业车间调度问题的多种解决方法,它们都能够根据不同的生产场景和需求,找到最优的调度方案。
cpu不再调度原因 -回复
cpu不再调度原因-回复CPU不再调度的原因CPU不再调度是指在某些情况下,CPU停止对进程进行调度和执行的过程。
这种情况可能是由于各种不同的原因造成的,包括硬件问题、软件问题或用户操作错误等。
本文将逐步回答为什么CPU不再调度,以及可能涉及到的一些原因。
一、硬件问题1.硬件故障:当CPU出现硬件故障时,例如芯片损坏或电源故障等,它无法正常工作,这会导致CPU停止对进程进行调度。
在这种情况下,硬件维修或更换可能是解决问题的唯一方法。
2.内存不足:如果内存不足,CPU无法分配足够的内存空间给进程,从而导致调度失败。
当操作系统无法为新进程提供足够的内存资源时,CPU可能会停止对该进程进行调度。
通过增加内存容量或优化内存使用情况,可以解决这个问题。
3.硬件资源冲突:当多个设备或组件尝试同时访问CPU时,可能会发生资源冲突。
例如,如果多个设备同时请求CPU的服务,CPU可能无法同时满足所有请求,从而导致调度失败。
解决这个问题的方法是通过合理的资源分配和调度算法来管理硬件资源的竞争。
二、软件问题1.操作系统错误:操作系统是CPU调度和执行进程的关键组成部分。
如果操作系统出现错误或崩溃,CPU可能无法正常工作。
操作系统的错误可能是由于编程错误、漏洞或不稳定的驱动程序等原因引起的。
在这种情况下,重新安装或更新操作系统可能是解决问题的方法。
2.软件冲突:当多个软件程序相互冲突或使用相同的系统资源时,可能会导致CPU无法进行调度。
软件冲突可能是由于不兼容的软件版本、驱动程序问题或安装了具有冲突的软件等原因引起的。
解决这个问题的方法是识别和解决软件冲突,并确保软件之间的兼容性。
3.进程错误:某些情况下,进程本身可能出现错误,导致CPU无法正常调度和执行。
这可能是由于进程崩溃、死锁或无限循环等问题引起的。
在这种情况下,重新启动受影响的进程或通过修复进程错误来解决问题。
三、用户操作错误1.用户错误输入:当用户输入不正确的或无效的命令时,操作系统可能无法理解用户的请求,从而导致CPU停止对进程进行调度。
机器在一段时间不可用条件下的单机调度问题
A src: h e rs ma l cs fs gemahn c e uig s bett n u a al it tr a i bt tT esmi u be a eo i l a e n c iesh d l u jc o a n v i bly i ev 1s n a i n
t r. A e rsi p o e u e i as r p s d ue h u it r c d r s lo p o o e ,whc p l st eL c ih a p i h PT u ea t trig s l t n,t — e r l sissa t o u i n o o g t e t eg b u h o e r h b s do ar ieit rh n e .W h n t et tl ih e o l— eh rwi an ih o r o ds a c a e n p i s e c a g s h w n e h o a g td c mp e we t n t ec i ro s c n en d s f 1p o e t sp o e n h n a d n mi r g a i i rt in i o c r e ,a u e u r p ry i r v d a d t e y a c p o r mmi g ag — o m e n lo rt m sd v lp d t ov h sp o lm p i al . i h i e eo e o s l et i r b e o t ly m
域搜索对解进行改进 ; 目标 函数是最小化加权完成时间之和时 , 当 首先证 明了最优调度 的一个性质 , 并据此提 出了动态规划算法 。 关键词 : 机调度 ; 单 部分可恢复模式 ; P L T规则 ; 动态规划
准时化(JIT)思想下有关交货期窗口的单机调度问题
准时化(JIT)思想下有关交货期窗口的单机调度问题
吴悦;汪定伟;刘宏伟;宋虹
【期刊名称】《工业工程》
【年(卷),期】1999(2)1
【摘要】研究了有关交货期窗口的单机调度问题.在过去的10年中,准时化的概念对中国工业的影响很大.早于或晚于交货期窗口的任务都不受欢迎,且将导致提前或拖期惩罚.如果任务的完工时间偏离了交货期窗口,就要受到固定的惩罚,惩罚量与提前或拖期完工无关.目标是极小化所有惩罚的和.设如果任务在交货期准时完工,则不受惩罚;目标就是寻找一个最优调度极小化提前和拖期任务的总数.给出了确定最优调度的多项式时间算法,最后的例子说明了算法的有效性.
【总页数】4页(P36-39)
【作者】吴悦;汪定伟;刘宏伟;宋虹
【作者单位】东北大学信息科学与工程学院,辽宁,沈阳,110006;东北大学信息科学与工程学院,辽宁,沈阳,110006;沈阳变压器有限责任公司,辽宁,沈阳,110025;沈阳变压器有限责任公司,辽宁,沈阳,110025
【正文语种】中文
【中图分类】F460.2
【相关文献】
1.带有交货期窗口的单机加权提前/拖期调度问题研究 [J], 张纪会;姜爱华;徐军芹
2.交货期窗口下带有附加惩罚的单机提前/拖期调度问题 [J], 吴悦;汪定伟
3.具有窗口交货期的单机E/T调度问题 [J], 贾春福;孙旭
4.模糊加工时间和/或模糊交货期下的单机调度问题 [J], 谢源;谢剑英;邓小龙
5.公共交货期窗口下提前/拖期惩罚不同的单机调度问题 [J], 吴悦;汪定伟
因版权原因,仅展示原文概要,查看原文内容请购买。
考虑释放时间的单机JIT调度问题
考虑释放时间的单机JIT调度问题李凯;周超;马英【摘要】本文主要研究二级供应链中的生产-库存-直接配送协同调度问题,其中存在一个制造商和多个零售商,制造商根据订单进行生产,然后将产品配送给零售商.该类问题可以抽象为考虑释放时间的单机JIT调度问题.借助于禁忌搜索算法,本文提出了求解问题的CTA-TS算法,并通过大量的实验数据与已有算法进行比较,说明了本文提出算法的有效性.【期刊名称】《运筹与管理》【年(卷),期】2016(025)003【总页数】7页(P71-77)【关键词】运筹与管理;生产-库存-直接配送;禁忌搜索算法;单机JIT调度【作者】李凯;周超;马英【作者单位】合肥工业大学管理学院,安徽合肥230009;过程优化与智能决策教育部重点实验室,安徽合肥230009;合肥工业大学管理学院,安徽合肥230009;合肥工业大学管理学院,安徽合肥230009;过程优化与智能决策教育部重点实验室,安徽合肥230009【正文语种】中文【中图分类】O223;F406.2;TP301本文针对一个典型的单对多的二级供应链环境,研究其生产-库存-直接配送协同调度问题,其中二级供应链包含1个制造商和n个零售商(R1, R2, …, Rn)。
假设制造商考虑单机模式,在实际生产中可以认为该单机为单一生产线或单一生产线上的大型关键设备或瓶颈机器,因此各订单对应该单机有一个加工次序,见图1。
每个零售商生成一个订单,各自有其相应的制造加工时间、释放时间和交付时间。
各订单在加工生产过程中有一个重新排序的过程,考虑直接配送方式,每个订单必定在生产之后方能开始配送,生产结束时间与配送开始时间之间的时段,会带来制造商库存成本的增加。
若配送结束时间大于交付时间,则在零售商处产生缺货成本,若配送结束时间小于交付时间,则在零售商处产生额外的库存成本。
系统的目标是供应链上总成本的最小化,即制造商、零售商处额外的库存成本和缺货成本的最小化。
车间调度问题的特点与指标分析
车间调度问题的特点与指标分析作者:罗哲顾晓猛何循来来源:《价值工程》2020年第11期摘要:本文从车间调度的主要内容出发,综述了当前车间调度问题的研究分类方法以及在实际生产中车间调度问题的各方面特点,其中重点就车间调度问题在按照加工系统的复杂性分类方法上进行了详细阐述,总结了车间调度问题的分派规则与调度指标,以期为车间调度问题的研究拓展提供良好的借鉴。
Abstract: Based on the main content of workshop scheduling, this paper summarizes the current research and classification methods of workshop scheduling problems and the characteristics of various aspects of workshop scheduling problems in actual production, elaborates the workshop scheduling problem in the classification method according to the complexity of the processing system in detail, and summarizes the dispatching rules and scheduling indicators of the workshop scheduling problem, in order to provide a good reference for the research and development of the workshop scheduling problem.关键词:车间调度;生产计划;调度特点;调度性能Key words: workshop scheduling;production planning;scheduling characteristics;scheduling performance中图分类号:TH164; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ;文献标识码:A; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; ; 文章编号:1006-4311(2020)11-0289-020; 引言近几十年来,随着科学技术的不断发展和进步,生产过程发生了翻天覆地的变化,工业生产正向着技术更加先进、规模更加庞大、复杂程度更高的方向发展,对于企业的管理和生产过程的监控不断提高。
902696_维护时长依赖于机器负载和机器空闲的单机调度问题
收稿日期:2016-01-12;修订日期:2016-02-15作者简介:王宇盛(1991-),男,江西新余人,硕士研究生,主要研究方向:调度理论与算法基金项目:国家自然科学基金项目(71201022);江西省自然科学基金项目(20122BAB201010)。
∗通讯作者:刘爱华(1982-),女,山东潍坊人,讲师,主要研究方向:调度理论与算法。
第34卷 第1期2016年2月江 西 科 学JIANGXI SCIENCEVol.34No.1Feb.2016 doi :10.13990/j.issn1001-3679.2016.01.002维护时长依赖于机器负载和机器空闲的单机调度问题王宇盛,刘爱华∗,姜俊坡(东华理工大学理学院,330013,南昌)摘要:考虑一个含有单次维护的单机调度问题,其中工件不可中断,维护的开始时刻给定但维护时长是维护之前机器负载和机器空闲时长的线性增函数,目标是最小化时间表长。
分3种情况进行讨论,对前2种情况分别给出了一个多项式时间最优算法,对最后一种情况分析了LPT 算法的性能并给出了通过经典背包问题的任意一个FPTAS 来获得该情况的一个FPTAS 的方法。
关键词:维护;机器调度;负载;时间表长;算法分析中图分类号:O232 文献标识码:A 文章编号:1001-3679(2016)01-005-05Single⁃machine Scheduling Problem with a Machine Workload Dependent and Machine Idle Time Dependent Maintenance DurationWANG Yusheng,LIU Aihua ∗,JIANG Junpo(School of Science,East China University of Technology,330013,Nanchang,PRC)Abstract :Consider a single⁃machine scheduling problem with a maintenance where jobs are non⁃pre⁃emptive,the start time of the maintenance is given but the duration of the maintenance is an increas⁃ing function of the machine workload and the machine idle time before the maintenance,the objectiveis to minimize the makespan.The problem is divided into three cases for discussion.For each of the first two cases,a polynomial time optimal algorithm is proposed.For the last case,the performance of the LPT algorithm is analyzed and the method to obtain an FPTAS for the case from any FPTAS forthe classical knapsack problem is provided.Key words :maintenance;machine scheduling;workload;makespan;algorithm analysis0 引言调度问题是一类重要的组合优化问题,有着广泛的实际应用背景。
维护时长依赖于机器负载和机器空闲的单机调度问题
维护时长依赖于机器负载和机器空闲的单机调度问题王宇盛;刘爱华;姜俊坡【摘要】Consider a single-machine scheduling problem with a maintenance where jobs are non-pre-emptive,the start time of the maintenance is given but the duration of the maintenance is an increas-ing function of the machine workload and the machine idle time before the maintenance,the objective is to minimize the makespan. The problem is divided into three cases for discussion. For each of the first two cases,a polynomial time optimal algorithm is proposed. For the last case,the performance of the LPT algorithm is analyzed and the method to obtain an FPTAS for the case from any FPTAS for the classical knapsack problem is provided.%考虑一个含有单次维护的单机调度问题,其中工件不可中断,维护的开始时刻给定但维护时长是维护之前机器负载和机器空闲时长的线性增函数,目标是最小化时间表长。
分3种情况进行讨论,对前2种情况分别给出了一个多项式时间最优算法,对最后一种情况分析了LPT算法的性能并给出了通过经典背包问题的任意一个FPTAS来获得该情况的一个FPTAS的方法。
具有多个不可用时间段的单机供应链排序问题
具有多个不可用时间段的单机供应链排序问题范静;张峰【摘要】在单机供应链排序问题中,机器会有多个长度确定的不可用时间段,它仅可以在可用时间段内加工工件,且每个可用时间段的长度不大于给定的常数.多个完工工件可组成一批由一个容量无限制的运输工具发送给客户.问题的目标是如何安排工件的加工、发送以及不可用时间段,以使总发送时间与总发送费用之和达到最小.对于工件加工可恢复的情况,可在多项式时间O(n2)内得到最优序.对于工件加工不可恢复的情况,证明了问题是强NP-难的,并提出了2-近似算法.【期刊名称】《运筹学学报》【年(卷),期】2015(019)003【总页数】7页(P116-122)【关键词】不可用时间段;供应链排序;强NP-难;近似算法【作者】范静;张峰【作者单位】上海第二工业大学文理学部,上海201209;上海第二工业大学文理学部,上海201209【正文语种】中文【中图分类】O2242010数学分类号90B35Chinese Library Classifcation O2242010 Mathematics Subject Classifcation 90B35供应链排序是把生产、分批和发送三者集成在一起,研究集成优化的模型及其算法[1].实际上,供应链排序就是在排序决策范畴内研究供应链管理,是排序论在供应链管理中的应用.1980年Potts[2]发表了供应链排序的第一篇论文.Cheng等[3-6]从20世纪90年代开始研究供应链排序.2003年Hall和Potts在文献[7]中系统地提出了供应链排序模型.之后,供应链排序问题的研究就越来越多了.本文研究的是两阶段供应链排序问题,即工件在制造商的机器上加工,完工工件需要由运输工具如卡车等从制造商的工厂出发运输给客户.对于最小化总发送时间与总发送费用之和的目标,当运输工具数量、容量无限制时,Hall和Potts[7]给出了时间复杂性为O(n2)的最优动态规划算法;当运输工具容量有限制时,Chen和Vairaktarakis[8]给出了多项式时间为O(nlogn+nc)的最优动态规划算法,其中c表示运输工具的容量.当运输工具数量为1、容量无限制时,最优解可由文献[9]中的动态规划算法求得;当容量受限制时,问题也是多项式时间可解的[10].当运输工具数量有限、容量也有限时,问题的最优解可由文献[11]提出的动态规划算法求得.在大多数供应链排序问题的研究中,通常假设机器是始终可用的.但在实际的工作生产中,由于故障或检修等原因,机器会出现多个不可用时间段.当机器的不可用时间段是周期性出现时,Chen[12]研究了目标为最小化总完工时间和的问题,给出了一个启发式算法及分支定界算法;Fan和Lu[13]研究了每个可用时间段内完工工件在可用时间段结束前发送的情形,目标为最小化总发送时间与总发送费用之和,他们证明了问题是强NP-难的,并提出了2-近似算法与分支定界算法.当机器的不可用时间段也需要确定时,Qi等[14]证明了目标为最小化总完工时间的问题是强NP-难的,并给出了三个近似算法与分支定界算法;Akturk等[15-16]以工具变更为背景也研究了该问题,其中文献 [16]证明了基于工件按加工时间的非降序(SPT序)加工所得的算法性能比为2;Qi[17]将这个性能比进行了改进.迄今为止,还没有文献研究不可用时间段也需要确定的机器环境下的供应链排序问题.本文研究的问题描述如下:给定一台机器及一个含n个工件的工件集J={J1,J2,···, Jn}.这台机器一次最多只能加工一个工件,但在不可用时间段内不能加工工件.机器的每个不可用时间段的长度为t,每个可用时间段长度不超过T.每个工件Jj的加工时间为pj(j=1,2,···,n),且在零时刻即可开始加工.由于机器存在不可用时间段,工件的加工有两种情形:可恢复与不可恢复.工件的加工可恢复是指:若工件的加工被机器的不可用时间段中断,则在机器重新可用后工件的加工可继续进行;工件的加工不可恢复是指:加工被中断的工件在机器重新可用后必须重新开始加工.多个已完工工件可组成一批由一个无容量限制的运输工具发送给一个客户.第j批工件的发送时间定义为第j批工件全部完工后由运输工具发送的时间,记为Dj.每次发送的费用为α,总发送费用记为TC.如何安排工件的加工、发送以及不可用时间段,使总发送时间与总发送费用之和最小化是问题的目标.因此,我们研究的问题有两个,采用文献[18]中的五参数法可将两个问题分别表示为其中hk表示加工机器有多个不可用时间段,r−a 表示工件的加工可恢复,nr−a表示工件的加工不可恢复,V(1,∞)表示运输工具只有一个,其容量无限制.值得注意的是,如果工件的加工是不可恢复的,那么由于机器的可用时间长度至多为T,问题中的任意工件Jj(j=1,2,···,n),其加工时间pj应满足pj≤T;否则,实例无可行序. 对于问题P1:1,hk|r−a|V(1,∞)|1|ΣDj+TC,即工件加工可恢复的情形,我们先分析最优序的性质,然后寻求问题的最优序.引理2.1 若问题P1:1,hk|r−a|V(1,∞)|1|ΣDj+TC存在最优序,则一定存在满足以下条件的最优序:(1)机器的每个不可用时间段的开始时间为kT+(k−1)t(k=1,2,···),而且在所有工件完工之前,加工机器除不可用时间段之外无空闲;(2)工件按加工时间的非降序(SPT序)进行加工;(3)运输工具的发送时间为该批工件中最后加工工件的完工时间;(4)若工件Ji在工件Jj之前完工,则工件Ji的发送时间不晚于工件Jj.利用文献[17]及[7]中类似的方法,容易证明引理的正确性.由引理2.1的(2)可知,在问题P1的最优序中工件按SPT序在机器上加工.因此,我们先将工件按SPT序重新编号,使得p1≤p2≤···≤pn,然后运用以下动态规划算法确定完工工件何时发送.动态规划算法DP定义函数Z(j):表示加工并发送前j个工件{J1,J2,···,Jj}得到的最小目标函数值.初始条件:Z(0)=0.递推公式:Z(j)=min{Z(j−h)+h·Cj+α|h=1,2,···,j},其中最优值:Z(n).定理2.1 对于问题P1:1,hk|r−a|V(1,∞)|1|ΣDj+TC,将机器的每个不可用时间段的开始时间安排为kT+(k−1)t(k=1,2,···),将工件按加工时间的非降序(SPT序)加工,并按动态规划算法DP得到的排序发送,即为最优序.同时,得到最优序所需的时间为O(n2).证明机器的每个不可用时间段的开始时间安排为kT+(k−1)t(k=1,2,···),符合引理2.1的(1)对问题P1的最优序中机器的不可用时间段的安排;且工件按SPT序加工也符合引理2.1的(2)对问题P1的最优序中工件加工顺序的要求.进一步地,动态规划算法DP中函数F(n)的值,是经过比较所有工件的所有可能发送排序所对应的目标函数值后得到的最小值,即动态规划算法DP得到的工件发送排序能够使问题P1的目标函数值达到最小.因此,安排机器的每个不可用时间段的开始时间为kT+(k−1)t(k=1,2,···),工件按加工时间的非降序(SPT序)加工,并按动态规划算法DP 得到的排序发送,即为问题P1的最优序.将工件按加工时间进行排序需要时间O(nlogn);动态规划算法DP中包含n个状态,每个状态需要时间O(n)计算函数.因此,得到最优序所需时间为O(n2).首先,我们需要分析工件加工不可恢复时问题 P2的困难性.于是,我们得到如下定理. 定理3.1 问题P2:是强NP-难的.证明当α=0时,问题P2:相当于1,hk|nr− a|ΣCj,而后者是强NP-难的[14].因此,问题P2:也是强NP-难的.接下来,我们讨论问题P2最优序所具备的一些性质.引理3.1 若问题P2:1,hk|nr−a|V(1,∞)|1|ΣDj+TC存在最优序,则一定存在满足以下条件的最优序:(1)在所有工件完工之前,加工机器除不可用时间段之外无空闲;(2)在每个可用时间段内,工件按加工时间的非降序(SPT序)进行加工;(3)运输工具的发送时间为该批工件中最后加工工件的完工时间;(4)若工件Ji在工件Jj之前完工,则工件Ji的发送时间不晚于工件Jj.显然,引理2.1可推出引理3.1.定理3.1说明除非P=NP,我们不可能在多项式时间内找到问题P2的最优解.因此,我们提出一个近似算法来求解问题P2.为方便起见,我们将工件按加工时间的非降序(SPT序)重新编号,使得p1≤p2≤···≤pn.算法H步骤1 从零时刻开始,在机器上按照工件加工时间的非降序(SPT序)尽早加工工件,在保证可用时间段尽量长以及工件加工不被中断的前提下,尽量晚地安排不可用时间段;步骤2 利用动态规划算法DP求解工件加工可恢复情形,根据所得每次发送工件的编号及个数安排发送步骤1中完工工件.下面,我们来分析算法H的性能比.定理3.2 对于问题P2:算法H是2-近似算法.证明用π∗、σ∗及σ分别表示问题P1的最优序、问题P2的最优序及由算法H得到的问题P2的排序.用Z(π∗)、Z(σ∗)及Z(σ)分别表示问题P1的最优值、问题P2的最优值及排序σ得到的目标函数值.一方面,由于σ∗也是问题P1的可行序,于是另一方面,根据问题P1的最优序π∗,我们构造一个新的排序:工件的加工排序、每批发送的完工工件与π∗相同,将π∗中每个中断工件加工的不可用时间段,安排在这些中断工件的开工时间,并在这些中断工件的完工时间增加一个不可用时间段.显然,是问题P2的一个可行序.图1、图2与图3分别为工件Jj、Jj+1及Jj+2在问题P1的最优序π∗、算法H求解问题P2的所得序σ以及问题P2的可行序中加工情况的示例.由的构造过程可以看出,σ中每个工件的完工时间都不超过中相应工件的完工时间.于是,σ中每个工件的发送时间都不超过中相应工件的发送时间.又因为σ中的总发送次数与中的总发送次数相等,所以,其中Z()表示由排序得到的目标函数值.由于π∗、σ及中每批发送的工件均相同,我们用K表示总发送次数,用lj表示每批中的工件数量.用Dj(π∗)、Dj( )分别表示π∗及b σ中第j批工件的发送时间.于是,问题P1的最优值、问题P2的可行序σ对应的目标函数值分别为及用xj表示π∗的第j批中加工被中断的工件数量.我们比较π∗与后,得到这两个排序中每批的发送时间存在以下关系:又由于π∗中的第j批中有xj个加工被中断的工件,所以,π∗中的第j批的发送时间满足:(x1+x2+···+xj)t≤Dj(π∗).于是,结合不等式(3.1)与(3.2),我们可以得出本文研究了带多个不可用时间段的单机供应链排序问题,目标为最小化总发送时间与总发送费用之和.工件由机器在多个可用时间段内加工,每个可用时间段长度不超过T.完工工件可组成一批由一个无容量限制的运输工具发送给客户.如果工件在加工过程中被中断后可继续加工,我们在分析其最优序性质的基础上,得到问题的最优序:在每个长度为T的可用时间段之后安排一个不可用时间段;工件按加工时间的非降序加工,按多项式时间的动态规划算法所得排序发送.如果工件在加工过程中被中断后必须重新加工,我们证明此问题是强NP-难的,并进一步提出了一个2-近似算法.【相关文献】[1]陈荣军,唐国春.装配系统的供应链排序问题[J].数学的实践与认识,2011,41:50-56.[2]Potts C N.Analysis of a heuristic for one machine sequencing with release dates and delivery times[J].Operations Research,1980,28:1436-1441.[3]Cheng T C E,Kahlbacher H G.Scheduling with delivery and earliness penalties[J].Asia Pacifc Journal of Operational Research,1993,10:145-152.[4]Cheng T C E,Gordon V S.Batch delivery scheduling on a single machine[J].Journal of the Operational Research Society,1994,45:1211-1215.[5]Cheng T C E,Gordon V S,Kovalyov M Y.Single machine scheduling with batch deliveries[J]. European Journal of Operational Research,1996,94:277-283.[6]Cheng T C E,Kovalyov M Y,Lin B M T.Single machine scheduling to minimize batch delivery and job earliness penalties[J].SIAM Journal on Optimization,1997,7:547-559. [7]Hall N G,Potts C N.Supply chain scheduling:Batching and delivery[J].Operations Research, 2003,51:566-584.[8]Chen Z L,Vairaktarakis G L.Integrated scheduling of production and distribution operations [J].Management Science,2005,51:614-628.[9]Hall N G,Potts C N.The coordination of scheduling and batch deliveries[J].Annals of Operations Research,2005,135:41-64.[10]Li K P,Ganesan V K,Sivakumar A I.Synchronized scheduling of assembly and multi-destination air-transportation in a consumer electronics supply chain[J].International Journal of Production Research,2005,43:2671-2685.[11]Lee C Y,Chen Z L.Machine scheduling with transportation considerations[J].Journal of Scheduling,2001,4:3-24.[12]Chen W.Minimizing total fow time in the single-machine scheduling problem with periodic maintenance[J].Journal of Operations Research Society,2006,57:410-415.[13]Fan J,Lu X W.Supply chain scheduling problem in the hospital with periodic working time on a single machine[J].Journal of Combinatorial Optimization,Doi:10.1007/s10878-015-9857-y. [14]Qi X,Chen T,Tu F.Scheduling the maintenance on a singlemachine[J].Journal of Operations Research Society,1999,50:1071-1078.[15]Akturk M,Ghosh J,Gunes E.Scheduling with tool changes to minimize total completion time: A study of heuristics and their performance[J].Naval Research Logistics,2003,50:15-30.[16]Akturk M,Ghosh J,Gunes E.Scheduling with tool changes to minimize total completion time: Basic results and SPT performance[J].European Journal of Operational Research,2004,157: 784-790.[17]Qi X.A note on worst-case performance of heuristics for maintenance scheduling problems[J]. Discrete Applied Mathematics,2007,155:416-422.[18]Chen Z L.Integrated production and outbound distribution scheduling:review and extensions [J].Operations Research,2010,58:130-148.。
锁定初始调度的紧急工作单机重调度问题
锁定初始调度的紧急工作单机重调度问题郭艳东;黄敏;王庆【摘要】对单机环境下紧急工作的重调度问题进行了研究.初始调度中工作带有到达时间,目标为最小化初始工作的等待时间和;重调度目标是在初始调度锁定的情况下,将紧急工作插入初始调度,最小化紧急工作的最长等待时间.建立了RRLS(rescheduling rush jobs with loads locked on single machine)问题模型,然后证明了RRLS问题是NP难问题.根据问题性质和特点提出了有效的启发式算法,并给出了算法的时间复杂度.通过实例证明了算法的最优性条件.【期刊名称】《东北大学学报(自然科学版)》【年(卷),期】2013(034)005【总页数】4页(P628-631)【关键词】重调度问题;NP难;紧急工作;启发式算法;等待时间【作者】郭艳东;黄敏;王庆【作者单位】东北大学流程工业综合自动化国家重点实验室,辽宁沈阳110819;东北大学流程工业综合自动化国家重点实验室,辽宁沈阳110819;东北大学流程工业综合自动化国家重点实验室,辽宁沈阳110819【正文语种】中文【中图分类】TP273经典单机调度问题当前已有大量研究成果,然而调度问题之所以成为理论界和实践界长期关注的热点问题,是因为现实中不断涌现出生产实际的多样化、多元化的调度问题.近些年重调度问题已经引起广泛关注,所谓重调度就是指在已经制定好的初始调度执行前,由于实际出现各种复杂情况,初始的调度不能适应实际状况,在条件允许的情况下对初始调度进行调整,从而获得适应实际的最优调度.在现实中,调度人员往往面临这样的实际问题:已经制定完一个调度计划(初始调度),这时到来一组紧急工作需要处理(紧急工作利用现有的资源即可满足生产).虽然初始调度没有正式开始执行,但相应的前期准备工作已在调度执行前相继展开或就绪,例如:原材料的采购、人员安排、设备准备等前期准备工作在调度执行前都已经相继就位,而且已经按照初始调度制定了准确的交货期.因此从管理、库存、成本等角度考虑,需要在保证初始调度方案按原计划执行(称为调度锁定)的条件下,最小化紧急工作的最长等待时间.目前对于新工作或者紧急工作的重调度问题已有一些研究.文献[1]首先研究了一类单机重调度问题.文献[2]的研究引起了本领域的很大重视,分析研究了在初始工作的最大延迟数、延迟数和、最长延迟时间、延迟时间和受限条件下,分别考虑了最小化完工时间和、最小化最大完工时间、打扰花费组合最优化为目标函数的多种单机重调度问题.文献[3]研究了单机环境下假设初始调度是目标为最小化最长等待时间的最优调度,在约束条件和文献[2]相同的条件下,初始工作带有到达时间的问题.文献[4]的研究问题和文献[3]的类似,但考虑了初始工作和新工作都随时间恶化的情况.文献[5]研究了单机环境下在初始工作的最大延迟数、延迟数和、最长延迟时间、延迟时间和受限条件下,新工作依赖族,不同族之间工作衔接需要装设时间,最小化最大完工时间和最小化初始工作的最大延迟数的帕累托最优点的问题.文献[6]研究了带不可用时间段的单机调度问题的启发式算法.但现有文献提出的算法都无法解决本文提出的这一类生产实际问题.因此本文针对上述实际生产调度调整需要抽象出初始调度锁定情况下最小化紧急工作最长等待时间的单机重调度(RRLS)问题,其特点描述如下:初始工作带有不同的到达时间;初始调度目标是最小化等待时间和;当初始工作已经调度完毕并已锁定,但未开始执行前,出现一组紧急工作需要处理.不失一般性,如果已经有一部分初始工作已经处理,则把剩余未处理的工作看成是初始工作.紧急工作到达时间为0,工作类型和初始工作同族,重调度的优化目标是最小化紧急工作的最长等待时间.1 RRLS 问题的描述考虑一个周期性的调度问题,有一组到达时间为ri,数量为nO,初始工作集,已经制定了目标为最小化等待时间和的调度υ∈(π*,π),并锁定该初始调度,这时有一组数量为nR的紧急工作集,需要在本周期进行调度执行,nO+nR=n,JR∪JO=J 重调度的目标为最小化紧急工作的最长等待时间.本文所用符号定义如下:上角标表示工件类型,即O 表示初始工作,R 表示紧急工作,没有标注表示包含所有初始工作和紧急工作;()内符号表示调度方案类型,即υ 表示初始调度,σ 表示重调度;例如:表示重调度中紧急工作的最大等待时间表示初始工作i 和i +1 之间的机器空闲(υ)表示工作j∈J 在初始调度中的开始时间紧急工作最迟的完成时间.RRLS 问题满足下列假设条件:①紧急工作与初始工作属工艺同族,装设时间为0,紧急工作的到达时间为0;②紧急工作等待处理的时间无限制;③初始调度的机器空闲时间至少大于等于最小紧急工作处理时间;④至少有一个初始工作的到达时间为0.RRLS 问题可以用三域表示法[7]描述:RRLS 问题优化模型:约束(1)保证锁定初始调度,约束(2)说明所有工作开始处理的时间不小于就绪时间,约束(3)说明工作一旦开始,就不可被打断.2 RRLS 问题复杂度分析RRLS 问题的优化目标约束条件属于典型的组合优化问题.下面证明RRLS 问题为NP 难问题.引理1问题为NP 难问题.证明问题的证明可由一个已知的NP 难问题——划分问题归约得到.划分问题:给定正整数是否存在两个不相交的子集S1和S2,对于i=1,2 满足下面构造一个RRLS 问题实例如图1 所示:n=7t,nO=6t,nR=t;对于对于C=6t +2b,Cmax(σ)≤C.图1 RRLS 归约为划分问题例证Fig1 Illustration of LIWS to partition通过实例得到初始最优调度π*,即所有的初始工作都在到达时间开始处理,而且在初始工作完工前出现两个机器空闲,[3t,3t +b]和[6t +b,∞).重调度约束条件为:所以所有初始工作顺序和开始时间不变.满足如果划分问题有解,则紧急工作可以划分成两个不相交的子集S1和S2,对于i=1,2 满足,也就是说两个紧急工作的子集S1在区间[3t,3t+b]内处理,S2在区间[6t+b,6t+2b]上处理,或者S1在区间[6t+b,6t +2b]内处理,S2在区间[3t,3t +b]内处理,都满足Cmax(σ)=6t +2b.所以问题有最优解.如果重调度问题有解,初始工作都在到达时间开始处理,得到初始最优调度π*,并满足约束条件在初始工作完工前出现两个机器空闲:[3t,3t+b]和[6t +b,∞).而Cmax(σ)=6t+2b,在6t+2b 之前的机器空闲时间只有2 个,分别是[3t,3t +b]和[6t +b,6t +2b],总空闲时间为即紧急工作分成两个集合S1和S2,每个集合的处理时间为b,分别在两个机器空闲上处理.即得划分问题有解. 引理2问题为NP 难问题.证明因为紧急工作到达时间为0 所以最小化是规则目标(regular measures)[8],所以所以问题可转化为问题.根据引理1 即可得证.定理1问题为NP 难问题.证明因为υ ∈(π*,π),所以约束条件的一种特殊情况,由引理2知问题为NP 难问题,显然问题一定为NP 难问题.性质1 根据初始问题的近似最优或最优调度,在紧急工作调度前,机器上最少有1 个空闲时间段,最多有nO个空闲时间段.根据假设知至少有一个工作的到达时间为0,由初始近似最优或最优调度知,如果初始问题的工作开始时间都不小于它的准备时间,即si(υ)≥ri,则初始调度中没有机器空闲,机器空闲只出现在最后一个初始问题工作完成后,且足够大,足以处理所有紧急工作.如果初始问题的工作只有一个工作在0 时刻开始处理,其余nO-1 个初始工作的机器可用时间都小于它的准备时间即则每个初始工作后都存在机器空闲时间,包括所有初始工作都处理完成之后的机器空闲时间∞,所以针对紧急工作调度前的机器空闲有nO个.3 模型求解算法目前,关于问题已有大量研究,假设根据现有算法[9-10]已得到初始工作集合的最优调度,本文重点研究RRLS 问题的求解算法:插入空闲算法.3.1 插入空闲(Ⅱ,insert idle)算法根据RRLS 问题的性质设计插入空闲算法的思路是:针对初始调度中的机器空闲时间,按照紧急工作SPT 的顺序,将返工工件插入机器空闲时间.Ⅱ算法具体过程如下:1)计算初始调度处理结束前机器的空闲时间Ii,设有t 个空闲时间,i∈{1,…,t}.2)将紧急工作按照处理时间的非降序排列,工作j[j]中,[j]表示第j 个位置的工作号.3)根据性质1 按下列步骤插入紧急工作.第1 步定义i=1,m=1;第2 步如果i≤t 并且m≤nR则执行第3步,如果i >t,则将没调度的紧急工作jm,…,jnR追加到初始调度最后一个工作之后处理,如果m >nR,则调度结束;第3 步如果,则m 不变,i=i+1,返回到第2 步;如果则将j[j],…,j[k]插入Ii,m=m +k,i=i +1,返回到第2 步.Ⅱ算法时间复杂度为:O(nRlg(nR))+O(nN)+ O(nO)+ O(lg(nN)+ nO)=O(nR×lg(nR))+n).3.2 Ⅱ算法最优性条件定理2Ⅱ算法能得到问题的最优调度σ*.证明根据性质1 可知在调度紧急工作前初始最优调度π*有如下3 种情况.第1 种情况:所有紧急工作只能依次追加到初始工作的最后一个工作之后进行调度,即初始调度只有 1 个机器空闲时间.,则最小.第2 种情况:所有紧急工作都插入到初始工作完工前的机器空闲之中调度,算法从第一个空闲开始依次调度紧急工作插入空闲时段中,因为所以最小,即最小.第3 种情况:部分紧急工作插入到初始工作完工前的机器空闲之中调度,证明同第2 种情况;剩余工作则依次追加到最后,证明同第1 种情况.3.3 Ⅱ算法实例已知初始调度=38 +14(l -3),l=3,…,(k-m+1)+15,k=m,…,nO.有nR个紧急工作如图2 所示,根据Ⅱ算法得到的该实例的最优解,即将紧急工件插入第一个空闲时间,插入第二个空闲时间,剩余紧急工作追加到初始调度之后.图2 Ⅱ算法实例Fig2 Example of Ⅱalgorithm4 结论1)本文研究了初始调度锁定情况下,因为处理紧急工作而引起的复杂重调度问题,描述了重调度问题模型.证明了RRLS 问题是NP 难问题.2)根据RRLS 问题性质提出了一种启发式算法,并证明了算法最优性条件,为解决RRLS 问题提供了理论依据和实际参考.3)生产实际中,在并行机、流水车间、加工车间等很多环境下都存在紧急工作到达问题,而且具体问题的目标函数和约束条件也各不相同,因此未来有大量的重调度问题值得进一步深入地研究.参考文献:【相关文献】[1]Unal A T,Uzsoy R,Kiran A S.Rescheduling on a single machine with part-type depend setup times and deadlines[J].Annals of Operations Research,1997,70:93 -113.[2]Hall N G,Potts C N.Rescheduling for new orders [J].Operations Research,2004,52(3):440 -453.[3]Yuan J,Mu Y.Rescheduling with release dates to minimize makespan under a limit on the maximum sequence disruption[J].European Journal of Operational Research,2007,182(2):936 -944.[4]Zhao C,Tang H.Rescheduling problems with deteriorating jobs under disruptions [J].Applied Mathematical Modeling,2010,34(1):238 -243.[5]Hoogeveen H,Lenté C,T'kindt V.Rescheduling for new orders on a single machine with setup times[J].European Journal of Operational Research,2012,223(1):40 -46.[6]杨善林,马英,鲁付俊.带不可用时间段的单机调度问题的启发式算法[J].系统工程学报,2011,26(4):500 -506.(Yang Shan-lin,Ma Ying,Lu Fu-jun.Three stage algorithm for the scheduling problem of parallel reheating furnaces[J].Journal of Systems Engineering,2011,26(4):500 -506.)[7]Graham R L,Lawler E L,Lenstra J K,et al.Optimization and approximation in deterministic machine scheduling:a survey[J].Annals of Discrete Mathematics,1979,5,287 -326.[8]Rinnooy A H G.Machine scheduling problems classification,complexity andcomputations[J].Martinus Nijhoff,The Hage,1976:10 -16.[9]Chu C.Efficient heuristics to minimize total flow time with release dates[J].Operations Research Letters,1992,12(5):321 -330.[10]Chu C.A branch-and-bound algorithm to minimize total flow time with unequal release dates[J].Naval Research Logistics,1992,39(6):859 -87.。
带不可用时间段的单机调度问题的启发式算法
带不可用时间段的单机调度问题的启发式算法杨善林;马英;鲁付俊【期刊名称】《系统工程学报》【年(卷),期】2011(026)004【摘要】This paper considers a semiresumable case of single machine makespan scheduling with an unavailability interval. Firstly, a heuristic is proposed, then its relative worst-case error bound is shown. Furthermore, an example is provided to show the tightness of this bound. Based on this, it is easy to deduce the error bound of this algorithm to the corresponding nonresumable case, which is lower than that of the existing algorithm for this problem. Comparisons between this heuristic and other algorithms are made from different aspects, including an experiment using random-generated data sets to evaluate its relative error. The experiment results show that this heuristic is quite effective.%研究了机器带有一个不可用时间段的部分可续型单机最大完工时间调度问题,提出了一种启发式算法,证明了其相对误差界,并举例说明该界是紧的,而且据此推出了该算法对相应不可续问题的相对误差界,此界低于该问题现有算法的界.将此算法与其它算法进行了多方面的比较,包括利用随机数据进行实验以评估其相对误差,结果表明此算法是一种非常高效的启发式算法.【总页数】7页(P500-506)【作者】杨善林;马英;鲁付俊【作者单位】合肥工业大学管理学院,安徽合肥230009;教育部过程优化与智能决策重点实验室,安徽合肥230009;合肥工业大学管理学院,安徽合肥230009;教育部过程优化与智能决策重点实验室,安徽合肥230009;合肥工业大学管理学院,安徽合肥230009;奇瑞汽车股份有限公司,安徽芜湖241009【正文语种】中文【中图分类】TP273【相关文献】1.机器在一段时间不可用条件下的单机调度问题 [J], 马英;杨善林;储诚斌2.带有不可用区间、工件可拒绝的单机调度问题 [J], 谢谢;李晓丽;孔祥玉3.带有不可用区间、工件可拒绝的单机生产与运输协调调度问题 [J], 谢谢;吴星瑶;李晓丽;孔祥玉4.具有多个不可用时间段的单机供应链排序问题 [J], 范静;张峰5.带不可用时间段和恶化加工时间的单机调度 [J], 马英;左春荣;杨善林因版权原因,仅展示原文概要,查看原文内容请购买。
带有不可用区间、工件可拒绝的单机生产与运输协调调度问题
带有不可用区间、工件可拒绝的单机生产与运输协调调度问题谢谢;吴星瑶;李晓丽;孔祥玉
【期刊名称】《沈阳大学学报》
【年(卷),期】2015(027)003
【摘要】从生产实际提炼出一类单机生产与运输协调调度问题,即当工件在机器加工结束后由一辆容量受限的车运到配送中心.与经典调度问题不同的是,加工机器带有不可用区间,且可以拒绝加工某些工件,但拒绝产生惩罚.目标函数是最后一批完工工件到达配送中心的时间与拒绝工件的惩罚和.由于该问题是NP-难的,提出了一个多项式时间内可解的启发式算法,并证明该算法的最坏性能比为6.
【总页数】4页(P222-225)
【作者】谢谢;吴星瑶;李晓丽;孔祥玉
【作者单位】沈阳大学装备制造综合自动化重点实验室,辽宁沈阳 110044;浙江大学计算机科学与技术学院,浙江杭州310058;吉林省双辽市职业高级中学,吉林双辽136400;沈阳大学装备制造综合自动化重点实验室,辽宁沈阳 110044
【正文语种】中文
【中图分类】TP30
【相关文献】
1.带有不可用区间、工件可拒绝的单机调度问题 [J], 谢谢;李晓丽;孔祥玉
2.带有不可用区间的二机流水作业生产与运输协调调度问题 [J], 谢谢;李晓丽;孔祥玉
3.二机流水作业带不可用区间、工件可拒绝的调度问题 [J], 谢谢;孔祥玉;郑勇跃
4.工件带有温降的生产与前运输协调调度问题 [J], 关静;唐立新
5.具有不可用区间且工件可拒绝下的单机重新排序问题的近似方案 [J], 金苗苗;吴蒙洁;罗文昌
因版权原因,仅展示原文概要,查看原文内容请购买。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
!!在实际的工业生产中#机器在加工过程中因 发生故障或进行维护与保养#导致机器在某段时 间不可用&根据被中断工件在机器重新可用之后 的加工情况#目前定义了可恢复(不可恢复和部分 可恢复%种模式&
文献)**定义了可恢复模式和不可恢复模式# 若被中断工件在机器重新可用之后可继续加工#
则被称为可恢复模式$反之#若被中断工件必须完 全重新进行加工#则称之为不可恢复模式&部分 可恢复模式的定义由文献)!*提出&在部分可恢 复模式中#被中断工件已加工部分在机器重新可 用之后必须部分进行重新加工&本文用参数& 代 表机器可重新使用后工件已加工部分需要进行重 新加工部分的系数!",&,*"&部分可恢复模式
下面证明 A2; 规则的误差上限为&*!# 首先把工件按 A2; 规则重新进行排列%工件 号随之改变’#
定理!把 A2; 规则用于**2K,)*=.M]问题所 得到的相对误差界限为
(&*!! 若H* $? 且H! ,?
QA2; % &*%! 否则 !!证明!考虑以下%种情形$
%*’当H*$? 时#若H!,?!并且H!FH%F &FH*$?!则=A2;)=" ,&?!=" &H*F&FH* $!?!于是有 QA2;%&*!"若H!,?!并且H!FH% F&FH*,?!则 =A2; dH*F & FH*FL)?F &?!=" dH*F&FH*FL)?F&+?)%H!F&F H*’,!因 此 =A2; )=" d&%H! F & FH*’!=" & H*F&FH*$!%H!F & FH*’!于是 QA2;%&*!" 若H!$?!并且H%F&FH*$?!则 =A2;)=" , &?!=" &H*F&FH*$%?!于是有QA2;%&*%"若 H!$?!并且H%F&FH*,?!则 =A2; dH*F & F H* FL )? F&?!=" dH* F & FH* FL ) ?F&+?)%H% F & FH*’,#因 此!=A2; )=" d &%H%F&FH*’!=" &H*F&FH*$%%H%F&F H*’!于是有QA2;%&*%#
!第%"卷 第$期 !!""#年$月
合 肥 工 业 大 学 学 报 !自 然 科 学 版 "
‘:5L’/A:? [B?BG5’GCBL6G;a :?;B&[’:A:^a
CH>4%"’H4$! /OQ4!""#!
机器在一段时间不可用条件下的单机调度问题
马!英*#!杨善林*#!储诚斌*#!
!*4合肥工业大学 管理学院#安徽 合肥!!%"""+$!4特鲁瓦工业大学 工业系统优化实验室#法国 特鲁瓦!*""*"""
A#*>HQ*$%) 应用基于成对交换技术的邻域搜索 方法来改进当前解%搜索成对交换所有可能的移
动"为提高搜索的速度"每当改进一次解时"就把
此解设为当前解"并从这个改进解的移动开始重
新进行 邻 域 搜 索% 当 在 邻 域 中 不 再 有 改 进 出 现
在上述证明里"若把& 换成*"则可证得’对 于*"3*&*K,)&=.M]问题"A2; 算法的误差上限为 *&!%这个界限比文献(*)证明的*&%要大%并且 上例中可同样把& 换为*"则同样可表明*&!这 个界限是紧的%这个例子同时也是文献(*)证明 的*&%上限的一个反例% *8%! 调度问题*!3*"2K,)"=.M] 的启发式算法
=" 为最优调度长度"=[ 为启发式算法 . 所 得到的调度长度"Q[ d%=[ )=" ’*=" 代表启发 式算法 . 的相对误差#由此可得!=A2;代表 A2; %AHJQIXN2=HPIXX<JQ;<.I!简称为 A2;’规则所 得到的 调 度 长 度!QA2; d %=A2; )=" ’*=" 代 表 A2; 规则的误差界限#
*!调度问题 *!3*"2K,)"=.M]
*8*!相关文献回顾 显而易见!任何序列都是*!3**K,)*=.M]调度
问题的最优解#若工件实际加工时间是其开始时 间的线性函数!则可用",*整数规划技术进行求 解+%,#
对于*!3***K,)*=.M]!文献+*,阐明了此问题 的 %D,难性#与此同时!还证明了 A2; 规则%即 把工件按 A2; 规则进行排列!在 ? 之前排列尽 可能多的工件!而把其余工件在L 后以任意顺序 进行 排 列 ’!对 于 该 问 题 的 相 对 误 差 界 限 为 Q62;,**%!并且该界限是紧的#
另 外!产 生 的 目 标 函 数 是 最 优 值 的 至 多 ’%’&*’倍的多项式算法!称为’,近似算法!’为最 坏情况比率上限#显然!Q[d’)*#
为更简便地表述问题!以下各节使用标准的 &*+*- 标记!本文所用 的 标 记 与 文 献+*,中 所 述 类 似!所不同的是增加了一列&%+(2!3U)代表机器 不可用时间段的数目"&%d2 代表机器上没有不 可用时间段存在!即机器一直可用"&%d3U 代表机 器上有U 个不可用时间段#
&DG689A6’;1IXI.<=IXO.MS>IPMXIHWX<JQ>I.MP1<JIXP1ITO><JQXOS_IPNNHMJOJMVM<>MS<><NR<JNI=VM><X PHJX<TI=IT<JN1<XYMYI=4/XWM=MXN1I.MZIXYMJ<XPHJPI=JIT#N1I>HJQIXNY=HPIXX<JQN<.I!A2;"=O>I >IMTXNHMJI==H=SHOJTHW&%!4?O=N1I=.H=I#MJI]M.Y>I<XY=HV<TITNHX1HUN1MNN1ISHOJT<XN<Q1N4 /JTX<.<>M=>R#<N<XIMX<>RZJHUJN1MNN1IA2;=O>I1MXMJI==H=SHOJTHW*%!NHN1IXI.<=IXO.MS>I PMXI4;1<XI]M.Y>IM>XHXI=VIXMXMPHOJNI=I]M.Y>INHN1I*%%I==H=SHOJTY=HV<TITSR=I>MNIT><NI=ME NO=I4/1IO=<XN<PY=HPITO=I<XM>XHY=HYHXIT#U1<P1MYY><IXN1IA2;=O>IMX<NXXNM=N<JQXH>ON<HJ#NHE QIN1I=U<N1MJI<Q1SHO=1HHTXIM=P1SMXITHJYM<=U<XI<JNI=P1MJQIX4b1IJN1INHNM>UI<Q1NITPH.Y>IE N<HJN<.IP=<NI=<HJ<XPHJPI=JIT#MOXIWO>Y=HYI=NR<XY=HVITMJTN1IJMTRJM.<PY=HQ=M..<JQM>QHE =<N1.<XTIVI>HYITNHXH>VIN1<XY=HS>I.HYN<.M>>R4 K7CI28;G’X<JQ>I.MP1<JIXP1ITO><JQ$XI.<=IXO.MS>IPMXI$>HJQIXNY=HPIXX<JQN<.I!A2;"=O>I$TRE JM.<PY=HQ=M..<JQM>QH=<N1.
%!’当 H*d? 时#显然=A2;d=" !QA2;d"# %%’当 H*%? 时#若*d!!则显然 =A2; d =" !即QA2;d"!因此只需讨论*$!的情况"若H* FH!,?!则=A2;)=" %&H%!=" &H*FH!FH%& %H%!于 是 有 QA2; %&*%"若 H* FH! $ ?!且 H*FH%F&FH*$?!则 =A2;)=" ,&%?)H*’! H%F & FH* $? )H*!H! $? )H*!且 H* & H!$?)H*!故 =" &H* FH! FH% F & FH* $ %%?)H*’!于是 QA2; %&*%"若 H* FH! $?!且 H*FH%F&FH*,?!则 =A2; dH*F &H* FL) ?F&%?)H*’!=" dH*F &H*FL)?F&+?) %H*FH%F&H*’,!于是=A2;)=" ,&%H%F&F H*’#又由前面假设知H%F&FH*,?)H*!H!$ ?)H*&H%F & FH*!H*&H!$H%F & FH*!故 =" &H*F&FH*$%%H%F&FH*’!于是 QA2;% &*%# 下面的例子表明这个界限是紧的!H*d*F!! H!d*!?d*F*并且 Ld*F!#A2; 规则将使