système d`aide au paramétrage d`un logiciel en ordonnancement

publicité
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.
Téléchargement