3e Conférence Francophone de MOdélisation et SIMulation «Conception, Analyse et Gestion des Systèmes Industriels» MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) SYSTÈME D'AIDE AU PARAMÉTRAGE D’UN LOGICIEL EN ORDONNANCEMENT Emmanuel Lereno, Brigitte Morello Pierre Baptiste Laboratoire d’Automatique de Besançon CNRS UMR 6596, ENSMM - UFC Institut de Productique, 25, rue Alain Savary 25000 BESANCON, France Mél : [email protected] ** Laboratoire de Productique et Informatique des systèmes manufacturiers I.N.S.A/IF-PRISMA, Bat 502. 20. Avenue Einstein 69621 Villeurbanne, France Mél : [email protected] RÉSUMÉ : L'ordonnancement est un des problèmes majeurs qui se pose au niveau du pilotage d'un atelier de production. Nous citerons parmi les difficultés rencontrées, la définition des critères d'évaluation, des bases de données techniques importantes ou encore de l'incertitude quand au bon déroulement de la planification. Cette problématique est proche de l'ECD (Extraction de Connaissances à Partir de Données) et c'est dans ce contexte que nous développons une méthode d'aide à la décision s'appuyant sur un système d'apprentissage et utilisant les capacités de simulation d'un logiciel d'ordonnancement du marché. Ces logiciels sont souvent intégrés dans les grands groupes à des ERP, ou constituent parfois le seul outil d'aide à l'ordonnancement dans les PME/PMI. Or, ils ne sont pas toujours utilisés au mieux de leur potentiel et leurs utilisateurs procèdent parfois par tâtonnement. Nous proposerons une application démontrant l'intérêt de notre travail dans l'aide au paramétrage d'un logiciel d'ordonnancement. MOTS-CLÉS : filtrage d'exemples, ordonnancement, paramétrage, simulation, aide à la décision 1. PARAMÈTRES DE L'ORDONNANCEMENT ET ECD 1.1 Introduction Un ordonnancement consiste à affecter à des tâches des ressources et un espace temporel d’exécution, en prenant soin de respecter un ensemble de contraintes (Blasewicz et Ecker, 1993). D'un point de vue concret, il s'agit de réguler le passage de chaque produit (Ordre de Fabrication) sur un ensemble de postes de travail en intégrant les contraintes de date (respect des délais, opérations de maintenance), d'ordre (gamme) ou de ressources dites secondaires (opérateurs, machines). Il s'agit en fait d'un problème d'optimisation combinatoire, où il faut choisir une bonne solution, voire une solution optimale, par rapport à un critère ou à un ensemble de critères d'évaluation. L'ordonnancement d'atelier n'est pas une problématique nouvelle. Néanmoins, avec la recherche systématique d'une plus grande productivité et surtout avec l'importance accrue de la prise en compte des ressources humaines, l'optimisation ou même souvent plus simplement le contrôle et la gestion fine des opérations élémentaires dans les ateliers sont devenues de plus en plus importantes. Les chercheurs ont depuis longtemps œuvré pour améliorer les outils, méthodes, heuristiques d'ordonnancement, même si de l'aveu des plus grands (Pinedo, 1995) les retombées industrielles des recherches effectuées ne sont pas à la hauteur de l'effort consenti. Il est très difficile de passer d'approches extrêmement pointues (en recherche) à des progiciels génériques. Le marché se partage aujourd'hui entre plusieurs distributeurs de logiciels (soit en satellite de Progiciel de Gestion Intégrée, PGI en Français ou ERP «Enterprise Resource Planning», soit en tant que logiciel indépendant) dont il n'est pas le lieu ici d'énumérer la liste, mais qui, somme toute, ont de nombreux points communs. Ces logiciels commerciaux offrent tous au moins trois points faibles : S ils partent tous de calendriers d'ouverture des ressources (machines et opérateurs) qu'ils considèrent comme des données d'entrée alors que les utilisateurs considèrent que ce sont des résultats attendus des logiciels, S ils disposent de nombreux paramètres réglables qui, dans l'absolu, peuvent se changer en temps réel, mais qui sont le plus souvent positionnés une fois pour toute vu le peu de maîtrise des utilisateurs, S leur interfaçage avec des PGI (ERP) ne sont pas toujours aussi faciles. Le troisième point sort largement du domaine de notre étude, mais les deux premiers induisent en entreprise une utilisation assez délicate de ces logiciels d'ordonnancement : les utilisateurs les prennent souvent comme des simulateurs et ils bouclent sur les étapes : S simulation de l'ordonnancement S analyse des résultats, S modification des calendriers, S beaucoup plus rarement ajustement des paramètres réglables, S simulation de l'ordonnancement, etc. Ce fonctionnement ne nous semble pas satisfaisant et nous pensons qu'il est possible de simplifier grandement l'utilisation de ces outils industriels en introduisant un apprentissage systématique de leur utilisation. Il s'agit ni MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) plus ni moins que de capitaliser les connaissances mises en oeuvre lors des premières utilisations afin de : S choisir les meilleurs calendriers d'opérateurs par l'analyse des tâches à ordonnancer, S configurer automatiquement le logiciel (choix des bons paramètres). Nous proposons ici une démarche basée sur l'ordonnancement par simulation. Toutefois, comme nous le verrons, nous divergeons d'une simulation classique en générant une base de connaissances sur le domaine considéré. Ceci nous permet de proposer rapidement une bonne solution ou de converger plus rapidement vers une solution satisfaisante. Cet article met d'avantage l'accent sur la démarche d'ensemble que nous avons adoptée, que sur l'aspect théorique de nos travaux. Le lecteur intéressé plus particulièrement par nos développement théoriques pourra se référer à (Michaut et Lereno, 1998),(Lereno et Morello, 2000), (Morello et Lereno, 2000) et (Lereno, 2000). La première partie propose une vue d'ensemble des données manipulées et situe l'architecture proposée dans le cadre de l'ECD. De plus, nous verrons comment une base de données technique a été artificiellement constituée à l'aide d'un générateur de cas, afin de fournir une base de travail au système d'apprentissage. Puis, dans la seconde partie, nous exposerons les outils d'Intelligence Artificielle mis en œuvre afin de réaliser un apprentissage inductif conceptuel à partir d'exemples étiquetés. Nous y développerons également le thème de la mise à jour de la base de données technique, à travers un algorithme de filtrage d'exemples issu de nos précédents travaux. Enfin, le troisième chapitre propose une application à un problème d'ordonnancement. données technique. Dans notre cas, nous allons définir le type de données manipulées et la manière dont la base de connaissance sur le domaine est générée. 1.3 Les données manipulées Une distinction est ici faîte entre les données statiques et données dynamiques du système : S les données statiques : elles représentent d'une certaine manière l'état initial du système. Elles codifient la dénomination des produits susceptibles d'être fabriqués ainsi que la description des ressources présentes dans l'atelier. Nous ne considérons donc pas ici ces paramètres comme des degrés de liberté du système. S les données dynamiques : elles comprennent les OF ainsi que les degrés de liberté qu'il est possible de faire varier pour évaluer un ordonnancement à travers une fonction de coût. Les degrés de liberté sur lesquels nous avons travaillé sont les ressources nécessaires au travail dans l'atelier et les heuristiques gérant les files d'attente devant les machines. Afin de réaliser la partie simulation de ce travail, nous avons utilisé un logiciel d'ordonnancement couramment répandu dans les entreprises, le logiciel Preactor. Ce type de logiciel accepte en entrée de nombreux paramètres décrivant d'une part l'atelier de production et d'autre part les ordres de fabrication. Une représentation schématique du système est donnée dans la figure.2. L'ordonnancement simulé par le logiciel doit être évalué à travers une fonction de coût. Celle-ci fait intervenir un ou plusieurs critères, correspondant aux aspects de l'ordonnancement que l'on souhaite optimiser (Pinedo, 1995). Pour exemple, nous citerons l'un des critères les plus répandus, le Cmax qui correspond à la durée totale d'ordonnancement. OF 1.2 Le processus de l'ECD Un parallèle peut être établi entre le processus d'Extraction de Connaissances à partir de Données (Fayyad et Piatetsky-Shapiro, 1996), (Liu et Motoda, 1998) et un système d'aide à la décision en ordonnancement. La figure 1 nous montre les différentes étapes composant l'ECD. Observations Fouille de Données Liste des produits susceptibles d'être fabriqués Heuristiques files d'attente Ressources disponibles et caractéristiques associées Données Collecte Données Données Sélectionnées Ressources de l'atelier Filtrage Ordonnancement Figure 2. Architecture générale du système Règles Connaissance PostTraitement Figure 1. Processus de l'Extraction de Connaissances à partir de Données La collecte des données est la première étape de ce processus. Elle consiste à réunir l'ensemble des informations disponibles afin de constituer une base de Notre but est, dans un premier temps, d'acquérir de la connaissance sur l'atelier de production étudié, et d'obtenir ainsi une base de données technique initiale sur le savoir faire de l'entreprise en ordonnancement. Pour cela, nous avons fait appel à des outils de programmation en langage C++, et généré ainsi un ensemble d'exemples représentant une partie des données d'entrée dynamiques du système. Concrètement, nous générons un ensemble de semaines auxquelles nous associons des OF en prenant soin, en fonction de l'atelier considéré, de couvrir au mieux MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) l'espace des situations auxquelles l'organe décisionnel de l'atelier doit faire face. A ce stade nous disposons d'une population non étiquetée. Cela signifie que nous n'avons pas déterminé quel ordonnancement satisfait le mieux les critères de performance choisis et ce, pour chaque semaine générée. C'est à ce stade que la phase de simulation intervient. En effet, nous simulons les ordonnancements pour toutes les variations possibles des degrés de liberté du système. Une fonction de coût évalue alors la performance de chaque ordonnancement, et le paramétrage des variables du système pour le meilleur résultat obtenu est ajouté à la base de données technique. Cette information sur l'ajustement des degrés de liberté est l'étiquette (classe) de l'exemple (semaine de production) correspondant. La figure 3 présente le procédé de constitution de cette Base de données technique. OF d'exemples (Brito et Diday, 1990), (Diday, Brito, 1989). Ainsi, nous recherchons les descriptions les plus générales possibles expliquant les données d'entrée, dans le but de prédire un comportement du système et de décider quel ajustement des degrés de liberté correspond le mieux à une situation nouvelle. 2. LES STRUCTURES CLASSIFICATOIRES Nous souhaitons que le logiciel d'ordonnancement dispose d'outils "dynamiques" d'aide à la décision. En effet, il offrirait non pas uniquement la capacité de paramétrer manuellement une simulation, mais il serait capable de proposer automatiquement une première solution admissible et basée sur l'expérience acquise par l'atelier de production. La solution proposée par le logiciel n'est pas nécessairement optimale, mais elle peut guider la prise de décision dans un sens favorable. Toutefois, cela suppose la mise en place d'un mécanisme d'apprentissage que nous avons réalisé en adoptant deux stratégies distinctes. 2.1 Les arbres de décision Simulation de l'ordonnancement Test de l'ensemble des combinaisons possibles entre les différents degrés de liberté Ensemble d'ordonnancements Evaluation Le meilleur résultat est ajouté à la base de données technique Figure 3. Constitution de la Base de données technique du système Nous reviendrons plus loin à l'étape de filtrage du processus de l'ECD, pour nous intéresser tout d'abord à la fouille de données et plus précisément à l'étape d'apprentissage (Winston, 1975). Remarquons qu'un atelier donné, représentant un problème générique d'ordonnancement, correspond chaque semaine à une instance particulière de ce problème. En effet, les ordres de fabrication, entre autres paramètres, peuvent varier d'une semaine à l'autre. Il semble difficile de réaliser un apprentissage indépendant du type d'atelier auquel il se rapporte. En effet, la connaissance, fût-elle implicite, est liée à cette architecture. De ce fait, il peut être nécessaire de déterminer chaque semaine, pour un même atelier, quel ajustement d'heuristiques ou de ressources liées à l'atelier est susceptible de fournir les meilleurs résultats. C'est dans cette optique que nous proposons un apprentissage inductif conceptuel à partir Les arbres de décision sont des systèmes d'apprentissage inductif à partir d'exemples et s'inscrivent dans l'ECD. En effet, ils permettent de distinguer les structures sousjacentes qui régissent les données et de construire des règles capables de classer les objets à partir d'un ensemble d'apprentissage constitué d'objets étiquetés (les classes sont connues). Un arbre de décision représente une base de règles. Une règle si alors est exprimée sous forme d'un chemin partant de la racine pour atteindre une feuille (nœud terminal) d'un arbre. Chaque nœud interne est associé à un attribut à tester et à autant de sous-arbres que l'attribut comporte de valeurs. Chaque nœud terminal possède une classe assignée exprimant le résultat d'une règle de classification. L'idée de la construction d'arbres à partir d'un ensemble d'un ensemble d'apprentissage a été proposée initialement dans (Hunt et Marin, 1966). De nombreux travaux de recherche ont été menés dans le domaine, nous citerons parmi les plus connus CART (Breiman et Friedman, 1984) et C4.5 (Quinlan, 1983),(Quinlan, 1993). Nous avons utilisé dans notre étude l'algorithme C4.5 de J.R. Quinlan. Celui-ci nous permet d'extraire un ensemble de règles à partir des données extraites de la Base de données technique que nous avons constituée. Ces règles peuvent ainsi être utilisées par le système pour affecter une semaine de production à l'une des classes obtenues lors du processus d'apprentissage. 2.2 Filtrage et pertinence des variables et exemples Il est souvent difficile face aux nombreuses variables caractérisant un problème, de définir avec certitude quelles sont celles fondamentalement utiles à sa description. En effet, les variables pertinentes sont souvent inconnues à priori. Par conséquent, de nombreuses variables sont introduites pour mieux représenter le domaine étudié et on obtient donc une granularité (niveau MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) de détail des exemples pris en compte) assez fine. Toutefois, plusieurs de ces variables sont partiellement ou complètement non-pertinentes/redondantes pour le concept étudié (Dhagat et Hellerstein, 1996), (John et Kohavi, 1994), (Kira et Rendell, 1992), (Langley et Sage, 1997), (Liu et White, 1994). Un problème similaire intervient lorsque l’on aborde les exemples (objets) composant un ensemble de données. Aussi, le problème de la sélection d’exemples pertinents ne doit pas être sous-estimé, en effet, tout comme certains attributs sont plus utiles que d’autres, certains exemples contribuent à la qualité d'une base de connaissance plus que d’autres (Liu et White, 1994). Ces différents problèmes font partie de l'étape filtrage du processus de l'ECD. Notre équipe a mis au point d'une part un algorithme de sélection de variables pertinentes, le PDOBut (Michaut, 1999), et d'autre part un algorithme de sélection d'exemples pertinents (Morello et Lereno, 2000), (Lereno, 2000) basé sur le degré de généralité. La sélection d'exemples pertinents a été largement moins abordée dans la littérature que la sélection de variables et on ne dispose donc pas de la même richesse d'études sur le domaine. Toutefois, les chercheurs (Blum et Langley, 1997) ont mis en avant trois raisons essentielles qui justifient la sélection d’exemples pertinents pour le processus d’induction : S l'algorithme d'induction utilisé peut avoir un coût élevé en temps de calcul, dans ce cas, afin de réduire ce temps de traitement, il est judicieux de ne conserver que les exemples utiles à la qualité du système d'apprentissage, S le qualité de l'apprentissage du système mis en place peut lui même être influencé par les exemples utilisés, ainsi il convient de focaliser l'apprentissage sur les exemples informatifs, S dans le cas où l'on dispose d'objets non étiquetés, le coût lié à l'étiquetage de ces objets peut être un facteur à ne pas négliger, c'est pourquoi un nombre réduit d'exemples est là encore souhaitable. Ce dernier cas est envisageable au sein d'une structure, où seule une collecte de données a été réalisée sans accorder d'intérêt particulier à l'étiquetage. Nous rajouterons que la maintenance dans le temps d'une base de données est indispensable. En effet, la mise à disposition de méthodes identifiant les instances strictement nécessaires à la sauvegarde de l'information contenue dans la base de données peuvent être d'une grande utilité aux différents organes qui l'exploitent. Le filtrage d’exemples s’impose donc comme une étape majeure dans le processus de l’ECD. Ces méthodes donnent de bons résultats et permettent de réduire la granularité de la Base de données technique sans perte d'information, du moins en ce qui concerne l'application ordonnancement. En effet, d'autres applications au sein de l'entreprise peuvent exprimer le besoin de disposer de données filtrées dans le cas du pilotage d'atelier. 2.3 Les réseaux à fonction radiale de base (RBF) Afin de compléter nos travaux, il nous a semblé intéressant de confronter les arbres de décision avec des méthodes d'apprentissage supervisé par un réseau de neurones artificiel. Les réseaux de neurones "probabilistes" ont plus particulièrement retenu notre attention. L'architecture d'un réseau de neurones se révèle plus ou moins adaptée en fonction de la tâche qu'on lui confie. Certains sont très efficaces pour l'approximation de fonctions mathématiques. C'est le cas de la catégorie des mapping neural networks, cette terminaison anglosaxonne illustrant bien l'idée de cartographie d'une fonction. D'autres, comme les réseaux de neurones à fonction radiale de base (RBF, Radial Basis Function Networks), sont plus adaptés aux tâches de classification (Broomhead et Lowe, 1988). (Moody et Darken, 1989) et (Segee, 1993) décrivent, de manière détaillée, le fonctionnement de ce réseau et proposent des algorithmes d’apprentissage adaptés à son architecture. En raison de leurs capacités de classification, notre choix s'est porté assez naturellement sur les réseaux RBF que nous avons implémenté à l'aide du logiciel MATLAB. Le réseau a tout d'abord été entraîné à l'aide des exemples contenus dans la base de données technique. La population est séparée en deux parties, les données d'entraînement et les données de vérification. Puis, après avoir entraîné le réseau RBF, ses capacités de généralisation sont évalués à l'aide des données de vérification. Les différentes expériences que nous avons conduites nous ont prouvé sa grande efficacité dans la classification des exemples de vérification. Toutefois, nos travaux montrent également que cette solution pénalise l'étape filtrage du processus de l'ECD. Ainsi, nous avons remarqué que la réduction du nombre d'exemples ou de variables, entraînait une légère diminution des performances du réseau RBF comme nous allons le voir dans l’exemple suivant. 3. APPLICATION À D’ORDONNANCEMENT UN PROBLÈME Nous considérons le cas d'une entreprise désirant perfectionner son système d'ordonnancement d'atelier. Cette société utilise l'or comme matière première et fabrique des gourmettes et des chaînes pour homme, femme et enfant. Chaque semaine les "donneurs d'ordres" contactent cette entreprise et passent leur commande. Les produits sont ainsi fabriqués durant la semaine en considérant qu'aucun or ne doit rester dans les ateliers de fabrication durant le week-end afin de réaliser des économies sur les coûts de stockage. 3.1 Le procédé de fabrication Le procédé de fabrication comporte six phases auxquelles une ou plusieurs machines peuvent être associées afin de réaliser la tâche demandée. La figure 4 présente succinctement le processus de fabrication d'un produit (chaîne ou gourmette) à travers ces six étapes. MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) OR fonderie trefilage écrasement chaînage assemblage fraisage l'ensemble des produits mais dans de petites quantités). Nous avons ainsi généré un grand nombre de semaines de production réparties comme suit : 60% sur le mode 1, 20% sur le mode 2 et 20% sur le mode 3. Parmi ces semaines de production, 60% ont été aléatoirement sélectionnées pour la phase d'entraînement du système d'apprentissage, les 40% restants servant à l'évaluation de la qualité du classifieur obtenu. Figure 4. Les différentes étapes de fabrication 3.5 Simulation et évaluation de l'ordonnancement 3.2 Le fonctionnement de l'atelier Nous disposons dans l'atelier d'un poste (machine) par tâche à réaliser excepté dans le cas du tréfilage où deux postes sont mis en place. En effet, nous avons considéré que la charge de travail lors de la seconde étape de fabrication justifie l'utilisation de deux machines. La production est linéaire, signifiant que le flux de produits est unique, en effet les mêmes transformations sont réalisées sur tous les produits. 3.3 Caractéristiques des produits L'atelier produit des chaînes en or et propose à ses clients 30 variations possibles du produit. En effet, les maillons de la chaîne auront des diamètres et une longueur plus ou moins importants suivant la personne à qui elle est destinée (hommes, femmes, enfants). La gourmette est considérée comme un cas particulier d'une chaîne, à laquelle est adjointe une plaquette. A chaque type de chaîne va donc être associé un temps de travail nécessaire à chaque étape du procédé de fabrication. Le produit Pi, i∈(1,2,.., 30) sera caractérisé par le vecteur temps suivant : P= ti1,ti2,ti3,ti4,ti5,ti6 avec tik , k∈(1,2,…, 6) les temps i associées aux machines M1, M2, …, M6. Ces temps seront calculés, dans notre générateur de cas, en fonction de la description du processus de fabrication donnée précédemment. ( ) 3.4 La génération des commandes Nous considérons que les donneurs d'ordre passent leur commande de manière à ce que la production puisse démarrer chaque lundi matin. Un OF est considéré dans notre cas comme un couple (Pi,Qi), Qi déterminant la quantité de produit Pi à fabriquer. Soit Nof le nombre d'OF pour une semaine donnée. Le générateur peut fonctionner suivant trois modes différents : S mode 1 : génération de semaines dites "classiques" où Nof et Qi varient uniformément d'une semaine à l'autre (la demande porte sur l'ensemble des produits dans des quantités variables), S mode 2 : génération de semaines où Nof est petit avec Qi grand (ce cas de figure peut correspondre à quelques modèles particulièrement demandés et qu'il faut rapidement produire en grande quantité), S mode 3 : génération de semaines où Nof est grand et Qi petit (cas où la demande est uniforme sur Les degrés de liberté retenus dans cet exemple sont : S le nombre, la disposition des opérateurs dans l'atelier et les horaires de travail associés (une dizaine de configurations possibles a été testée), S les heuristiques gérant les files d'attente devant le machines (4 heuristiques différentes sont évaluées). Si le premier degré de liberté est assez classique dans le domaine de l'ordonnancement, les facteurs liés aux ressources humaines le sont moins. Il nous a donc paru intéressant d'intégrer ce type de contraintes dans la simulation. Nous avons évalué, chaque ordonnancement obtenu en fonction du Cmax et du coût financier de la semaine de production. Nous avons ainsi dégagé trois catégories de semaines de production et le paramétrage d'atelier associé. Ces catégories sont donc les classes que le système d'apprentissage doit apprendre à reconnaître. Comme nous l'avons vu précédemment, nous avons acquis de la connaissance sur l'atelier de production étudié, et obtenons ainsi une première base de données technique sur le savoir faire de l'entreprise en ordonnancement. Le processus d'apprentissage peut maintenant être initié, nous présentons les résultats obtenus avec les arbres de décision et les réseaux de neurones. 3.6 Résultats obtenus lors de l'apprentissage 3.6.1 Arbres de décision Les arbres de décision réalisent de bonnes performances lors de l'apprentissage. Ainsi, environ 85% des exemples d'entraînement sont correctement classés. De plus, parmi la quasi-totalité des 15% restants, la solution proposée satisfait les contraintes d'évaluation mais à un degré moindre que la réponse "attendue". L'application des algorithmes de filtrage sur la Base de données technique a, elle aussi, fourni de très bons résultats. En effet, le nombre de variables nécessaires à l'apprentissage a été réduit de 60%. De même, après avoir trivialement écarté les exemples redondants, 45% des exemples restants ont pu être éliminés par notre algorithme. Finalement, les arbres de décision obtenus à l'aide de C4.5 avec l'ensemble de données initial, puis avec l'ensemble de données réduit après l'étape de filtrage sont identiques, démontrant que, dans ce cas, il n'y a pas eu perte d'information. 3.6.2 Les réseaux à fonction radiale de base Les réseaux de neurones obtiennent des résultats encore meilleurs lors de la classification. Ainsi, plus de 90% de la MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) population test est correctement classée à l'aide du RBF que nous avons implémenté sous MATLAB. Cependant, les résultats obtenus avec ce même réseau et la population filtrée sont moins bons mais restent proches de ceux obtenus avec l'arbre de décision, soit environ 80% d'exemples correctement étiquetés. 3.6.3 Comparaison des deux méthodes Les résultats obtenus par le réseau RBF sont, dans l'exemple considéré, un peu meilleurs. Toutefois il nous semble prématuré de conclure que cette méthode est systématiquement plus efficace que les arbres. Par exemple, l'aspect "boîte noire" des réseaux neuronaux peut être un désavantage par rapport aux règles de décision explicites fournies par les arbres de décision. De plus on observe un diminution des performances du réseau RBF lors de la sélection d'exemples. Or, nous avons montré que dans le cas des arbres de décision, nous parvenons à obtenir les mêmes résultats malgré le nombre d'exemples réduit. Tout cela semble indiquer notre méthode de filtrage d'exemples n'est pas indépendante de l'algorithme d'induction utilisé. 4. CONCLUSION Nous exposons dans notre article une méthode permettant de prédire, avec une bonne précision, les divers paramètres d'un ordonnancement pour le pilotage d'atelier. L'ordonnancement d'atelier doit faire face à la recherche d'une productivité toujours croissante et à l'importance accrue des facteurs liées aux ressources humaines. Ainsi s'est imposée la nécessité de gérer le plus finement possible chaque opération élémentaire à réaliser. Dans ce but, les entreprises se tournent notamment vers des solutions logicielles qui, comme nous l'avons vu, présentent quelques lacunes dont la gestion des calendriers d'ouverture des ressources ou le manque d'interactivité entre le paramétrage du logiciel et l'expérience de l'utilisateur. Nous considérons dans notre approche qu'il est possible, par un apprentissage systématique de l'utilisation de ces logiciels, de capitaliser les connaissances mises en oeuvre afin de proposer un premier paramétrage automatique du logiciel face à une nouvelle situation et de choisir les meilleurs calendriers d'opérateurs pour les tâches à ordonnancer. Nous avons donc travaillé sur des bases de données techniques (réelles ou artificiellement générées) contenant le savoir faire acquis dans le temps par l'entreprise. En conséquence nous avons dû faire face au problème de la pertinence des données présentes dans ces vastes bases de données. C'est pourquoi nous avons établi un parallèle entre le problème d'ordonnancement d'atelier et un processus d'Extraction de Connaissances à partir de Données. Dans ce contexte nous avons d'une part développé des travaux de recherche dans le domaine de l'apprentissage à travers les arbres de décision et les réseaux de neurones et d'autre part proposé un algorithme original de filtrage de données pertinentes. En intégrant cette méthode au sein d'un logiciel de simulation d'ordonnancement, l'organe décisionnel de l'atelier peut disposer plus rapidement d'une solution acceptable. Si cette solution n'est que partiellement satisfaisante, elle permet néanmoins de converger plus rapidement vers la solution finalement adoptée. De plus, une mise à jour régulière de la base de données technique et l'application de méthodes d'apprentissage et de filtrage, permet de maintenir à jour le système d'aide à la décision. Nous orientons actuellement nos recherches vers la prise en compte d'autres facteurs liés aux ressources humaines dans le cadre de l'ordonnancement, et mettons au point un algorithme unifiant les processus de filtrage de variables et d'exemples. Une fois mis en place, ces outils pourront être d'une grande utilité aux communautés ordonnancement et ECD. Bibliographie Blasewicz, J, K. Ecker, G. Schmidt and J. Weglarz, 1993. Scheduling in Computer and Manufacturing Systems, Springer Verlag, Berlin Heidelberg. Blum, A.L. et P. Langley, 1997. Selection of Relevant Features and Examples in Machine Learning, Artificial Intelligence 97(1-2), p.245-271. Breiman, L, J.H. Friedman, R.A. Olshen, and C.J. Stone, 1984. Classification and Regression Trees. Belmont, CA: Wadsworth. Brito, P. and E. Diday, Pyramidal Representation of Symbolic Objects. Knowledge, Data and ComputerAssisted Decisions, Ed. M Schader and W. Gaul, Springer-Verlag, Berlin Heidelberg, 1990. Broomhead, D.S. et D. Lowe, 1988. Multivariable functional interpolation and adaptive networks, Complex Systems, (2), p. 321-355. Dhagat, A., and L. Hellerstein, 1994. PAC learning with Irrelevant Attributes. Proceedings of the IEEE Symposium on Foundations of Computer Science p. 64-74, IEEE. Diday, E., and P. Brito, 1989. Introduction to Symbolic Data Analysis. Conceptual and Numerical Analysis of Data, p. 45-84) Ed. O. Opitz, Springer, Berlin Heidelberg New York. Fayyad, U. M., G. Piatetsky-Shapiro, and P. Smyth, 1996. From Data Mining to Knowledge Discovery: An Overview. Advances in Knowledge Discovery and Data Mining p. 1-34. Hunt, E.B., J. Marin and P.G. Stone, 1966. Experiments in induction, New York Academic Press. John, G. H., R. Kohavi and K. Pfleger 1994. Irrelevant Features and the Subset Selection Problem. Proceedings of the Eleventh International Conference on Machine Learning p. 121-129. New Brunswick, NJ: Morgan Kaufmann. Kira, K., and L. Rendell 1992. A Practical Approach to Feature Selection. Proceedings of the Ninth International Conference on Machine Learning p. 249256). Aberdeen, Scotland: Morgan Kaufmann. MOSIM’01 – du 25 au 27 avril 2001 – Troyes (France) Langley, P., and S. Sage, 1997. Scaling to Domains with Many Irrelevant Features, R. Greiner (Ed.), Computational Learning Theory and Natural Learning Systems Vol. 4. Cambridge, MA: MIT Press. Lereno, E., 2000. Apprentissage des problèmes d’ordonnancement : Application des méthodes de filtrage de données. Thèse de Doctorat, Université de Franche Comté, France. Lereno, E., B. Morello and P. Baptiste, 2000. Algorithme de Sélection de Données d'Apprentissage, Third International Conference on Applied Mathematics and Engineering Sciences, Casablanca. Liu, H. and H. Motoda, 1998. Feature Selection for Knowledge Discovery and Data Mining Kluwer Acad. Publishers. Liu, W.Z. and A.P.White, 1994. The Importance of attribute Selection Measure in Decision Tree Induction, in Machine Learning, Vol.15, p.25-41. Michalsky, R.S. and J.B. Larson, 1978. Selection of Most Representative Training Examples and Incremental Generation of VL1 Hypotheses : the underlying methodology and the description programs ESEL and AQ11, Report No 867, Dept. of Computer Science, University of Illinois, Urbana. Michaut, D., 1999. Filtering and Variable Selection in Learning Processes. Thèse de Doctorat, Université de Franche Comté, France. Michaut, D., E. Lereno, B. Morello and P. Baptiste, 1998. A Learning Procedure For Scheduling A Flexible Manufacturing System With A Noisy Learning Set, Proc. Of 2nd Asia-Europe Congress on Mechatronics, Japan, p. 692-696. Moody J. et C.J. Darken, 1986. Fast Learning of Networks of locally tuned processing units, Neural Computation, 1(2), p. 281-294. Morello, B., E. Lereno and P. Baptiste, 2000. A New Algorithm To Select Learning Examples from Learning Data. Proc. Of Intelligent Data Engineering and Automated Learning, LNCS/LNAI Series, Springer Verlag. Pinedo, M.L., 1995. Scheduling : theory, algorithms and systems, Prenctice Hall, Englewood Cliffs, New Jersey. Quinlan, J. R., 1983. C4.5: Programs for Machine Learning. San Francisco: Morgan Kaufmann. Quinlan, J. R., 1993. "Learning Efficient Classification Procedures and Their Application to Chess End Games" In R. S. Michalsky, J. G. Carbonnel, and T. M. Mitchell (Eds.), Machine Learning: An Artificial Intelligence Approach. San Francisco: Morgan Kaufmann. Segee, B.E., 1993. Comparative fault tolerance on generalized radial basis functions and multilayer perceptron networks, IEEE Neural Networks Conference, p. 1841-1846, San Francisco. Winston, P. H., 1975. Learning Structural Descriptions From Examples. P.H. Winston (Ed.), The Psychology of Computer Vision. New York : McGraw-Hill.