• Aucun résultat trouvé

3.3 Création du modèle de connaissance contextualisé

3.3.4 Processus de gestion des modèles

La démarche de gestion de modèles illustrée sur la figure 3.12 regroupe toutes les opérations réalisées sur ou avec les modèles : construction d’un réseau utilisant la démarche ATLAS, réduction du modèle, recueil et confrontation d’analyses, etc.

L’activité principale « hors ligne » est le « maintien des modèles », c’est-à-dire des réseaux bayésiens résultant d’analyses ou de projets précédents. L’utilisateur peut simuler l’utilisation de connaissances par parties (activité « simuler par les modèles »), analyser les résultats et modifier en conséquence le modèle s’il ne représente pas la connaissance de l’expert. Cette démarche doit être spécialisée selon les pratiques spécifiques à chaque entreprise. Elle peut nécessiter l’utilisation de certains formalismes et méthodes spécifiques.

Lorsqu’un nouveau projet se présente, les experts déroulent la démarche de décomposition hiérarchique produit/projet ATLAS présentée dans la section § 3.3.3.1. L’activité « Construction

du modèle » utilise les connaissances formulées par les experts durant ce processus représenté par

un ovale sur la figure 3.12.

La base de données (B.D.D.) regroupe les instances déjà utilisées par le passé : projet, décisions, tâches, etc. Elle contient un ensemble de cas pour chaque modèle représentant l’expérience acquise sur le modèle. Il peut s’agir de scénarios réalisés, de scénarios simulés ou d’exemples fictifs obtenus par échantillonnage du modèle. Les scénarios effectivement réalisés sont peu nombreux et constituent une expérience réelle forte à prendre en compte prioritairement.Les scénarios simulés sontbeaucoup plus nombreux et ne renferment qu’une connaissance simulée. Nous les utiliserons lors de l’optimisation pour un apprentissage rapide, puis pour un apprentissage final détaillé après l’optimisation (fourni à l’utilisateur pour l’analyse des résultats) avant d’être finalement réévalués lors de la clôture du projet.

Enfin, l’activité « Optimisation évolutionnaire guidée par les connaissances » représente l’algorithme évolutionnaire modifié exposé dans la section 3.4 utilisant le modèle réduit décrit ci- dessous. Lorsque la recherche stagne, le modèle est modifié rapidement en utilisant les scénarios comme données virtuellement contextualisées. Les principes utilisés lors de cette activité appelée

« Modification en ligne du modèle » sont exposés dans la section 3.3.4.2 et leur application dans

notre AEI dans la section 3.4.8.

3.3.4.1 Obtention du modèle réduit pour l’optimisation

Nous rappelons que le modèle étant trop complexe, il est nécessaire d'en extraire une version réduite, pour guider le processus d’optimisation. Pour cela, la notion de pertinence selon le contexte est mise en œuvre. Lorsqu’un nouveau projet doit être modélisé, la première étape est le recueil du résultat de la démarche de décomposition experte ATLAS qui constitue le modèle de base à réduire. La réduction est obtenue en évaluant la pertinence des connaissances exprimées selon le méta- modèle de pertinence présenté dans la section 3.3.3.2, puis en sélectionnant les nœuds dans le modèle réduit par ordre de pertinence. Pour établir la pertinence de chaque nœud, tous les modèles précédemment utilisés où apparaît ce nœud sont recherchés et utilisés. Une fois la pertinence de tous les concepts évaluée, les nœuds sont proposés à l’utilisateur par ordre de pertinence. A chaque sélection d’un nœud, la complexité du réseau est mise à jour. Lorsque le nombre maximum de nœuds est atteint, le réseau réduit est considéré comme complet. Reste alors à représenter les arcs de la structure finale. Seuls les arcs reliant deux nœuds sélectionnés sont représentés. Enfin, les indépendances contextuelles sont représentées par un nouvel état pour les nœuds « inhibés » et mémorisées en dehors du réseau bayésien par des listes pour les nœuds « inhibants ». A chaque état d’un nœud « inhibant » correspond une liste de nœuds à désactiver si l’état est sélectionné.

