long term battery ageing control: introducing the...

29
Long term battery ageing control: introducing the Adaptative Weights Algorithm Benjamin Heymann, Criteo R&D SESO, May 31 2017 1 / 25

Upload: others

Post on 04-Jun-2020

3 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Long term battery ageing control: introducing theAdaptative Weights Algorithm

Benjamin Heymann, Criteo R&D

SESO, May 31 2017

1 / 25

Page 2: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Outline

1 IntroductionThe microgrid modelDynamic programming

2 Battery agingBattery ageing modelThe long term problem

3 The Adaptative Weights Algorithm (AWA)First step: Bilevel decompositionSecond step: relaxationThird step: approximationImplementation and results

4 Conclusion

2 / 25

Page 3: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Introduction

Table of Contents

1 IntroductionThe microgrid modelDynamic programming

2 Battery agingBattery ageing modelThe long term problem

3 The Adaptative Weights Algorithm (AWA)First step: Bilevel decompositionSecond step: relaxationThird step: approximationImplementation and results

4 Conclusion

2 / 25

Page 4: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Introduction The microgrid model

Motivation: the Microgrid

The microgrid is disconnected fromthe main network

Constraints: on the control and thestate.

Operating cost: cost of diesel

We have a forecast for PV productionand load

Goal: minimize the operating cost(such that production meets demand)

3 / 25

Page 5: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Introduction The microgrid model

Dynamics and continuous time optimal control formulation

State of charge: c

diesel cost: `(u) = βu2

state of charge dynamics: Fc(c, u, t) = (ρiPi(u, t)− Po(u, t)/ρo)/Cwith

I Pi(u, t) = (−u− Ps(t) + Pl(t))+ being the power that gets into the

batteryI Po(u, t) = (−u− Ps(t) + Pl(t))

− being the power that gets out ofthe battery.

4 / 25

Page 6: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Introduction Dynamic programming

Resolution by dynamic programming

In R. Bellman words: “An optimal policy has the property thatwhatever the initial state and initial decision are, the remainingdecisions must constitute an optimal policy with regard to the stateresulting from the first decision.”

5 / 25

Page 7: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Introduction Dynamic programming

BocopHJB

The value function of the optimal control problem is the viscositysolution of an Hamilton-Jacobi-Bellman (HJB) equation

We solve this equation with a semi-Lagrangian scheme:

Vk(x) = min

uh`

u(x)︸ ︷︷ ︸

running cost

+ Vk+1 (

x + hfu(x))︸ ︷︷ ︸

value at the next point

We then use the value function to build a decision

The scheme is implemented in BocopHJB (available online)

Bonnans, Giorgi, B. H. , Martinon, and Tissot, Bocophjb 1.0.1user guide, tech. rep., 2015.

6 / 25

Page 8: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Battery aging

Table of Contents

1 IntroductionThe microgrid modelDynamic programming

2 Battery agingBattery ageing modelThe long term problem

3 The Adaptative Weights Algorithm (AWA)First step: Bilevel decompositionSecond step: relaxationThird step: approximationImplementation and results

4 Conclusion

6 / 25

Page 9: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Battery aging Battery ageing model

The ageing dilemmaWhy grad students are always tired?

Cafeine makes you take a suboptimal trajectory.

7 / 25

Page 10: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Battery aging Battery ageing model

Battery ageing models

loss of efficiency:ρi(a) = (1− a)ρ,

where ρ is the initial coefficient for a = 0.

The aging dynamics corresponds to a severity factor model :

Fa(a(t), c(t), u(t), t) = η(c)Po(a, c, u, t)

K

where η(c) = (−4c2+5)5

8 / 25

Page 11: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Battery aging Battery ageing model

Claim

By combining pre-computation and dimension reduction, the algorithmreduces the computing time by several orders and allows for onlineimplementations.

9 / 25

Page 12: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Battery aging The long term problem

Problem formulation

The age a and the charge c follow a T -periodic dynamics controlled bya time dependent parameter u:

P (a0, c0, t0)

V (a0, c0, t0) := inf

u∈U

∫ NT

t0

`(u(t), t)dt+ ψ(aNT )

(a(t0), c(t0)) = (a0, c0), a(NT ) ≤ amax(a, c) = (Fa(a, c, u, t), Fc(a, c, u, t))

10 / 25

Page 13: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Battery aging The long term problem

Problem structure

Assumption (Slow aging)

There exists a constant L > 0 such that Fc is L-Lipschitz and uniformlybounded by L, and Fa is L/N -Lipschitz and uniformly bounded by L/N .

Assumption (Monotonicity)

The value functions V µ and V are non decreasing in a0 and nonincreasing in c0.

Assumption (Regularity of the ageing process)

For any ε > 0, ∆ > 0, there exists ε1 > 0 such that ifx0 = (a0, c0) ∈ A× C, u ∈ Ux0 and

∆ ≤∫ T0 Fa(X(t), u(t), t)dt ≤ ∆ + ε1, then there exists u′ ∈ Ux0 such

that∫ T0 Fa(X(t), u′(t), t)dt = ∆ and

∣∣∣∫ T0 [`(u(t), t)− `(u′(t), t)]dt∣∣∣ ≤ ε.

11 / 25

Page 14: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA)

Table of Contents

1 IntroductionThe microgrid modelDynamic programming

2 Battery agingBattery ageing modelThe long term problem

3 The Adaptative Weights Algorithm (AWA)First step: Bilevel decompositionSecond step: relaxationThird step: approximationImplementation and results

4 Conclusion

11 / 25

Page 15: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) First step: Bilevel decomposition

First step: Bilevel decomposition

Pµ(a0, δ, c0, cF )

V µ(a0, δ, c0, cF ) := inf

u∈UT

∫ T

0`(u(t), t)dt

