2.845

2023影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

二阶系统线性自抗扰控制的稳定性条件

金辉宇 刘丽丽 兰维瑶

俞胜平, 柴天佑. 开工时间延迟下的炼钢-连铸生产重调度方法. 自动化学报, 2016, 42(3): 358-374. doi: 10.16383/j.aas.2016.c150197
引用本文: 金辉宇, 刘丽丽, 兰维瑶. 二阶系统线性自抗扰控制的稳定性条件. 自动化学报, 2018, 44(9): 1725-1728. doi: 10.16383/j.aas.2017.c160817
YU Sheng-Ping, CHAI Tian-You. Rescheduling Method for Starting Time Delay in Steelmaking and Continuous Casting Production Processes. ACTA AUTOMATICA SINICA, 2016, 42(3): 358-374. doi: 10.16383/j.aas.2016.c150197
Citation: JIN Hui-Yu, LIU Li-Li, LAN Wei-Yao. On Stability Condition of Linear Active Disturbance Rejection Control for Second-order Systems. ACTA AUTOMATICA SINICA, 2018, 44(9): 1725-1728. doi: 10.16383/j.aas.2017.c160817

二阶系统线性自抗扰控制的稳定性条件

doi: 10.16383/j.aas.2017.c160817
基金项目: 

国家自然科学基金 61374035

福建省自然科学基金 2016J01317

国家留学基金 201606315084

详细信息
    作者简介:

    刘丽丽 厦门大学航空航天学院硕士研究生.主要研究方向为线性自抗扰控制.E-mail:liulili0409@foxmail.com

    兰维瑶 厦门大学航空航天学院教授.主要研究方向为非线性控制理论与应用, 鲁棒与自适应控制, 智能控制技术.E-mail:wylan@xmu.edu.cn

    通讯作者:

    金辉宇 厦门大学航空航天学院助理教授.主要研究方向为数据驱动控制, 采样控制, 非线性系统.本文通信作者.E-mail:jinhy@xmu.edu.cn

On Stability Condition of Linear Active Disturbance Rejection Control for Second-order Systems

Funds: 

National Natural Science Foundation of China 61374035

Natural Science Foundation of Fujian Province 2016J01317

State Scholarship Fund of China 201606315084

