Laura Wynter Laboratoire PRISM La tarification optimale : un exemple de problèmes bi-niveaux d ’optimisation Laura Wynter Laboratoire PRISM Université de Versailles
Gestionnaire du réseau : Un besoin de rentabilité Les gestionnaires des réseaux (télécoms, transports, énergie) doivent désormais établir des tarifs dans un environnement concurrentiel Pour pouvoir les établir de façon optimale, il faut prévoir les réactions des utilisateurs, et les prendre en compte.
Deux niveaux de décision Il y a donc deux niveaux de décision: celui du gestionnaire, et celui des utilisateurs Chaque niveau cherche à optimiser ses critères (max profit, min coût) Mais une hiérarchie naturelle existe
Paradigme du meneur-suiveur La hiérarchie naturelle donne l ’avantage au gestionnaire, s ’il prévoit bien les réactions des utilisateurs Il peut alors optimiser ses recettes, avec comme ‘ contrainte ’ les réactions des utilisateurs à ses tarifs Si les objectifs sont en conflit, il s ’agit d ’un problème d ’optimisation bi-niveaux
Exemple : Tarification optimale du transport public L ’opérateur doit établir les prix Les individus ont le choix de prendre le service ou un autre moyen de transport Les choix des individus sont modélisés par un problème d ’équilibre, qui est fonction des tarifs de l ’opérateur L ’opérateur souhaite optimiser son profit
Le modèle bi-niveaux L ’opérateur souhaite trouver des tarifs, x L ’utilisation des ressources, y, est donné par un autre processus dont la solution, S, dépend de ces tarifs: y e S(x) Le modèle bi-niveaux: maximiser x, y f (x,y), t.q. (x,y) e Z, y e S(x)
Exemples des problèmes donnant les réponses, S(x) Les routages et les flux dans des réseaux de télécoms ou d ’énergie, problème d ’optimisation, x = le vecteur des tarifs: S(x):= {y| y e argmin t(x,y) tq g(x,y)<= 0} L ’équilibre entre les usagers sur un réseau congestionné (transports, télécoms), x = péages, tarifs : S(x):= {y| T(x,y)’(y-z)<=0, z e Y(x)}
Exemples des fonctions des réponses, S(x) Les routages et les flux dans des réseaux de télécoms, x=tarifs: minimiser yeY(x) t(x,y):= délai(y)+a’ x L ’équilibre entre les usagers sur un réseau congestionné (transports, télécoms), x = péages, tarifs par arc: T(x,y):= a’yb + v’ x
Exemples des fonctions des gestionnaires de réseaux Maximiser ses profits : maximiser x,y f(x,y):= x ’y - c(y) Minimiser le délai total sur le système: minimiser x,y f(x,y):= y ’ T(x,y) Variants: x constant (linéaire) par morceaux, en fonction de l ’usage, y
Pourquoi est-il difficile, ce problème bi-niveaux Introduction à l ’optimisation non-linéaire min f(x) t.q. x e X Méthode de résolution de base : Choisir x0. Direction de descente, dk » grad f(xk). Puis xk+1 = xk -akdk. Alors xinfty est globalement optimal (pour f convexe)
Pourquoi est-il difficile, ce problème bi-niveaux Mais, ici, f(x,*) n ’est pas convexe, ni différentiable Pas de formule analytique pour y. Pire encore si y n ’est pas unique p.cq. x Donc les calculs de la direction de descente dk et du pas ak sont complexe Il faut se contenter d ’un optimum local
Cf. Jeu de Stackelberg en économie Deux joueurs, deux stratégies: soit p1= q1D-1(q1,q2) - C1(q1), p2 = q2 D-1(q1, q2) - C2(q2), où D(q1, q2)=100 - 0,5(q1+ q2); et C1 = 5q1, C2 = 0,5 q2 Meneur: Maximiser q1, q2 p1(q1, q2), Suiveur : Maximiser q2 p2(q1, q2). Bi-niveaux, mais deux variables, pas de contraintes. Résolution analytique.
Résolution des modèles bi-niveaux, hier Heuristique du passé : Résoudre f(*,y), puis t(x,*), et ainsi de suite. Ne donne pas de solution hiérarchique, mais une qpprox. d ’un jeu de Nash. Valable seulement lorsque f et t sont presque identique.
Résolution des modèles bi-niveaux, … et aujourd ’hui Méthodes valables pour le pb. bi-niveaux Sougradients (heuristique) Faiseaux, ou calcul d ’une direction de descente (doivent être adaptées) Ré-écrire le pb. des réactions (KKT), puis le pénaliser, ou l ’approximer,...
Conclusion Tarification optimale : modèle très intéressant, et actuel,…mais difficile Modèles et méthodes en émergence Maintenant…un cas particulier : si les fonctions (à la fois du gestionnaire et des utilisateurs) sont toutes bi-linéaires, on peut simplifier des choses...