-
摘要: 针对目前综合调度算法不能兼顾产品工艺树中并行工序的并行性和串行工序之间紧密度,影响调度结果的问题,提出考虑后续工序的择时综合调度算法.该算法提出工序序列排序策略,从工艺树的整体结构出发,将其划分成若干内部工序只具有串行关系的工序序列,并按路径长度从长到短的顺序确定其调度次序;提出择时调度策略和考虑后续工序策略,根据工艺树自身特点,从来自不同工序序列的并行工序的不同组合方案中,选择最接近调度目标的方案作为工序调度方案,若该工序调度方案不唯一,则在其中选择该工序加工开始时间最早的调度方案.该算法既保证了工序的并行处理,又提高了串行工序的紧密度,优化了综合调度的结果.最后通过实例说明本文算法对解决综合调试问题具有普遍意义.Abstract: Integrated scheduling algorithms currently neglected the compactness of serial processes when handling a general integrated scheduling problem, and it influenced the scheduling result. Aiming at this problem, an time-selective integrated scheduling algorithm considering posterior processes was presented. The strategy of process sequence sorting was proposed. From the overall structure of the process tree, it was divided into several sequence of processes in which the processes only had a serial relationship. According to the path length to determined the order of its scheduling. The strategy of time-selective and considering posterior processes was proposed. According to the characteristics of the process tree, selected the most close to the scheduling objectives as a process scheduling scheme from the different combination of parallel process from different process sequence. If the process scheduling scheme was not unique. selected the process scheduling scheme in which The processing start time of the process was the earliest. This algorithm promises to proceed together the parallel processing of processes, and effectively raises the compactness of serial processes. The results of integrated scheduling are optimized. Finally illustrated by examples.
-
Key words:
- Process sequence sorting /
- posterior processes /
- time-selective /
- integrated scheduling
-
工业过程运行反馈控制包括底层回路关键被控变量的反馈控制和上层运行指标的反馈控制, 也就是说, 工业过程运行反馈控制不仅包括保证过程控制系统关键被控变量的跟踪控制, 而且还要选择合适的关键被控变量设定值, 实现运行指标目标值的跟踪[1].如图 1所示, 传统的工业过程运行反馈控制过程中, 关键被控变量的设定值$ {Y^*} = y_j^*$, $j=1, 2$, $\cdots$, $n$由工序作业班的运行工程师根据运行指标目标值${R^*} = R_i^*$, $j=1, 2, \cdots, m$和多年积累的人工操作经验, 并结合各种运行工况信息人为给出.为实现工业运行过程的自动控制, 自上世纪80年代末以来, 很多学者开展了工业运行过程控制方法的研究.文献[2]基于分层递阶控制的架构和多层优化理论, 提出了反馈优化控制的思想.文献[3]通过离线选择与工业过程经济效益相关的被控变量的设定值, 提出了自优化控制的概念.文献[4]将底层回路控制与过程运行优化相结合, 提出了具有两层结构的实时优化(Real time optimization, RTO)控制方法, 上层采用静态模型优化经济性能指标, 产生底层控制回路的设定值, 通过底层控制器使被控变量跟踪设定值, 从而尽可能使过程运行在经济指标目标值附近.文献[5]将RTO与模型预测控制相结合, 提出了具有三层结构的运行反馈控制方法.此外, 还有一些基于神经网络、模糊推理、案例推理等智能技术的运行反馈控制方法, 例如文献[6]将案例推理、规则推理以及神经网络相结合, 提出了工业运行过程的混合智能控制方法; 文献[7]将神经网络与模糊推理相结合, 提出了一种设定值的混合监控方法.
上述运行反馈控制方法均假设底层过程控制可以跟踪运行控制给出的设定值, 没有考虑底层跟踪设定值的动态误差对整个运行过程优化和控制的影响.为解决这一问题, 文献[8-9]提出了使运行指标实际值与目标值偏差和控制回路输出与设定值跟踪误差的二次性能指标极小化的运行反馈控制方法.文献[10]提出了运行反馈解耦控制方法.上述方法均假设运行层的模型由底层关键被控变量与运行指标之间的静态模型精确描述.实际上, 运行指标反映产品在加工过程中的质量、效率、消耗等, 与底层控制回路的被控变量之间往往具有动态特性, 并且很难用精确的数学模型描述.
本文针对一类运行层为未知动态模型的工业运行过程, 提出一种新的多模型自适应控制方法.最早的多模型自适应控制方法通过线性模型和基于神经网络的非线性模型之间的切换不仅可以保证自适应系统有界输入和有界输出(Bound-input and bound-output, BIBO)稳定, 而且可以改善系统的跟踪性能[11], 但该方法只适用于单输入、单输出系统, 并且是在系统的未建模动态全局有界这一假设下实现的.文献[12]将上述方法推广到多变量系统, 提出了基于多模型与神经网络的多变量自适应控制方法, 放松了文献[11]对系统未建模动态全局有界的假设.文献[13-14]提出了多变量强耦合系统的多模型自适应解耦控制方法.文献[15]提出了参数跳变系统的多模型自适应控制方法.文献[16]提出了具有未知执行器非线性的多变量自适应控制方法.
上述多模型自适应控制方法都是针对底层被控对象设计的.这些方法采用带死区的投影算法对未知参数进行在线辨识.投影算法收敛速度慢, 对参数初值十分灵敏, 实际使用中只有当参数初值接近真值时, 才具有良好的收敛效果, 因此投影算法对过程的先验知识要求较高, 不适合应用于动态未知的工业运行过程.相比较, 递推最小二乘算法具有较快的收敛速度, 对参数初值不灵敏.本文提出的运行过程多模型自适应控制方法采用带死区的递推最小二乘方法对未知参数进行在线辨识.理论分析和仿真实验验证了所提方法的有效性.
1. 问题描述
工业运行过程动态模型由上层运行层的动态模型和底层被控对象的动态模型两部分组成.在本文中, 为了将问题简化, 底层被控对象由如下离散时间线性状态空间模型描述.
$ x(k+1)=\bar{A}x(k)+\bar{B}u(k) $
(1a) $ y(k)=\bar{C}x(k) $
(1b) 其中, $x\in{\bf R}^n$为被控对象状态, $u\in{\bf R}^m$为被控对象的控制输入, $y\in{\bf R}^m$是被控对象的测量输出, $\overline{A}$ $\in$ ${\bf R}^{n\times n}$, $\overline{B}\in{\bf R}^{n\times m}$, $\overline{C}\in{\bf R}^{m\times n}$为时不变矩阵.针对底层被控对象(1)设计极点配置控制器.
$ u(k)=-Kx(k)+L{{y}^{*}}(k) $
(2) 其中, $y^{*}(k)$为底层回路设定值, $K\in{\bf R}^{m\times n}$, $L$ $\in$ ${\bf R}^{m\times m}$为时不变矩阵.
为获得控制器参数矩阵$K$和$L$, 将式(2)代入式(1)得到闭环系统方程为
$ x(k+1)=(\bar{A}-\bar{B}K)x(k)+\bar{B}L{{y}^{*}}(k) $
(3a) $ y(k)=\bar{C}x(k) $
(3b) 为使闭环系统稳定, 并实现稳态跟踪, 应选择控制器参数矩阵和满足:
1) 矩阵$\overline{A}-\overline{B}K$稳定;
2) $\lim\nolimits_{z\rightarrow1}\overline{C}(zI_{n}-(\overline{A}-\overline{B}K))^{-1}\overline{B}L=I_{m}$, $L=$ $\lim\nolimits_{z\rightarrow1}(\overline{C}(zI_{n}- (\overline{A}-\overline{B}K))^{-1}\overline{B})^{-1}$.
由于上层运行层动态模型是底层关键被控变量与运行指标之间的函数, 它的输出与底层控制系统输出相关.在本文中, 考虑运行层模型为如下带有未建模动态的动态模型.
$ r(k+1)=Mr(k)+Ny(k)+\nu (k) $
(4) 其中, $r(k)$为运行过程输出, 即运行过程的工艺指标, $\nu(k)\in {\bf R}^m$为外部干扰或未建模动态, $M$, $N$ $\in$ ${\bf R}^{m\times m}$为时不变矩阵.工业过程运行控制系统涉及到底层关键被控变量的反馈控制和上层运行指标的反馈控制, 为充分考虑底层跟踪设定值的动态误差对整个运行过程控制的影响, 运行过程动态模型可看作是由底层基础反馈控制系统(3)和运行层动态模型(4)构成的广义模型.
$ x(k+1)=\widetilde{A}x(k)+\widetilde{B}{{y}^{*}}(k) $
(5a) $ r(k+1)=Mr(k)+\widetilde{C}x(k)+\nu (k) $
(5b) 其中, $\widetilde{A}=\bar{A}-\bar{B}K$, $\widetilde{B}=\bar{B}L, $ $\widetilde{C}=N\bar{C}, $满足${{\widetilde{C}}^{\text{T}}}\widetilde{C}$可逆.
假设 1. 未建模动态$\nu(k)$的差分项或变化率全局有界, 即对任意的$k > 0$, $\|\nu(k)-\nu(k-2)\|\leq\Gamma$, 其中, $\Gamma$为正常数.
本文的目标是将设定值$y^{*}(k)$看作控制输入, 确定一个多模型自适应控制器, 当其应用于不确定的运行过程(5)时, 闭环运行过程的输入、输出信号有界, 即闭环系统BIBO稳定, 并且运行过程输出$r(k)$尽可能跟踪事先指定的运行指标目标值$r^{*}(k)$的变化.由于未建模动态的存在, 单独使用线性控制器即使能保证闭环运行过程BIBO稳定, 也很难满足一定的跟踪性能.本文将基于带死区的递推最小二乘算法的线性鲁棒自适应控制器和具有未建模动态补偿的非线性自适应控制器与切换机制相结合, 提出的多模型自适应控制器不仅能够保证闭环运行过程BIBO稳定, 而且可使其具有良好的跟踪性能.
2. 基于带死区的递推最小二乘算法的线性鲁棒自适应控制
2.1 一步超前控制器设计
为进行控制器设计, 首先需要将广义模型(5)转化成差分方程形式, 为此引入后移算子$z^{-1}$, 于是式(5)可以重新整理为
$ A({{z}^{-1}})r(k+2)=B{{y}^{*}}(k)+C({{z}^{-1}})\nu (k+1) $
(6) 其中,
$ A({{z}^{-1}})=\widetilde{C}[{{I}_{n}}-\widetilde{A}{{z}^{-1}}]{{({{\widetilde{C}}^{\text{T}}}\widetilde{C})}^{-1}}{{\widetilde{C}}^{\text{T}}}({{I}_{m}}-M{{z}^{-1}}) $
$ B=\widetilde{C}\widetilde{B} $
$ C({z^{ - 1}}) = \widetilde C[{I_n} - \widetilde A{z^{ - 1}}]{({\widetilde C^{\rm{T}}}\widetilde C)^{ - 1}}{\widetilde C^{\rm{T}}} $
下面针对模型(6)设计一步超前控制器.引入如下一步超前最优性能指标:
$ J(k) = {\left\| {T({z^{ - 1}})r(k + 2) - R({z^{ - 1}}){r^*}(k + 2)} \right\|^2} $
(7) 其中, $r^{*}(k)=[r^{*}_{1}(k), r^{*}_{2}(k), \cdots, r^{*}_{m}(k)]^{\rm T}\in{\bf R}^m$为已知有界的运行指标目标值, $T(z^{-1})\in{\bf R}^{m\times m}$为稳定的对角加权多项式矩阵, 满足$T(0)$非奇异; $R(z^{-1})$ $\in$ ${\bf R}^{m\times m}$为对角加权多项式矩阵.引入方程
$ T({z^{ - 1}}) = H({z^{ - 1}})A({z^{ - 1}}) + {z^{ - 2}}G({z^{ - 1}}) $
(8) 为使$H(z^{-1})$和$G(z^{-1})$为唯一解或最小阶解, 由文献[17]可知, $H(z^{-1})$和$G(z^{-1})$都为1阶多项式矩阵, $T(z^{-1})$的阶次小于或等于3.易知, $H(0)=T(0)$.将式(6)两边乘$H(z^{-1})$并利用式(8), 得
$ \begin{array}{l} T({z^{ - 1}})r(k + 2) = G({z^{ - 1}})r(k) + \\ \;\;\;\;\;\;H({z^{ - 1}})B{y^*}(k) + H({z^{ - 1}})C({z^{ - 1}})\nu (k + 1) \end{array} $
(9) 定义时滞-差分算子$\Delta=1-z^{-2}$, 则式(9)转化为
$ \begin{array}{l} T({z^{ - 1}})r(k + 2) = G({z^{ - 1}})\Delta r(k) + \\ \;\;\;\;\;H({z^{ - 1}})B\Delta {y^*}(k) + T({z^{ - 1}})r(k) + \rho (k) \end{array} $
(10) 其中, $\rho(k)=H(z^{-1})C(z^{-1})[\nu(k+1)-\nu(k-1)]$.于是, 使性能指标(7)最小的一步超前最优控制$y^{*}(k)$通过下式计算.
$ \begin{array}{l} G({z^{ - 1}})\Delta r(k) + H({z^{ - 1}})B\Delta {y^*}(k) + \rho (k) = \\ \;\;\;\;\;\;R({z^{ - 1}}){r^*}(k + 2) - T({z^{ - 1}})r(k) \end{array} $
(11) 将式(11)代入模型(6), 得到运行过程闭环方程
$ T({z^{ - 1}})r(k + 2) = R({z^{ - 1}}){r^*}(k + 2) $
(12) 由式(12)可知, 若选择$R(z^{-1})=T(z^{-1})$, 则可消除运行过程的跟踪误差.
由于外部干扰或未建模动态往往是未知的, 当不考虑它对运行过程闭环系统的影响时, 可采用下面的线性控制器方程求取控制输入$y^{*}(k)$.
$ \begin{array}{l} G({z^{ - 1}})\Delta r(k) + H({z^{ - 1}})B\Delta {y^*}(k) = \\ \;\;\;\;\;\;R({z^{ - 1}}){r^*}(k + 2) - T({z^{ - 1}})r(k) \end{array} $
(13) 2.2 线性鲁棒自适应控制
运行过程的动态模型往往是未知的, 因此需要采用自适应方法在线获得控制器参数, 当组成$A(z^{-1})$, $B$, $C(z^{-1})$的参数阵未知时, 式(10)可看作控制器参数辨识方程, 为此记$\phi(k)=T(z^{-1})r(k)$, $G(z^{-1})$ $=G_0+G_1(z^{-1})$, $Q(z^{-1})=H(z^{-1})B=$ $Q_0 +Q_1(z^{-1})$, 并定义数据向量和参数矩阵分别为$\varphi(k)$ $=[\Delta r^{\rm T}(k), \Delta r^{\rm T}(k-1), \Delta {y^{*}}^{\rm T}(k)$, $\Delta {y^{*}}^{\rm T}(k-1)]^{\rm T}$和$\theta=[G_0, G_1, Q_0, Q_1]^{\rm T}$, 则控制器参数辨识方程(10)可以写为
$ \phi (k + 2) = {\theta ^{\rm{T}}}\varphi (k) + \phi (k) + \rho (k) $
(14) 线性控制器方程(13)可重新写为
$ \theta^{\rm T}\varphi(k)=R(z^{-1})r^{*}(k+2)-T(z^{-1})r(k) $
(15) 对于未知的参数矩阵$\theta$, 采用带死区的递推最小二乘方法进行在线辨识.
$ \hat \theta (k) = {\rm{proj}}\{ {\hat \theta ^ + }(k)\} $
(16a) $ \begin{array}{l} {{\hat \theta }^ + }(k) = \hat \theta (k - 2){\mkern 1mu} + \\ \;\;\;\;\;\;\;\;\;\;\;\frac{{\lambda (k)P(k - 2)\varphi (k - 2){e^{\rm{T}}}(k)}}{{1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} \end{array} $
(16b) $ \begin{array}{l} P(k) = P(k - 2) - \\ \;\;\;\;\;\;\;\;\;\;\frac{{\lambda (k)P(k - 2)\varphi (k - 2){\varphi ^{\rm{T}}}(k - 2)P(k - 2)}}{{1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} \end{array} $
(16c) $ e(k) = \phi (k) - \hat \phi (k) $
(16d) $ \hat \phi (k) = {\hat \theta ^{\rm{T}}}(k - 2)\varphi (k - 2) + \phi (k - 2) $
(16e) $ \lambda \left( k \right) = \left\{ \begin{array}{l} \frac{1}{2}, \;\;如果\left\| {e\left( k \right)} \right\|>2E\\ 0, \;\;否则 \end{array} \right. $
(16f) $ {\rm{proj}}\left\{ {{{\hat \theta }^ + }\left( k \right)} \right\} = \left\{ \begin{array}{l} {{\hat \theta }^ + }\left( k \right), \;\;\;\;\;\;\;\;\;\;\;\;\;\hat Q_0^ + \left( k \right)非奇异\\ {\left[ { \ldots , {Q_{\min }}, \ldots } \right]^{\rm{T}}}, \;\;\;否则 \end{array} \right. $
(16g) 其中, $[\varphi(0), \widehat{\theta}(0), P(0)]$为初始条件, $P(0)>0$为正定矩阵, $E$为$\rho(k)$的已知上界, $\widehat{\theta}(k)= [\widehat{G}_0(k)$, $\widehat{G}_1(k)$, $\widehat{Q}_0(k), \widehat{Q}_1(k)]^{\rm T}$为$k$时刻未知参数矩阵$\theta$的估计, $\widehat{\theta}^{+}(k)=[\widehat{G}_0(k), \widehat{G}_1(k), \widehat{Q}_0^{+}(k), \widehat{Q}_1(k)]^{\rm T}$, ${\rm proj}\{\cdot\}$为一投影算子, 满足式(16g).
由式(15)及确定性等价原则可知, 线性鲁棒自适应控制器为
$ {\hat \theta ^{\rm{T}}}(k)\varphi (k) = R({z^{ - 1}}){r^*}(k + 2) - T({z^{ - 1}})r(k) $
(17) 2.3 线性鲁棒自适应控制系统稳定性和性能
引理 1. 定义函数
$ V(k) = {\rm{tr}}\left[ {{{\widetilde \theta }^{\rm{T}}}(k){P^{ - 1}}(K)\widetilde \theta (k)} \right] $
则带死区的递推最小二乘辨识算法(16)具有如下性质:
1)
$ \begin{array}{l} V(k) - V(k - 2) \le \\ \;\;\;\; - \frac{{3\lambda (k){{\left\| {e(k)} \right\|}^2}}}{{8[1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)]}} - \\ \;\;\;\;\frac{{\lambda (k)[{{\left\| {e(k)} \right\|}^2} - 4{E^2}]}}{{4\{ 1 + [1 - \lambda (k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)\} }} \end{array} $
2)
$ \mathop {\lim }\limits_{k \to \infty } \left\| {\hat \theta (k) - \hat \theta (k - 2)} \right\| = 0 $
证明. 见附录A.
定理 1. 运行过程动态模型(5)或(6)满足假设1, 则当线性鲁棒自适应控制算法(16)应用于式(6)时, 闭环运行过程全局李雅普诺夫稳定, 并且广义跟踪误差满足${\lim _{k \to \infty }}\lambda (k)[{\left\| {\bar e(k)} \right\|^2} - 4{E^2}] = 0$, 其中, $\bar e(k): = T({z^{ - 1}})r(k) - R({z^{ - 1}}){r^*}(k)$.
证明. 由引理1的1)可知,
$ \mathop {\lim }\limits_{k \to \infty } \frac{{\lambda (k)[{{\left\| {e(k)} \right\|}^2} - 4{E^2}]}}{{4\{ 1 + [1 - \lambda (k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)\} }} = 0 $
(18) 由于$\overline{e}(k):=T(z^{-1})r(k)-R(z^{-1})r^*{(k)}$及$T(z^{-1})$的稳定性, 存在正常数$c_1$, $c_2$, $c_3$, $c_4$满足
$ \begin{array}{l} |{r_i}(k)| \le {c_1} + {c_2}\mathop {\max }\limits_{_{\scriptstyle0 \le \tau \le t\atop \scriptstyle1 \le i \le m}} |{{\bar e}_i}(\tau )|, \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;i = 1, 2, \cdots , m \end{array} $
(19) $ \begin{array}{l} |y_i^*(k - 2)| \le {c_3} + {c_4}\mathop {\max }\limits_{_{\scriptstyle0 \le \tau \le t\atop \scriptstyle1 \le i \le m}} |{r_i}(\tau )|, \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;\;i = 1, 2, \cdots , m \end{array} $
(20) 令
$ \begin{array}{l} X(k - 2) = \\ \;\;\;{[{r^{\rm{T}}}(k - 2), {r^{\rm{T}}}(k - 3), {y^*}^{\rm{T}}(k - 2), {y^*}^{\rm{T}}(k - 3)]^{\rm{T}}} \end{array} $
则存在正常数$c_5$, $c_6$满足
$ \left\| {X(k - 2)} \right\| \le {c_5} + {c_6}\mathop {\max }\limits_{0 \le \tau \le t} \left\| {\bar e(\tau )} \right\| $
(21) 由式(16d)可知,
$ e(k)=T(z^{-1})r(k)-R(z^{-1})r^{*}(k)=\overline{e}(k) $
(22) 因此, 由式(21)和式(22)可知
$ \left\| {X(k - 2)} \right\| \le {c_5} + {c_6}\mathop {\max }\limits_{0 \le \tau \le t} \left\| {e(\tau )} \right\| $
(23) 由式(23)可知, 单独采用线性鲁棒自适应控制算法时, 系统输入和输出信号的有界性由$e(k)$的有界性决定.下面假设$e(k)$无界.由式(16f)可知, 存在时刻$K_0>0$, 当$k>K_0$时, $\left\| {\mathit{e}(\mathit{k})} \right\| > {\rm{2}}E$并且$\lambda(k)$ $=$ $1/2$, 即式(18)的分子是一个正实序列.于是存在一单调递增序列$\left\| {\mathit{e}({\mathit{k}_n})} \right\|$, 使得
$ {\lim _{k \to \infty }}\left\| {e({k_n})} \right\| = \infty $
由式(23)可知
$ \begin{array}{l} \frac{{\lambda ({k_n})[{{\left\| {e({k_n})} \right\|}^2} - 4{E^2}]}}{{41 + [1 - \lambda ({k_n})]{\varphi ^{\rm{T}}}({k_n} - 2)P({k_n} - 2)\varphi ({k_n} - 2)}} \ge \\ \frac{{\lambda ({k_n})[{{\left\| {e({k_n})} \right\|}^2} - 4{E^2}]}}{{81 + [1 - \lambda ({k_n})][{{({c_5} + {c_6}\left\| {e({k_n})} \right\|)}^2}]\left\| {P({k_n} - 2)} \right\|}} \end{array} $
由于$\left\| {\mathit{P}({\mathit{k}_n} - {\rm{2}})} \right\|$为递减序列, 因此,
$ \left\| {P({k_n} - 2)} \right\| \le \left\| {P(0)} \right\| $
因此
$ \begin{array}{l} \mathop {\lim }\limits_{k \to \infty } \frac{{\lambda ({k_n})[{{\left\| {e({k_n})} \right\|}^2} - 4{E^2}]}}{{41 + [1 - \lambda ({k_n})]{\varphi ^{\rm{T}}}({k_n} - 2)P({k_n} - 2)\varphi ({k_n} - 2)}} \ge \\ \;\;\;\;\;\frac{1}{{8{c_6}\left\| {P(0)} \right\|}} > 0 \end{array} $
这与式(18)矛盾.故假设不成立, $e(k)$有界, 从而采用线性鲁棒自适应控制算法时, 闭环系统BIBO稳定.
注释 1. 单独使用线性鲁棒自适应控制器能够保证闭环运行过程全局李亚普洛夫稳定, 但是无法使运行过程具有良好的跟踪性能.为了改善运行过程的跟踪性能, 同时不影响其稳定性, 我们将线性鲁棒自适应控制器、基于神经网络的非线性控制器以及切换机制相结合, 提出一种新的多模型自适应控制方法.
3. 多模型自适应控制
3.1 多模型自适应控制算法
下面考虑多模型自适应控制问题, 为将问题简化, 采用两个模型, 多模型切换系统如图 2所示.
图 2中, 线性估计模型定义为
$ \widehat{\phi}_1(k)=\widehat{\theta}_1^{\rm T}(k-2)\varphi(k-2)+\phi(k-2) $
(24) 其中, $\widehat{\theta}_1(k)=[\widehat{G}_{1, 0}(k), \widehat{G}_{1, 1}(k), \widehat{Q}_{1, 0}(k), \widehat{Q}_{1, 1}(k)]^{\rm T}$为$k$时刻的基于线性模型(24)的估计, 采用式(16)在线辨识, 线性辨识误差为
$ {e_1}(k) = \phi (k) - {\hat \phi _1}(k) $
(25) 通过下式计算控制输入$y^*(k)$, 作为基于线性模型的控制器$y^*_1(k)$.
$ \hat \theta _1^{\rm{T}}(k)\varphi (k) = R({z^{ - 1}}){r^*}(k + 2) - T({z^{ - 1}})r(k) $
(26) 非线性估计模型定义为
$ {\hat \phi _2}(k) = \hat \theta _2^{\rm{T}}(k - 2)\varphi (k - 2) + \phi (k - 2) + \hat \rho (k - 2) $
(27) 其中,$\widehat{\theta}_2(k)=[\widehat{G}_{2, 0}(k), \widehat{G}_{2, 1}(k), \widehat{Q}_{2, 0}(k), \widehat{Q}_{2, 1}(k)]^{\rm T}$为$k$时刻$\theta$的基于非线性模型(27)的估计; $\widehat{\rho}(k)$为$\rho^*(k)$的神经网络估计, 其中, $\rho^*(k):=\Delta\phi(k+2)-\widehat{\theta}_2(k)^{\rm T}\varphi(k)$, 即
$ \widehat{\rho}(k)=NN[\widehat{W}(k), \varphi(k)] $
(28) 其中, $NN[\cdot]$表示神经网络结构; $\varphi(k)$为神经网络的输入向量; $\widehat{W}(k)$为$k$时刻理想权阵$W^*$的估计.与文献[12]类似, 除了要求参数阵的估计$\widehat{\theta}_2(k)$和权阵的估计$\widehat{W}(k)$有界, $\widehat{Q}_{2, 0}(k)$非奇异, 并未对$\widehat{\theta}_2(k)$的辨识算法和神经网络的结构以及权阵校正算法进行任何限制, 即
$ \widehat{\theta}_2(k), \widehat{W}(k);~~\widehat{Q}_{2, 0}(k)~\text{非奇异}, ~ \forall k $
(29) 非线性辨识误差为
$ e_2(k)=\phi(k)-\widehat{\phi}_2(k) $
(30) 因此, 根据式(10)和确定性等价原则, 通过下式计算控制输入$y^*(k)$, 作为基于非线性模型的控制器$y^*_2(k)$.
$ \begin{array}{l} {{\hat \theta }_2}(k)\varphi (k) + \hat \rho (k) = R({z^{ - 1}}){r^*}(k + 2){\mkern 1mu} - \\ \;\;\;\;\;\;\;\;T({z^{ - 1}})r(k) \end{array} $
(31) 切换准则为
$ \begin{array}{l} {J_j}\left( k \right) = \sum\limits_{i = 2}^k {\frac{{{\lambda _j}(k)[{{\left\| {{e_j}(k)} \right\|}^2} - 4{E^2}]}}{{4\{ 1 + [1 - {\lambda _j}(k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)\} }} + } \\ {c_0}\sum\limits_{l = k - N - 1}^k {\left( {\frac{1}{2} - {\lambda _j}(l){{\left\| {{e_j}(l)} \right\|}^2}} \right)} \end{array} $
(32) $ {\lambda _j}\left( k \right) = \left\{ \begin{array}{l} \frac{1}{2}, \;\;若\left\| {{e_j}(k)} \right\|>2E\\ 0, \;\;否则 \end{array} \right. $
(33) 其中, $N$是一个正整数, $c_0$是一个大于等于0的预先确定的常数.
每一时刻$k$, 比较$J_1(k)$和$J_2(k)$, 求出最小的$J^*(k)$, 选择与$J^*(k)$对应的自适应控制器$y_i^*(k)$, 并将其应用于运行过程.
3.2 多模型自适应控制系统稳定性和性能
定理 2. 运行过程动态模型(6)满足假设1, 则当基于多模型自适应控制算法(24)~ (33)用于运行过程(6)时, 闭环切换系统BIBO稳定.此外, 对于任意给定的正数$\varepsilon$, 存在时刻$K$, 当$k>K$时, 系统的广义跟踪误差满足$\left\| {\bar e(k)} \right\| \le 2E + \varepsilon $.
证明. 由引理1可知,
$ \mathop {\lim }\limits_{k \to \infty } \frac{{{\lambda _1}(k)[{{\left\| {{e_1}(k)} \right\|}^2} - 4{E^2}]}}{{4\{ 1 + [1 - {\lambda _1}(k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)\} }} = 0 $
(34) 由式(24)和式(25)可知,
$ \begin{array}{l} {e_1}(k) = \phi (k) - {{\hat \phi }_1}(k) = \\ \;\;\;\;\;\;\;\;\;\;\Delta \phi (k) - \hat \theta _1^{\rm{T}}(k - 2)\varphi (k - 2) = \\ \;\;\;\;\;\;\;\;\;T({z^{ - 1}})r(k) - T({z^{ - 1}})r(k - 2) - \\ \;\;\;\;\;\;\;\;\hat \theta _1^{\rm{T}}(k - 2)\varphi (k - 2) \end{array} $
(35) 由式(27)和式(30)可知
$ \begin{array}{l} {e_2}(k) = \phi (k) - {{\hat \phi }_2}(k) = \\ \;\;\;\;\;\;\Delta \phi (k) - \hat \theta _2^{\rm{T}}(k - 2)\varphi (k - 2) - \hat \rho (k - 2) = \\ \;\;\;\;\;\;T({z^{ - 1}})r(k) - T({z^{ - 1}})r(k - 2) - \\ \;\;\;\;\;\;\hat \theta _2^{\rm{T}}(k - 2)\varphi (k - 2) - \hat \rho (k - 2) \end{array} $
(36) 于是, 根据确定性等价原则, 每一时刻
$ \bar{e}(k)=e_1(k)~ \mbox{或}~e_2(k) $
(37) 由于每一时刻, 系统辨识误差$e(k)=e_1(k)$或$e_2(k)$, 故由式(21)可知, 存在正常数$c_7$, $c_8$满足
$ \left\| {X(k - 2)} \right\| \le {c_7} + {c_8}\mathop {\max }\limits_{0 \le \tau \le k} \left\| {e(\tau )} \right\| $
(38) 由式(33)可知, 切换函数$J_j(k)$ $(j=1, 2)$的第2项是有界的.因此由引理1可知, $J_1(k)$有界.对于$J_2(k)$有两种情况.
1) $J_2(k)$无界.由于$J_1(k)$有界, 因此存在时刻$K_1$使得当$k\geq K_1$时有$J_1(k)\leq J_2(k)$.故根据切换机制, 当$k\geq K_1+1$时, 系统辨识误差$e(k)=e_1(k)$满足
$ \mathop {\lim }\limits_{k \to \infty } \frac{{{\lambda _1}(k)[{{\left\| {e(k)} \right\|}^2} - 4{E^2}]}}{{4\{ 1 + [1 - {\lambda _1}(k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)\} }} = 0 $
(39) 其中,
$ \lambda \left( k \right) = \left\{ \begin{array}{l} \frac{1}{2}, \;\;若\left\| {e(k)} \right\|>2E\\ 0, \;\;否则 \end{array} \right. $
2) $J_2(k)$有界.由切换准则式(32)可知, $e_2(k)$满足
$ \mathop {\lim }\limits_{k \to \infty } \frac{{{\lambda _2}(k)[{{\left\| {{e_2}(k)} \right\|}^2} - 4{E^2}]}}{{4\{ 1 + [1 - {\lambda _2}(k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)\} }} \to 0 $
故系统辨识误差$e(k)=e_1(k)$或$e_2(k)$满足式(39).
其余部分的证明类似于定理1.
由式(39)和$X(k-2)$的有界性可知,
$ \mathop {\lim }\limits_{k \to \infty } \lambda (k)\left[ {{{\left\| {e(k)} \right\|}^2} - 4{E^2}} \right] $
即, 对任意小的正数$\varepsilon$, 存在时刻$K$, 当$k>K$时,
$ \left\| {e(k)} \right\| \le 2E + \varepsilon $
(40) 注释2. 由式(39)可知, 非线性辨识误差
$ {e_2}(k) = {\rho ^*}(k - 2) - \hat \rho (k - 2) $
(41) 适当选择神经网络结构和参数, 可以保证$\left\| {{\rho ^*}(k} \right.$ $-$ $\left. {2) - \hat \rho (k - 2)} \right\|<\varepsilon $.因此若运行过程选择非线性自适应控制器$y_2^*(k)$作为输入信号, 则由式(35)和式(36)可知, 广义跟踪误差$\left\| {\bar e(k)} \right\|<\varepsilon $满足.
4. 仿真实验
为验证本文所提方法的有效性, 首先考虑如下底层被控对象模型
$ \begin{array}{l} x(k + 1) = \left( {\begin{array}{*{20}{c}} {1.5}&6\\ 6&4 \end{array}} \right)x(k) + \\ \;\;\;\;\;\;\;\;\;\left( {\begin{array}{*{20}{c}} { - 4.2623}&{ - 3.8254}\\ {8.3534}&{6.1711} \end{array}} \right)u(k)\\ y(k) = \left( {\begin{array}{*{20}{c}} {0.1546}&{ - 0.012}\\ { - 0.0099}&{0.2281} \end{array}} \right)x(k) \end{array} $
(42) 其中, $x=[x_1, x_2]^{\rm T}$, $y=[y_1, y_2]^{\rm T}$, $u=[u_1, u_2]^{\rm T}$.为使底层闭环系统稳定, 并实现稳态跟踪, 选择如下极点配置控制器
$ u(t)=-Kx(t)+Ly^*(t) $
(43) 其中, $y^*(t)=[y_1^*, y_2^*]^{\rm T}$为底层回路设定值, 由后面的运行控制给出.
$ \begin{array}{l} K = \left( {\begin{array}{*{20}{c}} {7.1487}&{15.3085}\\ { - 8.8017}&{ - 19.0044} \end{array}} \right)\\ \;\;L = \left( {\begin{array}{*{20}{c}} { - 14.5}&{30.25}\\ { - 20.6}&{ - 35.6} \end{array}} \right) \end{array} $
(44) 假设运行层动态模型为
$ \begin{array}{l} r(k + 1) = \left( {\begin{array}{*{20}{c}} 1&0\\ 0&1 \end{array}} \right)r(k) + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left( {\begin{array}{*{20}{c}} { - 1.2893}&{ - 0.0678}\\ {0.2798}&{ - 4.3693} \end{array}} \right)y(k) + \nu (k) \end{array} $
(45) 其中,
$ r(k) = {[{r_1}, {r_2}]^{\rm{T}}} $
$ \begin{array}{l} \nu (k) = \left( {\begin{array}{*{20}{c}} {{\nu _1}}\\ {{\nu _2}} \end{array}} \right) = 0.01 \times \\ \;\;\;\;\;\;\;\;\;\;\left( {\begin{array}{*{20}{c}} {{\rm{sin}}({\rm{1 + }}y_{\rm{1}}^{{\rm{*2}}}(k{\rm{ - 1}}){\rm{ + }}r_{\rm{1}}^{\rm{2}}(k{\rm{ - 1}}){\rm{ + }}}\\ {r_2^2(k) - \frac{{{r_1}(k - 1) + {r_2}(k)}}{{1 + y_1^{*2}(k - 1) + r_1^2(k - 1) + r_2^2(k)}})}\\ {{\rm{sin}}({\rm{1 + }}y_{\rm{2}}^{{\rm{*2}}}(k{\rm{ - 1}}){\rm{ + }}r_{\rm{1}}^{\rm{2}}(k{\rm{ - 1}}){\mkern 1mu} {\rm{ + }}}\\ {r_2^2(k) - \frac{{{r_1}(k) + {r_2}(k - 1)}}{{1 + y_2^{*2}(k - 1) + r_1^2(k) + r_2^2(k - 1)}})} \end{array}} \right) \end{array} $
则由式(5)可知, 运行过程广义对象模型为
$ \begin{array}{l} x(k + 1) = \left( {\begin{array}{*{20}{c}} { - 1.7}&{ - 1.45}\\ {0.6}&{ - 6.6} \end{array}} \right)x(k) + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left( {\begin{array}{*{20}{c}} {17}&{7.25}\\ { - 6}&{33} \end{array}} \right){y^*}(k)\\ r(k + 1) = \left( {\begin{array}{*{20}{c}} 1&0\\ 0&1 \end{array}} \right)r(k) + \\ \;\;\;\;\;\;\;\;\;\;\;\;\;\;\left( {\begin{array}{*{20}{c}} { - 0.2}&0\\ 0&{ - 1} \end{array}} \right)x(k) + \nu (k) \end{array} $
(46) 选择加权多项式矩阵
$ \begin{array}{l} T({z^{ - 1}}) = R({z^{ - 1}}) = \\ \;\;\;\;\;\;\;\;\;\;\;\;\left( \begin{array}{l} - 5 - 0.1{z^{ - 1}}\;\;\;\;\;\;\;\;\;0\\ \;\;\;\;\;\;0\;\;\;\;\;\;\;\;\; - 1 - 0.1{z^{ - 1}} \end{array} \right) \end{array} $
运行指标目标值为
$ {r^*}(k) = \left( \begin{array}{l} \;\;\;\;\;\;\;\;\;\;\;\;\;0.5\\ 0.5{\rm{sign}}\left( {\cos \left( {k \times \frac{\pi }{{50}}} \right)} \right) \end{array} \right) $
易知, 控制器真实参数阵为
$ \theta = \left( {{\theta _0}\;\;\;\;\;{\theta _1}} \right) $
其中,
$ \begin{array}{l} {\theta _0} = ( - 6.53, - 10.556, 1.43, 10.556, 17, 7.25, \\ \;\;\;\;\;\;\;\; - 2.86, - 52.78{)^{\rm{T}}} \end{array} $
$ \begin{array}{l} {\theta _1} = (21.6, - 36.53, - 21.6, 35.43, - 6, 33, \\ \;\;\;\;\;\;\;43.2, - 177.15{)^{\rm{T}}} \end{array} $
本仿真实验中, 我们假设它是未知的, 并根据先验知识选择待辨识控制器初始参数阵为
$ \begin{array}{l} \\ \begin{array}{*{20}{l}} {\hat \theta (0) = {{\left( {\begin{array}{*{20}{c}} { - 4}&{ - 7}&0&4&{19}&3&{ - 1}&{ - 35}\\ {16}&{ - 31}&{ - 15}&{30}&{ - 2}&{29}&{35}&{ - 160} \end{array}} \right)}^{\rm{T}}}} \end{array} \end{array} $
选择单隐层线性输出的静态BP网对$\rho^*(k)$进行估计, 其隐元数为20, 学习率为0.1;选择$c=1$, $N$ $=$ $2$.
图 3为单独采用线性鲁棒自适应控制方法时运行过程的运行指标目标值$r^*(k)$和运行过程输出$r(k)$.从图 3可以看出, 虽然该控制器可以使运行过程稳定, 但跟踪效果很差. 图 4为采用本文所提的多模型自适应控制方法时运行过程的运行指标目标值$r^*(k)$、运行过程输出$r(k)$和运行过程控制输入, 即底层设定值$y^*(k)$.与图 3相比, 图 4中的跟踪效果明显改善. 图 5为$\widehat{\theta}_1(k)$中16个参数的在线变化曲线. 图 6为底层极点配置控制系统的跟踪曲线.为进行比较, 仍以上述矩阵为控制器初始参数阵, 采用文献[12]提出的基于投影算法的多模型自适应控制方法对运行过程进行仿真, 运行过程跟踪结果如图 7所示.相应的$\widehat{\theta}_1(k)$中各参数的在线变化曲线如图 8所示.由图 4和图 7可知, 采用本文提出的基于最小二乘算法的多模型自适应控制方法时, 即使控制器初始参数阵离控制器真实参数阵较远, 仍具有有良好的跟踪效果.两相比较, 基于投影算法的多模型自适应控制方法对初始参数阵非常灵敏, 当初始参数阵远离控制器真实参数阵时, 控制效果较差.比较图 5和图 8可以看出, 最小二乘算法与投影算法相比具有更快的收敛速度.
5. 结论
工业运行过程应考虑底层跟踪设定值的动态误差对整个运行过程优化和控制的影响.现有的工业运行控制方法假设运行层为已知的线性静态模型.本文针对一类运行层为未知线性动态模型的工业运行过程, 提出了一种基于递推最小二乘算法的多模型自适应控制方法.通过理论分析和仿真比较, 验证了与现有的多模型自适应控制方法相比, 本文提出方法可以应用于工业运行过程, 并具有良好的跟踪效果.
工业过程运行控制是近年来控制领域比较热门的研究方向之一, 现有的方法针对的被控对象主要是线性的, 并且主要集中在理论研究上.在实际的工业过程控制中, 非线性动态无可避免, 当两层结构中的被控对象都是非线性时, 如何设计控制器, 如何将理论的研究成果进行实际应用具有一定的挑战.
附录A. 引理1的证明
证明. 当$\widehat{Q}_0^+(k)$非奇异时, $\widehat{\theta}(k)$与$\widehat{\theta}^+(k)$相等.由式(16d)和式(16e)可知,
$ e(k) = [{\theta ^{\rm{T}}} - {\hat \theta ^{\rm{T}}}(k - 1)]\varphi (k - 2) + \rho (k - 2) $
(A1) 令
$ L(k)=\frac{P(k-2)\varphi(k-2)}{1+\varphi^{\rm T}(k-2)P(k-2)\varphi(k-2)} $
(A2) 由式(16b)、式(16c)以及式(A1)和式(A2)可知,
$ \begin{array}{l} P(k) = P(k - 2) - \lambda (k)L(k){\varphi ^{\rm{T}}}(k - 2)P(k - 2) \Rightarrow \\ P(k) = [I - \lambda (k)L(k){\varphi ^{\rm{T}}}(k - 2)]P(k - 2) \Rightarrow \\ P(k){P^{ - 1}}(k - 2) = I - \lambda (k)L(k){\varphi ^{\rm{T}}}(k - 2) \end{array} $
(A3) 和
$ \begin{array}{l} \widetilde \theta (k) = \widetilde \theta (k - 2) + \lambda (k)L(k){e^{\rm{T}}}(k) = \\ \;\;\;\;\;\;\;\;\;\;[I - \lambda (k)L(k){\varphi ^{\rm{T}}}(k - 2)]\widetilde \theta (k - 2) + \\ \;\;\;\;\;\;\;\;\;\;\lambda (k)L(k){\rho ^{\rm{T}}}(k - 2) = \\ \;\;\;\;\;\;\;\;\;\;P(k){P^{ - 1}}(k - 2)\widetilde \theta (k - 2) + \\ \;\;\;\;\;\;\;\;\;\lambda (k)L(k){\rho ^{\rm{T}}}(k - 2) \end{array} $
(A4) 由式(A4)可知,
$ \begin{array}{l} {P^{ - 1}}(k)\widetilde \theta (k) - {P^{ - 1}}(k - 2)\widetilde \theta (k - 2) = \\ \;\;\;\;\;\;\lambda (k){P^{ - 1}}(k)L(k){\rho ^{\rm{T}}}(k - 2) \end{array} $
(A5) 由于$\varphi^{\rm T}(k-2)P(k-2)\varphi(k-2)\times I=\varphi(k-2)\varphi^{\rm T}(k-2)P(k-2)$, 因此由式(16c)可知
$ \begin{array}{l} \frac{{{P^{ - 1}}(k)P(k - 2)\varphi (k - 2)}}{{1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} = \\ \;\;\;\;\frac{{\varphi (k - 2)}}{{1 + [1 - \lambda (k)]{\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} \end{array} $
(A6) 令$Q(k):=\varphi^{\rm T}(k-2)P(k-2)\varphi(k-2)$, 则
$ \begin{array}{l} V(k) - V(k - 2) = \\ \;\;\;\;\;\;\;{\rm{tr}}\{ - \frac{{\lambda (k)[e(k){e^{\rm{T}}}(k) - 4\rho (k - 2){\rho ^{\rm{T}}}(k - 2)]}}{{4[1 + [1 - \lambda (k)]Q(k)]}} - \\ \;\;\;\;\;\;\;\left. {\frac{{3\lambda (k)e(k){e^{\rm{T}}}(k)[1 + Q(k)[1 - \frac{{4\lambda (k)}}{3}]]}}{{4[1 + [1 - \lambda (k)]Q(k)][1 + Q(k)]}}} \right\} \end{array} $
(A7) 由于
$ \frac{1+Q(k)\left[1-\frac{4\lambda(k)}{3}\right]}{1+[1-\lambda(k)]Q(k)}\geq \frac{1}{2} $
(A8) 因此
$ \begin{array}{l} V(k) - V(k - 2) \le \\ \;\;\;\;\;{\rm{tr}}\{ - \frac{{\lambda (k)[e(k){e^{\rm{T}}}(k){\rm{ - 4}}\rho (k{\rm{ - 2}}){\rho ^{\rm{T}}}(k{\rm{ - 2}})]}}{{{\rm{4}}[{\rm{1 + }}[{\rm{1 - }}\lambda (k)]Q(k)]}} - \\ \;\;\;\;\;\frac{{3\lambda (k)e(k){e^{\rm{T}}}(k)}}{{8[1 + Q(k)]}}\} \le \\ \;\;\;\;\; - \frac{{\lambda (k)[{{\left\| {e(k)} \right\|}^2} - 4{E^2}]}}{{4[1 + [1 - \lambda (k)]Q(k)]}} - \frac{{3\lambda (k){{\left\| {e(k)} \right\|}^2}}}{{8[1 + Q(k)]}} \end{array} $
(A9) 因此, 引理1中1)得证.由式(16b)可知,
$ \begin{array}{l} {\varphi ^{\rm{T}}}(k - 2)[\hat \theta (k) - \hat \theta (k - 2)] = \\ \;\;\;\;\;\;\frac{{\lambda (k){\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2){e^{\rm{T}}}(k)}}{{1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} \end{array} $
(A10) 因此
$ \begin{array}{l} {\varphi ^{\rm{T}}}(k - 2)[\hat \theta (k) - \hat \theta (k - 2)][\hat \theta (k) - \\ \;\;\;\;\;\;\;\hat \theta (k - 2){]^{\rm{T}}}\varphi (k - 2) \le \\ \;\;\;\;\;\;\;\frac{{\lambda (k){\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2){e^{\rm{T}}}(k)e(k)}}{{1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} \end{array} $
(A11) 故
$ {\left\| {\hat \theta (k) - \hat \theta (k - 2)} \right\|^2} \le \frac{{\lambda (k)\left\| {P(k - 2)} \right\|{e^{\rm{T}}}(k)e(k)}}{{1 + {\varphi ^{\rm{T}}}(k - 2)P(k - 2)\varphi (k - 2)}} $
(A12) 由引理1中的1)及$\| P(k-2)\|$的有界性, 可知2)成立.当$\widehat{Q}_0^+(k)$非奇异时, 记.由式(16g)可知${\left\| {{\theta ^ + }(k) - \theta } \right\|^2}$, 因此$V^+(k)\leq V(k)$, 故引理1\linebreak仍旧成立.
-
图 2 调度思想示意图 1
Fig. 2 Diagram 1 of the scheduling idea
图 3 调度思想示意图 2
Fig. 3 Diagram 2 of the scheduling idea
表 1 综合调度问题参数表
Table 1 Parameter list of integrated scheduling problem
参数 含义 $M_{i}$ 工序$i$的加工设备 $T_{Si}$ 工序$i$的加工开始时间 $T_{i}$ 工序$i$的加工用时 $T_{Ei}$ 工序$i$的加工结束时间 $T_{Mki}$ 调度工序$i$后第$k$台设备上当前加工完成时间, $1\leq k\leq m$ $T_{Mi}$ 调度工序$i$后当前最晚加工完成的已调度工序加工完成时间 $T_{Tij}$ 工序$i$的第$j$个"准调度时间点", $j\geq 1$ $T_{Ti}$ 工序$i$的"准调度时间点"集合 $F_{ij}$ 工序$i$在工艺树中的第$j$个紧前工序, $j\geq 1$ $N_{if}$ 工序$i$在工艺树中的第$f$个紧后工序, $f\geq 1$ $F_{Mi}$ 工序$i$在其加工设备上的紧前工序 $N_{Mig}$ 工序$i$在其加工设备上的第$g$个后工序 $N_{Qik}$ 工序$i$在其工序序列上的第$k$个后续工序 表 2 本文算法调度产品$A$过程
Table 2 Scheduling the product $A$ by the algorithm proposed
工序号 加工设备 准调度时间点 试调度方案加工总时间 后续工序静态调度时间 确定调度时间点 当前方案中每个工序调度时间点 $A_{1}$ $M_3$ - - - 0 $A_{1}$: 0; $A_{2}$ $M_4$ - - - 2 $A_{1}$: 0, $A_{2}$: 2; $A_{10}$ $M_3$ - - - 4 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4; $A_{11}$ $M_2$ - - - 6 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6; $A_{18}$ $M_1$ - - - 7 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6,
$A_{18}$:7;$A_{15}$ $M_3$ - - - 8 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6,
$A_{18}$:7, $A_{15}$: 8;$A_{21}$ $M_2$ - - - 11 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6,
$A_{18}$:7, $A_{15}$: 8, $A_{21}$: 11;$A_{26}$ $M_3$ - - - 14 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6,
$A_{18}$:7, $A_{15}$: 8, $A_{21}$: 11, $A_{26}$: 14;$A_{25}$ $M_2$ - - - 16 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6,
$A_{18}$:7, $A_{15}$: 8, $A_{21}$: 11, $A_{26}$: 14,
$A_{25}$: 16;$A_{28}$ $M_1$ - - - 17 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 4, $A_{11}$: 6,
$A_{18}$:7, $A_{15}$: 8, $A_{21}$: 11, $A_{26}$: 14,
$A_{25}$: 16, $A_{28}$: 17;$A_{3}$ $M_3$ 2|6|11|16 19|19|18|19 18|22|27|32 2 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$:7,
$A_{18}$: 8, $A_{15}$: 9, $A_{21}$: 12, $A_{26}$: 15,
$A_{25}$: 17, $A_{28}$: 18, $A_{3}$: 2;$A_{9}$ $M_4$ 5|19 19|22 19|32 5 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$:7,
$A_{18}$: 8, $A_{15}$: 9, $A_{21}$: 12, $A_{26}$: 15,
$A_{25}$: 17, $A_{28}$: 18, $A_{3}$: 2, $A_{9}$: 5;$A_{13}$ $M_3$ 8|12|17 20|19|19 18|22|27 8 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$:7,
$A_{18}$: 8, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8;$A_{16}$ $M_2$ 10|16|19 20|21|22 18|24|27 10 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$:7,
$A_{18}$: 8, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10;表 3 本文算法调度产品$A$过程(续表 2)
Table 3 Scheduling the product $A$ by the algorithm proposed (continued Table 2)
工序号 加工设备 准调度时间点 试调度方案加工总时间 后续工序静态调度时间 确定调度时间点 当前方案中每个工序调度时间点 $A_{23}$ $M_4$ 13|20 20|22 20|23 13 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 7,
$A_{18}$: 8, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13;$A_{29}$ $M_1$ 15 20 18 15 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 7,
$A_{18}$: 8, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15;$A_{5}$ $M_4$ 4|8|
15|2020|20|
20|2116|20|
27|324 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$:7,
$A_{18}$: 8, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4;$A_{7}$ $M_2$ 5|8|
13|16|1920|21|
23|21|2216|19|
24|28|305 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5;$A_{17}$ $M_1$ 8|10|18 20|20|20 16|18|26 8 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8;$A_{19}$ $M_4$ 9|15|20 20|20|22 16|22|27 9 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 9;$A_{22}$ $M_1$ 11|18 20|21 16|23 11 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 9,
$A_{22}$: 11;$A_{20}$ $M_4$ 14|15|20 21|20|22 16|17|22 15 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 9,
$A_{22}$: 11, $A_{20}$: 15;$A_{4}$ $M_2$ 2|8|9|
13|16|1920|23|22|
23|21|2213|19|20|
24|28|302 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 9,
$A_{22}$: 11, $A_{20}$: 15, $A_{4}$: 2;表 4 本文算法调度产品$A$过程(续表 3)
Table 4 Scheduling the product $A$ by the algorithm proposed (continued Table 3)
工序号 加工设备 准调度时间点 试调度方案加工总时间 后续工序静态调度时间 确定调度时间点 当前方案中每个工序调度时间点 $A_{8}$ $M_1$ 5|9|10|
14|1820|22|20|20|
2013|17|18|
22|265 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 13, $A_{29}$: 15,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 9,
$A_{22}$: 11, $A_{20}$: 15, $A_{4}$: 2, $A_{8}$: 5;$A_{14}$ $M_4$ 7|8|11|
15|17|2026|20|20|
22|22|2413|14|17|
21|23|268 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 5,
$A_{14}$: 8;$A_{27}$ $M_2$ 12|13|
16|1921|22|
20|2114|15|
18|2116 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 5,
$A_{14}$: 8, $A_{27}$: 16;$A_{12}$ $M_1$ 5|7|
9|10|
17|2020|20|
21|20|
21|2113|15|
17|18|
25|285 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6,
$A_{14}$: 8, $A_{27}$: 16, $A_{12}$: 5;$A_{31}$ $M_2$ 6|8|
9|13|
16|18|1922|21|
20|21|
21|21|2013|15|
16|20|
23|25|
269 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6,
$A_{14}$: 8, $A_{27}$: 16, $A_{12}$: 5, $A_{31}$: 9;$A_{24}$ $M_1$ 10|17|
2020|24|
2416|23|
2610 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16, $A_{25}$: 18,
$A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5, $A_{13}$: 8,
$A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17, $A_{5}$: 4,
$A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12, $A_{22}$: 14,
$A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6, $A_{14}$: 8, $A_{27}$: 16,
$A_{12}$: 5, $A_{31}$: 9, $A_{24}$: 10;表 5 本文算法调度产品$A$过程(续表 4)
Table 5 Scheduling the product $A$ by the algorithm proposed (continued Table 4)
工序号 加工设备 准调度时间点 试调度方案加工总时间 后续工序静态调度时间 确定调度时间点 当前方案中每个工序调度时间点 $A_{30}$ $M_3$ 14|18 20|20 16|20 14 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 5, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6,
$A_{14}$: 8, $A_{27}$: 16, $A_{12}$: 5, $A_{31}$: 9,
$A_{24}$: 10, $A_{30}$: 14;$A_{6}$ $M_3$ 5|7|
10|13|
16|1820|20|
21|20|
21|206|8|
11|14|
17|195 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 6, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6,
$A_{14}$: 8, $A_{27}$: 16, $A_{12}$: 5, $A_{31}$: 9,
$A_{24}$: 10, $A_{30}$: 14, $A_{6}$: 5;$A_{32}$ $M_3$ 13|16|18 20|21|20 14|17|19 13 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 6, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6,
$A_{14}$: 8, $A_{27}$: 16, $A_{12}$: 5, $A_{31}$: 9,
$A_{24}$: 10, $A_{30}$: 14, $A_{6}$: 5,
$A_{32}$: 13;$A_{33}$ $M_4$ 16|19|
2020|21|
2117|20|
2116 $A_{1}$: 0, $A_{2}$: 2, $A_{10}$: 6, $A_{11}$: 8,
$A_{18}$: 9, $A_{15}$: 10, $A_{21}$: 13, $A_{26}$: 16,
$A_{25}$: 18, $A_{28}$: 19, $A_{3}$: 2, $A_{9}$: 5,
$A_{13}$: 8, $A_{16}$: 10, $A_{23}$: 14, $A_{29}$: 17,
$A_{5}$: 4, $A_{7}$: 5, $A_{17}$: 8, $A_{19}$: 12,
$A_{22}$: 14, $A_{20}$: 17, $A_{4}$: 2, $A_{8}$: 6,
$A_{14}$: 8, $A_{27}$: 16, $A_{12}$: 5, $A_{31}$: 9,
$A_{24}$: 10, $A_{30}$: 14, $A_{6}$: 5, $A_{32}$: 13,
$A_{33}$: 16; -
[1] 王大志, 刘士新, 郭希旺.求解总拖期时间最小化流水车间调度问题的多智能体进化算法.自动化学报, 2014, 40 (3):548-555 http://www.aas.net.cn/CN/abstract/abstract18320.shtmlWang Da-Zhi, Liu Shi-Xin, Guo Xi-Wang. A multi-agent evolutionary algorithm for solving total tardiness permutation flow-shop scheduling problem. Acta Automatica Sinica, 2014, 40 (3):548-555 http://www.aas.net.cn/CN/abstract/abstract18320.shtml [2] 黄敏, 付亚平, 王洪峰, 朱兵虎, 王兴伟.设备带有恶化特性的作业车间调度模型与算法.自动化学报, 2015, 41(3):551-558 http://www.aas.net.cn/CN/abstract/abstract18633.shtmlHuang Min, Fu Ya-Ping, Wang Hong-Feng, Zhu Bing-Hu, Wang Xing-Wei. Job-shop scheduling model and algorithm with machine deterioration. Acta Automatica Sinica, 2015, 41 (3):551-558 http://www.aas.net.cn/CN/abstract/abstract18633.shtml [3] 王圣尧, 王凌, 许烨, 周刚.求解混合流水车间调度问题的分布估计算法.自动化学报, 2012, 38 (3):437-443 http://www.aas.net.cn/CN/abstract/abstract17695.shtmlWang Sheng-Yao, Wang Ling, Xu Ye, Zhou Gang. An estimation of distribution algorithm for solving hybrid flow-shop scheduling problem. Acta Automatica Sinica, 2012, 38 (3):437-443 http://www.aas.net.cn/CN/abstract/abstract17695.shtml [4] 贾文友, 江志斌, 李友.面向产品族优化时间窗下可重入批处理机调度.机械工程学报, 2015, 51 (12):192-201 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jxxb201512031&dbname=CJFD&dbcode=CJFQJia Wen-You, Jiang Zhi-Bin, Li You. Family-oriented to optimize scheduling problem of re-entrant batch processing machine with due window. Journal of Mechanical Engineering, 2015, 51 (12):192-201 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jxxb201512031&dbname=CJFD&dbcode=CJFQ [5] 张洁, 张朋, 刘国宝.基于两阶段蚁群算法的带非等效并行机的作业车间调度.机械工程学报, 2013, 49 (6):136-144 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jxxb201306020&dbname=CJFD&dbcode=CJFQZhang Jie, Zhang Peng, Liu Guo-Bao. Two-stage ant colony algorithm based job shop scheduling with unrelated parallel machines. Journal of Mechanical Engineering, 2013, 49 (6):136-144 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jxxb201306020&dbname=CJFD&dbcode=CJFQ [6] 羌磊, 肖田元.应用扩展贝叶斯进化算法求解混流装配调度问题.计算机集成制造系统, 2007, 13 (2):317-322 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjj200702017&dbname=CJFD&dbcode=CJFQQiang Lei, Xiao Tian-Yuan. Model extended BOA to solve hybrid assembly scheduling problems. Computer Integrated Manufacturing Systems, 2007, 13 (2):317-322 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjj200702017&dbname=CJFD&dbcode=CJFQ [7] 汪浩祥, 严洪森, 汪峥.知识化制造环境中基于双层Q学习的航空发动机自适应装配调度.计算机集成制造系统, 2014, 20(12):3000-3010 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjj201412010&dbname=CJFD&dbcode=CJFQWang Hao-Xiang, Yan Hong-Sen, Wang Zheng. Adaptive assembly scheduling of aero-engine based on double-layer Q-learning in knowledgeable manufacturing. Computer Integrated Manufacturing Systems, 2014, 20 (12):3000-3010 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjj201412010&dbname=CJFD&dbcode=CJFQ [8] 谢志强, 刘胜辉, 乔佩利.基于ACPM和BFSM的动态Job-Shop调度算法.计算机研究与发展, 2003, 40 (7):977-983 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jfyz200307011&dbname=CJFD&dbcode=CJFQXie Zhi-Qiang, Liu Sheng-Hui, Qiao Pei-Li. Dynamic job-shop scheduling algorithm based on ACPM and BFSM. Journal of Computer Research and Development, 2003, 40 (7):977-983 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jfyz200307011&dbname=CJFD&dbcode=CJFQ [9] 谢志强, 杨静, 杨光, 谭光宇.可动态生成具有优先级工序集的动态Job-Shop调度算法.计算机学报, 2008, 31 (3):502-508 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjx200803017&dbname=CJFD&dbcode=CJFQXie Zhi-Qiang, Yang Jing, Yang Guang, Tan Guang-Yu. Dynamic job-shop scheduling algorithm with dynamic set of operation having priority. Chinese Journal of Computers, 2008, 31 (3):502-508 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjx200803017&dbname=CJFD&dbcode=CJFQ [10] 谢志强, 杨静, 周勇, 张大力, 谭光宇.基于工序集的动态关键路径多产品制造调度算法.计算机学报, 2011, 34(2):406-412 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjx201102020&dbname=CJFD&dbcode=CJFQXie Zhi-Qiang, Yang Jing, Zhou Yong, Zhang Da-Li, Tan Guang-Yu. Dynamic critical paths multi-product manufacturing scheduling algorithm based on operation set. Chinese Journal of Computers, 2011, 34 (2):406-412 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jsjx201102020&dbname=CJFD&dbcode=CJFQ [11] 谢志强, 辛宇, 杨静.基于设备空闲事件驱动的综合调度算法.机械工程学报, 2011, 47 (11):139-147 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jxxb201111021&dbname=CJFD&dbcode=CJFQXie Zhi-Qiang, Xin Yu, Yang Jing. Integrated scheduling algorithm based on event driven by machines' idle. Journal of Mechanical Engineering, 2011, 47 (11):139-147 http://kns.cnki.net/KCMS/detail/detail.aspx?filename=jxxb201111021&dbname=CJFD&dbcode=CJFQ [12] 谢志强, 辛宇, 杨静.可回退抢占的设备驱动综合调度算法.自动化学报, 2011, 37 (11):1332-1343 http://www.aas.net.cn/CN/abstract/abstract17623.shtmlXie Zhi-Qiang, Xin Yu, Yang Jing. Machine-driven integrated scheduling algorithm with rollback-preemptive. Acta Automatica Sinica, 2011, 37 (11):1332-1343 http://www.aas.net.cn/CN/abstract/abstract17623.shtml [13] Xie Z Q, Hao S Z, Ye G J, Tan G Y. A new algorithm for complex product flexible scheduling with constraint between jobs. Computers and Industrial Engineering, 2009, 57 (3):766-772 doi: 10.1016/j.cie.2009.02.004 [14] Xie Z Q, Yang J, He Y J, Li Z M. An algorithm of simple multi-product scheduling problem with no-wait constraint between operations. Advanced Materials Research, 2010, 129-131:902-907 doi: 10.4028/www.scientific.net/AMR.129-131 [15] Xie Z Q, Gui Z Y, Yang J. Integrated scheduling algorithm based on dynamic essential short path by device driver. Journal of Information and Computer Science, 2013, 10 (4):1075-1084 doi: 10.12733/issn.1548-7741 [16] Xie Z Q, Yang J, He Y J, Ye G J. Dynamic integrated scheduling algorithm of complex multi-products with identical machines. Advanced Materials Research, 2010, 129-131:897-901 doi: 10.4028/www.scientific.net/AMR.129-131 [17] Xie Z Q, He Y J, Liu C H, Yang J. Study on data storage of dynamic integrated scheduling. Procedia Engineering, 2012, 29:4017-4024 doi: 10.1016/j.proeng.2012.01.612 [18] Xie Z Q, Wang P, Gui Z Y, Yang J. Integrated scheduling algorithm based on dynamic essential short path. Advances in Intelligent and Soft Computing. 2012, 169:709-715 doi: 10.1007/978-3-642-30223-7 期刊类型引用(12)
1. 罗智勇,王静远,谢志强,孙广路,杨旭. 三层虚拟工作流模型的非线性制造工艺多目标优化算法研究. 自动化学报. 2022(03): 896-908 . 本站查看
2. 张剑,袁铭辉,陈浩杰,胡明珠. 基于改进烟花算法的焊接综合调度研究. 华中科技大学学报(自然科学版). 2022(05): 130-137 . 百度学术
3. 曹望成,谢志强,裴莉榕. 考虑工序序列动态时间紧迫度的逆序贪婪综合调度算法. 电子与信息学报. 2022(05): 1572-1580 . 百度学术
4. 李长云,林多,何频捷,谷鹏飞. 基于等级邻域策略的偏序柔性车间优化调度. 制造技术与机床. 2022(07): 165-172 . 百度学术
5. 巩军,胡涛,姚路. 基于信息熵的关键链缓冲区设置方法. 自动化学报. 2022(08): 2039-2049 . 本站查看
6. 谢志强,周伟,杨静. 考虑层级调度次序的资源协同综合调度算法. 计算机集成制造系统. 2022(11): 3391-3402 . 百度学术
7. 谢志强,吕妮. 存在预启动设备的综合调度算法. 机械工程学报. 2021(17): 217-225 . 百度学术
8. 郭伟飞,雷琦,宋豫川,吕向飞,李磊. 基于虚拟零部件的零等待约束复杂产品综合调度算法. 机械工程学报. 2020(04): 246-257 . 百度学术
9. 郭伟飞,宋豫川,周璠,雷琦,吕向飞. 基于逆序虚拟零部件的紧密衔接综合调度算法. 计算机集成制造系统. 2020(12): 3313-3328 . 百度学术
10. 王春梅,李志亮. 冷轧物流效能提升优化方法. 钢铁. 2019(05): 95-99 . 百度学术
11. 曹现刚,吴旭东,王鹏,李莹,刘思颖,张国祯,夏护国. 面向煤矸分拣机器人的多机械臂协同策略. 煤炭学报. 2019(S2): 763-774 . 百度学术
12. 丁芳,宋小静. 共享适应度粒子群在双机ETV中的应用. 计算机测量与控制. 2018(11): 228-232+247 . 百度学术
其他类型引用(21)
-