• Aucun résultat trouvé

Quelques concepts sur l’optimisation multi-objectif

1.3 Optimisation multi-objectif (OMO)

1.3.2 Quelques concepts sur l’optimisation multi-objectif

Il existe un grand nombre d’approches pour résoudre les problèmes multi-objectifs. Certaines

approches non Pareto exploitent des connaissances sur le problème pour définir des préférences

sur les différents objectifs et contourner ainsi l’aspect multi-objectif du problème. Avec ce type

d’approche, le problème multi-objectif n’est pas traité comme tel, il est plutôt transformé en un

ou plusieurs problèmes mono-objectifs. Par opposition aux méthodes non Pareto, les approches

Pareto considèrent tous les objectifs avec le même niveau d’importance (une priorisation des

objectifs peut être quand même définie par le décideur dans son modèle). Là aussi il existe

plusieurs méthodes et approches de résolution. Une synthèse des états de l’art résumant ces

approches peut être consulté dans [Hao et al., 1999; Ulungu and Teghem, 1994; Miettinen,

1999;Ehrgott, 2000;Siarry and Collette, 2002]. Nous présentons, ci-dessous, quelques concepts

sur les méthodes de résolution Pareto fondées sur des métaheuristiques, la recherche locale et les

algorithmes évolutionnaires sur lesquels sont basés les algorithmes présentés dans cette thèse.

1.3.2.1 Voisinage

Dans un contexte de l’optimisation combinatoire, surtout dans le cas multi-objectif, la taille de

l’espace de recherche augmente avec la taille de l’instance à résoudre. Ces problèmes

d’opti-misation deviennent plus difficiles quand les solutions sont nombreuses et non complètement

énumérables en un temps raisonnable. La relation de voisinage permet de connecter entre elles

les solutions de l’espace de recherche. Un voisinage est une application qui associe à toute

solution de l’espace de recherche un ensemble de solutions (définition13).

Définition 13(Relation de voisinage). SoitXl’espace de recherche d’un problème

d’optimisa-tion. Une fonction de voisinageN est une associationN :X −→2X, définissant, pour chaque

pointx∈X, un ensembleN(x)⊆Xde points proches dex.

1.3.2.2 Métaheuristiques

Une métaheuristique est un algorithme d’optimisation visant à résoudre des problèmes

d’op-timisation difficiles que nous ne pouvons pas résoudre d’une manière exacte. Les

métaheu-ristiques sont généralement des algorithmes stochastiques itératifs, qui, partant d’une solution

(ou population) initiale, progressent vers un optimum local en tentant d’apprendre les

carac-téristiques d’un problème afin de trouver une approximation de la meilleure solution. Ainsi,

les métaheuristiques permettent de s’attaquer à des problèmes complexes de grande taille en

délivrant des solutions satisfaisantes en un temps raisonnable. Il existe un grand nombre de

métaheuristiques différentes, allant de la simple recherche locale à des algorithmes complexes

de recherche. Ces méthodes sont à priori définies avec un haut niveau d’abstraction, leur

per-mettant d’être adaptables à une large gamme de problèmes différents. Elles sont composées

d’éléments génériques et d’éléments spécifiques au problème considéré, tels que la

représen-tation ou l’évaluation d’une solution. Les métaheuristiques ont reçu, ces dernières années, un

intérêt grandissant de la communauté scientifique et ont montré leur efficacité pour de nombreux

problèmes industriels [Talbi, 2009].

Nous pouvons distinguer deux types de métaheuristiques : desmétaheuristiques à base de

solution uniquequi manipulent et transforment une seule solution durant tout le processus de

re-cherche, telles que les algorithmes de recherche locale, le recuit simulé, la recherche Tabou, etc.

Le deuxième type sont desmétaheuristiques à base de population de solutions, où un ensemble

de solutions (la population) évolue simultanément durant tout le processus de recherche. Dans

la conception des métaheuristiques à base de population, deux critères sont usuellement

consi-dérés : l’exploration de l’espace de recherche (diversification) et l’amélioration des solutions

déjà trouvées (intensification). Plusieurs approches à base de population sont largement

utili-sées dans l’optimisation multi-objectif, comme les algorithmes évolutionnaires, les algorithmes

génétiques, les algorithmes à essaim de particules, etc.

1.3.2.3 Algorithmes évolutionnaires

Les algorithmes évolutionnaires sont des techniques itératives inspirées des concepts de la

théo-rie d’évolution de Darwin en biologie. Un algorithme évolutionnaire simule un processus

d’évo-lution d’une population d’individus dont le but est de les faire évoluer vers des individus de

bonne qualité. Nous pouvons distinguer trois classes d’algorithmes évolutionnaires : les

al-gorithmes génétiques, les stratégies d’évolution et la programmation évolutive [Coello et al.,

2007]. Ces méthodes se différencient principalement dans leurs manières de représenter

l’infor-mation et la façon de faire évoluer la population d’une génération à une autre. Un algorithme

