• Aucun résultat trouvé

– L’optimisation robuste : si nous sommes capables de construire un ensemble d’incertitude qui contienne les 1 − α éléments les plus probables, les commandes obtenues par optimisation robuste alors vérifieront la contrainte en probabilité 2.2. Nous reviendrons sur ce lien entre optimisation robuste et contrainte en probabilité dans le chapitre 3.

2.2

Les problèmes à deux étapes

Les problèmes de décision peuvent être plus complexes que dans le cas statique. Imaginons le cas d’un magasin. Le responsable doit prendre une décision initiale à t0 pour remplir son stock en fonction de prévisions de demande. Au bout d’une certaine période, le responsable a, à la vue de la demande réalisée, la possibilité de commander ou non des articles supplémentaires. Ce problème est dit à deux étapes car deux types de décisions doivent être prises : une décision initiale et une décision dite de recours après observation de la réalisation de l’aléa. L’expression “à deux étapes” ne signifie donc pas que le problème ne comporte que deux pas de temps mais plutôt deux étapes de décision distinctes.

Le problème stochastique linéaire à deux étapes peut s’écrire de façon générale par

min

x∈X{g(x) := c

Tx + E[Q(x, ξ(ω))]}, (2.3)

où Q(x, ξ) = miny∈Y{qTy | T x + W y ≤ h} est la valeur optimale du problème de seconde

étape.

Ici, x ∈ Rn est la décision de première étape, X un polyèdre défini comme un nombre fini de contraintes linéaires, y ∈ Rm le vecteur de décisions de seconde étape défini sur Y et ξ = (q, T, W, h) le vecteur contenant toutes les données du problème de seconde étape. En réalité, ξ devrait s’écrire ξ(ω) et donc peut être vu comme un vecteur aléatoire. L’espérance de Q est calculée sous l’hypothèse de connaissance de la distribution de probabilité de ξ(ω). Les matrices T et W sont appelées respectivement matrices technologiques et de recours.

Avec ces formulations, en première étape, nous prenons une décision ferme x de coût cTx avant que la réalisation de l’aléa ξ soit révélée. Dès que cette information est connue, en seconde étape, nous optimisons notre recours y de coût qTy pour que W y compense une possible inconsistence du système T x ≤ h. Ce concept de problème stochastique à deux étapes a été introduit par Beale [4] et Dantzig [26] et discuté dans [17, 55, 34, 92, 101].

Si X et Y sont des polyèdres, la fonction Q(., ξ) est convexe, impliquant la convexité du problème à deux étapes. L’hypothèse de convexité est donc fondamentale.

Nous pouvons introduire quelques définitions supplémentaires :

– Nous parlons de matrice de recours fixe si la matrice W n’est pas aléatoire ;

– En particulier, nous parlons de recours fixes complets si la matrice fixée, de taille m × ¯n, W est surjective c’es-à-dire satisfait

2.2. LES PROBLÈMES À DEUX ÉTAPES

{z | z = W y, ∀y} = Rm.

Ceci implique que, quelque soit la décision de première étape x et la réalisation ξ, le problème de seconde étape Q(x, ξ) = min{qTy | W y = h(ξ) − T (ξ)x} est toujours réalisable. Autrement dit, nous pouvons toujours trouver un recours réalisable. Cette définition demeure vraie même pour une matrice W non fixée ;

– Enfin, un cas particulier de matrice de recours fixe est le recours simple où (T, W ) = (Id, −Id). Il peut arriver que l’information observée soit incomplète. Dans ce cas, il est nécessaire pour la fai- sabilité des recours qu’ils soient mesurables par rapport aux informations observables [104]. Une approche standard pour résoudre les problèmes à deux étapes est par construction de scénarios : nous supposons que le vecteur aléatoire ξ a un nombre fini de réalisations possibles ξ1, . . . , ξK de probabilités respectives p1, . . . , pK. L’espérance peut ainsi être écrite comme la

