170 likes | 347 Views
Génération de colonnes pour la résolution des problemes de foresterie. par : Hatem BEN AMOR FOR@C Universite Laval Quebec. Plan. Principe de génération de colonnes Rappels sur la programmation linéaire Idée de base Schéma général Génération de colonnes en foresterie
E N D
Génération de colonnes pour la résolution des problemes de foresterie par: Hatem BEN AMOR FOR@C Universite Laval Quebec
Plan • Principe de génération de colonnes • Rappels sur la programmation linéaire • Idée de base • Schéma général • Génération de colonnes en foresterie • Exemples de sous-problemes • Obtention de solutions entieres • Exemple: Optimisation des opérations dans un complexe de sciage
Rappels sur la programmation linéaire • Choisir une base de départ B • Variables (colonnes): de base / hors base • Calculer le vecteur de multiplicateurs correspondant : p • Chercher une variable hors base de cout réduit négatif qui entre dans la base • Si pas de variable de cout réduit négatif, STOP: optimalité atteinte
Idée de base • Nombre de colonnes tres élevé • Faire le pricing sur un (petit) sous-ensemble des colonnes • Augmenter l’ensemble des colonnes considérées au fur et a mesure si nécessaire • But: Obtenir une solution optimale en prenant en considération un ensemble réduit de colonnes • Résolution plus efficace
Principe • Considérer une version restreinte du probleme avec un « petit » ensemble de colonnes: probleme maitre restreint • Résoudre PMR • Si solution optimale, STOP • Sinon, ajouter des colonnes et réoptimiser
Génération de colonnes: principe Programme linéaire (Problème maître): Primal (P) Dual (D) • A a un très grand nombre de colonnes • Impossible à considérer simultanément
Solutions : réalisable pour (P) Génération de colonnes: principe Considérer un sous ensemble de colonnes Problème maître restreint Primal (MP k) Dual (MD k) Optimalité atteinte?
, Si est optimale pour (P) Génération de colonnes: principe Calculer le coût réduit minimum Oracle ou sous-problème Sinon On vient d ’identifier une colonne de coût réduit < 0 ajouter au problème maître restreint: (MP k+1) Réoptimiser (MP k+1)
GC: sous-probleme • Structure particuliere: résolution plus efficace que l’ énumération explicite de toutes les colonnes • Dépend de l’application • Critique pour l’efficacité de l’algorithme • Résolution approximative • Ajouter plusieurs colonnes a la fois
GC: sous-probleme • Probleme de plus court/plus long chemin • Probleme de sac-a-dos • Programme linéaire • Probleme en nombres entiers • Oracle: • entrée : vecteur de multiplicateurs p • sortie : colonne(s) a cout réduit négatif
Borne supérieure (primal) Borne inférieure (dual) Génération de colonnes: difficultés et instabilté • Oscillations fréquentes des valeurs des variables duales • Évolution des bornes supérieure et inférieure • «Qualité» des colonnes générées? • Contrôler l ’évolution des variables duales
GC en foresterie • Tronconnage (decoupe unidimensionnelle): Sous-probleme: sac-a-dos (Gilmore et Gomory 61, Faaland et Briggs 84), plus long chemin sur un graphe etendu (Sessions etal. 89, V. de Carvalho 99), plus court chemin avec contraintes (Ben Amor 97) • Sciage : • Sous-probleme (oracle): Optimiseur de patrons de sciage generalement propre a l’entreprise (Geerts 83, Eng etal. 86, Manness et Adams 90, Ronqvist et Liden 00, Ben Amor etal 04, etc …) • Interpretation des multiplicateurs • Adapter le pricing • Cutting bills …
GC en foresterie • Modeles integres tronconnage-sciage: • Eng et Daellenbach 84 • Manness et Briggs 90 • Liden et Ronnqvist 00 • Tronconnage: • Eng etal. 86 • Sessions etal. 89 • Sciage • Manness et Norton 02 • Ben Amor etal. 04
Resolution en nombres entiers • Branch-and-price: extension du Branch-and-Bound • Schemas de branchement: tenir compte du sous-probleme • Variables de volume ou de quantite: • grandes valeurs • Pas besoin d’imposer l’integrite • Variables binaires: • integrite requise • Schemas de branchement assez efficaces