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

a distributed algorithm for scenario based model
SMART_READER_LITE
LIVE PREVIEW

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)


slide-1
SLIDE 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

slide-2
SLIDE 2

Outline

1

Introduction

2

Scenario Decomposition - Existing Approach

3

Scenario Decomposition using Primal Decomposition

4

Simulation Results

5

Conclusion

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 2 / 24

slide-3
SLIDE 3

Model Predictive Control under Uncertainty

min

xk ,uk N−1

  • k=0

J(xk, uk) s.t xk+1 = f(xk, uk, p) g(xk, uk, p) ≤ 0 x0 = ˆ x p ∈ P ∀k ∈ {1, · · · , N} P

P Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 3 / 24

slide-4
SLIDE 4

Model Predictive Control under Uncertainty

min

xk ,uk N−1

  • k=0

J(xk, uk) s.t xk+1 = f(xk, uk, p) g(xk, uk, p) ≤ 0 x0 = ˆ x p ∈ P ∀k ∈ {1, · · · , N} P0

P Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 3 / 24

slide-5
SLIDE 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

slide-6
SLIDE 6

Multistage Scenario-based MPC

Propagates future evolution of uncertainty using a discrete scenario tree. Optimize over different control trajectories1

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

slide-7
SLIDE 7

Multistage Scenario-based MPC

Propagates future evolution of uncertainty using a discrete scenario tree. Optimize over different control trajectories1 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

slide-8
SLIDE 8

Scenario Tree Generation

p ∈ {p1, p2}

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-9
SLIDE 9

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

x1,1 x1,3 x2,1 x3,1 xN,1 x2,2 x3,2 xN,2 . . . . . . . . . . . . . . . . . . . . . . . . x2,3 x3,3 xN,3 x2,4 x3,4 xN,4

u1,2

u3,1 uN,1 u3,2 uN,2 u3,3 uN,3 u3,4 uN,4

u1,1 u1,3 u1,4

u2,2 u2,1 u2,4 u2,3 x1,2 x1,4

Control trajectory State trajectory

p1

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-10
SLIDE 10

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

. . . . . . . . . . . . . . . . . . . . . . . .

Control trajectory State trajectory

p1 p2

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-11
SLIDE 11

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

. . . . . . . . . . . . . . . . . . . . . . . .

Control trajectory State trajectory

p1 p2

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-12
SLIDE 12

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

. . . . . . . . . . . . . . . . . . . . . . . .

Control trajectory State trajectory

p1 p2 p1 p1 p2 p2

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-13
SLIDE 13

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

. . . . . . . . . . . . . . . . . . . . . . . .

Control trajectory State trajectory

p1 p2 p1 p1 p2 p2

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-14
SLIDE 14

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

. . . . . . . . . . . . . . . . . . . . . . . .

Control trajectory State trajectory

p1 p2 p1 p1 p2 p2 p1 p1 p1 p1 p2 p2 p2 p2

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-15
SLIDE 15

Scenario Tree Generation

p ∈ {p1, p2}

x0,1

Nr N

x1,1 x1,3 x2,1 x3,1 xN,1 x2,2 x3,2 xN,2 . . . . . . . . . . . . . . . . . . . . . . . . x2,3 x3,3 xN,3 x2,4 x3,4 xN,4

u1,2

u3,1 uN,1 u3,2 uN,2 u3,3 uN,3 u3,4 uN,4

u1,1 u1,3 u1,4

u2,2 u2,1 u2,4 u2,3 x1,2 x1,4

Control trajectory State trajectory

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 5 / 24

slide-16
SLIDE 16

Non-anticipativity constraints

. . . . . . . . . . . .

u1,2

u3,1 uN,1 u3,2 uN,2 u3,3 uN,3 u3,4 uN,4

u1,1 u1,3 u1,4

u2,2 u2,1 u2,4 u2,3

u1,1 = u1,2 = u1,3 = u1,4 u2,1 = u2,2 u2,3 = u2,4

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 6 / 24

