You are on page 1of 12

Control Engineering Practice 40 (2015) 1–12

Contents lists available at ScienceDirect

Control Engineering Practice


journal homepage: www.elsevier.com/locate/conengprac

A framework for hybrid model predictive control


in mineral processing$
Pablo Karelovic n, Eduardo Putz, Aldo Cipriano
College of Engineering, Pontificia Universidad Católica de Chile, Av. Vicuña Mackenna 4860, Santiago, Chile

art ic l e i nf o a b s t r a c t

Article history: Model Predictive Control (MPC) is an advanced technique for process control that has seen a significant
Received 30 August 2014 and widespread increase in its use in the process industry since its introduction. In mineral processing,
Accepted 20 February 2015 in particular, several applications of conventional MPC can be found for the individual processes of
Available online 31 March 2015
crushing, grinding, flotation, thickening, agglomeration, and smelting with varying degrees of success
Keywords: depending on the variables involved and the control objectives. Given the complexity of the processes
Process control normally found in mineral processing, there is also great interest in the design and development of
Hybrid model predictive control advanced control techniques which aim to deal with situations that conventional controllers are unable
Hybrid systems modeling and identification to do. In this aspect, Hybrid MPC enables the representation of systems, incorporating logical variables,
rules, and continuous dynamics. This paper firstly presents a framework for modeling and representa-
tion of hybrid systems, and the design and development of hybrid predictive controllers. Additionally,
two application examples in mineral processing are presented. Results through simulation show that the
control schemes developed under this framework exhibit a better performance when compared with
conventional expert or MPC controllers, while providing a highly systematized methodology for the
analysis, design, and development of hybrid MPC controllers.
& 2015 Elsevier Ltd. All rights reserved.

1. Introduction In the mineral processing industry, several applications of MPC


can be found for the individual processes. For instance, Ramasamy,
Model predictive control (MPC) refers to a class of computer Narayanan, and Rao (2005) performed a comparative analysis
algorithms for process control that rely on the use of dynamic between a MPC strategy and a multi-loop PI control scheme applied
models to make predictions of the evolution of the process. Using to a mineral grinding plant. A similar comparison was performed by
this predictions, a MPC algorithm performs an optimization of Chen, Zhai, Li, and Li (2007). In Suichies, Leroux, Dechert, and
predefined control objectives to compute the control sequence Trusiak (2000), a single-input/single-output (SISO) MPC algorithm
needed to drive the process to the optimal operating point. Only and a AutoRegressive eXogeneous (ARX) model identification rou-
the first action in the control sequence is sent into the plant, and tine were implemented in several sulfide flotation circuits. In
the optimization is repeated on the next control interval with the Gatzke and Doyle (2001), two control methods based on predictive
most recent state information (García, Prett, & Morari, 1989). control, soft output constraints, and prioritized control objectives
Predictive control is being increasingly applied in the process were tested on a simulated granulation process.
industry, mainly due to its ability to handle multi-variable plants The organization of this paper is as follows. Section 2 presents a
naturally and incorporate constraints on operating variables review of conventional MPC applications in mineral processing. Section
(Maciejowski, 2002). Additionally, the tuning of the controller 3 describes the hybrid modeling of dynamic systems. The design and
parameters is relatively easy and intuitive, making it particularly implementation of Hybrid Model Predictive Control (HMPC) is detailed
attractive to staff with limited knowledge of control theory in Section 4. In Section 5, the proposed HMPC framework is described.
(Camacho & Bordons, 2002). Section 6 presents two new applications of HMPC in mineral proces-
sing. Finally, conclusions are presented in Section 7.


This study was funded by the Fondecyt project 1120047, “Distributed Hybrid 2. Conventional MPC applications
Model Predictive Control for Mineral Processing”.
n
Corresponding author.
E-mail addresses: pakarelo@uc.cl (P. Karelovic), eiputz@uc.cl (E. Putz), Even though PID controllers are the most usual approach to
aciprian@ing.puc.cl (A. Cipriano). feedback control found in mineral processing plants (Hodouin, 2011),

http://dx.doi.org/10.1016/j.conengprac.2015.02.006
0967-0661/& 2015 Elsevier Ltd. All rights reserved.
2 P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12

several implementations of model-based controllers, tested through the operating point contained in X i . The transitions between linear
simulation and in real plants, can be found in the literature. models are determined at each sampling interval based on the
In Muller and Vaal (2000), a model predictive controller for a value of the states and inputs.
milling circuit was developed. Additionally, an optimizing algorithm MLD systems are a class of hybrid systems where physical laws,
was used to automatically tune the controller parameters. The logic rules, and operating constraints are interdependent
controller was implemented and tested on a milling simulator, which (Bemporad & Morari, 1999). A MLD system is described by the
was programmed using Microsoft Visual Cþ þ. Similarly, in Cortés following linear relations:
and Cerda (2010), a MPC scheme was complemented with an expert
xðk þ 1Þ ¼ AxðkÞ þB1 uðkÞ þ B2 δðkÞ þ B3 zðkÞ ð2aÞ
rules module and implemented in a real grinding circuit. The expert
module was designed to handle certain situations where conven-
yðkÞ ¼ CxðkÞ þ D1 uðkÞ þ D2 δðkÞ þ D3 zðkÞ ð2bÞ
tional MPC fails, such as overloads on Semi-Autogenous Grinding
(SAG) mills, opening and closing hydrocyclones, large disturbances in
E2 δðkÞ þ E3 zðkÞ r E1 uðkÞ þ E4 xðkÞ þE5 ; ð2cÞ
the feedback of pebbles, and blockage of lines. The predictive
controllers and the expert module were implemented as a coordi- where xðkÞ is the state of the system, uðkÞ is the input vector, and
nated control system. In Salazar, Valdés-González, Vyhmeister, and yðkÞ is the output vector. Any one of this vectors can include both
Cubillos (2014), a multi-variable MPC strategy was developed for a continuous and discrete variables. Additionally, δðkÞ and zðkÞ are
SAG device. The controller performance showed a suitable behavior, auxiliary logical and continuous variables, respectively. Eq. (2a)
independent of the system deviation from its set point. describes the evolution of the states through the state matrix A
Similarly, several applications of model-based control for the and the input matrices B1 , B2 , and B3 . Similarly, (2b) describes the
processes of granulation, flotation, and froth thickening can be evolution of the outputs of the system through the output matrix
found. A linear MPC scheme was developed by Adetayo, Pottman, C and the feedforward matrices D1 , D2 , and D3 . The constraints in
and Ogunnaike (1997) and applied to a pan granulation process, (2c) defined by the matrices E1 through E5 are a translation of the
using black-box, input–output models. Hodouin, Bazin, Gagnon, logical rules and statements into mixed-integer linear inequalities.
and Flament (2000) implemented an application of model-based The MLD system representation is useful for expressing several
control for flotation. The proposed control strategy combines types of systems involving discrete variables, as shown in Bemporad
feedforward and feedback actions and it was tested on a simulated and Morari (1999). Additionally, given its structure, this representa-
linear flotation bank. Results show that the proposed strategy tion is also useful for the development of control strategies.
attenuates the effect of typical flotation feed disturbances. In Under some assumptions, PWA systems and MLD systems are
Foroush, Gaulocher, and Gallestey (2009), a froth thickness control completely equivalent. A well-posed PWA system, that is, xðk þ1Þ
strategy with the goal of improving the concentrate mineralurgical and yðkÞ are uniquely determined for a given xðkÞ and uðkÞ, can be
characteristics was implemented. In Rojas and Cipriano (2011), rewritten as a MLD system, assuming a bounded set of feasible
two multi-variable MPC strategies based on tailing and concen- states and inputs. Conversely, a well-posed MLD system, that is,
trate grade measurements, and intermediate cell grade estimates xðk þ 1Þ, yðkÞ, δðkÞ, and zðkÞ are uniquely determined for a given xðkÞ
were implemented and applied to a rougher flotation circuit. and uðkÞ, can be rewritten as a PWA system (Heemels et al., 2001).
Most conventional MPC strategies use linear models to char- In this study, PWA systems were used to develop hybrid models of
acterize the dynamical systems to be controlled. While these linear mineral processes via piecewise linear identification. When consider-
models may provide an accurate representation in the vicinity of an ing real processes, such as the ones found in a mining plant, there are
operating point, if the controlled system deviates from the operat- two main situations where hybrid models may be applicable, namely,
ing point, the accuracy of linear models will decrease, lowering the the presence of variables that are intrinsically discrete, such as on-off
performance of the controller. In highly non-linear systems, linear switches, speed selectors, and number of active units; and the use of
approximations may not be sufficiently accurate to represent the piecewise linear models to approximate nonlinearities. Both these
real process. Additionally, conventional MPC strategies are unable to situations can be accurately represented using PWA models.
represent logical variables such as discrete events or rules. To Once the PWA system was formulated, an equivalent MLD
address these issues, hybrid MPC is used. system was obtained. To find the MLD representation, the HYbrid
System DEscription Language (HYSDEL; see Torrisi & Bemporad,
2004) was used. HYSDEL is a modeling language designed to
3. Hybrid modeling of dynamic systems describe Discrete Hybrid Automata (DHA), which are the combi-
nation of a Finite State Machine (FSM) and a Switched Affine
Hybrid dynamic models are used to describe the evolution of System (SAS) through a mode selector and an event generator.
dynamic systems that present both continuous and logical compo- The PWA models developed in this study, as described in (1),
nents. Several subclasses of hybrid systems are found in the literature: were represented in HYSDEL as DHA systems, which then were
Linear Complementarity (LC) systems, Mixed Logical Dynamical compiled and translated into equivalent MLD systems. The struc-
(MLD) systems, PieceWise Affine (PWA) systems, among others. ture of the MLD representation is suitable for the formulation of
PWA systems are a composition on linear time-invariant hybrid predictive controllers, as shown in the next section.
dynamic models that can approximate non-linear dynamics with
arbitrary accuracy by increasing the number of linearization at
appropriate operating points (Heemels, Schutter, & Bemporad, 4. Predictive control of hybrid systems
2001). A PWA dynamic system is defined by
" #
xðk þ 1Þ ¼ Ai xðkÞ þ Bi uðkÞ þ f i xðkÞ The next section describes the implementation of the predic-
for AXi ð1Þ tive controller for hybrid systems based on the MLD representa-
yðkÞ ¼ Ci xðkÞ þ gi uðkÞ
tion (2). Additionally, a hybrid state estimator is presented. This
where X i is a subset of the state/input set, typically defined by the estimator is based on the PWA representation (1) and simulta-
physical constraints of the process. Both state and input variables neously estimates the value of the continuous state of the system
can take continuous or discrete values. Each subsystem and the current active subsystem.
i A f1; 2; …; sg defined by matrices Ai , Bi , and Ci ; and vectors f i Hybrid model predictive control has been successfully imple-
and gi , corresponds to one linearization of the original system at mented in several areas. In Nandola and Rivera (2013), an
P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12 3