Pour reprendre l'exemple du satellite, la structure de la figure 3.13 représente un résultat possible de la réduction du modèle de la figure 3.8. Côté conception, la variable la plus pertinente est l’attribut « Nombre d’éléments » de par sa place dans la décomposition (niveau système) et le nombre de liens dans le modèle complet. Viennent ensuite les décisions « type de structure » contextualisés puis généralisés vers le nœud « type de structure ». Ce modèle permet de représenter les nœuds influents et laisse la possibilité de réorganisation autour de ces caractéristiques principales. Côté conduite, les choix de tâches sont généralisés : pour les tâches correspondant au contexte « structure générique » la variable influente est le choix du sous-traitant qui réalisera la structure (T1, T3 et T4 reliés à « Choix de fabrication pour la structure générique ») ; pour les autres tâches correspondant au contexte « structure spécifique », la variable influente retenue est le choix du mode de fabrication adopté pour réaliser la structure (T2, T5 et T6 reliés à « Choix de fabrication pour la structure spécifique » sur la figure 3.13). Ces deux choix sont contextuellement mutuellement indépendants selon le choix de niveau supérieur « Politique de sstr. » qui compte deux états « projet faiblement sous-traité » et « projet fortement sous-traité ».

Ce choix dépend également de variables environnementales représentant la charge des sous- traitants et la charge des ateliers. Nous conservons ces variables bien qu’elles ne changent pas durant l’optimisation. Elles sont instanciées avant chaque calcul et n’entrent pas dans le calcul de complexité. Elles sont conservées si l’expert souhaite tester différents contextes environnementaux, bien que les paramètres du modèle réduit tiennent compte de tous les contextes possibles pondérés par leurs probabilités d’occurrence. Enfin, les choix de transport et du lanceur sont reliés directement aux objectifs. Enfin, on ajoute l’état « inhibé » aux nœuds potentiellement inactivés (ici T1 à T6) ainsi que « Mode fab. gén. » et « Mode fab. Spé. » (pour Mode de fabrication des plateformes génériques ou spécifiques).

Le réseau final ne comporte donc que cinq nœuds reliés directement aux objectifs. Ils représentent les cinq variables étudiées entièrement vis-à-vis des objectifs. Les variables des niveaux inférieurs ne sont étudiées que dans le contexte des décisions de niveaux supérieurs tels que les nœuds « Mode fab. gén. » et « Mode fab. Spé. ». Certains nœuds de cette structure simple sont inutiles car ils sont liés à une seule variable du niveau inférieur qu’ils « représentent » entièrement. Tous les nœuds ne dépendant que d’une seule variable du niveau supérieur sont agrégés en un seul nœud. Dans la structure de la figure 3.13, les nœuds « Nb. éléments » (c’est-à-dire le nombre de satellites), « Choix transport » et « Choix Lanceur » sont agrégés respectivement avec les nœuds C1, T7 et T8 pour obtenir la structure finale du modèle réduit.