slide-17
SLIDE 17

Non-anticipativity constraints

. . . . . . . . . . . .

u1,2

u3,1 uN,1 u3,2 uN,2 u3,3 uN,3 u3,4 uN,4

u1,1 u1,3 u1,4

u2,2 u2,1 u2,4 u2,3

u1,1 = u1,2 = u1,3 = u1,4 u2,1 = u2,2 u2,3 = u2,4 Non-anticipativity constraints enable closed-loop implementation!

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 6 / 24

slide-18
SLIDE 18

Multistage Scenario-based MPC

Mathematical formulation min

xk,j ,uk,j S

  • j=1

ωj

N−1

  • k=0

J(xk,j, uk,j) s.t xk+1,j = f(xk,j, uk,j, pk,j) g(xk,j, uk,j, pk,j) ≤ 0 x0,j = ˆ x

S

  • j=1

¯ Ejuj = 0 ∀j ∈ {1, · · · , S} ∀k ∈ {1, · · · , N}

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 7 / 24

slide-19
SLIDE 19

Multistage Scenario-based MPC

Mathematical formulation min

xk,j ,uk,j S

  • j=1

ωj

N−1

  • k=0

J(xk,j, uk,j) s.t xk+1,j = f(xk,j, uk,j, pk,j) g(xk,j, uk,j, pk,j) ≤ 0 x0,j = ˆ x

S

  • j=1

¯ Ejuj = 0 ∀j ∈ {1, · · · , S} ∀k ∈ {1, · · · , N}

¯ E =       E1,2 −E1,2 E2,3 −E2,3 ... ... ES−1,S −ES−1,S       Ej,j+1 =     Inu · · · ... . . . ... . . . Inu · · ·    

Ej,j+1 ∈ Rnuno,(j,j+1)×nuN

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 7 / 24

slide-20
SLIDE 20

Addressing problem size

Mathematical formulation min

xk,j ,uk,j S

  • j=1

ωj

N−1

  • k=0

J(xk,j, uk,j) s.t xk+1,j = f(xk,j, uk,j, pk,j) g(xk,j, uk,j, pk,j) ≤ 0 x0,j = ˆ x

S

  • j=1

¯ Ejuj = 0 ∀j ∈ {1, · · · , S} ∀k ∈ {1, · · · , N}

u2;1; d2;1 uN;1; dN;1

· · ·

u2;2; d2;2 uN;2; dN;2

· · ·

u2;3; d2;3 uN;3; dN;3

· · ·

u2;4; d2;1 uN;4; dN;1

· · ·

u2;5; d2;2 uN;5; dN;2

· · ·

u2;6; d2;3 uN;6; dN;3

· · ·

u2;7; d2;1 uN;7; dN;1

· · ·

u2;8; d2;2 uN;8; dN;2

· · ·

u2;9; d2;3 uN;9; dN;3

· · ·

Nr = 2 S1 S2 S3 S4 S5 S6 S7 S8 S9 d0;1 d0;2 d0;3 d1;1 d1;1 d1;1 d1;2 d1;2 d1;2 d1;3 d1;3 d1;3

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 8 / 24

slide-21
SLIDE 21

Scenario Decomposition

Scenario decomposition using Dual decomposition2 Scenario Subproblem Γj(λ) := min

xk,j ,uk,jωj N

  • k=1

J(xk,j, uk,j) + λT ¯ Ejuj s.t. xk+1,j = f(xk,j, uk,j, pk,j) g(xk,j, uk,j, pk,j) ≤ 0 x0,j = ˆ x ∀k ∈ {1, · · · , N}

· · ·

λ+ = λ + α

S

  • j=1

Eju∗

j

Scenario 1 Scenario 2 Scenario S

u2∗ uS∗ u1∗

λ+ Γ1(λ) Γ2(λ) ΓS(λ)

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

slide-22
SLIDE 22

Scenario Decomposition

