Cours NATIXIS 2025
    
Optimisation stochastique pour
l'allocation et le stockage optimaux d'énergie

    
Janvier-février 2025
    

Jean-Philippe Chancelier1, Michel De Lara2,
École nationale des ponts et chaussées, IP Paris


Résumé:

Dans un problème d'optimisation déterministe, les valeurs de tous les paramètres sont supposées connues. Comment formuler un problème d'optimisation dans lequel les données sont incertaines (par exemple, les prix des énergies) ? Et quand certaines valeurs des données sont révélées au cours des étapes de décision (par exemple, les demandes en énergie) ? L'optimisation stochastique est un cadre pour répondre à de telles questions et pour formuler des problèmes sous incertitude. C'est également un ensemble de méthodes de résolution.

Dans ce cours, nous présentons

Comme les problèmes d'optimisation stochastique multi-étapes sont généralement trop difficiles pour être résolus d'une manière directe, nous présentons ensuite des méthodes avancées permettant de résoudre ces problèmes par décomposition. Enfin, nous ouvrons sur les mesures de risque.

Mots-clés : programmation stochastique, arbre de scénarios, commande optimale stochastique, programmation dynamique stochastique, Stochastic Dual Dynamic Programming, décompositions, mesures de risque.

Lieux :


Table des matières

version pdf de ce document

Au cours de la première partie du cours, nous présentons les deux approches mathématiques standards traitant des problèmes d'optimisation stochastique multi-étapes, c'est-à-dire la programmation stochastique et la commande optimale stochastique.

Dans la deuxième partie du cours, nous présentons des extensions, telles que l'algorithme Stochastic Dual Dynamic Programming (SDDP), ainsi que les mesures de risque et comment les incorporer dans des problèmes d'optimisation stochastique.

La formation alterne séances de cours, de modélisation et d'exercices. Des diapositives correspondantes (en Anglais) sont mises en ligne sur le site web (un astérisque * dénote un support de cours particulièrement adapté à la séance courante).


1 Mercredi 8 janvier 2025 (9h30-12h30)
Programmation stochastique à une étape

Orateur : Michel De Lara [9h30-12h30]

Nous étudions la programmation stochastique à une étape au travers d'exemples.

Idée-clef : le résultat d'un problème d'optimisation stochastique est la distribution des valeurs aléatoires prises par le critère ; c'est au décideur de choisir entre plusieurs distributions selon son type d'aversion au risque.

Exercice (1h00)

Nous commençons par un exercice de modélisation de tests sanguins groupés. Nous formulerons un problème d'optimisation stochastique de minimisation du nombre moyen de tests en fonction de la taille des groupes. Nous comparerons la taille optimale obtenue à celle correspondant au problème d'optimisation robuste de minimisation du pire nombre de tests. Nous comparerons les distributions du nombre de tests selon la taille des groupes.

Cours (0h45)

Nous ferons des rappels de calcul des probabilités : espace de probabilité, probabilité, variable aléatoire (v.a.), loi d'une v.a., fonction indicatrice, espérance mathématique, indépendance, loi forte des grands nombres.

    Diapositives * (MDL)     (section Working out static examples)

Lecture suggérée : [SDR09, Chap. 1]


Exercice (1h15)

Nous poursuivons en étudiant le problème dit du vendeur de journaux. Le vendeur doit décider le matin du nombre (déterministe) de journaux qu'il va commander, alors que la demande est aléatoire (de distribution supposée connue). Nous montrons comment le nombre optimal de journaux dépend de la distribution de probabilité de la demande.

Travail pratique informatique (optionnel)

Le vendeur de journaux Travail pratique Scicoslab


2 Mercredi 8 janvier 2025 (14h00-17h00)
Séance interactive sur des problèmes de Natixis


3 Mercredi 15 janvier 2025 (9h30-12h30)
De la programmation stochastique à une étape vers deux étapes (cas linéaire)

Orateur : Michel De Lara [9h30-10h45]

Exercices/Cours (0h45)

Nous avançons de la programmation stochastique à une étape vers deux étapes. Nous montrons comment passer d'un problème d'optimisation mono-étape — soit déterministe polyhédral sans contraintes soit lineaire — à un problème d'optimisation stochastique linéaire à deux étapes.

Nous revisitons le problème du vendeur de journaux dans le cas d'un arbre de scénarios. Nous montrons comment passer d'un problème d'optimisation déterministe d'une fonction polyhédrale sans contraintes à une formulation stochastique.

