a distributed algorithm for scenario based model
play

A Distributed Algorithm for Scenario-based Model Predictive Control - PowerPoint PPT Presentation

A Distributed Algorithm for Scenario-based Model Predictive Control using Primal Decomposition Dinesh Krishnamoorthy , Bjarne Foss, Sigurd Skogestad Department of Chemical Engineering Norwegian University of Science and Technology (NTNU)


  1. A Distributed Algorithm for Scenario-based Model Predictive Control using Primal Decomposition Dinesh Krishnamoorthy ∗ , Bjarne Foss, Sigurd Skogestad Department of Chemical Engineering Norwegian University of Science and Technology (NTNU) ∗ dinesh.krishnamoorthy@ntnu.no 26 July 2018 IFAC ADCHEM 2018, Shenyang, China Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 1 / 24

  2. Outline Introduction 1 Scenario Decomposition - Existing Approach 2 Scenario Decomposition using Primal Decomposition 3 Simulation Results 4 Conclusion 5 Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 2 / 24

  3. Model Predictive Control under Uncertainty P N − 1 � min J ( x k , u k ) x k , u k k =0 s.t x k +1 = f ( x k , u k , p ) g ( x k , u k , p ) ≤ 0 P x 0 = ˆ x p ∈ P ∀ k ∈ { 1 , · · · , N } Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 3 / 24

  4. Model Predictive Control under Uncertainty P 0 N − 1 � min J ( x k , u k ) x k , u k k =0 s.t x k +1 = f ( x k , u k , p ) g ( x k , u k , p ) ≤ 0 P x 0 = ˆ x p ∈ P ∀ k ∈ { 1 , · · · , N } Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 3 / 24

  5. Multistage Scenario-based MPC Propagates future evolution of uncertainty using a discrete scenario tree. 1P.O.M. Scokaert and D.Q. Mayne, Min-max feedback model predictive control, IEEE Transactions on Automatic Control 43:8 (1998) 11361142. Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 4 / 24

  6. Multistage Scenario-based MPC Propagates future evolution of uncertainty using a discrete scenario tree. Optimize over different control trajectories 1 1P.O.M. Scokaert and D.Q. Mayne, Min-max feedback model predictive control, IEEE Transactions on Automatic Control 43:8 (1998) 11361142. Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 4 / 24

  7. Multistage Scenario-based MPC Propagates future evolution of uncertainty using a discrete scenario tree. Optimize over different control trajectories 1 Closed-loop optimization - introduces recourse action. 1P.O.M. Scokaert and D.Q. Mayne, Min-max feedback model predictive control, IEEE Transactions on Automatic Control 43:8 (1998) 11361142. Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 4 / 24

  8. Scenario Tree Generation p ∈ { p 1 , p 2 } Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  9. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory x 2 , 1 x 3 , 1 x N, 1 u 3 , 1 u N, 1 . . . . . . x 1 , 1 u 2 , 1 u 2 , 2 x 1 , 2 x 2 , 2 x 3 , 2 x N, 2 p 1 u 3 , 2 u N, 2 . . . . . . u 1 , 1 u 1 , 2 u 1 , 3 x 2 , 3 x 3 , 3 x N, 3 u 3 , 3 u N, 3 x 0 , 1 u 1 , 4 . . . . . . x 1 , 3 u 2 , 3 u 2 , 4 x 1 , 4 x 2 , 4 x 3 , 4 x N, 4 u 3 , 4 u N, 4 . . . . . . N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  10. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory . . . . . . p 1 . . . . . . x 0 , 1 . . . . . . p 2 . . . . . . N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  11. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory . . . . . . p 1 . . . . . . x 0 , 1 . . . . . . p 2 . . . . . . N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  12. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory . . . . . . p 1 p 1 . . . . . . p 2 x 0 , 1 . . . . . . p 1 p 2 . . . . . . p 2 N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  13. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory . . . . . . p 1 p 1 . . . . . . p 2 x 0 , 1 . . . . . . p 1 p 2 . . . . . . p 2 N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  14. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory p 1 p 1 . . . . . . p 1 p 1 p 2 p 2 . . . . . . p 2 x 0 , 1 p 1 p 1 . . . . . . p 1 p 2 p 2 p 2 . . . . . . p 2 N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  15. Scenario Tree Generation p ∈ { p 1 , p 2 } Control trajectory State trajectory x 2 , 1 x 3 , 1 x N, 1 u 3 , 1 u N, 1 . . . . . . x 1 , 1 u 2 , 1 u 2 , 2 x 1 , 2 x 2 , 2 x 3 , 2 x N, 2 u 3 , 2 u N, 2 . . . . . . u 1 , 1 u 1 , 2 u 1 , 3 x 2 , 3 x 3 , 3 x N, 3 u 3 , 3 u N, 3 x 0 , 1 u 1 , 4 . . . . . . x 1 , 3 u 2 , 3 u 2 , 4 x 1 , 4 x 2 , 4 x 3 , 4 x N, 4 u 3 , 4 u N, 4 . . . . . . N r N Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

  16. Non-anticipativity constraints u 3 , 1 u N, 1 . . . u 2 , 1 u 2 , 2 u 1 , 1 = u 1 , 2 = u 1 , 3 = u 1 , 4 u 3 , 2 u N, 2 . . . u 1 , 1 u 1 , 2 u 2 , 1 = u 2 , 2 u 1 , 3 u 3 , 3 u N, 3 u 1 , 4 . . . u 2 , 3 = u 2 , 4 u 2 , 3 u 2 , 4 u 3 , 4 u N, 4 . . . Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 6 / 24

  17. Non-anticipativity constraints u 3 , 1 u N, 1 . . . u 2 , 1 u 2 , 2 u 1 , 1 = u 1 , 2 = u 1 , 3 = u 1 , 4 u 3 , 2 u N, 2 . . . u 1 , 1 u 1 , 2 u 2 , 1 = u 2 , 2 u 1 , 3 u 3 , 3 u N, 3 u 1 , 4 . . . u 2 , 3 = u 2 , 4 u 2 , 3 u 2 , 4 u 3 , 4 u N, 4 . . . Non-anticipativity constraints enable closed-loop implementation! Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 6 / 24

  18. Multistage Scenario-based MPC Mathematical formulation S N − 1 � � min ω j J ( x k , j , u k , j ) x k , j , u k , j j =1 k =0 s.t x k +1 , j = f ( x k , j , u k , j , p k , j ) g ( x k , j , u k , j , p k , j ) ≤ 0 x 0 , j = ˆ x S � ¯ E j u j = 0 j =1 ∀ j ∈ { 1 , · · · , S } ∀ k ∈ { 1 , · · · , N } Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 7 / 24

  19. Multistage Scenario-based MPC Mathematical formulation S N − 1 � � min ω j J ( x k , j , u k , j ) E 1 , 2 − E 1 , 2   E 2 , 3 − E 2 , 3 x k , j , u k , j   j =1 k =0 ¯   E = ... ...     s.t   E S − 1 , S − E S − 1 , S x k +1 , j = f ( x k , j , u k , j , p k , j ) g ( x k , j , u k , j , p k , j ) ≤ 0  I nu 0 · · · 0  x 0 , j = ˆ x . . ... ...   E j , j +1 = . .   . .   S 0 · · · 0 I nu � ¯ E j u j = 0 E j , j +1 ∈ R n u n o , ( j , j +1) × n u N j =1 ∀ j ∈ { 1 , · · · , S } ∀ k ∈ { 1 , · · · , N } Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 7 / 24

  20. Addressing problem size Mathematical formulation S N − 1 u 2 ; 1 ; d 2 ; 1 u N; 1 ; d N; 1 � � S 1 min ω j J ( x k , j , u k , j ) d 1 ; 1 · · · x k , j , u k , j d 1 ; 2 u 2 ; 2 ; d 2 ; 2 u N; 2 ; d N; 2 S 2 j =1 k =0 · · · u 2 ; 3 ; d 2 ; 3 u N; 3 ; d N; 3 d 1 ; 3 S 3 s.t d 0 ; 1 · · · u 2 ; 4 ; d 2 ; 1 u N; 4 ; d N; 1 S 4 x k +1 , j = f ( x k , j , u k , j , p k , j ) d 1 ; 1 · · · d 0 ; 2 d 1 ; 2 u 2 ; 5 ; d 2 ; 2 u N; 5 ; d N; 2 S 5 · · · g ( x k , j , u k , j , p k , j ) ≤ 0 d 1 ; 3 u 2 ; 6 ; d 2 ; 3 u N; 6 ; d N; 3 S 6 · · · x 0 , j = ˆ x d 0 ; 3 u 2 ; 7 ; d 2 ; 1 u N; 7 ; d N; 1 S 7 d 1 ; 1 · · · S d 1 ; 2 u 2 ; 8 ; d 2 ; 2 u N; 8 ; d N; 2 S 8 · · · � ¯ E j u j = 0 d 1 ; 3 u 2 ; 9 ; d 2 ; 3 u N; 9 ; d N; 3 S 9 · · · j =1 N r = 2 ∀ j ∈ { 1 , · · · , S } ∀ k ∈ { 1 , · · · , N } Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 8 / 24

  21. Scenario Decomposition Scenario decomposition using Dual decomposition 2 Scenario Subproblem N J ( x k , j , u k , j ) + λ T ¯ � Γ j ( λ ) := x k , j , u k , j ω j min E j u j Scenario 1 Scenario 2 Scenario S k =1 · · · Γ 1 ( λ ) Γ 2 ( λ ) Γ S ( λ ) s.t. u 1 ∗ u 2 ∗ u S ∗ x k +1 , j = f ( x k , j , u k , j , p k , j ) S λ + = λ + α � E j u ∗ j g ( x k , j , u k , j , p k , j ) ≤ 0 j =1 λ + x 0 , j = ˆ x ∀ k ∈ { 1 , · · · , N } Stopping criteria: ∆ λ = | λ + − λ | ≤ ǫ 2R. Marti, S. Lucia, D. Sarabia, R. Paulen, S. Engell, C. de Prada (2015) Improving scenario decomposition algorithms for robust nonlinear model predictive control, Comput. Chem. Eng. Vol 79 p.30-45 Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 9 / 24

  22. Scenario Decomposition Non-anticipativity constraints are feasible only upon convergence ! Predicted optimal control trajectories Scenario 1 Scenario 2 Scenario S · · · Γ 1 ( λ ) Γ 2 ( λ ) Γ S ( λ ) u 1 ∗ u 2 ∗ u S ∗ S λ + = λ + α � E j u ∗ j j =1 λ + N Closed-loop implementation OK Correctness of computation is a function of time! Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 10 / 24

  23. Scenario Decomposition Non-anticipativity constraints are feasible only upon convergence ! Predicted optimal control trajectories Scenario 1 Scenario 2 Scenario S · · · Γ 1 ( λ ) Γ 2 ( λ ) Γ S ( λ ) u 1 ∗ u 2 ∗ u S ∗ S λ + = λ + α � E j u ∗ j j =1 λ + N Closed-loop implementation fails!! “Correctness of computation is a function of time!” Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 10 / 24

Recommend


More recommend