batch-to-batch strategies for cooling...
TRANSCRIPT
Batch-to-batch strategies for coolingcrystallization
Marco Forgione1, Ali Mesbah1, Xavier Bombois1, Paul Van den Hof2
1Delft University of TechnologyDelft Center for Systems and Control
2Eindhoven University of TechnologyDelft Center for Systems and Control
51th IEEE Conference on Decision and Control
Grand Wailea, Maui, Hawaii
Marco Forgione (TU Delft) B2B strategies CDC 2012 1 / 19
Motivation
Many operations are performed in batch mode.Batch processes bring both challenges and opportunities for control.
Challenges
Wide dynamical range
Limited measurements*
Opportunities
Slow dynamics
Repetitive nature*
In this presentation: batch-to-batch learning control for coolingcrytallization which exploit the repetitive nature.
Iterative Learning Control (ILC)
Iterative Identification Control (IIC).
Marco Forgione (TU Delft) B2B strategies CDC 2012 2 / 19
Motivation
Many operations are performed in batch mode.Batch processes bring both challenges and opportunities for control.
Challenges
Wide dynamical range
Limited measurements*
Opportunities
Slow dynamics
Repetitive nature*
In this presentation: batch-to-batch learning control for coolingcrytallization which exploit the repetitive nature.
Iterative Learning Control (ILC)
Iterative Identification Control (IIC).
Marco Forgione (TU Delft) B2B strategies CDC 2012 2 / 19
Outline
1 Batch crystallization
2 Batch-to-batch Strategies: ILC and IIC
3 Simulation Results
Marco Forgione (TU Delft) B2B strategies CDC 2012 3 / 19
Batch CrystallizationProcess Description
Separation and purification process of industrial interest.A solution is cooled down, solid crystals are produced.
1 Hot solution fed into the vessel.
2 Start cooling.
3 Introduce “seeds”.
4 Cool to final temperature. Seedsgrow, new crystal are generated.
5 Remove final product.
Marco Forgione (TU Delft) B2B strategies CDC 2012 4 / 19
Batch CrystallizationProcess Description
Separation and purification process of industrial interest.A solution is cooled down, solid crystals are produced.
1 Hot solution fed into the vessel.
2 Start cooling.
3 Introduce “seeds”.
4 Cool to final temperature. Seedsgrow, new crystal are generated.
5 Remove final product.
Marco Forgione (TU Delft) B2B strategies CDC 2012 4 / 19
Batch CrystallizationProcess Description
Separation and purification process of industrial interest.A solution is cooled down, solid crystals are produced.
1 Hot solution fed into the vessel.
2 Start cooling.
3 Introduce “seeds”.
4 Cool to final temperature. Seedsgrow, new crystal are generated.
5 Remove final product.
Marco Forgione (TU Delft) B2B strategies CDC 2012 4 / 19
Batch CrystallizationProcess Description
Separation and purification process of industrial interest.A solution is cooled down, solid crystals are produced.
1 Hot solution fed into the vessel.
2 Start cooling.
3 Introduce “seeds”.
4 Cool to final temperature. Seedsgrow, new crystal are generated.
5 Remove final product.
Marco Forgione (TU Delft) B2B strategies CDC 2012 4 / 19
Batch CrystallizationProcess Description
Separation and purification process of industrial interest.A solution is cooled down, solid crystals are produced.
1 Hot solution fed into the vessel.
2 Start cooling.
3 Introduce “seeds”.
4 Cool to final temperature. Seedsgrow, new crystal are generated.
5 Remove final product.
Marco Forgione (TU Delft) B2B strategies CDC 2012 4 / 19
Batch CrystallizationModeling
Process described by:
Thermal Dynamics from the actuator to the vessel temperature.Linear, known or easy to derive/estimate.
Crystallization Dynamics from the reactor temperature to thecrystallization properties.Nonlinear PDE, parametric + structural uncertainties possible.
TemperatureDynamics
Crystallization Dynamics
TJ T Y Y
eYT
Batch crystallizer
Marco Forgione (TU Delft) B2B strategies CDC 2012 5 / 19
Batch CrystallizationControl Strategies: industrial practice
Only the crystallizer temperature is measured and controlled on-line.
TemperatureController
ThermalDynamics
Crystallization Dynamics
TJ T
T
Y Y
eY
eT
T
rT
Batch crystallizer
Control strategies such as MPC proposed in the literature.They rely on reliable on-line measurements, not always available.
Alternative approach based on Batch-to-batch Control.
Marco Forgione (TU Delft) B2B strategies CDC 2012 6 / 19
Batch CrystallizationControl Strategies: industrial practice
Only the crystallizer temperature is measured and controlled on-line.
TemperatureController
ThermalDynamics
Crystallization Dynamics
TJ T
T
Y Y
eY
eT
T
rT
Batch crystallizer
Control strategies such as MPC proposed in the literature.They rely on reliable on-line measurements, not always available.
Alternative approach based on Batch-to-batch Control.
Marco Forgione (TU Delft) B2B strategies CDC 2012 6 / 19
Batch CrystallizationControl Strategies: industrial practice
Only the crystallizer temperature is measured and controlled on-line.
TemperatureController
ThermalDynamics
Crystallization Dynamics
TJ T
T
Y Y
eY
eT
T
rT
Batch crystallizer
Control strategies such as MPC proposed in the literature.They rely on reliable on-line measurements, not always available.
Alternative approach based on Batch-to-batch Control.
Marco Forgione (TU Delft) B2B strategies CDC 2012 6 / 19
Batch-to-batch ControlArchitecture
A framework for batch-to-batch control. Trk updated from batch to batch.
Built on top of the standard industrial T control.
Can use measurements available at the end of the batch.
Temperature Controller
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
Y YrT
Batch crystallizer
Te
YeT
CrystallizationDynamics(θ)
Objective for batch k: tracking of supersaturation profile Sk .
Marco Forgione (TU Delft) B2B strategies CDC 2012 7 / 19
Batch-to-batch ControlArchitecture
A framework for batch-to-batch control. Trk updated from batch to batch.
Built on top of the standard industrial T control.
Can use measurements available at the end of the batch.
TemperatureController
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
S( , )S T C
Objective for batch k: tracking of supersaturation profile Sk .
Marco Forgione (TU Delft) B2B strategies CDC 2012 7 / 19
Batch-to-batch StrategiesIterative Learning Control
ILC based on an additive correction of a nominal model from Tr to S.
S(Tr ) nominal model
Sk(Tr ) , S(Tr ) + αk corrected model
Note: Tr ,αk vectors of samples ∈ RN (N = batch length).We describe the system in discrete, finite time (static mapping).
A nonparametric model correction. αk can compensate for
model mismatch (along a particular trajectory)
effect of repetitive disturbances
Marco Forgione (TU Delft) B2B strategies CDC 2012 8 / 19
Batch-to-batch StrategiesIterative Learning Control
ILC based on an additive correction of a nominal model from Tr to S.
S(Tr ) nominal model
Sk(Tr ) , S(Tr ) + αk corrected model
Note: Tr ,αk vectors of samples ∈ RN (N = batch length).We describe the system in discrete, finite time (static mapping).
A nonparametric model correction. αk can compensate for
model mismatch (along a particular trajectory)
effect of repetitive disturbances
Marco Forgione (TU Delft) B2B strategies CDC 2012 8 / 19
Iterative Learning ControlCorrection vector
How to obtain the correction vector α?
In principle, “match” the measurement from the previous batch.
αk+1 = Sk − S(Trk) = model errork
Due to nonrepetitive disturbances on Sk , this is not a good solution.
Take into account the deviation from αk .
αk+1 = arg minα∈RN
‖Sk − (S(Tr ) + α)‖2Qα
+ ‖α−αk‖2Sα
Careful tuning of Qα, Sα is delicate.
Marco Forgione (TU Delft) B2B strategies CDC 2012 9 / 19
Iterative Learning ControlCorrection vector
How to obtain the correction vector α?
In principle, “match” the measurement from the previous batch.
αk+1 = Sk − S(Trk) = model errork
Due to nonrepetitive disturbances on Sk , this is not a good solution.
Take into account the deviation from αk .
αk+1 = arg minα∈RN
‖Sk − (S(Tr ) + α)‖2Qα
+ ‖α−αk‖2Sα
Careful tuning of Qα, Sα is delicate.
Marco Forgione (TU Delft) B2B strategies CDC 2012 9 / 19
Iterative Learning ControlCorrection vector
How to obtain the correction vector α?
In principle, “match” the measurement from the previous batch.
αk+1 = Sk − S(Trk) = model errork
Due to nonrepetitive disturbances on Sk , this is not a good solution.
Take into account the deviation from αk .
αk+1 = arg minα∈RN
‖Sk − (S(Tr ) + α)‖2Qα
+ ‖α−αk‖2Sα
Careful tuning of Qα, Sα is delicate.
Marco Forgione (TU Delft) B2B strategies CDC 2012 9 / 19
Iterative Learning ControlAlgorithm
Steps of the ILC algorithm. At each batch k:
1 Trk is set as the input to the T controller, the batch is executed.
Sk is estimated from measurements.2 An additive correction of the nominal model is performed:
Sk(Tr ) , S(Tr ) + αk .3 The corrected model is used to design Tr
k+1 for the next batch:
Trk+1 = arg min
Tr∈RN‖Sk+1 − Sk(Tr )‖2
TemperatureController
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
S( , )S T C
Marco Forgione (TU Delft) B2B strategies CDC 2012 10 / 19
Iterative Learning ControlAlgorithm
Steps of the ILC algorithm. At each batch k:
1 Trk is set as the input to the T controller, the batch is executed.
Sk is estimated from measurements.2 An additive correction of the nominal model is performed:
Sk(Tr ) , S(Tr ) + αk .3 The corrected model is used to design Tr
k+1 for the next batch:
Trk+1 = arg min
Tr∈RN‖Sk+1 − Sk(Tr )‖2
TemperatureController
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
S( , )S T C
Marco Forgione (TU Delft) B2B strategies CDC 2012 10 / 19
Iterative Learning ControlAlgorithm
Steps of the ILC algorithm. At each batch k:
1 Trk is set as the input to the T controller, the batch is executed.
Sk is estimated from measurements.2 An additive correction of the nominal model is performed:
Sk(Tr ) , S(Tr ) + αk .3 The corrected model is used to design Tr
k+1 for the next batch:
Trk+1 = arg min
Tr∈RN‖Sk+1 − Sk(Tr )‖2
TemperatureController
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
S( , )S T C
Marco Forgione (TU Delft) B2B strategies CDC 2012 10 / 19
Iterative Identification ControlImplementation
IIC is based on a parametric correction assuming a certain model structure.
S(Tr , θ) model structure
Sk(Tr , θk) IIC corrected model
Iterative estimation of θk combining information from previousmeasurement.Given a new measurement Yk = (Tk Ck):
The a posteriori probability of θ is computed (Bayes rules):
θk+1 is taken as arg max over θ of the distribution (MAP estimate)
In our case (under simplifying assumptions)
θk+1 = arg minθ
(‖Ck − C (Tk , θ)‖2
Σ−1e
+ ‖θ − θk‖2Σ−1
θk
)A Nonlinear Least Squares problem with a regularization term.
Marco Forgione (TU Delft) B2B strategies CDC 2012 11 / 19
Iterative Identification ControlImplementation
IIC is based on a parametric correction assuming a certain model structure.
S(Tr , θ) model structure
Sk(Tr , θk) IIC corrected model
Iterative estimation of θk combining information from previousmeasurement.Given a new measurement Yk = (Tk Ck):
The a posteriori probability of θ is computed (Bayes rules):
θk+1 is taken as arg max over θ of the distribution (MAP estimate)
In our case (under simplifying assumptions)
θk+1 = arg minθ
(‖Ck − C (Tk , θ)‖2
Σ−1e
+ ‖θ − θk‖2Σ−1
θk
)A Nonlinear Least Squares problem with a regularization term.
Marco Forgione (TU Delft) B2B strategies CDC 2012 11 / 19
Iterative Identification ControlImplementation
IIC is based on a parametric correction assuming a certain model structure.
S(Tr , θ) model structure
Sk(Tr , θk) IIC corrected model
Iterative estimation of θk combining information from previousmeasurement.Given a new measurement Yk = (Tk Ck):
The a posteriori probability of θ is computed (Bayes rules):
θk+1 is taken as arg max over θ of the distribution (MAP estimate)
In our case (under simplifying assumptions)
θk+1 = arg minθ
(‖Ck − C (Tk , θ)‖2
Σ−1e
+ ‖θ − θk‖2Σ−1
θk
)A Nonlinear Least Squares problem with a regularization term.
Marco Forgione (TU Delft) B2B strategies CDC 2012 11 / 19
Iterative Identification ControlAlgorithm
Steps of the IIC algorithm. At each k :
1 Trk is set as the input to the T controller, the batch is executed.
(Ck , Tk)> are measured.
2 The updated parameter θk is computed and the corrected model isdefined as Sk(Tr ) , S(Tr , θk).
3 The corrected model is used to design Trk+1 for the next batch to
track a set-point Sk+1
Trk+1 = arg min
Tr∈RN‖Sk+1 − Sk(Tr )‖2
Marco Forgione (TU Delft) B2B strategies CDC 2012 12 / 19
Simulation ResultsScenario
Nit = 30 iterations (batches)
Objective: tracking of a set-point Sk
Set-point change in batch 11
Tr updated from batch to batch using ILC and IIC
TemperatureController
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
S( , )S T C
Marco Forgione (TU Delft) B2B strategies CDC 2012 13 / 19
Simulation ResultsCases
Simulation study in two different scenariosCase 1: Disturbances + parametric model mismatch
Temperature Controller
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
Marco Forgione (TU Delft) B2B strategies CDC 2012 14 / 19
Simulation ResultsCases
Simulation study in two different scenariosCase 2: Disturbances + structural model mismatch
Temperature Controller
ThermalDynamics
B2B(ILC or IIC)
TJ T
T
C CrT
Batch crystallizer
Te
Ce
T
CrystallizationDynamics(θ)
Marco Forgione (TU Delft) B2B strategies CDC 2012 14 / 19
Simulation ResultsCase 1
Results for Case 1
Iterative Learning Control
0 50 100 15010
20
30
40Batch 2
Time (min)
Te
mp
era
ture
(C
)
0 50 100 15010
20
30
40Batch 10
0 50 100 15010
20
30
40Batch 11
0 50 100 15010
20
30
40Batch 30
0 50 100 150
1.0
3.0
5.0
Time (min)Su
pe
rsa
tura
tio
n (
g/L
)
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
0 50 100 150 0
−1
−2
Time (min)
α (
g/L
)
0 50 100 150−2
−1
0
0 50 100 150−2
−1
0
0 50 100 150−2
−1
0
Iterative Identification Control
0 50 100 15010
20
30
40Batch 2
Time (min)
Te
mp
era
ture
(C
)
0 50 100 15010
20
30
40Batch 10
0 50 100 15010
20
30
40Batch 11
0 50 100 15010
20
30
40Batch 30
0 50 100 150
1.0
3.0
5.0
Time (min)Su
pe
rsa
tura
tio
n (
g/L
)
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
IIC: faster convergence
Marco Forgione (TU Delft) B2B strategies CDC 2012 15 / 19
Simulation ResultsCase 2
Results for Case 2
Iterative Learning Control
0 50 100 15010
20
30
40Batch 2
Time (min)
Te
mp
era
ture
(C
)
0 50 100 15010
20
30
40Batch 10
0 50 100 15010
20
30
40Batch 11
0 50 100 15010
20
30
40Batch 30
0 50 100 150
1.0
3.0
5.0
Time (min)Su
pe
rsa
tura
tio
n (
g/L
)
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
0 50 100 150 0
−1
−2
Time (min)
α (
g/L
)
0 50 100 150−2
−1
0
0 50 100 150−2
−1
0
0 50 100 150−2
−1
0
Iterative Identification Control
0 50 100 15010
20
30
40Batch 2
Time (min)
Te
mp
era
ture
(C
)
0 50 100 15010
20
30
40Batch 10
0 50 100 15010
20
30
40Batch 11
0 50 100 15010
20
30
40Batch 30
0 50 100 150
1.0
3.0
5.0
Time (min)Su
pe
rsa
tura
tio
n (
g/L
)0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
0 50 100 150
1.0
3.0
5.0
ILC: convergence despitemismatch
Marco Forgione (TU Delft) B2B strategies CDC 2012 16 / 19
Simulation ResultsSummary
Iterative Learning
Tracking in presence ofstructure mismatch
Close-form algorithm
Slower convergence of thealgorithm
Learning of a trajectory:degradation if we change theset-point
Iterative Identification
Faster convergence withright model structure
Learning of the fulldynamics: easy to followdifferent setpoint
Performance degradationwith mismatches
Numerical solution NLSQrequired
Marco Forgione (TU Delft) B2B strategies CDC 2012 17 / 19
Conclusions
A batch-to-batch architecture for cooling crystallization.
Uses measurements available at the endof a batch.
Built on top of standard T control.
Can cope with model mismatches anddisturbances.
Experiments going on.
Future work
Introduce excitation signals
Combine ILC and IIC strategies.
Marco Forgione (TU Delft) B2B strategies CDC 2012 18 / 19