内容发布更新时间 : 2024/12/27 10:18:18星期一 下面是文章的全部内容请认真阅读。
编号:
第六届计算机仿真大赛
参赛作品
题号:加工调度问题
组别: 高年级组 作者: 厚玉伟 学院: 光电工程 联系电话:18716321594
计算机仿真大赛组委会
2012年 05月 01日
生产调度问题及其优化算法
背景及摘要
这是一个典型的Job-Shop动态排序问题。目前调度问题的理论研究成果主要集中在以Job-Shop问题为代表的基于最小化完工时间的调度问题上。一个复杂的制造系统不仅可能涉及到成千上万道车间调度工序,而且工序的变更又可能导致相当大的调度规模。解空间容量巨大,N个工件、M台机器的问题包含(N!)M种排列。由于问题的连环嵌套性,使得用图解方法也变得不切实际。传统的运筹学方法,即便在单目标优化的静态调度问题中也难以有效应用。
本文给出三个模型。首先通过贪婪法手工求得本问题最优解,既而通过编解码程序随机模拟优化方案得出最优解。最后采用现代进化算法中有代表性发展优势的遗传算法。文章有针对性地选取遗传算法关键环节的适宜方法,采用MATLAB软件实现算法模拟,得出优化方案,并与计算机随机模拟结果加以比较显示出遗传算法之优化效果。 对车间调度系列问题的有效解决具有一定参考和借鉴价值。
- 1 -
二.模型假设
1.每一时刻,每台机器只能加工一个工件,且每个工件只能被一台机器所加工 ,同时加工过程为不间断;
2.所有机器均同时开工,且工件从机器I 到机器J 的转移过程时间损耗不计; 3.各工件必须按工艺路线以指定的次序在机器上加工多次; 4.操作允许等待,即前一操作未完成,则后面的操作需要等待,可用资源有限。
三.符号说明及初始数据表达分析
Ji - 第i个工件 (i=1?6)
(i,JM- 机器顺序阵 JMMj- 第j台机器 (j=1?4)
j)表示i工件的第 j个操作的机器号
MJ- 工件排列阵 MJ(i,j)表
i机器上第j次加工的工件号
T - 加工时间阵 T(i,j)为i工件的第 j个操作的时间周期
C - 整个任务完成时间 整理数据后得到:
JM=[ C A B C D 0 0 0 ] T= [ 8 2 4 24 6 0 0 0 ] [ A D B C 0 0 0 0 ] [ 4 5 3 4 0 0 0 0 ] [ C D A B A 0 0 0 ] [ 3 7 15 20 8 0 0 0 ] [ B C D A D C 0 0 ] [ 7 6 21 1 16 3 0 0 ] [ D B C D A C D 0 ] [ 10 4 8 4 12 6 1 0 ] [ A B A C D A C A ] [ 1 4 7 3 5 2 5 8 ] 上述二阵直接从题目得出,而MJ则是我们要求的。
关于工件的加工时间表:(表二) 产品/工件(i): 1 44 5 2 16 4 3 53 5 4 54 6 5 45 7 6 35 8 总计 247 35 Ji 总净加工时间(周期) Ji 加工工序总数(个)
关于机器的加工时间表:(表三) 机器/设备(j): A 60 10 B 42 6 C 70 10 D 75 9 总计 247 35 Mj 总净加工时间 Mj 加工操作次数 分析:
由于各产品总净加工时间和各机器总净加工时间之中最大值为 75,而总
- 2 -