110 likes | 323 Views
Hybridation d’une Méthode Glouton et d’une Recherche Locale. Weinberg Benjamin Laboratoire d’Informatique Fondamental de Lille, France. Motivation. Appréhender la difficulté effective du problème Apprendre les spécificités du problème: Ce qui fait que certaines heuristiques marchent mieux
E N D
Hybridation d’une Méthode Glouton et d’une Recherche Locale Weinberg Benjamin Laboratoire d’Informatique Fondamental de Lille, France
Motivation • Appréhender la difficulté effective du problème • Apprendre les spécificités du problème: • Ce qui fait que certaines heuristiques marchent mieux • Voir les méthodes qui donnent une solution dans un temps raisonnable • AG, RS convergent vers une solution optimale (random le fait aussi) • Quelle heuristique pour un problème nouveau
Adaptation du problème • Fonction objective • h1: nombre de contraintes violées (CI & CEM) • h2: la distance moyenne entre la différence entre • les fréquences de trajets contraints • et la contrainte de séparation • Minimiser h1, en cas de «litige» maximiser h2. • Stratégie • k := 11; on cherche une affectation C tq h1(C) = 0 • Puis on recommence avec k := k-1
Nb violations 0 1 5 1 … … affectés 1 1 0 1 … … trajets f1,p1 f2,p2 fi,pi fn,pn … … Permutation: trajets regroupés par liens 0 45 63 195 … … Indice des «débuts» des liens 0 2 46 200 … … Codage
Méthode ADSD • Origine de la méthode • une recherche locale • voisinage: changement de valeur à un lien. • Modifier toutes les valeurs en une seule passe! • => voisinage = totalité de l’espace de recherche?? • Désallocation de variables pour se déplacer plus efficacement
ADGR • Parcours d’une partie du voisinage • Pour chaque lien cherche la meilleure valeur • Parcours aléatoire des liens • Choix de la valeur locale à la variable • Mettre à jour la note de la conf. + les tableaux «affecté» et «nb violations» • Maintien des contraintes • de domaines • d’égalité de fréquences
AD • Désallocation de certaines variables • Politique choisie: • Les liens dont au moins un trajet viole des contraintes • Nécessité du tableau des contraintes violées • Mise à jour de ce tableau à moindre coup pendant une évaluation
ADSD (algo) • TQ critère non atteint FAIRE • SI ADGR améliore suffisamment conf. ALORS • SI conf. est meilleur ALORS • mémoriser conf. • FSI. • SINON • AD (conf.) • FSI • FAIT
Expérimentation (I) • Code en C ANSI • Run sur des PC linux 933Mhz • Option d’optimisation -O3 • Paramètres: • Pente minimale: 0.05 • Nb itérations de pente faible avant ouverture: 1 • Nb Itérations séparant le changement d’ordre des liens: 5
fapp01 4 5 fapp10 10 11 test04 11 9 fapp02 4 5 fapp11 11 11 fapp16 11 - fapp03 8 8 fapp12 11 11 fapp17 4 - fapp04 6 6 fapp13 11 11 fapp18 11 - fapp05 11 11 fapp14 11 11 fapp19 11 - fapp06 10 7 fapp15 11 11 fapp20 10 - fapp07 10 10 test01 4 4 fapp21 11 - fapp08 11 11 test02 7 7 fapp22 11 - fapp09 6 7 test03 6 5 fapp23 11 - Expérimentation (II)
Conclusion & Perspectives • Base A plus facile que la Base B • Peu Robuste • De bon résultats sur Base A • Modifier h2 • Appliquer des mécanismes + sophistiqués qu’une simple désallocation • Utiliser un algorithme à population (AG hybride)