没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
1
基于多原则比较和蒙特卡洛模拟的 RGV 动态调度模型
摘要
本文从规划模型、多原则求解的角度, 综合了蒙特卡洛模拟与机器学习的思
想, 研究了由 8 台 CNC 、1 辆 RGV
以及其他附属设备组成的智能加工系统的动
态调度问题,并给出了不同工序情况下的具体调度方案。
针对情况一:单工序的作业流程较为简单。首先,利用规划的各个约束条件,
刻画了 RGV 在 CNC 之间的运动过程、单个物料的加工过程、“上下料”时 RGV
手爪的旋转过程、清洗作业的过程、RGV 移动至下一个机床进行加工的过程等
等。此外,还刻画了物料加工与运送的“唯一性”,以及利用 0- 1 变量构造的目
标函数。 规划的目的是,在给定的时间内, 使得加工出的物料数量最多。 然而,
这样的规划是一个 NP
问题, 无法通过传统的方法求解, 所以进而寻求模拟的方
法求得局部最优解。
本文选取了“就近原则”——构造时间代价函数,“FIFO 原则 ”——考虑各
台 CNC 的等待时间, 以及“HRRN
原则”——将时间代价与等待时间进行综合
考虑, 分别对情况一进行了模拟。事实上, 每种原则的结果相同: 第一组数据加
工完成了 383 件物料, 第二组数据加工完成了 360 件物料, 第三组数据加工完成
了 393 件物料。并且,调度的方案全部为 1 →2 → … →8 → 1 → … 此外,第三组数
据的系统效率最高,为 49.125 件/h.
针对情况二: 双工序的作业流程十分复杂。首先, 在情况一的基础上,对规
划的各个约束条件进行修正;并着重刻画了 RGV 移动至下一个机床进行加工的
过程。
此外, 双工序流程中各台 CNC
所负责的工序也是不确定的;因此,本文对
256 种工序布局方案, 结合三种选取原则, 进行了遍历。得到的结果是: 第一组
数据的各台 CNC 最优工序分配为 1-2- 1-2- 1-2- 1-2,三种原则结果一致,最终加工
出 253 件物料;第二组数据的各台 CNC 最优工序分配为 2- 1-2- 1-2- 1-2- 1,“FIFO
原则”和“HRRN 原则”更优, 最终加工出 212 件物料; 第三组数据的各台 CNC
最优工序分配为 1- 1-2- 1-2- 1- 1-2,“就近原则”最优, 最终加工出 241 件物料。此
外, 所有的调度方案均呈现有规律的循环状态。
然后,利用“基于蒙特卡洛的学习算法”,在构造正反馈的前提下“随机”
地尝试以获得更优解。结果反映了, 三种原则中的最优原则, 已非常接近全局最
优。 此外,第一组数据和第三组数据的作业效率一样高,均为 30.125 件/h.
针对情况三: 同时考虑单工序流程与双工序流程。构造了随机变量“是否故
障”、“故障发生时间”和“故障排除时间 ”,并将它们融合进入规划模型。 求解
结果显示, 遭遇故障后, 单工序流程系统效率最多下降了 2.25 件/h,而双工序流
程系统效率最多下降了 1.875 件/h.
本文的亮点在于:首先,利用一般化的公式对系统调度进行了较为细致的机
理分析, 使得模型具有普适性; 其次, 给出了多个调度原则相互比较, 从而有利
于结果更优; 最后,将蒙特卡洛模拟与机器学习的思想相结合,对上述调度原则
的有效性进行验证,增强了模型的说服力。
关键词 规划模型; 多原则比较;蒙特卡洛模拟;机器学习;动态调度
2
1. 问题的重述
现有一个智能加工系统, 由 8 台 CNC 、1 辆 RGV 以及其他附属设备组成。
RGV 能够根据指令与决策,在水平的轨道上自动控制移动的方向和距离,并通
过机械手爪、机械臂等部件完成“上下料”、“清洗作业”等诸多过程。
对于以下三种情况:
①加工过程包含 1 道工序且每台 CNC 都可以进行加工;
②加工过程包含 2 道工序且每台 CNC 只能完成 1 道工序;
③某 CNC 在加工过程中发生故障, 故障需人工排除, 且该 CNC 上的物料报
废;
考虑完成两个任务:首先,给出一般的模型, 并给出模型的求解算法; 然后,
检验模型的实用性和算法的有效性,并给出具体调度策略和系统作业效率。
2. 问题的分析
对于情况(1),整个加工系统仅有一个工序。 从物料的形态演化过程来看,
生料经过 CNC 的加工成为熟料, 而熟料经过 RGV 的清洗成为成料。从 RGV 的
作业过程来看, RGV 首先需要选取一台候选 CNC,然后移动至该 CNC,放入生
料,取出熟料,再将熟料进行清洗使之变为成料(包括送出系统) ——最终 RGV
将进入下一轮选择 CNC
的阶段。
生料
图 1 情况(1)物料的形态演化
对于情况(2
),
整个加工系统有两个工序。从物料的形态演化过程来看, 生
料经过“一工序 CNC”的加工成为半熟料,而半熟料经过“二工序 CNC”的加
工成为熟料,最后熟料经过 RGV 的清洗成为成料。
半熟料
图 2 情况(1)物料的形态演化
对于情况(3
),
整个系统出现了故障。根据题目所给条件, 需要依此考虑对
于某个物料的加工, 是否发生故障, 故障发生的时间, 以及故障排除时间这三个
随机变量。
本文拟构建一般性的规划, 理清系统内部的机理关系。然后, 通过提出不同
的原则, 编写算法,解决该规划问题; 并通过“基于蒙特卡洛的学习算法”,比
较、检验不同原则的优劣。
3. 模型的假设与符号的说明
3.1 模型的假设
(1)生料的供应是无限的。
熟料
成料
生料
成料
熟料
3
(2)不考虑 RGV 转向的时间,即 RGV 从 CNC1#到 CNC2#,从 CNC3#到
CNC4#,从 CNC5#到 CNC6#,从 CNC7#到 CNC8#的时间全部为 0.
(3)上料传送带可以及时将生料运往需要的 CNC 正前方,下料传送带可以
及时将成料运出整个系统。
3.2 符号的说明
表 1 符号的说明
符号
说明
单位
RGV 移动 个单位所需时间
秒
RGV 从机床 移动到机床 的时间
秒
号机床所加工的第 个物料
件
0
物料加工时间
秒
1
物料清洗时间
秒
( )
2
第 台机床“上下料”时间
秒
生料 “上料”完成时刻
秒
熟料 “下料”完成时刻
秒
成料 完成清洗时刻
秒
,
两件独立熟料下机床时间的先后顺序
0- 1 变量
RGV 是否从 移动至
0- 1 变量
4. 模型的建立、求解与分析
4.1 情况(1)模型的建立、求解与分析
4.1.1 单工序的作业流程
在情况(1)中,物料加工程序仅由一道工序组成。其中, 每台 CNC 安装同
样的刀具, 而物料可以在任意一台 CNC 上加工完成。
纵观整个单工序的加工过程, 可以发现, 当某台 CNC 完成加工, 即完成“生
料→熟料”的过程时, 便处于等待状态, 并向 RGV 发出需求信号。当 RGV 移动
至该 CNC 正前方时, 连续完成下述步骤:
(1)上下料:将熟料取出 CNC,并向 CNC 放入新的生料,这两步同时完
4
成;
(2)清洗作业:将取出的熟料进行清洗,完成“熟料→成料”过程,而后
将成料放入传送带送出系统,此时 RGV 在轨道上位置不变。
此后,RGV 需要根据需求信号的先后顺序、距离的远近等信息, 寻找下一
个作业候选 CNC,然后重复上述(1
)(
2)两个步骤, 周而复始, 直至 8 个小时
结束。
4.1.2 单工序的调度模型
考虑到模型的一般化问题, 此处本文拟利用规划的方法,寻找并构建各台
CNC 以及生产物料的数量关系。
1. RGV 在 CNC 之间运动时间的刻画
不妨设,现有任意两台 CNC,分别记作 , ,其中 = 1, 2, …, 8; = 1, 2, …,
8. 考虑到机床安放的位置关系——偶数号码机床位于系统左侧,奇数号码机床
位于系统右侧——则 RGV 从机床 移动到机床 的时间为:
0,
1
,
=
⎨
2
,
⎩
3
,
=
0
=
1
=
2
=
3
其中, 为 RGV 移动 个单位所需时间。
2. 基于单个物料加工过程的刻画
Step
1.
将 号机床所加工的第 个物料记为 . 经过粗略的计算, 在 8
小时内该系
统可加工完成的物料数量级为 10
2
,所以准备 10
3
个生料一定足够。因此,参数
取值范围可以取为 =
1, 2, …, 1000.
相对应地,将尚为生料的 被 RGV 放入 号机床(“上料”过程完成) 的时
刻,记为 ;将已加工为熟料的 被 RGV
取出 号机床(“下料”过程完成)
的时刻,记为 .
此外, 物料加工时间记为
0
,清洗时间记为
1
,第 台机床“上下料 ”时间记
为
)
.
⎧
(1)
)
=
⎨
2)
⎩
2
mod( ) ≠ 0
mod( ) = 0
其中,
1)
为 RGV 为 CNC1# ,3# ,5# ,7#进行一次上下料所需时间,
2)
为
RGV 为 CNC2# ,4# ,6# ,8#进行一次上下料所需时间。
⎧
,
,
.
5
Step 2.
基于上述符号的定义,可以得到:
−
≥
≤
8 × 60 × 60 −
1
其他
(1)
(1)式的意义为, 若物料 加工完成时间在 8
小时终止以前, 那么物料
从被放入 CNC 开始, 直至被取出 CNC,所经历的时间至少为加工时间
0
与“上
下料”时间
)
两者之和。 − 之所以可能大于
0
+
)
,是由于当物料
加工完成时,RGV 不一定会恰好位于该CNC 机床前并立即取出该物料;通常地,
机床 CNC
需要等候 RGV。
若物料 加工完成时间在 8 小时终止以后,则不妨令 = 0.
3. “上下料”手爪旋转过程的刻画
值得注意的是, 当 RGV 从 CNC
中取出物料(此时具体的状态为熟料)
时, 会相应地放入一个生料,该生料就是 号机床所加工的第( + 1) 个物料;且
这两步同时发生。所以有:
=
( +1)
(2)
(2)式不仅仅刻画了“上下料”过程发生的同时性, 还保证了{ }序列的先
后顺序能够反映物料加工的先后顺序。因为, 当 8 小时终止前, 有:
( + 1)
>
( + 1 )
=
可见, 在连续作业的 8
小时终止前, 第 + 1个物料被取出 CNC 的时间一定
晚于第 个物料被取出 CNC 的时间。
4. 清洗作业过程的刻画
当熟料 被取出后, 会立即进行清洗作业过程。记物料 加工完成并放至
下料传送带的时刻为 . 由于这个过程是确定的、不间断的,且清洗时间
1
为
定值,所以容易得到:
=
+
1
(3)
当 RGV 将成料 放到下料传送带后,就需要寻找下一个候选机床 ,并立
即向它移动。
5. RGV 移动至下一个机床进行加工的过程刻画
仿照上述描述,记 号机床所加工的第 个物料记为 . 其中, =
1, 2, …,
1000.
Step
1.
首先, 需要考虑物料 的加工顺序是否在物料 之后,所以构造顺序约束
变量(0- 1 变量)
,
.
剩余45页未读,继续阅读
资源评论
小码蚁.
- 粉丝: 2664
- 资源: 4483
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功