没有合适的资源?快使用搜索试试~ 我知道了~
首页202101多资源车间调度优先分配GifflerThompson规则启发式算法.pdf
第4讲 多资源车间调度优先分配启发式算法 1 4.1 多资源车间调度概述 1 4.2 优先分配Giffler Thompson启发式算法及其流程 3 4.3 优先分配Giffler Thompson启发式算法Matlab实现 6 4.3.1 数据结构设计 6 4.3.2 Matlab程序实现 8 4.3.3 优先分配规则Matlab程序运行结果 9 4.4 优先分配Giffler Thompson启发式算法总结 11
资源详情
资源评论
资源推荐

车间调度算法系列lab.honormes.com
1
第 4 讲多资源车间调度优先分配启发式算法
目录
第 4 讲多资源车间调度优先分配启发式算法.........................................................................1
4.1 多资源车间调度概述........................................................................................................1
4.2 优先分配 GifflerThompson 启发式算法及其流程..........................................................3
4.3 优先分配 GifflerThompson 启发式算法 Matlab 实现....................................................6
4.3.1 数据结构设计.........................................................................................................6
4.3.2Matlab 程序实现.....................................................................................................8
4.3.3 优先分配规则 Matlab 程序运行结果...................................................................9
4.4 优先分配 GifflerThompson 启发式算法总结................................................................11
4.1 多资源车间调度概述
高效的调度优化算法是实现智能生产和智慧工厂的关键技术之一。生产调度
优化领域大多数文献主要研究作业仅受机床设备约束的单资源调度问题,而现实
生产调度还可能受到多种资源的约束,例如作业过程需要工人和机床配合完成的
双资源调度、或者作业过程需要机床、工人和机械臂配合完成的多资源调度。近
20 年来多资源车间调度问题受到了越来越多的重视。
例如潘全科等 2004 的文献“多工艺路线多资源多目标的作业调度优化”研
究的问题概述为:在一个加工系统中,有 M 台加工机床、W 个操作工人和 K 辆
运输小车,工人的数量 W 和小车的数量 K 均少于机床的数量 M,一个工人可操
作一台或多台机床,一辆运输小车服务于多台机床。有 N 个工件等待加工。对
于每个工件,都有一个由多道工序组成的工序集合。调度问题是如何为工件安排
加工机床、操作工人和运输小车,使生产周期、机床闲置时间和工件总延误时间
等综合指标最小。
其给出的算例数据如下:
表 1 作业设备配合和工序工时表
工序 M0 M1 M2 M3 M4 M5 M6 M7 M8 M9
A0 5 7
A1 8 10
A2 5 8
A3 10 11
A4 8 7
B0 8 9
B1 10 13

车间调度算法系列lab.honormes.com
2
B2 10 12
B3 8 7
C0 7 9
C1 11 12
C2 8 10
C3 14 13
C4 9 8
D0 10 13
D1 11 9
D2 10 12
D3 8 7
表 2 工人和设备关系表
工人 M0 M1 M2 M3 M4 M5 M6 M7 M8 M9
0 Y Y
1 Y Y
2 Y Y
3 Y Y
4 Y Y
5 Y Y
6 Y Y
表 3 运输小车可服务设备表
小车 M0 M1 M2 M3 M4 M5 M6 M7 M8 M9
0 Y Y
1 Y Y
2 Y Y
3 Y Y
4 Y Y
5 Y Y
6 Y Y
表 3 中不同小车可服务设备表示特定小车可以为指定的机床完工作业运输到
该作业下一工序所在的设备前的缓存区。例如 0 号小车可以将 M0 和 M1 完工的
作业运输到这些作业的下道工序设备前的缓存区,运输时间由表 4 确定。
表 4 机床之间运输时间表
机床 M0 M1 M2 M3 M4 M5 M6 M7 M8 M9
M0 0 1 2 2 2 2 3 3 2 2
M1 1 0 2 2 3 3 2 2 3 3
M2 2 2 0 1 2 2 3 3 2 2
M3 2 2 1 0 3 3 2 2 3 3
M4 2 3 2 3 0 1 3 3 2 2
M5 2 3 2 3 1 0 2 2 3 3
M6 3 2 3 2 3 2 0 1 2 2
M7 3 2 3 2 3 2 1 0 2 2
M8 2 3 2 3 2 3 2 2 0 1
M9 2 3 2 3 2 3 2 2 1 0

车间调度算法系列lab.honormes.com
3
表 5 工件缓冲区到机床的时间
机床 M0 M1 M2 M3 M4 M5 M6 M7 M8 M9
时间 1 1 2 2 2 2 3 3 2 2
补充说明:在该文的后续算法分析中,讨论了调度方案的总延误时间,但是
在数据中并没有看到各项作业的交付时间。
论文中给出了搜索的最优解表 7 和甘特图 1,表 7 的第一列为最大完工时间、
第二列为总延误时间、第三列为机床总闲置时间。空闲时间 10 左右,所以还是
得给出各个作业的交付时间才行。
【1】理解错误,但是可以作为一种利用测试算例进行变种问题研究的思路:
可以看出延误时间为 400 多,总共四项作业,莫不成延误时间为全部订单的交付
时间为 0,然后全部订单最后一道工序的完工时间之和即为延误时间,看起来不
像,因为四个作业最后完工时间大概在 60 左右,总和也就 240;难道是全部作
业各个工序的完工时间之和,平均完工时间大概在 35,总共 18 项作业任务,总
和大概在 630 左右,倒是有点像,后面算例测试时计算一下。
4.2 优先分配 GifflerThompson 启发式算法及其流程
该规则应该是在文献[ J.F.Muth, Giffler L Thompson. Editors, Industrial
Scheduling[M],PrenticeHall,EnglewoodCliffs(1963)]中提出的,因此文献中也称之
为 GifflerThompson 算法,但是该文献没找到原本,只能根据潘全科这篇文章的
描述进行还原其分配过程了。
优先分配启发式算法的主要思想是:(1)对全部作业的第一道工序进行资源
分配,分配过程中可用时间最早的资源优先分配作业;(2)然后对全部作业的第
二道工序按照优先规则进行资源分配。
剩余11页未读,继续阅读














安全验证
文档复制为VIP权益,开通VIP直接复制

评论1