用于混合并行机和作业车间的组批动态控制方法 技术领域 本发明涉及一种组批动态控制方法, 尤其涉及一种用于混合并行机和作业车间的 组批动态控制方法。
背景技术 作业车间的生产控制包括静态生产控制和动态生产控制。 静态生产控制是通过接 受生产任务, 根据车间内的资源利用情况, 合理安排生产任务及资源的过程。 动态生产控制 是建立在静态生产控制基础上, 针对实际生产情况中可能出现的加工时间不确定、 机器故 障等典型动态事件, 对静态控制的结果进行修正或进行参数调整, 以提高制造系统响应动 态事件的能力、 保持生产过程的稳定性并提高交货准确率和生产效率。
目前, 对于车间中进行动态生产控制的系统还处于探索阶段。经过对现有技术 文献的检索发现, Jain A K 等在 《International Journal of Production Research》 ( 国际生产管理杂志 )(1997 年 )189-200 页上发表的 “Management science, theory of
constraints/optimized production technology and local optimization” ( 管理科学, 约束 / 优化理论生产技术与局部优化 ) 提出了预 - 反应式控制方法, 其中包括周期性控制、 事件驱动控制与混合控制三部分。 周期性控制以滚动时域为基础周期给任务分配资源并执 行控制。 在很多工业过程中, 在无法实时从车间层获得对系统状态实时监控数据的环节下, 管理员需要采集车间层和更高层控制系统的所有可得信息来周期性控制, 生成的控制方案 一直执行到下一个时段的到来, 在此期间不进行修改。 在这种方式下, 当系统状态发生重大 变化时, 这种控制决策可能无法保持良好的性能。对于事件驱动的动态控制, 是指一旦系 统状态改变就进行动态调整。此时, 动态调整的计算量很大, 要求快速捕获新事件的信息。 然而, 对于大规模系统来说, 在很多事件相继发生的状况下, 系统可能一直处于动态控制状 态, 因此, 系统的稳定性很差。 另外, 动态控制需要的计算成本非常大, 不适合动态复杂环境 下的车间动态控制要求。考虑到当车间出现动态事件时, 需要新控制安排与原控制安排的 偏移量尽可能得小, 尽可能减少动态事件对全过程安排的影响。 所以, 车间生产控制的鲁棒 性非常重要, 即要求动态控制过程生成的安排同时具有良好的有效性和稳定性。 发明内容
有鉴于现有技术的上述缺陷, 本发明所要解决的技术问题是提供一种用于混合并 行机和作业车间的组批动态控制方法, 通过在生产控制过程中考虑制造系统的各种动态事 件, 获得针对车间动态事件进行调整后的生产安排, 显著提高制造系统运行过程的鲁棒性。
为实现上述目的, 本发明提供了一种用于混合并行机和作业车间的组批动态控制 方法, 包括以下步骤 :
A、 对动态事件进行预处理 ;
B、 建立生产控制模型 ;
C、 对多个任务进行动态组批, 获得在任务动态事件影响下任务在资源上的安排结果; D、 对所述结果进行有效性和稳定性分析, 以评价生产控制结果的鲁棒性。
进一步地, 所述动态事件包括时间类动态事件、 设备类动态事件和计划类动态事 件, 所述预处理为对所述动态事件进行参数化描述。
进一步地, 所述时间类动态事件包括任务加工延迟和任务加工提前 ; 所述设备类 动态事件包括设备故障和设备维护 ; 所述计划类动态事件包括紧急订单、 追加计划、 减少计 划和取消计划。
进一步地, 步骤 B 进一步为 : 根据所述动态事件的参数化描述, 对车间的资源、 任 务进行获取, 获得动态控制模型的任务参数、 资源参数、 约束关系参数、 目标参数, 以建立不 确定环境下的生产控制模型。
进一步地, 所述生产控制模型包括任务约束的参数模型、 资源约束的参数模型及 目标函数的参数模型。
进一步地, 所述步骤 C 进一步包括如下步骤 :
C1、 根据具体的事件类型设置动态控制规则, 根据不同的动态控制规则所产生的 不同结果, 最终选择所需的动态控制规则 ;
C2、 确定所有任务批次的数量、 开始时间和完成时间, 根据设备闲置产能, 进行组 批。
进一步地, 所述步骤 C2 进一步包括如下步骤 :
C21、 选择最早的设备 e 的空闲时刻 t, 针对订单 i 中第 j 类产品的第 k+1 步工序的 任务进行组批操作, 所述任务组成多个任务集合, 通过设备剩余产能与任务所需产能的对 比来进行组批操作, 以确定设备闲置产能 capabilitye 可生产的任务的数量 B ;
C22、 针对订单 i 中第 j 类产品的第 k 步工序的任务批次, 选择设备空闲时刻 t 或 t 时刻前完成的生产批次集合, 计算所述生产批次集合中的任务数量为 nj′, 当 nj′= B, 即当前等待的任务集合的数量等于设备可以加工的产能最大数量时, 则将所述 nj′个工件 组成一个批次, 在设备 e 上进行安排 ; 当 nj′> B, 则当前等待的任务集合的数量大于设备 可以加工的最大批量时, 则在所述当前等待的任务集合中选择 B 个任务组成一个批次, 在 设备 e 上进行安排 ; 当 nj′< B, 则当前等待的工件数量小于机器的剩余产能时, 可将所述 nj′个工件组成一个批次, 占用部分设备 e 的产能 ;
C23、 将所选择的时刻 t 或 t 时刻前完成的生产批次集合按照完成时间的先后排 序, 依次取出小于或等于批次数量的产品数量, 直至总数量等于 B ;
C24、 检查订单 i 中第 j 类产品第 k+1 道工序的生产批次集合, 确认数量是否等于 订单 i 中第 j 类产品第 k 道工序的生产批次集合的总数量, 若等于所述总数量, 则步骤 C 结 束; 否则, 则跳转至步骤 C21 循环执行。
进一步地, 所述有效性表示为 U(δ) = |F-F′ |, 其中, 原生产安排过程的目标值 为 F, 动态生产控制后的目标值为 F′。
进一步地, 所述稳定性表示为其中, Ci 为订单 i 完成所需的加工时间, Ci′表示原安排中订单 i 完成所需的加工时间 ; Pi 为生产控制执行后订 单的生产持续时间, Pi′为原安排中订单的生产持续时间。进一步地, 所述鲁棒性表示为 R(δ) = x· U(δ)+(1-x)· S(δ), 其中, x ∈ [0, 1], x 为有效性和稳定性的重要性因子。
本发明的有益效果在于 :
采用本发明的方法后, 混合并行机与作业车间的生产控制能够在以下两方面得到 有效的改善 : 1) 帮助企业运行过程管理, 遇到动态事件时, 可以快速进行生产安排的调整、 维持企业生产过程的稳定性并提高客户满意度及企业利润率 ; 2) 能够提高企业生产执行 的准确率。
以下将结合附图对本发明的构思、 具体结构及产生的技术效果作进一步说明, 以 充分地了解本发明的目的、 特征和效果。 附图说明
图 1 是本发明的一个实施例的混合并行机和作业车间的制造环境的示意图 图 2 是本发明的一个实施例的车间 2 中的生产线 5 的产能分布示意图。具体实施方式 本发明的用于混合并行机和作业车间的组批动态控制方法包括以下步骤 :
(1) 动态事件预处理 : 为了对动态事件进行参数化描述, 具体包括时间类、 设备类 和计划类动态事件。 其中时间类动态事件包括任务加工延迟、 任务加工提前等 ; 设备类动态 事件包括设备故障、 设备维护等 ; 计划类动态事件包括紧急订单、 追加计划、 减少或取消计 划等。
(2) 建立生产控制模型 : 根据动态事件的参数化描述, 对车间的资源、 任务进行获 取, 获得动态控制模型的任务参数、 资源参数、 约束关系参数、 目标参数等, 形成不确定环境 下的生产控制模型 ;
(3) 动态生产控制 : 针对动态事件的具体特征, 设计生产控制的规则, 考虑资源约 束、 工艺约束、 设备加工过程中的非抢占约束等, 对任务进行动态组批, 获得动态事件影响 下任务在资源上的安排结果。
(4) 生产控制结果分析 : 根据上述安排结果, 进行稳定性、 有效性分析, 确定动态 事件对生产控制前、 生产控制后的结果的影响, 进行生产控制的鲁棒性评估。
以下对上述每一个步骤做进一步描述 :
(1) 动态事件预处理 :
首先对时间类、 设备类和计划类动态事件进行参数化描述。
对于时间类动态事件, 任务加工延迟、 任务加工提前等, 转化为设备产能的占有或 释放量进行参数化描述。将时间类动态事件表示为 (d, typet, equd, td, lt), 其中 d 为动态 事件索引, typet 为动态事件的类型, equd 为动态事件发生对应的设备, td 为提前或延迟的 时间点, lt 为提前或延迟的总时间单位。
对于设备类动态事件, 包括设备故障、 设备维护等, 转化为设备产能减少量进行参 数化描述。将设备类动态事件表示为 (d, type, equd, td, lt), 其中 d 为动态事件索引, typee 为动态事件的类型, equd 为动态事件发生对应的设备, td 为设备故障、 设备维护的时间点, lt 为所需的时间单位。
对于计划类动态事件, 包括紧急订单、 追加计划、 减少或取消计划等, 可通过增加、 减少任务来进行参数化描述。将计划类动态事件表示为 (d, typep, orderi, qd, ti, td), 其中 d 为动态事件索引, typep 为动态事件的类型, orderi 为动态事件对应的任务, 任务数量用正 数或负数表示, qi 为任务 orderi 增加或减少的数量, ti 为追加计划、 紧急订单或减少计划时 的时间点, td 为紧急订单、 追加计划的交货期。
(2) 生产控制模型 :
考虑在混合并行机和作业车间中, 可以进行多种工序加工, 且每种工序中包括多 台并行加工设备。 产品生产过程按批次组织生产, 每一批次生产前需要一定的准备时间, 批 次任务加工过程中不允许中断。 在生产控制过程中, 需要同时考虑车间中的各种动态事件, 对车间中的任务和资源进行描述, 建立任务约束、 资源约束及目标函数的参数模型。
●任务约束
生产控制过程中, 包括三类任务, 分别是已安排未生产任务、 已安排正在生产的任 务和未安排的任务。 其中, 已安排正在生产的任务不可变更, 未安排的任务包括紧急订单的 任务和正常情况下接受的任务。用 Qi 表示订单 i 的数量, Qikj 表示订单 i 的 k 工序的 j 批 次的数量, likj 表示订单 i 的 k 工序的 j 批次的标记符号, Φ 表示动态事件发生前生产安 排中已安排正在生产的批次集合, ∏表示动态事件发生前已生产完成的批次集合, Ω 表示 动态事件发生后生产控制生成的批次集合。则订单 i 的工序 k 的批次数量约束关系可表示 为:
likj ∈ Φ ∪∏∪ Ω。同时, 前、 后工序之间具有批次数量和批次开始 / 结束时间约束, 完成 i 订单第 k 道工序的批次 j3 的时刻为 Cikj3, Cikj3 时刻前 i 订单第 k+1 道工序开始加工的批次中产品总 数量必须小于 Cikj3 前完成的 i 订单第 k 道工序的批次中产品总数量。即前后工序之间批次 数量的约束表达式为 :k+1, jΦ(J1) = {j|Cikj ≤ Cikj3}, Φ(J2) = {j|Si,≤ Cikj3}, likj ∈ Φ ∪∏∪ Ω。其中, Sikje 表示订单 i 的 k 工序的 j 批次在设备 e 上的开始加工时间, Cikje 表示订单 i 的 k 工序的 j 批次在设备 e 上的结束加工时间。
●资源约束
当出现设备类动态事件和时间类动态事件时, 将设备对应的时段设置为不可用, 资源参数将在生产控制过程中进行说明。设 Di 为订单 i 的要求交货时间, Ci 表示订单 i 完 成加工时间, pikje 表示订单 i 的 k 工序的 j 批次在设备 e 上加工所需时间。TSetikje 表示订 单 i 的 k 工序的 j 批次在设备 e 上加工所需准备时间。TUikje 表示订单 i 的 k 工序的 j 批 次在设备 e 上加工所需的单位处理时间。Xi1, k1, j1, e, i2, k2, j2 表示订单 i1 的 k1 工序的 j1 批次 在设备 e 上的加工时间早于订单 i1 的 k1 工序的 j1 批次。则根据任务批次的完成时间, 可 将订单的完成时间约束表示为 : Ci ≥ Cikje。批次的加工开始 / 结束时间约束 : Sikje+pikje = Cikje。设备在同一时间段仅能处理一项任务约束 : Xi1, k1, j1, e, i2, k2, j2+Xi2, k2, j2, e, i1, k1, j1 = 1。工 序的加工时间约束为 pikje = TSetikje+Qikj·TUikje。
●目标函数
生产控制的目标是所有任务的拖期时间最小。目标函数表达式为 :生产控制过程是在考虑动态事件的情况下, 求解任务的每个批次安排在资源上的 时间段, 而不进行动态事件影响下生产控制的稳定性分析。 因此, 在这一步仅用参数表达各 个任务的批次开始时间、 完成时间即可, 在下一步获得精确值后, 可进一步进行动态事件影 响下生产控制的稳定性分析结果。
(3) 动态生产控制 :
生产控制过程中, 考虑初始生产安排, 针对车间中出现的不同的动态事件, 进行初 始生产安排的调整。生产控制过程分为动态控制规则设置和组批两个步骤。
动态控制规则设置步骤 : 根据具体的事件类型设置动态控制规则。当任务加工工 序延时, 或当设备发生故障时, 在资源列表中删除对应时段的资源, 并获取设备上分配的任 务, 对任务搜索可用设备进行安排。 增加计划或任务拖期都将造成计划追加, 生产控制的排 序策略分为 : 保持剩余计划不变, 直接插单追加计划 ; 按照紧急订单优先的规则, 对原剩余 生产计划和新添加的计划进行重新安排。针对不同的动态控制规则, 采用交货期越早越先 安排的基本策略进行任务排序。考虑不同的动态控制的排序规则产生的结果不同, 为了获 得最优的生产控制方案, 需要在动态事件发生时, 遍历相关的动态控制规则。 组批步骤 : 进一步确定所有批次的数量及开始时间和完成时间。组批采用事 件驱动模式, 对任意任务, 设其在第 k 道工序中分批情况及计划完成时间分别为 n1, n2, n3, ......nj, 每个批次的完成时间是 t1, t2, t3, ......tj。在第 k+1 道工序中进行组批时, 根据批次任务在第 k 道工序的完成时间, 及设备闲置产能, 进行组批, 包括 4 个子步骤 :
子步骤 1 : 选择最早的设备空闲时刻 t, 所述设备标识为 e, 所述设备 e 闲置产能 capabilitye, 对各类任务进行组批操作, 对于一类任务 j, 此时有 nj′个任务在等待加工, 这些任务组成任务集合, 通过设备剩余产能与任务所需产能对比进行组批操作 : 确定设备 闲置产能 capabilitye 可生产 j 类任务的工序 k+1 的数量 B。
子步骤 2 : 针对订单 i 中第 j 类产品的第 k 步工序的任务批次, 选择设备空闲时刻 t 或 t 时刻前完成的生产批次集合, 计算所述生产批次集合中的任务数量为 nj′,
●当 nj′= B, 即当前等待的任务集合的数量等于设备 e 可以加工的产能最大数 量, 则将此 nj′个工件组成一个批次, 在此台设备 e 上进行安排 ;
●当 nj′> B, 则当前等待的任务集合的数量大于设备 e 可以加工的最大批量, 则 在其中选择 B 个任务组成一个批次, 在设备 e 上进行安排 ;
●当 nj′< B, 则当前等待的工件数量小于机器的剩余产能时, 可将 nj′组成一个 批次, 占用部分设备 e 的产能。
子步骤 3 : 将所选择的时刻 t 或 t 时刻前完成的生产批次集合, 按照完成时间先后 排序, 依次取出小于或等于批次数量的产品数, 直至总数量等于 B。
子步骤 4 : 检查订单 i 中第 j 类产品第 k+1 道工序的生产批次集合, 确认数量是否 等于订单 i 中第 j 类产品第 k 道工序的生产批次集合的总数量, 若等于总数量, 则步结束 ; 否则, 则跳转至步骤 1 循环执行。
(4) 生产控制结果分析 :
对生产控制的结果进行有效性和稳定性分析, 评价生产控制结果的鲁棒性。
有效性用于表征生产控制执行前后目标值的改变量。设 U(δ) 为生产控制过程的 有效性, 设原生产安排过程的目标值为 F, 动态生产控制后的目标值为 F′, 则对于扰动事 件, 生产控制的有效性可以表示为 U(δ) = |F-F′ |。
稳定性用于表征每个订单的处理周期和结束处理时间的变化量。设 S(δ) 为生产 控制的稳定性, 设生产控制执行后订单的生产持续时间为 Pi, 原安排中订单的生产持续时 间为 Pi′, 生产控制的稳定性可用式表示为
生产控制的鲁棒性表达式定义为 : R(δ) = x· U(δ)+(1-x)· S(δ), 其中 x ∈ [0, 1] 为有效性和稳定性的重要性因子。
下面以印刷电路板装配企业的生产流程为例, 详细说明本发明的用于混合并行机 和作业车间的组批动态控制方法。 本实施例将本发明的方法应用于印刷电路板装配企业的 生产流程中, 针对动态事件调整生产计划、 提高企业生产流程的稳定性。具体步骤如下 :
(1) 动态事件预处理 :
请参阅图 1, 图 1 为混合并行机和作业车间的制造系统。如图 1 所示, 该制造系统 包括 3 个车间, 分别为车间 1、 车间 2 和车间 3。每个车间具有多台并行产线。例如, 车间 1 具有生产线 1、 生产线 2 ; 车间 2 具有生产线 4、 生产线 5 ; 车间 3 具有生产线 3。企业接受客 户的订单进行生产, 采用批量生产方式, 每个产品生产过程需要经过车间 1、 车间 2 和车间 3。目前企业中存在设备工况不稳定, 紧急订单插单等情况, 需要及时进行生产控制来调整 生产执行过程的计划安排。
以下以紧急订单和设备故障为例描述动态事件的预处理过程。
获取紧急订单, 其中包括两项紧急订单, 具体信息为 : 订单 3, 数量 500, 交货期为 2011 年 5 月 12 日 ; 订单 4, 数量为 1000, 交货期为 2011 年 5 月 13 日。紧急订单为计划 类动态事件, 根据提供的计划类动态事件标识方式, 对两项紧急订单进行描述, 记录为 (1, typep, order1, 500, 5/8, 5/12), (2, typep, order2, 1000, 5/8, 5/13)。
获取设备故障信息, 具体信息为编号为 equd 的设备从 td 时间开始发生故障, 故障 延续 lt 时间长度。设备故障信息为设备类动态事件, 根据设备类动态事件标识方式, 记录 为 (4, typee, 5, 5/10 11:00, 11d6.5h)。
(2) 生产控制模型 :
假设 2011 年 5 月 5 日对订单 1 和订单 2 进行安排, 安排结果如表 1 所示, 其中订 单 1 和订单 2 的数量分别为 3000 和 1000, 交货期分别为 2011 年 5 月 25 日和 2011 年 6 月 6 日。
表 1 正在执行的生产计划
设执行动态生产控制的日期为 2011 年 5 月 8 日, 当前执行的是 2011 年 5 月 5 日 开始制定的生产计划。其中日期在 2011 年 5 月 8 日的任务为正在执行的批次任务, 生产控 制过程中不能对其进行调整, 2011 年 5 月 8 日之后的任务为已经安排但尚未执行的生产计 划任务, 在生产控制过程中可对其进行调整。 将新任务与旧任务合并, 生产控制的任务集合 为: 生产控制前已安排正在生产的批次集合 Φ 包含的任务序号为 {1, 2, 3} ; 生产控制前已 生产完成的批次集合∏包含的任务序号为 {4} ; 其他任务编号为可参加生产控制的生产批 次。
以订单编号为 1 的订单为例说明各约束条件及目标函数。订单 1 的数量为 2000, 则订单 1 的 3 道工序中, 任务数量约束可表示为 :
前后工序之间批次数量的约束表达式为, 订单 1 的工序 2 的批次 5 结束前, 开始加 工的任务订单 1 的工序 2 的批次总数量小于工序 2 的批次 5 之前批次完成的总数量 :90+797 ≥ 0 即 887 ≥ 0 ;
订单的完成时间约束表示为订单的完成时间为订单中所有任务的完成时间 :
C1 ≥ 2011-5-26 9:30。
设备在同一时间段仅能处理一项任务, 例如, 任务编号 12 和 13 之间的先后约束关 系可表示为 :
X1, 3, 12, 25, 1, 3, 13+X1, 3, 13, 25, 1, 3, 12 = 1+0 = 1。
产线每日的工作时间段是上午 8 时至下午 4 时。如图 2 所示, 根据故障维护动态 事件的特征, 将车间 2 中的生产线 55 的 2011 年 5 月 10 日 11:00 至 2011 年 5 月 22 日 9:30 设为维修维护时段, 。
(3) 动态生产控制 :
对生产控制模型求解。首先根据设置生产控制的排序规则, 根据紧急订单下的排 序规则, 选择规则 “按照紧急订单优先的规则, 对原剩余生产计划和新添加的计划进行重 排” 进行生产控制模型求解 ; 根据动态组批规则, 对订单进行批次拆分、 安排开始时间和安 排结束时间。获得生产控制结果如表 2 所示。
表 2 不确定环境下的生产控制结果
(4) 生产控制结果分析 : 分析订单的开始结束时间, 结果如表 3 所示。 表 3 生产控制执行后的结果分析表
有效性表示原拖期时间与动态生产控制后的拖期时间之间的差值 :
U(δ) = |F-F′ | = |(0+0)-(1+0+10+0)| = 11。
稳定性表示原安排与生产控制执行后的结果中, 每个订单的结束时间、 处理时间 长度的变化值 :
鲁棒性表示原生产安排和执行生产控制后的生产安排结果中, 有效性和稳定性的 加权值, 设权重分别为 0.5 和 0.5 :
R(δ) = x·U(δ)+(1-x)·S(δ) = 6.5。
企业管理人员获得生产控制的有效性、 稳定性和鲁棒性评价结果后, 判定鲁棒性 符合要求, 即执行生产控制结果 ; 否则, 修改生产控制时的排序规则, 直到符合要求为止。
以上详细描述了本发明的较佳具体实施例。应当理解, 本领域的普通技术人员无 需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此, 凡本技术领域的技术 人员依本发明的构思在现有技术的基础上通过逻辑分析、 推理或者有限的实验可以得到的 技术方案, 皆应在由权利要求书所确定的保护范围内。