A Comparative Study between WaveletAdaptive Multiple Shooting and
A Comparative Study between Wavelet-Adaptive Multiple Shooting and Single Shooting Implemented in a Matlab-EMSO Environment Lizandro S. Santos, Argimiro R. Secchi, Evaristo C. Biscaia Jr. Chemical Engineering Program – PEQ/COPPE Universidade Federal do Rio de Janeiro, Brazil.
Outline Ø Introduction Ø Dynamic Optimization with Wavelets Ø Algorithm Structure Ø Results Ø Conclusions Outline
Goals • Implementation of Wavelet-Adaptive Algorithm[1] to solve optimal control problems using both single shooting and multiple shooting strategies; • Using software EMSO as modeling environment for dynamic optimization formulation; • Comparing CPU performance of wavelet-adaptive single and multiple shooting strategies. [1] Santos et al. , 2014, Computer Aided and Chemical Engineering, v. 33, p. 247 - 252. Goals
Mathematic Formulation – Dynamic Optimization General Definition equality inequality terminal Mathematic Formulation
Dynamic. Optimization. Methods Bellman (HJB) Indirect Methods Pontryagin (EL) Dynamic Optimization (Sequential) Single Shooting Direct Methods Multiple Shooting Simultaneous Dynamic Optimization Methods
Sequential Method (Single Shooting) Control vector parameterization (e. g. , piecewise constant approximation) Time domain discretization Number of stages Stage 1 Stage 2 Stage 3 u t 0 time t. F Sequential Method
Single Shooting Sensitivity Equations Non-Linear Programming ex. : Interior Point, SQP Sequential Integration u t 0 time t. F Sequential Method
Multiple Shooting Sensitivity and Constraints Non-Linear Programming ex. : Interior Point, SQP parallel Parallel Integration t 0 time t. F Multiple Shooting
Characteristics Single Shooting Multiple Shooting (ii) Results in a smaller NLP if compared with multiple shooting. (i) A larger NLP is formed, more sensitivity information is required, and the number of SQP iterations may not be reduced. (ii) Sequential approach may be unable to deal with unstable systems (frequently happens in reactive systems and control problems). (ii) Multiple shooting can solve unstable systems. (iii) More parallelizable. Characteristics
Wavelet Analysis for Image and Signal Processing Wavelet Decomposition Original Image Processed Image Resolution levels Noisy signal Wavelet Adaptation
Wavelet-Adaptive Dynamic Optimization How Wavelets Work Iteration 2 Wavelets NLP solver Iteration 1 Wavelets NLP solver Control profile Wavelet Adaptation
Wavelets Thresholding Analysis Considering a function , it can be transformed into wavelet domain as (discrete wavelet transform): detail coefficients control variable Inner product Resolution Position Vector of wavelets details where is the maximum level resolution. Wavelet Adaptation
Wavelets Thresholding Analysis Haar[1] wavelet has been considered: Orthogonal basis [1] Daubechies, I. , 1992, Ten Lectures on Wavelets, Philadelphia, Society for Industrial and Applied Mathematics. Wavelet Adaptation
Wavelets Thresholding Analysis details Thresholding: some details are eliminated. New thresholded control profile Wavelet Adaptation
Wavelets Thresholding Analysis Thresholding Strategies soft threshold: [2] detail coefficients Choice of threshold: Visushrink[3] Sureshrink[4] Cross Validation[5] Fixed Threshold[6] [2] Wieland B. , 2009, Ph. D Thesis, Universität Ulm, Deutschland. [3] Donoho, D. L. and Johnstone, I. M. , 1994, Biometrika, v. 81, pp. 425 -455. [4] Donoho, D. L. , 1995, IEEE Transactions on Information Theory, v. 41, n. 3, pp. 613 -627. [5] Jansen, M. , 2000, Ph. D Thesis. [6] Schlegel, M, et al. , 2005, Computer and Chemical Engineering, v. 29, pp. 1731 -1751. Wavelet Adaptation
Control Vector Parameterization Shrink Threshold (CVPS) Wavelets Daubechies Wavelet Adaptation
Algorithm Structure (MATLAB) Based on wavelets analysis Santos et al. (2011, 2014) Enviroment for including DAE model Algorithm Structure
Case Studies Case 1 Batch Reactor Problem (CIZNIA et al, . 2006) 2 Continuous State Constraint Problem (JACOBSON & LELE, 1969) 3 Temperature Control (TOMLAB MANUAL, 2010) 4 Linear Bang Control (LUSS, 2002) 5 Pressure-constrained Batch Reactor (HUANG, 2002) 6 Singular Control 5 (LUSS, 2002) 7 Time Free Bang Control (LIANG et al. 2003) 8 Drug Displacement Problem (LUSS, 2002) 9 Lee & Ramirez Bioreactor Q = 0 (BALSA-CANTO et al. , 2001) 10 Lee & Ramirez Bioreactor Q = 2. 5 (BALSA-CANTO et al, 2001) 11 Non-linear CSTR (BALSA-CANTO et al. , 2001) 12 CSTR Reactor (SRINAVASAN et al. , 2003 a) 13 Batch Fermentator Penicilin (BANGA et al. , 2005) 14 The mixed catalyst problem (BELL e SARGENT, 2000) 15 Benoit Chachuat Example - (CHACHUAT, 2006) 16 Singular Control 4 (LUSS, 2002) 17 Singular Control 2 (LUSS, 2002) 18 Quadruple Integral (TOMLAB MANUAL, 2010) 19 Singular Control 3 (LUSS, 2002) 20 Park and Ramirez Bioreactor (BALSA-CANTO et al. , 2001) control state 1 1 1 1 2 2 4 1 1 1 1 1 2 3 3 3 2 2 8 9 8 3 4 3 3 5 3 4 4 5 path const. end const. control arcs/control 0 1 0 0 0 0 3 0 0 0 0 0 1 0 0 0 2 2 0 0 0 2 0 0 4 0 0 1 1 1 2 2 2 4 5 10 3 3 3 4 4 5 1. 0 2. 5 3. 0 3. 0 4. 0 5. 0 J 0. 0695 0. 1728 203. 8656 41. 3488 11. 7270 0. 7540 5. 7571 30. 1400 21. 8169 221. 2858 6. 1515 0. 4317 88. 0364 0. 0480 4. 5859 0. 1194 0. 4446 1. 0000 1. 2523 32. 6860
Results: overview Thresholdings with Single Shooting SS CPU 1 Batch Reactor Problem (CIZNIA et al, . 2006) 2 Continuous State Constraint Problem (JACOBSON & LELE, 1969) 3 Temperature Control (TOMLAB MANUAL, 2010) 4 Linear Bang Control (LUSS, 2002) 5 Pressure-constrained Batch Reactor (HUANG, 2002) 6 Singular Control 5 (LUSS, 2002) 7 Time Free Bang Control (LIANG et al. 2003) 8 Drug Displacement Problem (LUSS, 2002) 9 Lee & Ramirez Bioreactor Q = 0 (BALSA-CANTO et al. , 2001) 10 Lee & Ramirez Bioreactor Q = 2. 5 (BALSA-CANTO et al, 2001) 11 Non-linear CSTR (BALSA-CANTO et al. , 2001) 12 CSTR Reactor (SRINAVASAN et al. , 2003 a) 13 Batch Fermentator Penicilin (BANGA et al. , 2005) 14 The mixed catalyst problem (BELL e SARGENT, 2000) 15 Benoit Chachuat Example - (CHACHUAT, 2006) 16 Singular Control 4 (LUSS, 2002) 17 Singular Control 2 (LUSS, 2002) 18 Quadruple Integral (TOMLAB MANUAL, 2010) 19 Singular Control 3 (LUSS, 2002) 20 Park and Ramirez Bioreactor (BALSA-CANTO et al. , 2001) 0. 12 0. 16 1. 64 1. 68 0. 25 0. 27 0. 98 0. 94 0. 54 0. 39 0. 61 0. 10 1. 24 0. 10 0. 29 0. 60 0. 15 0. 12 0. 20 0. 86 VS ns 24 53 93 82 35 47 53 55 81 120 518 37 39 32 64 64 51 34 62 84 CPU 0. 06 0. 03 0. 28 0. 3 0. 18 0. 41 0. 22 0. 59 0. 36 0. 5 0. 15 0. 94 0. 15 0. 32 0. 49 0. 26 0. 28 1. 23 CVPS ns 53 25 28 99 27 35 31 27 87 123 454 39 33 40 51 18 46 32 63 75 CPU 1. 9 0. 69 0. 28 0. 25 0. 21 0. 35 0. 53 0. 23 0. 55 0. 28 0. 07 0. 95 0. 16 0. 29 0. 86 0. 22 0. 16 0. 5 0. 93 Fixed ns 52 97 52 57 39 40 29 38 65 140 324 30 40 27 49 42 53 35 36 86 CPU normalized by the uniform discretization with 128 stages CPU 0. 62 0. 44 0. 33 0. 48 0. 44 0. 62 0. 65 0. 81 0. 89 0. 71 0. 72 0. 38 0. 98 0. 72 0. 33 0. 91 0. 49 0. 36 0. 48 1. 22 ns 62 88 48 55 41 43 72 123 351 44 54 37 56 62 66 51 66 95
Results (Single Shooting: 1 CPU, Multiple Shooting: 2 CPUs) Illustrative example: Semi-batch Isothermal Reactor [2] Piecewise-constant interpolation [2] Srinavasan, B. et al. , 2003, Computer and Chemical Engineering, v. 27, pp. 1 -26. Illustration
Illustration of Wavelet Refinement Algorithm Example: Semi-batch Isothermal Reactor [2] Srinavasan, B. et al. , 2003, Computer and Chemical Engineering, v. 27, pp. 1 -26. Illustration
Illustration of Wavelet Refinement Algorithm Example: Semi-batch Isothermal Reactor [2] Analytical [2] Srinavasan, B. et al. , 2003, Computer and Chemical Engineering, v. 27, pp. 1 -26. Illustration
Example 1 [3] Diehl et al. , (2006), Fast Direct Multiple Shooting Algorithms for Optimal Robot Control Example 1
Example 1 [1] State variable at the first iteration of SS method State variable at the first iteration of MS method time Uncontrollable growth of x for any [1] Diehl et al. , (2006), Fast Direct Multiple Shooting Algorithms for Optimal Robot Control Example 1
Example 1 [1] Optimal control profile Optimal state profile u time [1] Diehl et al. , (2006), Fast Direct Multiple Shooting Algorithms for Optimal Robot Control Example 1
Example 1 [1] Single Shooting Multiple Shooting iterations CPU(s) stages J CPU(s) Stages J 1 10 8 0. 006313 2 17 16 0. 006216 3 30 19 0. 006197 34 19 0. 006197 4 70 28 0. 006186 92 28 0. 006186 5 131 39 0. 006183 234 39 0. 006183 [1] Diehl et al. , (2006), Fast Direct Multiple Shooting Algorithms for Optimal Robot Control Example 1
Example 2
Example 2 – Evolution of Control Profiles Iteration 2 Iteration 3 Example 2
Example 2 – Evolution of Control Profiles Iteration 4 Iteration 5 Example 2
Example 2 Single Shooting Multiple Shooting iterations CPU(s) stages J 1 7 8 0. 277441 2 33 16 0. 269938 36 16 0. 269938 3 106 27 0. 268688 149 27 0. 268688 4 256 43 0. 268481 358 43 0. 268481 5 266 53 0. 268481 511 53 0. 268481 Example 2
Example 3 [3] [2] Srinavasan, B. et al. , 2003, Computer and Chemical Engineering, v. 27, pp. 1 -26. Example 3
Example 3
Example 3
Example 3 Single Shooting Multiple Shooting iterations CPU(s) stages J 1 8 4 0. 4287 11 4 0. 4287 2 42 8 0. 4308 43 8 0. 4308 3 236 14 0. 4316 155 14 0. 4316 4 1016 24 0. 4316 443 24 0. 4316 5 1433 36 0. 4317 1073 36 0. 4317 Example 3
Example 4 [4] Banga, J. R. , et al. 2005, Journal of Biotechnology, v. 117, pp. 407 -419. Example 4
Example 4 [4] Banga, J. R. , et al. 2005, Journal of Biotechnology, v. 117, pp. 407 -419. Example 4
Example 4 [4] Banga, J. R. , et al. 2005, Journal of Biotechnology, v. 117, pp. 407 -419. Example 4
Example 4 [4] Single Shooting [4] Multiple Shooting iterations CPU(s) stages J 1 89 8 17. 6223 56 8 17. 6223 2 211 16 17. 6321 144 16 17. 6321 3 1128 24 17. 6383 854 24 17. 6383 4 1820 38 17. 6388 1543 38 17. 6388 5 3753 60 17. 6389 3219 60 17. 6389 Banga, J. R. , et al. 2005, Journal of Biotechnology, v. 117, pp. 407 -419. Example 4
Conclusions • The wavelet-adaptive algorithm generated a non-uniform control parameterization for both multiple shooting and single shooting strategies allowing a faster convergence to the optimal solution; • The combination of wavelet-adaptive strategy with parallel integration makes multiple shooting attractive and a good alternative for single shooting method; • It has been observed that single shooting is faster than multiple shooting for small and smooth NLP problems; however, for large-dimension or non-smooth problems multiple shooting might be faster than single shooting approach. Conclusions
A Comparative Study between Wavelet-Adaptive Multiple Shooting Optimal Wavelet-Threshold Selection to Solve and Single Shooting Implemented in a Matlab-EMSO Dynamic Optimization Problems. Environment Thank you for your attention! arge@peq. coppe. ufrj. br
Visushrink Threshold (VS) Minimizes the probability that any noise sample will exceed the threshold. Given a sequence of variables, the expected value of the maximum increase with the length of the signal: Standard deviation estimate for normal distribution of small details Inverse of cumulative normal distribution
Sureshrink Threshold (SS) Sureshrink is an adaptive thresholding strategy. It is based on Stein’s Unbiased Risk Estimator[7] (SURE), a method for estimating the optimal threshold at each wavelet level: where [7] Stein, C M. , 1981, The Annals of Statistics, v. 9, pp. 1135 -1151
Cross Validation Threshold (CV) In short, the concept of CV is given by the construction of several estimates, never using the whole dataset. Using these estimates one predicts what the expelled data could have been and compares the prediction with the actual values of the expelled data. [8] where [8] Wieland B. , 2009, Speech signal noise reduction with wavelets, Ph. D Thesis, Universität Ulm, Deutschland
Fixed Threshold Use a user specified fixed threshold rule. [9] The threshold does not change with the wavelet level. The threshold value must, at least, be set between max (d) and min (d). [9] Schlegel, M, et al. , 2005, Computer and Chemical Engineering, v. 29, pp. 1731 -1751.
- Slides: 44