• Aucun résultat trouvé

Intégration de connaissances : vue générale

2.2.1 Objectifs . . . 31 2.2.2 Étapes de l’intégration de connaissances . . . 31 2.3 Extraction de connaissances . . . . 32

2.3.1 Connaissance à partir d’une instance . . . 33 2.3.2 Connaissance phénotypique . . . 34 2.3.3 Connaissance génotypique . . . 34 2.3.4 Classification de différentes approches de la littérature . . . 35 2.4 Mémorisation de connaissances . . . . 35

2.4.1 Méthodes de mémorisation. . . 36 2.4.2 Fréquences de mise à jour de la mémoire. . . 40 2.5 Exploitation de connaissances . . . . 41

2.5.1 Les mécanismes. . . 41 2.5.2 Fréquences d’exploitation. . . 42 2.6 Taxonomie des méthodes d’intégration de connaissances . . . . 43

2.1 Introduction

De nos jours, avec la rapide augmentation des tailles de données des problèmes d’optimisation, les résoudre efficacement en un temps raisonnable devient plus diffi- cile. Pour pallier ce problème, des méthodes sophistiquées et intelligentes ont été pro- posées dans la littérature. Ces méthodes peuvent être génériques ou spécifiques à un problème. Cependant, il a été observé que résoudre un problème de façon complè- tement générique est souvent bien moins efficace que de considérer ses spécificités. Ainsi les méthodes d’optimisation peuvent être enrichies de mécanismes d’intégration de connaissances. L’intégration de connaissances utilise des données qui peuvent être obtenues a priori, par l’étude de l’instance d’un problème avant tout processus de re- cherche et/ou avec des informations obtenues pendant la recherche. L’intégration de connaissances peut aider à accélérer les méthodes d’optimisation : pour cela, plusieurs techniques sont possibles comme utiliser une approximation de la fonction d’évalua- tion afin de réduire le temps de calcul lorsque l’évaluation devient coûteuse, ou réduire l’espace de recherche en éliminant des solutions dont on estime à l’avance qu’elles sont de mauvaise qualité.

L’intégration de connaissances peut aussi aider à améliorer la qualité des méthodes de résolution en utilisant la connaissance pour diriger la recherche de solutions vers une zone prometteuse de l’espace de recherche. En fonction de son utilisation, selonYANG- MING [2017] l’intégration de connaissances est utilisée en optimisation combinatoire dans quatre grands domaines :

— Reactive Search Optimization (RSO) qui intègre des mécanismes d’intégration de connaissances dans les méthodes d’optimisation pour résoudre des problèmes complexes. L’intégration de connaissances agit sur les paramètres de l’algorithme en s’ajustant automatiquement au cours de la recherche.

— Hyper-heuristique (HH) qui cherche à automatiser à l’aide de l’intégration de connaissances, les processus de sélection, combinaison, génération ou d’adapta- tion de plusieurs heuristiques (ou composants d’heuristiques) pour résoudre effi- cacement des problèmes complexes.

— Configuration automatique d’algorithmes (AAC) qui choisit à l’aide de l’intégra- tion de connaissances, les meilleurs paramètres possibles pour un algorithme et un ensemble d’instances donné.

— Sélection automatique d’algorithmes (AAS) qui sélectionne le meilleur algorithme pour résoudre une instance donnée. Presque toutes les approches récentes de sélection d’algorithmes utilisent l’intégration de connaissances pour apprendre avec les caractéristiques de l’instance, les relations entre une instance et les per- formances d’un algorithme.

Dans cette thèse, nous proposons d’ajouter un cinquième domaine :

— Modèle de substitution (SM) qui consiste à transformer les données d’une ins- tance à l’aide de l’intégration de connaissances en minimisant la perte d’informa- tions pour rester le plus précis possible. Cela a pour but de modifier la structure du problème et de l’espace de recherche, pour une meilleure exploration de celui-ci.

Dans ce chapitre, nous allons nous concentrer sur les approches qui utilisent des mécanismes d’intégrations de connaissances pour aider les méthodes d’optimisation combinatoire. Dans la prochaine section, nous définissons ce qu’est l’intégration de connaissances en la décomposant en trois grandes étapes : (i) Extraction (ii) Mémo- risation et (iii) Exploitation. La Section 2.3 présentera les techniques d’extraction de connaissances de la littérature. La Section2.4se concentrera sur les techniques de mé- morisation et la Section2.5sur les techniques d’exploitation de la littérature. Pour finir, une taxonomie des méthodes d’intégration de connaissances sera proposée dans la Sec- tion2.6.

2.2 Intégration de connaissances : vue générale

Dans cette section, nous allons définir les objectifs de l’intégration de connaissances et comment elle peut être mise en oeuvre.

2.2.1 Objectifs

L’utilisation de l’intégration de connaissances dans les méthodes d’optimisation est de plus en plus développée de nos jours. Elle est utilisée pour plusieurs aspects des mé- thodes d’optimisation. On retrouve le plus souvent les objectifs suivant pour l’intégra- tion de connaissances :

— Améliorer la qualité des solutions.

— Accélérer la recherche pour trouver de meilleures solutions. — Optimiser les paramètres d’un algorithme.

— Sélectionner les bons opérateurs d’un l’algorithme.

Les techniques d’intégration de connaissances peuvent se faire suivant deux direc- tions :

— Méthodes a priori (ou off-line) qui ont pour but d’identifier des structures et des schémas intéressants pour un type de problème avant tout processus de recherche. (Exemple : HH, AAC, AAS, SM)

— Méthodes dynamiques (ou on-line) qui vont apprendre et utiliser des informa- tions collectées pendant le processus de recherche. (Exemple : RSO, SM)

2.2.2 Étapes de l’intégration de connaissances

Nous avons remarqué que l’intégration de connaissances suit globalement trois étapes que nous allons détailler dans les prochaines sections :

— Extraction : cette étape définit quelles données vont être extraites et utilisées pour l’exploitation de connaissances. Ces données peuvent provenir de l’instance ou des solutions du problème.

— Mémorisation : cette étape définit la façon dont on va enregistrer les informations. Dans certains cas, il n’est pas possible de garder toute l’information extraite et des choix sont nécessaires. De plus, dans le cas des méthodes d’intégration de connaissances dynamiques, les informations doivent être mises à jour. C’est alors cette étape qui définit comment mettre à jour les informations.

— Exploitation : cette étape définit quant à elle la façon dont va être utilisée la connais- sance dans la méthode d’optimisation.

La Figure2.1montre l’enchaînement des différentes étapes. Nous pouvons constater que l’"Exploitation" n’est pas forcément l’étape finale. En effet, dans le cas des méthodes dynamiques, il est généralement nécessaire de mettre à jour les informations des diffé- rentes étapes.

Int´egration M´emorisation

Extraction Exploitation

FIGURE2.1 – Étapes de l’intégration de connaissance dans les méthodes d’optimisation Les trois prochaines parties vont donc s’intéresser à décrire plus précisément ces trois étapes à commencer par l’Extraction de connaissances.