Non-anticipativity constraints are feasible only upon convergence ! · · ·

λ+ = λ + α

S

  • j=1

Eju∗

j

Scenario 1 Scenario 2 Scenario S

u2∗ uS∗ u1∗

λ+ Γ1(λ) Γ2(λ) ΓS(λ)

N Predicted optimal control trajectories

Closed-loop implementation OK Correctness of computation is a function of time!

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 10 / 24

slide-23
SLIDE 23

Scenario Decomposition

Non-anticipativity constraints are feasible only upon convergence ! · · ·

λ+ = λ + α

S

  • j=1

Eju∗

j

Scenario 1 Scenario 2 Scenario S

u2∗ uS∗ u1∗

λ+ Γ1(λ) Γ2(λ) ΓS(λ)

N Predicted optimal control trajectories

Closed-loop implementation fails!! “Correctness of computation is a function of time!”

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 10 / 24

slide-24
SLIDE 24

Scenario decomposition using Primal decomposition

u1,1 u2,1 u1,2 u2,2 u1,3 u2,3 u1,4 u2,4 S1 S2 S3 S4 uN,1 uN,2 uN,3 uN,4

· · · · · · · · · · · ·

u3,1 u3,2 u3,3 u3,4

· · · · · · · · · · · ·

u1,1 u1,2 u1,3 u1,4 u2,1 u2,2 u2,3 u2,4 u3,1 u3,2 u3,3 u3,4 uN,1 uN,2 uN,3 uN,4

t1 t2 t3

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 11 / 24

slide-25
SLIDE 25

Scenario decomposition using Primal decomposition

u1,1 u2,1 u1,2 u2,2 u1,3 u2,3 u1,4 u2,4 S1 S2 S3 S4 uN,1 uN,2 uN,3 uN,4

· · · · · · · · · · · ·

u3,1 u3,2 u3,3 u3,4

· · · · · · · · · · · ·

u1,1 u1,2 u1,3 u1,4 u2,1 u2,2 u2,3 u2,4 u3,1 u3,2 u3,3 u3,4 uN,1 uN,2 uN,3 uN,4

t1 t2 t3

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 11 / 24

slide-26
SLIDE 26

Scenario decomposition using Primal decomposition

Non-anticipativity constraint

u1,1 = u1,2 = u1,3 = u1,4 = t1 u2,1 = u2,2 = t2 u2,3 = u2,4 = t3

u1,1 u2,1 u1,2 u2,2 u1,3 u2,3 u1,4 u2,4 S1 S2 S3 S4 uN,1 uN,2 uN,3 uN,4

· · · · · · · · · · · ·

u3,1 u3,2 u3,3 u3,4

t1 t2 t3

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 12 / 24

slide-27
SLIDE 27

Scenario decomposition using Primal decomposition

Non-anticipativity constraint

u1,1 = u1,2 = u1,3 = u1,4 = t1 u2,1 = u2,2 = t2 u2,3 = u2,4 = t3

u1,1 u2,1 u1,2 u2,2 u1,3 u2,3 u1,4 u2,4 S1 S2 S3 S4 uN,1 uN,2 uN,3 uN,4

· · · · · · · · · · · ·

u3,1 u3,2 u3,3 u3,4

t1 t2 t3

Solve each scenario subproblem by fixing t Update t iteratively in the master problem Non-anticipativity constraints always feasible !

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 12 / 24

slide-28
SLIDE 28

Scenario decomposition using Primal decomposition

Scenario Subproblem Φ(tl) = min

xk,j ,uk,j N−1

  • k=0

J(xk,j, uk,j) s.t xk+1,j = f(xk,j, uk,j, pk,j) g(xk,j, uk,j, pk,j) ≤ 0 x0,j = ˆ x ¯ Ejuj = ¯ t ∀k ∈ {1, · · · , N}

scenario 1

Φ(tl)

scenario 2

Φ(tl)

scenario S