Nous étendons le problème du vendeur de journaux en un problème d'inventaire à deux étapes. Une compagnie doit commander un produit pour satisfaire une demande aléatoire, mais elle peut effectuer une seconde commande une fois la demande observée. Nous montrons comment passer d'un problème d'optimisation déterministe d'une fonction linéaire sous contraintes (programmation linéaire) à une formulation stochastique avec variables de recours.

     Diapositives * (MDL)


Cours (0h30)

Nous développons la programmation stochastique à deux étapes, dans le cas linéaire avec un espace de probabilité fini (scénarios).

Idée-clef : la programmation stochastique linéaire à deux étapes se prête naturellement à une méthode de décomposition temporelle, (L-shaped), qui repose sur la dualité en programmation linéaire.

     Diapositives * (MDL)      Diapositives * (VL)


Orateur : Pierre Carpentier [11h15–12h30]

Cours (1h15)

Rappels sur convexité et optimisation.

    Diapositives * (PC, MDL)


4 Mercredi 15 janvier 2025 (14h00-17h00)
Séance interactive sur des problèmes de Natixis


5 Mercredi 29 janvier 2025 (9h30-12h30)
Programmation stochastique à deux étapes

Attention : cette séance aura lieu à l'École nationale des ponts et chaussées, 6 et 8 avenue Blaise Pascal – Cité Descartes – Champs-sur-Marne – 77455 Marne-la-Vallée cedex 2

plan
Orateur : Michel De Lara [9h30-12h30]

Cours (1h15)

Idée-clef : quand une première décision est prise avant la réalisation d'un aléa et une seconde décision est prise après la réalisation d'un aléa, la façon mathématique de représenter cela est par le biais d'une contrainte de non-anticipativité.

Dans le cas d'un espace de probabilité fini, nous montrons comment la contrainte de non-anticipativité peut être prise en compte en indiçant les solutions par un arbre de scénarios.

