Cours5 Opt Comb SCM1

Vous aimerez peut-être aussi

Vous êtes sur la page 1sur 18

Problème de partitionnement / recouvrement

Problème de partitionnement / recouvrement


Soit un ensemble E={e1, e2, …, em} de m élément et une famille F de n sous-
ensemble (parties) de E, non vides F={P1, P2, …, Pn}
Soit aij=1 si l’élément ei appartient à la partie Pj et aij=0 sinon
Il faut chercher un ensemble de parties extraites de F, tel que tout élément de E
soit couvert une fois et une seule (partitionnement) ou bien au moins une fois
(recouvrement)

18/03/2024 Optimisation combinatoire 1


Problème de recouvrement: Exemple

Exemple: Affectation des équipages

Un problème important des compagnies aériennes consiste à


constituer de façon efficace des équipages pour ses vols. Pour un
équipage donné, une rotation consiste en une succession de services
de vol débutant et se terminant en une même ville. Comme il y a un
coût associé à chaque séquence de vols, la compagnie cherche à
minimiser les coûts d’affectation des équipages aux séquences tout en
assurant le service sur chacun des vols.

Considérons par exemple un problème avec 11 vols et 12 séquences de


vols

18/03/2024 Optimisation combinatoire 2


Problème de recouvrement: Exemple

18/03/2024 Optimisation combinatoire 3


Problème de recouvrement: Exemple

Avec la contrainte particulière Nombre d’équipages disponibles

18/03/2024 Optimisation combinatoire 4


Problème de recouvrement

Un problème de recouvrement d’ensemble met en œuvre


– I: un ensemble d’objets (les vols dans l’exemple précédent) ;
– J : une collection de sous-ensembles de I (e.g. les séquences de vols) ;
– Ji, i  I: les sous-ensembles dans J qui contiennent i.

les variables binaires xj , prenant la valeur 1 si le sous-ensemble j est choisi, et 0 sinon.


Cj le coût associé au sous-ensemble j. Nous obtenons le programme

min  c j x j min  c j x j
j =1
jJ
m

SC x j  1, i  I
SC a x
j =1
ij j  1, i = 1,..., n
jJ i
x j  0,1, j = 1,..., m
x j  0,1, j  J
où a ij = 1 si l' élément e i appartient au sous ensemble Fj et 0 sinon

18/03/2024 Optimisation combinatoire 5


Heuristique (solution approchée)

18/03/2024 Optimisation combinatoire 6


Exercice

1- Résoudre en utilisant l’heuristique


2- Résoudre en utilisant Cplex l’instance suivante:
n=7 (e1, …,e7)
m=5 (5 sous-ensembles)

10010
01010
01001
A= 11001
00100
01011
01110

C=(9 16 8 6 11) (les coûts associés aux sous-ensembles)


18/03/2024 Optimisation combinatoire 7
Méthodes approchées à solution unique

Algorithme de Recherche Tabou


(Tabu Search Algorithm TS)

18/03/2024 Optimisation combinatoire 8


Introduction
Les méthodes approchées à solution unique sont généralement basées sur un algorithme de
recherche de voisinage qui commence par une solution initiale, puis tente d’améliorer la solution
courante pas à pas en choisissant une nouvelle solution de son voisinage. Les plus classiques sont le
recuit simulé et la recherche tabou (tabu search TS).

18/03/2024 Optimisation combinatoire 9


Principe de l’algorithme TS

La recherche tabou TS est une métaheuristique d'optimisation itérative qualifiée de recherche


locale présentée par Fred W. Glover en 1986.
Le principe de TS repose sur une méthode de déplacement sur l’espace des solutions, tout en
cherchant constamment à améliorer la meilleure solution courante et en conservant en mémoire la
liste des précédents déplacements et ainsi guider la recherche en dehors de zones précédemment
parcourues.

18/03/2024 Optimisation combinatoire 10


Principe de l’algorithme TS

Poursuivre la recherche de solutions même lorsqu'un optimum local est rencontré et ce :


• En permettant des déplacements qui n'améliorent pas la solution.
• En utilisant le principe de mémoire pour éviter les retours en arrière (mouvements cycliques).

18/03/2024 Optimisation combinatoire 11


Voisinage: Définition

voisinage V(s(i)) d’une solution par une transformation élémentaire (structure de voisinage)
permettant de passer d’une solution s(i) de S à une autre solution s(j) proche avec une faible
modification de la structure de la solution s(i). Cette opération est appelée mouvement.

18/03/2024 Optimisation combinatoire 12


Principe de l’algorithme TS

Caractéristique d’une TS :
• Les structures de mémoires permettant l’exploration complète de l’historique
de la recherche.
• L’alternance entre les conditions qui limitent (restriction Tabou) et qui libèrent
(critère d’aspiration) le processus de recherche.

• L’incorporation des mécanismes d’intensification et de diversification

18/03/2024 Optimisation combinatoire 13


Principe de l’algorithme

Liste Tabou

La liste Tabou représente la mémoire à court terme, elle contient les attributs
des mouvements les plus réalisés.
Cette liste est maintenue dans le but d’orienter la recherche.

Critère d’aspiration

Ce critère est souvent utilisé pour enlever les restrictions Tabou d’un mouvement
de haute qualité.
Il permet de passer certains cas interdits. Son utilisation principale consiste à
outrepasser l’interdiction d’un mouvement s’il permet d’obtenir un élément plus
bon que la solution trouvée jusqu’à présent (consiste à révoquer le statut Tabou
d’un mouvement si ce dernier permet d’atteindre une solution de qualité
supérieure à celle de la meilleure solution trouvée jusqu’alors).

18/03/2024 Optimisation combinatoire 14


Principe de l’algorithme TS
Mécanisme d’intensification (exploration plus poussée d’une région
prometteuse)
L’intensification consiste à :
- retourner à l’une des meilleures solutions trouvées jusqu'à présent, puis
de reprendre la recherche à partir de cette solution.
- geler certains attributs qui ont été souvent présents dans les
configurations visitées.
La stratégie d’intensification est matérialisée dans l’algorithme par
renforcement de la recherche dans la liste des meilleurs mouvements.
Mécanisme de diversification
Consiste à générer une nouvelle solution, différente de celles déjà explorées,
dans le but de partir dans une nouvelle direction, pour explorer une autre
région (repartir d’une configuration aléatoire).
Critère d’arrêt
-Un nombre maximal d’itérations depuis le début de processus.
-Un nombre maximal d’itérations que l’on s’autorise entre deux modifications
(améliorations) consécutives de la (meilleure) solution.

18/03/2024 Optimisation combinatoire 15


Algorithme TS

18/03/2024 Optimisation combinatoire 16


Algorithme TS

Application:
Problème de voyageur de commerce
Structure de voisinage?
Liste tabou?

18/03/2024 Optimisation combinatoire 17


Algorithme TS pour le TSP

1) Paramètres: Nb-iteration: 100 , TL-size= 10 , Crit-aspiration= 4 itérations ,


Neig-size=4 ,
2) Codage
2 5 4 3 6 1

Solution de départ générée aléatoirement ou par meilleure insertion ou autre algorithme (TSP à 6 villes)

3) structure de voisinage : permutation ou 2-Opt


4) Liste tabou:
(i,j)

18/03/2024 Optimisation combinatoire 18

Vous aimerez peut-être aussi