évolutionnaire est composé de trois éléments de base :

• unepopulation: un ensemble d’individus représentant des solutions potentielles au

pro-blème considéré à un moment du processus de recherche ;

• unmécanisme d’évaluation: permettant d’évaluer la qualité des individus de la

popula-tion ;

• unmécanisme d’évolution: permettant, grâce à certains opérateurs prédéfinis (la

recom-binaison, lamutationet lasélection), d’éliminer les mauvais individus et de faire évoluer

les meilleurs.

La sélection a pour objectif de sélectionner des individus qui vont pouvoir se reproduire

pour transmettre leurs caractéristiques à la génération suivante. Le croisementou

recombinai-sonest un opérateur permettant de construire de nouveaux individus enfants à partir des

carac-téristiques d’individus parents sélectionnés. La mutationeffectue de légères modifications de

certains individus (crée des perturbations dans la structure des individus).

1.3.2.4 Recherche locale

Les algorithmes utilisant la recherche locale font évoluer la solution courante en la remplaçant

par une autre issue de son voisinage, ce changement de solution est couramment appelé un

mouvement. Ce processus est réitéré jusqu’à ce qu’une solution optimale ait été trouvée ou une

condition d’arrêt soit vérifiée.

Toutes les approches de recherche locale ont des méthodes fondées sur une relation de

voi-sinage et sur une procédure exploitant ce voivoi-sinage. Un aspect fondamental de ces approches

est donc la détermination de ce voisinage. Le voisinage est souvent représenté par une fonction

N qui, à une configurationx, associe un ensemble d’autres configurations N(x). Il existe une

infinité de manières de choisir le voisinage N, par conséquent, il convient d’adapter ce choix

au problème, c’est-à-dire choisir la meilleure fonctionN selon le problème considéré.

1.3.2.5 Valeur de fitness

La valeur defitnessd’une solution de l’espace de recherche est la valeur de la fonction objectif

pour cette solution. Évaluer une solution consiste à calculer sa valeur de fitness. Dans le cas

d’un problème mono-objectif, la valeur de fitness d’une solution est généralement sa valeur

objectif unidimensionnelle. Dans le cas multi-objectif, la valeur de fitness d’une solution vise

à orienter la recherche vers les solutions Pareto optimales. Quatre classes d’approches peuvent

être utilisées pour la définition de la fonction de fitness : approches scalaires, approches basées

sur un critère, approches basées sur une relation de dominance et des approches utilisant des

indicateurs. Ces différentes approches sont largement décrites dans la thèse d’Arnaud Liefooghe

[Liefooghe, 2009].

1.3.2.6 Optimisation multi-objectif et aide à la décision

Résoudre un problème pratique d’optimisation, revient toujours à répondre à une

probléma-tique exprimée par le décideur. Il est donc impératif que l’algorithme fournisse une ou plusieurs

solution(s) correspondant aux attentes et aux préférences du décideur. Par conséquent, la

co-opération entre ce dernier et la méthode de résolution est presque une condition pour trouver les

"bonnes" solutions. Cette coopération peut prendre trois formes différentes :

1. A priori.Dans ce cas, le décideur fournit ses connaissances sur le problème et ses

pré-férences par rapport aux solutions à chercher avant le processus d’optimisation, ceci en

vue d’aider la méthode de résolution à explorer les zones les plus intéressantes de

l’es-pace objectif. Néanmoins, en pratique, l’expression et la modélisation des préférences du

décideur ne sont pas toujours faciles, elles doivent donc être validées avant la lancement

de la recherche. De plus, le décideur peut ne pas être satisfait des solutions fournies par

la méthode et vouloir relancer le processus de résolution avec de nouvelles préférences.

2. A posteriori. Dans ce cas, la méthode de résolution vise à trouver l’ensemble des

so-lutions du front Pareto ou une bonne approximation de celui-ci. Le décideur n’a donc

qu’à choisir parmi les solutions trouvées celle qui correspond mieux à ces préférences.

Ce scénario ne nécessite pas la modélisation des préférences du décideur préalablement.

Par contre, il présente deux inconvénients : le fait de chercher toutes les solutions non

do-minées peut s’avérer très couteux en temps de calcul, particulièrement pour les grandes

instances. Aussi, le nombre de solutions non dominées peut être si grand faisant de leur

analyse et le choix de la solution adéquate une tâche difficile.

3. Interactive. Avec ce scénario, le décideur coopère d’une manière directe, itérative et

progressive avec la méthode de résolution. Ainsi, à partir des connaissances acquises lors

de la première résolution, il peut raffiner ses préférences et relancer la résolution. Ce

processus est réitéré plusieurs fois jusqu’à ce que le décideur soit satisfait. L’avantage de

cette approche, c’est que le décideur n’est pas obligé d’exprimer ses préférences d’une

manière exacte et inchangeable dès le début, il peut les adapter pas à pas. Toutefois, cette

approche nécessite sa participation tout au long du processus de résolution.