Enfin, il peut arriver que certaines décisions ou états ne soient représentés par aucune propriété, c’est-à-dire reliés à aucun nœud dans le niveau supérieur suite à la réduction. Une telle décision peut être considérée comme insignifiante par rapport aux objectifs. Deux réactions sont alors possibles : soit elle n’est pas inclue dans le modèle réduit, soit elle est reliée à un nœud généralisation fictif avec les autres nœuds « insignifiants ». Dans notre plate-forme, nous avons utilisé cette seconde option en considérant que les experts modélisent des décisions potentiellement significatives que l’algorithme de pertinence ne reconnaît pas. Les nœuds généralisés aléatoirement sont regroupés pour réduire la complexité du modèle de telle façon qu’ils définissent une partie de la structure finale représentant la part inconnue du modèle. L’utilisation d’une telle structure doit permettre à la recherche de traiter séparément des « blocs de connaissances » par rapport à la partie inconnue ou mal connue qui subit tout de même une optimisation évolutionnaire classique. Cette solution laisse envisager le contrôle de la part connue/inconnue par niveau et dans l’analyse, part qui peut être réglée par le nombre de nœuds connus ou généralisés aléatoirement reliés aux objectifs. On remarquera tout de même que les nœuds généralisés aléatoirement sont en réalité l’agrégation aléatoire des concepts existants dans le modèle et considérés comme insignifiants avec éventuellement, d’autres concepts manquants dans le modèle complet.

Il reste à déterminer les paramètres de ce modèle réduit. Il existe plusieurs méthodes pour calculer les nouvelles probabilités après une simplification de réseau bayésien (agrégation de nœuds dans un modèle) ou pour l’agrégation directe de réseaux bayésiens entiers. Nous avons opté pour une méthode simple à mettre en œuvre dans notre étude mais qui devra faire l’objet de développements complémentaires. Nous disposons d’un ensemble de réseaux différents plus ou moins pertinents par rapport au contexte courant et contenant les connaissances à apprendre. Nous avons vu que l’expérience de chaque réseau est contenue dans un ensemble de cas. Les probabilités du modèle réduit sont obtenues par un rapide apprentissage prenant en compte la pertinence a priori donnée par l’expert et des exemples représentatifs des modèles précédents. Cette opération permet de prendre en compte l’approximation due à la réduction incertaine d’un ensemble de connaissances elles-mêmes parcellaires. Nous utilisons donc l’algorithme EM étant donné que les exemples ne couvrent que partiellement les connaissances nécessaires (problème d’apprentissage avec données manquantes). Cette méthode, simple à mettre en œuvre avec les algorithmes d’apprentissage et d’inférence les plus couramment utilisés, est suffisante pour l’obtention d’un modèle global des connaissances. L’intérêt de notre approche est de profiter de l’aspect globalement structurant de la connaissance puis de laisser la recherche des « détails » au processus d’optimisation par algorithme évolutionnaire modifié.

3.3.4.2 Utilisation et modification en ligne du modèle réduit

Le modèle réduit est fourni à l’algorithme d’optimisation guidé par les connaissances . Notre étude porte prioritairement sur l’injection de connaissances a priori dans l’algorithme de recherche. Nous avons donc formulé comme hypothèse principale que le modèle « expert » est globalement suffisant pour guider la recherche vers les zones performantes. Nous allons utiliser ce modèle pour injecter de la connaissance mais aussi pour contraindre la recherche afin qu’elle manipule correctement la connaissance injectée. Lors de l’optimisation, une première étape d’injection va permettre le « transfert » de la connaissance contenue dans le modèle réduit (appelé MoK dans l’algorithme) dans les individus de la population courante. Les modifications du modèle ne sont envisagées que lorsque l’optimisation stagne. De façon générale, on peut supposer que, plus le modèle de connaissance est précis, plus les scénarios générés sont proches dans l’espace des objectifs. La recherche « modifiée » ou orientée doit permettre d’améliorer des individus représentant les scénarios par combinaisons et mutations en conservant la connaissance injectée. Nous avons vu que l’optimisation consiste à parcourir et modifier rapidement les scénarios pour obtenir de nouveaux scénarios potentiellement plus performants. Il sera alors envisageable d’appeler le modèle pour régler chaque décision (ou gène), une à une en instanciant le modèle avec les décisions précédemment effectuées de sorte que les probabilités fournies par le modèle soient de plus en plus précises. Cela ne correspond pas à l’esprit de notre méthode globale de recherche car il s’agit d’une information précise qui nécessite un calcul d’inférence pour chaque gène de chaque individu de la population. De plus, la combinaison de l’injection et de l’orientation conduit à un effet d’optimum local par les connaissances utilisées qui limitent la recherche à une zone strictement définie par le modèle. Il est donc important d’extraire du modèle une information globale qui laisse place à la recherche pour tester les connaissances par la simulation.