Φ(tl)

· · ·

t+

l = tl + α λj

λ1 λ2 λS

tl

tl ∈ Rnu , ∀l ∈ {1, . . . , Nr

m=1 Mm−1}

¯ t =       t1,2 −t1,2 t2,3 −t2,3 ... ... tS−1,S −tS−1,S       tj,j+1 ∈ Rnunc,(j,j+1)

Stopping criteria: ∆tl = |t+

l − tl| ≤ ǫ Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 13 / 24

slide-29
SLIDE 29

Scenario Decomposition using Primal Decomposition

Non-anticipativity constraints are always feasible !

scenario 1

Φ(tl)

scenario 2

Φ(tl)

scenario S

Φ(tl)

· · ·

t+

l = tl + α λj

λ1 λ2 λS

tl

N Predicted optimal control trajectories

Closed-loop implementation OK Approximate solution now is better than accurate solution tomorrow!”

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 14 / 24

slide-30
SLIDE 30

Scenario Decomposition using Primal Decomposition

Non-anticipativity constraints are always feasible !

scenario 1

Φ(tl)

scenario 2

Φ(tl)

scenario S

Φ(tl)

· · ·

t+

l = tl + α λj

λ1 λ2 λS

tl

N Predicted optimal control trajectories

Closed-loop implementation still OK!! “Approximate solution now is better than accurate solution tomorrow!”

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 14 / 24

slide-31
SLIDE 31

Scenario Decomposition using Primal Decomposition

Warm-start t

3Krishnamoorthy, D., Suwartadi, E., Foss, B., Skogestad, S. and Jschke, J., 2018. Improving Scenario Decomposition for Multistage MPC using a Sensitivity-based Path-following Algorithm. IEEE Control Systems Letters, Vol. 2(4). Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 15 / 24

slide-32
SLIDE 32

Scenario Decomposition using Primal Decomposition

Warm-start t Suitable step length α to update t

3Krishnamoorthy, D., Suwartadi, E., Foss, B., Skogestad, S. and Jschke, J., 2018. Improving Scenario Decomposition for Multistage MPC using a Sensitivity-based Path-following Algorithm. IEEE Control Systems Letters, Vol. 2(4). Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 15 / 24

slide-33
SLIDE 33

Scenario Decomposition using Primal Decomposition

Warm-start t Suitable step length α to update t Solve scenario subproblems using sensitivity-based path-following algorithm 3

3Krishnamoorthy, D., Suwartadi, E., Foss, B., Skogestad, S. and Jschke, J., 2018. Improving Scenario Decomposition for Multistage MPC using a Sensitivity-based Path-following Algorithm. IEEE Control Systems Letters, Vol. 2(4). Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 15 / 24

slide-34
SLIDE 34

Case-study: Gas-lift optimization

wgl;1 wgl;2 Well 1 Well 2 Riser wpo;1 wpo;2

min

wgl N

  • k=1
  • −$o

2

  • i=1

wpo,ik + $gl

2

  • i=1

wgl,ik

  • s.t.

xk+1 = f(xk, uk, GORik ) GORi ∈ {GOR0i ± σi} ∀i ∈ {1, 2}, k ∈ {1, · · · , N}

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 16 / 24

slide-35
SLIDE 35

Illustrative Example

M = 3, Nr = 2 ⇒ S = MNr = 9 scenarios

u2;1; d2;1 uN;1; dN;1

· · ·

u2;2; d2;2 uN;2; dN;2

· · ·

u2;3; d2;3 uN;3; dN;3

· · ·

u2;4; d2;1 uN;4; dN;1

· · ·

u2;5; d2;2 uN;5; dN;2

· · ·

u2;6; d2;3 uN;6; dN;3

· · ·

u2;7; d2;1 uN;7; dN;1

· · ·

u2;8; d2;2 uN;8; dN;2

· · ·

u2;9; d2;3 uN;9; dN;3

· · ·

