GUIZANI 2016 Diffusion
GUIZANI 2016 Diffusion
GUIZANI 2016 Diffusion
THESE DE DOCTORAT
de
L’UNIVERSITE de SFAX
et de
L’UNIVERSITE PARIS-SACLAY
préparée à CentraleSupélec
ÉCOLE DOCTORALE
Sciences mécaniques et énergétiques, matériaux et géosciences - SMEMAG
M. Amir GUIZANI
Approche multi-agents pour la conception optimale des systèmes mécatroniques
Composition du Jury :
Mme. Christine PRELLE, Professeur, Université de Technologie de Compiègne, Présidente
Mme. Nadine PIAT, Professeur, FEMTO-ST, Besançon, Rapporteur
M. Anis CHELBI, Professeur, Ecole Nationale Supérieure d’Ingénieurs de Tunis, Rapporteur
M. Thierry SORIANO, Professeur, Université de Toulon, Directeur de thèse
M. Mohamed Slim ABBES, Professeur, Ecole Nationale d'Ingénieurs de Sfax, Directeur de thèse
M. Mohamed HADDAR, Professeur, Ecole Nationale d'Ingénieurs de Sfax, Membre
M. Jean-Yves CHOLEY, Maître de Conférences, SUPMECA, Membre
M. Moncef HAMMADI, Maître de Conférences, SUPMECA, Membre
M. Maher BARKALLAH, Maître Assistant, Ecole Nationale d'Ingénieurs de Sfax, Invité
Titre : Approche multi-agents pour la conception optimale des systèmes mécatroniques
Abstract : The design of a mechatronic system possible to collectively find an optimal solution
is a multidisciplinary and multi-objective that satisfies the required constraints and
optimization problem. Optimization approaches performance.
currently used for the optimization of
multidisciplinary systems are expensive in The proposed approach is based on a design
computation time, difficult to implement, and process to facilitate collaborative distributed
inflexible with the preliminary design phase, in design of mechatronic systems. This approach
which the objectives and design constraints is applied to the preliminary design of an
change frequently. It is therefore necessary to electric vehicle to illustrate how the use of the
look for new techniques easier to implement multi-agent paradigm helps designers in making
and less expensive, that enable to adapt effective decisions and to achieve an optimal
dynamically a solution due to a change in decision of the overall problem. A comparative
specifications. In this context that this thesis study with traditional optimization methods is
focuses on the development of a multi-agent made to demonstrate the validity and
design approach, based on disciplinary effectiveness of the proposed approach.
knowledge and cooperative behavior; make
Université Paris-Saclay
Espace Technologique / Immeuble Discovery
Route de l’Orme aux Merisiers RD 128 / 91190 Saint-Aubin, France
Remerciements
J’adresse aussi mes remerciements à Mme. Nadine PIAT, Professeur des Universités, à
l’Ecole Nationale Supérieure de Mécanique et des Microtechniques et M. Anis CHELBI,
Professeur de l’enseignement supérieur à l’Ecole Nationale Supérieure des Ingénieurs de Tu-
nis d’avoir accepté la lourde tâche de rapporteur.
Remerciments
Introduction générale 1
Bibliographie 139
2.1 Projection de l’espace des paramètres vers l’espace des objectifs [10] . . . . . 30
2.2 Exemple de front de Pareto pour deux fonctions objectifs [10]. . . . . . . . . 31
2.3 Exemple de la notion de dominance [11]. . . . . . . . . . . . . . . . . . . . . 32
2.4 Méthode de résolution a priori. . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.5 Méthode de résolution a posteriori. . . . . . . . . . . . . . . . . . . . . . . . 34
2.6 Les approches et les méthodes de résolution d’un problème MOO. . . . . . . 37
2.7 Exemple de couplage entre deux composantes disciplinaires D1 et D2 : cou-
plage faible à gauche et fort à droite. . . . . . . . . . . . . . . . . . . . . . . 39
2.8 Formulation d’un problème MDO. . . . . . . . . . . . . . . . . . . . . . . . 40
2.9 Bloc d’analyse détaillé d’un système composé de trois disciplines, avec un
couplage faible entre D1 et D2 et un couplage fort entre D2 et D3 . . . . . . . . 41
2.10 Bloc d’analyse détaillé, avec couplage fort entre les disciplines D1 , D2 et D3 . 41
2.11 Processus de résolution d’un problème MDO. . . . . . . . . . . . . . . . . . 43
2.12 Processus de résolution d’un problème MDO avec reformulation. . . . . . . . 43
2.13 Approche d’optimisation MDF. . . . . . . . . . . . . . . . . . . . . . . . . . 45
2.14 Approche d’optimisation AAO. . . . . . . . . . . . . . . . . . . . . . . . . . 46
2.15 Approche d’optimisation IDF. . . . . . . . . . . . . . . . . . . . . . . . . . 47
2.16 Modèle général des approches multi-niveaux. . . . . . . . . . . . . . . . . . 48
2.17 Les stratégies et les méthodes de résolution d’un problème MDO. . . . . . . . 50
2.18 Hull-consistance : évaluation avant . . . . . . . . . . . . . . . . . . . . . . . 53
2.19 Hull-consistance : propagation arrière . . . . . . . . . . . . . . . . . . . . . 53
2.20 Courbe de validation croisée [12] . . . . . . . . . . . . . . . . . . . . . . . . 61
TABLE DES FIGURES
1 Contexte de la thèse
Face à l’internationalisation des marchés et à la conjoncture économique actuelle, chaque
industrie se doit d’être la plus compétitive possible en renouvelant sans cesse sa gamme de
produits. Cependant, ce renouvellement n’a de sens que si le nouveau produit est proposé au
bon moment aux clients et par conséquent s’il est fréquent. Pour assurer le suivi des fluc-
tuations des marchés et se distinguer ainsi de ses concurrents, l’industrie en question se doit
d’adopter de nouvelles méthodes de conception bien sûr moins coûteuses en termes finan-
ciers mais aussi moins coûteuses en termes de temps d’étude. Ces exigences du marché sont
d’autant plus difficiles à satisfaire qu’à l’inverse, les produits à concevoir sont de plus en
plus complexes et doivent être de plus en plus performants pour répondre, entre autres, aux
nouvelles normes en termes de pollution et de sécurité ou encore à l’exigence accrue des
consommateurs en termes de confort et d’assistance. Afin de concilier toutes ces contraintes
de conception, de nouveaux systèmes dits systèmes mécatroniques sont apparus. Cependant,
si leur pluridisciplinarité permet d’envisager des solutions originales qui n’avaient jusqu’alors
pas été explorées ou autorisées par de nouvelles avancées technologiques, celle-ci demande
également un changement de méthode dans le processus de conception. En effet, même si
auparavant les systèmes complexes pouvaient utiliser différentes technologies issues de dif-
férents domaines de la physique, ils relevaient plus d’une juxtaposition de disciplines plutôt
que d’une réelle synergie. L’approche classique de conception consistait alors à adopter une
démarche d’ingénierie séquentielle où les savoir-faire des spécialistes étaient relativement
cloisonnés. Puisque, par nature, les systèmes mécatroniques sont le lieu d’interactions entre
différentes technologies, l’approche séquentielle de conception n’est plus appropriée pour
assurer une synergie entre les disciplines de la mécatronique (mécanique, électronique et in-
formatique temps réel). En effet, une collaboration est nécessaire entre les différents acteurs
afin d’éviter tout problème d’interfaçage entre les différentes parties du système. D’autres
concepts, tels que le cycle en V et le cycle en spirale, sont ainsi adoptés pour favoriser
la conception collaborative. Mais, ces concepts ne fournissent aucune méthode qui permet
de résoudre le problème de communication entre les outils de conception ou l’optimisation
multi-disciplinaire du système.
1
et par conséquent des méthodes de modélisation différentes. Le domaine de l’électronique
inclut de l’analogique et du numérique comme il inclut les processus continus et événe-
mentiels. Le domaine de la mécanique est concerné par la modélisation géométrique 3D et
le comportement cinématique et dynamique des mécanismes. Ensuite, l’intégration entre la
mécanique et l’électronique a pour conséquence de faire interagir des phénomènes physiques
différents et par conséquent des couplages entre : structure, fluide, électrique, thermique, élec-
tromagnétique, vibratoire, etc. Un effort supplémentaire est donc nécessaire pour identifier
les grandeurs physiques communes aux phénomènes couplés et modéliser ces interactions
pour pouvoir résoudre le problème et simuler le comportement du système.
L’optimisation aussi est une phase importante dans tout processus de conception et en
particulier l’optimisation multi-disciplinaire en mécatronique. En effet, l’optimisation multi-
disciplinaire permet aux concepteurs d’incorporer les effets de chacune des disciplines en
même temps. L’optimum global ainsi trouvé doit être meilleur que les configurations trou-
vées en optimisant chaque discipline à part. C’est à ce niveau qu’apparaît l’importance de
l’intégration synergique entre les disciplines de la mécatronique. Cependant, le problème
d’optimisation multi-disciplinaire est plus compliqué et il entraîne souvent un surcoût au
niveau du temps de calcul.
2 Problématique de la thèse
La conception d’un système mécatronique est un problème d’optimisation multi-disciplinaire
et multi-objectif. Les approches d’optimisation actuellement utilisées, pour l’optimisation des
systèmes multi-disciplinaires, sont coûteuses en temps de calcul, difficiles à mettre en œuvre
et non-flexibles avec la phase de conception préliminaire, où les objectifs et les contraintes
de conception changent fréquemment. D’où la nécessité de chercher une nouvelle technique
plus simple à mettre en œuvre, moins coûteuse et qui permet d’adapter dynamiquement une
solution suite à un changement des spécifications.
Notre proposition pour la conception optimale des systèmes mécatroniques est d’utiliser
l’approche multi-agents. Cette approche est considérée comme un développement émergent
d’une combinaison de tendances, y compris l’intelligence artificielle, la programmation orien-
tée objet et des systèmes à base d’objets simultanés. Elle est déjà utilisée dans plusieurs
applications industrielles pour traiter les problèmes d’analyse distribuée et la conception col-
laborative tels que : le développement de logiciels, la fabrication intelligente, et les systèmes
de transport intelligents.
3 Objectifs de la thèse
Cette thèse se focalise sur le développement d’une approche multi-agents de conception
qui, se basant sur les connaissances disciplinaires et par un comportement coopératif, permet
de trouver collectivement une solution optimale qui satisfait les contraintes et les perfor-
mances demandées. Cette approche est basée sur un processus de conception pour faciliter la
conception collaborative distribuée des systèmes mécatroniques. L’approche développée est
appliquée à la conception préliminaire d’un véhicule électrique pour illustrer comment l’uti-
2
lisation du paradigme multi-agent aide les concepteurs à prendre des décisions efficaces et
de parvenir à une décision optimale de l’ensemble du problème. Une étude comparative avec
les méthodes classiques d’optimisation est faite afin de démontrer la validité et l’efficacité de
l’approche proposée.
4 Organisation du mémoire
Pour répondre à ces objectifs, le manuscrit de cette thèse s’organise de la manière sui-
vante :
Le deuxième chapitre présente une analyse synthétique des méthodes existantes pour
supporter les enjeux liés à la conception des systèmes mécatroniques, plus particulièrement
la problématique d’optimisation. Nous avons montré qu’il existe deux approches classiques
pour traiter ce type de problème. La première approche l’aborde d’une manière globale, en
englobant l’ensemble des données et des modèles dans une unique fonction. Des techniques
d’optimisation multi-objectif servent ensuite à résoudre les conflits. À l’inverse, la seconde
approche cherche à utiliser la structure du problème pour le décomposer en plusieurs sous-
problèmes. Dans cette seconde approche, on cherche des solutions aux conflits en utilisant
les relations entre les modèles.
Nous avons montré que l’utilisation de l’une de ces deux approches pour la résolution d’un
problème d’optimisation multi-disciplinaire nécessite un nombre important d’évaluations des
fonctions objectifs ce qui rend ces approches coûteuses en terme de coût de calcul et parfois
empêche la convergence des algorithmes utilisés à l’intérieur de ces approches. Afin de sur-
monter ces problèmes, nous avons discuté dans la dernière partie de ce chapitre une technique
de modélisation de substitution qui consiste à remplacer une grande partie de ces évaluations
par des approximations construites à partir des modèles simples appelés méta-modèles.
Dans le troisième chapitre, nous avons commencé par une présentation des systèmes
multi-agents ainsi que les différents problèmes liés à leurs structures organisationnelles. En-
suite, nous avons présenté notre approche basée sur les paradigmes multi-agents pour la
conception optimale des systèmes mécatroniques. Enfin, nous avons détaillé le processus
de coordination utilisé pour faciliter la conception collaborative distribuée ainsi que la mise
en œuvre de l’approche multi-agents avec la plateforme de développement JADE.
L’approche adoptée est validée, dans le quatrième chapitre, par une application à un cas
de conception préliminaire d’un véhicule électrique. Ainsi, une modélisation et des simula-
tions de niveau système dans l’environnement Modelica sont présentées.
Ce mémoire se termine avec des conclusions qui rappellent les objectifs de la thèse et
3
les résultats proposés ainsi que des perspectives qui montrent les limites de l’approche et les
améliorations qui peuvent être apportées.
4
Chapitre 1 : Introduction
sur la conception de
systèmes mécatroniques
Chapitre 1
1.1 Introduction
L’apparition des systèmes mécatroniques depuis une vingtaine d’années peut être consi-
dérée comme une révolution pour le monde industriel. En effet, l’utilisation de ces systèmes
s’est rapidement généralisée et influence actuellement la quasi-totalité des secteurs de l’in-
dustrie. En parallèle, la conception de ces systèmes est devenue de plus en plus complexe du
fait de leur caractère pluridisciplinaire [14, 15]. Dans ce contexte, ce chapitre a pour objectif
d’introduire la discipline d’ingénierie mécatronique.
1.2 Historique
Avant les années cinquante, les systèmes complexes sont essentiellement considérés comme
des ensembles électromécaniques [1]. En 1950, les semi-conducteurs sont apparus avec le dé-
veloppement de l’électronique de commande et de puissance. Pendant les années 60-70, les
calculateurs fiables sont apparus permettant la conception de systèmes de contrôle-commande.
Ces systèmes sont plus performants, plus flexibles et plus fiables puisqu’ils sont program-
mables. Les problèmes liés à l’intégration des systèmes contrôle-commande avec les en-
sembles électromécaniques a donné naissance à la discipline de la mécatronique.
Le terme mécatronique (mechatronics en anglais) a été inventé en 1969 par l’ingénieur Ja-
6
ponais TETSURO MORI [16] de la compagnie japonaise YASKAWA Electric Corporation 1 ,
fabricant de composants et systèmes d’automatismes, pour désigner le contrôle des moteurs
électriques par ordinateur. Il a été déposé par cette entreprise comme marque internationale
en 1969, marque enregistrée en 1971. Ce mot ayant une portée générale et étant utilisé de
plus en plus largement dans le jargon technique, Yaskawa abandonna ses droits en 1982 [17].
Au début des années 80, la mécatronique est définie comme étant une discipline combi-
nant l’électronique et la mécanique (la mécanique dans son sens large qui contient la ther-
mique, l’hydraulique, etc.). Les années 1990 ont vu un développement important de l’utilisa-
tion du terme avec de très nombreuses propositions de définitions et une évolution sensible
de son périmètre et de son sens.
On pourra se référer utilement au guide VDI 2206 [18] pour plus de détails sur l’his-
torique du terme et son évolution d’une description technique (incorporation de composants
électroniques dans les mécanismes) vers une description en terme d’association de disciplines
(ingénierie mécanique et ingénierie électronique) et de processus (conception et fabrication)
pour aboutir au sens actuel associant une méthodologie/démarche d’ingénierie et une des-
cription technique/fonctionnelle d’un produit.
Par ailleurs, plusieurs définitions sont apparues, nous citons, de manière non-exhaustive,
certaines d’entre-elles :
En France, le terme mécatronique est apparu pour la première fois dans le dictionnaire
Petit Larousse dans son édition 2005 et une définition normalisée a été publiée en novembre
2008.
1. "Yaskawa Electric Corporation" est une entreprise japonaise crée en 1915 et dont le siège se trouve dans
la ville de Kitakyushu, Prefecture de Fukuoka (http ://www.yaskawa.co.jp/en).
7
Le petit Larousse définit la mécatronique comme étant une : « Technique industrielle consis-
tant à utiliser simultanément et en symbiose, la mécanique, l’électronique, l’automatisme et
l’informatique pour la conception et la fabrication de nouveaux produits ».
En novembre 2008, la norme française NF E01-010 2 a donné sa première définition pour le
terme mécatronique comme étant : « Une démarche visant l’intégration en synergie de la mé-
canique, l’électronique, l’automatique et l’informatique dans la conception et la fabrication
d’un produit en vue d’augmenter et/ou d’optimiser sa fonctionnalité » en précisant que l’ob-
jectif de la mécatronique est d’aboutir à une valeur ajoutée supérieure à la simple somme des
valeurs ajoutées des fonctions prises séparément, c’est-à-dire qu’il ne s’agit pas seulement
d’assembler les composants de différents domaines technologiques, mais il est nécessaire de
considérer le système mécatronique dans sa fonctionnalité globale pendant tout le cycle de
conception [22].
D’une façon générale, les définitions liées au terme mécatronique mettent en évidence les
aspects suivants :
Selon la norme NF E01-010 l’intégration mécatronique se fait suivant deux niveaux phy-
siques et fonctionnels :
Suivant les niveaux d’intégrations [1], on peut aussi distinguer entre les composants méca-
troniques qui ont une intégration faible ou moyenne et les produits mécatroniques qui sont
caractérisés par une intégration physique et fonctionnelle élevée :
8
F IGURE 1.1 – Pluridisciplinarité de la mécatronique [1].
Généralement, les systèmes mécatroniques sont classifiés selon leurs caractéristiques com-
portementales en trois classes [23] :
• Système automatisé ;
• Système mécatronique ’intelligent’ ;
• Système mécatronique en réseau.
Un système automatisé est caractérisé par un système de régulation qui lui permet de s’adap-
ter aux changements prévisibles de son environnement de façon préprogrammée. Une ma-
chine d’usinage à commande numérique classique est un exemple de système automatisé.
9
d’atteindre des objectifs donnés dans des conditions d’incertitude de manière imprévisible. Il
est doué d’une flexibilité de régulation qui le rend capable de répondre à des fréquents chan-
gements dans son environnement sans être reprogrammé. Le système de transport personnel
Segway (ou Gyropode) est un exemple de système mécatronique intelligent, il est équipé
d’un système de stabilisation gyroscopique qui permet de réguler le système malgré les chan-
gements imprévisibles dans son environnement.
10
conception en une description complète d’un système (produit) physique satisfaisant les exi-
gences du marché. D’après Pahl et al. [26], un processus de conception est composé par les
phases suivantes : identification des besoins du marché, analyse du problème, formulation
de l’énoncé de projet, définition des spécifications du produit à concevoir, développement
conceptuel, conception de forme (embodiment design), conception préliminaire, conception
détaillée, conception de l’assemblage, et l’analyse du cycle de vie et l’évaluation.
11
Globalement, les phases principales identifiées sont la conceptualisation, le développe-
ment, la production/réalisation, l’utilisation et le retrait de service [28].
Selon la norme ISO/IEC-15288 (Figure 1.3), le processus de conception des produits est
constitué de deux étapes : l’étape des concepts (Concept stage) et l’étape de développement.
L’étape des concepts, selon le US Department of Energy (DoE), est constituée des phases :
avant-projet, planification pré-conceptuelle et le ’conceptual design’. L’étape de développe-
ment est constituée d’une phase de conception préliminaire et d’une phase de conception
détaillée. Au final, le processus de conception dans ces phases est basé sur l’élaboration des
modèles, leur vérification et leur validation [7].
12
Les avantages de ce modèle sont de deux natures. D’un point de vue technique, le pro-
cessus est clair et systématique. Les informations sont très bien organisées, transmissibles et
réutilisables. D’un point de vue gestion de projet, il fournit un cadre de référence pour la pla-
nification et le contrôle ainsi qu’une bonne visibilité des progrès et des résultats. Malgré ces
avantages, ce modèle de cycle ne convient pas à la conception des systèmes complexes, car
la conception de ces systèmes n’est pas séquentielle. Il est difficile de définir tous les besoins
dès le début du projet. De plus, la validation est tardive.
1.5.1.2 Cycle en V
Le cycle en V [31] a été développé en 1986 par Goldberg suite aux problèmes de réac-
tivité du modèle en cascade. Aujourd’hui, c’est le cycle le plus connu et le plus utilisé dans
la conception de systèmes. Il permet de détecter très tôt d’éventuelles anomalies et donc de
limiter le retour aux phases précédentes.
Comme il est indiqué dans la Figure 1.5, le cycle en V se compose de deux branches :
une branche descendante analogue au modèle en cascade et une branche montante permet
une analyse et une vérification avant l’intégration des composants : elle renvoie les spéci-
fications de la partie descendante sur les phases en vis-à-vis de la partie montante. De la
même manière, les phases de la branche montante signalent les défauts détectés/écarts aux
spécifications pour chaque phase de la branche descendante.
1.5.1.3 Le modèle en b
Le cycle en b [32] est une reformulation du cycle en cascade. Ce modèle de cycle a été
élaboré en partant du constat que les systèmes complexes nécessitaient beaucoup de mainte-
nance. Cette dernière couvre environ les deux-tiers de modèle de cycle de vie. Le principe de
13
base est la réutilisation de scénarios de tests établis pendant la phase de développement (pro-
cédures de mise en exploitation, tests de non-régression). C’est ici que réside d’ailleurs son
principal intérêt : on prévoit, lors de la phase projet, la réutilisation des tests et des procédures
de mise en exploitation.
Le cycle en spirale est un modèle générique de cycle de vie évolutif qui a été proposé en
1988 par Barry W. Boehm [5]. Comme il est présenté dans la Figure 1.7, ce cycle est divisé
en quatre quadrants [33] :
Ce cycle reprend les différentes phases du cycle en V, mais en implémentant des versions
successives. L’avantage de ce cycle est d’avoir progressivement un système (produit) de plus
en plus complet, au fur et à mesure que les informations sont disponibles. Sa mise en œuvre
demande de grandes compétences et devrait être limitée aux grands projets innovants à cause
de l’importance qu’il accorde à l’analyse des risques. L’un des inconvénients majeurs de ce
type de modèle est qu’il nécessite que l’utilisateur soit régulièrement présent.
14
F IGURE 1.7 – Cycle de conception en spirale [5].
Les deux premières branches sont abordées simultanément durant la phase de capture
des besoins et la phase d’analyse. La dernière branche consiste à réunir les deux branches
précédentes, permettant de mener la réalisation et la livraison du produit (ou système). L’in-
convénient majeur de ce type de modèle réside dans la difficulté de mise en œuvre dans
le développement de systèmes complexes et dans le cadre de grands projets. La validation
nécessite de faire valider, par le client, le livrable étape par étape.
15
F IGURE 1.8 – La méthode 2TUP [6].
parties séparées par un axe horizontal représentant l’axe du temps (Figure 1.9) :
• Partie basse : correspond à tous les éléments matériels qui sont au contact avec l’envi-
ronnement ;
• Partie haute : correspond à tout ce qui est immatériel et qui n’a pas d’effet direct avec
l’environnement (les idées, les données, les modèles, les savoirs, etc).
16
Maintenant, que nous avons vu les principaux cycles de conception, nous nous intéressons
aux méthodes sur lesquelles peuvent s’appuyer ces différents cycles.
Elle dispose comme point de départ les spécifications fonctionnelles du système à conce-
voir, puis les composants de base (résistances, transistors, masse, ressort, etc.) sont ajoutés et
liés successivement pour constituer des sous-systèmes et des ensembles plus compliqués.
L’avantage de cette méthode est sa simplicité pour construire des structures complexes.
Cependant, le système global ne pourra être validé qu’à la fin de la modélisation quand toutes
ses parties seront reliées. Ceci a pour conséquence de ne détecter les faiblesses du système
que trop tard, après avoir investi un temps considérable en modélisation. La conception clas-
sique en mécanique ou en électronique l’utilise couramment.
Cette approche se base sur une démarche de conception allant du plus abstrait jusqu’au
plus détaillé. Le point de départ est un modèle descriptif des attentes de l’utilisateur, puis le
modèle est enrichi d’un ensemble de fonctions qui couvre les spécifications du système. Le
modèle est ainsi successivement partitionné et raffiné jusqu’à aboutir à sa définition détaillée.
Dans la section suivante, nous présentons les outils les plus fréquemment utilisés en
conception des systèmes mécatroniques.
17
1.6 Les outils de modélisation et de simulation
La conception d’un système mécatronique est un processus délicat et long, il existe plu-
sieurs langages et outils de modélisation et qui permettent la conception et la validation de ce
processus. Parmi les langages et les outils les plus employés en conception mécatronique, on
trouve :
1.6.1 SysML
SysML (Systems Modeling Language) [7, 34] est un langage standard de modélisation
utilisé dans le domaine de l’ingénierie système. Il est développé par un groupe piloté par
International Council on Systems Engineering (INCOSE). SysML est basé sur le profil UML
(Unified Modeling Language), un langage déjà très connu pour le développement des appli-
cations informatiques. Ce langage permet de couvrir les différentes phases de conception des
systèmes complexes. SysML est basé sur une modélisation graphique utilisant trois types de
diagrammes :
La Figure 1.10 montre la composition de ces différents types des diagrammes ainsi une com-
paraison entre les diagrammes SysML et les digrammes UML. SysML permet de gérer une
grande partie des activités de conception. À titre d’exemple, pour le développement des pro-
duits, Christophe et al. [35] ont montré la capacité de ce langage à intégrer au niveau concep-
tuel des modèles de connaissance. En termes de spécification d’exigences, SysML permet, à
partir du cahier des charges, de transcrire les exigences sous forme de diagrammes et de blocs
ce qui aide à définir facilement les concepts du système à concevoir et à tracer rapidement
les modèles déployés avec les exigences correspondantes. En terme de modélisation logique,
SysML permet de décrire les architectures logiques du système et de définir des diagrammes
de spécification des liens (association, composition, agrégation, etc.) entre les concepts. En
terme de modélisation physique, SysML permet d’une part de définir l’architecture physique
du système et d’autre part de décrire les lois physiques à associer aux composants et sous-
systèmes en définissant les flux échangés (signaux, énergies, etc.) et les attributs physiques
(surface, masse, etc.).
Par contre, SysML possède deux inconvénients majeurs, il ne permet pas de :
Malgré les limitations de ce langage pour analyser les systèmes physiques, il peut être couplé
en aval avec des outils de modélisation et simulation [36] tels que les langages (Bond-Graph,
Modelica, Simulink, etc.). Par exemple [37] ont proposé de développer le profile Modeli-
caML et de l’intégrer avec SysML pour pouvoir simuler les modèles développés dans SysML
avec le langage de modélisation et de simulation Modelica.
18
F IGURE 1.10 – Les diagrammes SysML [7].
1.6.2 Bond-Graph
L’outil Bond-Graph, appelé aussi graphe de liaisons ou graphe à liens, est une représen-
tation graphique d’un système dynamique physique (mécanique, électrique, pneumatique,
hydraulique, etc) qui a été introduit par Paynter [38]. Il est constitué par des liens qui re-
présentent les transferts des flux d’énergie ou d’information dans le système. Le graphe de
liaison peut être considéré comme un outil mathématique utilisé en ingénierie des systèmes.
Il permet de modéliser un système piloté afin d’optimiser son dimensionnement et la concep-
tion de sa partie de commande. Cet outil possède plusieurs avantages :
Par contre, l’inconvénient majeur du Bond-Graph, est que cette méthode est un peu délicate
au niveau représentation et nécessite un effort supplémentaire par le concepteur pour effec-
tuer la modélisation correcte. La Figure 1.11 montre d’un système masse-ressort avec son
équivalent Bond-Graph.
19
F IGURE 1.11 – Modélisation d’un système masse-ressort par Bond-graph [3].
1.6.3 Modelica
Modelica [8, 39] est un langage orienté objet de modélisation et de simulation des sys-
tèmes complexes. Il est basé sur une description mathématique des modèles. Il propose éga-
lement une modélisation graphique des modèles à l’aide des diagrammes blocs disponibles
dans sa bibliothèque (Figure 1.12). La technique de modélisation est multi-ports et peut être
acausale (les ports d’un modèle n’ont pas besoin d’être déclarés comme entrée ou sortie). Les
modèles créés sont réutilisables, ce qui aide à créer des bibliothèques de composants.
20
mais il ne supporte pas la modélisation fonctionnelle et la modélisation graphique 3D. Mais,
suite à l’intégration de ce langage dans l’environnement de la Conception Assistée par Ordi-
nateur CAO (par exemple CATIA V6), en plus de l’intégration de la modélisation fonction-
nelle, la société Dassault Systèmes présente déjà une plate-forme intégrée pour la conception
multi-niveaux de systèmes complexes. Pourtant, il reste à faire des développements pour as-
surer la continuité de la simulation multi-physique entre le niveau système et le niveau détaillé
des Sous-systèmes et des composants.
1.6.4 Simulink
Simulink [7, 40] est un logiciel de simulation multi-domaine et de modélisation de sys-
tèmes multi-physiques. Il fournit une plateforme graphique et un ensemble de bibliothèques
contenant des blocs (Figure 1.13) qui permettent la modélisation, la simulation, l’implémen-
tation et le contrôle de systèmes de communication et de traitement du signal. Simulink est
intégré à MATLAB [41], ce qui permet l’accès aux nombreux outils de développement algo-
rithmique, de visualisation et d’analyse de données de MATLAB.
Simulink permet de simuler des problèmes physiques de type : équations différentielles ordi-
1.6.5 Comsol
Comsol [7] est un logiciel de simulation des problèmes définis par des équations aux
dérivées partielles (PDEs) basé sur la méthode des éléments finis. Ce logiciel a été développé
21
au début comme une boîte à outils ’Toolbox’ de Matlab, mais aujourd’hui il dispose de son
propre environnement de modélisation. Il permet de coupler différentes PDE, de manière à
définir différents phénomènes multi-physiques. Quand le modèle implémenté est de grande
taille, Comsol est contraint par le coût de calcul, comme tout logiciel de calcul par éléments
finis.
Ces outils ont été évalués suivants certains critères tels que :
Dans cette étude, les langages de modélisation Modelica, VHDL-AMS et Bond-Graph ont
été évalués à travers les logiciels Dymola, Simplorer et 20Sim respectivement.
5. http ://www.pole-moveo.org/pdf-projets-das/O2M-A.pdf
22
Cette étude comparative montre qu’aucun logiciel ne satisfait tous les critères d’évalua-
tion à 100 %. Il existe des critères d’évaluation tels que les liens avec d’autres logiciels
externes sont bien satisfaits par certains outils, mais ces outils sont limités de point de vue
couplages multi-physiques assurés et domaines physiques traités.
23
La majorité des formats d’échange sont définis en respectant la syntaxe XML. Parmi les for-
mats d’échanges qui existent, nous citons :
– L’approche modulaire est une technique qui consiste à diviser le système complexe en
des sous-systèmes (ou modules). Le but de cette division est d’avoir des sous-systèmes
simples que nous pouvons les simulés avec des outils de simulation spécifiques dis-
ponibles. L’intégration des modules et leur simulation peuvent être assurées par la co-
simulation.
Bien que la co-simulation résolve en grande partie le problème d’interopérabilité entre les
simulateurs, la difficulté réside essentiellement dans sa mise en œuvre qui est en lien avec les
problèmes de communication entre les simulateurs, leur synchronisation, le temps de calcul,
etc. De plus, le processus de co-simulation ne permet pas d’avoir une optimisation multi-
disciplinaire vue que la continuité de communication entre les simulateurs ne peut pas être
assurée durant tout le processus d’optimisation.
En résumant, il n’existe pas un format d’échange standard unique pour tout le cycle
de conception. En effet, au niveau détaillé de conception le format d’échange STEP est
bien employé, par contre au niveau conceptuel, des formats basés sur le langage XML sont
mieux adaptés. Pour la simulation multi-physique ou multi-disciplinaire, la technique de co-
simulation résout un grand problème lié à l’interopérabilité entre les simulateurs, mais, elle
n’offre pas la flexibilité nécessaire au concepteur qui le permet d’intervenir pendant la simu-
lation pour modifier ou analyser les paramètres de simulation. De plus, la co-simulation n’est
24
pas bien adaptée pour coupler des simulateurs de différents niveaux de modélisation tels que
le cas de simulateurs multi-domaines et les simulateurs des éléments finis. Enfin, pour des
processus d’optimisation multi-disciplinaire, l’interopérabilité par co-simulation n’est pas
une solution pratique.
Dans les différents niveaux de conception et par rapport aux différentes disciplines, l’op-
timisation d’un système mécatronique est une tâche un peu complexe vu qu’elle est multi-
physique et que les solutions obtenues ne convergent pas toujours vers l’optimum global
(problème d’optimisation locale). Ainsi, il est nécessaire d’avoir un couplage entre les diffé-
rents niveaux de conception et entre les différentes disciplines pour converger vers l’optimum
global.
De plus, plus que la complexité du système mécatronique augmente, plus la taille des
domaines de recherches de l’optimum augmente et la tâche d’optimisation devient plus com-
plexe. En conséquence, le coût et le temps de calcul augmentent vu qu’ils se basent sur des
boucles itératives. La majorité des algorithmes d’optimisation convergent vers des résultats
fiables si le nombre des variables de conception est petit, mais l’efficacité de ces algorithmes
diminue en fonction du nombre des variables du système à concevoir. Une étude détaillée des
différents algorithmes d’optimisation est présentée dans la suite de ce travail [43].
25
1.9 Conclusion
Dans ce chapitre, nous avons commencé par une généralité sur les systèmes mécatro-
niques (historique, définitions et différentes applications). Nous avons vu qu’il existe de nom-
breuses définitions liées au terme mécatronique qui diffèrent dans leurs notions, mais qui se
rencontrent sur un point commun : celui de l’intégration synergique entre les différentes dis-
ciplines (mécanique, électrique, automatique, informatique, etc.) pour concevoir et fabriquer
des systèmes fiables et performants. Par la suite, nous avons parcouru les différentes mé-
thodes de conception et les outils de modélisation les fréquemment utilisés pour développer
ces systèmes.
Enfin, les enjeux liés à la conception d’un système mécatronique ont été présentés. Une
analyse de ces enjeux montre que la complexité de la conception mécatronique provient d’une
complexité organisationnelle liée aux méthodes de modélisation et d’une complexité tech-
nique liée aux outils de modélisation. La difficulté de l’optimisation d’un système mécatro-
nique est liée à l’interaction de ces deux complexités.
Une synthèse des méthodes existantes pour l’optimisation de la conception des systèmes
mécatroniques est présentée dans le chapitre suivant.
26
Chapitre 2 : Analyse
synthétique des méthodes
existantes pour
l’optimisation des systèmes
mécatroniques
Chapitre 2
2.1 Introduction
Ce chapitre est organisé comme suit, tout d’abord nous présentons les techniques d’op-
timisation multi-objectif MOO (Multi-Objective Optimisation), qui vont de pair avec la pre-
mière approche. Par la suite nous présentons une synthèse sur quelques techniques d’op-
timisation distribuées dans laquelle nous nous intéressons particulièrement aux approches
d’optimisation multi-disciplinaire MDO (Multi-Disciplinary Optimisation) ainsi que l’opti-
misation combinatoire à base de problèmes de satisfaction de contraintes CSP (Constraint
Satisfaction Problem) qui sont adaptées avec la seconde démarche.
L’utilisation de l’une de ces deux approches pour l’optimisation d’un problème multi-
disciplinaire nécessite un grand nombre d’évaluations des fonctions objectifs ce qui rend ces
approches coûteuses en terme de coût de calcul. L’objectif de la dernière partie de ce cha-
pitre est de remplacer une grande partie de ce nombre d’évaluations par des approximations
construites à partir des modèles appelés modèles de substitution ou méta-modèles afin de
réduire le temps de calcul.
28
2.2 L’optimisation multi-objectif (MOO)
Le traitement du problème de conception d’un système mécatronique d’une façon globale
permet de définir un ensemble d’entrées/sorties ayant des objectifs pour lesquels on se fixe
une seule fonction d’évaluation. Par conséquent, l’utilisation de l’optimisation multi-objectif
est adéquate pour résoudre ce type de problème.
Généralement, les fonctions objectifs fi sont définies de façon à ce qu’elles soient mini-
misées.
29
F IGURE 2.1 – Projection de l’espace des paramètres vers l’espace des objectifs [10]
Parmi les difficultés des problèmes multi-objectifs, on peut noter la non-existence d’une
solution optimale. D’une manière générale, il n’existe pas une solution meilleure que toutes
les autres, mais le décideur peut juger uniquement si une solution est préférable à l’autre
selon certains critères [11].
– Si l’optimisation peut garantir l’existence d’une solution optimale, alors elle est unique
(non adaptée à la recherche des solutions alternatives). Ainsi pour toutes les situations,
le problème nécessite d’être résolu plusieurs fois.
30
– La mise en place d’une définition des objectifs de l’utilisateur est toujours compliquée.
D’une façon générale, il est difficile de définir dès le début les critères de recherche.
De ce fait, la monocriticité est très sensible à l’ensemble des paramétrages (définition
des contraintes, définition des objectifs, passage à une fonction de coût unique, etc.).
F IGURE 2.2 – Exemple de front de Pareto pour deux fonctions objectifs [10].
Pareto optimale
Une solution est dite Pareto optimale sur un ensemble d’objectifs si aucune amélioration
n’est possible sur l’un de ses objectifs sans la dégradation d’au moins d’un autre [46].
Soit f (x) = ( f1 (x), f2 (x), ..., fn (x)) un ensemble d’objectifs à minimiser, on dit que x∗ ∈ E
(un vecteur de variables dans un espace admissible) est une solution dominante par rapport à
un autre vecteur x, si ∀ j, f j (x∗ ) ≤ f j (x) et ∃ i tel que :
31
Les fronts de Pareto
32
• une solution qui est dominée par une solution de rang i est dite de rang i + 1.
Dans l’exemple de la Figure 2.3, les solutions A, B et C sont de rang 0 ; les solutions D et E
sont de rang 1 et la solution F est de rang 2.
La méthode de comparaison des solutions à travers les fronts de Pareto est souvent plus
efficace que la technique d’agrégation de paramètres. Néanmoins, elle présente certaines li-
mites surtout lorsque la taille du problème d’optimisation est grande alors dans ce cas le
parcours des fronts ainsi que la représentation graphique deviennent difficiles.
Ces trois approches d’optimisation génèrent à la fois des besoins en termes de résolution
et de représentation des résultats. Et par conséquent, elles sont basées sur des algorithmes de
résolutions assez différents.
Tel que décrit précédemment dans le paragraphe 2.2.2, après la pondération et l’agréga-
tion des objectifs, on se prive d’une partie des solutions ainsi que d’une amélioration de la
compréhension du problème à résoudre. Mais une fois que le problème d’optimisation multi-
objectif est formulé sous forme d’un problème mono-objectif, tous les algorithmes d’optimi-
33
F IGURE 2.4 – Méthode de résolution a priori.
34
sation traditionnels (la recherche tabou, le gradient, le recuit simulé, etc) peuvent être utilisés
pour le résoudre.
D’une façon générale, dans le cas des problèmes d’optimisation avec plusieurs interdé-
pendances, il est préférable d’utiliser les méta-heuristiques basées sur les approches stochas-
tiques, telles que : Monté Carlo et le recuit simulé. Ces algorithmes sont plus robustes aux
minimas locaux et aux discontinuités de l’espace de recherche. Pour une description détaillée
de ces algorithmes, le lecteur peut consulter [48].
Les méthodes qui traitent ce genre de problème sont classées principalement en deux ca-
tégories [10, 11] :
Elles sont basées sur des opérateurs nécessaires pour la recherche des solutions domi-
nantes des différents objectifs pris séparément. À titre d’exemple, les algorithmes génétiques
à sélection parallèle favorisent l’évolution simultanée de nombreuses populations, où chaque
population est caractérisée par des modes de sélection qui permettent l’optimisation d’un
objectif différent. En favorisant la recherche d’une solution qui optimise d’une manière indé-
pendante chaque objectif, et en s’appuyant sur les échanges entre les différentes populations,
ces méthodes peuvent aboutir à des bonnes solutions au sens de Pareto.
À l’inverse, la recherche d’une solution dans les méthodes Pareto ne favorise pas la re-
cherche d’un seul critère, mais celle d’un ensemble de solutions non dominées, en utilisant
une mémoire d’individus dominants. Dans ce cas, les solutions sont mémorisées et réutili-
sées pour attirer l’ensemble de la population vers les fronts. Néanmoins dans ce mode de
résolution, il est nécessaire d’ajuster les paramètres à l’intérieur de l’algorithme génétique
afin d’assurer l’équilibre entre l’exploitation des solutions identifiées comme dominantes et
l’exploration de nouvelles solutions.
35
2.2.3.3 La résolution par décision interactive
Ce mode de résolution est le plus varié puisqu’il a été utilisé pour aborder deux types de
problèmes, où :
Afin de traiter le premier cas, on peut utiliser les méthodes d’optimisation traditionnelles
pour déterminer un point de départ que l’on adapte par la suite selon les interactions avec le
décideur/concepteur. Dans la plupart des cas, ce point de départ est une solution non dominée
au sens de Pareto que l’on peut trouver à partir d’une première agrégation de paramètres.
Ensuite, la logique de ce mode de résolution nécessite l’utilisation des analyses de sensibilité
autour de ce point afin d’aider le décideur à modifier ses contraintes et/ou les facteurs de
pondération (les poids) des paramètres de la fonction d’agrégation et par conséquent à affiner
sa recherche en déplaçant de point à un autre pour trouver une solution que le satisfait. C’est
le cas par exemple de la méthode NIMBUS [51] et iMOODS [52].
Comme nous avons expliqué précédemment les algorithmes multi-objectifs offrent un en-
semble important de solutions qui répond à des choix conceptuels et des besoins bien précis.
Le choix d’une démarche de résolution d’un problème d’optimisation multi-objectif doit se
faire en essayant de répondre à un certain nombre de questions tel que [11] :
– Le problème est-il composé de minima locaux et/ou fortement couplé ? Ce critère est dé-
36
F IGURE 2.6 – Les approches et les méthodes de résolution d’un problème MOO.
licat, puisqu’on n’a pas une grande idée sur la structure exacte du problème, mais il conduit
souvent au choix d’une approche d’optimisation par recherche globale (méthodes stochas-
tiques : algorithmes à particules, évolutionnaires, de fourmis, etc.) ou locale (recuit simulé,
recherche tabou, gradient, etc.). Cependant dans le cas où on cherche à trouver un ensemble
de solutions, il est préférable d’utiliser les approches stochastiques.
Toutes ces questions sont loin d’être indépendantes les unes des autres, et le choix de la
démarche la plus appropriée à un problème MOO donné est souvent difficile, et plusieurs
améliorations peuvent être apportées. Le passage à l’échelle pose par exemple les deux pro-
blèmes suivants :
Problème lié à la représentation des Front de Pareto : dans le cas des approches a pos-
teriori (exploratoires), la représentation des solutions sous forme d’un front de Pareto est
difficile à réaliser dès que le nombre d’objectifs devient supérieur à trois. Et par conséquent,
leur compréhension et leur analyse sont aussi difficiles. Or la qualité finale des solutions obte-
nues dépend de l’analyse et de la compréhension du problème ainsi que des choix réalisés par
le concepteur, il s’agit donc, d’un inconvénient majeur (limite) de ces approches. De même,
les approches a priori (d’agrégation de paramètres) sont aussi difficilement envisageables
37
lorsque le concepteur n’a pas une idée précise sur la nature des solutions.
L’augmentation du nombre de degrés de liberté : elle pose des problèmes aux approches
a posteriori basées sur des méthodes stochastiques, car elle conduit souvent à une explosion
combinatoire ou à une mauvaise exploration de l’espace.
L’approche MOO traite le problème de la conception comme une boite noire ce qui em-
pêche l’analyse des couplages entre les différentes disciplines qui composent le système glo-
bal. Pour cela, il est nécessaire de tendre vers des approches interactives qui aident les concep-
teurs à voir les problèmes différemment en considérant davantage les aspects disciplinaires,
et en ne se concentrant pas uniquement sur des fonctions objectifs, pré-établies. Ainsi, la dé-
composition du problème en sous-problèmes a été envisagée par plusieurs approches, et prin-
cipalement par la MDO (Multi-Disciplinary Optimisation). Pour ces approches, il s’agit, lors-
qu’un problème multi-objectif est composé de plusieurs sous-fonctions (disciplines), d’es-
sayer d’utiliser la structure du problème pour le résoudre.
• Variable locale ou privée : c’est une variable interne qui est utilisée par une seule
discipline.
• Variable partagée : appelée aussi variable publique puisqu’elle est considérée par plus
d’une discipline. Cette variable est analysée en fonction des exigences disciplinaires
spécifiques.
• Variable de conception : elle peut être locale ou partagée.
• Variable de couplage : elle représente le résultat (sortie) d’une discipline et l’entrée à
d’autre discipline.
• Contrainte : elle représente une limite au choix du décideur/concepteur. Une contrainte
porte généralement sur des règles métiers, des limites imposées par les normes ou des
lois physiques.
• Contrainte interdisciplinaire : appelée aussi contrainte de cohérence, c’est une relation
mathématique (linéaire, non-linéaire, quadratique, etc.) entre les différentes disciplines.
• Analyse : analyser un problème, c’est résoudre un ensemble d’équations pour trouver
les valeurs des variables de conception (solutions optimales) qui satisfont les perfor-
mances demandées (les objectifs et les contraintes du problème).
• Analyse interdisciplinaire : elle permet de résoudre les équations de couplage entre les
différentes disciplines.
• Evaluation : évaluer une solution, c.à.d. calculer le résultat de systèmes d’équations (et
non pas résoudre).
38
2.3.2 Problématique
Une conception multi-disciplinaire englobe une multitude de composantes de différentes
disciplines qui interagissent entre elles. L’optimisation globale du système à concevoir ne
se limite pas à l’optimisation de chaque composante toute seule, mais elle doit tenir compte
de l’effet du couplage entre les disciplines. La conception multi-disciplinaire d’un problème
d’optimisation multi-objectif est identifiée comme un problème difficile à résoudre.
Dans le cas où l’analyse d’une discipline nécessite des résultats d’une autre, les deux
disciplines sont dites couplées et le couplage peut être faible ou fort. Il est faible lorsque
l’analyse est résolue séquentiellement. Il devient fort au moment où les résultats d’analyse
d’une discipline est nécessaire pour traiter les résultats des autres, ce qui rend impossibles les
calculs séquentiels. La Figure 2.7 représente un système composé de deux disciplines avec
les types de couplages.
Plusieurs approches ont été développées dans la littérature pour résoudre le problème de
couplage. Dans la partie suivante, nous commencerons par énoncer la formulation générale
d’un problème MDO. Ensuite, nous détaillerons quelques exemples de formulations des ap-
proches utilisées pour traiter ce genre du problème.
39
F IGURE 2.8 – Formulation d’un problème MDO.
Minimiser F(V )
Sous les contraintes
C(V ) ≤ 0
Comme il est indiqué dans la Figure 2.9, le couplage entre les deux disciplines D1 et
D2 est faible, c’est-à-dire qu’au cours de l’analyse d’une solution donnée par l’optimiseur,
l’ensemble des valeurs des variables de couplage entre D1 et D2 peut être déterminé par
des interactions séquentielles. À l’inverse, les disciplines D2 et D3 sont fortement couplées
puisque les entrées de chaque discipline dépendent des sorties de l’autre. Dans ce cas, les
variables de couplage deviennent plus difficiles à estimer et théoriquement incalculables sé-
40
F IGURE 2.9 – Bloc d’analyse détaillé d’un système composé de trois disciplines, avec un
couplage faible entre D1 et D2 et un couplage fort entre D2 et D3 .
quentiellement sans la présence des hypothèses sur leurs valeurs. Un exemple de couplage
fort entre 3 disciplines est mentionné dans la Figure 2.9.
F IGURE 2.10 – Bloc d’analyse détaillé, avec couplage fort entre les disciplines D1 , D2 et D3 .
Un exemple de couplage fort entre 3 disciplines est mentionné dans la Figure 2.10. Dans
cet exemple, les disciplines adjacentes sont faiblement couplées, c’est-à-dire qu’au cours de
l’analyse d’une solution fournie par l’optimiseur, les valeurs des variables de couplage entre
deux disciplines adjacentes (D1 avec D2 , D2 avec D3 ou D3 avec D1 ) peuvent être détermi-
nées à travers des interactions séquentielles. Toutefois, le cycle d’attente des résultats rend le
41
couplage fort (les entrées de chaque discipline dépendent des sorties l’une de l’autre).
• Approche ou Stratégie de résolution : elle permet de distinguer entre les deux cas sui-
vants, où :
– le système est considéré comme un seul bloc.
– le système est décomposé en plusieurs blocs disciplinaires.
• Méthode de résolution : elle représente les techniques et les algorithmes d’optimisation
appliqués à la stratégie de résolution choisie afin de résoudre le problème du couplage
entre les différentes disciplines.
• Formulation : Formuler un problème d’optimisation multi-disciplinaire, c’est-à-dire
définir toutes les composantes de ce problème comme les variables locales, les va-
riables partagées, les systèmes d’équations, les contraintes et les objectifs.
• Reformulation : Reformuler un problème d’optimisation, c’est-à-dire modifier au moins
une de ces composantes (variable, contrainte ou objectif) de la formulation courante.
• Système d’équations : appelé aussi les équations d’état, c’est l’ensemble d’équations
nécessaires pour déterminer les valeurs des sorties du système (contrainte, objectifs,
etc.) en fonction des valeurs de ses entrées (variables de conception).
Plusieurs travaux, et notamment ceux de [54–59] insistent sur l’importance des formula-
tions utilisées pour la résolution d’un problème MDO. Alexandrov a présenté [60–62] une
classification importante des différentes formulations. Cette classification est basée sur l’as-
pect fermeture/ouverture des contraintes de conception, des contraintes interdisciplinaires
et de l’analyse disciplinaire. Une formulation est dite stricte ou fermée lorsque toutes les
contraintes sont satisfaites à chaque étape d’optimisation.
Les méthodes de résolution sont détaillées dans d’autres travaux, et notamment ceux
de [63–66], où la notion de stratégie de résolution (mono ou multi-niveaux) est présente.
Suite à l’analyse de ces travaux, nous distinguons deux manières de traiter les problèmes
MDO : choisir une stratégie de résolution puis une méthode de résolution en fonction des
caractéristiques et de la nature du problème à résoudre et, à partir de ces choix, formuler le
problème en écrivant le système d’équations qui en résulte, ou encore : choisir une formula-
tion et ensuite les stratégies et méthodes de résolution les mieux adaptées à cette formulation.
Les Figures 2.11 et 2.12 mettent en évidence ces deux façons d’aborder un problème MDO.
42
F IGURE 2.11 – Processus de résolution d’un problème MDO.
43
À travers la Figure 2.12, la reformulation d’un problème permet de le résoudre autrement
avec un optimiseur plus adapté. En effet, certains optimiseurs sont plus efficaces que d’autres
sur certains problèmes MDO. Reformuler un problème MDO, c’est redéfinir son système
d’équations afin d’avoir un système équivalent, mais étant plus ou moins optimisable. Néan-
moins, les formulations ayant des modèles et des paramètres multi-niveaux sont difficiles à
résoudre et plus coûteuses en temps de calcul [65]. S’agissant d’une approximation des fonc-
tions objectifs, d’une transformation des objectifs en contraintes ou bien d’une relaxation de
contraintes [45], la reformulation d’un problème peut défavoriser la convergence et la robus-
tesse de l’algorithme utilisé pour l’optimisation.
Dans la suite de cette partie, nous détaillons les approches les plus adaptées à la résolution
des problèmes MDO [58, 63–67]. Ces approches sont classées suivant la stratégie d’optimi-
sation ou de résolution : mono-niveau (globale) ou multi-niveaux (disciplinaire).
Dans les approches globales (mono-niveau), le problème MDO est examiné comme étant
un ensemble de paramètres à optimiser. Dans ce cas, un seul optimiseur global peut assurer le
processus d’optimisation, et toutes les disciplines sont considérées comme des outils d’éva-
luation ou d’analyse. Ces approches sont appliquées lorsqu’on dispose de toutes les données
du problème telles que : les variables de conception (locales, partagées et de couplage), les
contraintes (disciplinaires et interdisciplinaires), les objectifs et les équations d’état.
Approche MDF [67] limite les variables à optimiser aux variables de conception en écar-
tant les variables de couplages. Une analyse multi-disciplinaire est effectuée à chaque ité-
ration de l’optimisation dans le but d’assurer la faisabilité de la solution. Cette approche
fréquemment utilisée présente un inconvénient majeur, elle est caractérisée par un temps
d’implémentation et d’exécution très lourd puisque l’analyse multi-disciplinaire du système
global doit se faire à chaque itération. Elle se propose de centraliser les données et les connais-
sances.
Dans l’approche MDF, l’optimiseur ne tient pas compte des variables de couplage. Elles sont
calculées par l’analyseur et par conséquent la formulation du problème MDO devient :
Minimiser F(V );
Avec V = Z ∪ X;
Sous les contraintes
C(V ) ≤ 0;
44
F IGURE 2.13 – Approche d’optimisation MDF.
B. All-At-Once (AAO)
À l’inverse de l’approche MDF, la méthode AAO [68] prend en considération toutes les
variables de couplages en les intégrant dans l’ensemble de variables à optimiser. L’évalua-
tion d’une solution doit se faire uniquement à la rencontre d’un optimum local ou global [57].
Dans cette méthode, les contraintes de vérification de l’égalité entre les variables de cou-
plages calculées par le bloc d’analyse et les valeurs choisies par l’optimiseur sont ajoutées
aux contraintes C(V ), et dans ce cas, nous parlons bien d’évaluation disciplinaire au lieu
d’analyse disciplinaire. Le système d’équations (équations d’état) n’est pas forcément satis-
fait à chaque itération de l’optimisation. Il doit l’être à la convergence de l’algorithme.
Approche AAO est caractérisée par sa rapidité de calcul par rapport à l’approche MDF,
mais son inconvénient majeur est qu’elle augmente le nombre de variables à optimiser ce
qui engendre la complexité du processus d’optimisation. De plus, la convergence n’est pas
assurée dans ce cas, car l’évaluation d’une solution ne se fait qu’à la rencontre d’un optimum
(si l’optimum global n’est pas atteint alors la faisabilité de la solution ne peut pas être as-
surée). Et par conséquent, cette approche ne peut pas être la plus appropriée dans la phase
de conception détaillée des systèmes compliqués. Néanmoins, elle est couramment utilisée
comme un outil de vérification de solutions obtenues avec des méthodes multi-niveaux [69].
45
F IGURE 2.14 – Approche d’optimisation AAO.
Minimiser F(V, yi j );
Sous les contraintes disciplinaires
C(V, yi j );
Et les contraintes de cohérence interdisciplinaires dans le cas d’un optimum sont écrites
sous la forme M – G = 0 ; où G est l’ensemble des variables de couplage évaluées à partir des
données fournies par l’optimiseur.
46
chaque itération.
Comme dans l’approche AAO, les variables de couplages sont transformées aussi en
variables à optimiser. En effet, les contraintes d’égalités rajoutées sont vérifiées à chaque
convergence de l’optimiseur pour trouver une concordance interdisciplinaire (un équilibre)
entre l’ensemble des variables de couplages.
Minimiser F(V, yi j );
Sous les contraintes disciplinaires
C(V, yi j );
47
Et les contraintes de cohérence interdisciplinaires à chaque itération sont écrites sous la forme
M – G = 0 ; où G est l’ensemble des variables de couplage évaluées à partir des données
fournies par l’optimiseur.
Ces approches sont appliquées lorsqu’une partie du système global est considérée comme
une boite noire avec des entrées et des sorties (c’est-à-dire un manque des données pour
cette partie) ; ceci est dû généralement à la confidentialité inter-discipline [45]. Parfois, les
approches mono-niveaux, et notamment l’approche AAO, sont utilisées comme un outil de
vérification de la pertinence des solutions obtenues avec une approche multi-niveaux. La
Figure 2.16 représente le principe général de ces approches.
Le principe général des approches multi-niveaux est d’avoir deux types d’optimiseur, un
optimiseur global du système et un optimiseur local pour chaque discipline (sous système)
[70], plusieurs méthodes ont été développées dans la littérature et qui sont basées sur ce
principe telles que CO, CSSO, BLISS, DIVE. Dans la suite de cette partie, nous introduisons
48
le principe général ainsi que les particularités de ces méthodes. Plus de détails, d’exemples et
de comparaison de ces méthodes peuvent être trouvés dans [65, 66, 70–72].
49
F IGURE 2.17 – Les stratégies et les méthodes de résolution d’un problème MDO.
variables, les contraintes et les objectifs. Mais, avec la présence de boites noires internes aux
disciplines leurs applications deviennent impossibles.
La MDO propose des approches intéressantes pour la conception, car elle tient compte de
problématiques métiers. En cherchant à décomposer et à intégrer des sous-problèmes d’opti-
misation, elle considère une partie des relations disciplinaires et surtout utilise la structure du
problème pour trouver des solutions, ce que ne fait pas l’optimisation multi-objectif (MOO).
50
certain nombre de propriétés ou de contraintes. L’objectif du processus de résolution est de
satisfaire, à chaque itération, toutes les contraintes (un ensemble d’équations et d’inégalités)
en réduisant le domaine admissible des variables. Dans ce cas, la résolution passe à l’étape
suivante si et seulement si toutes les contraintes sont respectées à l’étape en cours.
- X = {x1 , x2 , x3 ,..., xn } est un ensemble fini de variables que nous appelons les variables
de contraintes avec n étant le nombre entier des variables dans le problème à résoudre.
Le processus de résolution d’un CSP peut être accéléré en terme de temps en faisant
précéder la résolution par une phase de réduction des domaines des variables appelée phase
de propagation de contraintes. La propriété qui sert à distinguer les valeurs qu’on garde et
celles qu’on élimine est la notion de consistance (appelé aussi cohérence). Elle consiste à
réduire au maximum les domaines de recherche des variables afin d’éliminer les valeurs
incohérentes, c’est-à-dire les valeurs qui sont incompatibles avec l’une des contraintes du
CSP.
2.4.2 Consistance
Il existe plusieurs techniques de vérification de la consistance [89, 90]. Les deux princi-
pales catégories sont :
2.4.2.1 Hull-consistance
Soient (X, D, C), un problème de satisfaction de contraintes impliquant un vecteur X de n
variables, et soit [x] le domaine de x.
(X,D,C) est dit Hull-consistant, si pour chaque contrainte c dans C et pour tout i | (1 ≤ i
≤ n), il existe deux points de [x] qui satisfont c et dont les imes coordonnées sont xi et xi ,
respectivement. La propriété de cohérence (Hull-consistance) réside dans la combinaison de
raisonnement locale et la représentation par intervalle des domaines. Cette propriété a apporté
51
une amélioration décisive par rapport aux solveurs numériques traditionnels de Newton qui
sont basiquement capables de contracter d’une manière globale les domaines de recherche.
Pour expliquer le processus de vérification de la consistance, nous détaillons dans cette partie
un exemple sur la Hull-consistance qui contient une contrainte et deux variables. L’exemple
est défini par :
x2 ∈ [0 ; 2]
Ce qui implique :
x ∈ [0 ; 1.414]
Le nouveau produit cartésien (x, y) ∈ [0 ; 1.414]×[0 ; 2] est Hull-consistant avec la contrainte
(conforme à la cohérence) et la contrainte d’intervalle de x est réduite.
Le procédé de vérification de la Hull-consistance utilise un mécanisme de l’évaluation avant
et de propagation arrière basé sur un arbre binaire. Le CSP non-Hull-consistant donné par
équation (2.7) est considéré pour illustrer ce processus :
(x = [5 ; 9], y = [3 ; 8], z = [5 ; 10], z = x + y) (2.7)
Les Figures 2.18 et 2.19 illustrent le mécanisme de propagation appliquée à l’exemple précé-
dent. Le processus commence par une traversée ascendante appelée arbre d’évaluation avant.
L’expression (x + y) est évaluée par application de l’addition par intervalle.
[5 ; 9] + [3 ; 8] = [8 ; 17]
La racine de l’arbre correspond à l’intersection de :
[5 ; 10] ∩ [8 ; 17] = [8 ; 10]
La propagation vers arrière est exécutée à la la fin de l’évaluation avant. La contrainte est
projetée sur un arbre de parcours descendant. À partir de la racine de l’arbre, l’intervalle
[8 ; 10] est coupé avec ses nœuds enfants. Les deux nœuds enfants deviennent [8 ; 10] et
la Hull-consistance du domaine de z est obtenue (cohérence compatible). Ensuite, la Hull-
consistance du domaine de y est calculée dans l’équation (2.8). Le même principe est appli-
qué pour le traitement du domaine de x dans l’équation (2.9).
52
F IGURE 2.18 – Hull-consistance : évaluation avant
53
[8 ; 10] ⊂ [5 ; 10], [3 ; 5] ⊂ [3 ; 8]et[5 ; 7] ⊂ [5 ; 9]
Ce processus est appliqué d’une manière répétitive à chaque contrainte du CSP jusqu’à at-
teindre un point fixe.
Comme exemple avec deux contraintes, on considère le CSP continu suivant [3] :
(C2 ) : x + 2 y = 3 (2.12)
3 − [0 ; 3] [0 ; 3]
(C2 ) ⇒ y ∈ [0 ; 10] ∩ ( ), y ∈ [0 ; 10] ∩ ( ) ⇒ y = [0 ; 1.5] (2.15)
2 2
3 − [0 ; 1.5]
(C2 ) ⇒ y ∈ [0 ; 1.5] ∩ ( ) ⇒ y ∈ [0.75 ; 1.5] (2.17)
2
3 − [0.75 ; 1.5]
(C2 ) ⇒ y ∈ [0.75 ; 1.5] ∩ ( ) ⇒ y ∈ [0.75 ; 1.125] (2.19)
2
3 − [0.75 ; 1.125]
(C2 ) ⇒ y ∈ [0.75 ; 1.125] ∩ ( ) ⇒ y ∈ [0.9375 ; 1.125] (2.21)
2
.
.
.
x=y=1 (2.22)
54
2.4.2.2 Box-consistance
C’est une relaxation de la Hull-consistance [87]. Le principe est de remplacer le critère de
satisfaction de contraintes sur le domaine réel avec une procédure de réfutation sur le domaine
de l’intervalle. Plus précisément, nous allons examiner la définition de la consistance d’arc.
Une valeur uk ∈ Dk est consistante pour une contrainte c si,
∀ u1 ∈ D1 , ..., uk ∈ Dk , ..., un ∈ Dn , c(u1 , ..., uk , ..., un ) 6= 0.
Une déclaration équivalente à la précédente est que la gamme de c sur le domaine (D1 × D2 ×
... × Dk−1 × uk × Dk+1 × ... × Dn ) est différente de zéro. L’idée principale est de calculer sur
un ensemble de cette gamme en utilisant l’extension aux intervalles de c. Une valeur peut être
éliminée si tout l’ensemble de la gamme est non nul. Alors, la définition de la box-consistance
est la suivante :
Si xk est un CSP variable et Dk est le domaine de xk et ∀uk ∈ Dk , 0 ∈ c(D1 , ..., Dk−1 , {uk }, Dk−1 ,
..., Dn ), alors, le domaine de xk est Box-consistant. Le but est de trouver les valeurs extrêmes
dans Dk qui sont compatibles. La mise en œuvre standard utilise une procédure de recherche
dichotomique, qui exploite la propriété de monotonie de l’évaluation par intervalle.
À titre d’exemple, on considère la contrainte y − x2 = 0 et les variables suivantes :
(x, y) ∈ [0 ; 1] × [0 ; 6]
La borne gauche liée à y est cohérente (box-consistante) puisque 0 appartient à l’intervalle
0−[0 ; 1]2 = [−1 ; 0]. Au contraire, la borne droite de y est non-consistante. Alors, le domaine
de y peut être divisé pour trouver la valeur la plus cohérente à droite, comme suit :
[3 ; 6] −[0 ; 1]2 = [2 ; 6] alors [3 ; 6] est éliminé (2.23)
[0 ; 3] −[0 ; 1]2 = [−1 ; 3] (2.24)
2
[1.5 ; 3] −[0 ; 1] = [0.5 ; 3] alors [1.5 ; 3] est éliminé (2.25)
2
[0 ; 1.5] −[0 ; 1] = [−1 ; 1.5] (2.26)
.
.
.
[0 ; 0.75]
Le dernier domaine calculé pour y est l’intervalle [0 ; 0.75]. Cependant, il est clair que la
recherche converge lentement. Pour accélérer la convergence, il est possible d’utiliser la mé-
thode de Newton par intervalles [87]. L’avantage principal de la Box-consistance est la ca-
pacité de gérer le problème de l’élimination des calculs par ensemble. En effet, lorsque la
variable considérée n’apparaît qu’une seule fois dans la contrainte, la Hull-consistance est
équivalente à la Box-consistance et moins chère au niveau temps de calcul.
La propriété principale d’un CSP numérique dans le cas où il existe une solution d’inter-
valle, et qu’elle est à l’intérieur des intervalles retournés par l’algorithme de l’une de consis-
tance (Hull- ou de Box- consistance). Dans la pratique, cette condition est nécessaire mais
pas suffisante et il faut un algorithme complémentaire pour trouver les véritables intervalles
de solutions.
55
2.4.3 Algorithmes de Branch and Prune
Les algorithmes de Branch and Prune [89] sont utilisés pour la recherche des solutions
d’intervalle d’un CSP numérique comme il est montré par l’algorithme 2.1. L’objectif est
d’obtenir pour chaque variable une valeur supérieure et une valeur inférieure au plus près
de chaque solution du CSP numérique (X, D, C). Pour atteindre cet objectif, l’algorithme de
Branch and Prune s’applique récursivement sur un opérateur de consistance (opérateur de
Hull- ou de Box-consistance).
Le processus commence par un CSP donné (X, D, C) et la liste de solutions L est vide
({0}).
/ À chaque étape, une variable est choisie par la fonction ChooseVariable et son inter-
valle D est divisé en deux sous-intervalles D1 et D2 . Ensuite, l’opérateur de consistance est
appliqué à la taille de chacun des deux sous-intervalles de l’ensemble des contraintes de C.
Il réduit les intervalles des autres variables du CSP. Si une bonne précision est obtenue en
D, c’est-à-dire une solution est atteinte, l’ensemble des intervalles résultant est ajouté à l’en-
semble des intervalles de solutions, L. Dans le cas contraire, le processus continue jusqu’à ce
que le fractionnement est un intervalle vide. Le test de vérification d’une bonne précision est
effectué par l’intermédiaire de la fonction OKPrecise. À la fin de l’algorithme, le processus
retourne la liste L des solutions d’intervalle du CSP numérique (X, D, C).
Les algorithmes de recherche comme les algorithmes de Branch and Prune commencent
le processus en sélectionnant une variable à bissecter. L’ordre dans lequel la sélection des
variables est effectuée, est défini comme l’ordre de référence des variables. Le choix d’un
ordre correct peut être crucial pour avoir un processus de résolution efficace dans le cas
de problèmes réels. Plusieurs heuristiques existent pour sélectionner l’ordre des variables à
bissecter. Après avoir sélectionné la variable à bissecter, les algorithmes doivent sélectionner
des sous-intervalles du domaine de la variable. Cette sélection peut également avoir un impact
important sur la durée du processus de résolution. En pratique, l’efficacité d’un algorithme de
Branch and Prune sur un problème donné est fortement liée à l’ordre des variables à découper.
Cet ordre, qui dépend en général du problème, est appelé stratégie de résolution.
56
2.4.4 Optimisation d’un problème de satisfaction de contraintes
Le principe d’optimisation adopté pour minimiser la valeur d’une variable réelle f [89] est
décrit par l’algorithme 2.2. Dans la pratique, f doit être une variable égale à une expression
de contrainte représentant les critères à minimiser. Le point clé est de résoudre par dicho-
tomie une séquence de CSP où l’ensemble des contraintes augmente d’un CSP à un autre.
Chaque CSP est résolu par la procédure de Branch and Prune. À chaque étape, nous ajou-
tons une contrainte exprimant que le prochain CSP doit être meilleur que le précédent selon
la minimisation de la variable f. Le processus s’arrête sur le CSP qui minimise la valeur de
la variable f lorsque la précision requise ε est atteinte. Notons que la solution trouvée par
l’algorithme est un optimum global sans aucune condition de différentiabilité sur la variable
f.
• Dans un contexte général, il n’est pas possible de décider de la cohérence des contraintes
sur les nombres réels.
• La représentation des nombres réels dans les calculs numériques n’est pas exacte.
Nombres à virgule flottante correspondent à un ensemble de nombres rationnels.
• Utilisation des nombres à virgule flottante peuvent conduire à des erreurs d’arrondi.
57
ficaces pour la détermination de l’ensemble optimal de Pareto avec une bonne diversité de
points. Cependant, elles nécessitent un nombre important d’évaluations des fonctions coût
(objectifs), ce qui rend ces approches inutilisables pour des problèmes gourmands en terme
de temps de calcul. Ce nombre important d’évaluations des fonctions peut être considérable-
ment réduit en remplaçant une grande partie de celles-ci par des approximations construites
à partir d’un méta-modèle.
Plusieurs techniques ont été utilisées pour construire un méta-modèle. Dans cette partie,
on présente les deux techniques les plus utilisées :
La RSM consiste à représenter une fonction f comme étant la somme d’un polynôme de
faible degré d’ordre un ou deux au maximum et d’un terme exprimant une erreur ε ayant une
variance égal à σ 2 et une distribution normale avec une moyenne nulle E(ε) = 0.
Par exemple, on considère un méta-modèle polynomial d’ordre deux avec deux variables
d’entrée x1 et x2 (appelées aussi variables de régression).
58
La réponse f est représentée de la façon suivante :
Y = Xα + ε (2.31)
Où :
f1 1 x11 x12 ... x1n α0 ε1
f2
1 x21 x22 ... x2n
α1
ε2
. . . . . .
Y = , X = , α = et ε =
.
. . .
.
.
. . . . . .
fm 1 xm1 xm2 ... xmn αn εm
La valeur approchée du vecteur des coefficients de régression, noté α̃, peut être calculée par
la minimisation de l’erreur L de la fonction des moindres carrés :
n
L = ∑ εi2 = ε T ε = (Y − Xα)T (Y − Xα) (2.32)
i=1
59
D’où :
α̃ = (X T X)−1 X T Y (2.33)
Une fois les coefficients de régression sont estimés, alors le méta-modèle RSM est considéré
comme une fonction mathématique explicite. Cette fonction est utilisée par la suite pour
déterminer la valeur approchée f˜0 de la réponse f0 en tout point X0 .
L’expression de calcul de f˜0 est donnée par :
Avec :
• Les réponses doivent être exprimées d’une manière additive et linéaire en fonction des
variables de régression.
• E(ε) = 0 : la moyenne de l’erreur est nulle.
• var(εi ) = σ 2 : la variance de l’erreur est constante pour toutes les instances Xi d’éva-
luation .
• L’erreur est distribuée normalement
• cov(εi , ε j ) = 0, ∀i 6= j. : les erreurs sont indépendantes.
60
Les trois premières hypothèses sont vérifiées par la courbe qui trace l’erreur standard
en fonctions des réponses mesurées appelée la courbe d’analyse des résidus [12, 91] . En
effet, si les résidus varient d’une façon aléatoire autour de zéro, alors ces hypothèses sont
validées [91]. Les deux dernières hypothèses peuvent être validées, respectivement, par la
courbe normale des résidus (la distribution normale de l’erreur) et la courbe de la corrélation
des erreurs [91].
˜
e−i = fi − f−i (2.37)
Si l’erreur de prédiction, donnée par l’équation (2.37), est nulle pour tous les points consi-
dérés alors le méta-modèle est performant. Dans ce cas, les résultats de la validation croisée
sont visualisés par une courbe qui représente la variation la solution approximée f−i ˜ en fonc-
tion de la solution exacte fi (Figure 2.20).
61
Il existe un autre outil statistique très performant pour évaluer la précision du méta-
modèle RSM, c’est la technique d’analyse de la variance (ANOVA :ANalysis Of VAriance)
[95]. Dans la suite de cette section, un aperçu rapide de cette technique est donné, le modèle
mathématique détaillé à été développé par [95].
L’évaluation de l’erreur est basée sur les trois termes suivants :
• SCT : la Somme des Carrés Totaux ou la somme des carrés des réponses mesurées :
m
SCT = ∑ ( fi − f¯)2 (2.38)
i=1
Avec
m
1
f¯ = m ∑ fi
i=1
• SCR : la Somme des Carrés résultants de la Régression ou la somme des carrés des
réponses prédites :
m
SRC = ∑ ( f̃i − f¯)2 (2.39)
i=1
• SCE : la Somme des Carrés de l’Erreur ou des résidus :
m
SCE = ∑ ( f̃i − f̃i )2 (2.40)
i=1
Si le méta-modèle est précis, alors la variabilité due à l’erreur est petite par rapport à celle
due à la régression. Afin d’établir la précision du méta-modèle, on peut évaluer le coefficient
de détermination ou coefficient de corrélation multiple R2 , donné par l’équation (2.42), qui
donne une idée sur la performance de l’approximation. R2 représente le rapport entre la SCR
(la variance due à la régression) et SCT (la variance totale). Ce rapport varie entre 0 et 1 et
s’il est très proche de 1, alors le méta-modèle est très performant (précis).
SCR SCE
R2 = = 1− (2.42)
SCT SCT
Il existe un autre critère qui peut être utilisé pour évaluer la précision du méta-modèle,
c’est le critère ajusté R2A :
m−1
R2A = 1 − (1 − R2 ) (2.43)
m−q
Où
q est le nombre de coefficients de régression (q = n + 1). Plus R2A est très proche de 1,
plus le méta-modèle est performant.
On peut utiliser aussi la racine carrée de la moyenne de l’erreur quadratique calculée par
la technique de la validation croisée RMSECV (Cross validation Root Mean Squared Error) :
62
s
m ˜ )2
( fi − f−i
RMSECV = ∑ m (2.44)
i=1
Dans ce cas, le méta-modèle est précis si la valeur du RMSECV est très faible.
Le méta-modèle RSM est une technique d’approximation rapide, simple et bien établi.
En revanche, ce méta-modèle perd de son efficacité pour des problèmes caractérisés par un
nombre important de variables (n>10) et il est difficile de choisir l’ordre polynomiale à utiliser
pour les résoudre [12].
2.5.2 Le Krigeage
Le mot krigeage dérive du nom de l’ingénieur Daniel Gerhardus Krige du Sud-Africain.
Dans les années cinquante, Krige a proposé le principe fondamental de cette technique sta-
tistique pour trouver la dispersion de l’or à Witwatersrand [96]. Dans les années soixante, la
théorie de cette méthode, appelée Krigeage a été mise en forme par le mathématicien français
Georges Matheron [97]. Matheron a défini le krigeage comme étant une méthode d’interpo-
lation spatiale d’une fonction f à partir d’un ensemble de m mesures (Xi , f (Xi ))i=1,...,m .
Où
Si la fonction f est continue, alors son erreur ε est aussi continue. De plus, si l’on suppose
qu’on a deux points Xi et X j qui sont proches, alors les erreurs ε(Xi ) et ε(X j ) doivent être
aussi proches, c’est à dire qu’elles sont reliées ou corrélées. Cette corrélation est d’autant
plus faible que les deux points Xi et X j sont éloignés et d’autant plus importante qu’ils sont
proches. Dans le cas du krigeage, nous ne supposons pas que les erreurs sont indépendantes,
mais plutôt qu’elles sont liées (corrélées) à la distance entre les points [99] :
n
d(Xi , X j ) = ∑ Θh|xih − xhj| ph (Θh ≥ 0, ph ∈ [1, 2]) (2.46)
h=1
63
À partir de cette corrélation, on peut remplacer les termes de régression dans l’équation (2.45)
par un terme constant µ, appelé la moyenne du méta-modèle, et par conséquent le krigeage
peut être écrit sous la forme suivante :
L’équation (2.48) est appelée aussi modèle d’un processus stochastique DACE, une abré-
viation de titre de l’article «Design and Analysis of Computer Experiments», qui a popularisé
ce modèle dans son application aux expériences numériques [100].
Le krigeage est caractérisé par 2n + 2 paramètres. La valeur de ces paramètres est estimée en
maximisant la fonction de probabilité (Likelihood).
Il est plus pratique de maximiser le log de la fonction de probabilité (log –Likelihood) qui
élimine les termes constants :
64
Pour estimer la valeur approchée f˜ au point X ∗ , on ajoute ce point (X ∗ , f˜) comme une
(m + a)ime mesure à l’ensemble des points mesurés (observés). Par la suite, la fonction de
probabilité augmentée est calculée en utilisant les paramètres obtenus en maximisant la fonc-
tion de probabilité.
Soient Ỹ = (Y T f˜), le vecteur des fonctions mesurées, augmenté par (X ∗ , f˜) et r le vecteur de
corrélation de ε(X ∗ ) avec ε(Xi ) :
Corr[ε(X ∗ ), ε(X1 )]
.
.
r= (2.54)
.
.
Corr[ε(X ∗ ), ε(Xm )]
La matrice de corrélation du système augmenté est donnée par :
R r
R̃ = (2.55)
rT 1
−1 T −1
[ ]( ˜ − µ̂)2 + [ r R (Y − 1µ̂) ]( f˜ − µ̂) + termes sans f˜
f (2.56)
σ̂ 2(1 − rT R−1 r) σ̂ 2 (1 − rT R−1 r)
L’expression précédente est une fonction quadratique en f˜. La valeur de f˜ qui maximise
cette expression peut être déterminée en considérant que sa dérivée par rapport f˜ est nulle :
−1 ˜ rT R−1 (Y − 1µ̂)
[ ]( f − µ̂) + [ 2 ]=0 (2.57)
σ̂ 2(1 − rT R−1 r) σ̂ (1 − rT R−1 r)
65
Validation des hypothèses du Krigeage
Les hypothèses proposées pour la construction du méta-modèle krigeage sont :
Les trois hypothèses peuvent être validées par la méthode de la validation croisée (équa-
tion (2.37) et Figure 2.19), permettant de tracer les courbes de la distribution normale de
l’erreur, d’analyse des résidus et de la corrélation des erreurs [12].
2.6 Conclusion
Les méthodes traditionnellement utilisées pour résoudre la conception préliminaire d’un
système mécatronique sont basées sur des méthodes d’optimisation globales ou hiérarchiques.
66
En tant que méthode globale multi-objectif (MOO), les algorithmes génétiques ont mon-
tré leur efficacité à traiter ce problème, parce qu’ils sont robustes aux discontinuités et assez
indépendants des caractéristiques de la fonction globale à optimiser. Le principal inconvé-
nient de cette méthode d’optimisation globale est qu’elle ne fournit qu’une vue limitée sur
les relations d’interdépendances liant l’ensemble des paramètres [102] et aucune sur les com-
promis disciplinaires. Aussi, dans le cas où le problème est sur-contraint le concepteur n’a
aucune aide ni pour reformuler son problème, ni pour agir sur le système. De plus, la plupart
de ces approches étant stochastiques, elles deviennent plus difficilement utilisables, lorsque
le nombre d’objectifs et/ou de degré de liberté augmentent.
Les méthodes d’optimisation multi-disciplinaires (MDO) [103] sont des approches inté-
ressantes, car elles cherchent à décomposer et à intégrer des sous-problèmes d’optimisation.
Pour cela, elles considèrent les disciplines en tant qu’éléments agissant les uns avec les autres.
Cependant, elles résolvent le problème en utilisant une décomposition et une intégration hié-
rarchique des sous-problèmes, ce qui influence les résultats [104] et limite la compréhension
globale du problème. En particulier, les résultats n’aident pas le concepteur à découvrir l’in-
terdépendance des contraintes au-delà du découpage préétabli, ce qui cache une partie des
compromis disciplinaires et des relations entre les paramètres.
Les approches de satisfaction de contraintes, ont montré leurs intérêts dans l’optimisa-
tion des problèmes complexes tels que les problèmes de planification et d’ordonnancement.
Mais la formulation particulière de ces approches les rend difficilement transposables à des
problèmes continus et non-linéaires.
La détermination des solutions optimales avec l’une de ces approches nécessite un grand
nombre d’évaluations des fonctions objectifs ce qui provoque l’augmentation du coût de cal-
cul et parfois empêche la convergence des algorithmes utilisés à l’intérieur de ces approches.
Une technique consiste à remplacer une grande partie de ce nombre d’évaluations par des
approximations basées sur des méta-modèles afin de minimiser le coût de calcul. Cette tech-
nique perd de son efficacité pour des problèmes caractérisés par un nombre important de
variables (n>10).
Afin de surmonter les limites des approches classiques d’optimisation, l’objectif du cha-
pitre suivant est de développer une nouvelle approche basée sur les paradigmes multi-agents
pour la conception optimale des systèmes mécatroniques.
67
Chapitre 3 : Approche
multi-agents pour
l’optimisation de la
conception mécatronique
Chapitre 3
69
3.1 Introduction
La conception d’un système mécatronique est un problème d’optimisation multidiscipli-
naire et multi-objectif. Les approches d’optimisation actuellement utilisées pour l’optimisa-
tion des systèmes multi-disciplinaires sont coûteuses en temps de calcul, difficiles à mettre en
œuvre et non-flexibles avec la phase de conception préliminaire et plus précisément dans le
cas où les objectifs et les contraintes de conception changent fréquemment. D’où la nécessité
de chercher des nouvelles techniques plus simples à mettre en œuvre, moins coûteuses et qui
permettent d’adapter dynamiquement une solution suite à un changement des spécifications.
Ce chapitre introduit, tout d’abord, les notions d’agents et les systèmes multi-agents, et
détaille dans la section deux les différentes questions que soulèvent la problématique liée à
la structure organisationnelle des systèmes multi-agents, en particulier : la coopération, la
négociation et la communication. La section trois traite une description de l’approche multi-
agents pour l’optimisation de la conception mécatronique. La section quatre présente la mise
en œuvre de l’approche multi-agents avec la plateforme JADE.
70
La définition qui a été donnée plus tard par Jennings et al. [106] est : « un agent est un sys-
tème informatique, situé dans un environnement et qui agit d’une façon autonome et flexible
pour atteindre les objectifs pour lesquels il a été conçu ».
Afin de mieux saisir la notion d’agent, nous pouvons relever plusieurs propriétés qui peuvent
être attribuées aux agents [107] :
- Autonomie : capacité d’un agent à agir seul pour atteindre ses objectifs en ne subissant
aucun contrôle sur son état interne, ni sur les actions qu’il réalise.
- Capacité sociale : capacité d’un agent d’interagir avec d’autres agents et probablement
avec des humains grâce à des langages de communication.
- Réactivité : capacité d’un agent de percevoir son environnement et de répondre d’une
façon opportune aux différents changements qui se produisent dans celui-ci.
- Adaptabilité : capacité d’un agent à apprendre et à s’améliorer avec l’expérience.
- Pro-activité : les agents ne doivent pas réagir seulement à des stimuli provenant de leur
environnement, ils doivent être aussi capables de montrer des comportements dirigés
par des objectifs internes et ceci en prenant des initiatives.
- Continu dans le temps : c’est un processus qui est continuellement en exécution.
L’intelligence artificielle IA [110] est une discipline informatique pour modéliser et simu-
ler les comportements intelligents tels que la prise de décision, la perception, l’apprentissage,
la compréhension, etc. Elle s’attache à la construction de programmes informatiques pour
exécuter des tâches complexes en s’appuyant sur une concentration et une centralisation de
l’intelligence au sein d’un système unique. Mais, l’IA a rencontré beaucoup de difficultés
dues en réalité à la nécessité d’intégrer au sein de la même base, les compétences, l’expertise
et les connaissances individuelles qui communiquent et collaborent à la validation d’un ob-
jectif commun.
71
globales qui excèdent les compétences et les performances des entités qui y participent par le
jeu des interactions entre ces entités et avec leur environnement.
Dans ce contexte, plusieurs définitions des SMA sont proposées par la communauté agent.
Une des définitions les plus utilisées par la communauté francophone est celle-ci développée
par Ferber [112] qui définit un SMA comme :
Comme il est indiqué dans la Figure 3.1, un SMA est composé d’un environnement d’ob-
jets passifs qui sont manipulés par les agents, représentant les entités actives du système,
d’interactions entre les agents et d’opérations qui permettent les perceptions et les différentes
actions.
Un SMA est un système idéal pour représenter des problèmes possédant de multiples
perspectives, de multiples résolveurs et de multiples méthodes de résolution. Ce système
possède les avantages traditionnels de la résolution concurrente et distribuée de problèmes
tels que la fiabilité et la modularité. De plus, il hérite des bénéfices envisageables de l’IA
tels que la facilité de maintenance, le traitement symbolique, la portabilité, la réutilisation
72
et l’avantage de faire intervenir des schémas d’interaction sophistiqués. Les types courants
d’interaction incluent la coopération (travailler ensemble pour faciliter la résolution d’un pro-
blème) ; la coordination (organiser la résolution d’un problème pour éviter les interactions
nuisibles et exploiter les interactions bénéfiques) ; et la négociation (parvenir à une solution
finale acceptable pour toutes les parties concernées).
Malgré tous ces avantages, il existe des défis inhérents à la conception et à l’implémentation
d’un SMA [113–115] :
73
• la coordination et la planification des tâches (actions) des agents,
• la négociation entre les agents pour la détection et la résolution des conflits.
3.3.1 Communication
Les agents communiquent entre eux pour pouvoir interagir, échanger des données et des
informations et coordonner leurs activités. Ils peuvent interagir de deux manières, soit en ac-
complissant des actions linguistiques (en communiquant entre eux), soit en accomplissant des
actions non-linguistiques qui modifient leur environnement. Les travaux antérieurs traitant la
communication entre un groupe d’agents, montrent qu’il existe deux types de communica-
tion : les communications directes et indirectes [11, 13].
La communication indirecte
La communication indirecte est une démarche de communication, où le partage d’infor-
mation passe généralement par l’environnement [11]. Ainsi, pour assurer la communication,
les agents doivent agir sur leur environnement ; ce qui modifie la partie visible d’un ou de plu-
sieurs agents à qui l’information doit être transférée. Ce mode de communication implique
donc que les agents doivent être implémentés dans un environnement physique commun, ce
qui ne permet pas la communication avec d’autres agents particuliers.
La communication directe
La communication directe est une démarche de communication, où l’agent s’adresse in-
dividuellement aux autres par l’envoi de messages [11]. Ce mode de communication com-
plètement adapté à des applications conceptuellement distribuées. Dans ces applications, les
agents utilisent des actes de langage et ont une connaissance de leur voisinage. Ce type de
communication est basé sur les trois éléments suivants :
- Les supports de communication : sont des mécanismes utilisés pour stocker et recher-
cher des messages. Ces mécanismes sont programmés et développés dans les plate-
formes multi-agents telles que JADE [140], Madkit [141], Mason [142], etc.
74
3.3.2 Coordination
La coordination est un processus dans lequel les agents se sont engagés en vue d’assurer
une communauté d’agents individuels agissant avec cohérence et harmonie [13]. En effet, les
agents ont besoin de la coordination pour empêcher les comportements chaotiques, pour être
coordonnés de la même manière, puisqu’aucun agent ne possède une vue globale sur le sys-
tème et parce qu’ils possèdent des capacités et expertises différentes, mais complémentaires.
Il est clair que la coordination s’avère plus facile dans les situations de routine que dans
les situations non familières. En effet, dans la routine, les agents peuvent être parfaitement
coordonnés, car on pourrait savoir ce qu’ils sont en train de faire et prévoir ce qu’ils vont
faire. Les situations peuvent être de routine, familière ou non familière. Dans les situations
familières, les agents peuvent être coordonnés selon des lois sociales, ce qui n’est pas pos-
sible dans les situations non familières.
La coordination comprend aussi l’allocation des tâches, qui consiste à affecter des respon-
sabilités et des ressources nécessaires à la résolution de problèmes à un agent. Le créateur du
système d’agents peut allouer toutes les tâches d’avance en engendrant ainsi une organisation
de résolution des problèmes qui est non adaptable. Par contre, on peut avoir une allocation
dynamique et flexible des tâches.
3.3.3 Négociation
La négociation est un processus de coordination et de résolution de conflits, qui a pour
objectif d’atteindre un accord final accepté par un groupe d’agents. Ce processus de négocia-
tion peut induire des échanges de données, des échanges d’informations, des relaxations des
buts initiaux, des concessions mutuelles, des menaces ou des mensonges. Il existe deux types
de négociation : les négociations compétitives et coopératives [13].
La négociation compétitive
La négociation compétitive est valable dans la situation où des agents de différents inté-
rêts tentent de faire un choix de groupe avec des alternatives bien définies. Dans ce cas, les
agents sont plutôt compétitifs et non coopératifs.
La négociation coopérative
La négociation coopérative est utilisée dans la situation où les agents ont un objectif
unique global considéré pour le système. Dans ce cas, les agents sont dits collaboratifs, il
75
s’agit ainsi d’un système distribué qui a été conçu pour réaliser son objectif global.
En conclusion, pour pouvoir résoudre avec cohérence les systèmes complexes, les agents
doivent communiquer entre eux, coordonner leurs activités et négocier dans les cas des
conflits (situation où les agents tombent en désaccord à cause des différences entre leurs
domaines d’expertise). La communication est nécessaire pour faciliter l’échange de données
et des informations. La coordination est nécessaire pour l’allocation des ressources et pour
déterminer la structure organisationnelle d’un groupe d’agents. La négociation est nécessaire
pour la détection et la résolution des conflits.
Chaque agent logiciel (CA ou DA) est associé à une équipe d’ingénierie et une plate-forme
de développement (Figure 3.2).
- L’équipe d’ingénierie peut être composée d’ingénieurs et des experts dans les différents
domaines de l’ingénierie système.
- La plate-forme de développement peut être composée des différents outils pour la mo-
délisation, la simulation et l’optimisation.
Chaque agent logiciel peut partager, communiquer ou coordonner avec les agents phy-
siques à travers le modèle d’analyse, le modèle de connaissance et le modèle de coordination.
- Le modèle d’analyse est utilisé pour évaluer la conception affectée à une partition (mo-
dèle CAO, modèle des éléments finis, etc.).
- Le modèle de connaissance est basé sur des règles de modélisation et de contrôle et des
informations de contexte de l’agent.
76
F IGURE 3.2 – La définition d’un agent pour l’optimisation de la conception mécatronique.
• Les règles de modélisation aident les concepteurs par exemple dans la définition des
modèles mathématiques qui peuvent être utilisés dans la modélisation du système mé-
catronique.
• Les règles de contrôle sont utilisées pour vérifier la cohérence du modèle d’analyse.
• Le contexte de l’agent est basé sur des informations par rapport aux exigences de
conception, les contraintes et les objectifs d’optimisation.
77
F IGURE 3.3 – Le processus de conception pour l’optimisation d’un système mécatronique.
2 Une fois les configurations trouvées, la deuxième étape du processus de conception est
de trouver la meilleure configuration à utiliser pour résoudre le problème d’optimisa-
78
tion globale. Pour le choix de la meilleure configuration, nous proposons d’utiliser les
deux critères suivants : le temps de calcul global C1 et le nombre de partitions C2 . Ces
deux critères doivent être minimisés.
Avec
L’agent logiciel CA peut intervenir dans cette étape afin de nous aider à bien choisir
la meilleure configuration. Pour cela nous proposons d’utiliser le langage SysML. En
effet, on peut représenter la configuration d’optimisation avec un diagramme de blocs
internes [Internal Block Diagram (IBD)]. Chaque Bloc peut représenter une partition.
Les informations nécessaires pour décrire la partition, telles que les temps d’exécu-
tion, peuvent ainsi être attribuées aux propriétés du bloc qui définit la partition. Les
interfaces (ports SysML) permettent de spécifier les variables d’échanges et peuvent
contenir d’autres informations sur le temps d’échange à travers les ports.
Un CA, qui peut être décrit par un programme Java, peut lire les informations définies
dans l’IBD, via un format XML. Ce qui permet d’évaluer le critère C1 .
3 La troisième étape consiste à déterminer les variables de couplages entre les partitions
de la configuration choisie. Ces variables de couplages sont utilisées par la suite pour
faciliter le processus de coordination entre les différentes partitions afin de trouver la
conception optimale du problème global.
Une fois les variables de couplages identifiées, le concepteur vérifie si l’on dispose des
intervalles de variation de ces variables. Si oui, le processus de conception passe direc-
tement à l’étape 7. Si non, le concepteur doit déterminer les variables dont les domaines
de validité sont inconnus pour effectuer les étapes de 4 à 6.
4 Dans la quatrième étape, une analyse de sensibilité des variables de conception est né-
cessaire pour identifier celles qui n’ont pas une grande influence sur le comportement
des partitions identifiées dans l’étape précédente. Ces variables doivent être éliminées
afin de maximiser la précision et de minimiser le temps de calcul du méta-modèle à
construire.
5 Une fois l’analyse de sensibilité est effectuée, le rôle de l’agent physique est de construire
79
un méta-modèle (surrogate model) ayant comme entrées les variables de conception et
comme sorties les fonctions objectifs, les contraintes et les variables des couplages
identifiées dans la troisième étape.
Les deux techniques utilisées ici pour construire un méta-modèle sont : la Méthode des
Surfaces de Réponse polynomiale RSM (Response Surface Methodology) et le Kri-
geage (Kriging). Les modèles mathématiques de RSM et le krigeage sont détaillés dans
le deuxième chapitre.
• Spécifier un modèle d’analyse pour évaluer les contraintes et les objectifs locaux.
• Allouer un algorithme d’optimisation multi-objectif pour déterminer les solutions lo-
cales.
Une fois les optimisations locales effectuées et les solutions générées, le rôle de l’ingé-
nieur système, avec l’aide de CA, est de trouver la meilleure stratégie pour lier les variables
de coordination (variables de couplages ainsi que les variables partagées) entre les différents
DA(s) et trouver les solutions globales qui respectent toutes les performances demandées
(étapes 11 et 12). Ceci est expliqué dans la partie suivante.
80
3.4.2 Processus de coordination pour la détermination des solutions op-
timales du système global
La détermination des solutions optimales du problème global est basée sur le processus
de coordination développé dans la Figure 3.4.
81
Une fois les optimisations locales effectuées, le rôle de CA est de spécifier l’ordre à suivre
pour coordonner la recherche des solutions optimales globales. Une métrique importante
qui peut être utilisée ici est le nombre d’évaluation Ni nécessaire pour déterminer toutes les
solutions communes entre deux DA(s) qui sont liés par un lien de couplage. L’algorithme 3.1
est appliqué pour déterminer le nombre d’évaluations minimal Ni du lien à parcourir et par
conséquent de spécifier les deux DA(s) (DA p et DAk ) à coordonner.
La Figure 3.5 représente un exemple de trois DA(s) qui sont liés par deux liens de cou-
plage. Le nombre d’évaluations est égal à 50 le long du lien1 et 70 le long du lien2 et par
conséquent le processus de coordination commence par les deux premiers agents DA1 et DA2
et se termine par les agents DA1 et DA3 .
F IGURE 3.5 – Exemple de calcul du nombre d’évaluations pour déterminer les deux DA(s) à
coordonner.
Avant de déterminer tous les points communs entre DA p et DAk qui sont en relations
avec le lien spécifié par l’alghorithme 3.1, il est nécessaire de limiter l’espace de recherche
de ces deux DA(s). Comme il est indiqué dans l’algorithme 3.2, la limitation de l’espace de
recherche consiste à déterminer les bornes min et max de chaque variable de coordination
pour chaque DA et par la suite de déterminer le min de max et max de min entre les bornes
82
trouvées de DA p et DAk .
83
long des deux fronts,
c
• X jmax : le minimum des deux valeurs maximales de la jème variable de coordination le
long des deux fronts,
• X c : vecteur de coordination (vecteur de limitation de l’espace de recherche des va-
riables de coordination).
La Figure 3.6 représente un problème composé de cinq DA(s) qui sont liés par quatre
liens de couplage. Supposons que les liens 2, 3 et 4 sont déjà parcourus et que le nombre de
solutions est égal à 7 pour chaque DA qui sont en relations avec ces liens (c-à-d. DA2 , DA3 ,
DA4 et DA5 ). Donc il reste un seul lien à parcourir, le lien1 entre DA1 et DA2 .
84
F IGURE 3.6 – Exemple de coordination avec les deux types de lien : direct et indirect.
Ce processus est appliqué pour tous les DA(s) qui sont liés par des liens de couplage. Le
processus s’arrête lorsque la liste des liens à parcourir est vide et dans ce cas le nombre de
solutions global est égal au nombre de solutions communes entre les deux DA(s) qui sont liés
par le dernier lien parcouru.
1. http ://fr.slideshare.net/mohamedyoussfi9/systmes-multi-agents-concepts-et-mise-en-oeuvre-avec-le-
middleware-jade
85
- DoMIS : est un outil permettant la conception de SMA (orientés « pilotage opération-
nel des systèmes complexes »). Il est utilisé pour l’analyse décisionnelle des systèmes
complexes.
- Jadex : est une plate-forme agent développée en Java par l’université de Hambourg qui
se veut modulaire, compatible avec de nombreux standards et capable de développer
des agents.
- Janus : est une plateforme multi-agents modulaire écrite en Java. Elle permet de créer
des SMA avec ou sans une approche organisationnelle basée sur le modèle Capacité-
Rôle-Interaction-Organisation (CRIO).
- Madkit : est une plateforme multi-agents modulaire écrite en Java et construite autour
du modèle organisationnel Agent/Groupe/Rôle.
JADE est fondée sur la spécification de FIPA 3 . Elle comprend tous les composants qui
permettent la gestion de la dite plate-forme selon FIPA. Ces composants sont : Agent Mana-
gement References Model (AMRF), Message Transport System (MTS), Agent Managment
System (AMS) et Directory Facilitator (DF).
Une application JADE est une plateforme déployée sur une ou plusieurs machines. Elle
héberge un ensemble d’agents, identifiés de manière unique, pouvant communiquer de ma-
nière bidirectionnelle avec les autres agents. Chaque agent s’exécute dans un conteneur se-
condaire (Container) qui lui fournit son environnement d’exécution ; il peut migrer à l’inté-
rieur de la plateforme. Chaque plate-forme doit avoir un conteneur principal (mainContainer)
2. http ://jade.tilab.com/
3. Foundation for Intelligent Physical Agents : une organisation en 1996 dont l’objectif est de produire des
standards pour l’interopération d’agents logiciels hétérogènes
86
qui enregistre les autres conteneurs.
La Figure 3.7 représente une application JADE développée sur 3 machines. Les agents
CA, DA1 et DA2 sont déployés respectivement dans le mainContainer, container 1 et container
2.
F IGURE 3.7 – Exemple d’une application JADE deployée sur trois machines
Le cadre du système de conception à base d’agents est illustré à la Figure 3.8. Agent
Platform (PA) est l’environnement logiciel dans lequel plusieurs agents peuvent être créés,
déployés, enregistrés, situés et communiqués dans JADE. Chaque agent doit être inscrit sur
les descriptions désignées par AMRF (fournit une infrastructure standard avec des fonctions
bien définies) pour fournir des services spécifiques. AMS est un répertoire de registre qui
attribue un identifiant unique pour chaque agent (Service de Pages Blanches : référence auto-
matiquement les agents suivant leur nom dès leur entrée dans le système). DF est un répertoire
de registre qui offre le service de pages jaunes (référence à leur demande les agents suivant
leur(s) service(s)). Les services d’un agent peuvent être interrogés par les informations enre-
gistrées dans le DF. MTS coordonne la communication entre les agents de la même AP ou
différentes AP(s). CA réside dans un conteneur principal, et chaque DA(s) est déployé dans
un conteneur secondaire. Ces conteneurs peuvent être placés séparément dans différentes
machines et distingués par les adresses IP.
87
F IGURE 3.8 – La mise en œuvre des agents avec la plate-forme JADE
• Exécution de la méthode action() qui désigne les opérations à exécuter par le com-
portement b.
88
• Exécution de la méthode done() pour tester la fin du comportement.
Si le comportement est terminé, retrait de la liste de comportements actifs, sinon inser-
tion du comportement dans la liste des comportements actifs.
- INITIATED : l’agent est lancé mais non enregistré auprès de l’AMS, aucun nom, au-
cune adresse.
- ACTIVE : l’agent est répertorié auprès de l’AMS et peut accéder aux services.
89
F IGURE 3.10 – Cycle de vie d’un agent
- 3. Information : CA précise les AIDs des DA(s) impliqués dans la coordination en in-
terrogeant AMS et invite tous les DA(s) à rejoindre le processus de coordination.
4.1. CA informe les DA(s) à travers MTS que le workflow de communication com-
mence. CA envoie une demande en envoyant ACLMessage.Request à chaque DA pour
effectuer une optimisation locale et le contenu du message est la formulation du sous-
problème d’optimisation de l’agent correspondant.
90
F IGURE 3.11 – Workflow de communication entre CA et DA
4.2. Chaque DA reçoit la demande pour effectuer une optimisation locale et déterminer
les solutions optimales par rapport à ces objectifs internes afin de satisfaire les exi-
gences demandées. Une fois l’optimisation est effectuée et le front de Pareto est généré
ACLMessage.AGREE est envoyé à CA. Le contenu du message est l’intervalle de varia-
tion de l’ensemble des solutions trouvé.
4.3. CA attend l’arrivée de tous les messages des DA(s). CA limite l’espace de recherche
des solutions optimales par l’implémentation de l’algorithme 3.2. Après la limitation
de l’espace de recherche, CA demande de nouveau à chaque DA, en envoyant ACLMes-
sage.REQUEST, de déterminer la liste des points qui respecte l’espace demandé.
4.4. Chaque DA reçoit la demande pour effectuer une recherche locale et détermine la
liste des points demandés. Une fois la recherche est terminée ACLMessage.INFORM
est envoyé à CA et le contenu du message est l’ensemble des solutions trouvé.
91
4.5. CA attend l’arrivée de tous les messages des DA(s). CA coordonne les solutions
envoyées par les différents DA(s) en implémentant l’algorithme 3.3 afin de trouver les
solutions communes entre ces derniers. Tous les DA(s) accomplissent le workflow de
communication en recevant ACLMessage.CONFIRM de CA pour les informer de la
confirmation de la stratégie de coordination.
3.6 Conclusion
Dans ce chapitre, nous avons développé une nouvelle approche basée sur les technologies
multi-agents pour la conception optimale des systèmes mécatroniques. Cette approche est
composée par des agents purement informatiques qui participent à la recherche des solutions
optimales (locales ou globales) et qui communiquent avec des agents physiques qui sont en
relation directe avec les logiciels de conception. Elle permet aux agents de suivre un processus
de conception afin de faciliter la conception collaborative des systèmes distribués.
Dans le chapitre suivant, nous validerons cette approche à travers un cas de test pour la
conception préliminaire d’un véhicule électrique.
92
Chapitre 4 : Étude de cas :
conception préliminaire
d’un véhicule électrique
Chapitre 4
4.1 Introduction
Avec le développement considérable de l’univers de la mécanique, les types de moyens
de transport sont de plus en plus nombreux. La voiture demeure toutefois le moyen de lo-
comotion le plus convoité. On peut distinguer deux grands types de véhicule : les voitures
habituelles qui sont dotées d’un moteur à explosion et celles qui sont électriques [148].
La voiture électrique n’a pas encore supplanté la voiture à essence. Ce type de véhicule
présente différents inconvénients [148, 149], notamment en ce qui concerne le coût, l’auto-
nomie, l’approvisionnement et la vitesse. En effet, la production des différentes pièces de
la voiture étant beaucoup plus compliquée, le coût devient obligatoirement plus élevé et sa
batterie ne disposant que de quelques heures d’autonomie, une recharge doit être effectuée
environ tous les 100 kilomètres.
Ces inconvénients ne sont pas pour autant définitifs. L’augmentation du prix du carburant
et les normes de plus en plus strictes d’émissions exigent que les nouvelles technologies dé-
veloppées répondent à ces besoins [149]. En même temps, l’industrie automobile a besoin de
satisfaire sa clientèle en gardant toujours haut ces standards de performances. Pour cela, les
constructeurs reviennent à la charge pour trouver un moyen d’y remédier, en ayant l’espoir
que la voiture électrique puisse conquérir dans un avenir proche le cœur des consomma-
teurs [149].
La conception préliminaire des véhicules électriques peut être réalisée en utilisant des ou-
tils de modélisation multi-domaines tels que VHDL-AMS [150], Matlab / Simulink [7, 40],
Modelica [39], etc.
Plusieurs études ont été effectuées pour optimiser les caractéristiques de la source de ten-
sion [151] et des moteurs électriques [152, 153] afin d’améliorer les capacités de la voiture
électrique et d’obtenir un véhicule plus fiable.
94
Dans ce chapitre, nous proposons un nouveau modèle pour la conception préliminaire
d’un véhicule électrique. Le modèle proposé est basé sur la combinaison de Modelica avec
ModelCenter. Modelica [39] a été utilisé pour modéliser et vérifier le modèle proposé. Model-
Center [154] a été utilisé pour optimiser les variables de conception des différents composants
du modèle afin de respecter les exigences de performance demandées.
Le modèle développé est utilisé par la suite comme cas d’application afin de démontrer
la validité et l’efficacité de l’approche multi-agents proposée dans le chapitre précédent pour
faciliter la conception collaborative des systèmes distribués.
Ce chapitre est organisé comme suit : après l’introduction, la section 2 présente la formu-
lation mathématique du véhicule électrique, la section 3 décrit la modélisation du véhicule
électrique avec Modelica, la section 4 donne les résultats de simulation afin de vérifier le
modèle proposé, la section 5 traite l’estimation de la quantité d’énergie de la batterie néces-
saire pour parcourir une certaine distance, la section 6 fournit une étude de cas de l’approche
multi-agents pour faciliter la conception collaborative distribuée du véhicule électrique et la
section 7 donne les remarques de conclusion.
Dans ce chapitre, l’architecture de la Figure 4.1 est choisie [151]. Cette architecture com-
porte : une source de tension continue (batterie), un onduleur de tension triphasée, une ma-
chine électrique et un système de transmission.
95
4.2.2 Développement mathématique du véhicule électrique
4.2.2.1 Modèle des forces
La première étape de la modélisation du véhicule consiste à décrire un modèle des forces.
Les efforts résistants qui vont s’opposer au couple fourni par la machine électrique sont les
forces dues à la gravité, la résistance au roulement, l’aérodynamique et l’effet d’inertie. Ces
forces sont présentées dans la Figure 4.2.
Ft = Fa + Fr + Fp + Fi (4.1)
Avec
Fa = 12 .Cd .ρ.A f ront .V 2
Fr = Cro .M.g.cos(α)
(4.2)
Fp = M.g.sin(α)
Fi = M. dV
dt
Où
• Ft : la force de traction,
• Fa : la force aérodynamique,
• Fr : la force de résistance au roulement,
• Fp : la force pour vaincre une certaine pente,
• Fi : la force liée à l’accélération,
• Cd : le coefficient d’entraînement aérodynamique,
• ρ : la masse volumique de l’air,
• A f ront : la surface frontale du véhicule,
• V : la vitesse du véhicule,
• Cro : le coefficient de résistance au roulement,
• M : la masse du véhicule,
• g : l’accélération de la pesanteur,
96
• α : l’angle d’inclinaison de la pente.
Remarques :
Convention :
• Ct : le couple de traction,
• Cw : le couple de chaque roue motrice,
• rw : le rayon de la roue,
• ww : la vitesse angulaire des roues,
• Pt : la puissance de traction.
La chaîne de traction étudiée est munie d’un réducteur mécanique reliant l’actionneur à
l’arbre de transmission des roues. Ce réducteur est caractérisé par un rapport de réduction Rg .
Dans ces conditions, la vitesse de rotation du moteur d’entraînement et le couple qu’il doit
fournir sont liés aux grandeurs côté transmission par les relations [157] :
wm = ww .Rg
Cm = RCgt (4.5)
Pm = CM .wm
Où
97
• Cm : le couple mécanique de la machine électrique,
• wm : la vitesse angulaire de l’arbre de la machine électrique,
• Rg : le rapport de réduction,
• Pm : la puissance mécanique de la machine électrique.
• bon rendement,
• bonnes performances dynamiques grâce à la faiblesse des inductances statoriques due
à la largeur importante de l’entrefer apparent,
• champ magnétique important dans l’entrefer,
• pas de source de tension continue pour l’excitation.
La modélisation de la machine électrique est divisée en deux parties ; une partie électrique
et une partie mécanique. La partie électrique de la MSAP est donnée par [157] :
di1 di2 di3
U1 = R.i1 + L1 . dt + M12 . dt + M13 . dt + e1
U2 = R.i2 + L2 . didt2 + M21 . didt1 + M31 . didt3 + e2 (4.6)
U3 = R.i3 + L3 . didt3 + M31 . didt1 + M32 . didt2 + e3
Où
Les MSAP présentent lors de leur rotation des f.e.m sinusoïdales, dont les expressions
sont de la forme [157] :
e1 = K. wpe .sin(we.t)
e2 = K. wpe .sin(we.t − 2.Π
3 ) (4.7)
e3 = K. wpe .sin(we.t − 4.Π
3 )
Où
• k : le coefficient de f.e.m incluant notamment le nombre de spires par phase ainsi que
l’amplitude du champ rotorique,
98
• we : la vitesse angulaire électrique,
• p : le nombre de paire de pôles.
La partie mécanique de la machine synchrone à aimant permanent MSAP peut être mo-
délisée de la manière suivante [157] :
wm
J. = Cm − B.wm (4.8)
dt
Où
Le couplage entre la partie électrique et la partie mécanique est donné par [157] :
we = p.wm (4.9)
4.2.2.4 Onduleur
Un onduleur triphasé est constitué de trois cellules de commutation dont les commandes
décalées entre elles d’1/3 de période permettent de reconstituer un système triphasé de ten-
sions et de courants.
Dans notre cas, nous avons choisi un onduleur de type DC/AC pour transformer la tension
continue à la sortie de la batterie Vbat en une tension triphasée V1 , V2 et V3 comme entrée du
moteur électrique en changeant l’état des six interrupteurs. Le schéma de circuit électrique
de l’onduleur peut être vu dans la Figure 4.3.
Les tensions moyennes phase-neutre à la sortie de l’onduleur sont des tensions sinusoï-
dales alternatives, de même fréquence, de même valeur efficace et régulièrement déphasées
99
2.Π
de 3 . Ces tensions sont données par les expressions suivantes [157] :
V1 = V.sin(we .t)
V2 = V.sin(we .t − 2.Π
3 ) (4.10)
4.Π
V3 = V.sin(we .t − 3 )
Avec
Vbat
V = ma . (4.11)
2
Où
Pond
η= (4.12)
Pbat
Avec
Pond = V1 .i1 +V2 .i2 +V3 .i3
(4.13)
Pbat = Vbat .ibat
Où
4.2.2.5 Batterie
La batterie est la source d’énergie du véhicule. Elle est constituée de l’association en série
et/ou parallèle de cellules élémentaires. Le schéma équivalent de la batterie est présenté à la
100
Figure 4.4.
La tension totale, le courant et la masse de la batterie peuvent être calculées par les ex-
pressions suivantes [157] :
Vbat = Ns .vcel
ibat = N p .icel (4.14)
M = N .N .M
bat s p cel
Où
101
4.3 Modélisation du véhicule électrique avec Modelica
Après le développement mathématique du véhicule électrique, le système a été modélisé
en utilisant le langage orienté objet Modelica. Comme il est indiqué dans la Figure 4.5, ce
système est composé par les éléments suivants :
102
4.3.1 Batterie
4.3.1.1 Principaux types de batteries
Il existe différents types de batteries. Si leur fonctionnement est similaire, les matériaux
utilisés réagissent différemment et ont donc des performances différentes. Les types de batte-
ries les plus utilisées par l’industrie automobile sont au nombre de trois : batteries au plomb,
batteries au nickel et batterie au lithium [163, 164].
Batteries au plomb
Une batterie dite au plomb (ou plomb/acide) [164] est une batterie qui utilise une anode
et une cathode en plomb. Elle présente l’avantage de délivrer un courant de forte puissance
permettant d’alimenter des moteurs eux aussi puissants. En revanche, elle a une densité éner-
gétique faible et offre donc une faible autonomie à un véhicule. De plus, la durée de vie est
plutôt limitée pour ce type de batterie (autour de 600 cycles).
Le principal avantage, qu’elle est simple à produire et le plomb est un métal commun : le
coût est donc faible. Cependant, le plomb est toxique et polluant même s’il se recycle plutôt
facilement.
Batteries au nickel
Les batteries Nickel-cadmium (Ni-Cd) [164] sont très courantes dans l’industrie en gé-
néral et ont équipé un certain nombre d’anciens projets de véhicules électriques. Elles sont
légèrement plus performantes que les batteries au plomb (jusqu’à 80 Wh/kg) et relativement
bon marché. Cependant, elles possèdent un effet mémoire important ce qui rend leur utilisa-
tion contraignante. De plus, le cadmium est très polluant et difficile à recycler.
Les batteries Nickel métal-hydrure (Ni-Mh) stockent plus d’énergie (jusqu’à 110 Wh/kg)
et ne contiennent pas d’élément très polluant. En revanche, leur durée de vie est limitée et
elles se déchargent rapidement même quand elles ne sont pas utilisées (auto-décharge).
Enfin, les batteries Nickel-Zinc (Nickel Metal-Zinc) ont des performances comparables
à la technologie Nickel-Cadmium. En revanche, elles sont beaucoup moins polluantes, mais
plus chères.
Batteries au lithium
L’appellation batterie au lithium [164] regroupe de nombreuses technologies qui utilisent
du lithium sous différentes formes. Ces technologies sont aujourd’hui les plus performantes,
mais restent aussi très chères. Elles semblent toutefois s’imposer dans l’industrie automobile.
Les batteries lithium-ion, tout d’abord, utilisent le lithium sous forme d’ions insérés dans
l’électrolyte. Mais là encore il existe différents types, basés sur des matériaux différents :
103
• les batteries lithium-ion classiques : elles sont très performantes (150 à 200 Wh/kg),
mais chères. En effet, ces accumulateurs utilisent du cobalt ou du manganèse qui sont
rares et peuvent provoquer des réactions instables. Ils requièrent alors des systèmes de
contrôle coûteux. Elles ont une durée de vie plutôt élevée (autour de 1000 cycles) et
surtout aucun effet mémoire.
• les batteries lithium-ion fer phosphate sont moins performantes (100 Wh/kg) mais
beaucoup plus sûres et moins coûteuses. Leur durée de vie peut atteindre les 2000
cycles.
Les batteries lithium polymère sont très proches des batteries lithium-ion, sauf qu’elles uti-
lisent un électrolyte solide (gélifié). Cela permet de produire des accumulateurs avec des
formes très diverses et qui sont plus sûres que les batteries lithium-ion classiques. Ils sont, en
revanche, moins performants et plus chers à produire.
Allant profondément dans l’architecture interne du modèle comme il est monté dans la
Figure 4.7, le comportement électrique de la batterie est dicté seulement par des blocs qui se
trouvent dans la bibliothèque Modelica. Avant de décrire le rôle de chaque bloc, il est impor-
tant de spécifier que ce modèle fonctionne en cycle et que son rôle principal est de fournir
104
une tension entre les deux ports de la batterie pin_p et pin_n.
i(t)
Z
SoC = SoCint − dt (4.16)
C0
La valeur instantanée de l’état de charge est une entrée d’une table Vb qui fournit la ten-
sion d’une cellule de la batterie en fonction de l’état de charge. Cette valeur, multipliée par
le nombre de cellules en série Ns (représenté par le gain3), est utilisée comme référence pour
générer la tension de la batterie. Pour évaluer le comportement des différentes technologies
105
des batteries, le concepteur peut modifier la table Vb à la sortie du block SoC.
Un niveau de modélisation plus fin de ce modèle pourrait être l’insertion d’un tableau
pour modéliser la variation de la résistance interne en fonction de l’état de charge et de la
température de la batterie.
4.3.2 Onduleur
Le modèle de l’onduleur a été développé en utilisant un code de calcul pour effectuer
une conversion de courant continu en courant alternatif sur la base de l’équilibre entre la
puissance d’entrée, qui provient de la batterie et la puissance de sortie, qui sera remise à un
moteur à courant alternatif. Comme on peut le voir sur la Figure 4.8, le modèle est composé
de deux ports d’entrée (p, n), deux ports de sortie (P, N) et de deux connecteurs (a, we).
Les ports négatifs n et N sont reliés à la masse, les ports positifs p et P assurent la liaison
de l’onduleur avec la batterie et le moteur électrique, respectivement. Le premier connecteur
a représente le signal d’entrée du contrôle utilisé pour régler l’amplitude de la tension tripha-
sée. Le deuxième connecteur we représente la pulsation électrique requise par le moteur afin
de fonctionner correctement.
Passant maintenant à l’intérieur du modèle, comme il est indiqué dans la Figure 4.9, on
peut voir qu’il y a un seul paramètre modifiable, qui est le rendement de l’onduleur nu. Ainsi,
le concepteur peut modifier sa valeur selon les spécifications du fabricant de l’appareil choisi.
L’aspect le plus important qui a été pris en compte lors du processus de modélisation de
l’onduleur est d’assurer l’équilibre entre les puissances d’entrée et de sortie. Cette relation
est donnée par l’équation (4.2) :
Pi = −nu ∗ Pb (4.17)
Les deux puissances électriques Pb et Pi sont calculées par le produit entre la tension et
le courant à l’entrée et à la sortie de l’onduleur, respectivement.
106
F IGURE 4.9 – Code Modelica de l’onduleur.
107
Vb
Ve f f = a ∗ (4.21)
2
Néanmoins, la tension efficace n’est pas la seule variable importante dans l’équation (1).
Il y a aussi les variables a et we. La variable a est sans dimension qui découle du système
de contrôle de l’onduleur afin d’amplifier ou réduire l’amplitude de la tension triphasée. La
fréquence angulaire we dérive de la vitesse angulaire mécanique de l’arbre moteur et permet
de changer la forme des ondes de signaux de tension en fonction de la demande de couple
moteur.
108
modifiables ont été créés :
La Figure 4.11 représente les premières lignes du code de calcul qui régit le compor-
tement du moteur électrique. En plus de ces variables, on a créé aussi six autres variables
nécessaires pour simuler les caractéristiques des composants internes du moteur :
F IGURE 4.11 – Déclaration des variables de performance des composants internes du moteur.
Après la déclaration de tous ces paramètres et ces variables, l’étape suivante consiste à
écrire le système d’équations (mécanique, électrique et électromécanique) caractéristique du
moteur électrique. Ainsi, afin de modéliser le comportement réel du modèle, les équations
suivantes sont prises en considération :
109
F IGURE 4.12 – Paramètres utiles pour le code de calcul du moteur.
tromagnétique E sont considérées. De ce fait, afin de tenir compte des trois phases, chaque
110
valeur de E est liée à la valeur de son courant respectif. Cette corrélation peut être représentée
par l’équation (4.10), dans laquelle l’indice j appartient à {0, 1, 2}.
Les équations du circuit électrique ouvert qui gouvernent le comportement du moteur sont
rédigées selon le schéma représenté sur la Figure 4.14. Comme on peut le voir, le circuit est
composé d’une résistance R, qui représente les pertes internes de la machine, une inductance
L et une inductance mutuelle M. Une fois le calcul de E est terminé, les tensions aux bornes
des différentes phases peuvent être calculées. Par exemple, l’expression de la tension de la
première phase est donnée par l’équation suivante :
di[1] di[2] di[3]
v[1] = R ∗ i[1] + L ∗ +M∗ +M∗ + E[1] (4.26)
dt dt dt
La puissance électrique totale Pe est donnée par l’équation suivante :
Pe = v ∗ i (4.27)
Enfin, une fois toutes les relations mathématiques responsables à la modélisation du com-
portement interne du moteur sont complètement décrites, l’accent est maintenant dirigé vers
la spécification des valeurs des paramètres de sortie du modèle.
Dans ce but, d’une part le couple moteur est calculé en divisant la puissance électrique Pe
(qui est égale à la puissance mécanique) par la vitesse mécanique de l’arbre moteur wm. Afin
de respecter les contraintes de la machine, le résultat est comparé au couple maximum Cmax
admis par le moteur et la valeur minimale entre les deux est considérée comme le couple
mécanique nécessaire C. D’autre part la vitesse mécanique de l’arbre moteur est calculée de
la même manière, mais sa valeur est obtenue par la comparaison entre la rotation maximale
du moteur wmax et la dérivée de l’angle de l’arbre moteur (la dérivée de f lange_a.phi).
111
F IGURE 4.15 – Spécifications des sorties du moteur.
• Gear Box,
• Wheel,
• Mass.
Pour chaque modèle du véhicule, il existe des valeurs distinctes des paramètres liés à ces
éléments. Ainsi, le concepteur doit spécifier toutes les caractéristiques du système de trans-
mission avant de lancer la simulation.
Concernant le Gear Box, il y a un seul paramètre qui doit être déterminé, qui est le rap-
port de la transmission Rg. Les deux autres composants (Wheel et Mass) sont nécessaires
pour transformer le mouvement de rotation de l’arbre moteur en mouvement de translation
du véhicule. Pour ce faire, le concepteur doit définir ici deux paramètres :
112
4.3.5 Effort résistant
Cette partie est constituée de deux blocs, comme la montre la Figure 4.17. Le premier bloc
Resistive_Forces est constitué d’une expression mathématique qui calcule l’effort résistant
en fonction de la vitesse instantanée du véhicule et le deuxième bloc f orce reçoit le résultat
généré pour le transformer en une force, qui doit être appliquée sur la dernière partie du
système de transmission.
113
Le système fonctionne comme suit : d’abord, le bloc feedback calcule la différence entre
la vitesse de référence et la vitesse calculée à la sortie du block to_km/h de façon à trans-
mettre le résultat au VoltageController. Le VoltageController est responsable à la lecture
et le calcul de la réponse de f eedback afin de donner la valeur la plus appropriée pour le
paramètre de sortie a. Néanmoins, si la sortie a n’est pas limitée, dans ce cas le système de
contrôle est risque d’être instable. Par conséquent, il est nécessaire d’ajouter un autre bloc
pour limiter la valeur de a (dans notre cas c’est le bloc Limiter).
Les caractéristiques internes de système de contrôle sont indiquées dans le Tableau 4.1.
Paramètres Valeur
Ti 0.5
Td 0.5
Pour vérifier le modèle d’analyse qui sera utilisé plus tard dans le processus d’optimi-
sation, l’objectif de la partie suivante, il est nécessaire de comparer la vitesse à la sortie du
véhicule électrique avec un cycle de conduite standard fourni en entrée.
Dans le cadre de cette étude, un cycle de conduite qui exprime l’évolution de la vitesse
du véhicule en fonction du temps est utilisé comme référence pour comparer le modèle dé-
veloppé dans la partie précédente. Il permet d’évaluer aussi la variation des différents para-
mètres du véhicule tels que le courant de la batterie, la puissance de la batterie, l’effort de
traction, le couple moteur et la vitesse de rotation de l’arbre moteur, etc.
Pour les besoins de la simulation et pour reproduire un trajet routier avec différentes
conditions de conduites, on a recours au cycle de vitesse européen normalisé NEDC ( New
European Driving Cycle) [166].
Dans cette étude, les paramètres utilisés dans le modèle de véhicule électrique sont don-
nés dans le Tableau 4.2. L’objectif est de simuler le modèle proposé. Les valeurs par défaut
du nombre de cellules en série Ns , le nombre de cellules en parallèles N p , la constante de la
force électromotrice Em f et le rapport de transmission Rg sont respectivement 50, 5, 1 et 6.
114
Paramètres Description Valeur Unité
M Masse du véhicule 1540 Kg
ρ Masse volumique de l’air 1.2 kg.m−3
A f ront Surface frontale du véhicule 1.8 m2
Cro Coefficient de résistance au roulement 0.2 −
Cd Coefficient d’entraînement aérodynamique 0.013 −
α Angle d’inclinaison de la pente 0 rad
g Accélération de pesanteur 9.81 m.s−2
rw Rayon de la roue 0.28 m
Rg Rapport de réduction 1 ≤ Rg ≤ 12 −
Em f Constante de la f.e.m 0.1 ≤ Em f ≤ 2 N.m.A−1
η Efficacité de l’onduleur 0.98 −
Ns Nombre de cellules en série 1 ≤ Ns ≤ 100 −
Np Nombre de cellules en parallèle 1 ≤ N p ≤ 10 −
SoCinit Etat de charge initial 0.8 −
V Vitesse de véhicule Variable km/h
SoC Etat de charge Variable −
P Puissance électrique Variable kW
Les résultats de simulation du véhicule selon le cycle NEDC sont donnés par les Figures
4.19, 4.20 et 4.21.
115
NEDC.
F IGURE 4.19 – Comparaison entre la vitesse imposée par le cycle NEDC et la vitesse mesurée
à la sortie du modèle.
En modifiant l’entrée par une vitesse constante, on peut simuler différents autres cas de
test de performance, tels que la vitesse maximale du véhicule, la vitesse d’accélération à t=10
secondes et la vitesse du véhicule en pente.
116
F IGURE 4.21 – Variation de la puissance électrique durant le cycle NEDC.
Par exemple, la puissance maximale donnée par la simulation d’un test de vitesse maxi-
male égal à 120 km/h pendant 250 secondes est de l’ordre de 64 kW , l’état de charge de la
batterie égale à 73 % et la masse de la batterie est égale à 198.4 kg . Ces résultats doivent
être optimisés pour réduire la puissance consommée par le moteur électrique et la masse de
la batterie et de maximiser l’état de charge de la batterie à la fin du cycle de conduite.
Le modèle du véhicule électrique développé dans la section précédente a été utilisé pour
calculer la valeur de l’énergie requise par la batterie à chaque kilomètre parcouru par le vé-
hicule. La seule différence est que le cycle européen normalisé NEDC est remplacé par une
vitesse constante, c’est la vitesse de référence que le véhicule doit atteindre. De plus, d’autres
paramètres ont été également ajoutés à l’intérieur du modèle, comme il est indiqué dans la
Figure 4.22. Ces paramètres sont définis par les équations suivantes :
117
• Energy, c’est l’énergie totale consommée par le véhicule lors du cycle imposé ;
1
Z
Energy = (powerSensor.Power)dt (4.28)
3600
1
Z
RangeKm = (speedSensor.speed)dt (4.29)
1000
• EnergyKm , c’est l’énergie requise par le véhicule pour parcourir un kilomètre à une
vitesse constante ;
Energy
EnergyKm = (4.30)
RangeKm
F IGURE 4.22 – Code Modelica pour l’estimation de l’énergie requise par la batterie.
La Figure 4.23 représente une étude paramétrique Parametricstudy effectuée avec Mo-
delCenter pour déterminer la fonction EnergyKm . Dans cette étude, les variables d’entrée sont
le nombre total de cellules et la vitesse de référence à atteindre et le paramètre de sortie (ré-
ponse) est la fonction EnergyKm .
118
F IGURE 4.23 – Interface graphique de l’étude paramétrique avec du ModelCenter.
À partir des résultats indiqués dans la Figure 4.24, il est possible de tracer les courbes de
la Figure 4.25, qui montrent la variation de EnergyKm en fonction de la vitesse à atteindre
pour un certain nombre cellules.
Ces graphiques peuvent être utilisés comme référence par le concepteur pour calculer
l’énergie totale requise par un véhicule électrique en fixant certaines exigences telles que :
• la distance à parcourir,
• la vitesse du véhicule,
119
F IGURE 4.24 – Étude paramétrique effectuée à l’intérieur du ModelCenter pour estimer
l’énergie.
120
• le nombre de cellules.
EXEMPLE :
Exigences :
Le concepteur doit sélectionner sur l’axe x la vitesse requise qui est égale à 100 km/h,
après cela, en utilisant la courbe de 300 cellules, il doit lire sur l’axe y la valeur de EnergyKm
nécessaire. Si la distance à parcourir est égale à 100 km, compte tenu d’un cycle de décharge
de la batterie, alors l’énergie totale TotalEnergy est donnée par la relation suivante :
• La vitesse maximale du véhicule est définie comme étant la vitesse maximale que le
véhicule peut atteindre quand le moteur est en plein régime.
• La performance d’accélération est donnée par le temps d’accélération et la distance
couverte, quand le véhicule part de la vitesse zéro jusqu’à une vitesse de référence
donnée (par exemple de 0 à 100 km/h sur une route horizontale).
• La "gradeability" est définie par l’angle de la pente de route que le véhicule peut sur-
monter à une vitesse de référence constante. Elle peut être exprimée en degré ou en
pourcentage.
121
du véhicule, le rendement de la transmission mécanique. Des spécifications de performance
doivent être indiquées par le cahier des charges concernant la vitesse maximale, le temps
d’accélération de 0 jusqu’à une certaine vitesse de véhicule, la gradeability demandée, etc.
Pour les variables de conception, nous limitons notre étude au nombre de cellules en série
Ns , le nombre de cellules en parallèles N p , la constante de la force électromotrice Em f du
moteur électrique et le rapport de transmission Rg .
D’après la formulation du problème d’optimisation, les deux contraintes V10 et Vmax sont
liées aux performances globales du système. Il est difficile d’affecter ces deux contraintes à
des partitions spécifiques. De plus, la décomposition suivant les variables de conception est
très efficace dans le cas où tout le problème est modélisé sous une forme mathématique. Mais
dans notre cas, le problème du véhicule électrique est modélisé à la fois par des composants et
par des modèles mathématiques. Et par conséquent l’idéal est d’étudier le degré de couplage
122
entre les fonctions objectifs qui sont associées à des composants spécifiques (batterie, moteur
et réducteur) pour décomposer le problème en plusieurs partitions et d’affecter à chaque par-
tition ses contraintes et ses variables de conceptions internes.
Dans la configuration avec deux partitions, les deux fonctions objectifs f1 et f2 sont for-
tement couplées, de sorte qu’elles doivent être assignées à la même partition. Par contre, le
degré de couplage entre les deux autres fonctions objectifs f3 et f4 est faible. Par conséquent,
la solution est de considérer deux modèles d’analyse. Le premier modèle, c’est le modèle
de la source d’énergie électrique pour analyser f1 et f2 et le deuxième modèle, c’est le sys-
tème de propulsion pour traiter f3 et f4 . Ces deux modèles sont associés à deux partitions, qui
peuvent être exécutées en parallèle sur le même ordinateur ou sur deux ordinateurs différents,
ce qui réduit le temps de calcul.
Dans la configuration avec trois partitions, le degré de couplage entre f3 et f4 est faible
de sorte que chaque fonction peut être associée à un modèle d’analyse. Dans ce cas, trois
modèles d’analyse sont nécessaires pour traiter ce problème : modèle de la batterie pour trai-
ter f1 et f2 , modèle de la machine électrique pour calculer f3 et le dernier modèle, c’est le
modèle de la chaîne de transmission pour déterminer f4 .
123
ce problème. Les deux critères utilisés pour le choix de la meilleure configuration sont : le
temps de calcul de la solution globale pour chaque configuration C1 et nombre de partitions
de la configuration à choisir C2 . Ces deux critères doivent être minimisés. D’après le Tableau
4.3, le choix est trivial puisque les deux critères de sélection sont en faveur pour la configu-
ration avec deux partitions.
Cette configuration est caractérisée par les variables de couplages suivantes : la tension
U et le courant I. L’espace de recherche de ses variables est inconnu et par conséquent, il est
nécessaire de passer par les étapes de 4 à 6 durant le processus de conception afin de déter-
miner le domaine de validité de U et I.
124
Mbat
SoC
P
Rg
Y =
V10
Vmax
U
I
Le domaine de la conception est défini par :
1 ≤ Ns ≤ 100
1 ≤ N p ≤ 10
0.1 ≤ Em f ≤ 2
1 ≤ Rg ≤ 12
125
Une fois le méta-modèle est construit, le concepteur définit un scénario d’optimisation
pour déterminer les domaines de validité des variables de couplages. Dans notre cas, l’op-
timisation de méta-modèle est réalisée en utilisant des algorithmes disponibles dans la bi-
bliothèque de ModelCenter, en particulier l’algorithme Non-dominated Sorting Genetic Al-
gorithm II (NSGA II). NSGA II [167] est une technique d’optimisation multi-objectifs qui
utilise un algorithme génétique de tri non-dominé. Une conception est dite dominée s’il y a
une autre conception qui lui est supérieure dans tous les objectifs.
Comme il est indiqué dans la Figure 4.28, trois composants qui sont insérés dans l’inter-
face graphique du ModelCenter. Le premier composant ElectricVehicle est le modèle Mode-
lica du véhicule électrique à partir duquel est construit le deuxième composant SurrogateModel
(un méta-modèle du modèle d’analyse Modelica). Le dernier composant OptimizationTool
représente l’optimisation basée sur le méta-modèle, en utilisant l’algorithme NSGAII de Mo-
delCenter.
Le problème d’optimisation est multi-objectif, le méta-modèle n’a pas une solution unique,
mais un ensemble de solutions dont les limites min et max des vecteurs X et Y sont données
dans le Tableau 4.4.
126
Méta-modèle
Ns 74 - 83
Np 4-5
Em f (Nm/A) 0.203 - 0.381
Rg 4.73- 7.91
Mbat (Kg) 149.7 - 198.2
SoC 0.722 - 0.754
P(kW ) 54.6 – 65.7
V10 (km/h) 55.1– 64.4
Vmax (km/h) 115.4 – 123.9
I(A) 141.6 - 155.3
U(V ) 385.8- 422.7
L’étape suivante consiste à formuler les sous problèmes d’optimisation des deux parti-
tions de la configuration choisie à partir des étapes précédentes. Chaque partition a un mo-
dèle d’analyse (modèle Modelica) pour évaluer ses contraintes et ses objectifs locaux. Pour
chaque partition, nous allouons le même algorithme d’optimisation NSGA II avec Model-
Center.
Le premier modèle d’analyse est constitué par la batterie en série avec une résistance
équivalente qui représente le reste du modèle du véhicule électrique. La valeur de cette résis-
tance est déterminée à partir des résultats d’optimisation du méta-modèle.
Umax Umin
Req = = = 2.72Ω (4.33)
Imax Imin
Le deuxième modèle d’analyse, c’est le modèle du système de propulsion. Pour avoir une
simulation exacte de ce système on doit lui connecter une source de tension constante U pour
remplacer le modèle de la batterie.
127
min(Mbat )
max(SoC)
Mbat ≤ 200
Partition1 : 141.6 ≤ I ≤ 155.3 (4.34)
385.8 ≤ U ≤ 422.7
1 ≤ Ns ≤ 100
1 ≤ N p ≤ 10
min(P)
min(Rg )
55 ≤ V10 ≤ 65
115 ≤ Vmax ≤ 125
Partition2 : (4.35)
141.6 ≤ I ≤ 155.3
385.8 ≤ U ≤ 422.7
1 ≤ Rg ≤ 12
0.1 ≤ Em f ≤ 2
Pour la configuration choisie avec deux partitions, nous allons considérer deux agents de
conception DA1 et DA2 . Chaque agent est affecté à une partition pour participer à la recherche
des solutions optimales locales. Pour coordonner les résultats trouvés par ses derniers, nous
allons considérer un deuxième type d’agent, appelé l’agent de coordination CA, dont le but
est de participer à la recherche des solutions optimales du problème globales.
128
fonctionne et déploie l’agent dans l’environnement d’exécution.
Chaque partition est caractérisée par un optimiseur local et un modèle d’analyse. Les
deux optimisations sont basées sur les paramètres et les variables du véhicule électrique in-
diquées dans le Tableau 4.2. Ces deux optimisations sont multi-objectifs de telle sorte que
chaque partition n’a pas une seule solution mais un ensemble de solutions appelé front de
Pareto comme il est indiqué dans les Figures 4.29 et 4.30. Chaque point du front de Pareto
est caractérisé par un vecteur d’entrée (variables de conception à optimiser) et un vecteur de
sortie (les objectifs à atteindre et les contraintes à respecter).
Les deux optimisations locales sont effectuées avec succès. Les meilleures solutions obte-
nues par chaque agent physique DA sont enregistrées dans un fichier Excel. Pour récupérer ces
points, le rôle de chaque DA est de déterminer l’emplacement du son fichier Excel. L’étape
suivante consiste à transformer le fichier Excel en Jtable (tableau java). Chaque Jtable est
constitué par un certain nombre des cellules et chaque cellule est caractérisée par un entête et
des données à récupérer à partir de son fichier Excel. Pour connaitre le nombre des points le
129
F IGURE 4.30 – Front de Pareto pour DA2 .
long de chaque front de Pareto, il suffit de déterminer le nombre de lignes de chaque tableau.
Dans notre cas, le nombre des points de Pareto est 15 pour DA1 et 23 pour DA2 . Pour savoir
le domaine de validité des différentes variables (variables de conceptions, variables de cou-
plages, fonctions objectifs, contraintes) il suffit de déterminer la valeur minimale et maximale
de chaque cellule (chaque colonne) du Jtable.
L’optimisation réalisée par DA2 montre que la puissance maximale requise par le mo-
teur P est comprise entre 55,4 kW et 64,8 kW , une variation de ∆P est d’environ 14,5%. Le
rapport de réduction de la boîte de vitesses Rg varie entre 4,92 et 7,36, une variation ∆Rg
est d’environ 33,15%. Les deux critères varient donc fortement le long du front optimal, ce
qui signifie qu’il existe un compromis entre les deux. Si on trouve que l’un des critères est
montrant une variation significative par rapport à l’autre, par exemple, ∆P négligeable devant
∆Rg , cela signifie qu’il est possible d’améliorer le critère de la puissance maximale requise
par le moteur P sans avoir un impact important sur le critère de rapport de réduction Rg . Le
compromis existe dans ce cas de DA2 et aussi dans le cas de DA1 . Le choix d’une solution
sur les fronts est difficile. Et par conséquent, il est très difficile de déterminer les valeurs des
variables de conception de DA1 avec celles de DA2 qui respectent les exigences demandées
afin de trouver les solutions optimales du problème global. L’avantage de l’approche multi-
agents est de définir des algorithmes au cours de processus de coordination permettant à CA
130
Résultats après optimisation
Ns 75 - 82
Np 4-5
I(A) 142.1 - 152.5
U(V ) 387.9- 416.1
DA1 Mbat (Kg) 150.8 - 198.4
SoC 0.723 - 0.752
Temps de calcul (min) 14.56
Nombre de solutions 15
Dans l’exemple du véhicule électrique, il est inutile d’appliquer l’algorithme 3.1 pour
spécifier le lien à parcourir. En effet, le problème d’optimisation est formé par deux agents de
conception et par conséquent il y a un seul lien à parcourir. Le premier algorithme utilisé par
CA est l’algorithme 3.2 qui consiste à déterminer le minimum des maximums d’intervalles et
le maximum des minimums d’intervalles de chaque variable de coordination afin de limiter
l’espace de recherche des solutions optimales. Pour implémenter cet algorithme, tout d’abord,
il suffit de récupérer les bornes (les limites inférieures et supérieures) de U et I envoyées par
DA1 et DA2 . Ensuite, il faut ajouter ces deux commandes mathématiques : Math.max () et
Math.min () dans la classe de l’agent de coordination. Dans notre cas, cela donne (392.1
≤ U ≤ 416.1 , 142.6 ≤ I ≤ 151.6). La Figure 4.31 montre la mise en œuvre de cet algorithme
dans l’environnement de développement JADE avec Eclipse. Les agents sont déployés dans le
conteneur principal. Jtable 1 et 2 sont les tableaux de solutions de DA1 et DA2 respectivement.
131
F IGURE 4.31 – La mise en œuvre de l’algorithme de limitation de l’espace de recherche dans
l’environnement de développement JADE avec Eclipse.
Le deuxième algorithme de coordination utilisé par CA est l’alghorithme 3.3 qui consiste
à coordonner les variables de couplages entre les différents agents de conception afin de
trouver la cohérence entre les bonnes valeurs des variables de conception qui respectent les
performances globales du système. Dans notre cas, l’algorithme 3.2 utilisé par CA pour dé-
terminer les valeurs des variables de conception de DA1 et DA2 est donné par :
Où
(U1 , I1 ) et (U2 , I2 ) sont les valeurs des variables de couplages de DA1 et DA2 respectivement.
132
Pour implémenter cet algorithme, CA demande à DA1 et DA2 , en envoyant ACLMes-
sage.Request, de déterminer l’ensemble des points (solutions des fronts de pareto) dont 392.1
≤ U ≤ 416.1 et 142.6 ≤ I ≤ 151.6. Après la réception du message de CA, chaque DA effec-
tue une recherche locale à l’intérieur de son tableau Jtable pour déterminer tous les points
demandés par CA. Dans ce cas, le nombre de solutions trouvées est 13 pour DA1 et 19 pour
DA2 . Chaque DA communique avec CA en envoyant ACLMessage.Inform et le contenu du
message est l’ensemble des solutions trouvées.
Après la réception des messages envoyés par DA1 et DA2 , CA enregistre ces solutions dans
un Jtable. Dans ce cas, le rôle de CA est de déterminer tous les points du Jtable dont kU1 (i) −
U2 ( j)k2 ≤ 1 et kI1 (i) − I2 ( j)k2 ≤ 1. Pour chaque point trouvé, CA retourne les valeurs des
variables de conception (Ns , N p ) de DA1 et (Rg , Em f ) de DA2 . La Figure 4.32 représente
l’implémentation du deuxième algorithme pour la détermination des solutions communes
entre DA1 et DA2 .
F IGURE 4.32 – Les solutions optimales répondant aux exigences demandées par DA1 et DA2 .
La Figure 4.33 représente la variation de la vitesse du véhicule pour les 4 premières solu-
tions optimales pour lesquelles nous avons 57.1 ≤ V10 ≤ 62.5 and 118.3 ≤ Vmax ≤ 122.4.
133
Solutions Ns Np Em f Rg
1 79 4 0.264 5.83
2 80 4 0.251 6.18
3 81 4 0.244 6.41
4 82 4 0.226 6.91
5 76 5 0.309 5.14
6 77 5 0.280 5.46
7 78 5 0.270 5.59
Pour valider notre approche, une étude comparative avec les méthodes classiques d’op-
timisation est nécessaire. Pour cela, nous avons utilisé la méthode AAO pour résoudre la 1
ère configuration de la partie précédente où toutes les fonctions objectifs sont associées à une
seule partition. Cette configuration est caractérisée par un seul modèle d’analyse développé
dans la Figure 4.5. Les résultats d’optimisation de cette configuration sont indiqués dans le
Tableau 4.7.
134
AAO
Ns 74 - 83
Np 4-5
Em f (Nm/A) 0.214 - 0.413
Rg 4.52- 7.76
Mbat (Kg) 150.8 - 198.4
SoC 0.722 - 0.756
P(kW ) 53.4 – 66.3
V10 (km/h) 55.1– 64.6
Vmax (km/h) 115.2 – 123.6
Temps de calcul (min) 43.22
Nombre de solutions 10
Les deux critères sélectionnés ici pour comparer l’approche multi-agents avec la méthode
AAO sont : le nombre total des solutions optimales et le temps de calcul global. L’approche
muti-agents nous a permis de déterminer 7 solutions dans 23.36 min (c’est le maximum du
temps de calcul des différentes partitions de la configuration choisie) alors qu’avec la méthode
AAO nous avons détecté 10 solutions dans 43 min. En comparant ces résultats d’optimisation,
nous pouvons en déduire que 70% du nombre total de solutions sont déterminées avec une
réduction importante de 45% au niveau du temps de calcul global.
4.7 Conclusion
Dans ce chapitre, nous avons développé un modèle du véhicule électrique à partir duquel
nous avons estimé l’état de charge de la batterie ainsi que la quantité d’énergie nécessaire pour
parcourir une certaine distance. Nous avons utilisé ce modèle comme un cas d’application
pour valider notre approche multi-agents. Nous avons décomposé le problème de conception
du véhicule électrique en deux agents de conception et nous avons attribué à chaque agent
ses objectifs et ses contraintes. Un agent de coordination est considéré pour coordonner les
résultats trouvés par les agents de conception afin de parvenir à des décisions optimales. Nous
avons montré que l’approche proposée permet aux agents de suivre un processus de concep-
tion afin de faciliter la coordination de la conception collaborative distribuée. Les résultats
optimaux ont été trouvés et les résultats globaux de simulation ont été présentés.
En outre, nous avons décrit la mise en œuvre et la programmation de ces deux types
d’agents en utilisant la plate-forme JADE avec Eclipse. Nous avons constaté que JADE est
135
tout à fait approprié pour le développement de systèmes multi-agents, car il supporte de
nombreux concepts d’agents tels que la communication, le protocole et le comportement.
136
Conclusion générale et
perspectives
Conclusion générale et perspectives
Notre principale contribution dans cette thèse est de proposer une approche multi-agents
pour la conception optimale des systèmes mécatroniques distribués. Dans cette approche, on
a utilisé deux types d’agents logiciels, un agent de coordination CA et des agents de concep-
tions DA(s), qui communiquent avec des agents physiques (concepteurs, ingénieurs, etc) qui
sont en relation directe avec les outils de conception. Le rôle de CA est de participer à la re-
cherche des solutions optimales globales, alors que chaque DA est responsable à une partition
locale spécifique pour participer à la recherche des solutions optimales locales.
L’approche proposée est basée sur un processus de coordination pour coordonner les ré-
sultats trouvés en cours des optimisations effectuées par les agents de conception. Cette ap-
proche a été appliquée au cas de la conception préliminaire d’un véhicule électrique pour
illustrer comment l’utilisation du mécanisme de coordination permet aux concepteurs de fa-
ciliter la conception collaborative distribuée et de parvenir à une décision optimale du pro-
blème global.
Dans le premier chapitre, nous avons commencé par établir le cadre général de ce travail
de thèse. Pour cela, nous avons présenté un bref aperçu des systèmes mécatroniques (his-
torique, définition, applications et conception). Ensuite, nous avons abordé le processus de
conception de ces systèmes en mettant l’accent sur les méthodes classiques de conception
utilisées. Aussi, nous avons présenté les outils de modélisation et de simulation qui ont été
l’origine du développement de ce type de système. Enfin, nous avons discuté quelques enjeux
liés à la conception mécatronique.
Dans le deuxième chapitre, nous avons présenté une synthèse des approches existantes,
telles que les approches MDO et les approches MOO, pour supporter les enjeux liés à la
conception des systèmes mécatroniques, plus particulièrement la problématique d’optimi-
sation. Nous avons discuté les avantages et les limites de chaque approche. Nous avons
montré que l’utilisation de l’une de ces approches pour l’optimisation d’un problème multi-
disciplinaire est coûteuse en temps de calcul puisqu’elle nécessite un grand nombre d’éva-
138
luations des fonctions objectifs pour atteindre une solution optimale. Afin de surmonter le
problème de coût de calcul, nous avons parlé dans la dernière partie de ce chapitre de la
technique de substitution qui consiste à remplacer un grand nombre d’évaluations par des
approximations construites à partir des modèles simples appelés méta-modèles ou modèles
de substitution.
Afin de surmonter les limites des approches classiques d’optimisation, nous avons déve-
loppé dans le troisième chapitre une nouvelle approche basée sur les paradigmes multi-agents
pour la conception optimale des systèmes mécatroniques.
Dans le quatrième chapitre, nous avons appliqué l’approche muti-agents sur le cas de
conception préliminaire d’un véhicule électrique. Nous avons validé les résultats trouvés de
l’approche proposée par comparaison avec les résultats obtenus en utilisant les approches
classiques d’optimisation.
Par rapport aux techniques classiques MDO, l’approche multi-agents nous permet :
Par contre, l’inconvénient majeur de cette approche, est que son implémentation est un
peu difficile et nécessite de définir une politique de partage d’informations et de coordination.
Perspectives
Les résultats déterminés dans ce travail offrent des perspectives intéressantes de dévelop-
pement futur. Les recherches futures pourront se concentrer sur :
- La récupération des données via un format XML d’une configuration d’optimisation re-
présentée par un bloc SysML de type IBD afin d’évaluer automatiquement le critère C1 .
- L’utilisation d’une base de données pour enregistrer et accéder aux résultats d’optimi-
sation trouvés par les différents agents de conception.
- L’adaptation de l’algorithme du théorie des jeux (Gamme theory) ainsi que l’algorithme
des colonies de fourmis (Ant colony) pour coordonner les résultats trouvés au cours des
optimisations effectuées par les agents de conception.
139
Bibliographie
[1] M. Miladi Chaabane. Modélisation géométrique et mécanique pour les systèmes mé-
catroniques. PhD thesis, Châtenay-Malabry, Ecole centrale de Paris, 2014.
[2] C. Haskins and K. Forsberg. Systems engineering handbook : A guide for system
life cycle processes and activities. In International Council on Systems Engineering.
Incose, 2007.
[3] H. Trabelsi. Contribution à la prise en compte d’exigences dynamiques en conception
préliminaire de systèmes complexes. PhD thesis, Châtenay-Malabry, Ecole centrale de
Paris, 2014.
[4] J-P. Jamont. DIAMOND : Une approche pour la conception de systèmes multi-agents
embarqués. PhD thesis, Institut National Polytechnique de Grenoble-INPG, 2005.
[5] B.W. Boehm. A spiral model of software development and enhancement. Computer,
21(5) :61–72, 1988.
[6] M. Tahan, A. Touil, J. Vareille, and P. Le Parc. La méthode de développement en x,
un autre point de vue sur le cycle de vie. 20ème Congrès Français de Mécanique, 28
août/2 sept. 2011-25044 Besançon, France (FR), 2011.
[7] M. Hammadi. Contribution à l’intégration de la modélisation et la simulation multi-
physique pour conception des systèmes mécatroniques. PhD thesis, Châtenay-Malabry,
Ecole centrale de Paris, 2012.
[8] Modelica Association. Modelica : Modeling of complex physical systems. URL
http ://www. modelica. org, 1997.
[9] K. Ejjabraoui. Contribution à la conception de systèmes mécatroniques automobiles :
méthodologie de prédimensionnement multi-niveau multiphysique de convertisseurs
de puissance. PhD thesis, SUPELEC, Gif sur Yvette, France, 2010.
[10] A. Berro. Optimisation multi-objectif et strategie d evolution en environnement dyna-
mique. PhD thesis, 2001.
[11] J-B. Welcomme. MASCODE : un système multi-agent adaptatif pour concevoir des
produits complexes. Application à la conception préliminaire avion. PhD thesis, Uni-
versité Paul Sabatier, 2008.
[12] M. H. Bonte. Optimisation strategies for metal forming processes. University of
Twente, 2007.
[13] K. Zidi. Système interactif d’aide au déplacement multimodal (SIADM). PhD thesis,
Ecole Centrale de Lille ; Université des Sciences et Technologie de Lille-Lille I, 2006.
140
[14] R.H. Bishop. The Mechatronics Handbook. CRC Press, 2014.
[15] O. Penas, R. Plateaux, J-Y. Choley, and A. Riviere. The different complexity levels in
mechatronic design process. In 3rd International Conference on Software, Knowledge,
Information Management and Applications SKIMA, Fès, Morocco, 2009.
[16] T. More. Mechatronics. Technical report, Yaskawa Internal Trademark Application
Memo 21.131. 01, 1969.
[17] N. Kyura. The development of a controller for mechatronics equipment. Industrial
Electronics, IEEE Transactions on, 43(1) :30–37, 1996.
[18] VDI Guideline. 2206, design methodology for mechatronic systems, 2003.
[19] N. Kyura and H. Oho. Mechatronics-an industrial perspective. Mechatronics,
IEEE/ASME Transactions on, 1(1) :10–15, 1996.
[20] M. Tomizuka. Mechatronics : from the 20th to 21st century. Control engineering
practice, 10(8) :877–886, 2002.
[21] K. Craig. Mechatronic system design. In Proceedings of the Motor, Drive & Automa-
tion Systems Conference, 2009.
[22] S. Turki. Ingénierie système guidée par les modèles : Application du standard IEEE
15288, de l’architecture MDA et du langage SysML à la conception des systèmes mé-
catroniques. PhD thesis, Université du Sud Toulon Var, 2008.
[23] G. Rzevski. On conceptual design of intelligent mechatronic systems. Mechatronics,
13(10) :1029–1044, 2003.
[24] B. Canbaz. Preventing and resolving design conflicts for a collaborative convergence
in distributed set-based design. PhD thesis, Ecole Centrale Paris, 2013.
[25] Y-E. Nahm and H. Ishikawa. Integrated product and process modeling for collaborative
design environment. Concurrent Engineering, 12(1) :5–23, 2004.
[26] G. Pahl, W. Beitz, J. Feldhusen, and K-H. Grote. Engineering design : a systematic
approach, volume 157. Springer Science & Business Media, 2007.
[27] C. Espanet. Modélisation et conception optimale de moteurs sans balais à structure
inversée-Application au moteur-roue. PhD thesis, Université de Franche-Comté, 1999.
[28] J-P. Meinadier. Ingénierie et intégration des systèmes. Hermes, 1998.
[29] S. Arnold. Iso 15288 systems engineering :system life cycle processes. International
Standards Organisation, 2002.
[30] W.W. Royce. Managing the development of large software systems. In proceedings of
IEEE WESCON, volume 26. Los Angeles, 1970.
[31] P. Joore. The v-cycle for system innovation translating a broad societal need into
concrete product service solutions : the multifunctional centre apeldoorn case. Journal
of Cleaner Production, 16(11) :1153–1162, 2008.
[32] N.D. Birrell and M. A. Ould. A practical handbook for software development. Cam-
bridge University Press, 1988.
[33] L.L. Ray. Security considerations for the spiral development model. International
Journal of Information Management, 33(4) :684–686, 2013.
141
[34] S. Friedenthal, A. Moore, and R. Steiner. A practical guide to SysML : the systems
modeling language. Morgan Kaufmann, 2014.
[35] F. Christophe, A. Bernard, and É. Coatanéa. Rfbs : A model for knowledge representa-
tion of conceptual design. CIRP Annals-Manufacturing Technology, 59(1) :155–158,
2010.
[36] E. Andrade, P. Maciel, B. Nogueira, C. Araújo, and G. Callou. A cots-based approach
for estimating performance and energy consumption of embedded real-time systems.
Information Processing Letters, 110(14) :525–534, 2010.
[37] A. Pop, D. Akhvlediani, and P. Fritzson. Towards unified system modeling with the
modelicaml uml profile. In EOOLT, pages 13–24. Citeseer, 2007.
[38] H.M. Paynter. Analysis and design of engineering systems. MIT press, 1961.
[39] H. Elmqvist, S.E. Mattsson, and M. Otter. Modelica : The new object-oriented mode-
ling language. In 12th European Simulation Multiconference, Manchester, UK, 1998.
[40] Mathworks Simulink. Simulation and model-based design, 2004.
[41] C.B. Moler. MATLAB–an interactive matrix laboratory. Department of Mathematics
and Statistics, University of New Mexico, 1980.
[42] H. Zhang, H. Wang, D. Chen, and G. Zacharewicz. A model-driven approach to mul-
tidisciplinary collaborative simulation for virtual product development. Advanced En-
gineering Informatics, 24(2) :167–179, 2010.
[43] T. Touya. Méthodes d’optimisation pour l’espace et l’environnement. PhD thesis,
Université Paul Sabatier-Toulouse III, 2008.
[44] A. Guizani, M. Hammadi, J-Y. Choley, T. Soriano, M.S. Abbes, and M. Haddar. Mul-
tidisciplinary approach for optimizing mechatronic systems : Application to the opti-
mal design of an electric vehicle. In Advanced Intelligent Mechatronics (AIM), 2014
IEEE/ASME International Conference on, pages 56–61. IEEE, 2014.
[45] O. Mouelhi. Contribution à l optimisation multiobjectif en conception multidiscipli-
naire. PhD thesis, INSA de Lyon, 2010.
[46] V. Pareto. Cours d’économie politique. Librairie Droz, 1964.
[47] Y. Collette and P. Siarry. Optimisation multiobjectif. Editions Eyrolles, 2002.
[48] J. Dréo, A. Pétrowski, É.D. Taillard, and P. Siarry. Métaheuristiques pour l’optimisa-
tion difficile. 2003.
[49] C. Solnon and K. Ghédira. Ant colony optimization for multi-objective optimization
problems. Internation Journal on computer science, 2010.
[50] L. Cagnina, S.C. Esquivel, and C. Coello Coello. A particle swarm optimizer for
multi-objective optimization. Journal of Computer Science & Technology, 5, 2005.
[51] K. Klamroth and K. Miettinen. Integrating approximation and interactive decision
making in multicriteria optimization. Operations Research, 56(1) :222–234, 2008.
[52] R. Tappeta, J. Renaud, and J. Rodríguez. An interactive multiobjective optimization
design strategy for decision based multidisciplinary design. Engineering Optimization,
34(5) :523–544, 2002.
142
[53] Z. Ren, F. Yang, N.M. Bouchlaghem, and C.J. Anumba. Multi-disciplinary collabo-
rative building design : A comparative study between multi-agent systems and multi-
disciplinary optimisation approaches. Automation in Construction, 20(5) :537–549,
2011.
[54] E.J. Cramer, J.E. Dennis, P.D. Frank, R.M. Lewis, and G.R. Shubin. Problem formula-
tion for multidisciplinary optimization. SIAM Journal on Optimization, 4(4) :754–776,
1994.
[55] F. Flager and J. Haymaker. A comparison of multidisciplinary design, analysis and
optimization processes in the building construction and aerospace industries. In 24th
international conference on information technology in construction, pages 625–630.
Citeseer, 2007.
[56] R.J. Balling and J. Sobieszczanski-Sobieski. Optimization of coupled systems-a criti-
cal overview of approaches. AIAA journal, 34(1) :6–17, 1996.
[57] N.F. Brown and J.R. Olds. Evaluation of multidisciplinary optimization techniques
applied to a reusable launch vehicle. Journal of Spacecraft and Rockets, 43(6) :1289–
1300, 2006.
[58] P. Neittaanmäki, T. Rossi, S. Korotov, E. Oñate, J. Périaux, and D. Knörzer. Multi-
disciplinary optimisation of a supersonic transport aircraft wing planform. ONERA-
Applied Aerodynamics Department, 2004.
[59] S. Kodiyalam. Evaluation of methods for multidisciplinary design optimization (mdo).
phase 1. 1998.
[60] N. M. Alexandrov and R.M. Lewis. Comparative properties of collaborative optimi-
zation and other approaches to mdo. 1999.
[61] N. M. Alexandrov and R.M. Lewis. Analytical and computational aspects of collabo-
rative optimization for multidisciplinary design. AIAA journal, 40(2) :301–309, 2002.
[62] N. M. Alexandrov and R.M. Lewis. Algorithmic perspectives on problem formulations
in mdo. In Proceedings of the 8th AIAA= USAF= NASA= ISSMO Symposium on MA
& O, Long Beach, CA, AIAA, 2000.
[63] N. Duranté, A. Dufour, V. Pain, G. Baudrillard, and M. Schoenauer. Multidisciplinary
analysis and optimisation approach for the design of expendable launchers. In 10th
AIAA/ISSMO multidisciplinary analysis and optimization conference, 2004.
[64] M. Masmoudi and Y.S. Parte. Disciplinary interaction variable elimination (dive) ap-
proach for mdo. In ECCOMAS CFD 2006 : Proceedings of the European Conference
on Computational Fluid Dynamics, Egmond aan Zee, The Netherlands, September
5-8, 2006. Delft University of Technology ; European Community on Computational
Methods in Applied Sciences (ECCOMAS), 2006.
[65] R.F. Coelho and P. Breitkopf. Optimisation multidisciplinaire en mécanique : Réduc-
tion de modèles, robustesse, fiabilité, réalisations logicielles, 2009.
[66] J. Clément. Optimisation multidisciplinaire : étude théorique et application à la
conception des avions en phase d’avant projet. PhD thesis, 2009.
143
[67] K.F. Hulme and C.L. Bloebaum. A simulation-based comparison of multidisciplinary
design optimization solution strategies using cascade. Structural and Multidisciplinary
Optimization, 19(1) :17–35, 2000.
[68] J.R. Martins and A.B. Lambe. Multidisciplinary design optimization : a survey of
architectures. AIAA journal, 51(9) :2049–2075, 2013.
[69] G.R. Shubin. Application of alternative multidisciplinary optimization formulations
to a model problem for static aeroelasticity. Journal of Computational Physics,
118(1) :73–85, 1995.
[70] R.D. Braun, I.M. Kroo, and A.A. Moore. Use of the collaborative optimization ar-
chitecture for launch vehicle design. In Proceedings of the 6th AIAA/NASA/ISSMO
Symposium on Multidisciplinary Analysis and Optimization, 1996.
[71] J. Agte. A tool for application of bi-level integrated system synthesis to multidiscipli-
nary design optimization problems. In German Air and Space Congress, 2005.
[72] S. Yi, J-K. Shin, and G.J. Park. Comparison of mdo methods with mathematical
examples. Structural and Multidisciplinary Optimization, 35(5) :391–402, 2008.
[73] R. D. Braun. Collaborative optimization : an architecture for large-scale distributed
design. 1996.
[74] S. Parashar and C.L. Bloebaum. Multi-objective genetic algorithm concurrent sub-
space optimization (mogacsso) for multidisciplinary design. In 11th AIAA/ISSMO
Multidisciplinary Analysis and Optimization Conference, pages 2006–2047, 2006.
[75] C-H. Huang, J. Galuski, and C.L. Bloebaum. Multi-objective pareto concurrent sub-
space optimization for multidisciplinary design. AIAA journal, 45(8) :1894–1906,
2007.
[76] J. Sobieszczanski-Sobieski, J.S. Agte, and R.R. Sandusky. Bilevel integrated system
synthesis. AIAA journal, 38(1) :164–172, 2000.
[77] J. Ahn and J. Kwon. An efficient strategy for reliability-based multidisciplinary design
optimization using bliss. Structural and Multidisciplinary Optimization, 31(5) :363–
372, 2006.
[78] C.D. Maranas and C.A. Floudas. A deterministic global optimization approach for
molecular structure determination. The Journal of chemical physics, 100(2) :1247–
1261, 1994.
[79] M. Locatelli and U. Raber. Packing equal circles in a square : a deterministic global
optimization approach. Discrete Applied Mathematics, 122(1) :139–166, 2002.
[80] R. Horst and H. Tuy. Global optimization : Deterministic approaches. Springer
Science & Business Media, 1996.
[81] A.J. Qureshi, J-Y. Dantan, J. Bruyere, and R. Bigot. Set based robust design of me-
chanical systems using the quantifier constraint satisfaction algorithm. Engineering
Applications of Artificial Intelligence, 23(7) :1173–1186, 2010.
[82] R.E. Moore. Interval analysis, volume 4. Prentice-Hall Englewood Cliffs, 1966.
[83] U. Montanari. Networks of constraints : Fundamental properties and applications to
picture processing. Information sciences, 7 :95–132, 1974.
144
[84] B. Faltings. Arc-consistency for continuous variables. Artificial intelligence,
65(2) :363–376, 1994.
[85] F. Benhamou and L. Granvilliers. Continuous and interval constraints. Handbook of
constraint programming, 2 :571–603, 2006.
[86] B. Yannou and G. Harmel. Use of constraint programming for design’in advances in
design, 2005.
[87] F. Benhamon, D. McAllester, and P. Van Hentenryck. Clp (intervals) revisited. Rapport
technique, Citeseer, page 30, 1994.
[88] L. Granvilliers, E. Monfroy, and F. Benhamou. Symbolic-interval cooperation in
constraint programming. In Proceedings of the 2001 international symposium on Sym-
bolic and algebraic computation, pages 150–166. ACM, 2001.
[89] Y. Meyer and P.A. Yvars. Optimization of a passive structure for active vibration
isolation : an interval-computation-and constraint-propagation-based approach. Engi-
neering Optimization, 44(12) :1463–1489, 2012.
[90] P.A. Yvars, P. Lafon, and L. Zimmer. Optimization of mechanical system : Contribu-
tion of constraint satisfaction method. In Computers & Industrial Engineering, 2009.
CIE 2009. International Conference on, pages 1379–1384. IEEE, 2009.
[91] S. Tunali and I. Batmaz. Dealing with the least squares regression assumptions in
simulation metamodeling. Computers & industrial engineering, 38(2) :307–320, 2000.
[92] N. V. Queipo, R.T. Haftka, W. Shyy, T. Goel, R. Vaidyanathan, and P.K. Tucker.
Surrogate-based analysis and optimization. Progress in aerospace sciences, 41(1) :1–
28, 2005.
[93] R.H. Myers, D.C. Montgomery, and C.M. Anderson-Cook. Response surface metho-
dology : process and product optimization using designed experiments, volume 705.
John Wiley & Sons, 2009.
[94] Y. Jin. A comprehensive survey of fitness approximation in evolutionary computation.
Soft computing, 9(1) :3–12, 2005.
[95] I. Batmaz and S. Tunali. Small response surface designs for metamodel estimation.
European Journal of Operational Research, 145(2) :455–470, 2003.
[96] D.G. Kbiob. A statistical approach to some basic mine valuation problems on the wit-
watersrand. Journal of Chemical, Metallurgical, and Mining Society of South Africa,
1951.
[97] G. Matheron. Traité de géostatistique appliquée. Editions Technip, 1962.
[98] D.R. Jones. A taxonomy of global optimization methods based on response surfaces.
Journal of global optimization, 21(4) :345–383, 2001.
[99] D.R. Jones, M. Schonlau, and W.J. Welch. Efficient global optimization of expensive
black-box functions. Journal of Global optimization, 13(4) :455–492, 1998.
[100] J. Sack, W.J. Welch, T.J. Mitchell, and H.P. Wynn. Design and analysis of computer
experiments. Statistical Science, 4(4) :409–435, 1989.
145
[101] M. Ahmed and N. Qin. Comparison of response surface and kriging surrogates in aero-
dynamic design optimization of hypersonic spiked blunt bodies. In 13th International
Conference on Aerospace Sciences and Aviation Technology, May 26th–28th, Military
Technical College, Kobry Elkobbah, Cairo, Egypt, 2009.
[102] C. Badufle, C. Blondel, T. Druot, and M. Duffau. Automatic satisfaction of constraints
set in aircraft sizing studies. 6th World Congresses of Structural and Multidisciplinary
Optimization (WCSMO 05), 2005.
[103] B.M. Brochtrup and J.W. Herrmann. A classification framework for product design
optimization. In ASME 2006 International Design Engineering Technical Conferences
and Computers and Information in Engineering Conference, pages 13–20. American
Society of Mechanical Engineers, 2006.
[104] N. M. Alexandrov and R.M. Lewis. Reconfigurability in mdo problem synthesis, part
1. In Proceedings of the 10th AIAA/ISSMO multidisciplinary analysis and optimization
conference, AIAA paper, volume 4307, 2004.
[105] J. Ferber and J-F. Perrot. Les systèmes multi-agents : vers une intelligence collective.
InterEditions, 1995.
[106] N. Jennings, K. Sycara, and M. Wooldridge. Autonomous agents and multi-agents
systems. A roadmap of agent research and development, 1998.
[107] M. Wooldridge and N.R. Jennings. The cooperative problem-solving process. Journal
of Logic and Computation, 9(4) :563–592, 1999.
[108] Y.D. Miiller. Decentralized artificial intelligence. Decentralised AI, pages 3–13, 1990.
[109] N.J. Nilsson. Distributed artificial intelligence. Technical report, DTIC Document,
1981.
[110] B. Benmammar. Intelligence artificielle et systèmes multi-agents. 2009.
[111] J-P. Müller. Modélisation organisationnelle en systèmes multi-agents. 7eme école
d’été de l’Association pour la Recherche Cognitive, Bonas, 2000.
[112] J. Ferber. Les systèmes multi-agents : un aperçu général. Techniques et sciences
informatiques, 16(8), 1997.
[113] A.H Bond and L. Gasser. Readings in distributed artificial intelligence. Morgan Kauf-
mann, 2014.
[114] S. Franklin and A. Graesser. Is it an agent, or just a program ? : A taxonomy for auto-
nomous agents. In Intelligent agents III agent theories, architectures, and languages,
pages 21–35. Springer, 1997.
[115] C.A. Iglesias, M. Garijo, J.C. González, and J.R. Velasco. Analysis and design of
multiagent systems using mas-commonkads. In Intelligent Agents IV Agent Theories,
Architectures, and Languages, pages 313–327. Springer, 1998.
[116] J.Y. Halpern. Reasoning about knowledge : a survey, handbook of logic in artificial
intelligence and logic programming (vol. 4) : epistemic and temporal reasoning, 1995.
[117] Y. Shoham. Agent-oriented programming. Artificial intelligence, 60(1) :51–92, 1993.
[118] S.R. Thomas. Placa, an agent oriented programming language. 1993.
146
[119] E. Malville and F. Bourdon. Task allocation : A group self-design approach. In
Multi Agent Systems, 1998. Proceedings. International Conference on, pages 166–173.
IEEE, 1998.
[120] H.S. Nwana and D.T. Ndumu. Agents of change in future communication systems. In
Software Agents for Future Communication Systems, pages 58–85. Springer, 1999.
[121] J. Allen and C. Perrault. Analyzing intention in dialogues. 1978.
[122] E. Appelt Douglas. Planning english sentences, 1985.
[123] A. Chavez and P. Maes. Kasbah : An agent marketplace for buying and selling goods.
In Proceedings of the first international conference on the practical application of
intelligent agents and multi-agent technology, volume 434. London, UK, 1996.
[124] P.R. Cohen and C.R. Perrault. Elements of a plan-based theory of speech acts*. Cog-
nitive science, 3(3) :177–212, 1979.
[125] P.R. Cohen and H.J. Levesque. Intention is choice with commitment. Artificial intel-
ligence, 42(2) :213–261, 1990.
[126] J.R. Galliers. A theoretical framework for computer models of cooperative dialogue,
acknowledging multi-agent conflict. PhD thesis, Open University, 1988.
[127] F. Kaplan. A new approach to class formation in multi-agent simulations of language
evolution. In Multi Agent Systems, 1998. Proceedings. International Conference on,
pages 158–165. IEEE, 1998.
[128] D.J. Litman and J.F. Allen. A plan recognition model for subdialogues in conversa-
tions. Cognitive science, 11(2) :163–200, 1987.
[129] W. Wahlster and A. Kobsa. User models in dialog systems. Springer, 1989.
[130] N. Negroponte. Being digital. Vintage, 1996.
[131] G. Babin, Z. Maamar, and B. Chaib-draa. Metadatabase meets distributed ai. In Co-
operative Information Agents, pages 138–147. Springer, 1997.
[132] G. Lakemeyer and H.J. Levesque. Query evaluation and progression in aol knowledge
bases. In IJCAI, pages 124–131, 1999.
[133] Y. Lesperance. A formal theory of indexical knowledge and action. 1992.
[134] Y. Lesperance, H.J. Levesque, F. Lin, D. Marcu, R. Reiter, and R.B. Scherl. A logical
approach to high-level robot programming–a progress report. Control of the Physical
World by Intelligent Agents, Papers from the 1994 AAAI Fall Symposium, 1994.
[135] B. Chaib-draa. Industrial applications of distributed ai. Communications of the ACM,
38(11) :49–53, 1995.
[136] N. Jennings and M.J. Wooldridge. Agent technology : foundations, applications, and
markets. Springer Science & Business Media, 1998.
[137] J. L. Austin. How to do things with words, volume 367. Oxford university press, 1975.
[138] J.R. Searle. Speech acts : An essay in the philosophy of language. Cambridge univer-
sity press, 1969.
147
[139] M. Fernandez-Lopez and O. Corcho. Ontological Engineering : with examples from
the areas of Knowledge Management, e-Commerce and the Semantic Web. Springer
Publishing Company, Incorporated, 2010.
[140] F. Bellifemine, A. Poggi, and G. Rimassa. Jade–a fipa-compliant agent framework. In
Proceedings of PAAM, volume 99, page 33. London, 1999.
[141] O. Gutknecht and J. Ferber. Madkit : A generic multi-agent platform. In Proceedings of
the fourth international conference on Autonomous agents, pages 78–79. ACM, 2000.
[142] S. Luke, C. Cioffi-Revilla, L. Panait, and K. Sullivan. Mason : A new multi-agent
simulation toolkit. In Proceedings of the 2004 swarmfest workshop, volume 8, page 44,
2004.
[143] D.J. Pate, J. Gray, and B.J. German. A graph theoretic approach to problem formula-
tion for multidisciplinary design analysis and optimization. Structural and Multidisci-
plinary Optimization, 49(5) :743–760, 2014.
[144] E. Ghotbi. Bi-and multi level game theoretic approaches in mechanical design. 2013.
[145] S. Tosserams, L. Etman, and J.E. Rooda. Augmented lagrangian coordination for
distributed optimal design in mdo. International journal for numerical methods in
engineering, 73(13) :1885–1910, 2008.
[146] S. Tosserams, L. Etman, P.Y. Papalambros, and J.E. Rooda. An augmented lagrangian
relaxation for analytical target cascading using the alternating direction method of
multipliers. Structural and multidisciplinary optimization, 31(3) :176–189, 2006.
[147] A. Rousset, B. Herrmann, and C. Lang. Etude comparative des plateformes paralleles
pour systemes multi-agents. In ComPAS 2014 : conférence en parallélisme, architec-
ture et systèmes, 2014.
[148] R. Schmitz. La voiture electrique, comme alternative realiste a la voiture a essence.
pages 1–20, Juin 2007.
[149] P. Courbe. Véhicules électriques ? changer de mobilité, pas de voiture. Fédération
Inter-Environnement Wallonie, Namur, 2010.
[150] K. Jaber, A. Fakhfakh, and R. Neji. Modeling and simulation of high performance elec-
trical vehicle powertrains in vhdl-ams. ELECTRIC VEHICLES–MODELLING AND
SIMULATIONS, page 25, 2011.
[151] E. Schaltz. Electrical vehicle design and modeling. INTECH Open Access Publisher,
2011.
[152] A. Guizani, M. Hammadi, J-Y. Choley, T. Soriano, M.S. Abbes, and M. Haddar. Mul-
tidisciplinary optimization of mechatronic systems : Application to an electric vehicle.
In Mechatronic Systems : Theory and Applications, pages 1–14. Springer, 2014.
[153] M. Hammadi, J-Y. Choley, O. Penas, and A. Riviere. Multidisciplinary approach for
modelling and optimization of road electric vehicles in conceptual design level. In
Electrical Systems for Aircraft, Railway and Ship Propulsion (ESARS), 2012, pages
1–6. IEEE, 2012.
[154] Phoenix integration. URL http ://www.phoenix-int.com/software/phx-modelcenter.php.
148
[155] D.W. Gao, C. Mi, and A. Emadi. Modeling and simulation of electric and hybrid
vehicles. Proceedings of the IEEE, 95(4) :729–745, 2007.
[156] F.L. Mapelli, D. Tarsitano, and M. Mauri. Plug-in hybrid electric vehicle : Modeling,
prototype realization, and inverter losses reduction analysis. Industrial Electronics,
IEEE Transactions on, 57(2) :598–607, 2010.
[157] J. Regnier. Conception de systèmes hétérogènes en génie electrique par optimisation
évolutionnaire multicritère. 2003.
[158] E. Schaltz. Design of a fuel cell hybrid electric vehicle drive system. Department of
Energy Technology, Aalborg University, 2010.
[159] N. Janiaud. Modélisation du système de puissance du véhicule électrique en régime
transitoire en vue de l’optimisation de l’autonomie, des performances et des coûts
associés. PhD thesis, Supélec, 2011.
[160] R. Dolecek, J. Novak, and O. Cerny. Traction permanent magnet synchronous motor
torque control with flux weakening. Radioengineering, 18(4) :601–605, 2009.
[161] S. Guenidi. Modélisation, commande et gestion de l’énergie d’un véhicule électrique
hybride. PhD thesis, Ecole nationale supérieure polytechnique, 2011.
[162] R.S. Eddine. Commande de machine électrique en environnement matlab/simulink en
temps réel, application à la machine asynchrone : commande vectorielle sans capteurs
mécaniques svpwm, mode glissant, mras. mémoire de magister en electrotechnique,
université de Constantine, 2009.
[163] [online] http ://www.trekmag.com/test-les-differents-types-batteries-rechargeables.
[164] [online] http ://voiture-electrique.durable.com/a-les-differentes-technologies-de-
batteries-pour-voitures-electriques.
[165] [online] http ://www.a123systems.com/prismatic-cell-amp20.htm.
[166] T.J. Barlow, S. Latham, I. McCrae, and P. Boulter. A reference book of driving cycles
for use in the measurement of road vehicle emissions. 2009.
[167] K. Deb, A. Pratap, S. Agarwal, and T. Meyarivan. A fast and elitist multiobjec-
tive genetic algorithm : Nsga-ii. Evolutionary Computation, IEEE Transactions on,
6(2) :182–197, 2002.
149
Résumé & Mots clés
L’approche proposée est basée sur un processus de conception pour faciliter la conception collaborative
distribuée des systèmes mécatroniques. Cette approche est appliquée à la conception préliminaire d’un véhi-
cule électrique pour illustrer comment l’utilisation du paradigme multi-agent aide les concepteurs à prendre des
décisions efficaces et de parvenir à une décision optimale de l’ensemble du problème. Une étude comparative
avec les méthodes classiques d’optimisation est faite afin de démontrer la validité et l’efficacité de l’approche
proposée.
Mots clés : Approche multi-agents, système mécatronique, conception collaborative distribuée, véhicule
électrique, modélisation, simulation, optimisation.
The proposed approach is based on a design process to facilitate collaborative distributed design of mecha-
tronic systems. This approach is applied to the preliminary design of an electric vehicle to illustrate how the use
of the multi-agent paradigm helps designers in making effective decisions and to achieve an optimal decision
of the overall problem. A comparative study with traditional optimization methods is made to demonstrate the
validity and effectiveness of the proposed approach.
Keywords : Multi-agent approach, mechatronic systems, distributed collaborative design, electric vehicle,
modeling, simulation, optimization.