Nous encadrons la valeur d'un problème stochastique par celles obtenues par un décideur myope (contraintes d'information durcies - boucle ouverte) et par un décideur clairvoyant (contraintes d'information relâchées - anticipative).

Nous discutons ensuite de l'extension au cas multi-étape sur un arbre de scénario et des limites numériques associées.

Cours (1h15)

Nous poursuivons la programmation stochastique à deux étapes et montrons comment la contrainte de non-anticipativité peut être prise en compte

Avec cette deuxième façon de faire, nous introduisons la décomposition par scénarios, puis le Progressive Hedging [RW91], deux méthodes qui reposent sur la dualité en programmation convexe.

Lectures suggérées : § 2.1, 2.2 et 2.3 de [SDR09, Chap. 2]

     Diapositives * (MDL)      Diapositives (VL)      Diapositives (JPC)


6 Mercredi 29 janvier 2025 (14h00-17h00)
Séance interactive sur des problèmes de Natixis

Attention : cette séance aura lieu à l'École nationale des ponts et chaussées, 6 et 8 avenue Blaise Pascal – Cité Descartes – Champs-sur-Marne – 77455 Marne-la-Vallée cedex 2

plan


7 Vendredi 31 janvier 2025 (9h30-12h30)
Programmation dynamique stochastique.

Orateur : Michel De Lara [9h30-12h30]

Cours (1h15)

Nous soulevons les difficultés du passage de la programmation stochastique à deux étapes vers plusieurs étapes. À l'aide d'une hypothèse de bruits temporellement indépendant, nous présentons la programmation dynamique stochastique. L'idée clef étant l'existence d'un état qui contient les informations suffisantes pour prendre une décision optimale à une étape donnée. La programmation dynamique stochastique consistant alors à décomposer le problème global en une suite de problèmes à une étape.

Nous introduisons le formalisme des opérateurs de Bellman qui tranfère une fonction de coût futur sur $[t+1,T]$ en une fonction de coût sur $[t,T]$, ainsi que la politique associée.

Finalement nous soulignons les malédictions de la dimension, inhérentes aux méthodes de programmation dynamique.

Lecture suggérée : [Ber00, Chap. 1]

     Diapositives (MDL)      Diapositives (JPC)      Diapositives (VL)


Exercice (0h45)

Croissance et reproduction optimales d'une plante.

     Diapositives* (MDL)


Cours (0h30)

Contrôle optimal stochastique avec coûts quadratiques et dynamique linéaire, sans contraintes sur la commande.


Travail pratique informatique (optionnel)

Programmation de l'algorithme de programmation dynamique.      Travail pratique Scicoslab


8 Lundi 3 février 2025 (9h30-12h30)
Stochastic Dual Dynamic Programming (SDDP)

Orateur : Jean-Philippe Chancelier [9h30–10h45]

Cours (1h15)

SDDP (Stochastic Dual Dynamic Programming) est un algorithme à l'intersection de la programmation dynamique et de la méthode L-Shaped. En s'appuyant sur des hypothèses de linéarité et de convexité, SDDP va itérativement construire des approximations (inférieures) des fonctions de Bellman. Cette approche permet de repousser, pour une certaine classe de problèmes, les limites des malédictions de la dimension.

Pour cela:

  1. nous rappellerons la définition et soulignerons quelques propriétés des opérateurs de Bellman ;
  2. nous réutiliserons les résultats de dualité qui permettent d'obtenir des coupes (dont les pentes forment les valeurs d'usages de l'eau dans le cadre de gestion de stocks hydrauliques) ;
  3. finalement nous présentons l'algorithme SDDP ainsi que quelques unes de ses variantes, extensions et limites.

     Diapositives * (VL)


Algorithmique (1h15)

Orateur : François Pacaud [11h15–12h30]


9 Mercredi 5 février 2025 (9h30-12h30)
Mesures de risque en optimisation

Orateur : Michel De Lara [9h30-12h30]

Cours (1h15)

Au delà de l'espérance et du pire des cas — comme forme d'agrégation des incertitudes dans une fonction objectif — nous présentons les mesures de risque.

Exemples : Sun'R, achat optimal de bruts.

     Diapositives* (MDL)


Modélisation (1h15)

Quelle méthode de résolution pour quel problème ? Après avoir avoir évoqué la difficulté de l'évaluation d'une solution pour un problème d'optimisation stochastique, nous rappellerons les principales caractéristiques des deux grandes classes de méthodes servant à résoudre les problèmes stochastiques multi-étapes, à savoir la programmation stochastique et la programmation dynamique, et nous mettrons en lumière leurs forces et leurs faiblesses respectives. Enfin nous discuterons sur quelques problèmes typiques du meilleur choix de la méthode de résolution.

     Diapositives* (VL)


10 Mercredi 5 février 2025 (14h00-17h00)
Schéma perturbation-dualité

Attention : cette séance aura lieu au CNAM, Conservatoire national des arts et métiers, 292 Rue Saint-Martin, 75003 Paris


plan


Orateur : Michel De Lara, Seta Rakotomandimby [14h00–17h00]

     Diapositives (MDL, SR)

Recommended reading: [Roc70, Parts I – VI – VII]


11 Lundi 24 février 2025 (9h30-12h30)
Séance interactive sur des problèmes de Natixis


12 Lundi 24 février 2025 (14h00-17h00)
Séance interactive sur des problèmes de Natixis


13 Mercredi 9 avril 2025 (9h30-12h30)
Séance interactive sur des problèmes de Natixis


14 Mercredi 9 avril 2025 (14h00-17h00)
Séance interactive sur des problèmes de Natixis


Références

Ber00
D. P. Bertsekas.
Dynamic Programming and Optimal Control.
Athena Scientific, Belmont, Massachusetts, second edition, 2000.
Volumes 1 and 2.
CCCD15
P. Carpentier, J.-P. Chancelier, G. Cohen, and M. De Lara.
Stochastic Multi-Stage Optimization. At the Crossroads between Discrete Time Stochastic Control and Stochastic Programming.
Springer-Verlag, Berlin, 2015.
Roc70
R. Tyrrell Rockafellar.
Convex Analysis.
Princeton University Press, Princeton, N.J., 1970.
RW91
R.T. Rockafellar and R. J-B. Wets.
Scenarios and policy aggregation in optimization under uncertainty.
Mathematics of operations research, 16(1):119–147, 1991.
SDR09
A. Shapiro, D. Dentcheva, and A. Ruszczynski.
Lectures on Stochastic Programming: Modeling and Theory.
The society for industrial and applied mathematics and the mathematical programming society, Philadelphia, USA, 2009.



Notes

... Chancelier1
jean-philippe.chancelier@enpc.fr
... Lara2
michel.delara@enpc.fr