improved model predictive control formulation for linear hybrid current state, and future inputs, which are the variables to optimize:
systems was developed and applied to inventory management in
X
i
supply chains. In Berkenkamp and Gwerder (2014), a hybrid model xðk þiÞ ¼ Ai xðkÞ þ Ai  j Bwðk þ j 1Þ ð7aÞ
predictive control algorithm was developed for the management j¼1
of stratified thermal storage tanks in buildings. X
i
yðk þ iÞ ¼ CAi xðkÞ þC Ai  j Bwðk þj  1Þ ð7bÞ
4.1. HMPC j¼1

Using (7), future states, inputs, and outputs are collected on


When dealing with hybrid system, conventional MPC control- individual vectors defined as
lers must be reformulated to account for the discrete variables  >
introduced in the MLD representation. The resulting HMPC con- w~ ¼ wðkÞ > wðk þ 1Þ > ⋯ wðk þ N  1Þ > ð8aÞ
troller is able to calculate control laws considering both contin-
 >
uous and discrete variables. One of the advantages of the MLD x~ ¼ xðk þ 1Þ > xðk þ2Þ > ⋯ xðk þ NÞ > ~
¼ AxðkÞ þ B~w
~ ð8bÞ
representation is that the inequalities in (2c) can be added to the
 >
linear constraints of the controller's optimization problem without y~ ¼ yðk þ 1Þ > yðk þ 2Þ > ⋯ yðk þ NÞ > ¼ C~x~ ; ð8cÞ
significant modification.
To derive the HMPC, an objective function representing the where
control objectives was proposed: 2 3 2 3
A C 0 0 ⋯ 0
1  6 A2 7 60 07 ⋯
X
N 6 7 6 C 0 7
J¼ J yðk þ iþ 1Þ  yref ðk þ iþ 1Þ J 2Q y 6 37 6 7
~
A ¼6 7; ~
C ¼6 0 C ⋯ 07
i¼0 6 A 7 60 7;
 6 7 6 7
þ J uðkþ iÞ uref ðk þiÞ J 2Q u þ J Δuðk þ iÞJ 2R þ Ly> yðk þ i þ 1Þ þLu> uðkþ iÞ ; ð3Þ 4 ⋮ 5 4⋮ ⋮ ⋮ ⋱ ⋮5
N
A 0 0 0 ⋯ C
2 3
where J J 2 is the squared Euclidean norm; Q y and Q u are weight B 0 0 ⋯ 0
matrices that penalize reference error in controlled and manipu- 6 AB ⋯ 07
6 B 0 7
lated variables, respectively; R is the weight matrix that penalizes 6 7
B~ ¼ 6
6 A B
2
AB B ⋯ 07 7 ð9Þ
changes in manipulated variables (Δuðk þ iÞ); and Ly and Lu are 6 7
weight vectors that allow the controller to minimize or maximize 4 ⋮ ⋮ ⋮ ⋱ ⋮5
the value of the controlled and manipulated variables, respectively. AN  1 B A N2
B A N 3
B ⋯ B
Given the objective function (3), a constrained optimization Considering the representation (8) and the optimization pro-
problem was formulated: blem (4), an equivalent MIQP problem can be formulated:
min J 1 >
u;δ;z min w ~ þf > w
~ Hw ~ s:t: ~ r b;
Gw ð10Þ
s:t: xðk þ 1Þ ¼ AxðkÞ þB1 uðkÞ þ B2 δðkÞ þ B3 zðkÞ ~
w 2
yðkÞ ¼ CxðkÞ þD1 uðkÞ þD2 δðkÞ þ D3 zðkÞ where H and f are derived by substituting the instances of y in (3)
E2 δðkÞ þ E3 zðkÞ r E1 uðkÞ þ E4 xðkÞ þ E5 with (7b). Additionally, G and b are derived from the constraints in
umin r uðk þ iÞ r umax the optimization problem (4) by substituting the instances of x
and y with (7).
Δumin r Δuðk þ iÞ r Δumax
Auxiliary variables δðkÞ and zðkÞ are treated as decision variables
ymin r yðk þ iÞ rymax ð4Þ
along with uðkÞ. The inequalities detailed in (2c), which are added
The constraints in the optimization problem (4) combine the to the constraints of the optimization problem, ensure that the
MLD representation (2) and optional physical constraints on auxiliary variables will be uniquely determined, in accordance to
manipulated and controlled variables that may exist in the process. the MLD representation, for each input-state combination. As such,
These may include saturation of actuators for manipulated variables no prediction equations need to be derived for these variables.
and safety constraints for controlled variables, among others. The optimization problem presented in (10) is a standard MIQP
Since the optimization problem (4) consists of linear and quad- formulation for which several solvers, both commercial and free,
ratic terms, in addition to continuous and discrete variables, it can be are available.
written as a Mixed-Integer Quadratic Programming (MIQP) problem.
To that end, the following vector and matrices were defined: 4.2. Hybrid state estimator
 >
wðkÞ ¼ uðkÞ > δðkÞ > zðkÞ > ð5aÞ
As mentioned previously, in the formulation of the hybrid
B ¼ ½B1 B2 B3  ð5bÞ predictive controller future states and outputs are expressed
recursively in terms of the current state. Conventional estimators,
E ¼ ½  E1 E2 E3  ð5cÞ such as the Kalman filter, cannot be used as they cannot incorpo-
rate discrete variables directly in their formulation.
The MLD model (2) can then be rewritten as
A hybrid state estimator was implemented, based on the one
xðk þ 1Þ ¼ AxðkÞ þ BwðkÞ ð6aÞ presented by Mann and Hwang (2013). The estimator, derived
from the Interacting Multiple Model (IMM) algorithm described by
yðkÞ ¼ CxðkÞ ð6bÞ Blom and Bar-Shalom (1988), obtains an estimate of the state by a
weighted sum of the individual estimates of a number of different
EwðkÞ rE4 xðkÞ þ E5 ; ð6cÞ
filters matched to each one of the possible modes of operation of
assuming that the matrices D1 , D2 , and D3 are all equal to zero. the hybrid system. The weight of each estimate is the probability
The optimization problem (4) performs an optimization over a that its corresponding mode is active. The estimator assumes a
prediction horizon of N samples. To achieve this, predictions of piece-wise linear system with added white Gaussian noise. Addi-
future states and outputs are needed. Using (6a) and (6b), future tionally, to prevent steady-state error between setpoints and
states and outputs can be expressed recursively in terms of the controlled variables, the state of the observer is augmented with
4 P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12