(a(0), c(0)) = (a0, c0), a(T ) ≤ a0 + δ, c(T ) ≥ cF(a, c) = (Fa(a, c, u, t), Fc(a, c, u, t)).

12 / 25

Page 16: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) First step: Bilevel decomposition

First step: Bilevel decomposition

Lemma

V (a0, c0, tk) = infδ,cf

V µ(a0, δ, c0, cf ) + V (a0 + δ, cf , tk+1)

13 / 25

Page 17: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Second step: relaxation

Second step: relaxation

Let us introduce the relaxed micro-problem:

Pµr (.., α)

V µr (.., α) := inf

u∈U

∫ T

0[`(u(t), t) + αFa(X(t), u(t), t)]dt

(a(0), c(0)) = (a0, c0) and c(T ) ≥ cF .(a(t), c(t) = F (a(t), c(t), u(t), t)

14 / 25

Page 18: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Second step: relaxation

Lemma

For all (a0, c0, cf , α) ∈ A× C2 × IR+,

V µr (a0, c0, cf , α) = inf

δV µ(a0, δ, c0, cf ) + αδ.

In particular ∀δ ∈ IR+,Vµ(a0, δ, c0, cf) ≥ Vµ

r (a0, c0, cf , α)− αδ

15 / 25

Page 19: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Second step: relaxation

Notations

∆(u) :=∫ T0 Fa(X(t), u(t), t))dt

L(u) :=∫ T0 `(u(t), t)dt

For any (a0, c0, cF , α) ∈ A× C2 × IR+, let

Γ(a0, c0, cF , α)

be the set of limn ∆(un) where un is a minimizing sequence ofPµr (a0, c0, cF , α)

16 / 25

Page 20: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Second step: relaxation

Result in the absence of jumps

Theorem

If there exists α such that

(a1 − a0) ∈ Γ(a0, c0, c1, α)

Then

V (a0, c0, T ) = inf(α,cF ,δ)

{V µr (a0, c0, cF , α)− αδ + V (a0 + δ, cF , T )}

where the optimization is performed over the (α, δ, cF ) such thatδ ∈ Γ(a0, c0, cF , α).

17 / 25

Page 21: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Second step: relaxation

Jumps

18 / 25

Page 22: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Second step: relaxation

Result

”The error we make is controlled by the size of the jumps.”

19 / 25

Page 23: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Third step: approximation

Third step: approximation

Pµr (.., α)

V µr (.., α) := inf

u∈U

∫ T

0[`(u(t), t) + αFa(a0, c(t), u(t), t)]dt

c(t) = Fc(a0, c(t), u(t), t)

(a(0), c(0)) = (a0, c0), c(T ) ≥ cF

20 / 25

Page 24: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Implementation and results

Algorithms for the periodic case

Offline: Compute L and ∆ for each possible values of (α, a).Compute the global value function at T .

Online: Get the optimal weight α, solve the corresponding shortterm approximate problem.

21 / 25

Page 25: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

The Adaptative Weights Algorithm (AWA) Implementation and results

Numerical results

Bruteforce >10 hours, AWA approx. 12 minute, online approx. 1sec

Some % of relative error

Figure: The age profile computed with AWA (solid line) and bruteforcedynamic programming (dotted line) for two initial age values

22 / 25

Page 26: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Conclusion

Table of Contents

1 IntroductionThe microgrid modelDynamic programming

2 Battery agingBattery ageing modelThe long term problem

3 The Adaptative Weights Algorithm (AWA)First step: Bilevel decompositionSecond step: relaxationThird step: approximationImplementation and results

4 Conclusion

22 / 25

Page 27: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Conclusion

Next

other applications (inventory management and budget control ?)

extensions (stochastic, impulse, elliptic, multidimensional...)

finer error analysis

23 / 25

Page 28: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Conclusion

Bibliography

B. H., Bonnans, Martinon, Silva, Lanas, Jimenez ContinuousOptimal Control Approaches to Microgrid Energy Management,Energy System 2016.

B. H. , Bonnans, Silva, Jimenez. A Stochastic Continuous TimeModel for Microgrid Energy Management, ECC 2016.

B. H., Martinon, Bonnans. Long Term Aging: An AdaptativeWeights Dynamic Programming Algorithm, (submitted).

24 / 25

Page 29: Long term battery ageing control: introducing the …cermics.enpc.fr/~delara/SESO/SESO2017/SESO2017_Wednesday...Long term battery ageing control: introducing the Adaptative Weights

Conclusion

Criteo is a really nice company...... and we are hiring !!!

If you want to know more: [email protected]

25 / 25