More Information
    Author Bio:

    Master student at the School of Aerospace Engineering, Xiamen University.Her main research interest is linear active disturbance rejection control

    Professor at the School of Aerospace Engineering, Xiamen University.His research interest covers nonlinear control theory and applications, robust and adaptive control, and intelligent control technology

    Corresponding author: JIN Hui-Yu Assistant professor at the School of Aerospace Engineering, Xiamen University.His research interest covers data-driven control, sampled-data control, and nonlinear systems.Corresponding author of this paper
  • 摘要: 研究了线性自抗扰控制(Linear active disturbance rejection control, LADRC)抑制内扰的机理.针对无外扰的二阶线性系统, 给出了线性自抗扰控制的一个稳定性充要条件.使用该条件证明了实践中广泛应用的带宽法可以克服对象的参数不确定性, 找到合适的观测器带宽保证自抗扰控制稳定.
  • 炼钢-连铸生产过程是现代钢铁企业生产流程中的核心环节, 其生产过程是将液态的高温铁水经过转炉冶炼、精炼炉精炼和连铸机浇铸等三大工序的处理形成最终的固态板坯.首先, 高炉产出的高温铁水通过鱼雷车载运铁水到炼铁厂, 倒入转炉并加入废钢进行吹炼, 把高温条件下的铁水进一步冶炼为含碳量更低的钢水.其次, 转炉产出的钢水倒入钢包并由天车和台车运送到相应的精炼设备调整钢水成分和温度, 进行深脱碳、去硫和去除杂质等处理, 由普通的钢水变成优质钢水.最后, 钢水由台车和行车吊运到指定的连铸机并通过钢包的下水口注入中间包, 通过中间包不断进入结晶器振动冷却后形成板坯.图 1所示为中国某炼钢厂的生产工艺过程, 该生产包括5个加工设备组, 即转炉LD加工设备组、真空循环脱气法精炼炉(Ruhrstahl Heraeus process, RH)加工设备组、粗真空钢包精炼设备(Ladle furnace process, LF)加工设备组、喷吹精炼炉(Injection refining with temperature raising capability, IR-UT)加工设备组和连铸机设备组(Continuous caster, CC), 每个加工设备组均有多台功能相同的加工设备.在炼钢-连铸生产过程中, 钢水的钢种决定了其生产工艺路线.图 1所示是较为主要的三种钢水的生产工艺路线, 均按照1→2→3→4→5的顺序进行加工.图 1(c)生产工艺路线中的2和4经过的加工设备组相同, 其生产工艺路线属于可重入生产线[20], 这种可重入生产线使得每台RH设备需要加工的钢水数量大幅增加, 增加了钢水在RH设备上的竞争程度, 加大了生产调度的复杂性和调度计划编制的难度.图 1所示包含三种生产工艺路线的调度问题不同于job shop/flow shop/柔性job shop/混合flow shop等调度问题, 是一类特殊的复杂生产调度问题.

    图 1  中国某炼钢厂的生产工艺过程
    Fig. 1  Production process of steelmaking and continuous casting

    在炼钢-连铸生产过程中, 一台转炉内冶炼的一炉钢水, 冶炼后被倒入一个钢包中, 经钢包载运到精炼设备进行精炼, 然后经钢包载运到连铸机进行浇铸.该炉钢水的整个生产过程称之为一个炉次.同一炉次中的钢水具有相同的钢水等级, 且钢水等级决定了炉次的精炼方式.炉次在一个阶段上的一次加工称为炉次的一个操作, 其为炼钢-连铸生产过程中的最小加工单元.在一台连铸机上按照工艺约束不间断连续浇铸的一批炉次的一个有序集合称之为一个浇次.炼钢-连铸生产调度的任务是为每个炉次在每个阶段的加工选择一台加工设备, 并且确定其在加工设备上的开工时间和完工时间.图 2所示为3个炉次的炼钢-连铸生产调度计划甘特图, 纵轴为设备列表, 横轴是时间坐标轴, 每个长方形长度代表炉次在设备上的处理时间长度.该生产调度计划包含3个炉次, 即炉次1、炉次2和炉次3, 且这3个炉次在连铸机上连续浇铸构成一个浇次.每个炉次均经过1LD、1RH、1LF和1CC 4个阶段的加工, 即每个炉次包括4个操作.在进行炼钢-连铸生产调度计划编制时, 同一浇次中相邻炉次在连铸机上必须连续浇铸, 炉次的各个操作必须按照生产工艺路径规定的先后顺序依次进行加工, 同一台设备上加工的相邻操作之间不能出现作业时间冲突, 并且炉次在设备上的处理时间不能小于设备最小处理时间, 也不能大于设备最大处理时间.

    图 2  炼钢–连铸生产调度计划甘特图
    Fig. 2  Gantt graph of production plan

    在炼钢-连铸生产过程中, 转炉冶炼时所需的铁水原料是从高炉冶炼得到的铁水经过混铁车运输到炼钢厂后倒入铁水包, 再从铁水包中倒入转炉中得到的.在混铁车运输铁水过程中, 铁水需要经过前扒渣、脱硫、后扒渣等工艺处理.在此过程中, 由于操作工人的熟练程度、环境参数等随机因素的影响, 使得到达炼钢厂的铁水倒入转炉进行冶炼的开始时间晚于炼钢-连铸生产调度计划中的炉次开始时间, 从而使得炉次在转炉上出现开工时间延迟, 导致初始调度计划发生连铸断浇或者炉次作业时间冲突而无法执行.本文研究的重调度问题就是当某个炉次在转炉的开工时间发生延迟导致初始调度计划发生连铸断浇或者炉次作业时间冲突时, 根据初始调度计划的执行情况, 对初始调度计划中还未完工的炉次进行调整, 保证调度计划的可行性.

    重调度时的已知信息包括: 1) 初始调度计划中浇次个数, 以及每个浇次所在的连铸机; 2) 初始调度计划中每个浇次包含的炉次数, 以及这些炉次在浇次内的先后加工顺序; 3) 初始调度计划中每个炉次的操作总数, 以及每个操作的加工设备类型; 4) 初始调度计划中每个操作的加工设备, 以及在设备上的开工时间和完工时间; 5) 每类设备的最小处理时间、标准处理时间和最大处理时间; 6) 设备之间的运输时间; 7) 操作在设备上的加工状态:包括已完工、正在加工和未开工; 8) 在转炉上发生开工时间延迟的操作, 以及该操作在转炉设备上的实际开工时间.

    重调度时需要考虑的因素包括: 1) 已完工操作或者正在加工操作的加工设备在重调度时不能进行改变; 2) 已完工操作或者正在加工操作的开工时间在重调度时不能进行改变; 3) 已完工操作的完工时间在重调度时不能进行改变; 4) 操作必须在指定设备类型的设备上加工; 5) 未开工操作的开工时间和完工时间, 以及正在加工操作的完工时间必须大于重调度时刻.

    $i$ :浇次序号, $i=1, 2, \cdots, N$ , $N$ 为浇次总个数;

    $j$ :炉次序号, $j=1, 2, \cdots, S_{i}$ ,

    $S_{i}$ 为第 $i$ 个浇次的炉次总个数;

    $L_{ij}$ :第 $i$ 个浇次中在连铸机上第 $j$ 个浇铸的炉次, $i=1, 2, \cdots, N$ , $j=1, 2, \cdots, S_{i}$ ;

    $k$ :操作序号, $k=1, 2, \cdots, \varepsilon_{ij}$ , $\varepsilon_{ij}$ 为第 $i$ 个浇次中在连铸机上第 $j$ 个浇铸的炉次的操作总个数;

    $o_{ijk}$ :第 $i$ 个浇次中在连铸机上第 $j$ 个浇铸的炉次的第 $k$ 个加工的操作, $i=1, 2, \cdots, N$ , $j=1, 2, \cdots, S_{i}$ , $k=1, 2, \cdots, \varepsilon_{ij}$ ;

    $L_{i^{\ast}j^{\ast}}$ :发生转炉开工时间延迟的炉次;

    $\Omega^{0}$ :初始调度计划中的所有炉次集合;

    $\Omega$ :连铸机上未完工的所有炉次集合, 为重调度的炉次对象;

    $\Pi$ :所有设备集合, $\Pi=\{1, 2, \cdots, M\}$ ;

    $m$ :设备序号, $m\in\Pi$ ;

    $g$ :设备类型, $g=1, 2, \cdots, G$ , $G$ 为设备类型的总个数;

    $\Pi_{g}$ :类型 $g$ 的所有设备集合,

    $|\Pi_{g}|$ 表示类型 $g$ 的设备总个数;

    $p_{ijk}^{U}$ :第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的最大处理时间;

    $p_{ijk}^{B}$ :第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的理想处理时间;

    $p_{ijk}^{L}$ :第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的最小处理时间;

    $T_{ml}$ :设备 $m$ 与设备 $l$ 之间的运输时间, $m, l\in\Pi$ ;

    $\beta_{ijk}$ :第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的加工状态; $\beta_{ijk}=0$ 表示操作为未开工状态, $\beta_{ijk}=1$ 表示操作为正在加工状态, $\beta_{ijk}=2$ 表示操作为已完工状态;

    $t_{r}$ :扰动事件发生后的重调度开始时间;

    $\sigma_{ijk}^{0}$ :初始调度计划中第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的加工设备类型, $\sigma_{ijk}^{0}\in\{1, 2, \cdots, G\}$ ;

    $s_{ijk}^{0}$ :初始调度计划中第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的开工时间;

    $e_{ijk}^{0}$ :初始调度计划中第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的完工时间;

    $m_{ijk}^{0}$ :初始调度计划中第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的加工设备;

    $s_{ijk}^{\ast}$ :初始调度计划中第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的实际开工时间.

    $x_{ijk}$ :第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的开工时间, 为整数变量, $L_{ij}\in\Omega$ ;

    $y_{ijk}$ :第 $i$ 个浇次的第 $j$ 个炉次的第 $k$ 个操作的完工时间, 为整数变量, $L_{ij}\in\Omega$ ;

    $ \begin{align*} z_{ijk}^{m}=\left\{\begin{array}{ll} 1, & \mbox{操作}~o_{ijk}~\mbox{在设备$m$上加工}\\ 0, & \mbox{其他} \end{array}\right. \end{align*} $

    钢水温度是炼钢过程中需要重点控制的工艺参数之一, 对保证连铸生产过程顺利进行、降低原材料和能量消耗、提高铸坯质量均有很大影响.若钢水温度过低则需要通过延长钢水在原精炼设备上的处理时间, 甚至是增加精炼设备来进行升温处理, 从而会增加能耗和物耗, 加长生产周期, 严重影响生产效率.所以在对重调度炉次集合 $\Omega$ 中的炉次进行重调度时必须严格控制炉次在炼钢-连铸生产过程中各工序间的等待时间, 使其要尽量的小.即重调度过程中对 $\Omega$ 中的炉次 $L_{ij}$ 在阶段 $k$ 的开工时间 $x_{ijk}$ 与在阶段 $k-1$ 的完工时间 $y_{i, j, k-1}$ , 以及设备间运输时间 $T_{m_{i, j, k-1}, m_{ijk}}$ 的差值尽量最小, 即建立如下性能指标:

    $ \begin{align} {\rm min}~~\sum\limits_{L_{ij}\in\Omega}\sum\limits_{k=2}^{\varepsilon_{ij}} (x_{ijk}-y_{i, j, k-1}-T_{m_{i, j, k-1}, m_{ijk}})~~ \end{align} $

    (1)

    1)  同一浇次内炉次必须按照浇铸顺序在连铸机上满足连续浇铸

    对于连铸机来说, 每开启一次需要支出电费、设备调整时间和工具(结晶器、中间包)消耗和辅助材料消耗, 成本很高, 这就需要有更多的炉次在同一连铸机上连续浇铸, 以降低总成本费用.因此, 为了满足同一浇次内炉次在连铸机上连续浇铸, 必须保证 $\Omega$ 中的炉次 $L_{ij}$ 在连铸机上的开工时间 $x_{i, j, \varepsilon_{ij}}$ 与其前一个炉次 $L_{i, j-1}$ 在连铸机上的完工时间 $y_{i, j-1, \varepsilon_{i, j-1}}$ 之间的差值 $x_{i, j, \varepsilon_{ij}}-y_{i, j-1, \varepsilon_{i, j-1}}$ 小于等于 $L_{i, j-1}$ 在连铸机上处理时间的最大可延长值 $p_{i, j-1, \varepsilon_{i, j-1}}^{U}-(y_{i, j-1, \varepsilon_{i, j-1}}-x_{i, j-1, \varepsilon_{i, j-1}})$ , 即保证下式成立:

    $ \begin{align} &x_{i, j, \varepsilon_{ij}}-y_{i, j-1, \varepsilon_{i, j-1}} \leq p_{i, j-1, \varepsilon_{i, j-1}}^{U}- & \notag\\ &\quad(y_{i, j-1, \varepsilon_{i, j-1}}-x_{i, j-1, \varepsilon_{i, j-1}}), ~~~ L_{i, j-1}, L_{ij}\in\Omega \end{align} $

    (2)

    2)  同一台设备上加工的不同炉次之间不能出现作业时间冲突约束

    由于炼钢-连铸生产过程属于非抢占式加工, 即炉次在设备上加工时不允许其他炉次进行抢占, 并且炉次一旦开始加工则不允许中断, 直到加工结束为止.同一个设备上加工的相邻两个炉次, 必须等到前一个炉次在该设备上加工结束之后才能开始下一个炉次的加工, 即同一个设备上加工的不同炉次之间不能出现作业时间冲突.

    由于每个炉次在连铸机上的先后浇铸顺序已知, 则可知连铸机上炉次 $L_{ij}$ 与紧后炉次为 $L_{i, j+1}$ 不能产生作业时间冲突的约束可以精确表达为

    $ \begin{align} x_{i, j+1, \varepsilon_{i, j+1}}-y_{i, j, \varepsilon_{ij}} \geq 0, ~~~ L_{ij}, L_{i, j+1}\in\Omega \end{align} $

    (3)

    由于精炼工序和转炉工序均存在多台相同功能的加工设备, 使得炉次在这些工序上具体在哪台设备上加工不确定, 从而进一步导致某台设备上加工的前后相邻炉次不确定, 使得设备上相邻炉次不能产生作业时间冲突的约束无法进行精确数学描述.令与炉次 $L_{ij}$ 在同一设备上加工的炉次为 $L_{i_{1}, j_{1}}$ , $L_{i_{1}, j_{1}}$ 与 $L_{ij}$ 不能发生作业冲突描述如下:

    $ \begin{align} &{\rm max}\{x_{ijk}, x_{i_{1}, j_{1}, k_{1}}\}-{\rm min}\{y_{ijk}, y_{i_{1}, j_{1}, k_{1}}\} \geq 0, & \notag\\ &\quad L_{ij}, L_{i_{1}, j_{1}}\in\Omega \end{align} $

    (4)

    3)  炉次加工顺序约束:炉次加工的各个阶段必须按照生产工艺路径规定的先后顺序依次加工

    炉次 $L_{ij}$ 生产工艺路径由工艺部门事先确定, 在生产过程中每个炉次的加工必须严格按照规定的生产工艺路径进行.炉次 $L_{ij}$ 在其生产工艺路径中的后一个阶段的加工必须等到其在前一个阶段加工结束之后才能开始, 也就是说, $L_{ij}$ 在阶段 $k$ 的开工时间 $x_{ijk}$ 与在阶段 $k-1$ 的完工时间 $y_{i, j, k-1}$ , 以及设备间运输时间 $T_{m_{i, j, k-1}, m_{ijk}}$ 的差值必须大于或等于零, 即:

    $ \begin{align} &x_{ijk}-y_{i, j, k-1}-T_{m_{i, j, k-1}, m_{ijk}} \geq 0, & \notag\\ &\quad L_{ij}\in\Omega, k=2, \cdots, \varepsilon_{ij} \end{align} $

    (5)

    4)  炉次在已完工阶段或者正在加工阶段的加工设备约束

    对于炉次正在加工的阶段或者是已完工的工序不再调整其加工设备, 仍然为初始调度计划中的加工设备, 即:

    $ \begin{align} &z_{ijk}^{m_{ijk}^{0}} = 1, ~L_{ij}\in\Omega, k=1, \cdots, \varepsilon_{ij}-1, \\ &\quad\beta_{ijk}=1, 2 \end{align} $

    (6)

    5)  炉次在设备上的处理时间约束

    炉次在设备上的处理时间包括允许最小处理时间、标准处理时间和允许最大处理时间.炉次 $L_{ij}$ 在设备上的处理时间必须小于等于允许最大处理时间 $p_{ijk}^{U}$ 和大于等于允许最小处理时间 $p_{ijk}^{L}$ , 即:

    $ \begin{align} p_{ijk}^{L} \leq y_{ijk}-x_{ijk} \leq p_{ijk}^{U}, ~L_{ij}\in\Omega, k=1, \cdots, \varepsilon_{ij} \end{align} $

    (7)

    6)炉次在每个阶段的加工设备类型约束

    炉次在每个阶段必须在指定的加工设备类型上加工, 且只能在一台设备上加工:

    $ \begin{align} \sum\limits_{m\notin\Pi_{\sigma_{ijk}^{0}}} z_{ijk}^{m} = 0, ~~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij} \end{align} $

    (8)

    $ \begin{align} \sum\limits_{m\in\Pi_{\sigma_{ijk}^{0}}} z_{ijk}^{m} = 1, ~~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij} \end{align} $

    (9)

    7)炉次在连铸工序的加工设备约束

    炼钢-连铸的每个浇次均由计划部门指定了其在连铸工序加工的连铸机设备, 在重调度时不能进行改变:

    $ \begin{align} z_{i, j, \varepsilon_{ij}}^{m_{i, j, \varepsilon_{ij}}^{0}} = 1, ~~~~L_{ij}\in\Omega \end{align} $

    (10)

    8)同一浇次内的炉次加工顺序约束

    每个浇次内的炉次加工顺序由计划部门指定, 在重调度时不能进行改变:

    $ \begin{align} x_{i, j+1, \varepsilon_{i, j+1}}-y_{i, j, \varepsilon_{ij}} \geq 0, ~~~L_{ij}\in\Omega \end{align} $

    (11)

    9)炉次在设备上正在加工或者已完工时的开工时间约束

    当炉次在设备上正在加工或者已完工时, 其开工时间在重调度时不能再进行改变, 其值等于初始计划中的开工时间:

    $ \begin{align} &x_{ijk} - s_{ijk}^{0} = 0, ~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij}, \notag\\ &\quad \beta_{ijk}=1, 2 \end{align} $

    (12)

    10)  炉次在设备上已完工时的完工时间约束

    当炉次在设备上已完工时, 其完工时间在重调度时不能再进行改变, 其值等于初始计划中的完工时间:

    $ \begin{align} &y_{ijk} - e_{ijk}^{0} = 0, ~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij}, \notag\\ &\quad \beta_{ijk}=2 \end{align} $

    (13)

    11)决策变量取值约束

    $ \begin{align} x_{ijk} \geq t_{r}, ~~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij}, \ \beta_{ijk}=0 \end{align} $

    (14)

    $ \begin{align} y_{ijk} \geq t_{r}, ~~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij}, \ \beta_{ijk}=0, 1 \end{align} $

    (15)

    $ \begin{align} z_{ijk}^{m} \in \{0, 1\}, ~~~L_{ij}\in\Omega, \ k=1, \cdots, \varepsilon_{ij} \end{align} $

    (16)

    根据上述分析, 建立如下的重调度模型(记为 $MM$ ):

    $ \begin{array}{l} \;\;\;\;{\rm{Object:}}式\left( 1 \right)\\ {\rm{s}}{\rm{. t}}{\rm{.:}}式\left( 2 \right) \sim 式\left( {16} \right) \end{array} $

    炼钢-连铸生产重调度模型 $MM$ 的设备指派变量 $z_{ijk}^{m}$ 为0-1变量, 开工时间 $x_{ijk}$ 和完工时间 $y_{ijk}$ 为整数变量, 建立的炼钢-连铸生产重调度模型为混合整数规划模型.

    对于混合整数规划模型 $MM$ , 随着调度问题规模的增大, 传统最优化方法的求解难度将急剧增加, 往往不能适应生产实际对实时性的要求.遗传算法等智能方法对于大规模的组合优化问题, 搜索空间大, 搜索时间较长, 往往会出现早熟收敛的情况, 并且对初始种群很敏感, 初始种群选择不好会影响解的质量和算法效率.为了便于炼钢-连铸生产重调度混合整数规划模型求解, 本文分为两个阶段对模型 $MM$ 进行求解.第一阶段以混合整数规划模型 $MM$ 的设备指派变量 $z_{ijk}^{m}$ 为决策变量, 对混合整数规划模型 $MM$ 中的同一台设备上加工的不同炉次之间不能出现作业时间冲突约束进行松弛, 即不考虑式(3)和式(4)的约束, 而将模型 $MM$ 的其他约束作为约束条件建立设备指派子模型 $MM-1$ , 采用启发式方法对设备指派子模型 $MM-1$ 进行求解得到设备指派变量 $z_{ijk}^{m}$ 值, 该解即作为模型 $MM$ 的设备指派变量 $z_{ijk}^{m}$ 值.第二阶段将 $z_{ijk}^{m}$ 值代入模型 $MM$ , 此时因所有的 $z_{ijk}^{m}$ 值均已知, 所以此时模型 $MM$ 其实是以开工时间 $x_{ijk}$ 和完工时间 $y_{ijk}$ 为决策变量, 且部分约束条件也因 $z_{ijk}^{m}$ 值已知且满足约束而不必再考虑, 使得模型 $MM$ 考虑的约束条件也随之减少.本文将此时的模型 $MM$ 记为作业时间决策子模型 $MM-2$ , 采用启发式方法对模型 $MM-2$ 进行求解得到决策变量 $x_{ijk}$ 和 $y_{ijk}$ 值, 该解即作为模型 $MM$ 的作业时间变量 $x_{ijk}$ 和 $y_{ijk}$ 值.通过上述两个阶段求解最终得到混合整数规划模型 $MM$ 的设备决策变量 $z_{ijk}^{m}$ 值和作业时间变量 $x_{ijk}$ 和 $y_{ijk}$ 值.为此, 本文提出图 3所示的开工时间延迟下的炼钢-连铸生产重调度策略:

    图 3  开工时间延迟扰动下的炼钢–连铸生产重调度策略
    Fig. 3  Rescheduling strategy for the steelmaking and continuous casting

    1) 炉次开工延迟时间计算:在生产进行过程中, 一旦有炉次在转炉上开始加工, 则立即获取炉次信息、设备信息、炉次实际开工时间, 根据炉次实际开工时间和炉次在初始调度计划中的开工时间计算炉次开工时间延迟值.

    2) 重调度判断:根据炉次在转炉设备上的开工时间延迟值, 判断初始调度计划是否产生了连铸断浇或者是炉次作业时间冲突, 从而确定是否需要对初始调度计划进行重调度.

    3) 重调度炉次选择:根据炉次在连铸机上的开工时间, 从初始调度计划中将在连铸机上仍未完工的炉次选取出来作为重调度对象.

    4) 炉次设备决策变量求解:建立设备指派子模型, 采用启发式方法对模型求解, 求得炉次在各阶段的加工设备.

    5) 炉次作业时间决策变量求解:建立作业时间决策子模型, 采用启发式方法对模型求解, 求得炉次在设备上的开工时间和完工时间.

    当初始调度计划 $\Omega^{0}$ 中的某个炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉设备上开工时, 则获取该炉次在转炉设备上的实际开工时间 $s_{i^{\ast}j^{\ast}1}^{\ast}$ , 并根据炉次 $L_{i^{\ast}j^{\ast}}$ 在初始调度计划中的开工时间 $s_{i^{\ast}j^{\ast}1}^{0}$ 计算炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉设备上的开工延迟时间 $\Delta{T}$ :

    $ \begin{align} \Delta{T} = s_{i^{\ast}j^{\ast}1}^{\ast} - s_{i^{\ast}j^{\ast}1}^{0} \end{align} $

    (17)

    当炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉设备上开工延迟 $\Delta{T}$ 时, 因炉次 $L_{i^{\ast}j^{\ast}}$ 要满足其在各工序的先后加工顺序约束, 即 $L_{i^{\ast}j^{\ast}}$ 在其生产工艺路径中在阶段 $k$ 的开工时间 $x_{i^{\ast}j^{\ast}k}$ 与在阶段 $k-1$ 的完工时间 $y_{i^{\ast}, j^{\ast}, k-1}$ , 以及设备间运输时间 $T_{m_{i^{\ast}, j^{\ast}, k-1}^{0}, m_{i^{\ast}j^{\ast}k}^{0}}$ 的差值必须大于或等于零:

    $ \begin{align} &x_{i^{\ast}j^{\ast}k}-y_{i^{\ast}, j^{\ast}, k-1}-T_{m_{i^{\ast}, j^{\ast}, k-1}^{0}, m_{i^{\ast}j^{\ast}k}^{0}} \geq 0, & \notag\\ &\quad k=2, \cdots, \varepsilon_{i^{\ast}j^{\ast}} \end{align} $

    (18)

    为此, 根据炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉设备上开工延迟值 $\Delta{T}$ 重新计算炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉设备上的完工时间:

    $ \begin{align} y_{i^{\ast}j^{\ast}1} = x_{i^{\ast}j^{\ast}1} + p_{i^{\ast}j^{\ast}1}^{B} \end{align} $

    (19)

    然后计算炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉后续工序设备上的开工时间和完工时间:

    $ \begin{align} &x_{i^{\ast}j^{\ast}k} = y_{i^{\ast}, j^{\ast}, k-1} + T_{m_{i^{\ast}, j^{\ast}, k-1}^{0}, m_{i^{\ast}j^{\ast}k}^{0}}, & \notag\\&\quad k=2, \cdots, \varepsilon_{i^{\ast}j^{\ast}} \end{align} $

    (20)

    $ \begin{align} y_{i^{\ast}j^{\ast}k} = x_{i^{\ast}j^{\ast}k} + p_{i^{\ast}j^{\ast}k}^{B}, ~~k=2, \cdots, \varepsilon_{i^{\ast}j^{\ast}} \end{align} $

    (21)

    此时炉次 $L_{i^{\ast}j^{\ast}}$ 在各工序的开工时间 $x_{i^{\ast}j^{\ast}k}$ 和完工时间 $y_{i^{\ast}j^{\ast}k}$ 为开工延迟 $\Delta{T}$ 后更新的时间, 而其他炉次 $L_{ij}~(L_{ij}\in\Omega^{0}, L_{ij}\neq L_{i^{\ast}j^{\ast}})$ 的作业时间仍为初始调度计划中的开工时间 $s_{ijk}^{0}$ 和完工时间 $e_{ijk}^{0}$ .初始调度计划中, 浇次 $i^{\ast}$ 在连铸机上的炉次加工顺序集合 $I_{i^{\ast}}$ 已知, 且 $I_{i^{\ast}}=\{L_{i^{\ast}1}, L_{i^{\ast}2}, \cdots, L_{i^{\ast}, S_{i^{\ast}}}\}$ .由此可知炉次 $L_{i^{\ast}j^{\ast}}$ 在连铸机上的紧前炉次为 $L_{i^{\ast}, j^{\ast}-1}$ .当 $L_{i^{\ast}j^{\ast}}$ 更新后的在连铸机上的开工时间 $x_{i^{\ast}, j^{\ast}, \varepsilon_{i^{\ast}j^{\ast}}}$ 与 $L_{i^{\ast}, j^{\ast}-1}$ 在连铸机上的完工时间 $e_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}$ 之间发生断浇时, 则需要对初始调度计划进行重调度, 以保证连续浇铸.当炉次 $L_{i^{\ast}, j^{\ast}-1}$ 和 $L_{i^{\ast}j^{\ast}}$ 在连铸机上的间隔时间, 即 $L_{i^{\ast}j^{\ast}}$ 在连铸机上的开工时间 $x_{i^{\ast}, j^{\ast}, \varepsilon_{i^{\ast}, j^{\ast}}}$ 与 $L_{i^{\ast}, j^{\ast}-1}$ 在连铸机上的完工时间 $e_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}$ 之间的差值 $x_{i^{\ast}, j^{\ast}, \varepsilon_{i^{\ast}j^{\ast}}}-e_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}$ , 大于 $L_{i^{\ast}, j^{\ast}-1}$ 在连铸机上处理时间的最大可延长值 $p_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{U}-(e_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}-s_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}) $ 时, 将无法通过延长 $L_{i^{\ast}, j^{\ast}-1}$ 在连铸机上的处理时间来将间隔时间消除为零, 则产生断浇.即当下式成立时:

    $ \begin{align} &x_{i^{\ast}, j^{\ast}, \varepsilon_{i^{\ast}j^{\ast}}}- e_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}> p_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{U}- \notag\\& \quad (e_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}-s_{i^{\ast}, j^{\ast}-1, \varepsilon_{i^{\ast}, j^{\ast}-1}}^{0}) \end{align} $

    (22)

    $L_{i^{\ast}, j^{\ast}-1}$ 与 $L_{i^{\ast}j^{\ast}}$ 在连铸机上发生断浇, 需要进行重调度.

    另外, 由于炼钢-连铸生产过程属于非抢占式加工, 即炉次在设备上加工时不允许其他炉次进行抢占, 因此同一个设备上加工的相邻两个炉次, 必须等到前一个炉次在该设备上加工结束之后才能开始下一个炉次的加工, 即同一台设备上加工的不同炉次之间不能出现作业时间冲突.初始调度计划中, 炉次 $L_{i^{\ast}j^{\ast}}$ 在设备 $k_{g}$ 加工的紧后炉次为已知信息, 令紧后炉次为 $L_{i_{1}j_{1}}$ .当炉次 $L_{i^{\ast}j^{\ast}}$ 在设备上更新后的作业时间和 $L_{i_{1}j_{1}}$ 在初始调度计划中的作业时间 $s_{i_{1}j_{1}k}^{0}$ 和 $e_{i_{1}j_{1}k}^{0}$ 发生冲突时, 则需要对初始调度计划进行重调度, 以保证同一台设备上加工的不同炉次之间不能出现作业时间冲突.即当下式成立时:

    $ \begin{align} y_{i^{\ast}j^{\ast}k} - s_{i_{1}j_{1}k}^{0} > 0 \end{align} $

    (23)

    $L_{i^{\ast}j^{\ast}}$ 和 $L_{i_{1}j_{1}}$ 在设备 $k_{g}$ 上的作业时间发生冲突, 需要进行重调度.

    综上所述, 当炉次 $L_{i^{\ast}j^{\ast}}$ 在转炉设备上开工延迟 $\Delta{T}$ 时, 若 $L_{i^{\ast}, j^{\ast}-1}$ 与 $L_{i^{\ast}j^{\ast}}$ 在连铸机上发生断浇, 即式(22)成立, 或者 $L_{i^{\ast}j^{\ast}}$ 和 $L_{i_{1}j_{1}}$ 在设备 $k_{g}$ 上的作业时间发生冲突, 即式(23)成立时, 则需要对初始调度计划进行重调度.

    当炉次在转炉开工时间发生延迟导致连铸断浇或者炉次作业时间冲突时需要进行重调度, 此时初始调度计划中炉次的加工状态分为未开工、正在加工和已完工.炉次未开工表示炉次的任何操作均未开始加工.炉次正在加工表示炉次至少有一个操作已开始加工、且炉次在连铸工序未浇铸结束.炉次已完工表示炉次的所有操作都加工结束.对于已完工炉次不再进行重调度, 只对那些未完工炉次在追求更好调度指标下, 通过调整其加工设备和作业时间来应对转炉开工时间延迟所带来的影响, 保证生产顺畅进行.因此重调度对象为未完工炉次, 即发生转炉开工时间延迟时初始调度计划中未开工的炉次和正在加工的炉次.令 $\Omega$ 为初始调度计划集合 $\Omega^{0}$ 中需要进行重调度的炉次集合, 则其重调度炉次选择算法具体如下:

    步骤1.  获取初始调度计划集合 $\Omega^{0}$ , 以及 $\Omega^{0}$ 中炉次在连铸工序的加工状态 $\beta_{i, j, \varepsilon_{ij}}$ ; 令重调度炉次集合 $\Omega=\phi$ .

    步骤2.  令 $i=1$ .

    步骤3.  令 $j=1$ .

    步骤4.  若 $\beta_{i, j, \varepsilon_{ij}}=0$ , 则 $\Omega=\Omega+\{L_{ij}\}$ .

    步骤5.  若 $j=S_{i}$ , 转至下一步; 否则, $j=j+1$ , 转至步骤4.

    步骤6.  若 $i=3$ , 转至下一步; 否则, $i=i+1$ , 转至步骤3.

    步骤7.  算法结束, 得到重调度炉次集合 $\Omega$ .

    4.4.1   设备指派子模型建立

    若将炉次 $L_{ij}$ 指派到设备进行加工, 在设备上与 $L_{ij}$ 可能发生冲突的炉次记为 $L_{i_{1}, j_{1}}$ .令 $F_{m}$ 为炉次 $L_{ij}$ 和炉次 $L_{i_{1}, j_{1}}$ 在设备 $m$ 上的作业时间冲突值:

    $ \begin{align} &F_{m} = {\rm min}\{y_{ijk}, y_{i_{1}, j_{1}, k_{1}}\} - {\rm max}\{x_{ijk}, x_{i_{1}, j_{1}, k_{1}}\}, \notag\\ &\quad L_{ij}, L_{i_{1}, j_{1}}\in\Omega \end{align} $

    (24)

    当 $F_{m} > 0$ 时, 炉次 $L_{ij}$ 和炉次 $L_{i_{1}, j_{1}}$ 在设备上发生作业时间冲突.为了满足同一台设备上加工的不同炉次之间不出现作业时间冲突约束, 必须通过炉次作业时间平移对作业时间冲突值 $F_{m}$ 进行解消, 可知解消冲突后产生的等待时间值正好等于 $F_{m}$ .因此本文将模型 $MM$ 的以等待时间尽量最小目标式(1)转换为以炉次作业时间冲突最小作为设备指派子模型 $MM-1$ 的目标, 以模型 $MM$ 的设备指派变量 $z_{ijk}^{m}$ 作为设备指派子模型 $MM-1$ 的决策变量, 对混合整数规划模型 $MM$ 中的同一台设备上加工的不同炉次之间不能出现作业时间冲突约束进行松弛, 即不考虑式(3)和式(4)的约束, 而将模型 $MM$ 的其他约束作为模型约束条件, 并将模型 $MM$ 中的变量 $x_{ijk}$ 和 $y_{ijk}$ 分别采用中间变量 $X_{ijk}$ 和 $Y_{ijk}$ 表示, 建立如下的设备指派子模型 $MM-1$ :

    $ \begin{align} {\rm min}~~\sum\limits_{m=1}^{M}F_{m} \end{align} $

    (25)

    s. t.

    $ \begin{array}{l} 式(5) \sim式(13), 式(16) \end{array} $

    模型 $MM-1$ 因没有考虑同一台设备上加工的不同炉次之间不能出现作业时间冲突约束, 因此在求解得到决策变量 $z_{ijk}^{m}$ 时, 相应得到的中间变量 $X_{ijk}$ 和 $Y_{ijk}$ 可能会存在着时间冲突.对于模型 $MM-1$ 的求解, 本文采用图 4所示的启发式方法进行求解:

    图 4  炉次设备决策变量求解
    Fig. 4  Solving the decision variables of charge equipment
    4.4.2   基于炉次加工状态确定设备决策的炉次阶段

    基于炉次加工状态确定设备决策的炉次阶段是根据炉次在各阶段的加工状态确定炉次可以进行设备调整的加工阶段:对于炉次正在加工的阶段或者是已完工的阶段不再调整其加工设备, 仍然为初始调度计划中的加工设备; 对于炉次未开工的阶段, 则对其进行设备决策变量的确定.令 $\alpha_{ijk}$ 为炉次 $L_{j}$ 在阶段 $k$ 是否可以进设备调整的变量:若可以进行设备调整, 则 $\alpha_{ijk}=1$ ; 否则, $\alpha_{ijk}=0$ .

    1)  炉次在连铸工序的加工设备(连铸机)已经指定, 在重调度过程中不能改变, 仍然为初始调度计划中的连铸机:

    $ \alpha_{i, j, \varepsilon_{ij}}=0, \;\;L_{ij}\in\Omega $

    2)  当炉次在某工序正在加工或者已经完成加工时, 重调度不能再对该炉次在该工序上的加工设备进行改变:

    $ \alpha_{ijk}=0, \;\;L_{ij}\in\Omega, k=1, \cdots, \varepsilon_{ij}-1, \beta_{ijk}=1, 2 $

    3)  当炉次在非连铸工序未开工时, 重调度可以对该炉次在该工序上的加工设备进行调整, 即当炉次炉次 $L_{ij}$ 在阶段 $k (k\neq\varepsilon_{ij})$ 的加工状态 $\beta_{ijk}=0$ 时, 重调度可以对其设备进行重新指派:

    $ \alpha_{ijk}=1, $~$L_{ij}\in\Omega, k=1, \cdots, \varepsilon_{ij}-1, \beta_{ijk}=0 $

    4.4.3   基于炉次开工时间对炉次设备决策顺序排序

    在炼钢-连铸生产调度过程中, 调度工件为高温钢水且加工设备均为大型生产设备.在发生转炉开工时间延迟扰动时, 正在加工的高温钢水对温度要求极高, 对其调整不及时则会使得钢水温度下降导致重新升温而增加能耗和物耗, 并严重影响生产效率.因此在进行重调度时, 对重调度炉次对象中已开工的炉次首先进行重调度, 然后再对没有开始生产的炉次进行调整, 从而一方面保证对处于加工状态炉次调整的及时性; 另一方面尽量减少没有开始生产炉次的调整对处于加工状态炉次的影响.

    已开工炉次由于其存在着正在加工或已完工的操作, 这些操作在工序上的加工设备和开工时间不能再被修改, 因此在对已开工炉次的未开工操作进行作业时间调整时, 只能将其作业时间向后移动以满足生产约束.所以本文在对已开工炉次进行重调度时, 按照所有已开工炉次的各个操作的开工时间由早到晚的顺序依次对操作的设备决策变量求解.令 $O^{1}$ 为 $\Omega$ 中已开工炉次的所有操作按照开工时间由早到晚的顺序排序得到的操作集合.

    对于未开工炉次, 因存在着同一浇次内相邻炉次连续浇铸约束, 所以必须保证未开工炉次在连铸机上的操作的开工时间与同一连铸机上加工的前一个操作的完工时间相等.在对未开工炉次进行重调度时, 首先, 根据连续浇铸约束计算未开工炉次在连铸机上的开工时间和完工时间; 然后, 在此基础上反向计算出未开工炉次在精炼阶段和在转炉阶段的开工时间和完工时间; 最后, 根据未开工炉次在精炼阶段和在转炉阶段的开工时间按照从晚到早的顺序对炉次操作依次进行设备决策变量求解.令 $O^{2}$ 为 $\Omega$ 中未开工炉次的所有操作按照开工时间由晚到早的顺序排序得到的操作集合.

    4.4.4   基于冲突最小和运输时间最小规则求解炉次设备指派变量

    炉次设备指派变量求解是根据炉次设备决策顺序 $O=O^{1}+O^{2}$ 逐个为炉次加工阶段选择加工设备, 减少炉次在相邻设备间的等待时间.若 $O$ 中的操作 $o_{ijk}$ 的 $\alpha_{ijk}=0$ , 则 $o_{ijk}$ 的加工设备仍然为初始调度计划中的加工设备; 否则, 基于如下规则对其进行设备指派:炉次间作业冲突时间最小规则、运输时间最小规则、加工炉次数最少规则和随机选取规则.

    1)  炉次间作业冲突时间最小

    通过上述分析可知在炉次设备指派变量求解时, 从可以加工炉次的多台设备中, 选取使得炉次作业时间冲突最小的设备为炉次的加工设备, 可以使得炉次在设备上的等待时间尽量最小, 从而满足同一个炉次在相邻设备之间的等待时间尽量最小的性能指标.基于炉次间作业时间冲突最小规则的炉次设备指派变量求解方法就是从多台设备中选择作业冲突时间 $F_{m}$ 最小的设备为 $o_{ijk}$ 的加工设备, 即:

    $ \begin{align} z_{ijk}^{m}=1, ~~~m={\rm arg min}\{F_{m_{1}}|m_{1}\in\Pi_{\sigma_{ijk}^{0}}\} \end{align} $

    (26)

    2)  设备间运输时间最短

    若炉次在各阶段指派的加工设备之间的运输时间越小, 则可以减少炉次钢水在运输过程中的温降, 同时可以使得炉次在车间的流程时间最小, 也会使得炉次作业冲突时间 $F_{m}$ 越小.根据上述分析, 当作业冲突时间 $F_{m}$ 越小时, 可以使得炉次在设备上的等待时间尽量最小, 满足同一个炉次在相邻设备之间的加工等待时间尽量最小的性能指标.基于运输时间最短规则的炉次设备决策变量求解方法为从能够加工的多台设备设备中选择与其前道工序的加工设备运输时间最短的设备作为 $o_{ijk}$ 的加工设备, 即:

    $ \begin{align} z_{ijk}^{m}=1, ~~~m={\rm arg min}\{T_{m_{1}, m_{2}}|m_{1}\in\Pi_{\sigma_{ijk}^{0}}\} \end{align} $

    (27)

    3)  加工炉次数最少规则

    当将炉次指派到加工炉次少的设备上时, 其与其他炉次间发生冲突的可能性较小, 使得炉次在设备上的等待时间尽量小.令 $H_{m}$ 为设备 $m$ 上的加工炉次数.基于加工炉次数最少规则的指派方法为从能够加工操作的设备中选择加工炉次数最少的设备作为 $o_{ijk}$ 的加工设备, 即:

    $ \begin{align} z_{ijk}^{m}=1, ~~~m={\rm arg min}\{H_{m_{1}}|m_{1}\in\Pi_{\sigma_{ijk}^{0}}\} \end{align} $

    (28)

    4)  随机选取规则

    随机选取规则是指在对 $o_{ijk}$ 进行设备指派时, 从多台设备中随机选择一台设备作为 $o_{ijk}$ 的加工设备, 即:

    $ \begin{align} z_{ijk}^{m}=1, ~~~m={\rm random}\{m_{1}|m_{1}\in\Pi_{\sigma_{ijk}^{0}}\} \end{align} $

    (29)

    根据上述设备指派规则, 本文建立如下基于规则优先级的设备指派:冲突时间最小规则、运输时间最短规则、加工炉次数最少规则、随机选取规则.

    4.5.1   作业时间决策子模型建立

    当求得设备决策变量 $z_{ijk}^{m}$ 值并将 $z_{ijk}^{m}$ 值代入模型 $MM$ 时, 此时因所有的 $z_{ijk}^{m}$ 值均已知, 所以此时模型 $MM$ 其实是以开工时间 $x_{ijk}$ 和完工时间 $y_{ijk}$ 为决策变量, 且部分约束条件(式(6)、式(8) $\sim$ 式(10))也因 $z_{ijk}^{m}$ 值已知且满足约束而不必再考虑, 使得模型 $MM$ 考虑的约束条件也随之减少.此时模型 $MM$ 就转换为了作业时间决策子模型 $MM-2$ .当对设备指派子模型 $MM-1$ 求解得到设备决策变量 $z_{ijk}^{m}$ 值后, 炉次在每个阶段的加工设备就已知, 则可以知道在同一设备上加工的炉次.同时根据相应求得的中间变量 $X_{ijk}$ 和 $Y_{ijk}$ 值可以知道同一设备上炉次之间的先后加工顺序.因此式(4)约束可以精确获得.作业时间决策子模型 $MM-2$ 以设备指派子模型 $MM-1$ 求得的每个炉次 $L_{ij}$ 在各阶段的 $z_{ijk}^{m}$ 为已知信息, 以模型 $MM$ 的开工时间 $x_{ijk}$ 和完工时间 $y_{ijk}$ 为决策变量, 以模型 $MM$ 的目标(式(1))为性能指标, 建立如下的模型 $MM-2$ :

    $ 目标: 式(1) $

    $ s. t.:\ 式(2) \sim 式(5), 式(7), 式(11) \sim 式(15) $

    对于模型 $MM-2$ 的求解, 本文采用图 5所示的启发式方法进行求解.

    图 5  炉次作业时间决策变量求解
    Fig. 5  Solving the decision variables of working time of charges

    1)  基于炉次开工时间和完工时间平移启发式方法的作业时间不能冲突约束处理:以等待时间最小为目标, 采用将发生冲突的炉次的开工时间和完工时间平移启发式方法进行冲突解消, 满足炉次作业时间不能冲突约束;

    2)  基于炉次处理时间调整启发式方法的连续浇铸约束处理:当连铸机上出现断浇时, 通过采用调整炉次在连铸机、精炼炉和转炉上的处理时间的启发式方法来消除断浇, 满足连续浇铸约束.

    4.5.2   基于时间平移启发式方法的作业时间不能冲突约束处理

    在对炉次进行设备指派时, 均是按照设备间的标准运输时间计算炉次的理想作业时间, 没有对同一设备上炉次间可能发生的作业时间冲突进行处理.作业时间不能冲突约束处理是对发生作业时间冲突的炉次通过调整其开工时间和完工时间, 使得同一设备上的不同炉次之间不发生作业时间冲突.因为在对处于加工状态的所有炉次进行设备决策顺序排序是按照炉次在各阶段设备上的开工时间从早到晚的顺序进行排序, 而对处于未开工的所有炉次进行设备决策顺序排序是按照炉次在各阶段设备上的开工时间从晚到早的顺序进行排序, 所以对冲突时间的处理也分为以下两种情况:

    1) 对处于加工状态 $(\beta_{ij1}\neq0)$ 的炉次 $L_{ij}$ , 如图 6(a)所示炉次 $L_{ij}$ 的操作 $o_{i, j, k-1}$ 正在加工, 操作 $o_{i_{1}j_{1}k_{1}}$ 和 $o_{ijk}$ 均未开工, 且均安排在同一设备上, 产生的冲突时间用 $F_{m}$ 表示, $F_{m}=Y_{i_{1}j_{1}k_{1}}-X_{ijk}$ .因 $o_{i, j, k-1}$ 正在加工无法被修改开工时间进行平移, 且受到加工顺序约束, 只能将操作向后移动进行冲突解消.如果将 $o_{i_{1}j_{1}k_{1}}$ 作业时间向后平移进行冲突解消, 如图 6(b)所示, 则产生等待时间 $w_{i_{1}j_{1}k_{1}}=Y_{ijk}-X_{i_{1}j_{1}k_{1}}$ ; 如果将 $o_{ijk}$ 作业时间向后平移进行冲突解消, 如图 6(c)所示, 则产生等待时间 $w_{ijk}=Y_{i_{1}j_{1}k_{1}}-X_{ijk}$ , 且 $w_{ijk}=F_{m}$ .因为 $Y_{ijk} > Y_{i_{1}j_{1}k_{1}}$ , $X_{i_{1}j_{1}k_{1}} < X_{ijk}$ , 所以 $Y_{ijk}-X_{i_{1}j_{1}k_{1}} > Y_{i_{1}j_{1}k_{1}}-X_{ijk}$ , 即 $w_{i_{1}j_{1}k_{1}} > w_{ijk}$ .因此, 为了使得炉次操作间的等待时间尽量最小, 即追求 $MM-1$ 的目标(式(1)), 本文在针对此种冲突情况进行解消时, 采用图 6(c)所示的冲突解消方法, 将炉次 $L_{ij}$ 的作业时间向后移动 $F_{m}$ 段时间来消除冲突时间:

    图 6  处于加工状态的炉次作业时间不能冲突约束处理
    Fig. 6  Handling conflict time for charges being processed

    $ \begin{align} x_{ijk}=X_{ijk}+F_{m} \end{align} $

    (30)

    $ \begin{align} y_{ijk}=Y_{ijk}+F_{m} \end{align} $

    (31)

    2)对处于未开工 $(\beta_{ij1}=0)$ 的炉次 $L_{ij}$ , 如图 7(a)所示炉次 $L_{ij}$ 的操作 $o_{i, j, k+1}$ 已完成指派, 操作 $o_{i_{1}j_{1}k_{1}}$ 和 $o_{ijk}$ 均安排在同一设备上, 产生的冲突时间用 $F_{m}$ 表示, $F_{m}=Y_{ijk}-X_{i_{1}j_{1}k_{1}}$ .因 $o_{i, j, k+1}$ 已完成指派, 若将 $o_{i, j, k+1}$ 向后移进行冲突解消, 则会因受到加工顺序约束使得炉次 $L_{ij}$ 在 $o_{i, j, k+1}$ 之后的操作也要向后平移, 从而导致在连铸机上产生断浇时间, 因此不对 $o_{i, j, k+1}$ 进行作业时间移动.如果将 $o_{i_{1}j_{1}k_{1}}$ 作业时间向前平移进行冲突解消, 如图 7(b)所示, 则产生等待时间 $w_{i_{1}j_{1}k_{1}}=Y_{i_{1}j_{1}k_{1}}-X_{ijk}$ ; 如果将 $o_{ijk}$ 作业时间向前平移进行冲突解消, 如图 7(c)所示, 则产生等待时间 $w_{ijk}=Y_{ijk}-X_{i_{1}j_{1}k_{1}}$ , 且 $w_{ijk}=F_{m}$ .因为 $Y_{ijk} < Y_{i_{1}j_{1}k_{1}}$ , $X_{i_{1}j_{1}k_{1}} > X_{ijk}$ , 所以 $Y_{i_{1}j_{1}k_{1}}-X_{ijk} > Y_{ijk}-X_{i_{1}j_{1}k_{1}}$ , 即 $w_{i_{1}j_{1}k_{1}} > w_{ijk}$ .因此, 为了使得炉次操作间的等待时间尽量最小, 即追求 $MM-1$ 的目标(式(1)), 本文在针对此种冲突情况进行解消时, 采用图 7(c)所示的冲突解消方法, 将炉次 $L_{ij}$ 的作业时间向前移动 $F_{m}$ 段时间来消除冲突时间:

    图 7  未开工炉次作业时间不能冲突约束处理
    Fig. 7  Handling conflict time for nor started charges

    $ \begin{align} x_{ijk}=X_{ijk}-F_{m} \end{align} $

    (32)

    $ \begin{align} y_{ijk}=Y_{ijk}-F_{m} \end{align} $

    (33)
    4.5.3   基于炉次处理时间调整启发式方法的连续浇铸约束处理

    连续浇铸约束处理是使得同一连铸机上加工的相邻炉次不发生断浇.炉次 $L_{ij}$ 在连铸机上的开工时间和完工时间分别为 $X_{i, j, \varepsilon_{ij}}$ 和 $Y_{i, j, \varepsilon_{ij}}$ , 前一个炉次 $L_{i, j-1}$ 在连铸机上的开工时间和完工时间分别为 $X_{i, j-1, \varepsilon_{i, j-1}}$ 和 $Y_{i, j-1, \varepsilon_{i, j-1}}$ .当:

    $ \begin{align} &X_{i, j, \varepsilon_{ij}}-Y_{i, j-1, \varepsilon_{i, j-1}}>p_{i, j-1, \varepsilon_{i, j-1}}^{U}-\notag\\& \quad(Y_{i, j-1, \varepsilon_{i, j-1}} - X_{i, j-1, \varepsilon_{i, j-1}})~~L_{i, j-1}, L_{ij}\in\Omega \end{align} $

    (34)

    $L_{ij}$ 与 $L_{i, j-1}$ 之间出现连铸断浇, 仅通过调整 $L_{i, j-1}$ 在连铸机上的处理时间无法消除断浇时间.如果图 8中炉次 $L_{i, j-1}$ 是浇次 $i$ 的第一个炉次, 则可以将操作 $o_{i, j-1, \varepsilon_{i, j-1}}$ 向后平移消除断浇时间, 但会在 $o_{i, j-1, \varepsilon_{i, j-1}}$ 与 $o_{i, j-1, \varepsilon_{i, j-1}-1}$ 之间产生 $X_{i, j, \varepsilon_{ij}}-Y_{i, j-1, \varepsilon_{i, j-1}}$ 大小的等待时间.为了在进行连续浇铸约束处理过程中不新增等待时间, 本文采用基于炉次处理时间调整启发式方法进行连续浇铸约束处理, 主要步骤如下:

    图 8  连续浇铸约束处理
    Fig. 8  Continuous casting constraint processing

    步骤1.  延长炉次 $L_{i, j-1}$ 在连铸机上的处理时间.因为仅通过调整 $L_{i, j-1}$ 在连铸机上的处理时间无法消除断浇时间, 但可以通过调整 $L_{i, j-1}$ 在连铸机上的处理时间来减少断浇时间.即在保持 $L_{i, j-1}$ 在连铸机上开工时间 $X_{i, j-1, \varepsilon_{i, j-1}}$ 不变的基础上, 将 $L_{i, j-1}$ 在连铸机上的处理时间调整到其最大处理时间:

    $ \begin{align} y_{i, j-1, \varepsilon_{i, j-1}}=X_{i, j-1, \varepsilon_{i, j-1}} + p_{i, j-1, \varepsilon_{i, j-1}}^{U} \end{align} $

    (35)

    步骤2.  缩短炉次 $L_{ij}$ 在连铸工序的前一道工序上的处理时间.在保持 $o_{i, j, \varepsilon_{ij}-1}$ 的开工时间不变的基础上, 缩短 $o_{i, j, \varepsilon_{ij}-1}$ 的处理时间来处理断浇.令 $\Delta\tau_{i, j, \varepsilon_{ij}-1}^{1}$ 为 $o_{i, j, \varepsilon_{ij}-1}$ 处理时间的缩短值:

    $ \begin{align} &\Delta\tau_{i, j, \varepsilon_{ij}-1}^{1}=\min\{(Y_{i, j, \varepsilon_{ij}-1}-X_{i, j, \varepsilon_{ij}-1})- \notag\\ &\quad p_{i, j, \varepsilon_{ij}-1}^{L}, X_{i, j, \varepsilon_{ij}}-y_{i, j-1, \varepsilon_{i, j-1}}\} \end{align} $

    (36)

    则 $o_{i, j, \varepsilon_{ij}-1}$ 的完工时间为

    $ \begin{align} y_{i, j, \varepsilon_{ij}-1}=Y_{i, j, \varepsilon_{ij}-1}-\Delta\tau_{i, j, \varepsilon_{ij}-1}^{1} \end{align} $

    (37)

    然后更新 $L_{ij}$ 在连铸工序的开工时间和完工时间:

    $ \begin{align} x_{i, j, \varepsilon_{ij}}=X_{i, j, \varepsilon_{ij}}-\Delta\tau_{i, j, \varepsilon_{ij}-1}^{1} \end{align} $

    (38)

    $ \begin{align} y_{i, j, \varepsilon_{ij}}=Y_{i, j, \varepsilon_{ij}}-\Delta\tau_{i, j, \varepsilon_{ij}-1}^{1} \end{align} $

    (39)

    步骤3.  依次延长炉次 $L_{i, j_{1}}(j_{1}=j-2, j-3, \cdots, j^{\sharp})$ 在连铸机上的处理时间.在保持炉次 $L_{i, j_{1}}$ 在连铸工序的开工时间不变的基础上, 延长 $L_{i, j_{1}}$ 在连铸工序的处理时间来处理断浇.令 $\Delta\tau_{i, j_{1}, \varepsilon_{i, j_{1}}}^{2}$ 为 $L_{i, j_{1}}$ 在连铸工序上处理时间的延长值:

    $ \begin{align} &\Delta\tau_{i, j_{1}, \varepsilon_{i, j_{1}}}^{2}=\min\{p_{i, j_{1}, \varepsilon_{i, j_{1}}}^{U}-(Y_{i, j_{1}, \varepsilon_{i, j_{1}}}- \notag\\ &\quad X_{i, j_{1}, \varepsilon_{i, j_{1}}}), x_{i, j, \varepsilon_{ij}}-y_{i, j-1, \varepsilon_{i, j-1}}\} \end{align} $

    (40)

    因此 $L_{i, j_{1}}$ 在连铸工序上的完工时间为

    $ \begin{align} y_{i, j_{1}, \varepsilon_{i, j_{1}}}=Y_{i, j_{1}, \varepsilon_{i, j_{1}}}+\Delta\tau_{i, j_{1}, \varepsilon_{i, j_{1}}}^{2} \end{align} $

    (41)

    更新炉次 $L_{i, j_{1}}$ 后续炉次 $L_{i, j_{2}}$ 在连铸机上的开工时间和完工时间:

    $ \begin{align} x_{i, j_{2}, \varepsilon_{i, j_{2}}}=X_{i, j_{2}, \varepsilon_{i, j_{2}}}+\Delta\tau_{i, j_{1}, \varepsilon_{i, j_{1}}}^{2}, \notag\\j_{2}=j_{1}+1, \cdots, j-1 \end{align} $

    (42)

    $ \begin{align} y_{i, j_{2}, \varepsilon_{i, j_{2}}}=Y_{i, j_{2}, \varepsilon_{i, j_{2}}}+\Delta\tau_{i, j_{1}, \varepsilon_{i, j_{1}}}^{2}, \notag\\j_{2}=j_{1}+1, \cdots, j-1 \end{align} $

    (43)

    将本文提出的重调度排序规则和设备指派规则分别记为Seq1和Assign1.为了对本文提出的重调度方法进行充分研究, 本文与以下不同的重调度排序规则和设备指派规则进行比较:

    1) 按照炉次在连铸机上的预开工时间从早到晚的顺序依次选择炉次进行重调度(Seq2):按照炉次在连铸机上的开工时间从早到晚的顺序依次选择炉次进行调度, 并且在对单个炉次进行调度时采取对该炉次逆向逐个调度其操作.

    2) 按照炉次在连铸机上的预开工时间从晚到早的顺序依次选择炉次进行重调度(Seq3):按照炉次在连铸机上的开工时间从晚到早的顺序依次选择炉次进行调度, 并且在对单个炉次进行调度时采取对该炉次逆向逐个调度其操作.

    3) 设备指派规则优先级2 (Assign2):冲突时间最小规则、加工炉次数最少规则、运输时间最短规则、随机选取规则;

    4) 设备指派规则优先级3 (Assign3):运输时间最短规则、冲突时间最小规则、加工炉次数最少规则、随机选取规则;

    5) 设备指派规则优先级4 (Assign4):运输时间最短规则、加工炉次数最少规则、冲突时间最小规则、随机选取规则;

    6) 设备指派规则优先级5 (Assign5):加工炉次数最少规则、冲突时间最小规则、运输时间最短规则、随机选取规则;

    7) 设备指派规则优先级6 (Assign6):加工炉次数最少规则、运输时间最短规则、冲突时间最小规则、随机选取规则.

    根据上述重调度排序规则和设备指派规则的不同组合得到多种启发式重调度方法, 见表 1所示.

    表 1  各种重调度方法
    Table 1  Rescheduling methods
    序号 重调度排序 指派规则优先级 重调度方法
    1 Seq1 Assign1 H11
    2 Seq1 Assign2 H12
    3 Seq1 Assign3 H13
    4 Seq1 Assign4 H14
    5 Seq1 Assign5 H15
    6 Seq1 Assign6 H16
    7 Seq2 Assign1 H21
    8 Seq2 Assign2 H22
    9 Seq2 Assign3 H23
    10 Seq2 Assign4 H24
    11 Seq2 Assign5 H25
    12 Seq2 Assign6 H26
    13 Seq3 Assign1 H31
    14 Seq3 Assign2 H32
    15 Seq3 Assign3 H33
    16 Seq3 Assign4 H34
    17 Seq3 Assign5 H35
    18 Seq3 Assign6 H36
    下载: 导出CSV 
    | 显示表格

    本文仿真实验时, 每类设备均有3台设备, 同类设备处理时间相同.根据对炼钢-连铸生产过程的分析, 选取如下对重调度性能产生较大影响的参数进行仿真实验:

    1) 炉次数规模 $C_{1}$ :表示初始调度计划中的炉次数量的多少程度, $C_{1}=1$ 表示小规模的炉次数, $C_{1}=2$ 表示中等规模的炉次数, $C_{1}=3$ 表示大规模的炉次数.令 $\vartheta_{1}$ 表示炉次数的多少:当 $C_{1}=1$ 时, $\vartheta_{1}\in[15, 30]$ ; 当 $C_{1}=2$ 时, $\vartheta_{1}\in[60, 90]$ ; 当 $C_{1}=3$ 时, $\vartheta_{1}\in[120, 180]$ .

    2) 精炼方式 $C_{2}$ :表示炉次的精炼方式, $C_{2}=1$ 表示 $RH\to LF\to IR-UT$ , $C_{2}=2$ 表示 $LF\to RH\to IR-UT$ , $C_{2}=3$ 表示 $RH\to LF\to RH$ , $C_{2}=4$ 表示 $RH\to LF\to IR-UT$ 和 $LF\to RH\to IR-UT$ , $C_{2}=5$ 表示 $RH\to LF\to IR-UT$ 、 $LF\to RH\to IR-UT$ 和 $RH\to LF\to RH$ .

    3) 扰动发生时间点 $C_{3}$ :指开工时间延迟扰动发生的时间点相对于整个初始调度计划最大完成时间的早晚程度: $C_{3}=1$ 表示较早的开工时间延迟扰动, $C_{3}=2$ 表示中间位置的开工时间延迟扰动, $C_{3}=3$ 表示较晚的开工时间延迟扰动.令 $T_{LD}^{\rm Max}$ 为整个初始调度计划在转炉工序的最大完成时间, $\vartheta_{3}$ 表示扰动发生的时间点:当 $C_{3}=1$ 时, $\vartheta_{3}\in[0. 05T_{LD}^{\rm Max}, 0. 1T_{LD}^{\rm Max}]$ ; 当 $C_{3}=2$ 时, $\vartheta_{3}\in[0. 2T_{LD}^{\rm Max}, 0. 6T_{LD}^{\rm Max}]$ ; 当 $C_{3}=3$ 时, $\vartheta_{3}\in[0. 7T_{LD}^{\rm Max}, 0. 9T_{LD}^{\rm Max}]$ .

    4) 延迟扰动量大小 $C_{4}$ :表示开工时间延迟量的大小程度: $C_{4}=1$ 表示小程度的开工时间延迟量, $C_{4}=2$ 表示中等程度的开工时间延迟量, $C_{4}=3$ 表示大程度的开工时间延迟量.令 $\vartheta_{4}$ 表示开工时间延迟量:当 $C_{4}=1$ 时, $\vartheta_{3}\in[5, 10)$ ; 当 $C_{4}=2$ 时, $\vartheta_{3}\in[10, 30)$ ; 当 $C_{4}=3$ 时, $\vartheta_{3}\in[30, 40)$ .

    根据上述对仿真参数的分析可知, 本文设计 $3\times5\times3\times3=135$ 种仿真实例涵盖所有参数范围, 研究重调度方法在各种情况下的优化性能.对每种仿真实例分别随机产生10组实例数据进行仿真实验研究.仿真实验采用Microsoft Visual Studio 2010开发环境下的Visual C $\sharp. $ NET进行开发, 初始调度计划的产生采用Yu等[21]的调度方法得到.通过重调度实验可以得到1 350个实例数据下18种启发式方法的重调度结果.

    对于仿真实验结果, 令 $J_{q}^{\delta}$ 为第 $\delta$ 种启发式方法针对第 $q$ 个实例数据得到的性能指标值, 即等待时间值.令 ${\rm RPI}(J_{q}^{\delta})$ (Relative percentage increase, RPI)在第 $q$ 个实例数据下第 $\delta$ 种启发式方法得到计划结果的性能指标值, 计算如下:

    $ \begin{align} {\rm RPI}(J_{q}^{\delta})=\frac{J_{q}^{\delta}-J_{q}^{\ast}}{J_{q}^{\ast}} \end{align} $

    (44)

    其中, $J_{q}^{\ast}$ 为最优性能指标值.由于调度计划最优值无法获得, 此处 $J_{q}^{\ast}$ 选取第 $q$ 个实例数据下所有启发式方法得到的性能指标值中的最优值.令 ${\rm RPI}(J^{\delta})$ 为在 $Q$ 个实例数据情况下 $(q=1, \cdots, Q)$ 第 $\delta$ 种启发式方法的 ${\rm RPI}(J_{q}^{\delta})$ 的平均值:

    $ \begin{align} {\rm RPI}(J^{\delta})=\frac{1}{Q}\sum\limits_{q=1}^{Q}{\rm RPI}(J_{q}^{\delta}) \end{align} $

    (45)

    可以看出, ${\rm RPI}(J^{\delta})$ 值越小, 则说明该调度方法就越好.表 2所示为14种问题下各种启发式方法的 ${\rm RPI}(J^{\delta})$ 值.从表 2可以看出: 1) 随着炉次数规模的增加, 所有启发式方法的性能均下降; 2) 对于各种精炼方式, 所有启发式方法基本均在 $C_{2}=3$ 获得最好的调度性能; 3) 当扰动发生时间点发生在较晚时刻时, 所有启发式方法均获得最好的调度性能; 4) 当在大程度的延迟扰动量时, 大部分启发式方法获得最好的调度效果; 5) 在各种情况下, H11、H21、H22的调度性能较好.

    表 2  各种启发式方法的RPI值
    Table 2  RPI values of rescheduling methods
    问题 参数 H11 H12 H13 H14 H15 H16 H21 H22 H23 H24 H25 H26 H31 H32 H33 H34 H35 H36
    P1 $C_{1}=1$ 2 3 322 327 33 41 0 0 132 134 2 3 2 2 132 140 7 10
    P2 $C_{1}=2$ 4 13 102 010 101 702 186 270 6 5 88 560 88 515 6 13 10 15 88 386 88 847 54 51
    P3 $C_{1}=3$ 30 71 877 070 875 109 422 522 19 20 819 627 819 112 26 37 30 27 820 876 819 229 96 98
    P4 $C_{2}=1$ 12 65 744 525 735 497 800 818 0 0 694 356 693 395 12 28 12 21 695 642 693 220 188 190
    P5 $C_{2}=2$ 45 77 885 908 887 138 244 542 0 0 817 767 817 774 3 17 24 26 818 366 818 702 44 43
    P6 $C_{2}=3$ 1 1 242 279 5 5 8 12 230 249 2 2 18 6 125 247 2 3
    P7 $C_{2}=4$ 1 1 1 111 1 106 13 16 21 16 1 015 1 020 23 25 9 10 1 016 1 024 16 15
    P8 $C_{2}=5$ 0 1 553 542 6 7 15 15 497 497 16 18 8 9 508 501 11 14
    P9 $C_{3}=1$ 29 58 694 030 693 295 303 417 19 19 654 301 654 034 11 22 28 28 654 200 653 089 99 97
    P10 $C_{3}=2$ 6 25 272 029 270 402 242 313 6 6 244 777 244 773 10 17 12 15 245 962 245 842 48 53
    P11 $C_{3}=3$ 1 5 13 345 13 440 96 104 0 0 9 241 9 254 13 15 1 1 9 232 9 248 10 9
    P12 $C_{4}=1$ 2 1 544 354 541 868 464 477 9 10 504 493 504 403 12 15 6 5 505 085 504 079 115 113
    P13 $C_{4}=2$ 33 84 386 237 386 413 117 257 9 7 358 574 357 953 13 21 23 30 359 090 358 857 27 25
    P14 $C_{4}=3$ 1 2 48 812 48 857 60 99 7 9 45 253 45 404 9 18 13 9 45 219 45 280 15 22
    下载: 导出CSV 
    | 显示表格

    图 9所示为在各种新情况下的所有启发式方法结果的平均等待时间值.从图 9可以看出: 1) 当炉次数增加时, 设备上炉次之间冲突的可能性增大, 就会产生更多的等待时间, 导致各种启发式方法性能降低; 2) 对于各种精炼方式, 所有启发式方法基本均在 $C_{2}=5$ 产生的等待时间最少; 3) 当扰动发生的时间点处在整个炉次计划较早时刻时, 扰动影响的炉次最多, 导致扰动对整个计划的影响程度最大, 产生的等待时间也最多; 4) 对于延迟扰动量的变化, 在中等程度的延迟扰动量时各个启发式算法产生的等待时间最少; 5) 在所有情况下, 启发式方法H11的调度性能最优.

    图 9  不同重调度方法的平均目标值
    Fig. 9  Average objective values of rescheduling methods

    为了进一步研究启发式方法H11调度效果, 对H11在仿真参数两两变化时的调度性能进行分析.图 10所示为两两仿真参数变化时H11的调度效果: 1) 图 10(a)表示仿真参数 $C_{1}$ 和 $C_{2}$ 之间变化时对等待时间的影响, 在 $C_{2}=3$ 处, 随着 $C_{1}$ 的增大, 等待时间迅速增加. 2) 从图 10(b)可以看出, 在 $C_{1}=[1, 2]$ 和 $C_{3}=[1, 2]$ 这个范围的中心部分, 等待时间达到最大; 在 $C_{1}=[2, 3]$ 和 $C_{3}=[2, 3]$ 这个范围的中心部分, 等待时间变小. 3) 图 10(c)的曲面图与10 (b)相似, 在 $C_{1}=[1, 2]$ 和 $C_{4}=[1, 2]$ 这个范围的中心部分, 等待时间达到最大; 在 $C_{1}=[2, 3]$ 和 $C_{4}=[2, 3]$ 这个范围的中心部分, 等待时间变小. 4) 从图 10(d)可以看出, 在 $C_{2}=3$ 处, 随着 $C_{3}$ 的减小, 等待时间迅速增加. 5) 从图 10(e)可以看出, 在 $C_{2}=3$ 处, 随着 $C_{4}$ 的减小, 等待时间迅速增加. 6) 从图 10(f)看出, 在 $C_{3}=[1, 2]$ 和 $C_{4}=[1, 2]$ 这个范围的中心部分, 等待时间达到最小; 在 $C_{3}=[2, 3]$ 和 $C_{4}=[2, 3]$ 这个范围的中心部分, 等待时间变大.

    图 10  仿真参数变化时对启发式方法H11等待时间的影响
    Fig. 10  Average objective values of H11 method

    Pang等[22]对与本文相似的大型炼钢-连铸生产重调度问题进行了研究, 其重调度方法与本文不同之处在于:在其前三个阶段的调整过程中, 均是把炉次在设备上的处理时间作为一个常数, 仅在最后一个阶段当发生断浇时, 调整炉次在连铸工序的浇铸时间; 对转炉上已加工炉次, 仅调整其在精炼、连铸工序的开工时间, 不调整炉次在精炼工序的加工设备; 对转炉上未加工炉次进行重调度时, 是以炉次在连铸机上的开工时间先后顺序由前到后正向选择整个炉次进行重调度; 对转炉上未加工炉次在转炉、精炼工序上进行设备指派时, 采用的设备指派规则优先级为作业冲突时间最小、加工炉次数最少、运输时间最小和同类设备中随机选择一台设备.图 11图 12为本文启发式方法(记为RS-Heu)与Pang方法(记为P-Heu)仿真实验的比较结果, 仿真所用数据为本文第5.2节设计的仿真实验参数和仿真实例.图 11(a)为两种方法的调度结果的平均等待时间指标比较, 图 11(b)为两种方法的调度结果的平均最大完成时间(Makespan)指标比较, 图 11(c)为两种方法的调度结果的平均设备负荷率指标比较.从图 11结果可以看出, 本文启发式方法RS-Heu在平均等待时间(越小越优型指标)、平均最大完成时间(越小越优型指标)和平均设备负荷率(越大越优型指标)三方面指标均优于P-Heu方法.图 12所为示两种方法的调度结果的平均设备负荷均衡率指标(采用标准差表示, 越小越优型指标)比较, 本文启发式方法RS-Heu在IR-UT平均设备负荷均衡率方面优于P-Heu方法, 而在LD、RH和LF的平均设备负荷均衡率方面, P-Heu方法稍占优.

    图 11  不同重调度方法的指标比较
    Fig. 11  Index comparison of different methods
    图 12  不同重调度方法的设备负荷均衡率比较
    Fig. 12  Comparison of load balancing rate of equipment for methods

    本文以中国上海某大型炼钢厂二炼钢分厂为实际应用背景, 其精炼方式包括一重精炼、二重精炼、三重精炼.在信息化建设方面, 正在使用的有终端过程控制计算机系统(L2)和区域管理计算机系统(L3).由于生产过程中经常会出现各种扰动情况, 因此难以完全按照预调度计划的时间要求、工艺要求温度和工艺要求成分进行.由于缺少便捷、快速、优化的调整方法, 调度人员在编制调度计划时采取"走一步看一步"的做法, 以利于人工调整.炼钢-连铸生产过程中资源相互之间牵扯多, 人工调整会引起资源利用的局部性、短期性、片面性, 存在着调度反应慢、调度结果不优化的问题.本文以该炼钢厂炼钢-连铸生产调度系统的升级改造项目为背景, 结合现场生产的工艺实际情况, 将本文提出的重调度方法进行应用.图 13为基于本文提出的重调度方法在实际现场应用时的炼钢-连铸生产重调度系统界面, 其横坐标表示时间, 纵坐标表示设备.在现场实际应用1个月得到的生产数据进行分析的结果表明:在3座转炉对3台连铸机、日平均炉数为66炉的生产模式下, 平均日冗余等待时间从234分钟下降到166分钟, 日综合平均设备负荷率从 $50. 44 \%$ 上升到 $55. 16 \%$ ; 整个计划的重调度时间从原来的1分钟以上缩短至10秒以内.

    图 13  炼钢–连铸生产重调度方法的工业应用
    Fig. 13  Industrial application of the proposed method

    现代大型炼钢-连铸生产过程都是由多台转炉、多台精炼炉、多台连铸机及大量的精炼方式组成, 并且在某些精炼方式中存在着回环现象, 使得炼钢-连铸生产重调度问题不同于job shop/flow shop/柔性job shop/混合flow shop等调度问题, 是一类特殊的生产调度问题.本文以中国上海某大型炼钢厂的炼钢-连铸生产线为背景, 针对多台转炉、多台精炼炉、多台连铸机及多重精炼方式下的开工时间延迟扰动下的炼钢-连铸生产重调度问题, 以炉次不冲突和不断浇的条件下, 在相邻工序的等待时间总和最小为目标, 建立了炼钢-连铸生产调度的混合整数规划模型, 基于模型分解思想提出了基于启发式方法的炼钢-连铸生产重调度方法.并对各种启发式重调度方法进行了仿真对比研究, 仿真实验结果表明本文提出的重调度方法的有效性.在某大型钢铁企业的工业应用表明所提出的重调度方法在减少炉次加工冗余等待时间方面取得显著成效.


  • 本文责任编委 季海波
  • 图  1  LADRC的反馈互联结构, 其中子系统用状态空间形式

    Fig.  1  Feedback interconnection structure of LADRC, in which subsystems are described in state space

    图  2  LADRC的反馈互联结构, 其中子系统用传递函数形式

    Fig.  2  Feedback interconnection structure of LADRC, in which subsystems are described with transfer functions

    图  3  系统状态和控制量

    Fig.  3  States of the plant and the control signal

    图  4  LESO的误差

    Fig.  4  Errors of LESO

  • [1] 韩京清.自抗扰控制器及其应用.控制与决策, 1998, 13 (1):19-23 doi: 10.3321/j.issn:1001-0920.1998.01.005

    Han Jing-Qing.Auto-disturbance-rejection controller and its applications.Control and Decision, 1998, 13 (1):19-23 doi: 10.3321/j.issn:1001-0920.1998.01.005
    [2] 韩京清.自抗扰控制技术-估计补偿不确定因素的控制技术.北京:国防工业出版社, 2008.

    Han Jing-Qing.Active Disturbance Rejection Control Technique-the Technique for Estimating and Compensating the Uncertainties.Beijing:National Defense Industry Press, 2008.
    [3] Han J Q.From PID to active disturbance rejection control.IEEE Transactions on Industrial Electronics, 2009, 56 (3):900-906 doi: 10.1109/TIE.2008.2011621
    [4] Gao Z Q.Scaling and bandwidth-parameterization based controller tuning.In:Proceedings of the 2003 American Control Conference.Denver, Colorado, USA:IEEE, 2003.4989-4996
    [5] Huang Y, Xue W C.Active disturbance rejection control:methodology and theoretical analysis.ISA Transactions, 2014, 53 (4):963-976 doi: 10.1016/j.isatra.2014.03.003
    [6] Madoński R, Herman P.Survey on methods of increasing the efficiency of extended state disturbance observers.ISA Transactions, 2015, 56:18-27 doi: 10.1016/j.isatra.2014.11.008
    [7] Chen W H, Yang J, Guo L, Li S H.Disturbance-observer-based control and related methods-an overview.IEEE Transactions on Industrial Electronics, 2016, 63 (2):1083-1095 doi: 10.1109/TIE.2015.2478397
    [8] 李杰, 齐晓慧, 万慧, 夏元清.自抗扰控制:研究成果总结与展望.控制理论与应用, 2017, 34 (3):281-295 http://d.old.wanfangdata.com.cn/Periodical/djykzxb201802008

    Li Jie, Qi Xiao-Hui, Wan Hui, Xia Yuan-Qing.Active disturbance rejection control:theoretical results summary and future researches.Control Theory & Applications, 2017, 34 (3):281-295 http://d.old.wanfangdata.com.cn/Periodical/djykzxb201802008
    [9] Tian G, Gao Z Q.Frequency response analysis of active disturbance rejection based control system.In:Proceedings of the 16th IEEE International Conference on Control Applications.Singapore:IEEE, 2007.1595-1599
    [10] Csank J, Gao Z Q.Uncertainty reduction through active disturbance rejection.In:Proceedings of the 2008 American Control Conference.Seattle, Washington, USA:IEEE, 2008.3689-3694
    [11] 袁东, 马晓军, 曾庆含, 邱晓波.二阶系统线性自抗扰控制器频带特性与参数配置研究.控制理论与应用, 2013, 30 (12):1630-1640 http://d.old.wanfangdata.com.cn/Periodical/kzllyyy201312021

    Yuan Dong, Ma Xiao-Jun, Zeng Qing-Han, Qiu Xiao-Bo.Research on frequency-band characteristics and parameters configuration of linear active disturbance rejection control for second-order systems.Control Theory & Applications, 2013, 30 (12):1630-1640 http://d.old.wanfangdata.com.cn/Periodical/kzllyyy201312021
    [12] 李杰, 齐晓慧, 夏元清, 高志强.线性/非线性自抗扰切换控制方法研究.自动化学报, 2016, 42 (2):202-212 http://www.aas.net.cn/CN/abstract/abstract18810.shtml

    Li Jie, Qi Xiao-Hui, Xia Yuan-Qing, Gao Zhi-Qiang.On linear/nonlinear active disturbance rejection switching control.Acta Automatica Sinica, 2016, 42 (2):202-212 http://www.aas.net.cn/CN/abstract/abstract18810.shtml
    [13] 陈增强, 孙明玮, 杨瑞光.线性自抗扰控制器的稳定性研究.自动化学报, 2013, 39 (5):574-580 http://www.aas.net.cn/CN/abstract/abstract17868.shtml

    Chen Zeng-Qiang, Sun Ming-Wei, Yang Rui-Guang.On the stability of linear active disturbance rejection control.Acta Automatica Sinica, 2013, 39 (5):574-580 http://www.aas.net.cn/CN/abstract/abstract17868.shtml
    [14] Jin H, Liu L, Lan W, Zeng J.On stability and robustness of linear active disturbance rejection control:a small gain theorem approach.In:Proceedings of the 36th Chinese Control Conference.Dalian, China:IEEE, 2017.3242-3247
  • 期刊类型引用(17)

    1. 刘艳红,李朋真,李汇来,吴振龙,李兆阳. 线性自抗扰控制系统的稳定性分析方法. 控制工程. 2024(01): 95-102 . 百度学术
    2. 孙嫚憶,毕文豪,张安,刁玉豪. 基于MPC和ESO-DO的四旋翼轨迹跟踪控制. 指挥控制与仿真. 2024(02): 104-114 . 百度学术
    3. 张秋雁,许昌亮,曾华荣,杨忠,陈科羽,廖禄伟,李捷文,徐浩. 输电线路障碍物清理机器人刀具系统自抗扰控制. 广东电力. 2023(02): 92-101 . 百度学术
    4. 李艳,王鑫,胡振,戴庆瑜. 基于低增益LESO的有机废液焚烧系统控制算法研究. 陕西科技大学学报. 2023(04): 143-150 . 百度学术
    5. 王明欣,刘丽霞,王欣. 基于相位校正LESO的飞行器姿态控制. 计算机仿真. 2023(07): 38-43 . 百度学术
    6. 万陆峰,徐玉珍. 基于线性自抗扰改进单周期控制. 电器与能效管理技术. 2022(04): 19-27 . 百度学术
    7. 熊志豪,邓涛,郑宇惟,周鑫,吴玉泽. 基于状态观测器的四旋翼无人机轨迹跟踪控制. 电光与控制. 2022(06): 50-56 . 百度学术
    8. 周雪松,刘乾,马幼捷,谢冰杰. 基于改进自抗扰的光伏并网逆变器直流母线电压控制. 太阳能学报. 2022(10): 65-72 . 百度学术
    9. 廖鹤,郑多锦,赵艳彬,祝竺,谢进进. 三体随动跟踪式重力卫星姿态与无拖曳控制方法. 宇航学报. 2022(11): 1499-1510 . 百度学术
    10. 梁乐观,牛宏侠. 基于SM-LADRC的高速列车自动驾驶速度控制. 北京交通大学学报. 2022(05): 114-121 . 百度学术
    11. 王怡怡,赵志良. 二自由度无人直升机的非线性自抗扰姿态控制. 自动化学报. 2021(08): 1951-1962 . 本站查看
    12. 金辉宇,兰维瑶. 双重积分器的二阶线性自抗扰控制:快速无超调阶跃响应. 控制理论与应用. 2021(09): 1486-1492 . 百度学术
    13. Huiyu JIN,Jingchao SONG,Weiyao LAN,Zhiqiang GAO. On the characteristics of ADRC: a PID interpretation. Science China(Information Sciences). 2020(10): 258-260 . 必应学术
    14. 周攀峰,丁学明. 基于线性自抗扰控制的工件台单扫描轴应用研究. 软件导刊. 2020(09): 159-164 . 百度学术
    15. 杨飞,谈树萍,薛文超,郭金,赵延龙. 饱和约束测量扩张状态滤波与无拖曳卫星位姿自抗扰控制. 自动化学报. 2020(11): 2337-2349 . 本站查看
    16. 刘秀翀,王占山. 系统H_∞范数计算:Lyapunov函数的直接优化方法. 自动化学报. 2019(08): 1606-1610 . 本站查看
    17. 刘昊,魏承,谭春林,刘永健,赵阳. 空间充气展开绳网系统捕获目标自抗扰控制研究. 自动化学报. 2019(09): 1691-1700 . 本站查看

    其他类型引用(42)

  • 加载中
  • 图(4)
    计量
    • 文章访问数:  2593
    • HTML全文浏览量:  475
    • PDF下载量:  1018
    • 被引次数: 59
    出版历程
    • 收稿日期:  2016-12-10
    • 录用日期:  2017-05-31
    • 刊出日期:  2018-09-20

    目录

    /

    返回文章
    返回