Nr = 2 S1 S2 S3 S4 S5 S6 S7 S8 S9 d0;1 d0;2 d0;3 d1;1 d1;1 d1;1 d1;2 d1;2 d1;2 d1;3 d1;3 d1;3

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 17 / 24

slide-36
SLIDE 36

Illustrative Example

M = 3, Nr = 2 ⇒ S = MNr = 9 scenarios

u2;1; d2;1 uN;1; dN;1

· · ·

u2;2; d2;2 uN;2; dN;2

· · ·

u2;3; d2;3 uN;3; dN;3

· · ·

u2;4; d2;1 uN;4; dN;1

· · ·

u2;5; d2;2 uN;5; dN;2

· · ·

u2;6; d2;3 uN;6; dN;3

· · ·

u2;7; d2;1 uN;7; dN;1

· · ·

u2;8; d2;2 uN;8; dN;2

· · ·

u2;9; d2;3 uN;9; dN;3

· · ·

Nr = 2 S1 S2 S3 S4 S5 S6 S7 S8 S9 d0;1 d0;2 d0;3 d1;1 d1;1 d1;1 d1;2 d1;2 d1;2 d1;3 d1;3 d1;3 u0;1; d0;1 u1;1; d1;1 u2;1; d2;1 uN;1; dN;1

· · ·

u0;2; d0;1 u1;2; d1;2 u2;2; d2;2 uN;2; dN;2

· · ·

u0;3; d0;1 u1;3; d1;3 u2;3; d2;3 uN;3; dN;3

· · ·

u0;4; d0;2 u1;4; d1;1 u2;4; d2;1 uN;4; dN;1

· · ·

u0;5; d0;2 u1;5; d1;2 u2;5; d2;2 uN;5; dN;2

· · ·

u0;6; d0;2 u1;6; d1;3 u2;6; d2;3 uN;6; dN;3

· · ·

u0;7; d0;3 u1;7; d1;1 u2;7; d2;1 uN;7; dN;1

· · ·

u0;8; d0;3 u1;8; d1;2 u2;8; d2;2 uN;8; dN;2

· · ·

u0;9; d0;3 u1;9; d1;3 u2;9; d2;3 uN;9; dN;3

· · ·

Nr = 2

t1 t2 t3 t4

S1 S2 S3 S4 S5 S6 S7 S8 S9

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 17 / 24

slide-37
SLIDE 37

Illustrative Example

tl = {tT

1 , . . . , tT 4 }

t+

1 = t1 + 9

  • j=1

λ1,j t+

2 = t2 + 3

  • j=1

λ2,j t+

3 = t3 + 6

  • j=4

λ2,j t+

4 = t4 + 9

  • j=7

λ2,j

u0;1; d0;1 u1;1; d1;1 u2;1; d2;1 uN;1; dN;1

· · ·

u0;2; d0;1 u1;2; d1;2 u2;2; d2;2 uN;2; dN;2

· · ·

u0;3; d0;1 u1;3; d1;3 u2;3; d2;3 uN;3; dN;3

· · ·

u0;4; d0;2 u1;4; d1;1 u2;4; d2;1 uN;4; dN;1

· · ·

u0;5; d0;2 u1;5; d1;2 u2;5; d2;2 uN;5; dN;2

· · ·

u0;6; d0;2 u1;6; d1;3 u2;6; d2;3 uN;6; dN;3

· · ·

u0;7; d0;3 u1;7; d1;1 u2;7; d2;1 uN;7; dN;1

· · ·

u0;8; d0;3 u1;8; d1;2 u2;8; d2;2 uN;8; dN;2

· · ·

u0;9; d0;3 u1;9; d1;3 u2;9; d2;3 uN;9; dN;3

· · ·

Nr = 2

t1 t2 t3 t4

S1 S2 S3 S4 S5 S6 S7 S8 S9

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 18 / 24

slide-38
SLIDE 38

Simulation Results - Primal Decomposition

1 2 3 4 5