somme finie E[Q(x, ξ)] = K X k=1 pkQ(x, ξk).

En attribuant une décision de recours yk = y(ξk) à chaque scénario et en se ramenant au cas

linéaire, nous pouvons écrire le problème de recours comme un gros problème d’optimisation linéaire : min x,y1,...,yK cTx + K X k=1 pkhqk, yki (2.4) s.t. x ∈ X, yk∈ Y, Tkx + Wkyk≤ hk, k = 1, . . . , K. (2.5)

En résolvant ce problème, nous obtenons une solution optimale ¯x de première étape et une série de recours ¯yk, pour chaque scénario correspondant à la réalisation ξ = ξk. Au cours du temps,

de nombreux efforts ont été effectués pour développer des algorithmes exploitant les structures du problème (2.4) (Voir [91] pour une vue d’ensemble sur les décompositions de problèmes de ce type).

Discutons de deux conditions nécessaires pour la résolution du problème à deux étapes : – Q(x, ξ) est définie comme la valeur optimale du problème de seconde étape. Il peut arriver

que, pour un contrôle réalisable x ∈ X et un scénario ξk, le problème n’est pas borné inférieu-

rement, i.e. Q(x, ξk) < −∞. Cela veut dire que pour un contrôle réalisable x, nous pouvons améliorer le coût indéfiniment avec une probabilité positive, situation à éviter ;

– un problème plus sérieux est que, pour un x ∈ X et un scénario ξk, le système Tkx + Wky ≤ hk

est incompatible, i.e. que le problème de seconde étape est infaisable. Nous imposons donc Q(x, ξk) = +∞ pour un tel contrôle x, ce qui l’élimine. En clair, nous imposons une pénalité

2.2. LES PROBLÈMES À DEUX ÉTAPES

de coût infini si le problème de seconde étape n’est pas réalisable, ce qui oblige un ajustement de la décision de première étape. Si une telle infaisabilité n’intervient pas, nous disons que le problème possède des recours complets. Il est toujours possible de rendre le problème de deuxième étape réalisable, c’est-à-dire relaxer le problème avec recours en un problème avec recours complet, en étendant le recours y à (y, t), en pénalisant t et en relaxant la contrainte de seconde période. Pour cela, nous écrivons le problème :

min

y,t q

Ty + γt s.t. T x + W y − te ≤ h, t ≥ 0,

où γ > 0 est une constante choisie et e un vecteur dont toutes les composantes sont 1. Dans cette formulation, la pénalité d’une possible infaisabilité est contrôlée par le paramètre γ. L’approche standard consiste à introduire une coupe de réalisabilité [91].

La génération de scénarios est une étape nécessaire mais difficile. Le générateur doit inclure une modélisation (loi,...) la plus riche possible pour que les scénarios représentent au mieux les phénomènes aléatoires physiques à prendre en compte. La qualité des scénarios est, en effet, primordiale puisque même un très grand nombre de scénarios ne permettrait pas de résoudre efficacement ce problème si les scénarios ne représentent pas les phénomènes aléatoires de façon correcte.

Le nombre de scénarios est aussi une question importante. Il est primordial de trouver le com- promis adéquat entre générer un très grand nombre de scénarios et donc résoudre un problème de taille très grande et générer un faible nombre de scénario, nombre qui pourrait s’avérer in- suffisant pour une résolution correcte du problème. Nous pouvons prendre un petit exemple pour illustrer cela. Supposons que les composantes de ξ ∈ Rd soient indépendantes entre elles et peuvent ne prendre que r différentes valeurs. Le nombre total de scénarios est K = rd. K grandit donc exponentiellement quand r ou d croît. Si r = 4 et d = 20, nous nous retrouvons avec le nombre astronomique de scénarios 420 ≈ 1012. Il semble donc difficile de calculer exactement

