COUPLAGE CSP ET CBR : PREMIÈRES IDENTIFICATIONS DES

Transcription

COUPLAGE CSP ET CBR : PREMIÈRES IDENTIFICATIONS DES
8th International Conference of Modeling and Simulation - MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
"Evaluation and optimization of innovative production systems of goods and services"
COUPLAGE CSP ET CBR : PREMIÈRES
IDENTIFICATIONS DES MODES DE
COUPLAGE
Aurélien C ODET DE B OISSE, Élise VAREILLES,
Paul G ABORIT & Michel A LDANONDO
Université de Toulouse – Mines Albi – CGI
Campus Jarlard
Allée des Sciences
81013 Albi CT Cedex 09
Thierry C OUDERT & Laurent G ENESTE
Université de Toulouse – ENI de Tarbes – LGP
47, avenue d’Azereix
BP 1629
65016 Tarbes Cedex
RÉSUMÉ : le but de cette communication est de présenter les articulations possibles entre la programmation par
satisfaction de contraintes (CSP) et le raisonnement à partir de cas (CBR) pour l’aide à la décision en maintenance
d’hélicoptères dans le cadre d’un projet nommé Hélimaintenance R&D. Le projet Hélimaintenance R&D a pour but
de réduire de 30 % les coûts de maintenance des hélicoptères civils et militaires. Notre objectif consiste à fournir une
estimation du temps d’immobilisation des hélicoptères lors de leur maintenance basée sur de la connaissance experte et
métier capitalisée. Le couplage des deux approches d’aide à la décision (CBR et CSP) devrait permettre de tirer parti des
avantages de chacun tout en minimisant leurs inconvénients. Une première piste consiste à compléter ou à modifier un
modèle en utilisant les connaissances capitalisées du second. Une deuxième piste envisage de s’appuyer sur un modèle
fiable pour valider ou invalider l’autre modèle auquel on accorde une plus faible confiance. Enfin, une dernière idée est de
faire fonctionner les deux systèmes de concert, soit pour réduire leurs espaces de solutions, soit pour aider à l’adaptation
d’une solution potentielle. Un exemple de maintenance d’hélicoptères permet d’appuyer nos propositions.
MOTS-CLÉS : raisonnement à partir de cas, filtrage par contraintes, systèmes d’aide à la décision, couplage CSB et
CBR, maintenance d’hélicoptères
1 INTRODUCTION
1.1 Présentation du projet Hélimaintenance
Dans l’aéronautique, la maintenance représente 45 %
des dépenses dans le cycle de vie complet des hélicoptères. Pour cette raison, de nombreux travaux industriels
cherchent actuellement à réduire les coûts, soit dès la
conception des aéronefs (Poncelin & al. 2006), soit lors
du plan de maintenance lui-même. Le projet Hélimaintenance, qui mobilise des laboratoires universitaires (ISAE,
ONERA, EMAC) et des entreprises (IXAIRCO, C3EM,
SEMIA) de la région Midi-Pyrénées, concerne l’étude de
méthodes permettant une réduction de ces coûts :
– en aval, lors de la réalisation du plan de maintenance,
par l’exploitation de connaissances de terrain permettant une aide à la décision,
– et en amont, lors de la phase de planification, afin
d’estimer au mieux l’ensemble des opérations de
maintenance à effectuer et la durée d’immobilisation
des aéronefs.
Le point essentiel de la maintenance d’hélicoptères est
que, pour conserver son certificat de navigabilité, le propriétaire de l’hélicoptère doit suivre à la lettre le plan de
maintenance de son appareil ou MRB (Maintenance Report
Board). Le MRB est donné par le constructeur pour une
certaine gamme d’hélicoptères. Il spécifie la durée entre
deux interventions, le type d’intervention et la description
exacte de chaque opération, incluant toutes les options.
Le constructeur, pour effectuer son planning de maintenance, s’appuie sur différents paramètres, dont voici
quelques exemples :
– l’âge de l’hélicoptère,
– l’usage de l’appareil (nombre de cycles de vols,
nombre d’heures de vol, ...).
Il existe trois types de maintenance normalisés :
– le service minimal (MS) : les pièces et circuits courants sont testés et changés si nécessaire (climatisation, huile, essuie-glaces, etc.),
– le service intermédiaire (IS) : outre le service minimal, les pièces critiques dans le fonctionnement de
l’hélicoptère sont testées et changées si nécessaire
(rotor, pales, treuil, etc.),
– le service complet (CS) : l’hélicoptère est entièrement démonté et toutes les pièces sont testées et
remplacées si nécessaire.
Chaque opération d’entretien est accompagnée d’une indication du temps théoriquement nécessaire à sa réalisation.
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
Ceci permet d’estimer le temps total théorique de maintenance de l’appareil. Dans la pratique, ce temps est modifié
par des évènements extérieurs non prévus par le MRB. Par
exemple, une durée estimée de 120 heures de maintenance
peut passer à 180 heures si l’hélicoptère a volé dans une
atmosphère très salée (missions en mer) entraînant une
corrosion supérieure à la normale. L’immobilisation d’un
aéronef représentant un coût important pour son propriétaire, il serait donc intéressant d’avoir une estimation plus
précise du temps de maintenance à prévoir afin de choisir
le moment opportun pour effectuer cette maintenance.
1.2 Solutions envisagées
Dans le cadre du projet Hélimaintenance, la maintenance
des hélicoptères peut être vue comme une opération routinière, c’est-à-dire que les maintenanciers acquièrent de
l’expérience au fur et à mesure des interventions (Pahl
& Beitz 1996). Il est alors possible de capitaliser l’expérience passée. Cela permettrait d’améliorer le rendement
des futurs plans de maintenance et en particulier de mieux
en estimer la durée. Les approches que nous envisageons
pour cette capitalisation sont les approches par contraintes
(CSP) ainsi que le raisonnement à partir de cas (RàPC ou
CBR). Les travaux de (Dutta, Wierenga & Dalebout 1997),
de (Nemati, Steiger, Iyer & Herschel 2002) et de (Fargier,
Lang & Schiex 1996) démontrent la possibilité d’utiliser
des approches CBR et/ou CSP pour de l’aide à la décision.
Selon (Montanari 1974), les CSP sont définis comme un
triplet (variables, domaines, contraintes portant sur les
variables). De nombreux auteurs tels que (Tsang 1993)
ou (Sabin & Freuder 1996) ont démontré que ce type de
modèles pouvait permettre l’aide à la décision dans le
cas d’opérations routinières. Pour cela, il faut disposer
de connaissance explicite, c’est-à-dire formalisée ou formalisable. Dans le domaine d’application considéré, cette
connaissance explicite est en partie fournie par le MRB
(type d’hélicoptère, nombre d’heures de vols, âge...). Cette
connaissance peut être complétée par les connaissances
acquises par les maintenanciers sur le terrain. Cette approche, bien que très performante, est complexe à mettre
en place surtout lors des phases d’extraction / formalisation
des connaissances.
Selon (Kolodner 1993), un CBR stocke la connaissance
implicite et contextualisée grâce à l’enregistrement de cas
passés, chaque cas pouvant être décrit par un ensemble
de descripteurs (variables). Chaque nouveau cas est comparé aux cas passés grâce à des fonctions de similarité afin
d’identifier les cas stockés les plus similaires. Puis un expert adapte les solutions associées à ces cas similaires pour
tenter de trouver une solution au nouveau cas. Dans notre
étude, les interventions de maintenance passées peuvent
être identifiées comme des cas qui sont alors enregistrés
dans une base de cas. La principale difficulté de l’utilisation
du CBR réside dans l’adaptation des solutions identifiées
dans la base de cas. Les maintenanciers, bien qu’experts
en matière de maintenance d’hélicoptère, ne sont pas forcé-
ment en mesure d’adapter les cas passés, souvent à cause
de la complexité de ceux-ci.
L’idée de cette communication est d’envisager le couplage des approches CSP et CBR afin de voir comment
elles peuvent se compléter pour utiliser de la connaissance
contextualisée (CBR) et de la connaissance formelle (CSP).
Dans la suite de cette communication, nous entendons par
CSP, à la fois le modèle de contraintes et le filtrage par les
contraintes et par CBR, à la fois la recherche des cas passés
et leur adaptation, le reste étant effectué par l’homme.
1.3 Organisation de la communication
Les travaux se basent sur un exemple qui est utilisé par
la suite pour illustrer nos propos. Dans un premier temps,
nous présentons les variables utilisées dans le modèle ainsi
que les spécificités inhérentes aux modèles CSP et CBR.
Nous abordons ensuite les méthodes de constitution de la
connaissance et les méthodes de validation de la connaissance. Par la suite, nous présentons les méthodes de couplage des deux systèmes et nous terminons par un système
de filtrage à partir de cas.
2 DESCRIPTION DU MODÈLE
2.1 Variables issues du MRB
Parmi les variables utilisées dans le modèle, le premier type
concerne celles directement issues du MRB. Elles sont listées dans la première partie de la table 1. Par exemple : HT
(le type d’hélicoptère), UT (le type d’utilisation d’hélicoptère) ou HF (le nombre d’heures de vol de l’hélicoptère).
2.2 Variables non issues du MRB
Ces variables sont listées en deuxième partie de la table 1.
Bien que n’apparaissant pas dans le MRB, ces variables
décrivent des éléments susceptibles de modifier l’estimation du temps de maintenance. Par exemple, W MA (le taux
d’utilisation des machines nécessaires à la maintenance),
HL (le fait que l’hélicoptère ait soulevé ou non des charges
importantes) ou encore CO (le soin du propriétaire pour son
hélicoptère) sont des variables ajoutées car ces concepts
n’apparaissent pas dans le MRB.
2.3 Variable de sortie
La variable RT qui est le temps réel estimé de maintenance,
est la variable de sortie du système. Elle correspond à l’estimation du temps moyen de maintenance estimé par le
constructeur à prévoir pour un hélicoptère. Elle se base sur
la somme du temps passé pour chaque opération unitaire.
Cette variable est calculée dans le CSP (cf. section 2.4) et
elle est capitalisée via un descripteur au sein de la base de
cas du CBR.
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
Variable
Nom
Type
Domaine
HT
Helicopter Type
Symbolic
UT
ST
Use Type
Service Type
Symbolic
Symbolic
HA
FH
NF
HE
Helicopter Age
Flight Hours
Number of Flights
Helicopter Equipment
Numeric
Numeric
Numeric
Symbolic
TT
Theorical Time
Numeric
{Dragonfly (Dr), Gazelle (Ga), Puma (Pu), Dolphin (Do),
Tiger (Ti)}
{Civilan, Military}
{Mini Service (MS), Interim Service (IS), Complete Service (CS)}
[0 ;+∞[ (years)
[0 ;+∞[ (hours)
[0 ;+∞[
{Standard (S), Rescue (R), VIP (V), Agricultural (A), Military (M), Camerawork (C)}
[0 ;3400]
Flight Condition
Use Condition
Carefull Owner
Heavy Loads
Workshop Humans Availability
Workshop Machines Availability
Symbolic
Symbolic
Symbolic
Boolean
Symbolic
Symbolic
{Very Severe, Severe, Normal, Ideal}
{Sea, Desert, Mountain, Country}
{Bad, Medium, Good}
{Yes, No}
{Free, Medium, Busy}
{Free, Medium, Busy}
Real Time
Numeric
[0 ;+∞[
FC
UC
CO
HL
W HA
W MA
RT
TABLE 1 : Liste des variables d’entrées-sorties du modèle.
Variable
AS
AI
DCO
DHL
DHE
GC
WM
Nom
Type
Domaine
Moyen d’obtention
Atmosphere Severity
Age Impact
Deduced Carefull Owner
Deduced Heavy Load
Deduced Helicopter Equipment
General Conditions
Workshop Modulation
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
Numeric
[1 ;10]
[0 ;10]
{2 ;5 ;8}
{1 ;8}
{1 ;2 ;3 ;6}
Depends of coef.
{1 ;3 ;5 ;6 ;7 ;8 ;9}
Table
Equation
Table
Table
Table
Equation
Table 6
TABLE 2 : Liste des variables spécifiques au modèle CSP.
HT
UT
ST
FC
Table
UC
AS
HA
FH
Équation
AI
Équation
GC
Eq (1)
RT
NF
CO
HL
HE
DCO
DHL
DHE
W HA
W MA
Table
Table 9
TT
Table 6 W M
F IGURE 1 : Variables et contraintes du modèle étudié.
Variable
HT
UT
ST
TT
FC
OC
Description of similarity between...
Obtaining
two helicopters of the same type
two uses of helicopters
two type of services
two therorical times of maintenance
two helicopters with different flight conditions
two different owner cares
Table
0.8 if different, 1 else
Table
Difference between both
Table
Table
TABLE 3 : Quelques fonctions de similarité du modèle CBR.
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
2.4 Spécificités du CSP
Le CSP utilise une liste de variables intermédiaires, présentées dans la table 2. Il s’agit par exemple de la variable GC
(les conditions générales d’utilisation) ou de la variable
W M (la disponibilité générale de l’atelier).
RT = α × T T + β × GC + γ ×W M
(1)
La variable RT est obtenue par l’équation (1) qui stipule
que la valeur de cette variable dépend des valeurs des variables représentant le temps théorique T T , des conditions
générales d’utilisation GC et de la disponibilité générale de
l’atelier W M. L’importance donnée aux trois variables de
calcul T T , GC et W M est pondérée par trois coefficients α,
β et γ sur lesquels les experts peuvent jouer pour adapter
le modèle à la réalité.
contraintes du CSP. Cette approche est représentée sur la
figure 2. L’ensemble de la base de cas est analysée par
un expert en utilisant par exemple des techniques statistiques ou d’analyse de données pour régler ou valider des
connaissances formelles. Il peut alors décider de modifier
certaines contraintes du modèle, d’amender des domaines
de variables ou même d’ajouter de nouvelles variables et
contraintes.
Prenons par exemple l’équation (1) qui permet d’obtenir
RT . Les experts savent que le temps réel de maintenance
est fonction de T T , GC et W M mais ne peuvent pas donner précisément la valeur des coefficients α, β et γ. Grâce
aux cas correspondants aux interventions de maintenance
passées et stockées, le tableau de cas présenté table 4 est obtenu. Une technique de régression linéaire multiple permet
alors de déduire les coefficients de α, β et γ.
Le modèle de contraintes complet est représenté sur la figure 1. Nous retrouvons sur ce modèle les variables issues
du MRB, celles ajoutées et nécessaires à la description
d’une opération de maintenance ainsi que les variables
intermédiaires de calcul.
TT
GC
WM
RT
1200
3000
200
2000
1000
120
2
8
10
5
2
9
8
4
1
5
2
8
1321
3101
270
2012
981
341
2.5 Spécificités du CBR
TABLE 4 : Cas passés de maintenance.
Le CBR utilise des fonctions de similarité afin d’identifier les cas proches du nouveau cas. Quelques-unes de ces
fonctions sont listées dans la table 3, par exemple, FC (la
similarité entre deux hélicoptères ayant des conditions de
vols différentes) ou OC (la similarité entre deux appareils
ayant un propriétaire différent).
3 MÉTHODES PERMETTANT DE CONSTITUER
DE LA CONNAISSANCE
Les deux méthodes que nous présentons dans cette section
permettent de compléter ou de valider de la connaissance
capitalisée. Ces améliorations ne sont pas complètement
automatiques et sont pilotées par un expert.
Grâce à cette technique, nous obtenons α = 0, 97, β = 8, 06
et γ = 16, 59. La pondération de l’équation (1) donne alors
l’équation (2). Cette régression a permis d’affiner le CSP.
Si l’on teste l’équation trouvée sur les résultats issus du
CBR, l’erreur moyenne est de 5,31 heures sur une durée
de réparation moyenne de 1337,67 heures, donnant ainsi
une marge d’erreur de 0,4%.
RT = 0, 97 × T T + 8, 06 × GC + 16, 59 ×W M
(2)
3.1.2 Le modèle de contraintes permet de compléter la
base de cas
Nouveau cas
3.1 Utilisation d’une approche pour compléter l’autre
3.1.1 La base de cas permet de compléter le modèle de
contraintes
CBR
Expert
CSP
CSP
Expert
CBR
Modèle de
contraintes
Complétion
Base
de cas
F IGURE 3 : Utilisation du CSP pour compléter les manquements du CBR.
Base
de cas
Complétion
Modèle de
contraintes
F IGURE 2 : Analyse des cas de la base de cas afin de
compléter/modifier le modèle.
Une première approche consiste à utiliser les cas présents dans la base de cas afin de compléter le modèle de
Une seconde approche consiste à utiliser un CSP afin de
compléter les cas capitalisés dans une base de cas. Il ne
s’agit pas là de créer de nouveaux cas dans la base (qui eux
sont réels) mais plutôt de les « parfaire ». Dans la réalité, la
capitalisation de cas n’est pas idéale : la base de cas peut
comporter des cas incomplets, la valeur d’un ou plusieurs
descripteurs n’étant pas renseignée, ce qui peut perturber
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
la recherche de cas similaires ou proches. La figure 3 présente cette approche. Dans le cas où le CSP renvoie un
domaine de valeurs possibles correspondant à une valeur
manquante dans la base de cas, l’expert peut alors décider
d’un ensemble de valeurs qui combleront ce manque.
Prenons comme exemple un nouveau cas qui doit être inséré dans la base de cas (table 5). Celui-ci est intéressant
et représentatif de la maintenance des hélicoptères, mais
il manque une information. Ici, W MA n’est pas renseigné.
Les deux contraintes qui s’appliquent dans notre cas sont
l’équation (1) dans laquelle nous utilisons les valeurs de
coefficients α = 1, β = 10 et γ = 8, ainsi que le tableau
de contraintes 6. Le CSP effectue le filtrage et en déduit
alors que W MA = Medium. Il ne reste plus qu’à l’expert à
valider cette information afin que le cas entré en base soit
complet et parfaitement cohérent avec le CSP et la réalité.
TT
GC
W HA
W MA
RT
120
9
busy
?
274
TABLE 5 : Nouveau cas à prendre en compte auquel il
manque une information.
W HA
W MA
WM
Free
Free
Medium
Busy
0
3
5
Medium
Free
Medium
Busy
3
6
7
Busy
Free
Medium
Busy
6
8
9
TABLE 6 : Charge de l’atelier.
3.2 Utilisation d’une approche pour valider l’autre
3.2.1 La base de cas permet de valider le modèle de
contraintes
Ainsi celui-ci sera validé ou invalidé par les cas passés. Les
travaux de (Shchekotykhin & Friedrich 2009) permettent
par exemple de détecter quelles contraintes sont incohérentes dans un modèle. Le principe est illustré par la figure
4. Chaque cas est passé un à un dans le CSP et celui-ci
renvoie les contraintes qui ont été violées et celles qui ne
le sont pas. Après avoir passé un nombre suffisant de cas
dans le CSP, il est alors possible de valider ou non certaines
contraintes de ce modèle. Il est ensuite envisageable d’utiliser l’approche décrite au paragraphe 3.1 ou de revoir le
modèle « manuellement » en cas de conflits.
Prenons comme exemple une liste de cas issus de la base
de cas (table 7). Cette liste permet la validation d’une
contrainte liant W MA, W HA et W M (table 6) ainsi que
l’équation contraignant RT (équation 1). La table 8 présente les valeurs de RT renvoyées par le CSP et par le CBR.
Nous voyons alors que parfois, le CSP ne semble pas du
tout en accord avec la base de cas. Après une analyse de
l’expert, il s’avère que ces différences surviennent lorsque
W MA est à l’état Busy. Étant donné que, dans cet exemple,
nous plaçons notre confiance dans la base de cas, il faut
alors revoir la table 6 afin de modifier la connaissance
stockée dans le CSP.
Line
TT
GC
1
2
3
4
5
6
7
200
457
865
864
642
4351
7431
3
5
8
7
6
5
9
W HA
W MA
RT
Free
Free
Medium
Free
Busy
Free
Medium
Busy
Medium
Busy
Free
Busy
Free
Free
272
537
1612
926
1054
4400
7542
TABLE 7 : Liste de cas passés afin de vérifier le CSP.
Expert
CBR
CSP
Valide ?
oui
non
Base
de cas
Modèle de
contraintes
F IGURE 4 : Validation du CSP par le CBR.
Dans le cas où la confiance en la connaissance stockée est
plutôt axée sur la base de cas, le principe est de vérifier
le modèle de contraintes créé grâce aux cas mémorisés.
Line
RT CBR
RT CSP
Différence
1
2
3
4
5
6
7
272
537
1612
926
1054
4400
7542
271
531
1001
934
774
4401
7545
2
6
611
8
280
1
3
TABLE 8 : Retours du CSP et du CBR sur les cas soumis.
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
3.2.2 Le modèle de contraintes permet de valider la base
de cas
Base de
cas bruts
Expert
CSP
Valide ?
CBR
oui
non
Modèle de
contraintes
Vérifier le
cas
Base de cas
validés
F IGURE 5 : Validation du CBR par le CSP.
Dans la situation où la confiance dans la connaissance stockée est accordée au modèle de contraintes, on peut alors
confronter chaque cas de la base de cas au modèle CSP
qui le validera ou non. S’il est validé, il pourra alors rester
dans la base de cas. Sinon, il en sera retiré afin de ne pas
fausser les requêtes à venir. Cette approche est décrite sur
la figure 5.
de descripteurs à renseigner manuellement dans le CBR et
les domaines possibles de certains descripteurs. Ce type
d’approche est particulièrement utile lorsque certaines valeurs de descripteurs d’un CBR peuvent être déduites à
partir d’autres valeurs. Le CSP en affranchit donc de leur
saisie et/ou propose un domaine de valeurs possibles pour
un descripteur. La figure 6 illustre ce principe.
Prenons comme exemple le n-uplet {HT , UT , ST , T T }.
Si l’utilisateur souhaite capitaliser un nouveau cas, lors
de la saisie des données, le filtrage par le CSP réduit les
solutions possibles. Par exemple, si HT est Puma, alors
le CSP renverra le fait qu’il n’y a aucune différence en
le civil et le militaire (cf table 9). Il ne lui restera alors
plus qu’à rentrer le type de service effectué. À l’inverse,
si l’utilisateur met un temps théorique de 3400 heures, le
CSP choisira alors automatiquement le Tigre militaire avec
un service complet (cf table 9). Cette phase de filtrage n’est
qu’indicative et doit donc être validée par l’utilisateur.
HT
Dr
Si nous reprenons l’exemple ci-dessus, les lignes de la table
7 sont passées une à une dans le CSP. La table 8 présente
les réponses données respectivement par le CSP et le CBR.
Il suffit alors à l’expert de choisir les cas à retirer ou non du
CBR afin de ne pas fausser les recherches ultérieures. Dans
notre exemple, il pourrait choisir de retirer les cas 3 et 5
pour lesquels la différence entre les deux temps théoriques
est importante (supérieure à 10% d’écart).
ST
TT
∀UT
MS
IS
CS
≤ 120
≤ 140
[600 ;1000]
MS
IS
CS
CS
≤ 120
.
[600 ;1200]
[600 ;1400]
∀UT
Ga
Dans les deux méthodes vues précédemment, le contrôle
effectué par un expert est indispensable. En effet, seul un
expert peut prendre la décision de valider ou non un modèle, que ce soit pour le CSP ou pour le CBR.
4.1 Le modèle de contraintes permet de réduire l’espace de recherche du CBR
C
M
Pu
∀UT
MS
IS
CS
≤ 140
≤ 200
[600 ;1500]
Do
C
M
C
M
∀ UT
MS
MS
IS
IS
CS
≤ 140
≤ 160
[150 ;300]
[150 ;400]
[1200 ;2000]
Ti
∀ UT
C
M
C
M
MS
IS
IS
CS
CS
≤ 210
[300 ;600]
[300 ;800]
[2000 ;3200]
[2000 ;3400]
4 UTILISATION PAR COUPLAGE DES DEUX APPROCHES
TABLE 9 : Temps théorique de maintenance.
Recherche
minimisée
Recherche
UT
Cas
CSP
CBR
Modèle de
constraintes
Base
de cas
F IGURE 6 : Réduction du domaine de recherche du CBR
par le CSP.
Cette approche vise principalement à améliorer l’ergonomie et la performance du CBR. En effet, via un premier
filtrage effectué par le CSP, l’ensemble des modalités des
descripteurs est filtré par le CSP, diminuant ainsi le nombre
4.2 Le modèle de contraintes aide à adapter les cas du
CBR
Utilisateur
Recherche
CBR
Base
de cas
Adaptation Cas adapté
CSP
Modèle de
contraintes
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
F IGURE 7 : Utilisation du CSP pour la phase d’adaptation
du CBR.
des cas proches peut alors retourner au CSP une nouvelle
contrainte contextualisée issue des cas passés.
Les recherches de (Purvis & Pu 1995) et (Ruet & Geneste
2002) indiquent que la principale utilisation qui peut être
faite du CSP en appoint du CBR se situe dans la phase
d’adaptation. Cette phase est la plus complexe du procédé
du CBR. Le CSP permet alors de la rendre plus abordable.
La figure 7 illustre ce principe d’aide à l’adaptation par le
CSP.
Prenons par exemple la table 9. Imaginons que cette table
n’existe pas dans le CSP car les experts n’ont pas pu la modéliser. Le CBR contient tout de même la table 11. Lors de
la saisie du type d’hélicoptère, le CSP envoie une requête
dans la base de cas pour trouver la contrainte liant HT ,
UT , ST et T T . La table 12 montre différentes déductions
effectuées à l’aide du moteur de filtrage du CSP suite à la
saisie de certaines données.
Prenons pour exemple la recherche du temps réel d’immobilisation pour un hélicoptère dont le temps théorique d’immobilisation est de 800 heures avec GC = 5, W HA = Free et
W MA = Medium. Le résultat le plus similaire renvoyé par
le CBR est un hélicoptère dont le temps théorique d’immobilisation était de 900 heures, avec GC = 5, W HA = Busy
et W MA = Medium. Le CSP peut aider à l’adaptation de
cette solution pour la recherche effectuée. Il utilisera donc
ses connaissances pour donner le résultat le plus proche
possible de la réalité. La table 10 donne les différentes
entrées-sorties du système.
Entrées CBR
Sorties CBR
Sorties CSP
TT
GC
W HA
W MA
RT
800
900
800
5
5
5
Free
Busy
Free
Medium
Medium
Medium
1014
874
TABLE 10 : Entrées-sorties de l’adaptation du CBR par le
CSP.
5 FILTRAGE À BASE DE CAS
CSP
UT
ST
TT
Pu
Do
Pu
Pu
Ti
Ga
Do
Ga
Ga
Do
Dr
Do
Pu
Ga
Dr
Do
Dr
Pu
Dr
C
M
C
C
M
C
C
C
M
M
M
C
C
M
M
M
C
M
C
IS
MS
CS
IS
CS
CS
MS
CS
MS
MS
IS
MS
MS
CS
IS
MS
CS
CS
IS
182
154
679
89
2768
678
43
1198
76
145
112
65
76
657
34
154
879
832
65
TABLE 11 : Base de cas utilisée par le Case Base Filtering.
Entrée
Modèle de
contraintes
HT
{Pu}
{Pu, C}
{CS}
{Ga, CS}
Sortie
{182, 679, 89, 76, 832}
{182, 679, 89, 76}
{679, 2768, 678, 1198, 657, 879, 832}
{678, 1198, 657}
TABLE 12 : Exemple de déductions faites par le CSP selon
les saisies de l’utilisateur.
CBR
Base
de cas
F IGURE 8 : Filtrage à base de cas.
Le filtrage à base de cas ou Case Base Filtering, présenté
en figure 8, consiste à coupler le CBR et le CSP afin qu’ils
travaillent ensemble, les entrées de l’un étant en partie
alimentées par les sorties de l’autre. L’idée générale est
que le CSP utilise le CBR lorsque certaines de ses variables ne sont pas ou peu contraintes. Le CBR lui renvoie
alors une liste de cas proches. Un système d’agrégation
Il est bien entendu indispensable d’être en mesure d’interpréter les résultats renvoyés par le CBR. Dans l’exemple, il
serait incohérent de ne filtrer que sur les quelques valeurs
agrégées et renvoyées par le CBR. La question se pose
donc de savoir quelle est la pertinence de l’information
retournée par le CBR. Dans le cas précédent, en se basant
sur la première ligne de la table 12, le CSP doit-il intégrer
une contrainte amenant à réduire le domaine de T T via :
–
–
–
–
un intervalle englobant ([76 ;832]) ?
une borne inférieure (≥ 76) ?
une borne supérieure (≤ 832) ?
un ensemble d’intervalles avec une tolérance
([66 ;86] ∪ [79 ;99] ∪ [172 ;192] ∪ [669 ;689] ∪
[822 ;842]) ?
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
Il est aussi envisageable d’analyser la demande du CSP
pour qu’il questionne correctement le CBR. Prenons le cas
d’un utilisateur qui recherche un hélicoptère dont le temps
théorique de maintenance est de 400 heures. Cette requête
peut être traduite de plusieurs manières. Par exemple :
– le temps théorique est égal à 400 : T T = 400,
– le temps théorique est égal à 400 plus ou moins 10 :
T T = [390, 410]
Une piste de solution pourrait être de passer par un analyseur intermédiaire entre le CBR et le CSP qui rendrait les
échanges cohérents et plus flexibles. Cet analyseur devrait
être renseigné avec de la connaissance d’experts, permettant ainsi de renvoyer les bonnes données au système de
filtrage à base de cas. Cette solution est représentée sur la
figure 9.
Modèle de
contraintes
CSP
Analyseur
CBR
Base
de cas
F IGURE 9 : Filtrage à base de cas amélioré.
6 CONCLUSION ET PERSPECTIVES
L’idée principale de cette communication concerne le dialogue entre deux approches d’exploitation des connaissances : le CSP et le CBR. Six méthodes de couplage ont
été identifiées :
Dans le cadre du projet Hélimaintenance, ce système devrait permettre à terme d’estimer de manière fiable et rapide
le temps réel d’immobilisation des hélicoptères maintenus
par Hélimaintenance afin de planifier au mieux les réparations à effectuer.
Étant donné la complexité de mise à jour du modèle de
contraintes et la difficulté à adapter les solutions issues du
CBR, il semble intéressant de combiner les deux approches.
Cela induirait d’ajouter des contraintes contextualisées issues du CBR dans le CSP, ce qui est rendu possible par
l’utilisation du filtrage à partir de cas. Il reste donc à tester
la possibilité de faire dialoguer un CSP et un CBR afin
d’ajouter dynamiquement des contraintes contextualisées
dans un modèle de contraintes grâce à un CBR.
7 REMERCIEMENTS
Les auteurs tiennent à remercier tous les partenaires du projet Hélimaintenance, en particulier les experts d’IXAIRCO
pour leur engagement dans la construction des modèles de
CSP et CBR.
RÉFÉRENCES BIBLIOGRAPHIQUES
Dutta, S., Wierenga, B. & Dalebout, A. (1997). Case-based
reasoning systems : From automation to decisionaiding and stimulation, IEEE Transactions on knowledge and date engeneering, Vol. 9.
Fargier, H., Lang, J. & Schiex, T. (1996). Mixed constraint
satisfaction : a framework for decision problems under incomplete knowledge., Technical report, IRIT Université Paul Sabatier and INRA.
Kolodner, J. (1993). Case-based reasoning, Morgan Kaufman Publishers.
Montanari, U. (1974). Networks of constraints : fundamental properties and application to picture processing,
Information sciences, Vol. 7, pp. 95–132.
– la base de cas permet de compléter le modèle de
contraintes (section 3.1.1).
Nemati, H. R., Steiger, D. M., Iyer, L. S. & Herschel, R. T.
(2002). Knowledge warehouse : an architectural integration of knowledge management, decision support,
artificial intelligence and data warehousing, Decision
Support Systems 33(2) : 143 – 161.
– le modèle de contraintes permet de compléter la base
de cas (section 3.1.2).
Pahl, G. & Beitz, W. (1996). Engineering Design : A
Sytematic Approach, Springer-Verlag.
– la base de cas permet de valider le modèle de
contraintes (section 3.2.1).
Poncelin, G. & al. (2006). Product Life Cycle Aspects,
Springer, chapter Design to maintenance cost by the
control of the products environment, pp. 95–107.
DOI : 10.1007/978-2-287-48370-7.
– le modèle de contraintes permet de valider la base
de cas (section 3.2.2).
– le modèle de contraintes permet de réduire de l’espace de recherche du CBR (section 4.1).
– le modèle de contraintes aide à adapter les cas du
CBR (section 4.2).
– Filtrage à base de cas (section 5).
Purvis, L. & Pu, P. (1995). National science foundation grant iri, Technical report, Adaptation Using
Constraint Satisfaction Techniques.
Ruet, M. & Geneste, L. (2002). Search and adaption in a
fuzzy object oriented case base, Advances in CaseBased Reasoning, ECCBR.
MOSIM’10 - May 10-12, 2010 - Hammamet - Tunisia
Sabin, D. & Freuder, E. (1996). Configuration as composite constraint satisfaction, Artificial Intelligence
and Manufacturing Research Planning Workshop,
pp. 153–161.
Shchekotykhin, K. & Friedrich, G. (2009). Argumentation
based constraint acquisition, in M. Stumptner & P. Albert (eds), Proceedings of the IJCAI-09 Workshop on
Configuration, IJCAI, p. 47.
Tsang, E. (1993). Foundations of constraints satisfaction,
Academic Press, London.

Documents pareils