Académique Documents
Professionnel Documents
Culture Documents
RECHERCHE
HEURISTIQUE
GLOBALE ET LOCALE
INTRODUCTION
• Dans de nombreux problèmes d'optimisation, le chemin qui mène vers
une solution n'est pas important (pertinente),
• Tout ce qui importe est l’état solution lui-même.
• Exemple : Dans le problème de 8 reines nous cherchons de trouver une solution
(l'état destination) et non pas le chemin qui mène vers une solution.
• Espace d’états = ensemble complet de configurations
• Trouver une configuration qui satisfait les contraintes
1
28/11/2022
INTRODUCTION
• Le principe des méthodes de recherche locale est inspirée des méthodes d'optimisation
continue
• Résoudre un problème d’optimisation (minimisation) sans contraintes.
• On cherche à minimiser (ou maximiser) une fonction objectif sous des contraintes:
• x ∈ ℝ^𝒏 : ensemble des variables
• f : ℝ^𝒏 → ℝ : fonction coût (objectif)
• D ⊂〖 ℝ〗^𝒏 : Ensemble des contraintes g(x)
• On cherche à minimiser(ou maximiser) f sur D,
• c.à.d. on cherche x* D
• tel que: f(x*) = min (max)f(x)
• Avec f(x) ≤ f(x*), ∀ x ∈ D
INTRODUCTION
2
28/11/2022
HEURISTIQUE / MÉTA-HEURISTIQUE
• Terminologie:
• Heuristique, du grec εὑρίσκειν / heuriskein, qui signifie « trouver ».
• méta, du grec μετά veut dire « au-delà » ou « à un plus haut niveau ».
• Une méta-heuristique est une méthodes générique pouvant optimiser une large gamme de problèmes
différents, sans nécessiter de changements profonds dans l’algorithme employé.
• Les méta-heuristiques sont une forme d’algorithmes d’optimisation stochastique, hybridés avec une
recherche locale.
• Le terme méta est donc pris au sens où les algorithmes peuvent regrouper plusieurs heuristiques
• Des heuristiques plus poussées ont été mises au point et ont données naissance à une nouvelle famille
d’algorithmes : les méta-heuristiques.
RECHERCHE LOCALE
3
28/11/2022
RECHERCHE LOCALE
• La recherche locale consiste à passer d’une solution à une autre solution proche dans l’espace
des solutions candidates (espace de recherche ou espace admissible) jusqu’à ce qu’une
solution considérée comme optimale soit trouvée, ou que le test d’arrêt considéré est atteint.
• Elles sont des méthodes d’amélioration itératives qui se déplacent pas à pas dans le «
voisinage » de la solution courante en cherchant des « pistes prometteuses » vers la solution
optimale.
• Elle consiste à partir d’une solution s à choisir une solution s’ dans un voisinage de s, noté N(s),
• La nouvelle solution choisie est meilleure que la précédente sous la fonction objective.
• Cela nous permet d’explorer l’espace d’une manière itérative jusqu’à convergence à un optimum
local.
RECHERCHE LOCALE
• Le passage d'une solution ver une autre se fait grâce à la définition de structure de
voisinage qui est un élément très important dans la définition de ce type de
méthode.
• Le voisinage d'une solution est défini en fonction du problème à résoudre.
4
28/11/2022
• Dans chaque itération, on définit l’espace des solutions voisines N(x) dans lequel s’effectuera la
recherche, l’ensemble des voisins changent d’une itération à une autre,
• Le voisinage d'une solution est généralement définit à l'aide d'une transformation élémentaire (ou
locale).
• La transformation est toute opération permettant de changer une solution X de S en une autre solution X0 de
S.
• Une transformation sera considérée comme élémentaire (ou locale) si elle ne modifie que "faiblement la
structure de la solution à laquelle on l'applique.
• Autrement dit, les transformations locales constituent un sous-ensemble de l'ensemble des transformations.
Elles sont locales en ce sens qu'elles ne perturbent pas globalement la structure de la solution qu'elles
changent, mais ne la modifient que localement.
• Par exemple, si X est un entier codé sous la forme d'une chaîne de 0-1, une transformation locale peut consister
à changer un élement en 0-1 de la chaîne en son complémentaire.
RECHERCHE LOCALE
5
28/11/2022
6
28/11/2022
EXEMPLE
• Placer n reines dans un échiquier n × n , sans que deux reines se trouvent sur la même
ligne, colonne ou diagonale
• Déplacer une reine pour réduire le nombre de conflits
7
28/11/2022
MÉTHODES DE DESCENTE
HILL CLIMBING
• La méthode de la descente est appelé dans la littérature aussi la méthode de recherche locale
ou Hill Climbing (Hill Climbing (escalade) en cas de maximisation )
• Les méthodes de descente sont assez anciennes et doivent leur succès à leur rapidité et leur
simplicité.
• A chaque pas de la recherche, cette méthode progresse vers une solution voisine de meilleure
qualité.
• La descente s’arrête quand tous les voisins candidats sont moins bons que la solution courante
• c’est-à-dire lorsqu’un optimum local est atteint.
MÉTHODE HILL-CLIMBING
• Entrée :
• – État initial.
• – Fonction à optimiser: noté VALUE dans l’algorithme; parfois noté h aussi.
• Méthode
• – Le noeud courant est initialisé à l’état initial.
• – Itérativement, le noeud courant est comparé à ses successeurs immédiats.
• • Le meilleur voisin immédiat et ayant la plus grande valeur (selon VALUE) que le noeud courant,
devient le noeud courant.
• • Si un tel voisin n’existe pas, on arrête et on retourne le noeud courant comme solution.
8
28/11/2022
ALGORITHME
MÉTHODE DE DESCENTE GÉNÉRIQUE
• Données: f, E,
• Initialisation choix d‘une solution initiale( aléatoire ou avec un heuristique )
• Solution initiale (courante ) x0,
• Solution optimale courante x*=x0, k=1
9
28/11/2022
ALGORITHME HILL-CLIMBING
EXEMPLE DE 8-REINES
• On choisit comme fonction d‘utilité h (VALUE) le nombre de pairs de reines qui
s'attaquent mutuellement directement ou indirectement et on minimise (Descente du
gradient).
• Pour chaque mouvement possible les nouvelles valeur de la fonction sont indiquées.
A droite la fonction est 1
10
28/11/2022
INCONVÉNIENT
MÉTHODE HILL-CLIMBING
• Le principal défaut de la méthode de descente est qu’elle est piégée par le premier
minimum local rencontré.
• Divers algorithmes ont été proposés, principalement dès le milieu des années 80,
pour contourner cet obstacle que représentent les optima locaux.
• Exemples:
• Recuit Simulé
• Tabou
• Etc...
11
28/11/2022
• Idée: échapper le maximum local (les optima locaux) en permettant d’aller à une moins
bonne place, mais graduellement diminuer la probabilité (fréquence) de faire ceci
• au lieu de regarder le meilleur voisin immédiat du noeud courant, avec une certaine probabilité on
va regarder un moins bon voisin immédiat ( s’échapper des optima locaux),
• au début de la recherche, la probabilité de prendre un moins bon voisin est plus élevée et diminue
graduellement
• Le nombre d’itérations et la diminution des probabilités sont définis à l’aide d’un schéma
(Schedule) de « températeurs », en ordre décroissant,
• La meilleur définition du schéma va varier d’un problème à l’autre,
12
28/11/2022
SIMULATED ANNEALING
Solution Quality
The schedule determines the rate at which 20
the temperature is lowered 18
If the schedule lowers T slowly enough, the 14
algorithm will find a global optimum 10
High temperature T is characterized by a 6
large portion of accepted uphill moves 2
whereas at low temperature only downhill 5 10 15 20
moves are accepted
T= 100 – t*5
Probability > 0.9
13
28/11/2022
TABU SEARCH
RECHERCHE TABOUE
• L’algorithme simulated annealing minimise le risque d’être piégé dans des optima locaux
• L’algorithme tabu search (recherche taboue) enregistre seulement les k derniers noeuds
visités
• l’ensemble taboue est l’ensemble contenant les k noeuds
• le paramètre k est choisi empiriquement
• cela n’élimine pas les oscillations, mais les réduit
• il existe en fait plusieurs autres façon de construire l’ensemble tabou...
TABU SEARCH
RECHERCHE TABOUE
• Introduite par Glover en 1986
• But : échapper aux optima locaux
14
28/11/2022
TABU SEARCH
RECHERCHE TABOUE
• La recherche avec tabous permet des mouvements interdits pour explorer l’espace
de recherche
• Le choix du meilleur voisin d’une solution pousse l’algorithme à trouver les optima
locaux; et comme l’exploration de l’espace de recherche est effectué en limitant le
voisinage de la solution actuelle en rendant « tabous » certains mouvements,
l’algorithme doit théoriquement atteindre l’optimum global,
• Il est possible dans la recherche tabou d’accepter à l’issue d’une itération une solution qui
ne soit pas meilleure que l’optimum,
TABU SEARCH
RECHERCHE TABOUE
15
28/11/2022
• 2.à chaque itération, tous les successeurs des k nœuds sont générés
• 3. Si un d’eux est un état but, arrêt; on choisit les k meilleurs parmi ces noeuds et on recommence
• Cet algorithme est appelé local beam search (exploration locale par faisceau)
• à ne pas confondre avec tabu search
• Tabu search limite la taille de closed à k. Dans beam search, il n’y a plus de closed (comme en hill-
climbing), en plus open fait evoluer les k meilleurs noeuds.
• Variante stochastic beam search : plutôt que prendre les k meilleurs, on assigne une probabilité de choisir
chaque noeud, même s’il n’est pas parmi les k meilleurs (comme dans simulated annealing)
BEAM SEARCH
16
28/11/2022
BEAM SEARCH
RECHERCHE HEURISTIQUE
GLOBALE ET LOCALE
• • Avec Hill-Climbing et Beam, la sélection ne se fait que sur les fils du noeud courant.
• – La sélection est locale
• • Best-First considère à tout moment tous les noeuds à explorer et choisit le noeud au meilleur
coût.
• – La sélection est globale
• – La mémoire est gérée comme une liste
17
28/11/2022
• • Critère pour sélectionner le prochain fils à générer pour un noeud n : h(n); fonction
heuristique
• – Information incertaine mais plausible →Heuristique
• – h(n) fournit le coût pour atteindre l’état final.
• – h(n) incorpore et représente une source d’information externe à l’espace de recherche.
• – Ex: h(n) = la distance qui sépare la ville n de la ville de destination.
• • En-Profondeur + h(n) = Hill-Climbing search
• • En-Largeur + h(n) = Beam search
• La recherche locale est parfois une alternative plus intéressante que la recherche
heuristique
RÉSUMÉ
• En général, une recherche locale ne garantie pas de solution optimale, son attrait est
surtout sa capacité de trouver une solution acceptable rapidement,
18
28/11/2022
MERCI
19