white noise integrators: Having computed the initial condition, each Kalman filter
" # updates its estimates using the current measurement zðkÞ to gen-
xðk þ 1Þ ¼ Ai xðkÞ þ Bi uðkÞ þ wi ðkÞ
xðkÞ erate the updated state estimate x^ j ðkÞ. Mode probabilities are then
dðk þ 1Þ ¼ dðkÞ þ Δt  nðkÞ for AXi ð11Þ
uðkÞ updated using these measurement and applying Bayes' theorem:
yðkÞ ¼ Ci xðkÞ þ dðkÞ þ vi ðkÞ;
h i Λ ðkÞc ðkÞ
αj ðkÞ ¼ Pr qðkÞ ¼ jj Zk ; Uk ¼ Ps j j ; ð18Þ
j ¼ 1 Λj ðkÞcj ðkÞ
where the matrices Ai , Bi , and Ci are the system matrices of appropriate
dimensions for the current active mode and Δt is the sample time. The
variables wi ðkÞ, vi ðkÞ, and nðkÞ are uncorrelated, zero-mean white where Λj ðkÞ is the likelihood function of mode j, given by
Gaussian noise vectors with covariance matrices Q i , R i , and I; respec- h i  
Λj ðkÞ ¼ p zðkÞj qðkÞ ¼ j; Zk  1 ; Uk ¼ N vj ðkÞ; 0; Sj ðkÞ ð19Þ
tively. It can be seen that dðkÞ is a vector of output integrators driven by
uncorrelated, zero-mean, and unit-variance white noise, with as many  
In the previous equation, N y; y; Σ is the multivariate Gaus-
elements as measured outputs. The constant terms f i and gi introduced sian probability density function with mean y and covariance
in (1) are assumed to be zero for the implementation of the estimator. matrix Σ. Additionally, vj ðkÞ and Sj ðkÞ are the measurement
The discrete variable qðkÞ ¼ i A f1; 2; …; sg is introduced to denote residual and residual covariance of the Kalman filter associated
the current active mode, and is defined by the current active subset X i with mode j, respectively.
of the state/input set, which is described by a set of linear inequalities: Finally, the estimated continuous state of the hybrid system
" #
xðkÞ and estimated active mode are given by
qðkÞ ¼ i ⟺ Hi r bi ð12Þ
uðkÞ X
s
^
xðkÞ ¼ αi ðkÞx^ i ðkÞ ð20aÞ
where Hi , a matrix of dimensions r  ðnx þ nu Þ, and bi , a vector of i¼1

dimensions r  1, form a representation of the subset X i through r


linear inequalities. nx and nu are the number of states and inputs,
^
qðkÞ ¼ argmax αi ðkÞ ð20bÞ
i
respectively.
The filter bank is composed of conventional Kalman filters
matched to each mode by its matrices Ai , Bi , and Ci . For each filter 5. HMPC framework
j, the initial conditions x^ 0j ðk  1Þ and P0j ðk  1Þ are computed
recursively by mixing the outputs x^ i ðk  1Þ and Pi ðk  1Þ of all Several alternatives for hybrid model predictive control are
filters in the previous time step: available. One of such alternatives is the Multi-Parametric Toolbox
3.0 (Herceg, Kvasnica, Jones, & Morari, 2013), which offers multiple
X
s
x^ 0j ðk  1Þ ¼ μij j x^ i ðk  1Þ ð13aÞ functionalities for implementing model-based predictive control-
i¼0 lers, such as the ability to generate explicit MPC solutions,
X
s     > i replacing on-line optimization and greatly reducing computation
P0j ðk 1Þ ¼ μij j Pi ðk 1Þ þ x^ i ðk 1Þ  x^ 0j ðk 1Þ  x^ i ðk 1Þ  x^ 0j ðk 1Þ ; time. Nonetheless, the HMPC framework presented in this study
i¼0
was designed and developed from the ground up so it can be used
ð13bÞ
as a tool to implement different control schemes, such as Dis-
where the term μij j , called the mixing probability, is defined as tributed Hybrid Predictive Control (DHMPC).
h i The framework (available online for download1 along with the
μij j ¼ Pr qðk  1Þ ¼ ij qðkÞ ¼ j; Zk  1 ; Uk  1 ð14Þ simulation parameters of the application in flotation presented in
the following section) consists in a library of functions pro-
The mixing probability represents the probability that mode i
grammed in MATLAB, which allows the user to systematically
was active at time k  1 given that mode j is currently active and
design hybrid predictive controllers by specifying a predictive
conditioned to the measurement history Zk  1 and input history
hybrid model in MLD representation; a prediction horizon; input,
Uk  1 up to time k  1. By applying Bayes' theorem, the mixing
state and output constraints; and weights. Additionally, the frame-
probability can be computed as
work also implements an hybrid state estimator based on the PWA
γ ij ðkÞαi ðk  1Þ representation of the controlled system.
μij j ¼ ð15Þ
cj ðkÞ The main features of the HMPC framework are

where  Design and implementation of conventional or hybrid predic-


h i 
γ ij ðkÞ ¼ Pr qðkÞ ¼ jj qðk 1Þ ¼ i; Zk  1 ; Uk  1 αi ðk 1Þ ¼ Pr qðk  1Þ tive controllers.
h i X  Definition of custom affine constraints.
 s
¼ ij Zk  1 ; Uk  1 cj ðkÞ ¼ Pr qðkÞ ¼ jj Z
k1
; Uk  1 ¼ γ ij ðkÞαi ðk  1Þ  Customization of limit constraints and weights.
i¼1  Run-time adjustment of manipulated and controlled variable
ð16Þ reference.
 Constraint relaxation when problem is unfeasible.
The mode probability αi ðk  1Þ is computed recursively in the
previous iteration. Given the assumption that the hybrid system is
Thanks to the way the objective function (3) is defined, the
piece-wise linear with added white Gaussian noise, the mode
controller does not only provide reference tracking and minimization
transition probability γ ij ðkÞ can be computed from (11) and (12).
of the change in manipulated variables, but also does minimize or
The term uðkÞ is removed for simplicity but its incorporation is
maximize controlled and manipulated variables. This feature is spe-
straightforward as it is completely known in every time step:
h i cially useful in applications such as mining processes where mineral

γ ij ðkÞ ¼ Pr Hj xðkÞ r bj j qðk  1Þ ¼ i; Zk  1 ; Uk  1 ¼ Φ bj ; Hj ðAi xðk  1Þ þ Bi uðk 1ÞÞ; throughput must be maximized rather than follow a specific reference.
  The framework has been successfully implemented for the design
Hj Aj Pi ðk  1ÞAj> þ Q i Hj> Þ; ð17Þ and development of four HMPC strategies for mineral processing,

where Φðy; y; ΣÞ is the multivariate Gaussian cumulative distribu-


tion function with mean y and covariance matrix Σ. 1
https://www.dropbox.com/s/qo9k0kyi7nv16xc/HMPC.rar.
P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12 5