Pour obtenir un guidage global et réduire au maximum le nombre d’appels au modèle, nous avons opté pour un système de classes de paramètres ou classes de gènes associés aux régions performantes idéales recherchées, c’est-à-dire du front de Pareto idéal dans l’espace des objectifs. Le réseau bayésien est alors utilisé pour fournir les probabilités de chaque décision en instanciant les nœuds objectifs à l’état correspondant à la zone recherchée de façon abstraite. Le modèle sera par exemple utilisé pour calculer les probabilités de chaque décision du graphe pour atteindre l’objectif « coût minimum ». Ces probabilités sont stockées dans des tableaux que nous appelons

classes d’objectifs. Le modèle de connaissance établie donc une bijection entre une instanciation

des nœuds Objectifs (classe d’objectifs) et une instanciation de toutes les décisions (classes de gènes). Nous emploierons donc le terme de classe d’objectif pour désigner les ensembles échangés entre le modèle et l’algorithme.

Il arrive que certaines décisions sont déclarées inactives pour certaines zones (P(état = « inhibé ») = 1). Cette information est mémorisée par un -1 pour le gène correspondant dans la classe de gènes. Dans l’algorithme, nous testons différentes manières de gérer cette information. Nous avons vu dans la section 2.2.2. que les gènes ne sont pas inactifs dans toutes les situations et qu’il ne faut pas forcement les modifier car ils représentent une instanciation potentiellement performante pour d’autres zones de l’espace de recherche ou dans d’autres contextes (notion de diploïdie et de dominance). Différents modes dans l’algorithme nous permettrons de tester la conservation et la manipulation de la « mémoire diploïde », c’est-à-dire l’état des gènes déclarés inactifs par l’instanciation de certains nœuds ou selon la connaissance structurelle. La connaissance structurelle est exacte et facilement disponible (tableaux des nœuds inhibés pour chaque état des nœuds inhibants), tandis qu’il est rare d’avoir des nœuds inhibés par les autres connaissances du fait des nombreuses approximations réalisées. Nous avons « forcé » certaines décisions proches de la certitude (P>0.95) en instanciant les nœuds correspondants. Cette opération que nous appelons « fixer les évidences » (une évidence dans un réseau bayésien correspond au fait d’instancier un nœud à un état particulier) permet d’accélérer à la fois les calculs d’inférence et l’injection de connaissances dans la recherche lors d’une première phase.

Lorsque la recherche stagne, le modèle de connaissances est considéré comme exploité. Les probabilités du réseau sont alors lissées progressivement pour atteindre d’hypothétiques optima globaux précédemment occultés. L’AEI proposé peut ainsi s’affranchir d’un mauvais modèle de connaissances. Le lissage progressif va ainsi remettre en cause les évidences forcées, tout en conservant les caractéristiques globales du modèle de connaissances. Lorsque le lissage atteint la probabilité uniforme, l’algorithme se comporte comme un algorithme évolutionnaire classique. Enfin, en dernier recours, intervient l’apprentissage de paramètres. Nous avons mis en œuvre différents modes d’apprentissage inspirés des méthodes existantes précédemment présentées (paramètres de l’algorithme d’apprentissage ou mode de sélection des exemples d’apprentissage). Une réévaluation de la pertinence des nœuds sélectionnés pour le modèle réduit pourrait également être envisagée mais nous n’avons pas testé cette option par manque de données.

L’algorithme d’optimisation final va alors alterner entre l’injection/utilisation des connaissances puis le lissage et enfin le réapprentissage jusqu’à l’arrêt du processus par l’utilisateur ou selon un nombre de génération prédéfini.