time [h]

0.1 0.105 0.11 0.115 0.12 0.125 0.13 0.135 0.14

GOR [kg/kg]

well 1 well 2 Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 19 / 24

slide-39
SLIDE 39

Simulation Results - Primal Decomposition

1 2 3 4 5 70 71 72 73 74

Total Oil [kg/s]

Centralized Decomposed

1 2 3 4 5

time [h]

2 4 6 8

Gas Lift [kg/s]

Centralized well 1 Centralized well 2 Decomposed well 1 Decomposed well 2

1 2 3 4 5

  • 0.5

0.5 1

Abs Error

1 2 3 4 5

time [h]

  • 0.1
  • 0.05

0.05

Abs Error

Well 1 Well 2 Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 19 / 24

slide-40
SLIDE 40

Simulation Results - Primal Decomposition

Number of iterations between the master and subproblems to update tl

1 2 3 4 5

time [h]

5 10 15 20

  • no. of iterations

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 20 / 24

slide-41
SLIDE 41

Simulation Results - Primal Decomposition

Number of iterations between the master and subproblems to update tl

1 2 3 4 5

time [h]

5 10 15 20

  • no. of iterations

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 20 / 24

slide-42
SLIDE 42

Simulation Results - Primal Decomposition

Number of iterations capped at a maximum of 5 iterations

1 2 3 4 5 70 71 72 73 74

Total Oil [kg/s]

Centralized Decomposed

1 2 3 4 5

time [h]

2 4 6 8

Gas Lift [kg/s]

Centralized well 1 Centralized well 2 Decomposed well 1 Decomposed well 2

1 2 3 4 5

  • 0.5

0.5 1

Abs Error

1 2 3 4 5

time [h]

  • 0.4
  • 0.2

0.2 0.4

Abs Error

Well 1 Well 2 Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 21 / 24

slide-43
SLIDE 43

Simulation Results - Primal Decomposition

Number of iterations between the master and subproblems to update tl, capped at a maximum of 5 iterations

1 2 3 4 5

time [h]

1 2 3 4 5 6

  • no. of iterations

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 22 / 24

slide-44
SLIDE 44

Simulation Results - Primal Decomposition

0.2 0.4 0.6 0.8 1

Time [h]

2 3 4 5 6 7 8

Gas Lift [kg/s]

Centralized well 1 Centralized well 2 Decomposed well 1 Decomposed well 2 Decomposed capped well 1 Decomposed capped well 2 Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 23 / 24

slide-45
SLIDE 45

Summary

Scenario decomposition using primal decomposition

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 24 / 24

slide-46
SLIDE 46

Summary

Scenario decomposition using primal decomposition Primal decomposition always ensures feasibility of non-anticipativity constraints

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 24 / 24

slide-47
SLIDE 47

Summary

Scenario decomposition using primal decomposition Primal decomposition always ensures feasibility of non-anticipativity constraints Attractive property for closed-loop implementation

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 24 / 24

slide-48
SLIDE 48

Summary

Scenario decomposition using primal decomposition Primal decomposition always ensures feasibility of non-anticipativity constraints Attractive property for closed-loop implementation Warm-starting the master problem leads to convergence eventually

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 24 / 24

slide-49
SLIDE 49

Summary

Scenario decomposition using primal decomposition Primal decomposition always ensures feasibility of non-anticipativity constraints Attractive property for closed-loop implementation Warm-starting the master problem leads to convergence eventually Demonstrated using a gas-lift optimization case study

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 24 / 24

slide-50
SLIDE 50

Summary

Scenario decomposition using primal decomposition Primal decomposition always ensures feasibility of non-anticipativity constraints Attractive property for closed-loop implementation Warm-starting the master problem leads to convergence eventually Demonstrated using a gas-lift optimization case study

Thank you !

Acknowledgement: SFI SUBPRO

Krishnamoorthy et. al. (NTNU) Distributed Multistage MPC 26 July 2018 24 / 24