l’espérance avec une précision élevée. Une approche possible pour estimer cette espérance, tout en conciliant taille et précision, est l’application des techniques d’échantillonnage Monte-Carlo. Approximer l’espérance correspond à trouver une borne N sur le nombre de scénarios nécessaires pour garantir avec une bonne probabilité que l’espérance est estimée à une erreur  près. L’objectif d’une approche Monte-Carlo est donc de réduire l’ensemble de scénarios disponible en un ensemble de scénarios de taille gérable numériquement mais suffisant pour obtenir une solu- tion satisfaisante. Nous supposons que l’ensemble de scénarios initial est très grand voire infini. En se basant sur l’échantillon des ξ, nous pouvons ainsi estimer l’espérance q(x) = E[Q(x, ξ)] par la moyenne ˆ qK(x) = 1 K K X k=1 Q(x, ξk),

et par conséquent l’espérance du problème (2.3) :

min x∈X ( ˆ gK(x) := cTx + 1 K K X k=1 Q(x, ξk) ) .

2.2. LES PROBLÈMES À DEUX ÉTAPES

Cette idée simple est connue dans la littérature récente sous le nom de sample average approxi-

mation method (SAA) [97, 60, 19, 98, 100, 92, 101]. SAA n’est pas un algorithme mais juste

une reformulation du problème. Nous devons toujours résoudre le problème par la procédure numérique adéquate.

Nous pouvons donc retourner à la question : “quel nombre K de scénarios devons nous prendre pour le problème SAA soit une bonne approximation de 2.3 ?”. Les approches Monte-Carlo sont connues pour leur faible vitesse de convergence. Pour un x ∈ X fixé et un échantillon iid (chaque scénario est indépendant), la variance de l’échantillon moyen ˆqK(x) vaut :

V ar(ˆqK(x)) =

V ar(Q(x, ξ))

K .

Ceci implique que l’échantillon moyen converge vers l’espérance correspondante à un taux de Op(K−1/2). Cela signifie que pour l’amélioration de la précision d’une décimale, nous devons

augmenter la taille de l’échantillon d’un facteur 100. Il n’est donc pas avantageux d’utiliser des approches Monte-Carlo quand le nombre d de variables aléatoires est petit. Nous préférerons ainsi discrétiser directement les aléas ou utiliser des approches Quasi Monte-Carlo [70]. Nous pouvons trouver dans [97] des bornes sur le nombre de scénarios à prendre en compte pour un certain niveau de précision. Il faut ajouter que les temps de calculs sont toutefois dépendants de la dimension de l’aléa. Enfin, précisons qu’il est toujours possible d’estimer l’espérance par Monte- Carlo en dimension importante si nous n’optimisons pas sur tous les scénarios nécessaires. L’avantage avec les techniques Monte-Carlo est que la précision de l’approximation obtenue ne dépend pas de la taille de l’échantillon mais seulement de la variance de Q(x, ξ). Il a été montré théoriquement et vérifié expérimentalement [97] que la méthode SAA aide à la résolution du problème à deux étapes avec une précision raisonnable (1% ou 2%) sous les conditions suivantes :

1. il est possible de générer un échantillon de réalisations du vecteur aléatoire ξ,

2. pour des tailles raisonnables d’échantillons, il est possible de calculer efficacement le pro- blème SAA obtenu,

3. le problème à deux étapes a des recours complets,

4. la variabilité de la fonction de seconde étape n’est pas trop grande.

Ce type de résultats peut être retrouvé dans [60, 61, 77, 93, 105]. Il a été aussi démontré que des techniques Quasi-Monte Carlo peuvent améliorer la précision de SAA significativement (voir [70] pour une discussion général sur Quasi-Monte Carlo et [27, 57, 73] pour des applications à la programmation stochastique). Enfin, nous pourrions croire que cette difficulté à résoudre les problèmes à deux étapes provient de l’approche par scénarios. Mais Dyer et Stougie [33] ont montré que les problèmes stochastiques linéaires à deux étapes sont NP-difficiles, même avec des recours complets et des distributions discrètes simples à décrire.