tested through simulation. When the controllers developed using the expressed in (23):
framework are compared with conventional control schemes based 1
on PID control, expert control, and model-based control, the hybrid Yi ¼ ; ð23Þ
ðx350  x3i Þ=a
1þe
controllers exhibit a better performance. More importantly, the
framework offers a highly systematized methodology for the design, where Yi is the fraction of feed in size xi reporting to the oversize
implementation, and evaluation of these controllers. product. The model parameters x50 and a were calibrated from
plant operation data.
6. HMPC applications in mineral processing The conveyor belt model, described by (24), is a one-
dimensional transport equation:
In this section, two implementations of the hybrid control ∂ ∂
framework in mineral processing are presented. All the applica- ρðx; tÞ þ v ρðx; tÞ ¼ 0; ð24Þ
∂t ∂x
tions were designed and tested through simulation.
where ρ is the linear density of the ore in the belt and v is the
speed of the belt.
6.1. HMPC for crushing circuits
For this plant, hybrid controllers were developed for the sections
that included hybrid components, namely the signaling light that
Fig. 1 shows the flow sheet of the crushing circuit used for this
indicates when a truck can dump its load in the primary crusher, and
implementation, composed of primary and fine crushing. Run-of-mine
the position of the tripper cars for tertiary crushing and secondary
ore is carried by trucks with a capacity of 80 tons, which then
screening. Primary screening and secondary crushing were not
discharges into a bin with a capacity of 180 tons. The bin feeds the
considered as there are no hybrid components in these units.
primary crusher, whose product is then transported by conveyor belts
To develop the PWA models necessary for the hybrid controller
to a stockpile. The fine crushing plant includes the secondary and
for primary crushing, the arrival of trucks was considered a
tertiary crushing circuits. Ore is extracted from the stockpile and
random process, which was represented as a discrete variable
transported to the primary screen, where the oversize is fed into the
that indicates when a truck has arrived. A second discrete variable
secondary cone crusher. The tertiary crushing circuit includes four
was introduced to represent the signaling light. The PWA model
vibratory screens, where the oversize is fed back into three cone
used to represent the primary crushing chamber is defined by
crushers. In both the secondary screens and tertiary crusher, tripper (  
cars are used to distribute the material into the multiple bins. Finally, mðkÞ þ Δt f in ðkÞ  f out ðkÞ if d1 ðkÞ ¼ d2 ðkÞ ¼ 1
mðk þ1Þ ¼ ð25Þ
the undersized mineral of the secondary screens is conveyed into a silo. mðkÞ  Δtf out ðkÞ otherwise;
A dynamic simulator was developed to implement the models where m(k) is the mass of mineral accumulated in the crusher
for the crushing plant. The units modeled are cone crushers, chamber, fin(k) is the mineral feed from the trucks, fout(k) is the
vibratory screens, conveyor belts, and storage units (stockpile, mineral feed to the crusher, Δt is the sample time, d1 ðkÞ is the
silo, and bins). Mineral flows, modeled as particle size distribu- discrete variable indicating the arrival of a truck and d2 ðkÞ is the
tions, were used to connect the inputs and outputs of the units. discrete variable representing the signaling light.
The cone crusher model consists in N cascaded zones (Atta, Additionally, linear models for specific energy consumption,
Johansson, & Gustafsson, 2014). In each zone, the effects of breakage, product particle size (defined as percentage of material passing a
selection, and classification are modeled. The effects of the eccentric 5 in mesh) and product mineral flow rate were identified as
speed and volume capacity limitations are also incorporated in the functions of the eccentric speed of the crusher, and can be found
model. Each zone is characterized by the following equations: in Appendix A. A set of data was generated with the dynamic
 
Fi ðtÞ ¼ ðBi Si þ ðI  Si ÞÞ Xi ðtÞ  Ui þ 1 ðtÞ ð21aÞ simulator using a Pseudo-Random Binary Signal (PRBS) as input
for the eccentric speed. Fig. 2 shows a comparison between the
d
X ðtÞ ¼ ωðtÞð  Xi ðtÞ þ Ui ðtÞ þ Fi ðtÞÞ ð21bÞ identified models and the simulator. It can be seen that the
dt i identified models give an accurate approximation of the output
Zi ðtÞ ¼ βi ðI  Ci ÞXi ðtÞ; ð21cÞ variables in the operating range considered.
Similarly, the PWA model for tertiary crushers is defined by
where Xi ðtÞ represents the mass size distribution of the ore inside 8  > 
zone i, Zi ðtÞ represents the output size distribution per rotation cycle, >
> mðkÞ þ Δt f in ðkÞ 0 0  f out ðkÞ if cðkÞ ¼ 1
>
>
>
<  > 
Ui ðtÞ represents the input size distribution per cycle and Fi ðtÞ
mðk þ 1Þ ¼ mðkÞ þ Δt 0 f in ðkÞ 0  f out ðkÞ if cðkÞ ¼ 2 ð26Þ
represents the size distribution of the material retained per cycle >
>  
>
>  >
after applying selection and breakage. The matrices Bi , Si , and Ci are >
: mðkÞ þ Δt 0 0 f in ðkÞ  f out ðkÞ if cðkÞ ¼ 3;
the breakage, selection, and classification matrices of zone i, respec-
tively. Additionally, the term βi is introduced to account for the where mðkÞ A R3 is the vector of mass of mineral accumulated in
fraction of material that, after classification for the next zone, is the three bins, f out ðkÞ A R3 is the vector of output flows for each
otherwise retained due to the speed of operation of the crusher. The bin, and cðkÞ ¼ f1; 2; 3g is the tripper car position. The PWA model
model requires that βi r 1, otherwise more than 100% of the for secondary screening is the same as (26), but contains four bins
classified material will pass to the next zone. This imposes a lower instead of three.
limit on the eccentric speed of the crusher. The equivalent MLD models for the PWA models developed for
Specific energy consumption in the cone crusher was modeled primary crushing, secondary screening, and tertiary crushing can
using Bond's law (Jankovic, Dundar, & Mehta, 2010): be found in Appendix A. Given that the crushing chamber and bins
! act as a linear plants, the MLD models are an equivalent repre-
1 1 sentation of the simulated plant. Additionally, instead of using the
E ¼ W I pffiffiffiffiffiffiffi  pffiffiffiffiffiffiffi ; ð22Þ
p80 f 80 integer variable c(k) as defined in (26), two binary variables were
where WI is the material work index, p80 and f80 are the sizes at defined, and the four possible combinations between these vari-
which 80% of the product and feed are accumulated, respectively. ables were used to represent the tripper car position (only three
The vibratory screen model was based in the model developed combinations are considered for tertiary crushing).
in Hatch (1977), which was derived from statistical and mechan- A HMPC was developed for primary crushing, secondary screen-
ical considerations. The general form of the efficiency equation is ing, and tertiary crushing. For primary crushing, the manipulated
6 P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12

where the units for R11 are rps  2 , Ly;2 are kWh=ton  1 and Ly;4 are
1
ton=h .
In secondary screening and tertiary crushing, manipulated vari-
ables are output flows and tripper car positions, bin levels are
controlled variables, and input flows are measured disturbances. In
contrast to primary crushing, which aims to maximize the pro-
cessed tonnage, control for tertiary crushing and secondary screen-
ing was designed to ensure a stable operation of the plant. As such,
the control goals are to minimize tripper car moves while prevent-
ing an overfill of the bins. Additionally, a reference was provided to
the output tonnage of each bin to ensure that the sum of the three
outputs of tertiary crushing (four for secondary screening) is equal
to the input tonnage, while bin levels are allowed to vary in a
predefined range. Objective functions that adequately implement
these control objectives for tertiary crushing and secondary screen-
ing are shown in (28) and (29), respectively:
2 
X 
J¼ J uðk þ iÞ  uref ðk þiÞ J 2Q u þ J Δuðk þ iÞ J 2R
i¼0
2 3 2 3
1 0 0 0 0 0:1 0 0 0 0
60 07 6 0 0 7
6 1 0 0 7 6 0:1 0 0 7
6 7 6 7
Fig. 1. Simulated crushing plant flow sheet. Q u ¼ 0:016
60 0 1 0 077; R¼6
6 0 0 0:1 0 0 77
6 7 6 7
40 0 0 0 05 4 0 0 0 100 0 5
0 0 0 0 0 0 0 0 0 100

50 ton ryj ðk þ i þ1Þ r200 ton; j ¼ 1; 2; 3


0 ton=h ruj ðk þ iÞ r 1000 ton=h; j ¼ 1; 2; 3 ð28Þ
2
where the units for R 44 and R 55 are ton=h . Q u;11 through Q u;33 and
R11 through R 33 are dimensionless:
2 
X 
J¼ J uðk þiÞ  uref ðk þiÞ J 2Q u þ J Δuðk þ iÞJ 2R
i¼0
2 3 2 3
1 0 0 0 0 0 0:1 0 0 0 0 0
60 1 0 0 0 077 6 0 0:1 0 0 0 0 7
6 6 7
6 7 6 7
60 0 1 0 0 07 6 0 0 0:1 0 0 0 7
Q u ¼ 0:016
60
7; R ¼ 6
7 6 0
7
6 0 0 1 0 07 6 0 0 0:1 0 0 7
7
6 7 6 7
40 0 0 0 0 05 4 0 0 0 0 100 0 5
0 0 0 0 0 0 0 0 0 0 0 100
50 ton ryj ðk þ i þ1Þ r200 ton; j ¼ 1; 2; 3; 4
0 ton=h ruj ðk þ iÞ r 1000 ton=h; j ¼ 1; 2; 3; 4 ð29Þ
2
where the units for R 55 and R 66 are ton=h . Q u;11 through Q u;44 and
R11 through R 44 are dimensionless.
For the primary crushing controller, the weights and prediction
horizon of the objective function were initially tuned manually to
achieve a satisfactory performance. A fine tuning was performed
Fig. 2. Identified model and simulator comparison for the primary crusher.
afterwards by running multiple simulations with different combinations
in the vicinity of the original values, for a total of 1331 combinations.
variables are eccentric speed and the signaling light that indicates The final weights were chosen from the simulation that produced the
when a truck can dump its load; and the controlled variables are the best performance indices. For tertiary crushing and secondary screening,
accumulated mineral in the crushing bin, specific energy consump- the weights and prediction horizon of the objective functions were
tion, product particle size, and product mineral flow. Additionally, the tuned experimentally to achieve a satisfactory performance.
discrete variable indicating the arrival of a truck and the mineral feed The hybrid controllers were tested against base control schemes. For
from the trucks fin(k) was considered measured disturbances. Control primary crushing, the base control scheme consists in an expert
objectives for primary crushing are to maximize the output mineral controller that switches the signaling light based on the level of the
flow while preventing the overfilling or emptying of the bin. An primary crusher bin to prevent an overfilling. Additionally, the expert
upper limit was placed for the product particle size, equal to 92% of controller acts on the eccentric speed of the crusher, switching between a
material passing a 5 in mesh. An objective function that adequately maximum value when there is enough mineral in the crushing bin to
implements these control goals was defined as maximize the output mineral flow, and a minimum value when the level
2 3 of the chamber is below a predefined minimum. There is no coordination
0
4 
X 
6 10 7 between both actions of the expert controller. For tertiary crushing and
100 0 6 7
J¼ J Δuðk þ iÞ J 2R þ Ly> yðk þ i þ 1Þ R ¼ ; Ly ¼ 6 7 secondary screening, the base control scheme is an expert controller that
i¼0
0 0 4 0 5
determines the position of the tripper car based on level measurements
1
of each bin. First, the controller determines the mean level of the bins,
10 ton r y1 ðk þ iþ 1Þ r 180 ton
and then finds any bin whose level is less than a predefined threshold
y3 ðk þ i þ 1Þ r 92% ð27Þ below the mean level. If no bin is below this threshold, the tripper car
P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12 7

maintains its position. Otherwise, the tripper car is moved to the bin with Table 2
the lowest levels among the bins below the threshold. Performance indices for tertiary crushing and secondary screening.
Both controllers were simulated on the same control scenario,
Index Base control HMPC Change (%)
over 1 h of plant operation with a sample time of 2.5 s. Addition-
ally, the scenario was simulated several times for each strategy Tertiary crushing tripper car moves 120 99  17.5
with different seed values for the random number generators. The Secondary screening tripper car moves 342 277  19.0
amount of mineral hauled by each truck was considered random
with a Gaussian distribution. To test the robustness of the hybrid
controller, random perturbations were added to the feed size three operating modes for each rougher flotation cell, determined by
distribution, which acts as an unmeasured disturbance. Subse- the level of pulp and froth. The operating modes identified are
quent simulations under different conditions exhibit similar con-
troller performance, so the results of a representative scenario are 1. No overflow of concentrate.
discussed. 2. Normal operation with overflow of concentrate.
For primary crushing, the hybrid controller achieved a 7.7% 3. Presence of pulp in overflow of concentrate.
increase on the processed tonnage, while increasing the specific
energy consumption in 1.9%. For secondary screening and tertiary To represent the operating modes, two auxiliary binary vari-
crushing, results show a reduction of the number of tripper car ables were defined:
moves by 19% and 17.5%, respectively, while maintaining bin levels h i h i
around a reference value. Tables 1 and 2 show performance δi1 ¼ 1 ⟺ hip r hic ð30aÞ
indices for the proposed strategy. Additionally, Fig. 3 shows the h i h i
results of the HMPC strategy for primary crushing. It can be seen δi2 ¼ 1 ⟺ hip þ hie 4 hic ; ð30bÞ
that the primary crusher bin runs empty at some points of the
simulation due to the lack of available trucks, which is shown in where hip, hie, and hic are the pulp level, froth level, and cell height
the mineral feed flow graphic of Fig. 3. for cell i; respectively. Therefore, the first operating mode is
represented by ½δ1 δ2  ¼ ½1 0, the second operating mode is
i i
From the results, it can be concluded that the HMPC strategy
represented by ½δ1 δ2  ¼ ½1 1, and the third operating mode is
i i
manages to increase the throughput of the primary crushing
represented by ½δ1 δ2  ¼ ½0 1.
i i
circuit when compared to an expert solution. Nonetheless, specific
energy consumption is also increased as a trade-off, although in a Mass balance equations (31a) and (31b) were used to model the
lower percentage. This also reveals one of the advantages of the mass of the pulp phase and the froth phase inside the cell,
proposed solution, in that the mentioned trade-off can be adjusted incorporating the feed flow, concentrate flow, and tail flow
by tuning the weight parameters in the objective function, while (Pérez-Correa et al., 1998):
in the expert solution the tuning is not so straightforward. As an " #
Q it
example, increasing the linear weight for the specific energy m p ¼ M f þ αe me  αp þ i mijk
_ ijk ijk ijk ijk ijk
p ð31aÞ
consumption in (27) to 50 results in a decrease of the processed Vp
tonnage to 752.4 ton (  9.8%) and also a decrease of specific " #
energy consumption to 1.58 kWh/ton (  1.3%). Q ic
e ¼ α p mp  α e þ
_ ijk
m ijk ijk ijk
mijk
e ; ð31bÞ
As a measure of the computational effort for the hybrid controllers V ie
to find a solution, the mean time required to compute a control action
where j is the mineral class number and k is the mineral size.
was calculated. The mean computation times are 3:2 ms, 5:8 ms and
Additionally, Mijk i i
f is the feed mass flow; Qt and Qc are the tail and the
9:7 ms for primary crushing, tertiary crushing, and secondary screen-
concentrate volumetric flow, respectively; Vip and Vie are the pulp and
ing; respectively. Simulations were performed on a desktop computer
the froth phase volume, respectively; mijk ijk
p and me are the mass of
with a 2.90 GHz, quad-core CPU, and 8 GB of RAM memory.
mineral in the pulp phase and the froth phase, respectively; and αijk p and
αijk
e are the collection rate and the drainage rate for the pulp phase and
the froth phase, respectively, which were calibrated with industrial data.
6.2. HMPC for flotation
The tail volumetric flow was derived from Torricelli's law
(Stenlund & Medvedev, 2002), while the concentrate volumetric
Fig. 4 shows the typical configuration of a rougher flotation
flow was represented with an empirical function of pulp level,
line. The line consists in a set of cells connected in series by control
froth level, and cell height:
valves. Each cell has a concentrate and tailings discharge flow. The qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
concentrate of each cell is sent to a regrinding stage, while the tail iþ1
Q it ¼ αit vic hp  hp þ Δh
i i
ð32aÞ
of each cell is fed to the next one. Finally, the tail of the last cell in
the rougher line is sent to tailing dams. The line also presents pulp     
Q ic ¼ αic hp þ he  hc δ1 δ2 þ Q if  Q it 1  δ1 ;
i i i i i i
ð32bÞ
level sensors in each cell, as well as flow sensors and ore grade
sensors at the input and output of the line. where αit and αic are tuning constants, vic A ½0; 1 is the position of
To simulate the flotation process, a hybrid non-linear dynamic the output valve of cell i, Δh is the level difference between
i
simulator was developed for the flotation line. The simulator considers i
consecutive cells and Qf is the feed volumetric flow.
The tail grade for cell i was calculated as follows:
Pm Pr ijk j
i j¼1 k ¼ 1 M t lcp
Table 1 lt ¼ lcu Pm Pr ijk
; ð33Þ
Performance indices for primary crushing. j¼1 k ¼ 1 Mt

Index Base control HMPC Change (%) where Mijk


t is the tail mass flow, lcu is the copper grade of a chalcopyrite
molecule (approximately 34.6%), and ljcp is the chalcopyrite grade of
Processed tonnage (ton) 834.5 898.4 þ 7.7 mineral class j. The equation used to calculate the tail grade is valid in
Total energy consumption (MWh) 1.33 1.47 þ 10.5
Specific energy consumption (kWh/ton) 1.60 1.63 þ 1.9
steady state. However, according to Pérez-Correa et al. (1998), this
equation can also be used to represent its behavior in dynamic state.
8 P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12

A centralized HMPC was developed for the rougher flotation line.


The manipulated variables are the positions of the output valves of
each flotation cell, and the controlled variables are the pulp levels of
each cell and the tail grade of the line. Additionally, the mineral feed
flow and feed grade are measured disturbances. Control goals are to
minimize the reference error in the line's tail grade and to minimize
variations in manipulated variables. Lower and upper bounds were
implemented for pulp levels and valves positions. An objective function
that adequately implements these control goals was defined as
3 
X 
J¼ J yðk þi þ 1Þ  yref ðk þ i þ 1Þ J 2Q y þ J Δuðk þ iÞ J 2R
i¼0
2 3
0 0 0 0 2 3
60 8:8 0 0
6 0 0 07
7  46 7
Qy ¼ 6 7; R ¼ 10 4 0 8:8 0 5
40 0 0 05
0 0 8:8
0 0 0 2

4:1 m ryj ðk þ i þ 1Þ r4:5 m; j ¼ 1; 2; 3

0% r uj ðk þ iÞ r 100%; j ¼ 1; 2; 3 ð34Þ

where Q y;44 , R 11 , R22 , and R 33 are dimensionless and, along with the
prediction horizon, were tuned experimentally to achieve a satisfactory
performance.
Fig. 3. Results of HMPC strategy for primary crushing. The hybrid controller was tested against a conventional MPC
controller, which was tuned with the same objective function (34).
The linear model used in the conventional MPC controller considers
only the second mode of operation of each cell (normal operation with
overflow of concentrate). Both controllers were simulated on the same
control scenario, which introduces random disturbances for the feed
flow and the feed grade, emulating the behavior of these variables in
an industrial plant. Step changes in the reference value for the line's
tail grade were introduced at various points of the simulation. The
control scenario was performed over 150 min of plant operation, with
a sample time of 6 s. Fig. 6 shows the results for the HMPC controller,
Fig. 7 shows the activated operating modes in each cell and Fig. 8
shows a comparison between the performance of the two controllers.
Fig. 4. Simulated flotation plant.
From Fig. 8, it can be seen that the qualitative performance of
the controllers is very similar, except in the 50–100 min range.
To develop the PWA models needed for the hybrid controller, a This can be explained by inspecting Fig. 7, where cell 2 in the MPC
flotation line with three cells was considered. Additionally, the outputs strategy switches to the first mode of operation in said range. This
of the PWA model are the level of pulp of the cells and tail grade of the means that there is a mismatch between the prediction model of
line, while the inputs are the position of the output valves of the cells, the MPC strategy, which is obtained from the second mode of
the feed mineral flow, and the feed grade. To simplify the identification operation, and the simulator model, which switches to the first
procedure, only two of the three modes of operation of each cell were mode of operation in the mentioned range. Table 3 shows the
considered for the PWA model: presence of concentrate overflow and Root-Mean-Square (RMS) error in tail grade for both controllers,
absence of concentrate overflow. Operation constraints were added to calculated from the results of the control test. In terms of this
the controller to prevent the plant from entering the third mode, performance index, both controllers achieve practically the same
characterized by the presence of pulp in the overflow. result. Nonetheless, when inspecting pulp levels in Fig. 8, it can be
A set of data was generated using the dynamic simulator by seen that the HMPC controller manages to keep pulp levels for
establishing ranges of variation for the input variables. For each cells 1 and 2 within the predefined limits between minute 50 and
variable, input identification signals in the form of periodic stair- minute 75, while the MPC controller deviates from these limits.
case functions of different periods were defined in a way to ensure The opposite is observed in cell 3. Given that both the MPC
that there is a maximum number of combinations between the strategy and the HMPC strategy implement constraint relaxation
values of these variables. For each cell, two sets of input–output when the optimization problem is unfeasible, this type of behavior
data were generated, one for each mode of operation. Linear is to be expected, and in that regard, it can be seen that the HMPC
identification for the pulp level was performed on each set. controller manages to minimize the deviation from the defined
Additionally, a PWA model with modes of operation was identified constraints better than the MPC controller.
for the tail grade applying a similar methodology. Furthermore, it can be seen that the controller effort in this
The equivalent MLD models for the PWA models developed previously interval is lower for the HMPC strategy, particularly in the step
can be found in Appendix A. Fig. 5 shows a comparison between the change in the reference value near the 50 minute mark. Outside this
simulator outputs and the MLD model prediction 4 steps ahead (equal to interval, the performance of both controllers is practically the same,
the prediction horizon defined for the controller) for the pulp level of the as mentioned previously. Additionally, from Fig. 7 it can be seen that
three cells and the tail grade of the line. The MLD model manages to the HMPC solution manages to keep each cell on the preferred mode
follow the variables in the prediction horizon, and is considered suffi- of operation (normal operation with overflow of concentrate) a
ciently accurate for the development of a hybrid controller. higher percentage of the time when compared to the MPC solution.
P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12 9

100 Cell 1 Cell 2 Cell 3 HMPC MPC

Mode of operation
3
position [%]

2
Valve

cell 1
50 1
3
2
0 100 200 300 400 500 600 1
6 0 50 100 150
Simulator Prediction
Pulp level
cell 1 [m]

4 HMPC MPC

Mode of operation
3
2 2

cell 2
1
0 100 200 300 400 500 600 3
6 2
Simulator Prediction
Pulp level
cell 2 [m]

1
4
0 50 100 150
2 HMPC MPC

Mode of operation
3
0 100 200 300 400 500 600 2
6

cell 3
Simulator Prediction 1
Pulp level
cell 3 [m]

3
4
2
2 1
0 50 100 150
0 100 200 300 400 500 600
Time [min]
1.5
Simulator Prediction
grade [%]

1 Fig. 7. Activated operating modes for the HMPC controller.


Tail

0.5
0
0 100 200 300 400 500 600
Time [min]

Fig. 5. MLD model and simulator comparison.

50
Feed flow
[m3/min]

40

30
0 25 50 75 100 125 150
1
grade [%]
Feed

0.9

0.8
0 25 50 75 100 125 150
0.2 Output Reference
grade [%]

0.15
Tail

0.1
0.05
0
0 25 50 75 100 125 150
4.75 Cell 1 Cell 2 Cell 3
level [m]

4.5
Pulp

4.25
4

0 25 50 75 100 125 150


100 Cell 1 Cell 2 Cell 3
position [%]

75
Valve

50
25
0
0 25 50 75 100 125 150
Time [min]

Fig. 6. HMPC controller performance for a flotation line.

The mean computation time required by the hybrid controller


to compute the control action is 9:8 ms. Simulations were per-
formed on a desktop computer with a 2.90 GHz, quad-core CPU,
and 8 GB of RAM memory.

7. Conclusion

This paper presents a framework for hybrid model predictive


control applied to mineral processing. The hybrid modeling of
dynamic systems using the MLD representation, and the hybrid
predictive control of these systems through mixed-integer quadratic Fig. 8. Results of controller comparison for flotation.
10 P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12

2 3 2 3 2 3
Table 3 1 0 0 0 104 0 1
6 7 6 7 6 7
Performance indices for flotation. 6 1 0 0 0 7 6 0 0 7 6 1 7
6 7 6 7 6 7
6 0 7 6 7 6 7
Index MPC HMPC 6 0 0 0 7 6 0 0 7 6 1 7
6 7 6 7 6 7
6 0 0 0 0 7 6  104
0 7 6 1 7
6 7 6 7 6 7
RMS reference error in tail grade (%) 0.0136 0.0133 6 0 7 6 7 6 7
6 0 0 0 7 6 1 0 7 6 0 7
6 7 6 7 6 7
6 0 1 7 6 0 7 6 0 7
7uðkÞ þ 6  1
0 1
6 7δðkÞ þ 6 7zðkÞ
6 0 0 1 0 77 6 7 6 7
programming are detailed, and two applications in crushing and 6 6 1 0 7 6 0 7
6 7 6 7 6 7
flotation are presented. 6 0 0 0 1 7 6 1 0 7 6 0 7
6 7 6 7 6 7
The proposed framework of hybrid systems adopted in this paper 6 0 0 7 6 7 6 0 7
6 0 0 7 6 0 1 7 6 7
offers a highly systematized methodology for the analysis, modeling 6 7 6 7 6 7
6 0 0 1 1 7 6 0  1 7 6 0 7
and development of hybrid controllers for complex processes, as 6 7 6 7 6 7
6 0 0 1 0 7 6 7 6 0 7
4 5 4 0 1 5 4 5
found in mineral processing. When compared to conventional
0 0 0 1 0 1 0
schemes such as model-based control or expert control, where the
2 3 2 43
controller is usually designed to suit the process specifically; the 0 0 0 0 0 0 10
hybrid approach offers a much more flexible structure which can be 6 7 6 7
60 0 0 0 0 0 7 6 0 7
6 7 6 7
adapted to any process, regardless of its structure. 60 0 0 0 0 0 7 6 0 7
6 7 6 7
In industrial processes such as those found in mineral processing 6 7 6 7
60 0 0 0 0 0 7 6 0 7
plants, the implementation of centralized control solutions is often 6 7 6 7
60 0 0 0 0 1 7 6 0 7
not possible due to problems such as differences in the dynamics of 6 7 6 7
6 7 6 7
60 0 0 0 0 0 7 6 7
various processes, availability of computational resources, centra- r6 7xðkÞ þ 6 1 7 ðA:1cÞ
60 0 0 0 0 1 7 6 0 7
lized modeling of the different processes, among others. In such 6 7 6 7
6 7 6 7
cases, decentralized control strategies have significant advantages. 60 0 0 0 0 1 7 6 0 7
6 7 6 7
Apart from the relative simplicity to implement controllers for 60 0 0 0 0 1 7 6 7
6 7 6 0 7
individual processes, the modularity of the solution facilitates 6 7 6 7
60 0 0 0 0 0 7 6 1 7
maintenance, as well as possible modifications to the system. For 6 7 6 7
60 0 0 0 0 1 5 7 6 7
4 4 0 5
these reasons, future work will focus on the design and develop-
0 0 0 0 0 1 0
ment of a distributed HMPC scheme to be implemented on
decentralized control systems. The objective of this scheme is to The MLD model for tertiary crushing is shown below. The
provide a coordination between different controllers, minimizing manipulated variables and measured disturbances collected in uðkÞ
the loss of performance when compared to a centralized scheme. are feed tonnage (ton/h), output tonnage for each bin (ton/h), and
two binary variables for tripper car position (dimensionless). The
output variables collected in yðkÞ are the accumulated mineral in each
bin (ton):
Appendix A. MLD models 2 3 2 3
1 0 0 0 1 0 0 0 0
6 7 6 7
xðk þ 1Þ ¼ 4 0 1 0 5xðkÞ  0:00424 0 0 1 0 0 0 5uðkÞ
A.1. Crushing plant
0 0 1 0 0 0 1 0 0
2 3
The MLD model for primary crushing is shown below. The 1 0 0
manipulated variables and measured disturbances collected in 6 7
þ 0:00424 0 1 0 5zðkÞ ðA:2aÞ
uðkÞ are feed mineral flow (ton/h), eccentric speed (RPS), signaling 0 0 1
light (dimensionless), and arrival of trucks (dimensionless). The
output variables yðkÞ are the accumulated mineral in the crushing 2 3
1 0 0
bin (ton), the specific energy consumption (kWh/ton), the product 6 7
yðkÞ ¼ 4 0 1 0 5xðkÞ ðA:2bÞ
particle size (%), and the product mineral flow (ton/h):
0 0 1
2 3
1  0:0014 0 0 0 0
2 3 2 3 2 3 2 43
60 0:28  0:36 0 0 07 1 0 0 0 0 0 104 1 0 0 10
6 7 6 7 6 7
6 7 6 1
6 0 0 0 0 0 7 6 0 7 6 1 0 0 77 6 0 7
60  0:011 0:014 0 0 07 6
7
7 6 7 6
6 7 6 7
xðk þ 1Þ ¼ 6
60
7xðkÞ 6 0 0 0 0 0 0 7 6 0 7 6 1 0 0 7 6 0 7
07 6 7 6 7 6 7 6 7
6 0 0 0:39 0 7 6 0 6 7 6 7
6 7 6 0 0 0 0 0 7 7 6 104 7 6 1
6 0 0 77 6 0 7
6 4 7
6 7 6 7 6 7
40 0 0 0 0:27 05 6 1 0 0 0 0 10 7 6 0 7 6 0 1 0 7 6 10 4 7
6 7 6 7 6 7 6 7
6 1 6 7 6 7
0 0 0 0 0 0 6 0 0 0 0 0 7 7 6 0 7 6 0
6 1 0 77 6 0 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 7 6 7 6 0 1 0 7 6 7
6 7 6 0 7 6 7 6 0 7
2 3 2 3 2 3 6 0 47
10 7
6
6 0 7
7 6 0 7 6
6 0 7
7
0 0 0 0 0 0 0:0014 6 0 0 0 0
7δðkÞ þ 6
1 0 7
6 7uðkÞ þ 6
6 0 7 6 7zðkÞ r 6
6 104 7
7
60 8:3 0 077 60 077 6 7 6 1 0 0 0 10 4
0 7 6 7 6 0 0 1 7 6 7
6 6 6 0 7 6
6 1
7
7 6 7 6
6 0
7
7 6 7
6 7 6 7 6 7 6 0 0 0 0 0 7 6
6 0 7 7 6 0 1 7 6
6 0 7
7
60  62 0 07 60 07 6 0 7 6 7 6 7 6 7 6 7
þ6
60
7uðkÞ þ 6
7 60
7δðkÞ þ 6
7 6
7zðkÞ
7 ðA:1aÞ 6 0
6 0 0 0 0 0 7 7 6
6
0 7
7
6 0
6 0 1 7
7 6
6
0 7
7
6 0:066 0 07 6 07 6 0 7 6 0 0 0 0  104 0 7 7 6 0 7 6 7 6 0 7
6 7 6 7 6 7 6 6 7 6 0 0 1 7 6 7
6 7 6 7 6 7 6 7
40  0:023 0 05 40 05 4 0 5 6 0
6 0 0 0 1 1 7 7 6 0 7 6 0
6 0 0 77 6 1 7
6 0 7 6 7 6 0 7 6 7
0 0 0 0 0 1 0 6 0 0 0 1 1 7 6 1 7 6 0 0 7 6 1 7
6 7 6 7 6 7 6 7
4 0 0 5 6 7 4 0 0 5 6 7
0 0 0 1 4 1 5 0 4 1 5
0 0 0 0 0 1 1 0 0 0 1
2 3
1 0 0 0 0 0 ðA:2cÞ
60 0 0 1 0 07
6 7
yðkÞ ¼ 6 7xðkÞ ðA:1bÞ The MLD model for secondary screening is shown below. The
40 0 0 0 1 05 manipulated variables, measured disturbances, and output vari-
0 1 0 0 0 0 ables are the same as in the model for tertiary crushing, with one
P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12 11

additional bin:
2 3 2 3
1 0 0 0 0 1 0 0 0 0 0
60 1 0 07 60 0 1 0 0 0 07
6 7 6 7
xðk þ 1Þ ¼ 6 7xðkÞ  0:00426 7
40 0 1 05 40 0 0 1 0 0 05
0 0 0 1 0 0 0 0 1 0 0
2 3
1 0 0 0
60 1 0 07
6 7
uðkÞ þ 0:00426 7zðkÞ ðA:3aÞ
40 0 1 05
0 0 0 1

2 3
1 0 0 0
60 1 0 07
6 7
yðkÞ ¼ 6 7xðkÞ ðA:3bÞ
40 0 1 05
0 0 0 1

2 3 2 3 2 3 2 43
1 0 0 0 0 0 0 104 0 0 0 1 0 0 0 10
6 1 0 77 6 7 6 1 7 6 7
6 0 0 0 0 0 6 0 0 0 0 7 6 0 0 0 7 6 0 7
6 7 6 7 6 7 6 7
6 0
6 0 0 0 0 0 0 77
6 0
6 0 0 0 7 7
6 1
6 0 0 0 77
6 0 7
6 7
6 0
6 0 0 0 0 0 0 77
6
6  104 0 0 0 7
7 6 1
6 0 0 0 77
6
6 0 7
7
6 7 6 7 6 7 6 47
6
6 1 0 0 0 0 0 0 77
6 0
6 104 0 0 7 7
6 0
6 1 0 0 77
6 10 7
6 7
6 7 6 7 6 7 6 7
6 1 0 0 0 0 0 0 7 6 0 0 0 0 7 6 0 1 0 0 7 6 0 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 0 77 6 0 0 0 0 7 7 6 0 1 0 0 77 6 7
6 6 6 6 0 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 0 7 6 0  104 0 0 7 6 0 1 0 0 7 6 0 7
6 7 6 7 6 7 6 7
6 1
6 0 0 0 0 0 0 77
6 0
6 0 104 0 7 7 6 0
6 0 1 0 77
6 104 7
6 7
6 7 6 7 6 7 6 7
6 1 0 0 0 0 0 0 7 6 0 0 0 0 7 6 0 0 1 0 7 6 0 7
6 7 6 7 6 7 6 7
6 0
6 0 0 0 0 0 0 77
6 0
6 0 0 0 7 7
6 0
6 0 1 0 77
6 0 7
6 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 0 7 6 0 0  104 0 7 6 0 0 1 0 7 6 0 7
6 7 6 7 6 7 6 7
6 1 0 0 0 0 0 0 77 6 0 4 7 6 0 0 0 7
1 7 6 47
6 6 0 0 10 7 6 6 10 7
6 7 6 7 6 7 6 7
6 1 0 0 0 0 0 0 7 6 7 6 0 0 0 1 7 6 7
6 7uðkÞþ 6 0 0 0 0 7
δðkÞ þ 6 7zðkÞr 6 0 7 ðA:3cÞ
6 0 0 0 0 0 0 0 77 6 0 7 6 0 0 0 7
1 7 6 7
6 6 0 0 0 7 6 6 0 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 0 7 6 0 0 0  104 7 6 0 0 0 1 7 6 0 7
6 7 6 7 6 7 6 7
6 0 1 7
1 7 6 7 6 0 7 6 7
6 0 0 0 0 6 1 0 0 0 7 6 0 0 0 7 6 1 7
6 7 6 7 6 7 6 7
6 0
6 0 0 0 0 1 0 77
6 1
6 0 0 0 7 7
6 0
6 0 0 0 77
6 1 7
6 7
6 0
6 0 0 0 0 0 1 77
6
6 1 0 0 0 7
7 6 0
6 0 0 0 77
6
6 1
7
7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 1 1 77 6 0 1 0 0 7 7 6 0 0 0 0 77 6 7
6 6 6 6 0 7
6 0
6 0 0 0 0 1 0 77
6
6 0 1 0 0 7
7 6 0
6 0 0 0 77 6
6 1 7
7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 7
1 7 6 0 1 0 0 7 7 6 0 0 0 0 7 6 0 7
6 6 6 7 6 7
6 0 7
1 7 6 7 6 0 7 6 7
6 0 0 0 0 1 6 0 0 1 0 7 6 0 0 0 7 6 0 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 1 0 7 6 0 0 1 0 7 6 0 0 0 0 7 6 0 7
6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 0 1 7 6 0 0 1 0 7 6 0 0 0 0 7 6 1 7
6 7 6 7 6 7 6 7
6 0 0 0 0 0 1 1 7 6 0 0 0 1 7 6 0 0 0 0 7 6 1 7
6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7
4 0 0 0 0 0 1 0 5 4 0 0 0 1 5 4 0 0 0 0 5 4 0 5
0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 0

A.2. Flotation line

The MLD model for the rougher flotation line is shown below.
The manipulated variables and measured disturbances collected in
uðkÞ are valve position for each cell (%), volumetric feed flow
(m3 =min), and feed grade (%). The output variables collected in
yðkÞ are pulp level for each cell (m) and the tail grade (%):
2 3
1 0 0 0
60 1 0 07
6 7
xðk þ 1Þ ¼ 6 7zðkÞ ðA:4aÞ
40 0 1 05
0 0 0 1

2 3
1 0 0 0
60 1 0 07
6 7
yðkÞ ¼ 6 7xðkÞ ðA:4bÞ
40 0 1 05
0 0 0 1
12 P. Karelovic et al. / Control Engineering Practice 40 (2015) 1–12

2 3 2 3 2 3 2 3 2 3
0 0 0 0 0  4:1 0 0 0 0 0 0 0 1 0 0 0  4:1
6 0 7 6 0:55 7 6 0 7 6 1 7 6 4:6 7
6 0 0 0 0 7 6 0 0 0 7 6 0 0 0 7 6 0 0 0 7 6 7
6 7 6 7 6 7 6 7 6 7
6 0 0 0 0 0 7 6 0  4:2 0 0 7 6 0 0 0 0 7 6 0 1 0 0 7 6  4:2 7
6 7 6 7 6 7 6 7 6 7
6 0 7 6 0 0 7 6 0 0 7 6 1 7 6 7
6 0 0 0 0 7 6 0:4 0 7 6 0 0 7 6 0 0 0 7 6 4:6 7
6 7 6 7 6 7 6 7 6 7
6 0 0 0 0 0 7 6 0 0  4:3 0 7 6 0 0 0 0 7 6 0 0 1 0 7 6  4:3 7
6 7 6 7 6 7 6 7 6 7
6 0 7 6 0 0 7 6 0 0 7 6 1 0 7 6 4:6 7
6 0 0 0 0 7 6 0 0:3 7 6 0 0 7 6 0 0 7 6 7
6 7 6 7 6 7 6 7 6 7
6 0 7 6 0  1:2 77 6 0 0 7 6 1 7 7 6 7
6 0 0 0 0 7 6 0 0 6 0 0 7 6 0 0 0 6  0:18 7
6 7 6 7 6 7 6 7 6 7
6 0 0 0 0 0 7 6 0 0 0  0:18 7 6 0 0 0 0 7 6 0 0 0 1 7 6 0 7
6 7 6 7 6 7 6 7 6 7
6 0:4 0 0  0:0066 0 7 6 4:9 0 0 0 7 6 1 0 0 0 7 6  0:58  0:42 0 0 7 6 5 7
6 7 6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7 6 7
6  0:4 0 0 0:0066 0 7 6 5:3 0 0 0 7 6 1 0 0 0 7 6 0:58 0:42 0 0 7 6 5:1 7
6 7 6 7 6 7 6 7 6 7
6 0:32 0 0  0:004 0 7 6  5:3 0 0 0 7 6 1 0 0 0 7 6  0:64  0:28 0 0 7 6  0:25 7
6 7 6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7 6 7
6  0:32 0 0 0:004 0 7 6  4:9 0 0 0 7 6 1 0 0 0 7 6 0:64 0:28 0 0 7 6 0:25 7
6 7 6 7 6 7 6 7 6 7
6  0:12 0:34 0 0 0 7 6 0 3:8 0 0 7 7 6 0 1 0 0 77 6  0:085  0:58  0:34 0 7 7 6 7
6 7 6 6 6 6 3:7 7
6 7 6 7 6 7 6 7 6 7
6 0:12  0:34 0 0 0 7 6 0 5:1 0 0 7 6 0 1 0 0 7 6 0:085 0:58 0:34 0 7 6 5:2 7
6 7 6 7 6 7 6 7 6 7
6  0:21 0:31 0 0 0 7 6 0  5:1 0 0 7 6 0 1 0 0 7 6  0:27  0:38  0:075 0 7 6  1:3 7
6 7 6 7 6 7 6 7 6 7
6 7uðkÞ þ 6 7δðkÞ þ 6 7zðkÞ r 6 7xðkÞ þ 6 7
6 0:21  0:31 0 0 0 7 6 0  3:8 0 0 7 6 0 1 0 0 7 6 0:27 0:38 0:075 0 7 6 1:3 7
6 7 6 7 6 7 6 7 6 7
6 0  0:26 0:43 0 0 7 6 0 0 4:6 0 7 7 6 0 0 1 0 77 6 0  0:36  0:51 0 7 7 6 7
6 7 6 6 6 6 3:9 7
6 7 6 7 6 7 6 7 6 7
6 0 0:26  0:43 0 0 7 6 0 0 4:6 0 7 6 0 0 1 0 7 6 0 0:36 0:51 0 7 6 5:2 7
6 7 6 7 6 7 6 7 6 7
6 0  0:17 0:29 0 0 7 6 0 0  4:6 0 7 6 0 0 1 0 7 6 0  0:17  0:71 0 7 6  0:6 7
6 7 6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7 6 7
6 0 0:17  0:29 0 0 7 6 0 0  4:6 0 7 7 6 0 0 1 0 7 6 0 0:17 0:71 0 7 7 6 7
6 7 6 6 7 6 6 0:6 7
6 0 7 6 0 7 6 0 1 7 6 0:04 7
 0:76 7 6 7
6 0 0 0 0:025 7 6 0 0 1:4 7 6 0 0 7 6 0:041 0:046 6 0:78 7
6 7 6 7 6 7 6 7 6 7
6 0 0 0 0  0:025 7 6 0 0 0 1:4 7 6 0 0 0 1 7 6  0:04  0:041  0:046 0:76 7 6 2 7
6 7 6 7 6 7 6 7 6 7
6 0 7 6 0  1:4 77 6 0 1 7 6 0:04 7
 0:76 7 6 7
6 0 0 0 0:025 7 6 0 0 6 0 0 7 6 0:041 0:046 6  0:6 7
6 7 6 7 6 7 6 7 6 7
6 0 0 0 0  0:025 7 6 0 0 0  1:4 7 6 0 0 0 1 7 6  0:04  0:041  0:046 0:76 7 6 0:6 7
6 7 6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7 6 7
6 1 0 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 1 7
6 7 6 7 6 7 6 7 6 7
6 1 0 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 0 7
6 7 6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7 6 7
6 0 1 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 1 7
6 7 6 7 6 7 6 7 6 7
6 0 1 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 0 0 0 0 7 6 0 7
6 7 6 7 6 7 6 7 6 7
6 7 6 7 6 7 6 7 6 7
4 0 0 1 0 0 5 4 0 0 0 0 5 4 0 0 0 0 5 4 0 0 0 0 5 4 1 5
0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
ðA:4cÞ

References Hodouin, D. (2011). Methods for automatic control, observation, and optimization
in mineral processing plants. Journal of Process Control, 21(2), 211–225.
Hodouin, D., Bazin, C., Gagnon, E., & Flament, F. (2000). Feedforward–feedback
Adetayo, A., Pottman, M., & Ogunnaike, B. (1997). Effective control of a continuous predictive control of a simulated flotation bank. Powder Technology, 108(2–3),
granulation process. In Proceedings of the control of particulate processes, 173–179.
engineering foundation (Vol. 4, pp. 23–28), Delft, The Netherlands. Jankovic, A., Dundar, H., & Mehta, R. (2010). Relationships between comminution
Atta, K. T., Johansson, A., & Gustafsson, T. (2014). Control oriented modeling of flow energy and product size for a magnetite ore. Journal of the South African Institute
and size distribution in cone crushers. Minerals Engineering, 56, 81–90. of Mining and Metallurgy, 110(3), 141–146.
Bemporad, A., & Morari, M. (1999). Control of systems integrating logic, dynamics, Maciejowski, J. (2002). Predictive control with constraints. Englewood Cliffs, NJ:
and constraints. Automatica, 35(3), 407–427. Prentice Hall.
Berkenkamp, F., & Gwerder, M. (2014). Hybrid model predictive control of stratified Mann, G., & Hwang, I. (2013). State estimation and fault detection and identification
thermal storages in buildings. Energy and Buildings, 84, 233–240. for constrained stochastic linear hybrid systems. Control Theory Applications IET,
Blom, H., & Bar-Shalom, Y. (1988). The interacting multiple model algorithm for 7(January (1)), 1–15.
systems with markovian switching coefficients. IEEE Transactions on Automatic Muller, B., & Vaal, P. D. (2000). Development of a model predictive controller for a
Control, 33(August (8)), 780–783. milling circuit. The Journal of The South African Institute of Mining and
Camacho, E. F., & Bordons, C. (2002). Model predictive control. London, England: Metallurgy, 100(7), 449–454.
Springer. Nandola, N., & Rivera, D. (2013). An improved formulation of hybrid model
Chen, X., Zhai, J., Li, S., & Li, Q. (2007). Application of model predictive control in ball predictive control with application to production-inventory systems. IEEE
mill grinding circuit. Minerals Engineering, 20(11), 1099–1108. Transactions on Control Systems Technology, 21(January (1)), 121–135.
Cortés, G., & Cerda, J. (November 2010). SAG & secondary grinding multivariable Pérez-Correa, R., González, G., Casali, A., Cipriano, A., Barrera, R., & Zavala, E. (1998).
predictive control coordinated: División Codelco Norte. In Proceedings of the Dynamic modelling and advanced multivariable control of conventional flota-
2nd international congress of automation in the mining industry, Gecamin, tion circuits. Minerals Engineering, 11(4), 333–346.
Santiago, Chile. Ramasamy, M., Narayanan, S., & Rao, C. (2005). Control of ball mill grinding circuit
Foroush, H., Gaulocher, S., & Gallestey, E. (December 2009). Model-predictive using model predictive control scheme. Journal of Process Control, 15(3),
control of the froth thickness in a flotation circuit. In Proceedings of the VI 273–283.
international mineral processing seminar (pp. 403–411), Gecamin, Santiago, Rojas, D., & Cipriano, A. (2011). Model based predictive control of a rougher
Chile. flotation circuit considering grade estimation in intermediate cells. Dyna, 166,
García, C. E., Prett, D. M., & Morari, M. (1989). Model predictive control: theory and 29–37.
practice—a survey. Automatica, 25(3), 335–348. Salazar, J.-L., Valdés-González, H., Vyhmeister, E., & Cubillos, F. (2014). Model
Gatzke, E. P., & Doyle, F. J. (2001). Model predictive control of a granulation system predictive control of semiautogenous mills (sag). Minerals Engineering, 64,
using soft output constraints and prioritized control objectives. Powder Tech- 92–96.
nology, 121(2–3), 149–158. Stenlund, B., & Medvedev, A. (2002). Level control of cascade coupled flotation
Hatch, C. (1977). Digital simulation of a crushing plant (Master's thesis). The tanks. Control Engineering Practice, 10(4), 443–448.
University of British Columbia. Suichies, M., Leroux, D., Dechert, C., & Trusiak, A. (2000). An implementation of
Heemels, W., Schutter, B. D., & Bemporad, A. (2001). Equivalence of hybrid generalized predictive control in a flotation plant. Control Engineering Practice, 8
dynamical models. Automatica, 37(7), 1085–1091. (3), 319–325.
Herceg, M., Kvasnica, M., Jones, C., & Morari, M. (July 17–19, 2013). Multi-parametric Torrisi, F., & Bemporad, A. (2004). HYSDEL—a tool for generating computational
toolbox 3.0. In Proceedings of the European control conference (pp. 502–510), hybrid models for analysis and synthesis problems. IEEE Transactions on Control
Zürich, Switzerland. Systems Technology, 12(2), 235–249.

You might also like