3e Conférence Francophone de Modélisation et SIMulation « Conception, Analyse et Gestion des Systèmes Industriels » MOSIM'01 - du 25 au 27 Avril - Troyes (France) ROULEXPERT : UN SYSTEME D'AIDE A LA DECISION POUR LE CHOIX DES ROULEMENTS Kamel MEHDI Neïla MASMOUDI Ali ZGHAL Institut Préparatoire aux Etudes d'Ingénieurs de Mateur Route de Tabarka - 7030 Mateur Tunisie e-mail : [email protected] Ecole Nationale d'Ingénieurs de Sfax Département de génie mécanique B.P. W Route de Soukra - 3038 Sfax - Tunisie e-mail : [email protected] Ecole Supérieure des Sciences et Techniques de Tunis 5 Av. Taha Husein B.P. 58 Bab Mnara 1008 Tunis - Tunisie e-mail : [email protected] RESUME : Durant la conception d'un système, les concepteurs ont toujours besoin de tester différents concepts afin d'aboutir à un concept final qui répond à leurs exigences. (Changer les valeurs des paramètres, relancer le calcul, sélectionner des composants mécaniques standards, proposer des solutions technologiques, modifier ou ajouter des hypothèses, etc.). Les différents concepts manipulent souvent des composants dont les interactions sont essentielles pour un bon fonctionnement du système et une exécution économique du processus de conception. En réalité, la plupart des composants ne répondent pas uniquement à une fonction désirée, mais participe aussi à d'autres comme le comportement du système et la définition géométrique des autres composants. Dans la conception mécanique la totalité de ces fonctions doit être prise en considération par la définition des relations inter-objets. Dans ce papier nous présenterons un système expert d'aide à la décision couplé avec un langage orienté objet pour le choix des roulements. Ce système, baptisé par ROULEXPERT, est basé d’une part sur une représentation orientée objets des différentes classes des roulements. D’autre part sur un système expert, à base de règles, aidant le concepteur dans sa décision de choix des roulements pour une application donnée. Ce système permet de lancer dynamiquement les différentes méthodes et procédures de calcul nécessaires pour l'avancement du projet et ce chaque fois qu'un paramètre change de valeur. MOTS-CLES : CAO, Intelligence Artificielle, Système Expert, Orienté Objet, Roulements 1. INTRODUCTION connaissances sont représentées respectivement par les valeurs {1.0; 0.8; 0.6; 0.4; 0.2; 0.0}. La conception d'un produit mécanique passe par la modélisation de ses objets (les composants) et de ses données appelées souvent connaissances ou méta connaissances qui manipulent les attributs des objets. Ces connaissances ont été classées par Adler [4] selon quatre formes : 1. les connaissances heuristiques, 2. les connaissances provenant des procédures de calcul, Le deuxième type de connaissances traduit les connaissances issues d'un module de calcul, d'analyse, etc. Car pour construire un système mécanique les connaissances heuristiques de l'ingénieur ou de l'expert de la conception sont toujours utiles mais insuffisantes. Les outils mathématiques et physiques sont donc toujours indispensables pour valider l'expérience, faire des calculs d’optimisation des dimensions et analyser le comportement statique et dynamique d'une ou de plusieurs pièces d'une machine. 3. les connaissances provenant des tables de données, 4. les connaissances provenant de la visualisation des exemples. Les connaissances heuristiques sont les connaissances statiques issues d'une évaluation de l'expérience du passé d'un expert dans une application bien spécifique. Cette évaluation sera représentée sous forme d'une base de connaissances, constituée à partir des tests et des règles de sélection. Ces connaissances sont caractérisées par des situations représentées par des coefficients de capacité compris entre 0 et 1. On peut avoir une capacité de connaissances excellente, très bonne, bonne, passable, mauvaise, et très mauvaise. Ces capacités de Le troisième type de connaissances représente les connaissances issues des tables et des courbes de données. Ces connaissances sont généralement les résultats d’une longue durée d'expérience de dans un domaine particulier. Donc il faut savoir les introduire dans des bases de données ou sous formes de lois mathématiques afin qu’elles soient exploitable d'une manière automatique en parallèle avec les connaissances heuristiques et des connaissances provenant des calculs numériques. Le quatrième type de connaissances représente les connaissances provenant à partir d'une visualisation de - 279 - MOSIM'01 - du 25 au 27 Avril - Troyes (France) différents exemples représentant des cas types d’une situation de conception. Ces exemples sont utilisés afin de guider l'utilisateur dans le processus de conception ou d’effectuer un choix rapide d'une solution d'un problème bien défini. Par exemple, pour faire le choix du montage d'un palier à roulements, l'expert ou le concepteur peut avoir l'idée ou reprendre le même type de montage à partir d'une visualisation d'un exemple existant. Donc, dans un outil informatique, différentes solutions de montage peuvent être paramétrées et présentées à l’utilisateur sous forme d'un menu à partir duquel il pourra effectuer son choix. Le dessin du montage sera donc réalisé automatiquement à l'écran au bon endroit. De nombreux systèmes experts (S.E.) ont été développés afin d'aider l'ingénieur de conception dans le traitement des activités d'ingénierie. Ces S.E. apportent une contribution non négligeable aux systèmes de conception. Ceci est lié aux nouvelles méthodes, issues de concepts généraux de l'Intelligence Artificielle (I.A.), utilisées par les S.E. L'utilisation des S.E. au sein d'un système de conception peut se justifier par leur capacité de simulation, jusqu'à un certain point, le raisonnement de l'expert du bureau d'études. Cette simulation est obtenue grâce à l'implémentation de règles expertes liées à la conception et non seulement à des modules de calculs dans lesquels l’exploitation de tout raisonnement non structuré serait difficile. Dans le système ROULEXPERT, les roulements sont modélisés par des classes d'objets et la manipulation des données et des connaissances est assurée à l'aide d'un système expert à base de règles à chaînage avant. Le système ROULEXPERT est un programme fonctionnant sous un environnement MS-WINDOWS. Il est développé à l'aide des outils de programmation orientés objets et du moteur d'inférence de KAPPA-PC. Son architecture globale est donnée par la figure 1. Base de faits 2. MODELISATION DES OBJETS ROULEMENTS D'une manière générale, un système mécanique est un ensemble d'objets appartenant chacun à une famille d'objets. Ces objets sont en liaison entre eux pour former des groupes, des sous-ensembles et enfin l'ensemble final. Chaque famille d'objets peut être structurée en plusieurs sous-familles. L'ensemble de toutes les familles d'objets forme ainsi une bibliothèque d'objets constituée : • des classes d'objets standards des constructeurs. Exemple : roulements, clavettes, rondelles, vis, écrou, etc. • des classes d'objets non standards qui évoluent au fur et à mesure avec la conception du système mécanique. Exemple : arbre de transmission, roue dentée, etc. • des classes d'objets représentant les entités de fabrication complétant la définition géométrique des composants mécaniques. Exemple : perçage, surfaçage, rainurage, taraudage, etc. Dans le développement d'une telle bibliothèque, plusieurs aspects devront être pris en considération : 1. mettre en évidence les entités (ou objets), 2. mettre en évidence les relations traduisant la dépendance fonctionnelle ou l'interaction des entités, 3. tenir compte des effets de changement d'une entité sur une autre entité. Ces effets traduisent les relations ou les contraintes entre les entités qui doivent être gérées d’une manière automatique par le système. 4. éviter la redondance des données afin que la programmation informatique du modèle soit rapide, optimale avec une mise à jour sans difficulté. La nonredondance est une garantie de la fiabilité du système et de la cohérence des informations échangées entre les différentes activités de conception. S. Classe d'objets Moteur d'inférence S. Classe d'objets Base de connaissances Méthodes de calcul Classe d'objets Instance d'objet S. Classe d'objets S. Classe d'objets Instance d'objet Figure 1. : Schéma conceptuel du système ROULEXPERT - 280 - Bases de données MOSIM'01 - du 25 au 27 Avril - Troyes (France) Dans le domaine de choix et de sélection des roulements, Fagan [5] a présenté un système expert à base de règles développé en langage lisp. Dans ce système, les critères de sélection consistent à des connaissances heuristiques dans lesquelles les données sont représentées qualitativement selon des degrés de niveau d’importante différents (Très important, important, moyen, faible et inconnu) Cependant, la représentation des roulements et les définitions des méthodes de calcul sont effectuées d’une manière classique et habituelle sous forme des bases de données statiques et des procédures de calcul définis pour chaque type de roulements. Cette représentation favorise donc la redondance des données et conduit à un style de programmation non optimisé. De plus, le système propose à la fin une solution unique au lieu de multiple solutions afin de permettre à l’utilisateur de choisir un roulement en se basant sur son prix, sa disponibilité sur le marché, etc. Dans le même contexte, Ahluwalia [4] a présenté une autre approche de sélection optimale des roulements. Cette approche est basée sur un outil mathématique (TOPSIS) au lieu d’une représentation heuristique des connaissances. Le système propose un ensemble de solutions classées dans un ordre de convenance « idéal » décroissant. Dans cet ensemble, la solution optimale proposée par le système figure dans la position la plus proche de la solution idéale. Dans le système TOPSIS, Ahluwalia [4] a adopté la même représentation des roulements et les mêmes définitions des différentes méthodes de calcul utilisées par Fagan [5]. Dans le système ROULEXPERT, les roulements sont représentés dans un arbre hiérarchique selon les techniques de la programmation orientée objets. Les figures 2 et 3 montrent respectivement cette classification des objets roulements et leur définition en utilisant l'environnement de programmation orientée objets « KAPPA-PC ». Dans la classe mère, les roulements sont définis par des attributs « ou slots » et des méthodes les plus communes. Dans les sous-classes, s'ajoutent les attributs et les méthodes spécifiques à chacune des sousclasses. Figure 3. Exemple de définition de la classe Roulements 3. REPRESENTATION DES CONNAISSANCES 3.1 Structure des données statiques Les données dites statiques ou invariables, fournis par les constructeurs des roulements dans des catalogues, sont reproduites et enregistrées dans des bases de données. Ces bases de données seront consultées automatiquement par le système pour extraire les données nécessaires à l'avancement d'un projet. La figure 4 montre un exemple de la base des données des roulements rigides à une rangé de billes. 3.2 Modélisation des connaissances dynamiques Dans le choix d'un roulement, il faut tenir compte de plusieurs critères, tels que le type et le sens des charges à supporter, le milieu et les conditions de fonctionnement, la nature du lubrifiant à employer, l'encombrement, la durée de vie, la fréquence de rotation, etc. Dans le système ROULEXPERT, les différents critères sont considérés de deux manières différentes; la manière quantitative et la manière qualitative. Les critères qualitatifs sont classés selon leurs niveaux ou degrés d'importances. Chaque critère possède quatre niveaux : Très Important, Important, Moyen et Faible. Ces critères sont présentés à l'utilisateur, à travers une interface homme machine, dans une fenêtre d'écran dans laquelle il indique le niveau de chaque critère (figure 5). Figure 2. Classes et sous-classes des objets roulements Dans la base connaissances du système ROULEXPERT, les différents critères se présentent sous forme des règles de production de la forme « si antécédents alors conclusions ». La partie «antécédents» de la règle représente le niveau d'importance du critère et la partie « conclusions » donne la liste des roulements répondant au niveau d'importance du critère considéré. Cette liste peut éventuellement être vide. La figure 6 montre un exemple de quelques règles. - 281 - MOSIM'01 - du 25 au 27 Avril - Troyes (France) P_D G_M L_B C_DYN C_STAT L_F V_G V_H M DESIGN 2.50 8.00 2.80 319.00 106.00 4.00 67000.0 80.0 0.00070 60/2.5 3.00 10.00 4.00 488.00 146.00 6.00 60.0 70.0 0.00150 623 4.00 9.00 2.50 540.00 180.00 7.00 63000.0 75000.0 0.00070 618/4 4.00 12.00 4.00 806.00 280.00 12.00 53000.0 63000.0 0.00220 604 4.00 13.00 5.00 975.00 305.00 14.00 48000.0 56000.0 0.00310 624 4.00 16.00 5.00 1110.00 380.00 16.00 43000.0 50.0 0.00540 634 5.00 11.00 3.00 637.00 255.00 11.00 53000.0 63000.0 0.00120 618/5 Figure 4. Exemple de base de données statiques des roulements rigides à une rangé de billes. (Doc. SKF) Figure 6. Exemple de règles de production de la base de connaissances du système. A la fin de la recherche, le système propose un ensemble fini de solutions répondant aux exigences qualitatives imposées par l’utilisateur. L’ensemble de solutions finales est le résultat d’une intersection de différents ensembles contenant chacun les classes de roulements solutions d’un critère particulier. Il peut être vide lorsque le système ne trouvera aucune solution. La figure 7 donne une seule solution de l'exemple traité et présenté par la figure 5. (a) (b) Figure 5. Critères qualitatifs de fonctionnement (a) et de montage (b) imposés par le concepteur /*************************************/ **** RULE: Radiale1 *************************************/ MakeRule( Radiale1, [X|Roulements], X:TypeChargeRadiale #= "Très Importante", SetValue( Global:Types_Radiale, R9, R10a, R11b,R11c, R13, R15 ) ); Figure 7. Solutions du choix du type de roulement proposées par le système R10b, /************************************* **** RULE: Axiale2 *************************************/ MakeRule( Axiale2, [X|Roulements], ( X:TypeChargeAxiale #= "Très Importante" X:EffetChargeAxiale #= Simple ), SetValue( Global:Types_Axiale, R20 ) ); SetRulePriority( Axiale2, 1 ); ) R11a, And /************************************* **** RULE: FoncSilencieux2 *************************************/ MakeRule( FoncSilencieux2, [], Global:FoncSilencieux #= Important, SetValue( Global:Types_FonctSilencieux, R1, R3a, R3b, R4, R7a, R7b, R9 ) ); SetRulePriority( FoncSilencieux2, 1 ); ( Quand il s’agit de plusieurs solutions de classes de roulements proposées par ROULEXPERT dans la l’ensemble final, l'utilisateur défini et confirme son choix. A partir de ce moment, le système propose à l'utilisateur de donner des valeurs quantitatives des charges appliquées sur le roulement, de sa durée de vie souhaitée, de l'encombrement et de la fréquence de rotation (figure 8). Le système envoi des messages aux différentes méthodes de calcul afin de dimensionner et définir la référence d’un roulement fils « ou instance » de la classe choisie. Ces méthodes font appel à des différentes bases de données statiques pour extraire les valeurs de certains paramètres. Ces valeurs sont nécessaires pour le calcul et la visualisation finale des résultats du roulement calculé (figure 9). - 282 - MOSIM'01 - du 25 au 27 Avril - Troyes (France) notre approche ROULEXPERT. dans un système baptisé par Ce système est conçu à l'aide de l'environnement orienté objet « KAPPA-PC » pour : • la classification des différents types de roulements dans des classes et des sous-classes, • la définition des modules de calcul sous forme des méthodes, • la définition d'une base de connaissances sous forme des règles de production pour le choix du type de la classe des roulements répondant aux différents critères de conception qui constituent la base de faits. Figure 8. Données quantitatives du problème REFERENCES [1] K. Mehdi and D. Play, "An Integrated Process for Gearbox Design". Proceeding of the Computers in Engineering Conference and Database Symposium, ASME 1995, Boston, Massachusetts, Sept. 17-20, 1995, pp. 841-850. [2] K. Mehdi "Système intégré de conception des boîtes de transmission par engrenages". Thèse doctorat en mécanique, INSA de Lyon, Mai 1995 - 315p. [3] J. Ahluwalia and all., "Computer - aided Optimum Selection of roller bearings". Computer - Aided Design, Vol. 25 - N° 8, August 1993, pp. 493-499. [4] R.E. Adler and K. Ishu, "DAISIE. Designer's aid for simultanious engineering". International Computer s in Engineering Conference and Exposition, ASME July 30 August 1989, Anaheim California, pp 19-26. [5] M. J. Fagan, "Expert systems applied to mechanical engineering design - experience with bearing selection and application program". Computer Aided Design, Vol. 19 - N° 7, September 1987, pp. 361-367. Figure 9. Caractéristiques des roulements sélectionnés par le système ROULEXPERT après calcul. CONCLUSION La conception d'un système mécanique ou d'une machine nécessite souvent des études théoriques approfondies, des calculs rigoureux et des phases décisionnelles importantes. Le concepteur est généralement confronté aux problèmes de choix et de calcul des éléments de machine. Dans l'article, nous présentons l'apport de l'intelligence artificielle et surtout les systèmes experts d'aide à la décision pour le choix des éléments de machine. Nous avons choisi les roulements comme exemple pour valider - 283 -