telechargez le presentation
Transcription
telechargez le presentation
Résolution de problèmes blackbox avec LocalSolver Thierry Benoist, Julien Darlay, Bertrand Estellon, Frédéric Gardi, Romain Megel, Clément Pajean Innovation 24 & LocalSolver www.localsolver.com ROADEF 2016 Problème « blackbox » Contexte min π(π₯) π₯ β [π₯ πΏ , π₯ π ] β’ Fonction sans forme analytique (code externe) β’ Coûteuse à évaluer β’ Pas de dérivée β’ Variables entières et continues β’ Bornes sur les décisions β’ Pas de contrainte Applications en ingénierie β’ Optimisation paramétrique β’ Simulation optimisation ο Problème dβarchitecture (cf Nannicini, Prix Robert Faure 2015) 2 13 Modélisation API en C++, Java, .Net, Python Modélisation proche de LocalSolver def blackbox_eval(context): x = context.get(0) return x*x Fonction boîte noire ls = LocalSolverBlackBox() Utilisation du solveur blackbox model = ls.get_model() x = model.float(-10,10) Variables de décision, types et bornes f = model.create_native_function(blackbox_eval) call = model.call() call.add_operand(f) call.add_operand(x) Association variables / fonction model.add_objective(call, LSBBObjectiveDirection.MINIMIZE) [β¦] 3 13 Méthode de résolution Algorithme itératif 1. Construire un modèle de la fonction objectif 2. Utiliser le modèle pour trouver de nouveaux points 3. β’ Qui minimisent le modèle (Intensification) β’ Qui explorent lβespace de recherche (Diversification) Evaluer la fonction sur le point trouvé 4 13 Construction du modèle (1/2) Interpolation des points évalués [Gutmann 01] Radial Basis Function π π₯ β π π(π) Cubic π3 Gaussian π βπΎπ Multiquadric π2 + πΎ 2 Thinplate π( π₯ β π ) β’ π 2 log(π) π₯βπ 5 13 Construction du modèle (1/2) Interpolation des points évalués [Gutmann 01] β’ Radial Basis Function π π₯ β π β’ Modèle π π₯ = β’ Calcul des paramètres ππ et des coefficients de π β’ Interpolation par résolution dβun système linéaire β’ Approximation par LocalSolver si problème instable πβπΆ ππ π( π₯ β π ) + π(π₯) π(π) Cubic π3 Gaussian π βπΎπ Multiquadric π2 + πΎ 2 Thinplate π 2 log(π) 6 13 Construction du modèle (2/2) Validation croisée pour choisir le modèle [Costa, Naniccini 15] β’ Retirer un point de lβensemble à interpoler β’ Calculer chaque modèle β’ Mesurer lβerreur sur le point retiré β’ Sélection du meilleur modèle Modèle RBF Fonction objectif 7 13 Trouver de nouveaux points (1/2) Intensification β’ Chercher le minimum pour π₯ du modèle π π₯ = ππ π( π₯ β π ) + π(π₯) πβπΆ β’ Optimisation non linéaire en variables continues ou entières β’ Résolution par LocalSolver 8 13 Trouver de nouveaux points (2/2) Diversification β’ Résolution du problème « hostile brother » pondéré max π€ π₯ β min π₯ β π₯π π Eloigne des points déjà connus β’ Optimisation non linéaire en variables continues ou entières β’ Résolution par LocalSolver 9 13 Trouver de nouveaux points (2/2) Diversification β’ Résolution du problème « hostile brother » pondéré max π€ π₯ β min π₯ β π₯π π Pénalise les points trop Eloigne des points déjà connus « éloignés » pour π β’ Optimisation non linéaire en variables continues ou entières β’ Résolution par LocalSolver 10 13 Exemple: fonction Branin 5.1 2 5 min π¦ β π₯ + π₯β6 π 4π² π₯ β β5, 10 π¦ β [0, 15] 2 + 10 β 1 β 1 cos π₯ + 10 8π 11 13 Benchmark Instances β’ 25 instances [Costa, Naniccini 15]. RBFOpt: an open-source library for black-box optimization with costly function evaluations. Optimization Online, paper 4538 β’ 20 exécutions par instance avec une graine différente β’ 150 appels au maximum à la blackbox β’ Précision numérique: 1e-6 Résultats β’ RBFOpt: 345 solutions optimales trouvées, 82 appels en moyenne β’ LocalSolver: 310 solutions optimales trouvées, 94 appels en moyenne β’ NOMAD (GERAD): 170 solutions optimales trouvées (paramétrage par défaut) 12 13 Futurs développements Gestion des contraintes explicites du modèle β’ Sous problèmes contraints β’ Intensification et diversification dans le domaine réalisable Modèles spécifiques pour les problèmes discrets β’ Mieux apprendre le paysage avec des modèles adaptés β’ Modèles issus de lβapprentissage supervisé Continuer les expérimentations β’ Framework COCO β’ Challenge GECCO 2016 ? 13 13 Résolution de problèmes blackbox avec LocalSolver Thierry Benoist, Julien Darlay, Bertrand Estellon, Frédéric Gardi, Romain Megel, Clément Pajean Innovation 24 & LocalSolver www.localsolver.com ROADEF 2016