208
SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy Département d’Informatique, Faculté des Sciences Université Libre de Bruxelles, ULB Belgique

SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

  • Upload
    doantu

  • View
    221

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

SYLLABUS INFO-F-305

Cours de Modélisation et Simulation

Gianluca Bontempi

Eythan Levy

Département d’Informatique, Faculté des Sciences

Université Libre de Bruxelles, ULB

Belgique

Page 2: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2

Page 3: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Table des matières

Index 2

1 Introduction à la modélisation et à la simulation 31.1 Les systèmes dynamiques . . . . . . . . . . . . . . . . . . . . . . . . 31.2 Du phénomène au modèle . . . . . . . . . . . . . . . . . . . . . . . . 4

1.2.1 La construction des modèles mathématiques . . . . . . . . . . 51.2.2 Formalismes de modélisation . . . . . . . . . . . . . . . . . . 7

1.3 Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91.3.1 Les applications de la simulation . . . . . . . . . . . . . . . . 91.3.2 La simulation est-elle toujours envisageable ? . . . . . . . . . 10

2 Introduction aux systèmes dynamiques 112.1 Systèmes statiques et dynamiques . . . . . . . . . . . . . . . . . . . . 11

2.1.1 Exemple de système dynamique : le réservoir . . . . . . . . . 122.2 La notion d’état d’un système . . . . . . . . . . . . . . . . . . . . . . 142.3 Définition axiomatique d’un système déterministe . . . . . . . . . . . 16

2.3.1 Mouvements, trajectoires et équilibres . . . . . . . . . . . . . 172.3.2 Système invariant . . . . . . . . . . . . . . . . . . . . . . . . 182.3.3 États accessibles . . . . . . . . . . . . . . . . . . . . . . . . . 192.3.4 États équivalents et forme réduite . . . . . . . . . . . . . . . 20

2.4 Systèmes complexes . . . . . . . . . . . . . . . . . . . . . . . . . . . 202.4.1 Systèmes hiérarchiques . . . . . . . . . . . . . . . . . . . . . . 232.4.2 Rétroaction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2.5 Systèmes à temps continu et à temps discret . . . . . . . . . . . . . . 27

3 Les automates : systèmes à états discrets et à temps discret 293.1 États d’équilibre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 303.2 Accessibilité et équivalence . . . . . . . . . . . . . . . . . . . . . . . 303.3 Automates cellulaires . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

3.3.1 Automate cellulaire unidimensionnel . . . . . . . . . . . . . . 343.3.2 Jeu de la vie . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

4 Les systèmes continus 394.1 Systèmes réguliers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394.2 Quelques exemples de systèmes continus . . . . . . . . . . . . . . . . 40

4.2.1 Système électrique . . . . . . . . . . . . . . . . . . . . . . . . 414.2.2 Système pendule . . . . . . . . . . . . . . . . . . . . . . . . . 424.2.3 Système Lotka Volterra . . . . . . . . . . . . . . . . . . . . . 43

4.3 Etats d’équilibre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.4 Systèmes autonomes . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

4.4.1 Espace de phase et portrait de phase . . . . . . . . . . . . . . 464.5 Stabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47

3

Page 4: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4 TABLE DES MATIÈRES

4.5.1 Stabilité de l’état d’équilibre . . . . . . . . . . . . . . . . . . 504.5.2 Region de stabilité asymptotique . . . . . . . . . . . . . . . . 52

4.6 Les critères de Liapounov . . . . . . . . . . . . . . . . . . . . . . . . 534.6.1 Critères de stabilité de Liapounov . . . . . . . . . . . . . . . 544.6.2 Critères d’instabilité de Liapounov . . . . . . . . . . . . . . . 554.6.3 Analyse de stabilité du système pendule . . . . . . . . . . . . 58

5 Les systèmes linéaires continus 595.1 Mouvements libre et forcé . . . . . . . . . . . . . . . . . . . . . . . . 595.2 Système dynamique linéaire et superposition des effets . . . . . . . . 605.3 Systèmes linéaires et EDO linéaires . . . . . . . . . . . . . . . . . . . 60

5.3.1 Systèmes linéaires invariants . . . . . . . . . . . . . . . . . . 645.4 Stabilité des systèmes linéaires . . . . . . . . . . . . . . . . . . . . . 64

5.4.1 Stabilité et polynôme caractéristique . . . . . . . . . . . . . . 655.4.2 Critère de Hurwitz . . . . . . . . . . . . . . . . . . . . . . . . 665.4.3 Formule de Souriau . . . . . . . . . . . . . . . . . . . . . . . . 675.4.4 Stabilité et connexion . . . . . . . . . . . . . . . . . . . . . . 68

5.5 Systèmes linéaires du premier ordre . . . . . . . . . . . . . . . . . . . 685.6 Systèmes autonomes du second ordre . . . . . . . . . . . . . . . . . . 70

5.6.1 Équation caractéristique du second ordre . . . . . . . . . . . 725.6.2 Trajectoires pour des valeurs propres réelles et distinctes . . . 725.6.3 Classification de la stabilité sur base des valeurs propres . . . 755.6.4 Résumé des systèmes autonomes du second ordre . . . . . . . 895.6.5 Dessin qualitatif du portrait de phase . . . . . . . . . . . . . 90

6 Les systèmes non-linéaires continus 956.1 Linéarisation des systèmes non-linéaires . . . . . . . . . . . . . . . . 96

6.1.1 Étude de la stabilité par linéarisation . . . . . . . . . . . . . 976.1.2 Analyse du système pendule . . . . . . . . . . . . . . . . . . . 98

6.2 Systèmes continus non-linéaires du 1er ordre . . . . . . . . . . . . . 1036.2.1 La méthode géométrique . . . . . . . . . . . . . . . . . . . . . 1046.2.2 Le portrait de phase . . . . . . . . . . . . . . . . . . . . . . . 1066.2.3 Dépendance des paramètres et diagramme de bifurcation . . 106

6.3 Systèmes non-linéaires d’ordre 2 . . . . . . . . . . . . . . . . . . . . 1076.3.1 Le modèle de Lotka-Volterra . . . . . . . . . . . . . . . . . . 1086.3.2 Cycles limite . . . . . . . . . . . . . . . . . . . . . . . . . . . 1106.3.3 Dessin qualitatif du portrait de phase (cas non-linéaire) . . . 114

6.4 Invariants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1216.4.1 Invariants pour n = 1 . . . . . . . . . . . . . . . . . . . . . . 1216.4.2 Invariants pour n = 2 . . . . . . . . . . . . . . . . . . . . . . 1216.4.3 Invariants pour n = 3 . . . . . . . . . . . . . . . . . . . . . . 1216.4.4 Invariants fractals . . . . . . . . . . . . . . . . . . . . . . . . 1226.4.5 Les invariants attracteurs . . . . . . . . . . . . . . . . . . . . 126

6.5 Chaos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1266.5.1 Le système de Lorenz . . . . . . . . . . . . . . . . . . . . . . 1276.5.2 L’exposant de Liapounov . . . . . . . . . . . . . . . . . . . . 1286.5.3 Définition de système chaotique . . . . . . . . . . . . . . . . . 130

6.6 Déterminisme, chaos, prédictibilité et hasard . . . . . . . . . . . . . 1306.7 Systèmes chaotiques en pratique . . . . . . . . . . . . . . . . . . . . 131

Page 5: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

TABLE DES MATIÈRES 5

7 Les systèmes à temps discret 1337.1 Equations aux différences . . . . . . . . . . . . . . . . . . . . . . . . 1337.2 Le modèle d’Hardy Weinberg : un exemple de modèle à temps discret

pour la génétique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1347.3 Équations aux différences linéaires . . . . . . . . . . . . . . . . . . . 136

7.3.1 Solutions fondamentales . . . . . . . . . . . . . . . . . . . . . 1377.4 Equations aux differences linéaires à coefficients constants . . . . . . 138

7.4.1 Polynôme caractéristique . . . . . . . . . . . . . . . . . . . . 1387.4.2 Équation caractéristique et solutions . . . . . . . . . . . . . . 1387.4.3 États d’équilibre et stabilité . . . . . . . . . . . . . . . . . . . 1407.4.4 Expression sous forme d’un système . . . . . . . . . . . . . . 1417.4.5 Équations linéaires homogènes à un pas . . . . . . . . . . . . 1417.4.6 Équations linéaires affines à un pas . . . . . . . . . . . . . . . 1427.4.7 Représentation graphique . . . . . . . . . . . . . . . . . . . . 143

7.5 Systèmes discrets non-linéaires d’ordre 1 . . . . . . . . . . . . . . . . 1447.5.1 Etats d’équilibre et stabilité . . . . . . . . . . . . . . . . . . . 1467.5.2 Cycles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1477.5.3 Attracteurs et bifurcations . . . . . . . . . . . . . . . . . . . . 149

7.6 Systèmes chaotiques à temps discret . . . . . . . . . . . . . . . . . . 1517.6.1 Fonction logistique discrète . . . . . . . . . . . . . . . . . . . 1527.6.2 Exposant de Liapounov . . . . . . . . . . . . . . . . . . . . . 158

8 Simulation statistique 1598.1 Les méthodes Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . 159

8.1.1 Le problème Monte Carlo . . . . . . . . . . . . . . . . . . . . 1628.2 Qu’est-ce qu’un nombre aléatoire ? . . . . . . . . . . . . . . . . . . . 1638.3 Génération des nombres aléatoires . . . . . . . . . . . . . . . . . . . 164

8.3.1 Génération des nombres pseudo-aléatoires . . . . . . . . . . . 1648.3.2 La méthode de Von Neumann . . . . . . . . . . . . . . . . . 1658.3.3 Générateur congruentiel linéaire . . . . . . . . . . . . . . . . 1658.3.4 Tests de randomness . . . . . . . . . . . . . . . . . . . . . . . 1668.3.5 La méthode de la transformation inverse . . . . . . . . . . . . 1678.3.6 Méthode de rejet . . . . . . . . . . . . . . . . . . . . . . . . 168

9 Simulation à événements discrets 1719.1 Les files d’attente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 171

9.1.1 Propriétés d’une file d’attente . . . . . . . . . . . . . . . . . . 1729.1.2 Notation des files d’attente . . . . . . . . . . . . . . . . . . . 1739.1.3 Résultats analytiques M/M/1 . . . . . . . . . . . . . . . . . . 173

9.2 Simulateurs à événements discrets . . . . . . . . . . . . . . . . . . . 1739.2.1 Approche par événements (event-based) . . . . . . . . . . . . 1749.2.2 Approche par processus (process-based) . . . . . . . . . . . . 175

9.3 Simulateur event-based . . . . . . . . . . . . . . . . . . . . . . . . . . 1769.3.1 Etat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1769.3.2 Evénements . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1769.3.3 Gestion du temps . . . . . . . . . . . . . . . . . . . . . . . . . 1789.3.4 Sous-programme événement . . . . . . . . . . . . . . . . . . . 1789.3.5 Estimation de performance . . . . . . . . . . . . . . . . . . . 1819.3.6 Exécution de la simulation d’une file d’attente . . . . . . . . 182

Page 6: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6 TABLE DES MATIÈRES

A Rappels théoriques EDO 187A.1 Définitions de base . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187A.2 Systèmes d’équations différentielles linéaires . . . . . . . . . . . . . . 189A.3 Solutions d’une EDO linéaire . . . . . . . . . . . . . . . . . . . . . . 190A.4 Système du second ordre . . . . . . . . . . . . . . . . . . . . . . . . . 190

A.4.1 Valeurs propres complexes conjuguées . . . . . . . . . . . . . 191A.4.2 Racines multiples . . . . . . . . . . . . . . . . . . . . . . . . . 192

B Rappels de probabilité 199B.1 Variables aléatoires continues . . . . . . . . . . . . . . . . . . . . . . 199B.2 Moyenne et variance d’une v.a. continue . . . . . . . . . . . . . . . . 199B.3 Distribution exponentielle . . . . . . . . . . . . . . . . . . . . . . . . 199B.4 Loi de Poisson . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200B.5 Processus d’arrivée de Poisson . . . . . . . . . . . . . . . . . . . . . . 200

Réferences 201

Page 7: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Avant-propos

Ce syllabus est destiné, en premier lieu, aux étudiants de Bachelier en SciencesInformatiques de l’Université Libre de Bruxelles. Le cours de Modélisation et Simu-lation vise à fournir une présentation des fondements théoriques de la modélisationdes systèmes dynamiques et des outils pour la simulation.

La motivation pour le cours naquit d’un constat : nonobstant la réputationmondiale (notamment un prix Nobel et plusieurs prix Francqui) de l’ULB dansle domaine de la modélisation de systèmes dynamiques, aucun cours sur ce sujetn’était dispensé aux élèves informaticiens. Ceci était d’autant plus surprenant si onconsidère i) que des grandes avancées ont été rendues possible dans la modélisationpar l’utilisation de l’ordinateur (il suffit penser aux fractales et à l’étude des phéno-mènes chaotiques) et ii) que les progrès des méthodes numériques et l’augmentationdes performances des ordinateurs permettent aujourd’hui de simuler et prédire lecomportement de systèmes de plus en plus complexes. Aussi plusieurs domainesindustriels utilisent couramment la simulation numérique afin de raccourcir le cyclede conception et développement de nouveaux produits.

La matière enseignée se répartit sur 9 sujets principaux : l’introduction à lamodélisation et à la simulation, l’introduction aux systèmes dynamiques, les sys-tèmes à états discrets et à temps discret, les systèmes dynamiques à temps continu,les systèmes linéaires continus, les systèmes non-linéaires continus, les systèmes àtemps discret, la simulation Monte Carlo et la simulation à événements discrets.

On trouvera dans l’annexe des rappels d’équations différentielles et de proba-bilité. Le côté pratique de la modélisation et de la simulation n’est pas négligé etchaque chapitre introduit des applications à des problèmes concrets.

Ce manuel ne vise ni à l’originalité, ni à être complet. Il n’a d’autre but que defournir un supplément à l’étudiant qui suit régulièrement le cours. De nombreusesréférences à des ouvrages publiés sont faites tout au long de la présentation. Enparticulier, la présentation des fondements des systèmes dynamiques est inspirée dulivre [17] du Pr. Sergio Rinaldi (Politecnico di Milano, Italie) at de son cours deTeoria dei sistemi que j’ai eu l’honneur de suivre dans le lointain 1989.

Et, afin de stimuler l’étudiant à entreprendre la découverte de la complexité quise cache derrière la dynamique d’un système apparemment simple, voici une citationextraite de [6]

Tout irait bien mieux, non seulement en recherche mais aussi dans lemonde quotidien de la politique et de l’économie, si davantage de gensprenaient conscience du fait que les systèmes élémentaires ne possèdentpas nécessairement des propriétés dynamiques simples.

1

Page 8: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2 TABLE DES MATIÈRES

Page 9: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 1

Introduction à la

modélisation et à la

simulation

1.1 Les systèmes dynamiques

L’être humain est habitué à construire et à utiliser des modèles men-taux de la réalité qui l’entoure. Chaque fois que nous conduisons unevoiture, que nous traversons la rue, que nous prévoyons qu’il pleuvra ouque nous attrapons un objet au vol, nous utilisons des modèles prédic-tifs qui ont été construits sur base de nos expériences et de nos erreurspassées. Dans les sciences, il est particulièrement intéressant d’étudieret de modéliser des phénomènes dont la configuration où les propriétéschangent avec le temps. Dans ce cours nous appellerons systèmes dyna-miques ces phénomènes. Des exemples de systèmes dynamiques sont lemouvement des planètes, la croissance d’une plante, la diffusion d’unemaladie, l’oscillation d’un pendule ou le flux de clients dans une banque.

De manière qualitative, la notion de système fait référence à un assem-blage d’éléments fonctionnant de manière unitaire et en interaction per-manente [23]. La notion de système est utilisée dans plusieurs domainesdifférents. Des exemples de systèmes sont— L’ensemble de propositions, d’axiomes, de principes et de conclusions

qui forment un corps de doctrine ou un tout scientifique (par exemplele système d’Aristote ou le système newtonien en physique).

— L’ensemble de méthodes, de procédés organisés ou institutionnaliséspour assurer une fonction (par exemple le système d’éducation, lesystème de production ou le système de défense).

— L’ensemble d’éléments qui se coordonnent pour concourir à un résul-tat (par exemple le système nerveux)

— Un appareillage, un dispositif ou une machine assurant une fonctiondéterminée (ex : système d’éclairage, système automobile, systèmed’exploitation).

Si nous rajoutons l’attribut dynamique, nous mettons l’accent sur le faitque les phénomènes qui concernent le système ont lieu dans le temps.Dans la suite nous appellerons système dynamique une entité physiquequi jouit des propriétés suivantes : (i) elle évolue dans le temps, (ii)elle est soumise à un ensemble de signaux d’entrée (inputs) et (iii) elle

3

Page 10: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4CHAPITRE 1. INTRODUCTION À LA MODÉLISATION ET À LA SIMULATION

renvoie un ensemble de signaux de sortie (outputs). Notons que l’entréeest normalement associée à une cause (par exemple une force) et la sortieà un effet (par exemple une accélération).En effet, presque tous les phénomènes qui nous entourent ont d’ im-portants aspects dynamiques et peuvent être décrits par un ensembled’entrées et sorties. Considérons par exemple :— un local chauffé (où l’entrée est le degré d’ouverture des vannes des

radiateurs ainsi que le nombre de personnes et la sortie est la tem-pérature dans la pièce).

— un circuit électrique (où l’entrée est le courant et la sortie est latension).

— un réacteur chimique (où les entrées sont la température à l’extérieur,le débit et la température à l’entrée du réacteur et la sortie est latempérature du réactant).

— un système masse-ressort (où l’entrée est la force appliquée à la masseet la sortie est la position de la masse).

— un réservoir (où l’entrée est le débit en entrée et la sortie est le débiten sortie).

— un supermarché (où l’entrée est le flux de marchandises apportées parles camions d’approvisionnement et la sortie est le flux de produitsachetés par les clients).

— un système économique, un écosystème ou un organisme.Notons que dans tous ces exemples les grandeurs caractéristiques changentdans le temps.

1.2 Du phénomène au modèle

Plusieurs systèmes dynamiques peuvent être étudiés et analysés d’unefaçon intuitive. Pour d’autres un prototype (ou une maquette) suffità nous éclairer sur le fonctionnement. Il existe toutefois des systèmesdynamiques pour lesquels la relation entrée-sortie est souvent compli-quée et/ou incertaine. Des exemples sont les systèmes constitués parun grand nombre de sous-systèmes et les systèmes pour lesquels l’effetd’une action de contrôle est difficilement prévisible (par exemple l’ef-fet d’un mouvement de gouvernail d’un navire-citerne sur sa position).Aussi, l’expérimentation par prototype a plusieurs désavantages : coût,lenteur, impraticabilité, risque. Une alternative réside dans l’étude abs-traite du système. Ceci demande une description formelle du phénomèneen question. La construction d’un modèle formel est souvent une procé-dure compliquée et peu standardisée.Considérons un phénomène environnemental qui est décrit verbalementde la manière suivante [3] : Worldwide we observe today an increasingstress on natural resources and the natural environment. The reason forthis is a constant increase in population and economic activity and, as aconsequence, the consumption of the different resources and the dumpingof wastes in the environment. An important determinant of this resourceand environmental load is the consumption of resources and energy percapita. This consumption has the tendency to increase as the pollutionstress increases since resource exploitation becomes more difficult. Asconsumption increases, the material standard of living also improves witha corresponding effect on population development. However, pollutionand the diminishing natural resource have feedback effects on the healthand life expectancy of the population .

Page 11: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

1.2. DU PHÉNOMÈNE AU MODÈLE 5

+

population

+

+consumtpion

pollution

+

Figure 1.1 – Diagramme d’influence

Un premier effort de formalisation pourrait passer par la transpositiondu texte dans la représentation graphique en Figure 1.1 qui a pour butde résumer les aspects les plus intéressants de la description verbaleCette représentation (connue sous le nom de diagramme d’influence [3])mets en évidence les variables les plus importantes et l’effet que le chan-gement de chacune d’entre elles a sur les autres. Par exemple la flèchelabellisée par le signe − entre pollution et population sert à représenterle concept exprimé par la phrase

...pollution and the diminishing natural resource have feedbackeffects on the health and life expectancy of the population

et signifie qu’une augmentation de la pollution entraînerait une diminu-tion de la population.Le formalisme du diagramme d’influence est une manière non quantita-tive de décrire le comportement d’un système. Si par contre la loi sous-jacente à un système dynamique est décrite de manière quantitative parun formalisme mathématique, nous obtenons un modèle mathématique.Dans la suite nous entendrons par modèle d’un phénomène physiquel’expression dans un langage formel de tout ce que l’on connaît sur cephénomène. La relation entre la réalité, le modèle et la personne quiutilise le modèle est à la base de la notion de modélisation.

1.2.1 La construction des modèles mathématiques

L’histoire de la science a montré que la formalisation des problèmes estavantageuse dans plusieurs domaines. Dans le passé l’activité de mo-délisation était plutôt liée à la physique. Un exemple typique est lamodélisation dans le domaine de la mécanique (Newton, 1687). Aujour-d’hui toutes les sciences (mathématiques, humaines et appliquées) sontcaractérisées par une activité de définition, d’analyse et d’utilisation demodèles. A titre d’exemple, citons les modèles utilisés en physique, éco-nomie, finance, médecine, sociologie et toutes les sciences de l’ingénieur.Les motivations d’un effort de modélisation sont multiples :

Compréhension de la réalité : le modèle pourrait apporter une connais-sance additionnelle sur les mécanismes de fonctionnement d’un phé-nomène (comportements oscillatoires, états d’équilibre, stabilité, in-stabilité).

Génération de solutions : les solutions du modèle fournissent desexemples et des prédictions sur le comportement du système. Parfoisune solution peut être obtenue de manière analytique alors que dansd’autres cas il faut avoir recours à la simulation numérique.

Page 12: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6CHAPITRE 1. INTRODUCTION À LA MODÉLISATION ET À LA SIMULATION

Étude de dépendances structurelles : une fois qu’il est possible d’ob-tenir aisément de solutions, il est intéressant étudier et analyser lecomportement des solutions en fonction des paramètres ou de lastructure du modèle. L’analyse se focalise sur des notions commestabilité, sensibilité et robustesse.

Contrôle : il arrive souvent que le but final de la modélisation ne soitpas uniquement une plus grande compréhension d’un phénomènemais aussi la conception de règles ou d’un système de contrôle ca-pable d’amener le système vers un état désiré. La construction etl’identification des modèles afin d’obtenir des stratégies de régula-tion est l’objet de l’automatique [7].

L’utilisation courante des modèles ne doit pourtant pas nous faire ou-blier leur caractère d’abstraction. Tout modèle est basé sur des hypo-thèses simplificatrices. Donc, il ne représente jamais la réalité dans toutesa finesse mais il fournit une approximation d’autant meilleure qu’onconsidère des lois plus fines et qu’on dispose de données de meilleurequalité. Lors de l’établissement d’un modèle, on est constamment tenude trancher entre deux exigences contradictoires :

1. représenter la réalité avec précision et dans tous ses aspects,

2. ne pas compliquer exagérément le modèle.

Ces considérations peuvent être résumées de manière compacte par lacitation suivante :

All the models are wrong, but ... some of them are useful(George Box)

Par exemple supposons vouloir modéliser les lois qui régissent les mou-vements des astres. Il est reconnu que la mécanique quantique est unethéorie plus exacte que la mécanique classique, mais extrêmement plusdifficile à manier. Il en suit que, puisque les effets quantiques sur lesmouvement des astres semblent négligeables, typiquement nous avonsrecours à la mécanique classique afin de décrire et comprendre le phé-nomène.

La précision d’un modèle doit toujours être pondérée par sa complexitécomme énoncé par le principe de parcimonie, aussi connu sous le nomde rasoir d’Ockam, qui est un des principes fondamentaux de la science.Selon ce principe :

Entia non sunt multiplicanda praeter necessitatem

c.-à-d. les modèles ne doivent pas être rendus excessivement compliquéssi ceci n’est pas nécessaire. En d’autres termes, parmi deux modèlesavec le même pouvoir prédictif, c’est au plus simple que nous devrionsaccorder notre préférence.

On peut répartir les modèles selon plusieurs critères. Une répartitionqu’on retrouve souvent dans la littérature scientifique distingue deuxtypes de modèles.

Modèles structuraux ou comportementaux : ce sont les modèlescaractérisés par leur analogie avec le système réel. Leur but principalest de fournir une explication qualitative du fonctionnement du sys-tème réel. Typiquement ils s’ appuient sur la connaissance à prioride l’expert. On retrouve des modèles de ce genre notamment dans lamédecine et la biologie.

Page 13: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

1.2. DU PHÉNOMÈNE AU MODÈLE 7

Modèles fonctionnels : parmi ceux-ci figurent les modèles qui repré-sentent le comportement d’un système sur la base de relations entrée-sortie. Typiquement, ces modèles négligent la structure interne dusystème, en visant exclusivement une prédiction fiable du compor-tement extérieur du système. Ils sont aussi nommés modèles boîte-noire car les paramètres qui les caractérisent n’ont aucune signifi-cation physique. Les modèles boîte-noire sont couramment utilisésdans l’identification des systèmes dynamiques, dans les procédés derégulation automatique et pour la prédiction des séries temporelles.

Cette distinction soulève une question intéressante à propos du rôle dumodèle en tant qu’outil explicatif d’un phénomène par rapport à sonpouvoir prédictif. Nous nous bornerons ici simplement à rappeler aulecteur que le pouvoir explicatif d’un modèle ne doit jamais être obtenuau détriment de son pouvoir prédictif. A ce propos l’anecdote suivantepourrait nous éclaircir sur les enjeux de la question :

Quand Laplace eut publié sa Mécanique céleste l’empereur lefit venir. L’empereur était furieux : “ Monsieur de Laplace, jene trouve pas dans votre système mention de Dieu ?” Laplacerépondit : “Sire, je n’ai pas eu besoin de cette hypothèse. Cettehypothèse, Sire, explique en effet tout, mais ne permet de pré-dire rien. En tant que savant, je me dois de vous fournir destravaux permettant des prédictions.”

Chaque activité de modélisation, demande donc au préalable d’établird’une manière claire les aspects suivants— L’objectif de la modélisation : ceci pourrait être la représentation

d’un phénomène biologique, la simulation d’un réseau électrique oula prédiction du comportement futur d’un système physique ;

— Le degré de complexité du modèle que l’utilisateur peut et/ou veutgérer. Par exemple, certains modèles demandent une profonde connais-sance du domaine alors que d’autres peuvent être utilisés automati-quement par une machine (par exemple dans un système de contrôle) ;

— La précision requise ou le niveau de détails du modèle. Un système deprévision météorologique ne nécessite pas la même précision que celledemandée à un modèle utilisé par le système de contrôle temps-réeld’un avion ;

— La procédure de validation : chaque modélisation nécessite la défi-nition d’une procédure qui puisse valider le bon comportement dumodèle. Cette phase est indispensable avant d’utiliser correctementle modèle.

1.2.2 Formalismes de modélisation

De nombreux formalismes ont été proposés dans la littérature pour re-présenter le comportement dynamique d’un problème. Les exemples deformalismes mathématiques qui seront présentés dans ce cours sont lesautomates, les équations différentielles, les équations aux différences etles systèmes à événements discrets. Ces formalismes ont étés à la base desnombreuses avancées dans la compréhension de la réalité (par exempleles systèmes biologiques) et dans la réalisation des technologies (parexemple le pilote automatique d’un avion). Dans la prochaine section,nous verrons en détail un exemple pratique de modélisation mathéma-tique basée sur le formalisme des équations différentielles.

Page 14: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

8CHAPITRE 1. INTRODUCTION À LA MODÉLISATION ET À LA SIMULATION

ϕ

Figure 1.2 – Le pendule

1.2.2.1 Un exemple de modèle : le pendule

Le pendule est un système physique composé par une masse suspen-due à un fil tendu de longueur l et soumise à l’action de la pesanteur(Figure 1.2). La définition d’un modèle de pendule dépend de plusieursfacteurs, comme discuté en Section 1.2.1. On pourrait envisager un mo-dèle pour calculer la période T du pendule pour une longueur fixée àl’avance ou au contraire établir un modèle pour déterminer quelle lon-gueur l∗ du fil détermine une période T ∗.Un modèle mathématique doit utiliser le formalisme le plus simple touten garantissant une réponse suffisamment précise à la question posée.Pour ce faire, plusieurs questions doivent trouver réponse dans le cas dupendule :— Quelles quantités ou variables sont importantes afin de modéliser le

mouvement du pendule ?— Comment doivent-elles être combinées dans un modèle formel afin

d’avoir une précision convenable ?Le degré de précision voulu et la simplicité requise peuvent engendrerune série de modèles avec des complexités et des précisions croissantes.Prenons en considération le modèle mathématique continu suivant :

ϕ′′(t) = −ω2sin(ϕ(t)) ϕ(0) = ϕ0, ϕ′(0) = 0 (1.1)

où ϕ est le déplacement angulaire, ω2 = g/l, et g est l’accélération de lagravité.Ce modèle est le résultat des abstractions suivantes— toutes les forces dissipatives sont supposées absentes ;— la masse est supposée ponctuelle, c.-à-d. concentrée dans un point

fixe ;— le fil est supposé de masse négligeable.Il est évident que si les forces dissipatives sont tenues en considération,le modèle prend une forme plus compliquée, c.-à-d.

ϕ′′(t) = −ω2sin(ϕ(t)) − F (ϕ′(t)) (1.2)

où le terme F représente les forces de friction.Ceci est un modèle qui présente un degré de complexité (notammentde non linéarité) supérieur à celui de (1.1). Il est donc plus difficile à

Page 15: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

1.3. SIMULATION 9

étudier et utiliser mais, néanmoins, il garantit une meilleure précision siles forces de friction ne sont pas négligeables.

1.3 Simulation

L’aboutissement de la conception du modèle met à la disposition del’utilisateur un outil qui peut être utilisé pour répondre à une série dequestions du genre Que se passerait-il si... ? (en anglais what if ).

Considérons par exemple un entrepreneur d’une société qui se pose laquestion suivante : dois-je financer la construction d’une nouvelle usinede production ? Sa question est de savoir si le coût de l’élargissementsera amorti par le gain en productivité. Dans ce contexte, il pourraitêtre intéressant d’avoir un outil qui puisse simuler le changement enproductivité au cas où une nouvelle usine serait disponible. Ceci luipermettrait de tester la nouvelle configuration comme si (what if) elleétait réalisée et de répondre à des questions du genre— Que se passerait-il si je applique telle action ou un tel changement

au système ?— Comment le système va évoluer d’ici un an ?— Si je voulais améliorer la performance, est-ce que je devrais apporter

la modification 1 ou plutôt la modification 2 ?Toutefois, très souvent, la complexité et la taille d’un grand nombre demodèles rendent difficile, sinon impossible, leur étude analytique. Il estdonc nécessaire de procéder de manière numérique via une simulationafin d’étudier le comportement du modèle.Par simulation, nous entendons l’imitation du comportement d’un pro-cédé ou d’un système réel au long du temps.Soit elle effectuée à la main ou par le biais d’un modèle exécuté sur ordi-nateur, la simulation permet la génération d’un historique d’un systèmeet l’observation de cet historique artificiel afin de tirer des conclusionssur les caractéristiques du système réel. A partir de la simulation, nouspouvons collecter toute une série de données, comme si nous avionsaccès au système réel. Les données générées synthétiquement peuventdonc être utilisées pour étudier le comportement et la performance dusystème. Le résultat de la simulation peut être utilisé à des fins de pré-diction, d’analyse et/ou de prise de décision. Il faut remarquer que dansla plupart des cas, le modélisateur n’est pas uniquement intéressé parune solution mais par une famille de solutions (par exemple en fonctiond’un paramètre ou des conditions initiales).

1.3.1 Les applications de la simulation

La simulation est un des outils les plus communément utilisés dans lessciences et les sciences appliqués. Parmi les raisons de son succès nouscitons la disponibilité d’une puissance de calcul toujours croissante, ladisponibilité de maints outils logiciels et la nécessité et/ou la volonté demanipuler des modèles de plus en plus détaillés et complexes.

Les exemples d’application pratique sont multiples :— Conception et analyse des systèmes de productions.— Conception et analyse des systèmes informatiques ainsi que des pla-

teformes hardware.— Évaluation des stratégies d’ordonnancement.

Page 16: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

10CHAPITRE 1. INTRODUCTION À LA MODÉLISATION ET À LA SIMULATION

— Conception des systèmes et des protocoles de communication.— Conception et analyse de systèmes de transport.— Évaluation de la logistique d’organisation de services : hôpitaux, bu-

reau de poste, restaurants.— Étude des systèmes complexes et à grand’ échelle (économie, finance,

biologie).— Applications militaires.

1.3.2 La simulation est-elle toujours envisageable ?

Il est toutefois intéressant de se poser la question si la simulation devraitêtre toujours préféré à l’étude analytique d’un système. Voici une sériede situations où la simulation est à considérer comme appropriée :— Quand la résolution analytique du modèle n’est pas possible ou pra-

ticable. Ceci est souvent le cas quand le modèle est de nature sto-chastique où contient des relation logiques, du genre

IF u1 > 10 & u2 < 30 THEN y ≥ 25.

— Quand nous nous contentons d’une solution satisfaisante au lieud’une solution optimale.

— Quand nous étudions les interactions dans un système complexe.— Quand la connaissance obtenue pendant la simulation peut mener à

des améliorations du système analysé.— Comme outil d’enseignement, d’auto-apprentissage, de visualisation.— Pour l’évaluation de scénarios avant la construction ou la réalisation

d’un système (avion, pont, réorganisation d’une banque).— Quand nous voulons une vérification empirique des résultats analy-

tiques.et une serie de cas où la simulation n’est pas appropriée :— Quand la solution au problème peut être facilement trouvée par le

sens commun.— Quand la solution peut être trouvée de manière analytique.— Quand des expériences directes sont plus faciles à mener.— Quand les coûts (notamment d’implémentation du simulateur et

d’exécution de la simulation) dépassent les avantages potentiels.— Quand les contraintes de temps ou les ressources ne la rendent pas

possible.— Quand le système est trop complexe à modéliser.— Quand aucune possibilité de valider le modèle n’existe.

Page 17: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 2

Introduction aux systèmes

dynamiques

Nous commençons ici à définir la notion de système dynamique de ma-nière formelle. Un système dynamique est— une entité physique dont la caractéristique principale est d’évoluer

dans le temps.— une entité sur laquelle une certaine action est exercée par le biais

d’une entrée u (scalaire ou vectorielle) et qui fournit comme réactionune certaine sortie y (scalaire ou vectorielle). Notons que l’entrée estnormalement associée à une cause (par exemple une force) et la sortieà un effet (par exemple une accélération).

Puisque nous nous intéressons à un système dynamique, il est nécessairedéfinir l’ensemble T , dénoté l’ensemble des temps, tel que pour chaquet ∈ T les valeurs u(t) et y(t) soient définies et elles appartiennent auxensemble U et Y, respectivement. Selon la nature de l’ensemble T nousferons en Section 2.5 la distinction entre les systèmes à temps continuet les systèmes à temps discret.Les évolutions des entrées et des sorties appartiennent elles aussi à deuxensembles de fonctions, notés par Ω et Γ. Dorénavant, nous noterons paru(·) ∈ Ω (y(·) ∈ Γ) la fonction d’entrée (sortie) et par u(t) ∈ U (y(t) ∈ Y)la valeur prise par une telle fonction à l’instant t. Par exemple, Ω pourraitêtre l’ensemble des fonctions continues par morceaux et Γ l’ensemble desfonctions continues.

2.1 Systèmes statiques et dynamiques

Considérons un système caractérisé par une variable d’entrée u et unevariable de sortie y et fixons l’évolution de la variable u dans un intervallede temps [t0, tf ].Posons nous la question suivante : est-ce que la valeur u(t) à l’instantt détermine de manière univoque la valeur y(t) ? En d’autres termes,nous nous demandons si pour t1 6= t2, u(t1) = u(t2) implique nécessai-rement y(t1) = y(t2). Dans le cas général la réponse est négative (voirFigure 2.2). Toutefois il existe un cas très particulier de système où laconnaissance de u détermine de manière univoque le comportement dey : les systèmes statiques. Dans ces systèmes la sortie change seulementen fonction de l’entrée, c.-à-d. aucun changement de la sortie n’a lieu

11

Page 18: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

12 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

y(t)

u(t)

Figure 2.1 – Evolution de l’entrée et de la sortie dans un système statique. Lasortie y(t) dépend de l’entrée u(t) au même instant.

u(t)

y(t)

Figure 2.2 – Evolution de l’entrée et de la sortie dans un système dynamique. Lasortie y(t) dépend non seulement de l’entrée présente u(t) mais aussi des entréespassées.

si l’entrée est constante. Un exemple d’évolution d’un système statiqueest affiché dans la Figure 2.1. Nous attirons l’attention sur le fait que ladénomination de système statique n’implique nullement que les entréeet/ou les sorties soient constants dans le temps.Dans un système dynamique la connaissance de l’entrée n’est pas suffi-sante pour déterminer de manière univoque la sortie. Ceci signifie quenous pouvons souvent rencontrer deux systèmes identiques auxquels lamême fonction d’entrée est appliquée pendant le même intervalle detemps mais qui ont des valeurs de sortie différentes. Pensons au cas oùu est la position de la pédale de l’accélérateur et y est la vitesse de lavoiture. Deux séquences identiques de positions de la pédale dans l’in-tervalle (t0, t0 + 10s) pourraient amener à deux évolutions de vitessedifférentes selon que la vitesse de la voiture à l’instant t0 soit nulle ousupérieure à zéro.Ceci montre la nécessité de définir un ensemble additionnel de variablesinternes (ou variables d’état) afin de pouvoir décrire d’une manière uni-voque le comportement d’un système.

2.1.1 Exemple de système dynamique : le réservoir

Cette section présente un exemple de système dynamique caractérisé pardeux entrées et une sortie. Considérons un réservoir d’eau cylindrique

Page 19: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.1. SYSTÈMES STATIQUES ET DYNAMIQUES 13

de rayon R sur lequel nous pouvons effectuer des mesures ainsi quedes actions de contrôle à intervalles réguliers de période ∆. Supposonspouvoir mesurer le niveau d’eau dans le réservoir et contrôler le débit(volume de fluide écoulé par unité de temps) d’eau en entrée ainsi que lasection d’un trou circulaire au fond. Nous nous intéressons à commentle niveau d’eau est influencé par le débit en entrée et la taille du trou.Nous désignons donc le niveau d’eau comme sortie du système y, le débiten entrée comme entrée u1 et la section du trou comme entrée u2.

2R

y

u1

u 2

Soit donc :— y(t) : le niveau d’eau (en m) mesuré dans le réservoir à l’instant t.— u1(t) : le débit volumique (en m3s−1) en entrée à l’instant t.— u2(t) : la section du trou (en m2) au fond du réservoir à l’instant t,— x(t) la variable (en m3) qui dénote le volume d’eau dans le réservoir

à l’instant t.Supposons connaître la loi de Bernoulli selon laquelle le débit volumiqueen sortie dout est égal à la section du trou fois la vitesse d’écoulement√

2g x(t)πR2 où g est l’accélération de gravité (en ms−2). Il est donc possible

écrire le modèle suivant qui décrit l’évolution de la sortie y.

dout(t) = u2(t)

2gx(t)

πR2(2.1)

d(t) = u1(t)− dout(t) (2.2)

x(t) = max (0, x(t−∆) + d(t−∆)∆) = (2.3)

= max

(

0, x(t−∆) +

(

u1(t−∆)− u2(t−∆)

2gx(t−∆)

πR2

)

)

(2.4)

y(t) =x(t)

πR2(2.5)

où d (en m3s−1) dénote la différence entre le débit en entrée et le débiten sortie. Notons que l’équation (2.4) suppose que le débit reste constantdans l’intervalle [t−∆, t] où ∆ > 0 est le pas de discrétisation temporelle.Il s’ensuit que d(t −∆)∆ est le changement de volume d’eau dans l’in-

Page 20: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

14 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

0 50 1000

10

20

30

40

y(t

): n

ive

au

0 50 1000

20

40

60

x(t

): v

olu

me

0 50 1000

0.5

1

1.5

2

u1(t

): d

eb

it

0 50 1000

0.05

0.1

0.15

0.2

u2(t

): t

rou

Figure 2.3 – Deux évolutions temporelles (en continu et en pointillé) des entréeset de la sortie du système dynamique du réservoir (∆ = 1).

tervalle [t−∆, t]. Ce genre de système sera appelé dans la suite systèmeà temps discret.

Supposons que x(0) = 0. La Figure 2.3 montre deux simulations dusystème pour ∆ = 1 et deux paires u1(·), u2(·) de fonctions d’entréedifférentes : une paire composée par des fonctions constantes par mor-ceaux (en continu) et une paire composée par des fonctions périodiques(en pointillé). L’évolution de y dans la Figure 2.3 ainsi que les équa-tions (2.3) suggèrent que la valeur de la sortie y(t) à l’instant t n’est pascomplètement déterminée par la valeur du vecteur d’entrée [u1(t), u2(t)]au même instant mais qu’elle est l’effet de la totalité de l’histoire passéedu système.

2.2 La notion d’état d’un système

Afin de pouvoir étudier un système dynamique il est nécessaire d’intro-duire, comme dans l’exemple précèdent, une troisième grandeur, appeléeétat, qui jouit des propriétés suivantes :

1. elle résume l’ensemble de l’information sur le passé et le présent dusystème (mémoire).

2. la connaissance de sa valeur à l’instant t1, conjointement à la connais-sance de l’entrée pendant l’intervalle [t1, t2), 1 détermine de manièreunivoque la valeur de la sortie à l’instant t2.

1. La notation [t1, t2) designe l’intervalle du temps t1 ≤ t < t2.

Page 21: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.2. LA NOTION D’ÉTAT D’UN SYSTÈME 15

M

y

u

Figure 2.4 – Système mécanique masse-ressort.

Ceci revient à supposer que la variable d’état x satisfait les propriétessuivantes :

1. la valeur de l’état x (et pas de l’entrée u) à l’instant t détermineunivoquement la valeur de la sortie au même instant,

2. la connaissance conjointe de x(t1) (c.-à-d. de l’état à l’instant t1)et de u[t1,t2)(·) (c.-à-d. de la valeur de l’entrée le long de l’intervalle[t1, t2)) permet le calcul de l’état (et donc de la sortie) à l’instant t2.

Dans le système du réservoir la variable x qui dénote le niveau d’eausatisfait les deux propriétés susmentionnées.

Notons que plusieurs variables d’état pourraient être nécessaires pourdécrire un système. Dans ce cas nous aurions un vecteur de variablesd’état. Aussi le choix des variables d’état (ainsi que de sortie) n’est pasunivoque : le même système pourrait être décrit par des vecteurs devariables d’état et de sortie différents. Par exemple dans le système duréservoir nous aurions pu choisir le niveau comme variable de sortie et levolume comme variable d’état. Le choix normalement revient à définircomme sortie la quantité qui est la plus directement mesurable.

Exemple : le système masse-ressort Considérons un système mé-canique constitué par une masse M soumise à l’action d’un ressort, àl’action d’une force externe F et contrainte à se déplacer sans aucun frot-tement sur un plan horizontal (Figure 2.4). Supposons vouloir étudier larelation entre la position de la masse sur le plan (sortie) et la force appli-quée (entrée). Comme pour le système du réservoir, la connaissance del’entrée u à l’instant t ne permet pas de déterminer de manière univoquela valeur de la sortie y. La nature dynamique du système demande doncla définition d’un vecteur de variables d’état qui satisfait les propriétésdiscutées auparavant.

Nous proposons le vecteur x(t1) = [x1(t1), x2(t1)] où x1 et x2 = x1dénotent respectivement la position x1 = y et la vitesse de la masse M .Notons que

1. la connaissance de l’état à l’instant t permet de calculer aisément lasortie par le biais de la relation y(t) = x1(t),

2. les lois de la dynamique Mx1 = F nous permettent de calculer àpartir de x(t1) et de la force u = F appliquée le long de l’intervalle[t1, t2) l’état (c.-à-d. la position et la vitesse) à l’instant t2.

Le vecteur x satisfait donc les propriétés requises pour représenter l’état

Page 22: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

16 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

du système dynamique en question. Le système

x =u

M

est un exemple de système à temps continu.

2.3 Définition axiomatique d’un système dé-terministe

Jusqu’ici nous avons présenté qualitativement quelques aspects et quelquesexemples de systèmes dynamiques. Nous allons maintenant formalisercette notion. Dans la première partie du cours, nous nous limiteronsà une évolution strictement déterministe où l’état initial et la fonctiond’entrée sont complètement spécifiés et une règle de calcul permet depasser sans ambiguïté à un état final unique. Selon [17], un système dy-namique déterministe est une entité S = (T,U,Ω,X,Y,Γ, ϕ, η) définiepar les quantités suivantes :

1. un ensemble ordonné T des temps, un ensemble U d’entrée, un en-semble Ω des fonctions d’entrée admissibles, un ensemble X d’état,un ensemble Y de sortie et un ensemble Γ de fonctions de sortie.

2. une fonction de transition d’état ϕ(·, ·, ·, ·) telle que

x(t) = ϕ(t, t0, x0, u(·)) (2.6)

est la valeur de l’état à l’instant t ∈ T si x0 = x(t0) est l’état dusystème à l’instant t0 et si u(·) ∈ Ω est la fonction d’entrée pendantl’intervalle [t0, t).

3. une fonctionη(·, ·), (2.7)

dite de transformation de sortie, telle que y(t) = η(t, x(t)) est lasortie à l’instant t.

Si nous revenons à l’exemple en Section 2.1.1, dans ce cas la fonctionde transition d’état est donnée par (2.4) alors que la transformation desortie est donnée par (2.5).La fonction de transition d’état ϕ(·, ·, ·, ·) jouit des propriétés suivantes :

Consistance :

ϕ(t, t, x, u(·)) = x, ∀(t, x, u(·)) ∈ T × X × Ω

Cette propriété est évidente : si l’état du système au temps t est xalors la fonction ϕ au même instant doit renvoyer x.

Irréversibilité : ϕ est définie pour t ≥ t0, t ∈ T

Composition :

ϕ(t2, t0, x0, u(·)) = ϕ(t2, t1, ϕ(t1, t0, x

0, u(·))︸ ︷︷ ︸

x(t1)

, u(·)), ∀(x, u(·)) ∈ X×Ω

pour chaque t0 < t1 < t2. Ceci signifie que si l’entrée u(·) fait évoluerl’état de x0 à ϕ(t2, t0, x

0, u(·)) durant [t0, t2] en passant par x(t1)alors la même fonction fera passer l’état de x(t1) à ϕ(t2, t0, x0, u(·))durant l’intervalle [t1, t2).

Page 23: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.3. DÉFINITION AXIOMATIQUE D’UN SYSTÈME DÉTERMINISTE 17

y(t)

ϕ ηu(t) x(t)

Figure 2.5 – Fonction de transition et transformation de sortie.

Causalité : si u′[t0,t](·) = u′′[t0,t](·), alors

ϕ(t, t0, x, u′(·)) = ϕ(t, t0, x, u

′′(·)), ∀(t, t0, x) ∈ T × T × X

Ceci signifie que si deux causes sont identiques, les deux effets ledoivent être aussi.

Les propriétés de la fonction de transition formalisent l’aspect déter-ministe de la définition : si nous connaissons l’état à l’instant t0 et lafonction d’entrée pendant l’intervalle [t0, t), alors nous pouvons détermi-ner d’une manière univoque l’état à l’instant t. En d’autres termes, l’étatfutur d’un système est déterminé d’une manière univoque par l’état ini-tial et la fonction d’entrée.

Notons que le lien ϕ entre l’état et l’entrée est un lien fonctionnel vu quela valeur x(t) dépend de toute la fonction u(·) dans [t0, t). Au contrairele lien η entre x(t) et y(t) est instantané : la sortie y(t) dépend seulementde la valeur de x à l’instant t (Figure 2.5).

2.3.1 Mouvements, trajectoires et équilibres

Considérons un temps t0, un état initial x(t0) et une fonction d’entréeu(·).Définition 2.1 (Mouvement). Soit x(t) = ϕ(t, t0, x(t0), u(·)) la valeurde l’état à l’instant t. Le mouvement d’un système est l’ensemble descouples (t, x(t)).

Définition 2.2 (Trajectoire). La trajectoire d’un système est l’ensembledes valeurs x(t).

En autres termes le mouvement est défini dans l’espace T × X alorsque la trajectoire est définie comme la projection du mouvement dansl’espace X . Un exemple de mouvement et la trajectoire correspondantesont représentés à la Figure 2.6.

Parmi toutes les trajectoires, quelques-unes ont un intérêt particulier : cesont les trajectoires où l’état x(t) = x pour tout t. L’ état x prend le nomd’état d’équilibre. En d’autres termes, le système a un état d’équilibre xs’il existe la possibilité d’agir sur le système avec une fonction u(·) defaçon telle que, en partant de l’état initial x le système reste indéfinimentdans le même état x.

D’un point de vue formel, nous avons les définitions suivantes.

Définition 2.3 (Etat d’équilibre). Un état x ∈ X est dit d’équilibre entemps infini si pour chaque instant initial t0 ∈ T il existe une fonctiond’entrée u(·) ∈ Ω tel que

ϕ(t, t0, x, u(·)) = x, ∀t > t0

Page 24: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

18 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

mouvement

x1

x2

t

t0

t1

t3

t4

trajectoire

Figure 2.6 – Mouvement et trajectoire.

Définition 2.4. Une sortie y ∈ Y est dite d’équilibre en temps infinisi pour chaque instant initial t0 ∈ T il existe un état x et une fonctiond’entrée u(·) ∈ Ω tel que

η (t, ϕ(t, t0, x, u(·))) = y, ∀t > t0

ExempleNotons que dans le système réservoir décrit dans la Section 2.1.1 l’étatx(t) = 0 est un état d’équilibre pour toutes les fonctions d’entrée u1(·), u2(·)où dout ≥ u1. Aussi un état quelconque x(t) est un état d’équilibre pourtoutes les fonctions d’entrée u1(·), u2(·) où dout = u1.

2.3.2 Système invariant

Un système dynamique invariant (ou stationnaire) est un système oùune trajectoire obtenue à partir d’un état x0 à l’instant t0 suite à lafonction d’entrée u[t0,t)(·) est égale à la trajectoire obtenue en partanttoujours de l’état x0 à un instant de temps t0 + δ et en appliquant unefonction d’entrée u(δ)(t+ δ) = u(t) obtenue par translation de u(·). Cecisignifie que les caractéristiques du système ne changent pas avec le tempsou, en d’autres termes, que les expériences peuvent être reproduites.Les systèmes dynamiques non invariants sont tous les systèmes caracté-risés par des changements périodiques ou qui subissent des phénomènesde vieillissement.

Définition 2.5. Un système est dit invariant si

1. pour chaque u(·) ∈ Ω et pour chaque δ ∈ T , la fonction u(δ)(·) obte-nue à partir de u(·) par translation , c-à-d.

u(t) = u(δ)(t+ δ)

Page 25: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.3. DÉFINITION AXIOMATIQUE D’UN SYSTÈME DÉTERMINISTE 19

appartient aussi à Ω.

2. la fonction de transition d’état satisfait la propriété

ϕ(t, t0, x0, u(·)) = ϕ(t+ δ, t0 + δ, x0, u(δ)(·)), ∀δ ∈ T

3. la transformation de sortie est indépendante de t

y(t) = η(x(t))

La propriété 2 signifie que appliquer l’entrée u(δ)(·) à l’instant t0 + δquand l’état est x0 a le même effet que appliquer l’entrée u(·) à l’instantt0 quand l’état est x0.

Exemple Prenons une voiture comme exemple de système dyna-mique. Soit x(t) la position sur une route rectiligne à l’instant t etu[t0,t)(·) la suite des positions de la pédale de l’accélérateur dans l’inter-valle [t0, t). Supposons que nous faisons l’expérience suivante le jour oùla voiture sort du concessionnaire : nous positionnons la voiture en x0 àl’instant t0, nous appliquons l’entrée u[t0,t)(·) sur la pédale et nous me-surons la position x(t) pour t > t0. Répétons la même expérience sur lamême route mais δ = 10 ans après. Si, comme il est fort probable, pourle même état initial x0 à l’instant t0 + δ et pour la même suite des va-leurs u[t0+δ,t+δ)(·) nous obtenons un x(t+δ) différent de x(t) alors notrevoiture n’est pas un système stationnaire mais elle a subi un phénomènede vieillissement.

2.3.3 États accessibles

La notion d’accessibilité concerne un couple (x(1), x(2)) d’états.

Définition 2.6. Un état x(2) est accessible à l’instant t2 à partir d’unétat x(1) s’il existe un instant t1 et une fonction d’entrée u(·) ∈ Ω telleque

ϕ(t2, t1, x(1), u(·)) = x(2)

Parfois il est intéressant de considérer des systèmes où chaque état x(2)

à l’instant t est accessible à partir d’un quelconque état x(1).

Question Si la hauteur maximale du réservoir en Section 2.1.1 est10m, est-ce que l’état x = 11 est accessible ?

•Définition 2.7. Un système est dit connexe à l’instant t si chaque étatx(2) est accessible à l’instant t à partir de tous les états x(1) ∈ X. Sicette condition est satisfaite pour tous les instants t, alors le système estdit connexe.

Notons que dans un système connexe :— deux états x(1) et x(2) peuvent être liés par une trajectoire qui va de

x(1) à x(2) aussi bien que par une trajectoire qui va de x(2) à x(1) .— si le système est aussi invariant, il existe au moins une trajectoire

fermée (c.-à-d. un cycle) passant par chaque couple d’états.

Page 26: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

20 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

2.3.4 États équivalents et forme réduite

Deux états équivalents sont deux états qui ne peuvent être distinguésquelle que soit la fonction d’entrée utilisée.

Définition 2.8. Deux états x(1) et x(2) sont équivalents à l’instant t sipour toute fonction d’entrée u(·) ∈ Ω

η(·, ϕ(·, t, x(1), u(·))) = η(·, ϕ(·, t, x(2), u(·)))

Notons que si x(1) et x(2) sont équivalents, alors aussi les états x(1′)

et x(2′) obtenus en appliquant la même fonction d’entrée à x(1) et x(2)

seront également équivalents.

Définition 2.9. Un système est dit en forme réduite à l’instant t s’iln’existe pas un couple d’états équivalents (x(1), x(2)) avec x(1) 6= x(2).

Si cette condition est vérifiée pour tous les instants t alors le systèmeest en forme réduite.

La notion d’équivalence est liée à la notion de l’observation de l’état.L’observation de l’état consiste à déterminer un intervalle de temps [t0, t)et une fonction d’entrée u(·) qui puisse permettre la reconstruction del’état x(t0) à partir de

1. u[t0,t)(·)2. y[t0,t)(·)Si deux états sont équivalents à l’instant t0 il n’est pas possible d’effec-tuer la reconstruction de l’état x(t0) et donc de distinguer entre x(1)

et x(2). Ceci est dû au fait que aucune trajectoire d’entrée u[t0,t)(·)nous permettrait d’observer des sorties différentes y[t0,t)(·) selon quex(t0) = x(1) ou x(t0) = x(2) .

ExerciceConsidérons un système dynamique où x = [x1, x2] dénote la positiond’un robot dans une pièce rectangulaire, u = [u1, u2] sont les vitesses dedéplacement horizontale et verticale et y = [y1, y2, y3, y4] sont les quatrevaleurs observables par le robot qui correspondent aux valeurs renvoyéespar quatre capteurs à ultrason (Figure 2.7). Est-ce que le système estconnexe ? Est-il en forme réduite ?Supposons que le robot puisse aussi effectuer des rotations (Figure 2.8).Est-ce que le système est connexe ? Est-il en forme réduite ?Supposons maintenant qu’un obstacle soit présent dans l’environnement(Figure 2.9). Est-ce que le système est connexe ? Est-il en forme réduite ?

2.4 Systèmes complexes

Jusqu’ici nous n’avons considéré que des systèmes simples. Toutefois enconnectant plusieurs systèmes de manière appropriée (par exemple enmettant en cascade deux réservoirs) il est possible obtenir des systèmesdynamiques plus complexes. Dans l’étude des systèmes complexes il estnécessaire d’introduire les notions de sous-système et d’interconnexion.Un sous-système est un système dynamique qui fait partie d’un système

Page 27: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.4. SYSTÈMES COMPLEXES 21

x1

x2

y1

y2

y3

y4

Figure 2.7 – Robot qui ne peut se déplacer que par translation.

y

y y2

1

4

x1

x2

y3

Figure 2.8 – Robot qui peut se déplacer par translation et rotation.

Page 28: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

22 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

x1

x2

y1

y2

y3

y4

Figure 2.9 – Robot qui peut se déplacer par translation et rotation dans un envi-ronnnement avec obstacles.

2S1 S2

u=u1 y1 =u2 y=y

Figure 2.10 – Deux système dynamiques en cascade.

plus complexe. Un agrégé de sous-systèmes est donc un système S =(T,U,Ω,X,Y,Γ, ϕ, η) composé par N sous-systèmes

Si = (Ti,Ui,Ωi,Xi,Yi,Γi, ϕi, ηi), i = 1, . . . , N

connectés entre eux, soit à travers les sorties soit à travers les entrées.

Notons qu’il n’est pas toujours vrai qu’en connectant N systèmes dy-namiques d’une manière quelconque on obtienne encore un système dy-namique au sens de la définition axiomatique (Section 2.3). Ceci n’estvalable que pour un sous-ensemble de systèmes (par exemple les sys-tèmes linéaires).

Définition 2.10 (Connexion en cascade). Deux systèmes S1 et S2 sontdits connectés en cascade quand y1 = u2, c.-à-d. quand la sortie dupremier système coïncide avec l’entrée du deuxième.

Pour qu’il soit possible de connecter deux systèmes en cascade il estnécessaire que les conditions suivantes soient satisfaites :

T1 = T2, Y1 ⊂ U2, Γ1 ⊂ Ω2

c.-à-d. que les deux systèmes évoluent à la même échelle temporelle etque la sortie du système S1 soit un signal d’entrée acceptable pour lesystème S2.

Le système dynamique résultant (Figure 2.10) est décrit par les en-

Page 29: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.4. SYSTÈMES COMPLEXES 23

S

S11 y1

2

u

u2 2y

u

Figure 2.11 – Deux système en parallèle.

sembles suivants :

T = T1 = T2

U = U1

Ω = Ω1

X = X1 × X2

Y = Y2

Γ = Γ2

et par les fonctions

ϕ = (x1(t), x2(t)) =

= (ϕ1(t, t0, x1(t0), u(·)), ϕ2(t, t0, x2(t0), η1(·, ϕ1(·, t0, x1(t0), u(·)))︸ ︷︷ ︸

u2(t)=y1(t)

))

η = η2(t, x2(t))

Définition 2.11 (Connexion en parallèle). Deux système S1 et S2 sontdits en parallèle quand u1 = u2, c.-à-d. quand ils ont la même entrée.

L’entrée du système est l’entrée commune aux deux sous-systèmes etla sortie est le couple (y1, y2) des sorties des deux sous-systèmes (Fi-gure 2.11).L’état du système résultant est le couple (x1, x2), où x1 ∈ X1, x2 ∈ X2

et x ∈ X1 × X2.

2.4.1 Systèmes hiérarchiques

La combinaison de plusieurs sous-systèmes en cascade et en parallèlepeut générer des systèmes de structure complexe. Un exemple est lastructure hiérarchique. Dans cette organisation un sous-système à uncertain niveau influence seulement les sous-systèmes de plus bas niveauet il est influencé exclusivement par des systèmes de niveau supérieur.Notons que dans cette structure, aucun cycle n’est présent (Figure 2.12).

2.4.2 Rétroaction

Ce genre de connexion est la plus simple connexion qui contient uneboucle. Nous somme en présence d’une boucle de rétroaction quand la

Page 30: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

24 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

6

S0

S2

S1

S

S

S

S

3

4

5

Figure 2.12 – Organisation hiérarchique de sous-systèmes.

sortie y1 d’un système S1 agit comme entrée u2 sur un système S2 dontla sortie va agir à nouveau sur S1.La rétroaction est appelée négative si un changement de y1 entraîne unchangement de y2 (et donc de u1) qui s’oppose au changement de y1.La rétroaction est appelée positive si un changement de y1 entraîne unchangement de y2 (et donc de u1) qui amplifie le changement de y1.La notion de rétroaction est une des notions les plus fameuses et utilesde la théorie des systèmes. Il nous suffit de penser aux systèmes auto-matiques et de contrôle qui sont omniprésents dans notre société.

Définition 2.12 (Rétroaction). Deux systèmes S1 et S2 sont dits enrétroaction l’un sur l’autre (Figure 2.13) si

u1(t) = ψ2(y2(t), t)

u2(t) = ψ1(y1(t), t)

où ψ2 (ψ1) est la fonction qui transforme le signal de sortie de S2 (S1)dans le signal d’entrée de S1 (S2).

Le but de la rétroaction est d’imposer au système un certain type decomportement en choisissant un u adéquat. Vu que la quantité qui per-met de déterminer exactement l’évolution du système, une fois l’entréeconnue, est l’état x, il est plus intéressant de rendre l’entrée dépendantede l’état plutôt que de la sortie.

Définition 2.13. Un système est dit rétro-actionné sur l’état si

u(t) = k(x(t), v(t), t)

où la fonction k est appelée la loi de contrôle et le signal v dénote laconsigne, c.-à-d. le comportement de référence qu’on désire faire suivreà l’état du système.

Ce schéma de contrôle (Figure 2.14) suppose l’accès ou l’observabilité del’état du système (Section 2.3.4). Dans l’impossibilité de mesurer l’étatdes schémas alternatifs sont envisageables, comme la combinaison d’unestimateur de l’état avec un contrôleur.

Page 31: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.4. SYSTÈMES COMPLEXES 25

S1

S2

u2

y1u1

y2

ψψ2 1

Figure 2.13 – Système rétroactionné.

u

v

x

xK ηϕ

Figure 2.14 – Système retroactionné sur l’état.

Page 32: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

26 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

absorption du rayonnement solaire

temperature surface glaciers

albedo

Figure 2.15 – Rétroaction et réchauffement climatique.

Temperature perçue

1

1−z −1

y(t+1)=y(t)+u(t)

[10]

y(0)

Temperature sortie chaudiére

Temperature perçue

Saturation −4Z

RetardEcart

40

Consigne −K−

Action vanne

Figure 2.16 – Système retroactionné qui modélise le système de contrôle de latempérature de la douche.

Exemple Figure 2.15 montre comment un système retroactionnépourrait être utilisé pour décrire de manière simplifiée le phénomènede réchauffement climatique. S’agit-il d’une rétroaction positive ou né-gative ?

Exemple : régulation manuelle Nous implémentons tous un sys-tème de contrôle le matin sous la douche quand nous essayons de réglerla température de l’eau (par exemple à la valeur 40C). La Figure 2.16montre le diagramme SIMULINK qui décrit la régulation manuelle dela température d’une douche (consigne égale à 40C). Dans ce schémal’action de l’opérateur est modélisée par un sous-système de contrôle quiexerce une action sur la vanne proportionnelle (selon la constante K)à l’écart entre la consigne et la température actuelle. Notons aussi quel’action de l’opérateur sur la vanne mélangeuse pour modifier la tem-pérature y(t) n’a pas un effet immédiat sur l’opérateur puisqu’il existeun retard entre l’action entreprise par l’opérateur et l’effet résultant (latempérature perçue au bout du tuyau).La Figure 2.17a montre l’évolution temporelle de la température perçuepar un opérateur pressé qui réagit de manière agressive (c.-à-d. avec

Page 33: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

2.5. SYSTÈMES À TEMPS CONTINU ET À TEMPS DISCRET 27

0 10 20 30 40 500

10

20

30

40

50

60

70

Temps

Tem

pera

ture

0 10 20 30 40 500

10

20

30

40

50

60

70

Te

mp

era

ture

Temps

a) b)

Figure 2.17 – Gauche : évolution de la température dans le cas d’un opérateurpressé. Le système oscille avant d’atteindre la température désirée. Droite : évolutionde la température dans le cas d’un opérateur mitigé.

un K important) à l’écart entre la température perçue et celle désirée.La Figure 2.17b montre l’évolution temporelle de la température perçuepar un opérateur modéré qui a des réactions plus mitigées. Ceci montrecomment dans un système retroactionné une action de contrôle de grosseentité ne correspond pas toujours à une meilleure qualité de la régula-tion, en termes du temps nécessaire pour atteindre la consigne et/oud’oscillations de la sortie.

2.5 Systèmes à temps continu et à tempsdiscret

Selon la nature de l’ensemble T nous pouvons distinguer deux classes desystèmes dynamiques.

Définition 2.14. Un système dynamique est dit à temps continu sil’ensemble T est l’ensemble des nombres réels.

Un exemple de système à temps continu est un système qui décrit le ni-veau d’un fleuve ou la température d’un local. La variable d’état changed’une manière continue au cours du temps.

Définition 2.15. Un système dynamique est dit à temps discret si l’en-semble T est un ensemble discret. Les systèmes à temps discrets peuventêtre

synchrones si les variables du système prennent leurs valeurs selonune fréquence préétablie (par exemple T est l’ensemble des nombresentiers),

asynchrones si les instants de temps auxquels les changements d’étatont lieu suivent une distribution aléatoire. Ces systèmes sont aussiappelés systèmes à évènements discrets.

Un exemple de système à temps discret synchrone est un système quidécrit annuellement l’évolution du Produit Intérieur Brut (PIB) d’unenation.Un exemple de système à évènements discrets est un système qui décritle nombre de clients dans un banque. La variable d’état ne change savaleur que quand un client entre ou sort de la banque. Les systèmes àévènements discrets seront étudiés dans le Chapitre 9.

Page 34: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

28 CHAPITRE 2. INTRODUCTION AUX SYSTÈMES DYNAMIQUES

Page 35: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 3

Les automates : systèmes à

états discrets et à temps

discret

Ce chapitre traite d’un cas particulier de système dynamique, où l’en-semble d’états et l’ensemble de temps sont discrets.

Définition 3.1. Un automate est un système dynamique invariant àtemps discret où l’ espace d’état X est discret et les ensembles d’entréeU et de sortie Y sont finis.

Définition 3.2. Un automate fini est un automate ayant un espaced’état X fini.

Dans la suite nous ne considérerons que des automates finis. La simpli-cité du modèle nous permettra d’illustrer les notions introduites dans lechapitre précédent par un cas pratique.

Dans le cas de temps discret et d’espace d’état fini nous pouvons rem-placer la fonction de transition (2.6) et la transformation de sortie (2.7)par les deux fonctions suivantes

x(t+ 1) = δ(x(t), u(t))

y(t) = η(x(t))(3.1)

Ces fonctions peuvent aussi être représentées par des tableaux et/ou pardes graphes.

Exemple Considérons un automate où X = x(1), x(2),U = u(1), u(2)et Y = y(1), y(2) sont composés de deux éléments chacun.

Soit la fonction de transition et la transformation de sortie données parles tableaux suivants

x-u u(1) u(2)

x(1) x(2) x(1)

x(2) x(1) x(2)

x(y) y(t)

x(1) y(1)

x(2) y(2)

29

Page 36: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

30CHAPITRE 3. LES AUTOMATES : SYSTÈMES À ÉTATS DISCRETS ET À TEMPS DISCRET

(1)

x / y(1) (1)

x / y(2) (2)

u

u

uu(2)

(2)

(1)

Figure 3.1 – Graphe de transition d’un automate à deux états.

Le graphe de transition associé est représenté dans la Figure 3.1.

Notons que dans le graphe— le nombre d’états est égal au nombre de composants de X.— le nombre d’arcs qui sortent d’un noeud est égal au nombre de com-

posants de U.— le symbole sur chaque arc qui connecte x(i) à x(j) représente la valeur

de l’entrée qui cause la transition x(i) → x(j).— la notation x(i)/y(i) signifie que la valeur y(i) ∈ Y est émise par

l’automate pendant que l’automate est dans l’état x(i) ∈ X.En général, il est admis que δ(x, u′) = δ(x, u′′), u′ 6= u′′, c.-à-d. quedes entrées différentes u′ et u′′ peuvent déclencher la même transition àpartir d’un état x. Dans ce cas, les deux valeurs u′ et u′′ sont notées surle même arc.

3.1 États d’équilibre

Les définitions en Section 2.3.1 peuvent être reformulées dans le cas desautomates de la manière suivante.

Définition 3.3. Un état x est dit d’équilibre ssi il existe dans le graphela boucle x→ x.

Définition 3.4. Une sortie y est d’équilibre s’il existe dans le grapheune boucle qui traverse des noeuds ayant tous la sortie y.

Exemple Considérons un automate décrit par le graphe de transitiondonné dans la Figure 3.2. Selon les définitions de la Section 3.1, x =x(1) est un état d’équilibre, y = y(1) est une sortie d’équilibre (boucle(x(1), x(1))) de même que y = y(2) (boucle (x(2), x(4), x(2)))

3.2 Accessibilité et équivalence

Les définitions d’accessibilité (Section 2.3.3) peuvent être simplifiées dela manière suivante.

Définition 3.5. Un état x′′ d’un automate est accessible à partir d’unétat x′ s’il existe dans le graphe un chemin x′ → x′′.

Page 37: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

3.2. ACCESSIBILITÉ ET ÉQUIVALENCE 31

(2)x / y

(2)

x / y(4) (2)

x / y(1) (1)

x / y(3) (1)u

u

u

u(1)

u(2)

(2)

(1)

u(2)

(1)

(1)u

(2),u

Figure 3.2 – Graphe de transition.

Définition 3.6. Un automate est connexe ssi le graphe est fortementconnexe (c.-à-d. si chaque sommet est accessible à partir de n’importequel autre sommet).

Pour ce qui concerne l’équivalence dans un automate à n états, il suitde la Définition 2.8 que pour montrer que deux états x(i) et x(j) ne sontpas équivalents il suffit de trouver une sequence d’entrée u(·) tel que

η(ϕ(k, 0, x(i), u(·))) 6= η(ϕ(k, 0, x(j), u(·))).

Exemple Considérons un système d’éclairage composé par deux lampesL1 et L2 [17]. Supposons que— le système soit contrôlé par un interrupteur u qui peut prendre deux

positions U = u(1), u(2).— u(·) puisse être une quelconque séquence de valeurs u(1) et u(2) : en

particulier les séquences constantes . . . , u(1), u(1), . . . et . . . , u(2), u(2), . . .sont admises.

— le système soit à temps discret et synchrone, par exemple l’interrup-teur peut être commuté chaque seconde. Donc T = 1, 2, 3, . . ..

— le système ait quatre configurations internes : X = x(1), x(2), x(3), x(4).— l’observateur puisse distinguer trois configurations d’éclairage : y(0)

qui correspond à l’obscurité, y(1) qui correspond à uniquement lalampe L1 allumée, y(2) qui correspond à uniquement la lampe L2

allumée.Soit x(t) ∈ X la configuration à l’instant t. La configuration suivantedépend de x(t) et de la valeur u(t) selon le graphe à gauche dans laFigure 3.3. La sortie y(t) dépend de x(t) selon le graphe à droite dansla Figure 3.3.

Le système est donc completement décrit par les deux graphes dans la

Page 38: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

32CHAPITRE 3. LES AUTOMATES : SYSTÈMES À ÉTATS DISCRETS ET À TEMPS DISCRET

(1)

y

y

y

u

u

u

u

x

x

x

x

(2)

(3)

(4)

(1)

(1)

(2)

(0)

x

x x

x(1)

(2) (3)

(4)

u(1)

u(2)

u(2)

(1)

(1)

(2)

(2)

u

Figure 3.3 – Système d’éclairage. Gauche : graphe de transition d’état. Droite :transformation de sortie.

Figure 3.3, qui représentent les transitions d’état et le transformationsde sortie.

Il est possible de montrer que le graphe de transition d’état nous permetde calculer la fonction de transition ϕ. Par exemple, étant donné l’ étatinitial x(t0) = x(1) à l’instant t0 et la fonction d’entrée u(·) telle que

u(t0) = u(1), u(t0 + 1) = u(2), u(t0 + 2) = u(2)

nous dérivons que

x(t0 + 3) = ϕ(t0 + 3, t0, x0, u(·)) = x(2).

Il est aussi facile de montrer que cette fonction satisfait les propriétés deconsistance, d’irréversibilité, de composition et de causalité. En plus lesystème est stationnaire et déterministe : si l’on fixe la condition initialeet la loi d’entrée, l’état finale est unique.

Autres remarques :— Tous les états et les sorties sont d’équilibre.— Le système est connexe et en forme réduite.— L’état est observable en une seule transition.Notons aussi que cette représentation d’état n’est pas la seule qui ga-rantit cette relation entrée-sortie. On pourrait par exemple obtenir lamême relation entrée-sortie en ajoutant des états équivalents redondantscomme dans les graphes dans la Figure 3.4.

Exercice Considérons maintenant l’automate décrit par les graphesde transition et de sortie affichés dans la Figure 3.5.

Est-il encore connexe ? Est-il en forme réduite ?

Page 39: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

3.2. ACCESSIBILITÉ ET ÉQUIVALENCE 33

(0)

y

y

yu

u

u

u

u

xx

x

x

x

u

(1)

(2) (3)

(4)

(1)u(1)

u(2)

u(2)

(2)

(1)

(1)

(2)

(2)

u(1)

x

x

x

x

(1)

(2)

(3)

(4)

x

(1)

(2)

Figure 3.4 – Système d’éclairage avec des états équivalents. Gauche : graphe detransition d’état . Droite : transformation de sortie.

(1)

y

y

u

u

u

u

x

x

x

x

(2)

(3)

(4)

(1)

(1)

(0)

x

x x

x(1)

(2) (3)

(4)

u(1)

u(2)

u(2)

(1)

(1)

(2)

(2)

u

Figure 3.5 – Exercice Section 3.2.

Page 40: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

34CHAPITRE 3. LES AUTOMATES : SYSTÈMES À ÉTATS DISCRETS ET À TEMPS DISCRET

3.3 Automates cellulaires

On fait généralement remonter l’histoire des automates cellulaires auxannées quarante et à Stanislas Ulam. Ce mathématicien s’est intéresséà l’évolution de constructions graphiques engendrées à partir de règlessimples. Il introduit un espace à deux dimensions divisé en cellules, soitune sorte de quadrillage, où chaque cellule peut avoir deux états : alluméou éteint. Partant d’une configuration donnée, la génération suivanteest déterminée en fonction de règles de voisinage. Par exemple, si unecellule donnée est en contact avec deux cellules allumées elle s’allumesinon elle s’éteigne. Ulam, qui utilisait l’un des premiers ordinateurs, arapidement constaté que ce mécanisme permettait de générer des figurescomplexes et esthétiques et que dans certains cas, ces figures pouvaientse répliquer. Pour une introduction détaillée à l’histoire des automatescellulaires nous renvoyons le lecteur à [16].Formellement un automate cellulaire est un système dynamique à tempsdiscret synchrone caractérisé par un grand nombre ( fini) d’états xij (oucellules) disposés sur une grille où i et j représentent la position sur lagrille [24]. Chaque cellule xij prends sa valeur dans un ensemble fini X.Les automates cellulaires fonctionnent de manière discrète. C’est-à-direque le temps s’écoule par à-coups. La valeur à l’instant t+1 de la cellulexij est fonction de l’état au temps t d’un nombre fini de cellules appeléson voisinage. À chaque nouvelle unité de temps, les mêmes règles sontappliquées pour toutes les cellules de la grille, produisant une nouvellegénération de cellules dépendant entièrement de la génération précé-dente. Ceci signifie qu’à l’instant t chaque cellule examine son environ-nement et détermine son état futur. Quand l’ensemble des cellules a ététraité, et seulement à ce moment là, toutes les cellules passent à l’étatsuivant. On simule ainsi un traitement parallèle.

3.3.1 Automate cellulaire unidimensionnel

L’automate cellulaire non trivial le plus simple que l’on puisse conce-voir consiste en une grille unidimensionnelle de n cellules xi ne pouvantprendre que deux états (0 ou 1), avec un voisinage constitué, pour chaquecellule, d’elle-même et des deux cellules qui lui sont adjacentes.Chacune des cellules pouvant prendre deux états, il existe 23 = 8 confi-gurations (ou motifs) possibles d’un tel voisinage. Pour que l’automatecellulaire fonctionne, il faut définir l’état d’une cellule à la générationsuivante pour chacun de ces motifs.

Exemple Considérons l’automate cellulaire défini par n = 22 étatsbinaires (X = 0, 122) où à l’instant initial t0

xi(t0) =

0 i 6= 11

1 i = 11, i = 1, . . . , 22 (3.2)

et où la règle d’évolution est donnée par la Table 3.1.La Figure 3.6 représente visuellement l’évolution des 22 composantesbinaires de l’état de l’automate selon la fonction de transition de laTable 3.1. Notons que le vecteur d’état à l’instant j est représenté parla jème ligne. L’évolution temporelle avance du haut vers le bas, c.-à.-d.que la ligne tout en haut représente l’état initial vectoriel x(t0) (3.2).

Page 41: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

3.3. AUTOMATES CELLULAIRES 35

xi−1(t) xi(t) xi+1(t) xi(t+ 1)

1 1 1 01 1 0 01 0 1 01 0 0 10 1 1 10 1 0 10 0 1 10 0 0 0

Table 3.1 – Fonction de transition de l’automate cellulaire unidimensionnel.

tim

e

x5 10 15 20

1

2

3

4

5

6

7

8

9

10

11

Figure 3.6 – Evolution temporelle de l’automate unidimensionnel décrit par laTable 3.1. La couleur de l’élément en position i, j représente l’état (1 si rouge, 0 sinoir) de l’état xi à l’instant j.

3.3.2 Jeu de la vie

Le jeu de la vie, automate cellulaire imaginé par John Horton Conwayen 1970, est probablement, à l’heure actuelle, le plus connu de tousles automates cellulaires. Le jeu de la vie est un automate cellulairebidimensionnel où chaque cellule peut prendre deux valeurs (0 et 1,qui dénotent respectivement la mort et la vie) et où son état futur estdéterminé par son état actuel et par le nombre de cellules vivantes parmiles huit qui l’entourent. Cet automate est souvent utilisé pour modéliseret simuler de manière simple et compacte des phénomènes de diffusionspatiale (le développement, le déclin et les altérations d’une colonie demicro-organismes, la propagation d’une maladie dans une région ou lacroissance urbaine [8]).

Plusieurs règles de transition ont été présentées dans la littérature. Icinous nous bornerons à considérer la simple règle de transition suivante :

Page 42: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

36CHAPITRE 3. LES AUTOMATES : SYSTÈMES À ÉTATS DISCRETS ET À TEMPS DISCRET

20 40 60 80 100 120

20

40

60

80

100

120

Figure 3.7 – Etat initial (aléatoire) du jeu de la vie.

1. Si la cellule est vivante et entourée par deux ou trois cellules vivantes,elle reste en vie à la génération suivante, sinon elle meurt.

2. Si la cellule est morte et entourée par exactement trois cellules vi-vantes, elle naît à la génération suivante.

Il est intéressant de remarquer que ces deux règles, même fort simples,font émerger une dynamique inattendue à partir d’une condition initialealéatoire.

Simulateur Un simulateur d’un automate cellulaire qui implémentela règle de transition mentionnée ci-dessus est disponible dans le scriptMATLAB calife.m. La Figure 3.7 visualise l’état à l’instant t0 du jeude la vie pour une initialisation aléatoire. La Figure 3.8 et la Figure 3.9visualisent l’état du système aux instants t = 24 et t = 229 respective-ment. Ceci montre comment une règle extrêmement simple permet deconstruire une structure très complexe.

3.3.2.0.1 Configurations intéressantes Voici quelques examplesde configurations spéciales qui peuvent apparaître dans le jeu de la vie.Ces configurations peuvent avoir des comportement complexes et inat-tendus vu la simplicité des règles du jeu de la vie :— Les configurations figées ou encore appelées still life sont des confi-

gurations de cellules qui se figent lorsqu’elle rentrent dans cet état.Elles resteront, si rien ne vient perturber leur environnement, figéespour toutes les générations suivantes. On distingue par exemple leBlock ou le Boat que l’on peut apercevoir dans la figure 3.10.

— Les configurations oscillantes qui vont cycler entre plusieurs configu-rations tant qu’on ne vient pas les déranger. Les oscillateurs les plusfréquents ont une période d’oscillation de 2 mais on distingue des

Page 43: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

3.3. AUTOMATES CELLULAIRES 37

20 40 60 80 100 120

20

40

60

80

100

120

Figure 3.8 – Etat du jeu de la vie à l’instant t = 24.

20 40 60 80 100 120

20

40

60

80

100

120

Figure 3.9 – Etat du jeu de la vie à l’instant t = 229.

Page 44: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

38CHAPITRE 3. LES AUTOMATES : SYSTÈMES À ÉTATS DISCRETS ET À TEMPS DISCRET

Block Boat

Figure 3.10 – Configurations de vie fixes.

Toad Blinker

Figure 3.11 – Configurations de vie oscillantes.

oscillateurs plus rares qui ont 3,4,8 ou 15 états différents par cycle.On peut voir dans la figure 3.11 un exemple du Blinker et du Toadqui sont des oscillateurs de période 2.

— Les ’vaisseaux spatiaux’ qui se déplacent dans la grille du jeu dela vie et continuent à se mouvoir dans une direction tant qu’ils nerencontrent pas d’obstacles. Par exemple le Glider ou le LWSS quel’on peut apercevoir dans la figure 3.12.

— Les configurations plus complexes telles que le Glider Gun qui estune générateur de gliders ou encore Acorn qui prend 5206 généra-tions pour se stabiliser et générer au moins 25 gliders et beaucoupd’oscillateurs.

Glider LWSS

Figure 3.12 – Configurations de vie en mouvement.

Page 45: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 4

Les systèmes continus

Ce chapitre traitera des systèmes dynamiques à temps continu (Défini-tion 2.14) où l’ensemble T ainsi que les espaces d’état, d’entrée et desortie sont continus.Ces systèmes jouissent d’une propriété très intéressante : l’évolution deleur dynamique peut être décrite par des équations différentielles (Ap-pendix A). L’utilisation des équations différentielles pour représenter ladynamique d’un système a permis des avancées importantes dans le do-maine des sciences et des sciences appliquées. Il suffit de penser auxéquations de Newton pour décrire la dynamique des corps ou aux équa-tions utilisées dans l’étude des systèmes électriques ou encore à cellesde la dynamique des populations. Ce chapitre présentera les principalespropriétés théoriques et les définitions concernant les systèmes continusainsi que quelques exemples pratiques de systèmes réels modélisés pardes équations différentielles.

4.1 Systèmes réguliers

Définissons d’abord un espace vectoriel à dimensionnalité finie.

Définition 4.1 (Espace vectoriel à dimensionnalité finie). Un espacevectoriel à dimensionnalité finie est un ensemble d’éléments (appelésvecteurs) pour lesquelles les opérations de somme, de produit par unscalaire et de distance entre éléments sont définies.

Un exemple d’espace vectoriel à dimensionnalité finie est l’espace d’état[x1, x2] de dimensionnalité égale à 2 qui décrit la position du robotconsidéré dans l’exercice en Section 2.3.4. Il est possible de définir unsystème continu à dimensionnalité finie de la manière suivante :

Définition 4.2 (Système à dimensionnalité finie). Un système est dit àdimensionnalité finie si U, X et Y sont des espaces vectoriels à dimen-sionnalité finie.

Le réservoir (Section 2.1.1) et le système masse-ressort (Section 2.2) sontdeux exemples de systèmes à dimensionnalité finie.Un cas particulier de système à dimensionnalité finie est le système ré-gulier

Définition 4.3 (Système régulier). Un système continu est dit réguliersi— les ensembles U,Ω,X,Y et Γ sont des espaces vectoriels avec norme,

39

Page 46: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

40 CHAPITRE 4. LES SYSTÈMES CONTINUS

— la fonction de transition ϕ (2.6) est continue par rapport à tous sesarguments,

— la dérivée ddtϕ(t, t0, x, u(·)) existe et elle est continue par rapport à t

pour toutes les valeurs où u est continue,— la transformation η (2.7) est continue par rapport à tous ses argu-

ments.

La propriété de régularité est normalement requise afin de pouvoir lierl’étude des systèmes dynamiques à celle des équations différentielles vec-torielles.

Une équation différentielle vectorielle

x =dx(t)

dt= f(x(t), u(t), t), x(t0) = x0

est un système de n équations différentielles ordinaires du premier ordre

xi =dxi(t)dt = fi(x(t), u(t), t), i = 1, . . . , n

également appelé flot.

Le lien entre les systèmes réguliers et les équations différentielles estmontré par le théorème suivant.

Théorème 4.1. Le mouvement x(·) = ϕ(·, t0, x0, u(·)) d’un systèmerégulier à dimensions finies est la solution d’une équation différentiellevectorielle du type

x =dx(t)

dt= f(x(t), u(t), t), x(t0) = x0 (4.1)

où f est appelée la fonction génératrice du système.

Le formalisme des équations différentielles permet de décrire un sys-tème dynamique en écrivant une relation entre les valeurs des variablesd’entrée et d’état (ainsi que de leurs dérivées) à l’instant t. En d’autrestermes, la fonction de transition ϕ est représentée de manière implicitepar l’équation (4.1). Il s’est avéré dans plusieurs domaines scientifiqueset technologiques (par exemple la mécanique) que représenter la dy-namique d’un système réel sous forme d’une fonction génératrice (parexemple la deuxième loi de Newton) était plus simple et plus maniableque de la représenter sous forme d’une fonction de transition.

La trajectoire du système peut ainsi être obtenue en intégrant (ana-lytiquement ou numériquement [2]) l’équation différentielle vectorielle.Notons toutefois que, mis à part quelque cas particulier, il n’est pas pos-sible de calculer analytiquement la solution d’une équation différentielled’ordre plus grand que deux. La raison principale est liée à la possiblenon linéarité des fonctions f(·).

4.2 Quelques exemples de systèmes continus

Cette section présentera quelques systèmes dynamiques réels et leur mo-délisation sous forme d’un système continu décrit par un système d’équa-tions différentielles.

Page 47: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.2. QUELQUES EXEMPLES DE SYSTÈMES CONTINUS 41

L

R L

C y(t)u(t)

i(t)

v (t)v (t)R

Figure 4.1 – Schéma de circuit électrique.

4.2.1 Système électrique

Nous considérons ici un circuit électrique série RLC schématisé dans laFigure 4.1 où le signal d’entrée est la tension u(t) alors que le signal desortie est la tension y(t) aux bornes de la capacité.

Supposons que l’inductance L, la résistance R et la capacité C soientconstantes et ne dépendent pas du niveau de courant i(t). Il est possiblede dériver un modèle de ce système sous forme d’un système d’équationsdifférentielles sur la base d’un certain nombre de résultats classiques del’électricité :— Loi d’Ohm : vR(t) = Ri(t) où v(t) est la tension aux bornes d’une

résistance R.— Loi de Faraday : vL(t) = L di(t)

dt où v(t) est la tension aux bornesd’une inductance L.

— Loi q = Cy(t) c.-à-d. la différence de potentiel y(t) aux bornes d’uncondensateur est proportionnelle aux charges qui y sont transférées.

— Loi de Coulomb : i = q(t) = dq(t)dt

— Loi des mailles de Kirchhoff : la somme algébrique des tensions ren-contrées le long d’une maille est nulle.

En appliquant la loi des mailles de Kirchoff nous obtenons

u(t) = vR(t) + vL(t) + y(t) ⇔ u(t) = Ri(t) + Ldi(t)

dt+ y(t)

Puisque

y =q

C⇒ y =

i

C

en posant x1(t) = i(t), x2(t) = y(t) nous obtenons le système

x1(t) = −RLx1(t)− 1

Lx2(t) +1Lu(t)

x2(t) =1Cx1(t)

y(t) = x2(t)

Une fois dérivé le modèle il est possible de le simuler afin d’étudierle comportement du système suite à certains stimuli. Par exemple, sinous posons la fonction d’entrée u(t) = 1, l’évolution du vecteur d’état[x1(t), x2(t)] est visualisé à la Figure 4.2.

Page 48: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

42 CHAPITRE 4. LES SYSTÈMES CONTINUS

0 2 4 6 8 10−0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

tx

1

0 2 4 6 8 100

0.2

0.4

0.6

0.8

1

1.2

1.4

t

x2

Cas d’étude 7: simulation 1

Figure 4.2 – Système électrique : évolution des deux variables d’état en fonctiondu temps.

4.2.2 Système pendule

Le pendule est un système physique composé par une masse m suspen-due à un fil tendu de longueur l et soumise à l’action de la pesanteur(Figure 4.3). La notion de pendule est souvent utilisée pour modéliserplusieurs systèmes réels en physique, comme les oscillateurs. Si la masseest ponctuelle, c.-à-d. concentrée dans un point fixe, et le fil de massenégligeable, alors il est possible de dériver un modèle de ce système sousforme d’un système d’équations différentielles sur la base de résultatsclassiques de la mécanique :— La masse m est soumise à la force de gravité mg qui peut être dé-

composée en deux termes : le premier est dirigé comme le fil et ilest compensé par la tension du fil, le deuxième est dirigé de manièreperpendiculaire au fil et a un module mg sin(θ).

— La force de friction peut être considérée proportionnelle selon uneconstante k à la vitesse du pendule

v =ds

dt=l sindθ

dt≈ l

dt= lθ

où ds est un deplacement infiniment petit dans la direction perpen-diculaire au fil et

sindθ ≈ dθ

puisque dθ est petit.— L’action externe est appliquée en imposant une rotation autour de

l’axe vertical de vitesse angulaire u = ω. Ceci revient à appliquer surla masse m une force centrifuge horizontale de module

mω2d = mu2l sin θ

où D = l sin θ est la distance de l’axe de rotation au centre de lamasse. Cette force aussi peut être décomposée en deux termes : lepremier est dirigé comme le fil et il est compensé par la tension dufil, le deuxième est dirigé de manière perpendiculaire au fil et a unmodule mu2l sin θ cos θ.

En utilisant la deuxième loi de la dynamique (F = mx) et en tenant enconsidération les directions des forces et du déplacement θ nous obtenons

−mlθ = mg sin(θ) + klθ −mu2l sin(θ) cos(θ) (4.2)

En posant θ = x1, θ = x2, nous pouvons écrire le système sous la

Page 49: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.2. QUELQUES EXEMPLES DE SYSTÈMES CONTINUS 43

D

o

θ l

mg

mu l sin2 θ

u

θ

Figure 4.3 – Le pendule.

forme (4.1)

x1 = x2

x2 = − gl sinx1 −− k

mx2 + u2 sin(x1) cos(x1)

4.2.3 Système Lotka Volterra

Les équations de Lotka-Volterra (connues aussi sous le nom de modèleproie-prédateur) sont un couple d’équations différentielles non-linéairesdu premier ordre qui sont couramment utilisées pour décrire la dyna-mique de deux espèces (un prédateur et sa proie) qui interagissent dansun écosystème clos. Les équations modélisent les taux de croissance x1 etx2 de deux populations où x1 est l’effectif de la population des proies etx2 est l’effectif de la population des prédateurs. Elles ont été proposéesindépendamment par le biologiste américain Alfred J. Lotka en 1925 etpar le mathématicien italien Vito Volterra en 1926. Volterra proposa ceséquations afin de modéliser l’évolution de la quantité de poisson pêchéedans la mer Adriatique pendant la période suivant la première guerremondiale. Une application classique où ces équations ont été validéesconcerne la dynamique du lynx et du lièvre des neiges (Figure 4.4),pour lequelle de nombreuses données de terrain ont été collectées parla Compagnie de la baie d’Hudson au XIXe siècle. Ce modèle n’a passeulement une valeur historique mais il est aussi le point de départ d’unesérie d’effort de modélisation d’entités interagissantes dans la biologie,l’écologie et l’économie.

La dérivation de ces équations s’appuie sur plusieurs hypothèses :— l’espèce 1 (proie) possède une quantité illimitée de nourriture et de

ressources et ses individus ne sont pas en compétition entre eux.

Page 50: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

44 CHAPITRE 4. LES SYSTÈMES CONTINUS

Figure 4.4 – Séries temporelles de l’évolution du nombre des lynx et des lièvresdes neiges au XIXe siècle.

0 50 100 1500

0.5

1

1.5

2

2.5

3

t

x1

Cas d’étude 10: simulation 1

0 50 100 1500

0.5

1

1.5

2

2.5

3

3.5

4

t

x2

Figure 4.5 – Système Lotka-Volterra : évolution des effectifs des deux populationsen fonction du temps.

— l’espèce 2 (prédatrice) se nourrit exclusivement des individus de l’es-pèce 1, qui sont en nombre limité et ceci cause une compétition entreles individus de l’espèce 2

— l’espèce 1 croit exponentiellement en absence de prédateurs— l’espèce 2 décroît exponentiellement en absence de proies

Les équations s’écrivent

x1 = a11x1 − a12x1x2

x2 = a21x1x2 − a22x2(4.3)

où tous les coefficients sont positifs et ont la signification suivante :

— a11 est le taux de natalité des proies— a12 est le taux de mortalité des proies suite à prédation— a21 est le taux de reproduction des prédateurs : le nombre de préda-

teurs nés par proie capturée— a22 est le taux de mortalité des prédateurs

La résolution numérique du système (4.3) permet de simuler l’évolutionde deux populations au cours du temps (Figure 4.5).

Page 51: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.3. ETATS D’ÉQUILIBRE 45

4.3 Etats d’équilibre

Considérons un système dynamique continu décrit par l’équation diffé-rentielle

x =dx(t)

dt= f(x(t), u(t)).

Selon la définition de la Section 2.3.1, les états d’équilibre x pour unefonction d’entrée u(t) donnée, s’ils existent, sont les états qui satisfontle système

dx(t)

dt= 0.

Les états d’équilibre sont donc les racines du système d’équations

f(x, u(t), t) = 0 (4.4)

Exemple Considérons le système continu décrit par l’équation diffé-

rentielle

x1 = f1(x1(t), x2(t), u(t)) = x2 + u

x2 = f2(x1(t), x2(t), u(t)) = x1(1 − x21) + x2 + u3

les états d’équilibre associé à l’entrée u(t) = 0 sont x(1) = [0, 0], x(2) =[1, 0], x(3) = [−1, 0].

4.4 Systèmes autonomes

Un cas particulier de système régulier, où l’équation différentielle prendune forme particulière, est le système autonome.

Définition 4.4. Un système régulier est dit autonome si sa dynamiqueest décrite par une équation différentielle autonome

x =dx(t)

dt= f(x(t)) (4.5)

c.-à-d. une équation où f ne dépend pas explicitement du temps t.

Exemples Un exemple de système autonome est

x = ax

Un exemple de système non autonome est

x1 = x1

x2 = −cx2 − sinx1 + ρ sin t(4.6)

où la variable t apparaît explicitement dans f .

Page 52: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

46 CHAPITRE 4. LES SYSTÈMES CONTINUS

Un système autonome est un exemple de système invariant (Section 2.3.2)où l’évolution de l’état dépend seulement de l’état courant. Si le sys-tème passe à travers une certaine configuration x à l’instant t ou bienà l’instant t + δ l’évolution qui va en suivre sera toujours la même. Laconnaissance de la configuration à un certain instant permet de définirde manière univoque l’évolution du système.Notons toutefois que tout système non autonome peut être mis sousune forme (4.5) à condition d’ajouter une nouvelle variable xt = t. Parexemple le système (4.6) peut être formulé de la manière suivante

x1 = x1

x2 = −cx2 − sinx1 + ρ sinxt

xt = 1

Dans la suite nous nous bornerons donc à considérer le cas autonomepuisque, ainsi faisant, nous pouvons avoir un aperçu complet des sys-tèmes dynamiques.

4.4.1 Espace de phase et portrait de phase

Considérons le système dynamique autonome

x1 = f1(x1(t), . . . , xn(t))...

xn = fn(x1(t), . . . , xn(t))

où x ∈ X. Dans la littérature des systèmes dynamiques continus l’espaced’état X de dimensionnalité n prend le nom d’espace des phases.Dans cet espace l’état x(t) du système à un instant particulier t est repré-senté par un point P ayant comme coordonnées [x1(t), x2(t), . . . , xn(t)].De la même manière une trajectoire du système est représentée par uneséquence dirigée de points dans l’espace. Notons qu’il existe un lien précisentre la forme de la trajectoire et les termes fi, i = 1, . . . , n de l’équationdifférentielle f . La direction du vecteur tangent à la trajectoire au pointP de coordonnées x(t) = [x1(t), . . . , xn(t)] est donnée par le vecteur decomposantes [f1(x(t)), . . . , fn(x(t))].Un ensemble de trajectoires est donc représenté par un flot dans l’es-pace. Le flot complet de trajectoires nous renvoie de l’information surle comportement qualitatif du système dynamique. Cette représentationgraphique est connue sous le nom de portrait des phases.

Exemple Considérons le système dynamique autonome d’ordre n = 2

x1 = f1(x1(t), x2(t)) = x2

x2 = f2(x1(t), x2(t)) = −x1(1 − x21) + x2(4.7)

Soit x(t) = [x1 = 2, x2 = 2] l’état à l’instant t et le point P1 sa vi-sualisation géometrique dans l’espace (x1, x2) des phases (Figure 4.6).Considérons la trajectoire qui passe par le point P1. Puisqu’en x(t) levecteur des derivées est [f1 = 2, f2 = 8], la direction de la trajectoirequi passe par P1 est indiquée par la flèche rouge qui part de P1 et qui ala même direction que le vecteur [f1 = 2, f2 = 8].

Page 53: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.5. STABILITÉ 47

1.5 2 2.5 3 3.5 41.5

2

2.5

3

3.5

4

x1

x2

P1

P2

Figure 4.6 – Espace de phase et direction des trajectoires dans les points P1 et P2

(script MATLAB portrait.m).

Soit x(t′) = [x1 = 3, x2 = 3] l’état à l’instant t′ et le point P2 sa visua-lisation géometrique dans l’espace des phases (Figure 4.6). Considéronsla trajectoire qui passe par le point P2. Puisque en x(t′) le vecteur desderivées est [f1 = 3, f2 = 27], la direction de la trajectoire qui passepar P2 est indiquée par la flèche rouge qui part de P2 et qui a la mêmedirection que le vecteur [f1 = 3, f2 = 27].

La Figure 4.7 visualise le portrait de phase du système où tous les vec-teurs ont été normalisés. Notons que ce portrait des phases est unemanière de compresser l’information sur l’évolution dynamique du sys-tème (4.7).

4.5 Stabilité

Dans tous les systèmes dynamiques, naturels ou artificiels, la propriétéde stabilité joue un rôle important. De manière informelle un systèmestable est un système robuste et dont le comportement n’est sensibleni aux perturbations ni aux changements dans les conditions environne-mentales.

La théorie des systèmes propose une définition formelle de la notion destabilité. Selon cette définition étudier la stabilité d’un système revient àexaminer si le comportement nominal (ou non perturbé) reste proche ducomportement perturbé pour des perturbations suffisamment petites.

Par mouvement nominal d’un système nous entendons le mouvementϕ(·, t, x, u(·)) pour une fonction d’entrée u, un état initial x et un instantinitial t. Par mouvement perturbé nous entendons le mouvement obtenusuite à une perturbation de l’état initial x.La notion de stabilité implique une notion de similarité qui est quantifiéepar l’utilisation d’une norme. Une condition nécessaire est donc quel’on puisse définir une norme dans l’espace d’état X. Nous allons doncconsidérer la distance entre la suite des états du mouvement nominal etdu mouvement perturbé et vérifier si cette distance reste bornée ou pas

Page 54: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

48 CHAPITRE 4. LES SYSTÈMES CONTINUS

−4 −3 −2 −1 0 1 2 3 4−4

−3

−2

−1

0

1

2

3

4

x1

x2

Figure 4.7 – Portrait de phase du système continu (4.7) (script MATLABportrait.m).

dans le temps.

Définition 4.5. Un mouvement ϕ(t, t, x, u(·)) est dit stable si pourtout ǫ > 0 il existe un δ > 0 tel que pour toute condition initiale perturbéex qui satisfait

‖x− x‖ ≤ δ

nous avons

‖ϕ(t, t, x, u)− ϕ(t, t, x, u)‖ ≤ ǫ

pour tous les t ≥ t.

Définition 4.6. Un mouvement ϕ(·, t, x, u(·)) est dit instable s’il n’estpas stable.

En d’autres termes, un mouvement stable avec condition initiale x estun mouvement tel que pour tout voisinage Vǫ (même très petit) de cemouvement il est possible de trouver une condition initiale proche de xtelle que le mouvement perturbé correspondant reste indéfiniment dansVǫ (Figure 4.8).

Par contre un mouvement est instable s’il existe un voisinage Vǫ telqu’aucune perturbation (même minime) de la condition initiale ne per-mette au mouvement perturbé d’y rester pour tout t (Figure 4.9).

Exemple Considérons le système dynamique qui décrit l’évolutionde la tension x aux bornes d’un condensateur C traversé par un courantu :

x(t) =1

Cu

Page 55: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.5. STABILITÉ 49

nominal

perturbé

Figure 4.8 – Mouvement stable.

perturbé

nominal

perturbé

Figure 4.9 – Mouvement instable.

Page 56: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

50 CHAPITRE 4. LES SYSTÈMES CONTINUS

Soit le mouvement nominal déterminé par t = 0, x(0) = x = 0 etu(·) = u. Nous obtenons

x(t) = ϕ(t, t, x, u) =u

Ct

Si nous posons x(0) = x le mouvement sera perturbé

x(t) = ϕ(t, t, x, u) =u

Ct+ x

Si nous posons ǫ = δ il s’ensuit que pour ‖x‖ ≤ δ

‖ϕ(t, t, x, u)− ϕ(t, t, x, u)‖ = ‖x‖ ≤ δ = ǫ

Le mouvement est donc stable.

ExerciceÉtudier la stabilité du système à temps continu

x = Kx, x(0) = x = C

en fonction du signe de K ∈ R.

4.5.1 Stabilité de l’état d’équilibre

Dans les études de stabilité il est fréquent de s’intéresser à un cas parti-culier de mouvement : l’état d’équilibre. Dans cette section nous allonsdonc restreindre la définition de stabilité présentée dans la section pré-cédente à un état d’équilibre.

Définition 4.7. Un état d’équilibre x correspondant à une entrée u(·)et à un instant initial t est dit stable si pour chaque ǫ > 0 il existe unδ > 0 tel que pour pour toute condition initiale perturbée x qui satisfaitla relation

‖x− x‖ ≤ δ

nous avons‖ϕ(t, t, x, u)− x‖ ≤ ǫ

pour tous les t ≥ t

En d’autres termes, un état d’équilibre x est stable si pour tout voisi-nage circulaire Vǫ de x il est possible de définir une région de conditionsinitiales perturbées Vδ telle que les mouvements correspondantes ne sor-tiront jamais de Vǫ.Une notion plus forte de la notion de stabilité est celle de stabilité asymp-totique qui pose des conditions sur le comportement asymptotique dumouvement perturbé.

Définition 4.8. Un état d’équilibre x est asymptotiquement stable sipour chaque ǫ > 0 il existe un δ > 0 tel que pour tous les x qui satisfont‖x− x‖ ≤ δ nous obtenons

‖ϕ(t, t, x, u(·)) − x‖ ≤ ǫ ∀t ≥ t

Page 57: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.5. STABILITÉ 51

ε

x

x

instable

asympt. stable

stable

δ

Figure 4.10 – Trois exemples des mouvements perturbés selon la nature de l’étatd’équilibre.

etlimt→∞

ϕ(t, t, x, u(·)) = x

La stabilité asymptotique est donc un type de stabilité accrue qui re-quiert aussi la convergence pour t → ∞ de chaque mouvement perturbéà l’équilibre x.

La Figure 4.10 montre trois exemples de mouvements perturbés quipeuvent avoir lieu selon la nature de l’équilibre. Dans le cas stable, pourtout ǫ le mouvement perturbé reste dans le voisinage de Vǫ pour toutt > 0. Dans le cas instable, il est possible de trouver un ǫ tel qu’aucunmouvement perturbé ne peut rester dans Vǫ. Enfin, dans le cas asymp-totiquement stable le mouvement converge vers x pour t→ ∞.Notons que dans un système asymptotiquement stable, des petites va-riations de la valeur initiale deviennent de plus en plus petites au fur età mesure que le temps avance : en quelque sorte le système perd la mé-moire de l’état initial. Par contre dans le cas instable le système évolueen amplifiant les perturbations de l’état initial : ceci revient à gardermémoire de l’état initial.

Exemple Considérons le système dynamique à temps continu

x = a

(

1− x(t)

c

)

x

avec a > 0, c > 0.Le système a deux états d’équilibre : x1 = 0, x2 = c.— L’état x1 est instable puisque chaque condition initiale x(0) > x1,

même si petite, diverge vers x = c pour t → ∞. La Figure 4.11montre un ensemble de trajectoires pour c = 2 et des conditionsinitiales x(0) positives et proches de zéro.

Page 58: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

52 CHAPITRE 4. LES SYSTÈMES CONTINUS

0 2 4 6 8 100

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

tx

Figure 4.11 – Trajectoires qui s’éloignent de l’équilibre instable x1 = 0.

0 2 4 6 8 101.975

1.98

1.985

1.99

1.995

2

2.005

2.01

2.015

2.02

t

x

Figure 4.12 – Trajectoires qui se rapprochent asymptotiquement de l’équilibrestable x2 = c = 2.

— L’état x2 est asymptotiquement stable puisque chaque perturbationde l’état x(0) = x2 est réduite pour t → ∞. La Figure 4.12 montreun ensemble de trajectoires pour c = 2 et des conditions initialesx(0) proches de x2.

4.5.2 Region de stabilité asymptotique

Si x est un état d’équilibre asymptotiquement stable il est intéressant dedéfinir la région autour de x comme l’ensemble des conditions initialesdes trajectoires qui convergent vers x.

Définition 4.9 (Region de stabilité asymptotique). Soit x un étatd’équilibre asymptotiquement stable pour u = u. La région

Rx = x0 : limt→∞

‖ϕ(t, t0, x0, u)− x‖ = 0

est la région de stabilité asymptotique de l’équilibre x.

Définition 4.10 (Stabilité globale). Soit x un état d’équilibre asymp-totiquement stable pour u = u et Rx sa région de stabilité asymptotique.Si la région Rx coincide avec l’espace d’état

Rx = x

l’etat d’équilibre est globalement stable.

Page 59: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.6. LES CRITÈRES DE LIAPOUNOV 53

4.6 Les critères de Liapounov

Les propriétés de stabilité et de stabilité asymptotique énoncées dansla section précédente s’appuient sur la notion de mouvement perturbéet demandent par conséquent la connaissance de la solution analytiqued’un système dynamique. Or, puisque la solution d’un système continugénérique est difficile à déterminer d’une manière analytique les proprié-tés de stabilité sont difficiles à prouver.Il existe quelques critères, comme les critères de Liapounov, qui per-mettent d’analyser le problème de la stabilité sans résoudre les équationsdifférentielles qui décrivent le système. Afin de formuler les critères destabilité de Liapounov, nous devons d’abord introduire les définitions defonctions et de matrices (semi)définies positives 1.

Définition 4.11 (Fonction définie positive). Une fonction V (·) est ditedéfinie positive en x s’il existe un voisinage circulaire de x où

V (x) = 0 et V (x) > 0 pour x 6= x

Définition 4.12 (Fonction semidefinie positive). Une fonction V (·) estdite semidefinie positive en x s’il existe un voisinage circulaire de x où

V (x) = 0 et V (x) ≥ 0 pour x 6= x

Une classe importante de fonctions V est la classe des fonctions quadra-tiques

V (x) = xTAx =

n∑

i=1

n∑

j=1

aijxixj

où la matrice A est symétrique.

Définition 4.13 (Matrice (semi)définie positive). Une matrice A car-rée et symétrique est définie (semidéfinie) positive si et seulement si lafonction V (x) = xTAx est définie (semidéfinie) positive.

Une condition nécessaire et suffisante pour tester si une matrice estdéfinie positive est fournie par le test de Sylvester.Théorème 4.2 (Test de Sylvester). Une condition nécessaire et suffi-sante pour qu’une matrice

A =

a11 a12 · · · a1na21 a22 · · · a2n...

.... . .

...an1 an2 · ann

carrée et symétrique d’ordre n soit définie positive est que tous ses mi-neurs principaux soient positifs.

Notons que par mineurs principaux de A nous entendons les quantités :

D1 = det[a11]

D2 = det

[a11 a12a21 a22

]

Dj = det

a11 a12 · · · a1ja21 a22 · · · a2j...

.... . .

...aj1 aj2 · ajj

, j ≤ n

1. La définition de fonction et matrice (semi)définie négative peut être aisément obtenue defaçon symétrique.

Page 60: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

54 CHAPITRE 4. LES SYSTÈMES CONTINUS

Il s’ensuit le corollaire suivant : Une condition nécessaire pour que Asoit définie positive est que detA > 0, c.-à-d. que la matrice soit nonsingulière.

4.6.1 Critères de stabilité de Liapounov

Après cette série de définitions il nous est possible d’énoncer les critèresde Liapounov pour un système à temps continu

x(t) = f(x(t), u(t))

où le vecteur f(·, ·) est continu ainsi que ses dérivées partielles. Soit x l’état d’équilibre qui corresponde à l’entrée constante u, c.-à-d.

f(x, u) = 0

.

Théorème 4.3 (Critère de stabilité de Liapounov). S’il existe une fonc-tion V (·), continue ainsi que ses dérivées partielles, qui soit définie po-sitive en x et telle que la fonction

V (x) =dV (x)

dt= ∇V (x)f(x, u)

∇V (x) =

[∂V

∂x1,∂V

∂x2, . . . ,

∂V

∂xn

]

soit semi-définie négative en x alors x est un état d’équilibre stable.

Théorème 4.4 (Critère de stabilité asymptotique de Liapounov). S’ilexiste une fonction V (·), continue ainsi que ses dérivées partielles, quisoit définie positive en x et telle que la fonction

V (x) =dV (x)

dt= ∇V (x)f(x, u)

soit définie négative en x alors x est un état d’équilibre asymptotique-ment stable.

Une fonction V définie positive telle que V (·) soit définie négative estappelée une fonction de Liapounov.

Il est possible d’interpréter la fonction de Liapounov comme une notiond’énergie associée à un système dynamique. Un système avec un étatd’équilibre x asymptotiquement stable est donc un système caractérisépar une fonction d’énergie positive pour x 6= x (et nulle pour x = x) quiest décroissante avec le temps. Ceci implique que l’état du système nepeut que converger vers x pour t grandissant.

Notons que les deux critères énoncent seulement des conditions suffi-santes mais pas nécessaires. Ceci signifie que l’impossibilité de déter-miner une fonction de Liapounov ne nous autorise pas à en déduirel’instabilité de l’état d’équilibre x. En pratique, pour un système stableà grande dimensionnalité il peut être très difficile de trouver une fonctionde Liapounov.

Rappel

Page 61: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.6. LES CRITÈRES DE LIAPOUNOV 55

Soit V une fonction composée

V (x1(t), . . . , xn(t))

x1 = f1(x1, . . . , xn)...

xn = fn(x1, . . . , xn)

alors

dV

dt=∂V

∂x1

dx1dt

+· · ·+ ∂V

∂xn

dxndt

=∂V

∂x1f1(x1, . . . , xn)+· · ·+ ∂V

∂xnfn(x1, . . . , xn) =

= ∇V (x(t))f(x(t))

Exemple Considérons le système décrit par

x1 = f1(x1, x2) = x2

x2 = f2(x1, x2) = −ax1 − bx2 + u(4.8)

Pour u = 0, le système a l’état d’équilibre x = [0, 0]. Définissons lafonction

V (x1, x2) =1

2(kx21 + x22), k > 0

qui est définie positive en [0, 0]. Sa dérivée est

V =∂V

∂x1f1 +

∂V

∂x2f2 = kx1x2 − ax1x2 − bx22

Si k = a alors V = −bx22. Si b > 0, il existe donc une fonction V définiepositive dont la dérivée est définie négative. L’état d’équilibre [0, 0] estdonc asymptotiquement stable.La Figure 4.13 montre le portrait des phases du système pour a = b = 1.La Figure 4.14 montre la fonction V (x1, x2) et l’évolution de la valeurV (x1(t), x2(t)) le long de deux solutions du système (x0 = [1.9, 1.9] etx0 = [.9, .9])

4.6.2 Critères d’instabilité de Liapounov

Théorème 4.5 (Critère d’instabilité de Liapounov). Soit V (·) une fonc-tion continue ainsi que ses dérivées partielles dans un voisinage de x.Soit V (x) = 0 et positive dans des points arbitrairement proches de x. Sila fonction V (·) = ∇V (x)f est définie positive en x, alors l’état d’équi-libre x est instable.

Exemple Considérons encore le système (4.8) où b = −1 < 0.La Figure 4.15 montre le portrait des phases du systèmeLa Figure 4.16 illustre la fonction V (x1, x2) et l’évolution de la valeurV (x1(t), x2(t)) le long de deux solutions du système (x0 = [0.01, 0.01] etx0 = [0.01,−0.01])

Page 62: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

56 CHAPITRE 4. LES SYSTÈMES CONTINUS

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Portrait des phases

Figure 4.13 – Portrait des phases du système (4.8) pour a = b = 1.

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1

0

1

2

0

0.5

1

1.5

2

2.5

3

3.5

4

Fonction de Liapounov

Figure 4.14 – Fonction de Liapounov du système (4.8) pour a = b = 1.

Page 63: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

4.6. LES CRITÈRES DE LIAPOUNOV 57

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

Portrait des phases

Figure 4.15 – Portrait des phases du système (4.8) pour b = −1.

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1

0

1

2

0

0.5

1

1.5

2

2.5

3

3.5

4

Fonction de Liapounov

Figure 4.16 – Fonction de Liapounov du système (4.8) pour a = b = 1.

Page 64: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

58 CHAPITRE 4. LES SYSTÈMES CONTINUS

4.6.3 Analyse de stabilité du système pendule

Considérons le système régi par

mlθ = −mg sin θ − klθ

où de manière équivalente par

x1 = f1(x1, x2) = x2

x2 = f2(x1, x2) = − gl sinx1 − k

mx2

où θ = x1, θ = x2.Nous pouvons définir la fonction

V (x1, x2) = mgl(1− cosx1) +1

2ml2x22

qui équivaut à l’énergie mécanique du système, c.-à-d. la somme del’énergie potentielle et de l’énergie cinétique. Cette fonction est unefonction continue comme ses dérivées partielles. En plus, elle est définiepositive puisque elle est positive partout mis à part en x1 = 0, x2 = 0.Notons aussi que

V =∂V

∂x1f1 +

∂V

∂x2f2 = mgl sinx1f1 +ml2x2f2 =

= mgl sin(x1)x2 −ml2x2

(g

lsin(x1) +

k

mx2

)

= −kl2x22 ≤ 0

Il s’ensuit que si k > 0 x = [0, 0] est un équilibre asymptotiquementstable.Si k = 0, l’équilibre est simplement stable.

Page 65: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 5

Les systèmes linéaires

continus

Observer la réalité passe parl’analyse et l’étude des relations entre causeset effets. L’approche naïve et intuitive pour observer la réalité s’appuiesur la conviction qu’un système soumis à des conditions extérieures biendéfinies suit une évolution bien précise et que des petites perturbationssur les conditions induisent des petits changements dans la réponse dusystème. Cette idée est basée sur des assomptions de reproductibilité desexpériences et de capacité de prédiction illimitée et supporte la visiond’un monde linéaire.Les modèles linéaires sont normalement utilisés pour décrire le compor-tement de systèmes dans des configurations proches de l’équilibre. Unexemple peut être le modèle qui décrit la déformation d’un corps sujetà une charge. La déformation est proportionnelle à la charge seulementpour de petites charges. La grande utilisation des systèmes linéaires aaussi été justifiée par des raisons de simplicité d’analyse et de complexitécomputationnelle : par exemples les EDO linéaires sont les seules EDO,à quelques rares exceptions près, qui peuvent être résolues de manièreanalytique.Ce chapitre traitera des propriétés des systèmes linéaires en se focalisantsur les systèmes de petite dimensionnalité (n = 1 et n = 2).

5.1 Mouvements libre et forcé

L’observation quotidienne de la réalité qui nous entoure (par exempleune voiture) se base sur l’idée que l’évolution d’un système dynamiquepeut varier en fonction de la condition initiale (pensons à une voiturequi se trouve à l’instant t0 sur une pente plutôt que sur une route plate)et de la fonction d’entrée (conduite relax ou sportive). En général il estintéressant de décomposer le mouvement d’un système en deux contribu-tions, une liée à la condition initiale et l’autre liée à la fonction d’entrée.Soit un système dynamique avec une fonction de transition ϕ. Considé-rons les deux mouvements particuliers :

Mouvement libre : le mouvement obtenu quand la fonction d’entréeu(·) = 0 est nulle

ϕl(·, t0, x0) = ϕ(·, t0, x0, 0)

59

Page 66: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

60 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

Mouvement forcé : le mouvement obtenu quand l’état initial x(t0) =0 est nul

ϕf (·, t0, u(·)) = ϕ(·, t0, 0, u(·))

Les notions de mouvement libre et forcé nous permettent d’introduireune notion clé des systèmes dynamiques : la notion de système linéaireoù tout mouvement peut être vu comme la combinaison linéaire d’unmouvement libre et d’un mouvement forcé.

5.2 Système dynamique linéaire et superpo-sition des effets

Un système dynamique linéaire jouit des propriétés suivantes :— Tout mouvement est la somme des mouvements libres et forcés cor-

respondants, c.-à-d.

ϕ(·, t0, x0, u(·)) = ϕl(·, t0, x0) + ϕf (·, t0, u(·)), (5.1)

— la transformation ϕl est une transformation linéaire,

ϕl(t, t0, ax01 + bx02) = aϕl(t, t0, x01) + bϕl(t, t0, x02) (5.2)

c.-à-d. si l’état initial est une combinaison linéaire de deux états x01et x02 alors le mouvement libre correspondant est la même combi-naison linéaire des deux mouvements libres associés à x01 et x02,

— la transformation ϕf est une transformation linéaire,

ϕf (t, t0, au1(·) + bu2(·)) = aϕf (t, t0, u1(·)) + bϕf(t, t0, u2(·)) (5.3)

c.-à-d. si l’entrée est une combinaison linéaire des deux entrées u1(·)et u2(·) alors le mouvement forcé correspondant est la même combi-naison linéaire des deux mouvements forcés associés à u1(·) et u2(·)

— la transformation de sortie η est linéaire.Dans les systèmes linéaires tout mouvement peut être décomposé enla somme d’un mouvement libre et d’un mouvement forcé et ces mou-vements sont linéaires en l’état initial x0 et la fonction d’entrée. Cespropriétés sont aussi connues sous le nom de principe de superpositiondes effets, un principe qui peut être vulgarisé de la manière suivante :l’effet conjoint de la somme de plusieurs causes est égal à la somme deseffets individuels de chaque cause prise individuellement.

Définition 5.1 (Système linéaire). Un système est dit linéaire si— les ensembles U,Ω,X,Y et Γ sont des espaces vectoriels.— la fonction de transition ϕ est linéaire en X×Ω pour tous les t0, t ∈ T

c.-à-d.ϕ(t, t0, x

0, u(·)) = ϕl(·, t0, x0) + ϕf (·, t0, u(·))— la transformation de sortie η est linéaire en X pour tous les t ∈ T ,

c.-à-d.y(t) = C(t)x(t)

5.3 Systèmes linéaires et EDO linéaires

On peut démontrer le théorème suivant :

Page 67: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.3. SYSTÈMES LINÉAIRES ET EDO LINÉAIRES 61

Théorème 5.1. Chaque système à dimensions finies, linéaire et régulierpeut être décrit par des équations du genre

x(t) = A(t)x(t) +B(t)u(t)

y(t) = C(t)x(t)

où A(·), B(·) et C(·) sont des matrices où chaque élément est une fonc-tion continue en T .

Notons que si x ∈ Rn, u ∈ R

m, y ∈ Rp, alors A(·) est une matrice d’ordre

[n, n], B(·) est une matrice d’ordre [n,m] et C(·) est une matrice d’ordre[p, n].Le théorème inverse est aussi valable.

Théorème 5.2. Soient données les trois matrices A(·), B(·), C(·) conti-nues en T = R ainsi que les équations

x(t) = A(t)x(t) +B(t)u(t)

y(t) = C(t)x(t)

alors il existe un et un seul système linéaire, régulier et à dimensionsfinies qui les satisfait.

En d’autre termes, définir un système linéaire revient à définir le tripletde matrices (A(·), B(·), C(·)) où A et B décrivent la dépendance entrée-état et C décrit la dépendance état-sortie.Notons que

x(t) = A(t)x(t) +B(t)u(t)

y(t) = C(t)x(t)

est une manière compacte pour écrire le système d’équations suivantes

x1(t) = a11(t)x1(t) + · · ·+ a1n(t)xn(t) + b11(t)u1(t) + · · ·+ b1m(t)u(t)...

xn(t) = an1(t)x1(t) + · · ·+ ann(t)xn(t) + bn1(t)u1(t) + · · ·+ bnm(t)u(t)

y1(t) = c11(t)x1(t) + · · ·+ c1n(t)xn(t)...

yp(t) = cp1(t)x1(t) + · · ·+ cpn(t)xn(t)

Exemple Cet exemple montre une série de simulations qui mettenten évidence le principe de superposition des effets présenté dans la Sec-tion 5.2.Considérons un système décrit par l’EDO d’ordre n = 1

x = −cx(t) + u(t)

y(t) = x(t)(5.4)

Selon le Théorème 5.2 ce système continu est linéaire et doit donc satis-faire les propriétés (5.1), (5.2) et (5.3) de décomposition du mouvement.Soient u1(t) et u2(t) deux profils de la fonction d’entrée (Figure 5.1).La Figure 5.2 illustre la propriété (5.1) en montrant que le mouvementdu système quand u = 3u1(t)+u2(t) et x(0) = 1 est égal à la somme du

Page 68: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

62 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

0 5 10−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t

u1

0 5 10−0.5

0

0.5

1

1.5

t

u2

Figure 5.1 – Deux profils u1(t) et u2(t) de la fonction d’entrée.

0 5 10−1.5

−1

−0.5

0

0.5

1

1.5

2

t

x

Mouvement

0 5 10−1.5

−1

−0.5

0

0.5

1

1.5

2

t

x forc

é

Mouvement forcé

0 5 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

t

x lib

re

Mouvement libre

Figure 5.2 – Gauche : mouvement x(t) pour u = 3u1(t)+u2(t) et x(0) = 1. Centre :mouvement libre x(t) (u1 = u2 = 0, x(0) = 1). Droite : mouvement forcé (x(0) = 0et u = 3u1(t) + u2(t)).

Page 69: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.3. SYSTÈMES LINÉAIRES ET EDO LINÉAIRES 63

0 5 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

t

x

x(0)=1

0 5 100

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

1.8

2

t

x

x(0)=2

0 5 100

1

2

3

4

5

6

7

8

t

x

x(0)=2*1+3*2

Figure 5.3 – Gauche : mouvement libre x1(t) pour u = 0 et x1(0) = 1. Centre :mouvement libre x2(t) pour u = 0 et x2(0) = 2. Droite : mouvement libre x(t) pouru = 0 et x(0) = 2 ∗ 1 + 3 ∗ 2.

0 5 10−0.5

0

0.5

1

1.5

2

t

x

u=u1

0 5 100

1

2

3

4

5

6

t

x

u=u2

0 5 100

5

10

15

20

25

30

t

x

u=3 u1+ 4 u

2

Figure 5.4 – Gauche : mouvement forcé x1(t) pour u = u1(t) et x1(0) = 0. Centre :mouvement forcé x2(t) pour u = u2(t) et x2(0) = 0. Droite : mouvement forcé x(t)pour u = 3u1(t) + 4u2(t) et x(0) = 0.

mouvement libre (c.-à-d. la solution de (5.4) pour u1 = u2 = 0, x(0) = 1)et du mouvement forcé (c.-à-d. la solution de (5.4) pour x(0) = 0 etu = 3u1(t) + u2(t)).

La Figure 5.3 illustre la propriété (5.2) en montrant que le mouvementlibre x(t) pour une condition initiale qui est une combinaison linéaire dedeux conditions initiales (x(0) = 2 ∗ 1 + 3 ∗ 2) est égal à la combinaisonlinéaire x(t) = 2x1(t) + 3x2(t) du mouvement libre x1(t) (c.-à-d. lasolution de (5.4) pour u = 0 et x1(0) = 1) et du mouvement libre x2(t)(c.-à-d. la solution de (5.4) pour u = 0 et x2(0) = 2).

La Figure 5.4 illustre la propriété (5.3) en montrant que le mouvementforcé x(t) pour une entrée qui est combinaison linéaire de deux entrées(u(t) = 3u1(t) + 4u2(t)) est égale à la combinaison linéaire x(t) = 3 ∗x1(t) + 4 ∗ x2(t) du mouvements forcé x1(t) (c.-à-d. la solution de (5.4)pour u = u1 et x1(0) = 0) et du mouvement forcé x2(t) (c.-à-d. lasolution de (5.4) pour u = u2 et x2(0) = 0).

La Figure 5.5 illustre que le principe de superposition s’applique aussiaux sorties. Elle montre que la sortie y(t) pour une entrée qui est com-binaison linéaire de deux entrées (u(t) = k1u

(1) + k2u(2)) et une condi-

tion initiale qui est combinaison linéaire de deux conditions (x(0) =

Page 70: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

64 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

0 5 100

2

4

6

8

10

12

14

t

x

x(0)=1; u=u1+2u

2

0 5 10−1

0

1

2

3

4

5

6

t

x

x(0)=3;u=2 u1−u

2

0 5 10−15

−10

−5

0

5

10

15

20

25

t

x

x(0)=2*1−4*3; u= (2*1−4*2) u1+ (2*2−4*(−1)) u

2

Figure 5.5 – Gauche : sortie y1(t) pour u(1) = u1(t)+ 2u2(t) et x1(0) = 1. Centre :sortie y2(t) pour u = u(2)(t) = 2u1(t)− u2(t) et x2(0) = 3. Droite : sortie y(t) pouru = 2u(1)(t)− 4u(2)(t) et x(0) = 2 ∗ 1− 4 ∗ 3.

k1x01 + k2x02) est égale à la combinaison linéaire k1y1(t) + k2y2(t)de la sortie y1(t) (x1(0) = x01, u(t) = u(1)(t)) et de la sortie y2(t) (x2(0) = x02 , u(t) = u(2)(t))). Notons que dans l’exemple k1 = 2 etk2 = −4.

5.3.1 Systèmes linéaires invariants

Une sous-classe remarquable des systèmes linéaires est la classe dessystèmes invariants, caractérisée par le fait que les matrices (A(·) =A,B(·) = B,C(·) = C) sont constantes et ne dépendent donc pas dutemps.

On peut montrer que dans ce cas le mouvement du système est donnépar

x(t) = eAtx(0) +

∫ t

0

eA(t−ξ)Bu(ξ)dξ

Si l’entrée d’un système invariant est constante u(t) = u et si les matricesA et B sont non singulières alors l’état d’équilibre du système est

x = A−1Bu

Ceci signifie que pour u = 0 le seul état d’équilibre est l’origine. Le calculdes états d’équilibre est plus complique si la condition de non singularitéde A et B n’est pas respectée [17].

5.4 Stabilité des systèmes linéaires

Dans le chapitre 4 nous avons introduit la définition de stabilité etquelques conditions suffisantes pour que un système continu génériquesoit stable.

Un des aspects les plus intéressants des systèmes continus linéaires estque pour cette famille de systèmes, l’analyse de stabilité est largementsimplifiée. D’abord il n’est plus nécessaire de différencier entre stabilité

Page 71: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.4. STABILITÉ DES SYSTÈMES LINÉAIRES 65

d’un mouvement et stabilité d’un point d’équilibre puisque tout pro-blème de stabilité d’un mouvement d’un système linéaire peut être ra-mené à un problème de stabilité de l’état d’origine pour un autre systèmelinéaire.Analysons la dynamique de la perturbation d’un mouvement nominaldans le cas d’un système linéaire. Soit x(·) = ϕ(·, t, x, u(·)) le mouvementnominal qui satisfait la relation

˙x(t) = A(t)x(t) +B(t)u(t), t ≥ t

Soit x(·) = ϕ(·, t, x, u(·)) le mouvement perturbé qui satisfait la relation

˙x(t) = A(t)x(t) +B(t)u(t), t ≥ t

Nous définissons le mouvement z(·) comme la différence entre le mou-vement perturbé et le mouvement nominal

z(t) = x(t)− x(t), t ≥ t

La dynamique de z(t) est décrite par

z(t) = ˙x(t) − ˙x(t) = A(t)x(t) +B(t)u(t)−A(t)x(t)−B(t)u(t) =

= A(t)z(t) (5.5)

qui a l’origine comme point d’équilibre. L’étude de la stabilité de toutmouvement x(·) peut donc être effectuée en étudiant la stabilité du pointd’équilibre (c.-à-d. l’origine) du système (5.5).Il s’ensuit que dans un système linéaire, la stabilité (instabilité) d’unmouvement implique la stabilité (instabilité) de tous les mouvements,en particulier celui de l’origine de l’espace d’état (qui est un état d’équi-libre correspondant à u = 0). De plus puisque la stabilité du systèmelinéaire (5.5) dépend seulement des propriétés de la matrice A(·), lastabilité d’un mouvement quelconque

˙x(t) = A(t)x(t) +B(t)u(t), t ≥ t

peut être étudiée en analysant la stabilité de l’origine du système libre

x(t) = A(t)x(t). (5.6)

5.4.1 Stabilité et polynôme caractéristique

Nous ne considérerons dans la suite que des systèmes linéaires invariantset autonomes (Section 4.4), c.-à-d. des systèmes linéaires de la forme

x(t) = Ax(t) (5.7)

où la matrice A est constante et la matrice B est nulle. Il est possiblede montrer que la stabilité d’un système linéaire autonome ne dépendque de la matrice A et en particulier de ses valeurs propres.C’est donc le moment de rappeler quelques définitions déjà présentéesau cours de Calcul formel et numérique [2].

Définition 5.2 (Polynôme caractéristique). Le polynôme caractéris-tique ∆A d’une matrice A de taille [n, n] est la polynôme

∆A(λ) = det(λI −A) = λn + a1λn−1 + a2λ

n−2 + · · ·+ an

L’équation ∆A(·) = 0 s’appelle équation caractéristique et ses racinesλi, i = 1, . . . , n sont les valeurs propres de la matrice A.

Page 72: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

66 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

Il est possible de montrer que le signe de la partie réelle des valeurspropres de A fournit une indication sur la stabilité du système linéaire (5.7).

Théorème 5.3. Le système linéaire (5.7) est asymptotiquement stablesi et seulement si toutes les valeurs propres de la matrice A ont unepartie réelle négative.

Théorème 5.4. Le système linéaire (5.7) est (simplement) stable si etseulement si toutes les valeurs propres de la matrice A ont une par-tie réelle non positive et celles avec partie réelle nulle (c.-à-d. valeursimaginaires) ont une multiplicité 1.

Théorème 5.5. Le système linéaire (5.7) est instable si et seulements’il existe soit une valeur propre avec une partie réelle positive soit unevaleur propre avec une partie réelle nulle et une multiplicité supérieureà 1.

Notons aussi cette importante propriété de stabilité globale (Défini-tion 4.10) qui est valable pour les systèmes linéaires asymptotiquementstables.

Théorème 5.6. Un système linéare asymptotiquement stable est aussiglobalement stable.

Il s’ensuit que il est possible définir la stabilité d’un cas linéaire surla base du comportement asymptotique des trajectoires du systèmelibre (5.6) :— Un système dynamique linéaire est stable si son mouvement libre (c.-

à-d. la solution de (5.6)) est limité pour toute valeur de la conditioninitiale.

— Un système dynamique linéaire est asymptotiquement stable si lemouvement libre (c.-à-d. la solution de (5.6)) tend vers l’origine pourt→ ∞ pour toute valeur de la condition initiale.

— Un système dynamique linéaire est instable s’il existe au moins unecondition initiale telle que le mouvement libre qui en résulte soit nonlimité.

5.4.2 Critère de Hurwitz

Les théorèmes de la section précédente énoncent que la stabilité d’unsystème linéaire dépend du signe de la partie réelle des valeurs propresde A. Il est toutefois possible de calculer les signes des valeurs propressans trouver les racines de l’équation caractéristique. Pour ce faire il estsuffisant d’effectuer quelques tests sur les coefficients ai du polynômecaractéristique.Un exemple est le test de Hurwitz qui est vérifié si et seulement si toutesles racines du polynôme caractéristique ont une partie réelle négative.

Théorème 5.7. Soit

∆A(λ) = det(λI −A) = λn + a1λn−1 + a2λ

n−2 + · · ·+ an

le polynôme caractéristique du système linéaire (5.7). Définissons la ma-trice d’Hurwitz comme la matrice [n, n] de la forme suivante

H =

a1 1 0 0 · · ·a3 a2 a1 1 · · ·a5 a4 a3 a2 · · ·a7 a6 a5 a4 · · ·...

......

...

Page 73: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.4. STABILITÉ DES SYSTÈMES LINÉAIRES 67

où an+i = 0 pour i > 0. La condition nécessaire et suffisante pour lastabilité asymptotique du système est que tous les mineurs principaux dela matrice de Hurwitz soient positifs.

Pour la définition de mineur d’une matrice consulter[2].

Exemple Considérons le système linéaire (5.7) où

A =

[0 1−a −b

]

Le polynôme caractéristique correspondant est

det(λI −A) = det

[λ −1a λ+ b

]

= λ(λ+ b) + a = λ2 + bλ+ a

La matrice de Hurwitz de taille n = 2 sera

H =

[b 10 a

]

Il découle du Théorème 5.7 que le système sera stable si et seulement sia > 0 et b > 0.

5.4.3 Formule de Souriau

La section précédente à montré une condition nécessaire et suffisantepour la stabilité d’un système linéaire. Une condition nécessaire de sta-bilité est énoncée par le théorème suivant.

Théorème 5.8. Une condition nécessaire pour la stabilité asymptotiquede A est que tous les coefficients ai du polynôme caractéristique soientpositifs.

Il s’ensuit qu’une matrice A dont le polynôme caractéristique a quelquescoefficients négatifs ou nuls correspond à un système qui n’est pas asymp-totiquement stable. Le calcul des coefficients ai à partir de la matriceA demande le calcul d’un déterminant. Ceci peut être onéreux dans lecas d’un n grand. Une procédure plus rapide s’appuie sur la formule deSouriau.

Théorème 5.9. Les coefficients ai, i = 1, . . . , n du polynôme caracté-ristique ∆A(λ) d’une matrice A sont donnés par

a1 = −(trA)

a2 = −1

2(a1trA+ trA2)

a3 = −1

3(a2trA+ a1trA

2 + trA3)

...

an = − 1

n(an−1trA+ an−2trA

2 + · · ·+ trAn)

où trAK est la somme des éléments de la diagonale de la matrice Ak.

Page 74: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

68 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

Il s’ensuit que puisquen∑

i=1

λi = trA,

(voir [2]) toutes les matrices avec trace positive ou nulle ne peuvent pasêtre asymptotiquement stables.

Exemple Montrons que la formule de Souriau est satisfaite dans lecas du système

A =

[0 1−a −b

]

dont le polynôme caractéristique est

∆A = λ(λ + b) + a = λ2 + bλ+ a

Puisque

A2 =

[−a −bab −a+ b2

]

Il est facile vérifier que

a1 = b = −trA

a2 = a = −1/2a1(trA+ tr(A2)) = −1/2(−b2 − 2a+ b2)

5.4.4 Stabilité et connexion

Considérons un système résultant de l’interconnexion de plusieurs sous-systèmes (Section 2.4). Une question importante est comment analyserla stabilité du système résultant sur base de la stabilité de chacun dessous-systèmes. Quelques résultats existent pour la connexion en cascadeet en parallèle.

Théorème 5.10. Un système linéaire (A,B,C) composé par la cascade(ou la parallélisation) de deux sous-systèmes linéaires (A1, B1, C1) et(A2, B2, C2) est asymptotiquement stable si et seulement si les deux sous-systèmes sont asymptotiquement stables.

Notons aussi que le polynôme caractéristique ∆A(·) d’un système com-posé par la cascade de deux sous-systèmes linéaires (A1, B1, C1) et (A2, B2, C2)est le produit des deux polynômes caractéristiques ∆A1(·) et ∆A2(·).

5.5 Systèmes linéaires du premier ordre

Jusqu’ici nous avons étudié un système linéaire générique (5.7) d’ordren. Si nous nous bornons à considérer les systèmes d’ordre n ≤ 2 il estpossible de dériver quelques propriétés additionnelles.Nous commencerons dans cette section à considérer les systèmes linéairesautonomes d’ordre n = 1. Ces systèmes sont caractérisés par une seulevariable d’état x et ils ont la forme

x = Ax, x(0) = x0, A ∈ R, A 6= 0 (5.8)

Page 75: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.5. SYSTÈMES LINÉAIRES DU PREMIER ORDRE 69

0 0.5 1 1.5 2 2.5 3−50

−40

−30

−20

−10

0

10

20

30

t

x

k=1

0 0.5 1 1.5 2 2.5 3−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

t

x

k=−1

Figure 5.6 – Evolutions d’un système dynamique linéaire autonome d’ordre 1 pourdeux valeurs du paramètre k.

où A est un scalaire. Si A 6= 0, le système aura x = 0 comme seul étatd’équilibre. Par contre si A = 0 tous les états sont des états d’équilibre.Qualitativement, ce modèle représente la dynamique d’un système oùle taux de (dé)croissance de x est proportionnel à sa taille. En d’autrestermes, dans ces systèmes la valeur de l’état détermine le taux de chan-gement de l’état même (feedback). Des exemples de systèmes réels quipeuvent être modélisés par le biais de l’équation (5.8) sont l’évolutiond’une population (par exemple des lapins) en absence de prédateurs,l’évolution de l’intérêt d’un compte en banque, la croissance économiqueou la désintégration radioactive (decay).L’équation différentielle (5.8) a pour solution

x(t) = ceAt où c = x(0). (5.9)

Puisque la seule valeur propre de ce système est λ1 = A, l’état d’équilibrex = 0 est un état asymptotiquement stable pour A < 0 (Théorème 5.3)et instable pour A > 0 (Théorème 5.5).

Exemple Supposons vouloir modéliser en finance l’évolution tem-porelle d’un capital x qui soit investi à un taux d’intérêt constant k.Supposons aussi que la croissance du capital ait lieu de manière conti-nue.L’évolution du capital peut être décrite par une équation du type (5.8)où A = k.Cette modélisation est très simplifiée puisqu’elle se base sur plusieurshypothèses : par exemple le taux d’intérêt est constant dans le temps etindépendant du montant.La Figure 5.6 montre deux ensembles (k = ±1) de simulations du sys-tème pour des conditions initiales x0 différentes.

•Dans un système (5.8) où A < 0 la quantité τ = −1/A est dénotée laconstante de temps. Cette quantité est une mesure du temps employépar le système pour atteindre son état stable. Les systèmes avec petitτ converge vite alors que ceux avec un grand τ convergent lentement.D’habitude, on considère qu’un système autonome est très proche de

Page 76: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

70 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

0 2 4 6 8 100

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

t

x

Constante de temps=1

Figure 5.7 – Système linéaire d’ordre 1 avec constante de temps τ = 1.

Figure 5.8 – Exemples de portraits de phase d’un système linéaire continu d’ordre1 (en haut : stable ; en bas : instable)

son état stable après qu’un intervalle de temps égal à 4 fois la constantede temps se soit écoulé. La Figure 5.7 montre l’évolution d’un systèmelinéaire autonome d’ordre 1 avec A = k = −1, x(0) = 1 et une constantede temps τ = 1.En ce qui concerne le portrait de phase du système (5.8), notons quepuisque le nombre de variables d’état est n = 1 l’espace de phase estunidimensionnel (c.-à-d. que c’est une droite). Etant donné que le sys-tème est autonome, il n’y donc que deux configurations possibles : soitles trajectoires convergent sur le point fixe (k < 0), soit elles s’éloignentdu point fixe (k > 0) (Figure 5.8).

5.6 Systèmes autonomes du second ordre

Les systèmes autonomes du second ordre sont des systèmes représentéspar des équations de la forme

x1 = a11x1 + a12x2

x2 = a21x1 + a22x2⇔[x1x2

]

=

[a11 a12a21 a22

] [x1x2

]

⇔ x = Ax (5.10)

Le système est dit simple si detA 6= 0. Dans ce cas l’état (0, 0) estle seul état d’équilibre du système autonome. Le système est dit nonsimple si detA = 0. Dans ce cas le système a aussi des points d’équilibreautres que l’origine.Les systèmes linéaires de second ordre ont été utilisés maintes fois dansles sciences et les sciences appliquées pour représenter des phénomènes

Page 77: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 71

réels. Dans l’exemple qui suit nous nous attarderons sur l’utilisation dece formalisme pour étudier la dynamique de deux populations.

Une interprétation en termes de dynamique des populationsUtilisons le système (5.10) pour modéliser l’évolution de deux popu-lations qui interagissent dans un environnement où la quantité de res-sources est illimitée. Soient x1 et x2 respectivement le nombre des membresde la population 1 et de la population 2. Ceci équivaut à supposer queles taux de changement de x1 et x2 dépendent de manière linéaire destailles des populations 1 et 2.En particulier,— les coefficients aij , i 6= j dans (5.10) représentent la contribution que

la population j apporte au développement de la population i. Cetteaction peut être constructive aij > 0 ou destructive aij < 0. Parexemple a12 > 0 signifie que x2 donne une contribution positive à lacroissance de x1 : en d’autres termes la taille x1 de la population 1 vacroître d’autant plus rapidement que x2 est grande. Si a12 > 0, a21 >0 nous sommes en présence d’une situation de coopération alors quesi a12 < 0, a21 < 0 nous assistons à une situation de compétitivitéentre les deux espèces. De la même manière, le parasitisme de l’espèce2 sur l’espèce 1 peut être représenté par a12 < 0, a21 > 0.

— les coefficients aii représentent l’effet des individus d’une populationsur la croissance de la population à laquelle ils appartiennent. aii >0 signifie que la croissance de i est auto-entretenue, par exemplepar l’activité reproductive. aii < 0 signifie que la compétition entreindividus de l’espèce i porte à une réduction du taux de croissanceau fur et à mesure que la taille xi augmente.

Notons que ce modèle implique que la disparition d’une de deux popu-lations (par exemple x1 = 0, ˙x1 = 0) entraîne d’une manière inévitablela disparition de l’autre population.

•L’espace d’état du système (5.10) est bidimensionnel. Ceci signifie queles trajectoires de ces systèmes dans l’espace de phase sont représentéespar des courbes dans le plan. En ce qui concerne la forme analytique dela solution x(t) = [x1(t), x2(t)] il est possible de démontrer les théorèmessuivants.

Théorème 5.11. Soient x(1)(t) ∈ R2 et x(2)(t) ∈ R

2 deux solutions li-néairement indépendantes du système (5.10). Si c1, c2 est un ensemblede 2 constants (réels ou complexes) alors la solution générale peut êtreécrite de la manière

x(t) = c1x(1)(t) + c2x

(2)(t)

où c1 et c2 dépendent de la condition initiale.

Théorème 5.12. Soient x(1)(t) ∈ R2 et x(2)(t) ∈ R

2 deux solutionsdu système (5.10) et les vecteurs x(1)(0) et x(2)(0) sont linéairementindépendants. Alors

x(t) = c1x(1)(t) + c2x

(2)(t)

est la seule solution du système qui satisfait

x0 = c1x(1)(0) + c2x

(2)(0)

Page 78: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

72 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

Rappelons à l’étudiant que deux vecteurs a et b sont linéairement in-dépendants si toute combinaison linéaire finie nulle de ces vecteurs anécessairement tous ses coefficients nuls. De plus toute écriture d’unvecteur comme combinaison linéaire de a et b est unique.

5.6.1 Équation caractéristique du second ordre

L’équation caractéristique du système (5.10) est

∆A(λ) = det(λI −A) = det

[λ− a11 −a12−a21 λ− a22

]

=

= (λ−a11)(λ−a22)−a12a21 = λ2−(a11+a22)λ+(a11a22−a12a21) = 0(5.11)

dont les racines complexes sont

λ1,2 =(a11 + a22)±

(a11 + a22)2 − 4(a11a22 − a12a21)

2

Notons la relation qui existe entre les valeurs propres, la trace et ledéterminant de A

trA = a11 + a22 = Re(λ1) + Re(λ2) (5.12)

detA = a11a22 − a12a21 = λ1λ2 (5.13)

∆ = (a11 + a22)2 − 4(a11a22 − a12a21) = (a11 − a22)

2 + 4a12a21(5.14)

Comme discuté en Section 5.4 la stabilité du système (5.10) peut êtredéterminée par les valeurs propres de l’équation caractéristique.

5.6.2 Trajectoires pour des valeurs propres réelleset distinctes

Nous allons ici présenter la solution analytique du système (5.10) dansle cas où les deux valeurs propres de A sont réelles et distinctes.Nous commencerons par montrer que quelques trajectoires dans l’espacede phase bidimensionnel sont rectilignes. Soit λ une valeur propre de Aet v ∈ R

2 le vecteur propre correspondant, c.-à-d.

λv = Av (5.15)

Supposons que l’ état x(t) ∈ R2 à l’instant t du système (5.10) soit égal

à v. Il découle de (5.10) et de (5.15) que la derivée

x(t) = Ax(t) = λx(t)

Ceci signifie que le vecteur vitesse x(t) a la même direction que x. Ils’ensuit que cet état évoluera le long d’une trajectoire rectiligne qui a lamême direction que v (Figure 5.9). En d’autres termes à chaque vecteurpropre v ∈ R

2 correspond une trajectoire rectiligne du système (5.10) dedirection v. Notons que si l’état du système appartient à une trajectoirerectiligne, les états futurs du systèmes ne sortiront jamais de cette droite.Dans la suite nous appellerons invariant une région de l’espace d’étatde laquelle un état du système ne va jamais sortir.

Page 79: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 73

x(t)

x’(t)

x1

x2

Figure 5.9 – Vecteur d’état et vecteur vitesse avec la même direction.

Mais comment pouvons nous calculer les équations de ces trajectoiresrectilignes ? Grâce à la relation (5.15), si λ1 et λ2 sont deux valeurspropres réelles il est possible de montrer que

(a11 − λ1)x1 + a12x2 = 0

est l’équation de la droite qui correspond au vecteur propre v1 = [v11, v12]associé à λ1 et que

a21x1 + (a22 − λ2)x2 = 0

est l’équation de la droite qui correspond au vecteur propre v2 = [v21, v22]associé à λ2. De plus on peut montrer que si λ1 et λ2 sont réelles et dis-tinctes alors

x(1)(t) = eλ1tv1, x(2)(t) = eλ2tv2

sont deux solutions particulières et linéairement indépendantes du sys-tème.Grâce au Théorème 5.11 nous voyons que la solution générale du systèmea la forme

x(t) = c1eλ1tv1 + c2e

λ2tv2 ⇒

x1(t) = c1eλ1tv11 + c2e

λ2tv21

x2(t) = c1eλ1tv12 + c2e

λ2tv22(5.16)

où c1 et c2 sont deux paramètres qui doivent satisfaire la conditioninitiale

x(t0) = x0 = c1eλ1t0v1 + c2e

λ2t0v2.

ExempleSoit

x =

[1 33 1

]

x, x(0) = [0.5, 0]. (5.17)

Page 80: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

74 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

1

0 0.2 0.4

0.25*exp(-2*x) + 0.25*exp(4*x)

1

0 0.2 0.4

-0.25*exp(-2*x) + 0.25*exp(4*x)

Figure 5.10 – Evolution temporelle de deux composantes de la solution de (5.17).

Nous pouvons calculer les valeurs propres en utilisant la formule (5.11).Il faut donc résoudre

λ2 − 2λ− 8 = 0,

ce qui donne λ = 2±√36

2 =

4

−2

Passons maintenant au calcul des vecteurs propres. Pour λ1 = 4 nouscherchons v1 = (v11, v12). Nous avons :

A · v1 = λ1 · v1 ⇐⇒

v11 + 3v12 = 4v11

3v11 + v12 = 4v12⇐⇒

3v12 = 3v11

3v11 = 3v12

et donc v1 =

[11

]

. Le même calcul pour λ2 donne v2 =

[1−1

]

.

La forme générale (5.16) de x(t) = [x1(t), x2(t)]T est donc

x(t) = c1e−2t

[1−1

]

+ c2e4t

[11

]

=

[c1e

−2t + c2e4t

−c1e−2t + c2e4t

]

donc

x1(t) = c1e−2t + c2e

4t

x2(t) = −c1e−2t + c2e4t

Maintenant il faut fixer les paramètres constants c1 et c2 de manièreà satisfaire les conditions initiales x(0) = [0.5, 0], et donner l’expressionanalytique de x1(t) et x2(t) .

c1 + c2 = 0.5

−c1 + c2 = 0⇐⇒ c1 = c2 = 0.25

x1(t) = 0.25e−2t + 0.25e4t

x2(t) = −0.25e−2t + 0.25e4t

L’évolution temporelle des deux composantes de la solution x(t) estmontrée dans la Figure 5.10.

•Selon (5.16) chaque trajectoire x(t) du système (5.10) ayant des valeurspropres réelles et distinctes est composée de deux composantes expo-nentielles par rapport au temps et indépendantes. La première est endirection du vecteur propre v1 et la deuxième en direction du vecteurpropre v2.

Page 81: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 75

2

v1

v

Figure 5.11 – λ1 < λ2 < 0 : les trajectoires s’alignent avec le vecteur propre v2 quicorrespond à la trajectoire la plus lente.

Ceci nous permet de visualiser qualitativement le comportement du sys-tème dynamique en fonction des valeurs propres de la matrice A.

Si les deux valeurs propres sont réelles et négatives, les deux compo-santes du mouvement évoluent de manière exponentiellement négativeen direction de l ’origine, où la vitesse de convergence est dictée par lataille de la valeur propre.

De plus, vu que la vitesse des deux composantes est différente, nouspouvons assister à des profils différents selon les valeurs de λ1 et λ2. Enparticulier,— Si λ1 < λ2 < 0 alors, pour t → ∞, eλ1t converge vers zéro plus

rapidement que eλ2t, donc

limt→∞

x2(t)

x1(t)=c2e

λ2tv22c2eλ2tv21

=v22v21

c.-à-d. la trajectoire s’aligne avec le vecteur propre v2 qui correspondà la trajectoire la plus lente (Figure 5.11). De la même manière si t→−∞ la trajectoire s’aligne avec le vecteur propre v1 qui correspondà la trajectoire la plus rapide.

— Si λ1 > λ2 > 0 alors pour t → ∞ la trajectoire s’aligne avec levecteur propre v1 qui correspond à la trajectoire la plus rapide.

5.6.3 Classification de la stabilité sur base des va-leurs propres

Dans cette section pour chaque configuration possible de couple de va-leurs propres de A nous allons (i) discuter la stabilité du point d’équi-libre (et donc du système) et (ii) montrer visuellement la configurationqualitative du portrait de phase associé.

Page 82: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

76 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

2

v1

v

Figure 5.12 – Portrait de phase qualitatif d’un système linéaire autonome d’ordre2 dont l’origine est un noeud stable.

5.6.3.1 Valeur propres réelles et distinctes

Soient λ1 ∈ R, λ2 ∈ R, λ1 6= 0, λ2 6= 0 et λ1 6= λ2. Le seul état d’équilibreest l’origine. Trois cas peuvent se vérifier.

λ1 < 0, λ2 < 0 : les deux valeurs propres sont réelles et négatives, l’étatd’équilibre est asymptotiquement stable et il prend le nom de noeudstable.

λ1 > 0, λ2 > 0 : les deux valeurs propres sont réelles et positives, l’étatd’équilibre est instable et il est appelé un noeud instable.

λ1 < 0 < λ2 : une des valeurs propres est réelle et négative alors quel’autre est réelle et positive, la trajectoire du système converge surle vecteur propre associé à la valeur propre positive et procède versl’infini le long de cette direction. Dans ce cas l’état d’équilibre estinstable et il est appelé une selle.

Nous allons maintenant détailler les trois configurations.

Noeud stable Si λ1 < λ2 < 0 le point d’équilibre est dénommé unnoeud stable. Le portrait de phase qualitatif est tracé à la Figure 5.12.Notons que deux trajectoires sont orientées comme le vecteur propre v1et deux autres comme le vecteur propre v2.

Toutes les autres trajectoires sont une combinaison linéaire des trajec-toires rectilignes (Equation (5.16)). Puisque λ1 < λ2 < 0 la vitesse deconvergence sur le vecteur v1 est plus rapide que sur v2. Il s’ensuit que lestrajectoires non rectilignes s’aplatissent sur v2 pour t→ ∞ et s’oriententcomme v1 pour t→ −∞.

Considérons maintenant un exemple numérique où la matrice A du sys-

Page 83: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 77

−1 −0.5 0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=−3, λ

2=−1

Figure 5.13 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.18).

tème (5.10) est

A =

[−2 11 −2

]

(5.18)

Les valeurs et vecteurs propres correspondants sont λ2 = −3, v2 =[1,−1], et λ1 = −1, v1 = [1, 1]T . Avec la commande quiver de MATLABnous pouvons traçer le portrait de phase de ce système (Figure 5.13). Sinous interprétons le système (5.18) en termes de dynamique des popu-lations (Section 5.6) voici ce que nous pouvons remarquer :— Puisque a11 < 0 et a22 < 0, il y a compétition à l’intérieur de chaque

population.— Puisque a12 > 0 et a21 > 0 il y a collaboration entre les deux popu-

lations.— Toutefois λ1λ2 > 0 ⇒ a11a22 > a12a21 c.-à-d. l’effet négatif dû à la

compétition est supérieur à l’effet bénéfique de la coopération.L’évolution du système amène donc à l’extinction des deux populations(convergence asymptotique vers l’origine x1 = 0, x2 = 0), indépendam-ment de l’état initial.

Noeud instable Si λ1 > λ2 > 0 le point d’équilibre est dénommé unnoeud instable. Le portrait de phase qualitatif est tracé à la Figure 5.14.Notons que deux trajectoires sont orientées comme le vecteur propre v1et deux autres comme le vecteur propre v2.Toutes les autres trajectoires sont une combinaison linéaire des trajec-toires rectilignes. Puisque λ1 > λ2 > 0 la composante dans la directionv1 croit de manière plus rapide que celle dans la direction v2. Il s’ensuitque les trajectoires non rectilignes s’alignent avec v1 pour t → ∞ ets’aplatissent sur v2 pour t→ −∞.

Page 84: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

78 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

2

v1

v

Figure 5.14 – Portrait de phase qualitatif d’un système linéaire autonome d’ordre2 dont l’origine est un noeud instable.

Considérons maintenant un exemple numérique où la matrice A du sys-tème (5.10) est

A =

[2 12 3

]

(5.19)

Les valeurs propres et les vecteurs propres correspondants sont λ1 =1, v1 = [−1, 1]T et λ2 = 4, v2 = [1, 2]. Le portrait de phase de ce systèmeest tracé à la Figure 5.15. Si nous interprétons le système (5.18) entermes de dynamique des populations (Section 5.6), voici ce que nouspouvons remarquer.— Puisque a11 > 0 et a22 > 0 les deux populations sont auto-entretenues.— Puisque a12 > 0 et a21 > 0 il y a collaboration entre les deux popu-

lations.Donc, vu qu’il n’y a aucun frein à la croissance, l’évolution du systèmeamène à l’explosion des deux populations et ceci pour tout état initialdifférent de l’origine.

Selle Si λ1 < 0 < λ2 le point d’équilibre est dénommé une selle. Leportrait de phase qualitatif est tracé à la Figure 5.16. Le portrait destrajectoires justifie la dénomination de selle en analogie avec le mouve-ment d’une bille sur une selle de cheval (Figure 5.17) Notons que deuxtrajectoires sont orientées comme le vecteur propre v1 et deux autrescomme le vecteur propre v2. Toutes les autre trajectoires sont diver-gentes et orientées comme le vecteur propre v1 (λ1 < 0) pour t → −∞et comme v2 (λ2 > 0) pour t→ ∞.

Considérons maintenant un exemple numérique où la matrice A du sys-

Page 85: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 79

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=1, λ

2=4

Figure 5.15 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.19).

2

v1

v

Figure 5.16 – Portrait de phase qualitatif d’un système linéaire autonome d’ordre2 dont l’origine est une selle.

Page 86: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

80 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

Figure 5.17 – Surface en forme de selle.

tème (5.10) est

A =

[5 96 2

]

(5.20)

Les valeurs propres et les vecteurs propres correspondants sont λ1 =11, v1 = [3/2, 1]T et λ2 = −4, v2 = [−1, 1].Le portrait de phase de ce système est tracé à la Figure 5.18. Si nousinterprétons le système (5.20) en termes de dynamique des populations(Section 5.6) voici ce que nous pouvons remarquer— Puisque a11 > 0 et a22 > 0 les deux populations sont auto-entretenues.— Puisque a12 > 0 et a21 > 0 il y a collaboration entre les deux popu-

lations.— Toutefois, à la différence du noeud instable dans ce cas

detA = λ1λ2 = a11a22 − a12a21 < 0 ⇒ a11a22 < a12a21

c.-à-d. l’effet total de la coopération est supérieur à l’effet total desdeux auto-entretènements.

Dans ce cas, c’est la coopération qui pousse la croissance des deux po-pulations.

5.6.3.2 Système non simple

Comme mentionné à la Section 5.6, le système (5.10) est dit non simplesi le déterminant de la matrice A est nul. Suite à la relation (5.13) unedes valeurs propres d’un système non simple est donc forcement nulle.

Page 87: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 81

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=11, λ

2=−4

Figure 5.18 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.20).

Dénotons la valeur propre nulle par λ1. Dans ce cas il est possible demontrer que tous les états qui appartiennent à la droite

a11x1 + a12x2 = 0

sont des états d’équilibre. De plus, toutes les trajectoires sont des droitesparallèles à la droite v2.Deux configurations sont possibles selon le signe de λ2 :

λ2 < λ1 = 0 : ceci implique que tous les états d’équilibre sont stables.La Figure 5.19 montre le portrait de phase correspondant.

0 = λ1 < λ2 : ceci implique que tous les états d’équilibre sont instables.

Considérons maintenant un exemple numérique de système non simpleoù la matrice A du système (5.10) est

A =

[0 10 −1

]

(5.21)

Les valeurs et vecteurs propres correspondants sont λ1 = 0, et λ2 =−1, v2 = [−1, 1]. Dans ce cas la droite des points d’équilibre stables estx2 = 0. Le portrait de phase de ce système est tracé dans la Figure 5.20.

Considérons maintenant un exemple numérique de système non simpleoù la matrice A du système (5.10) est

A =

[0 10 1

]

(5.22)

Les valeurs propres et les vecteurs propres correspondantes sont λ1 = 0,et λ2 = 1, v2 = [1, 1]. La droite des points d’équilibre est encore x2 = 0mais cette fois-ci le système est instable. Le portrait de phase de cesystème est tracé dans la Figure 5.21.

Page 88: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

82 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

2v

Figure 5.19 – Portrait de phase qualitatif d’un système non simple avec une valeurpropre négative.

−1 −0.5 0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=0, λ

2=−1

Figure 5.20 – Portrait de phase qualitatif du système linéaire autonome d’ordre 2dont la matrice des coefficients est (5.21).

Page 89: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 83

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=0, λ

2=1

Figure 5.21 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.22).

5.6.3.3 Valeurs propres réelles et non distinctes

Jusqu’ici nous n’avons considéré que des couples de valeurs propres dis-tinctes. Considérons maintenant le cas λ1 = λ2 = λ. Deux configurationspeuvent se produire :

Matrice A diagonalisable : ceci a lieu si les deux vecteurs propressont linéairement indépendants. L’origine est dénommée noeud sin-gulier et chaque droite passant par l’origine est une trajectoire. Siλ < 0(> 0) nous avons la (in)stabilité asymptotique. Un exemple deportrait de phases est montré dans la Figure 5.22.

Matrice A non diagonalisable : si λ 6= 0 il existe un seul vecteurpropre et donc une seule trajectoire rectiligne. Si λ = 0 toutes lestrajectoires se trouvent sur des droites parallèles. L’origine est dé-nommée noeud dégénéré. Un exemple de portrait de phases pourλ1 = λ2 < 0 est montré dans la Figure 5.23.

Notons que si λ1 = λ2 = 0 l’équilibre est instable (multiplicité plusgrande que 1) et toutes les trajectoires se trouvent sur des droites pa-rallèles.

Noeud singulier Considérons un exemple numérique de systèmeavec noeud singulier où la matrice A du système (5.10) est

A =

[−1 00 −1

]

(5.23)

Les valeurs et vecteurs propres correspondants sont λ1,2 = −1, v1 =[1, 0], v2 = [0, 1]. Notons que la matrice A est diagonalisable puisque sesvecteurs propres sont linéairement indépendants. Le portrait de phasede ce système est tracé dans la Figure 5.24.

Page 90: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

84 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

2v

Figure 5.22 – Portrait de phase qualitatif d’un système avec un noeud singulier(matrice A diagonalisable et λ1 = λ2 < 0).

2v

Figure 5.23 – Portrait de phase qualitatif d’un système avec un noeud dégénéré(matrice A non diagonalisable λ1 = λ2 < 0).

Page 91: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 85

−1 −0.5 0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=−1, λ

2=−1

Figure 5.24 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.23).

Noeud dégénéréConsidérons maintenant un exemple numérique de système avec unnoeud dégénéré où la matrice A du système (5.10) est

A =

[3 −41 −1

]

(5.24)

Les valeurs et vecteurs propres correspondants sont λ1,2 = 1, v1 = v2 =[2, 1]. La matrice A n’est donc pas diagonalisable. Le portrait de phasede ce système est tracé dans la Figure 5.25.

5.6.3.4 Valeurs propres complexes

Considérons maintenant le cas de valeurs propres non réelles. Puisquele système est d’ordre 2, si les valeurs propres ne sont pas réelles ellesseront forcement complexes conjuguées. Nous aurons donc

λ1 = a+ ib, λ2 = a− ib.

Il est possible de montrer que la solution générale du système (5.10) estpériodique et a comme équation

x1(t) = c1eat cos(bt) + c2e

at sin(bt)

x2(t) = −c1eat sin(bt) + c2eat cos(bt)

Il est intéressant de remarquer que dans ce cas le système (5.10) présenteun comportement oscillatoire même pour une fonction d’entrée nulle(u = 0). Cette propriété est typique des systèmes linéaires.

Page 92: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

86 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

−1 −0.5 0 0.5 1−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=1, λ

2=1

Figure 5.25 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.24).

Trois cas de figure peuvent se produire

a = 0 : les trajectoires sont des ellipses fermées avec période T = 2πb .

L’origine est dite un centre.

a < 0 : le système est asymptotiquement stable et les trajectoires convergentvers l’origine en suivant des spirales. L’origine est appelée un foyerstable. Le portrait de phase pour un foyer stable est tracé à la Fi-gure 5.26.

a > 0 : le système est instable et les trajectoires s’éloignent de l’origineen suivant des spirales. L’origine est appelée un foyer instable.

Notons que les trajectoires peuvent spiraler autour de l’origine dans lesens horloger ou dans le sens anti-horloger.

Centre Considérons maintenant un exemple numérique de systèmeavec un centre où la matrice A du système (5.10) est

A =

[1 −23 −1

]

(5.25)

Les valeurs propres correspondantes sont λ1,2 = ±√5i. Le portrait de

phase de ce système est tracé à la Figure 5.27. Notons qu’aucune trajec-toire rectiligne n’est présente à cause de l’absence de vecteurs propresréels.

Si nous interprétons le système (5.20) en termes de dynamique des po-pulations (Section 5.6) voici ce que nous pouvons remarquer— a11 = −a22, c.-à-d. l’effet de auto-entretenement de la population 1

est égal et de signe opposé à celui de la population 2— a12a21 = a11a22−λ1λ2 < 0, c.-à-d. a12 et a21 ont des signes opposés.

Page 93: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 87

Figure 5.26 – Portrait de phase qualitatif d’un système linéaire autonome d’ordre2 quand l’origine est un foyer stable.

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

x1

x2

Figure 5.27 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.25).

Page 94: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

88 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=−0.33333+2.357i, λ

2=−0.33333−2.357i

Figure 5.28 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.26).

— Deux configurations sont donc possibles (a11 > 0)

A =

[a11 < 0> 0 −a11

]

,

[a11 > 0< 0 −a11

]

La première configuration correspond à une situation de prédation dela population 2 sur la population 1, alors que la deuxième configura-tion correspond à une situation de parasitisme de la population 1 sur lapopulation 2. Notons que dans le cas de prédation de 2 sur 1, une aug-mentation excessive de la population 2 conduirait à une forte diminutionde la population 1 et donc à une réduction de ses effets positifs sur la2. De la même manière une augmentation excessive de la population 1entraîne une augmentation de la population 2 et une augmentation deses effets négatifs sur la croissance de 1. Le comportement qui en résulteest cyclique.

Foyer stable Considérons maintenant un exemple numérique de sys-tème avec un foyer stable où la matrice A du système (5.10) est

A =

[1/3 −23 −1

]

(5.26)

Les valeurs propres correspondantes sont λ1,2 = −1/3± 5/3√2.

Le portrait de phase de ce système est tracé à la Figure 5.28. Notonsque le sens de la rotation peut être facilement déterminé en calculantle vecteur vitesse en un point sur l’axe x2 par exemple dans le pointx1 = 0, x2 = 1.Si nous interprétons le système (5.20) en termes de dynamique des po-pulations (Section 5.6) voici ce que nous pouvons remarquer

Page 95: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 89

−1 −0.5 0 0.5 1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

λ1=2+2i, λ

2=2−2i

Figure 5.29 – Portrait de phase du système linéaire autonome d’ordre 2 dont lamatrice des coefficients est (5.27).

— Cette situation diffère de la configuration de centre analysée précé-demment puisque a11 a été réduit à 1/3.

— Il s’ensuit que l’effet de compétition interne de la population 2 de-vient plus important que l’effet d’auto-entretènement de la popula-tion 1

— Les deux populations s’éteignent après une oscillation amortie avecamplitude décroissante.

Foyer instable Considérons maintenant un exemple numérique desystème avec un foyer instable où la matrice A du système (5.10) est

A =

[2 −22 2

]

(5.27)

Les valeurs propres correspondantes sont λ1,2 = 2 ± 2i. Le portrait dephase de ce système est tracé dans la Figure 5.29.

5.6.4 Résumé des systèmes autonomes du secondordre

La classification des points d’équilibre peut être résumée de manièrecompacte en utilisant la trace et le déterminant de la matrice A. Puisque

tr(A) = λ1 + λ2, det(A) = λ1λ2

et l’équation caractéristique peut prendre la forme

(λ− λ1)(λ− λ2) = λ2 − (λ1 + λ2)λ+ λ1λ2 = λ2 − tr(A)λ+ det(A) = 0

Page 96: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

90 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

NID: noeuds instables degenerés

trace(A)

det(A)

Foyers

stables

Foyers

instables

noeuds

stables

NSS

ou

NSD

NISou

NID

instables

NSS: noeuds stables singuliers

NSD: noeuds stables degenerés

NIS: noeuds instables singuliers

Selles

Centres

noeuds

Figure 5.30 – Classification des points d’équilibre en fonction de la trace et dudéterminant de la matrice A.

il s’ensuit que

λ1,2 =tr(A) ±

(tr(A))2 − 4 detA

2

L’ensemble des cas de figure peut donc être résumé par le graphique dela Figure 5.30 où l’axe x du repère cartésien représente tr(A) et l’axey la quantité detA. Notons que la parabole en gras a comme équationy = x2

4 .

5.6.5 Dessin qualitatif du portrait de phase

Cette section a pour but de montrer comment tracer le portrait de phased’un système linéaire d’ordre 2 sans l’aide d’un ordinateur. L’approcheconsiste à obtenir, à partir des équations du système, de l’informationutile pour pouvoir tracer de manière qualitative quelques trajectoiresdu système. Afin de mieux illustrer la procédure, nous ferons référenceà quelques exemples pratiques. Considérons le système linéaire d’ordre2

x1 = 2x1 + x2

x1 = x1 + 2x2(5.28)

Le dessin qualitatif du portrait de phase passe par les étapes suivantes :

1. Étudier la nature de l’équilibre (dans ce cas l’origine) : puisque λ1 = 1et λ2 = 3 l’équilibre est instable.

2. Calculer les trajectoires rectilignes : les deux vecteurs propres sontv1 = [1;−1]T et v2 = [1; 1]T . Les deux invariants ont pour équationsx2 = x1 et x2 = −x1.

Page 97: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 91

++

1

dx /dt=01

dx /dt=02

dx /dt=02

++

++

+−

−−

−+

−−

−−

−+++

+−

dx /dt=0

Figure 5.31 – Portrait qualitatif de phase du système 5.28.

3. Calculer les isoclines, c.-à-d. les courbes (dans ce cas des droites)sur lesquelles une des deux dérivées est nulle. A partir (5.28) nousobtenons

2x1 + x2 = 0 ⇔ x2 = −2x1

x1 + 2x2 = 0 ⇔ x2 = −x1/2

La direction des trajectoires est donc horizontale (x2 = 0) sur la droitex2 = −x1/2 et verticale (x1 = 0) sur la droite x2 = −2x1 Les isoclinespartagent le plan en quatre quadrants : pour chacun d’entre eux nouspouvons facilement définir la direction de la trajectoire sur la base dessignes de x2 et x1.Sur la base de cette information il est possible de tracer le portraitmontré dans la Figure 5.31. Les isoclines sont représentées par des droitesen pointillé. Notons que le signe +− (−+) dans un quadrant de l’espacede phase signifie que l’ensemble des trajectoires dans cette région ont unvecteur vitesse avec la première composante de signe positif (négatif) etla deuxième composante de signe négatif (positif).

Exemple Considérons le système

x1 = −x1 − x2

x2 = x1 − x2(5.29)

qui a comme valeurs propres λ1,2 = −1± i. L’origine est donc un foyerstable et aucun invariant linéaire n’existe. Les deux isoclines ont leséquations suivantes— x2 = −x1 et sur cette droite x1 = 0 et x2 = 2x1.— x2 = x1 et sur cette droite x2 = 0 et x1 = −2x1.Sur la base de cette information il est possible tracer le portrait montrépar la Figure 5.32.

Page 98: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

92 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

−+

1

dx /dt=01

2dx /dt=0

2dx /dt=0

−+

−−−−

+−

+−

++++

dx /dt=0

Figure 5.32 – Portrait qualitatif de phase du système 5.29.

ExempleConsidérons le système

x1 = −2x1

x2 = −4x1 − 2x2(5.30)

L’équation caractéristique a deux solutions identiques λ1,2 = −2 aux-quelles correspond le vecteur propre [0, 1]T . L’origine est un noeud stabledégénéré.L’invariant est donc l’axe x2 qui est aussi une des deux isoclines (x1 = 0).La deuxième isocline est la droite x2 = −2x1.Sur la base de cette information il est possible tracer le portrait montréà la Figure 5.33.

Page 99: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

5.6. SYSTÈMES AUTONOMES DU SECOND ORDRE 93

−+ dx /dt=0

2dx /dt=0 dx /dt=01

−−+−

++

++

−−

2

Figure 5.33 – Portrait de phase qualitatif du système 5.30.

Page 100: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

94 CHAPITRE 5. LES SYSTÈMES LINÉAIRES CONTINUS

Page 101: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 6

Les systèmes non-linéaires

continus

La modelisation par système linéaire (Chapitre 5) suggère une inter-prétation linéaire de la réalité. Ceci revient à faire l’hypothèse que leseffets observés sont liés aux causes par un ensemble de lois basées sur laproportionnalité, comme vu par le principe de superposition des effetsénoncé en Section 5.2.

Malgré la simplicité de l’approche linéaire, la proportionnalité entrecause et effet est rarement rencontrée en pratique. Au contraire, nousassistons souvent à des systèmes où des petites perturbations peuvententraîner des gros changements et inversement des situations où des ac-tions d’intensité importante n’ont pas l’effet escompté.

Dans ce genre de situations l’approche linéaire n’est pas suffisammentriche pour pouvoir décrire des comportements complexes. D’ailleurs, lamaîtrise et la maniabilité du formalisme linéaire a parfois amené à unexcès de confiance dans le pouvoir explicatif de ce formalisme. Ceci aeu pour conséquence des modélisations erronées mais acceptées commebonnes souvent pour des raisons esthétiques plutôt que pour des mé-rites en terme de pouvoir prédictif. Un exemple est la théorie linéairesur la turbulence des fluides proposée par Landau et Lifshitz (1959)qui a montré ses limites face à une nouvelles approche non-linéaire pro-posée par Ruelle et Takens (1971). L’approche non-linéaire à l’étudedes systèmes a montré comment la représentation linéaire de la réa-lité ne donne qu’une vision partielle du monde naturel. Dans plusieurssituations pratiques nous assistons à des fortes déviations du régimede proportionnalité. Dans un système non-linéaire, la combinaison dedeux actions élémentaires peut produire des effets inattendus suite àdes phénomènes d’émergence et de coopération entre les éléments dusystème. Nous retrouvons des exemples de comportements non-linéairesdans une multitude de domaines : chimie, physique, météorologie, biolo-gie, mécanique. Des exemples de ces comportements sont la productionde brusques transitions, la création de patterns, une évolution irrégulièredans l’espace et le temps qui prend le nom de chaos déterministe.

La science de la non-linéarité est la science de l’évolution et de la com-plexité [14, 22]. Elle est un domaine fortement interdisciplinaire et unebranche de recherche très active dans le monde qui a vu comme repré-

95

Page 102: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

96 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

sentants d’excellence les équipes de recherche de l’ULB 1.

6.1 Linéarisation des systèmes non-linéaires

Les résultats sur la stabilité d’un système linéaire (Section 5.4) s’avèrentaussi être très importants pour l’étude de la stabilité d’un mouvementou d’un état d’équilibre d’un système non-linéaire. Afin d’appliquer lesrésultats concernant un système linéaire au cas non-linéaire il est né-cessaire de remplacer le système non-linéaire par le système linéaire quidécrit la dynamique dans un voisinage d’un état d’équilibre ou d’unmouvement. Le réduction d’un modèle non-linéaire à une descriptionlinéaire dans une région délimitée prend le nom de linéarisation. Nousretrouvons la notion de linéarisation dans plusieurs domaines scienti-fiques, comme l’automatique, l’estimation, le filtrage et le traitementdes signaux.

Considérons un système non-linéaire à temps continu décrit par l’ équa-tion vectorielle

x(t) = f(x(t), u(t), t) (6.1)

et le mouvementx(·) = ϕ(·, t0, x0, u(·))

correspondant à une fonction d’entrée u(·) et à un état initial x0 quisatisfait la relation

˙x(t) = f(x(t), u(t), t), x(t0) = x0

Soit x(t)+δx(t) le mouvement perturbé obtenu en appliquant la fonctiond’entrée perturbée u(t) + δu(t) à l’état initial x0 + δx0. Nous obtenonsdonc

˙x(t) + ˙δx(t) = f(x(t) + δx(t), u(t) + δu(t), t),

En appliquant à la fonction f le développement en série de Taylor et ennégligeant les termes d’ordre supérieur nous obtenons

˙x(t)+ ˙δx(t) = f(x(t), u(t), t)+∂f

∂x

∣∣∣(x(t),

u(t)

)δx(t)+∂f

∂u

∣∣∣(x(t),

u(t)

)δu(t)+ · · · =

= f(x(t), u(t), t) + Jx(x(t), u(t), t)δx(t) + Ju(x(t), u(t), t)δu(t) + . . .

où Jx est la matrice de Jacobi des dérivées partielles de la fonctionvectorielle f par rapport à x et Ju est la matrice de Jacobi des dérivéespartielles de la fonction vectorielle f par rapport à u. Il s’ensuit que larelation suivante

˙δx(t) =∂f

∂x

∣∣∣(x(t),

u(t)

)δx(t) +∂f

∂u

∣∣∣(x(t),

u(t)

)δu(t) (6.2)

est valable dans un voisinage de x(t).

Le système (6.2) prend le nom de système linéarisé associé au sys-tème (6.1) et au mouvement x(·). Le système (6.2) est un système de laforme

x(t) = A(t)x(t) +B(t)u(t)

1. http://www.ulb.ac.be/cenoliw3/

Page 103: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.1. LINÉARISATION DES SYSTÈMES NON-LINÉAIRES 97

donc un système linéaire où

A(t) =∂f

∂x

∣∣∣(x(t),

u(t)

), B(t) =∂f

∂u

∣∣∣(x(t),

u(t)

)

Si le système est invariant (6.1) et que nous prenons comme cas parti-culier d’un mouvement, un état d’équilibre, nous obtenons un systèmelinéaire invariant, où les matrices A et B sont constantes.

6.1.1 Étude de la stabilité par linéarisation

Soitx = f(x, u) (6.3)

un système non-linéaire invariant et x l’état d’équilibre correspondant àl’entrée constante u.L’étude de la stabilité de x est souvent un problème difficile suite à lanécessité de définir (plutôt “inventer”) une fonction de Liapounov V (x)(voir Section 4.6). Par contre l’analyse de la stabilité de l’équilibre d’unsystème linéaire est beaucoup plus simple comme discuté en Section 5.4.Il est donc intéressant de voir si l’analyse du système linéarisé

x =∂f

∂x

∣∣∣(x,

u

)x+∂f

∂u

∣∣∣(x,

u

)u = Ax+Bu (6.4)

peut nous apporter de l’information sur la stabilité du système non-linéaire original. A ce propos, il est possible de montrer les théorèmessuivants.

Théorème 6.1. Si le système linéarisé (6.4) obtenu par linéarisation dusystème (6.3) autour de x est stable asymptotiquement (c.-à-d. toutes lesvaleurs propres de A sont négatives), alors l’état d’équilibre x est stableasymptotiquement.

Notons que contrairement au cas linéaire, un équilibre asymptotique-ment stable d’un système non-linéaire (6.3) n’est pas forcement un équi-libre globalement stable.

Théorème 6.2. Si la matrice A du système linéarisé (6.4) a une ouplusieurs valeurs propres avec partie réelle positive, l’état d’équilibre xdu système (6.3) est instable.

Il s’ensuit que le seul cas où nous ne pouvons rien déduire sur la stabilitéde x à partir de l’analyse du système linéarisé (6.4) est quand la matrice

A = ∂f∂x

∣∣∣(x,

u

) a toutes ses valeurs propres avec partie réelle négative mis

à part quelques valeurs propres avec partie réelle nulle. Dans ce cas,la stabilité de l’état d’équilibre dépend de la partie non-linéaire qui estnégligée dans le système linéarisé. En d’autres termes, l’ajout d’un termenon-linéaire peut complètement altérer le portrait de phase.

Exemple Considérons un système électrique décrit par

x1 = f1(x1, x2, u) =1C (u− x1 − k(u− x1)

3 − x2)

x2 = f2(x1, x2, u) =1Lx1

où C > 0, L > 0. Calculons le système linéarisé pour l’équilibre x = [0, 0]associé à u = 0.

Page 104: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

98 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

Puisque la matrice de Jacobi de f par rapport à la variable x est

Jx(x1, x2, u) =

[∂f1∂x1

∂f1∂x2

∂f2∂x1

∂f2∂x2

]

=

[− 1

C + 3kC (u− x1)

3 − 1C

1L 0

]

nous obtenons

A =

[− 1

C − 1C

1L 0

]

L’équation caractéristique est donc λ2+ 1Cλ+

1LC = 0. Puisque la condi-

tion de Hurwitz est satisfaite le système linéarisé est asymptotiquementstable de même que le point d’équilibre du système non-linéaire.

Exemple Considérons le système

x1 = −x2 + ǫx1(x21 + x22)

x2 = x1 + ǫx2(x21 + x22)

(6.5)

où ǫ 6= 0 et l’origine est un point d’équilibre.

Le système linéarisé est décrit par la matrice

Jx(x1, x2) =

[3ǫx21 + ǫx22 −1 + 2ǫx1x21 + 2ǫx1x2 ǫx21 + 3ǫx22

]

qui pour x(1) = 0, x(2) = 0 devient

A =

[0 −11 0

]

qui a deux valeurs propres imaginaires λ1,2 = ±i. Les deux théorèmes 6.1et 6.2 ne peuvent donc être utilisés pour étudier la stabilité du pointd’équilibre.

En effet il est possible de montrer par simulation (MATLAB scriptlineariz.m) que

1. le comportement du système non-linéaire autour de l’origine est qua-litativement différent de celui du système linéarisé (Figure 6.1)

2. le comportement du système non-linéaire dépend du signe de la quan-tité ǫ (asymptotiquement stable pour ǫ < 0 et instable pour ǫ > 0)qui n’apparait pas dans la matrice A.

6.1.2 Analyse du système pendule

Le système qui modélise la dynamique d’un pendule a été introduiten Section 4.6.3. Supposons que le pendule soit soumis à une force defriction où k > 0

x1 = x2

x2 = − gl sinx1 − k

mx2(6.6)

Ce système a deux points d’équilibre x(1) = [π, 0] et x(2) = [0, 0].

Page 105: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.1. LINÉARISATION DES SYSTÈMES NON-LINÉAIRES 99

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2 2.5−2.5

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

2.5

x1

x 2

epsilon=0.5

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

x1

x 2

epsilon=−0.5

Figure 6.1 – Portrait de phase autour de l’origine du système (6.5) pour ǫ = 0.5 > 0(gauche) et ǫ = −0.5 < 0 (droite).

Le système linéarisé autour du point d’équilibre x(1) = [π, 0] a une ma-trice

A =

[0 1gl −k/m

]

qui correspond à une selle (det(A) < 0). D’après le Théorème 6.2 l’équi-libre x(1) est instable.Le système linéarisé autour de x(2) a une matrice

A =

[0 1− g

l −k/m

]

(6.7)

Les valeurs propres ont des parties réelles négatives (et donc l’origineest asymptotiquement stable) si k > 0. Si k = 0 les valeurs propresont des parties réelles nulles et donc les Théorèmes 6.1 et 6.2 ne nousdonnent aucune indication sur la stabilité du système non-linéaire autourde l’origine. Toutefois, il est possible de voir expérimentalement que lecomportement du pendule pour un voisinage de l’origine ressemble aucomportement du système linéarisé (centre). Ceci est confirmé par leportrait de phase du pendule pour k = 0 dans la Figure 6.2.Les figures suivantes montrent comment le comportement du systèmelinéaire s’écarte de celui du système linéarisé au fur et à mesure que l’ons’éloigne de l’état d’équilibre.La Figure 6.3 compare l’évolution temporelle du système non-linéaire (6.6)(en rouge) et du système linéarisé (6.7) (en bleu) pour k = 0 et x0 =[0.5, 0]. La Figure 6.4 compare les deux trajectoires dans l’espace dephase.La Figure 6.5 compare l’évolution temporelle du système non-linéaire (6.6)(en rouge) et du système linéarisé (6.7) (en bleu) pour k = 0 et x0 =[1, 0]. La Figure 6.6 compare les deux trajectoires dans l’espace de phase.La Figure 6.7 compare l’évolution temporelle du système non-linéaire (6.6)(en rouge) et du système linéarisé (6.7) (en bleu) pour k = 0 et x0 =[2, 0]. La Figure 6.8 compare les deux trajectoires dans l’espace de phase.La Figure 6.9 compare l’évolution temporelle du système non-linéaire (6.6)(en rouge) et du système linéarisé (6.7) (en bleu) pour k = 0 et x0 =[1, 6]. La Figure 6.10 compare les deux trajectoires dans l’espace dephase 2.

2. le déplacement angulaire θ est x1 modulo 2π.

Page 106: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

100 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

Figure 6.2 – Portrait de phase du pendule pour k = 0.

0 2 4 6−0.5

−0.4

−0.3

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

t

x1

0 2 4 6−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

t

x2

x1(0)=0.5

Figure 6.3 – Evolution temporelle du système non-linéaire (6.6) (en rouge) et dusystème linéarisé (6.7) (en bleu) pour k = 0 et x0 = [0.5, 0].

Page 107: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.1. LINÉARISATION DES SYSTÈMES NON-LINÉAIRES 101

−0.5 0 0.5−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

x1

x 2

x1(0)=0.5

Figure 6.4 – Evolution dans l’espace de phase du système non-linéaire (6.6) (rouge)et du système linéarisé (6.7) (bleu) pour k = 0 et x0 = [0.5, 0].

0 2 4 6−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

t

x1

0 2 4 6−4

−3

−2

−1

0

1

2

3

4

t

x2

x1(0)=1

Figure 6.5 – Evolution temporelle du système non-linéaire (6.6) (en rouge) et dusystème linéarisé (6.7) (en bleu) pour k = 0 et x0 = [1, 0].

−1 −0.5 0 0.5 1−4

−3

−2

−1

0

1

2

3

4

x1

x 2

x1(0)=1

Figure 6.6 – Evolution dans l’espace de phase du système non-linéaire (6.6) (rouge)et du système linéarisé (6.7) (bleu) pour k = 0 et x0 = [1, 0].

Page 108: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

102 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

0 2 4 6−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

t

x1

0 2 4 6−8

−6

−4

−2

0

2

4

6

8

t

x2

x1(0)=2

Figure 6.7 – Evolution temporelle du système non-linéaire (6.6) (en rouge) et dusystème linéarisé (6.7) (en bleu) pour k = 0 et x0 = [2, 0].

−2 −1.5 −1 −0.5 0 0.5 1 1.5 2−8

−6

−4

−2

0

2

4

6

8

x1

x 2

x1(0)=2

Figure 6.8 – Evolution dans l’espace de phase du système non-linéaire (6.6) (rouge)et du système linéarisé (6.7) (bleu) pour k = 0 et x0 = [2, 0].

Page 109: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.2. SYSTÈMES CONTINUS NON-LINÉAIRES DU 1ER ORDRE 103

0 2 4 6−5

0

5

10

15

20

25

t

x1

0 2 4 6−8

−6

−4

−2

0

2

4

6

8

t

x2

x1(0)=1 x

2(0)=6

Figure 6.9 – Evolution temporelle du système non-linéaire (6.6) (en rouge) et dusystème linéarisé (6.7) (en bleu) pour k = 0 et x0 = [1, 6].

−5 0 5 10 15 20 25−8

−6

−4

−2

0

2

4

6

8

x1

x 2

x1(0)=1 x

2(0)=6

Figure 6.10 – Evolution dans l’espace de phase du système non-linéaire (6.6)(rouge) et du système linéarisé (6.7) (bleu) pour k = 0 et x0 = [1, 6].

Nous remarquons aisément que la qualité de l’approximation linéaire sedégrade au fur et à mesure que nous nous éloignons de l’origine x(2).

6.2 Systèmes continus non-linéaires du 1erordre

Cette section traite de l’analyse des systèmes non-linéaires continus etautonomes d’ordre 1 décrits par

x(t) = f(x(t))

Rappelons que tous les systèmes non autonomes

x(t) = f(x(t), t)

d’ordre 1 peuvent être considérés comme des systèmes autonomes d’ordre2 en ajoutant la variable x2 = t (voir Section 4.4).

Page 110: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

104 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

−2π π−π

x.

x

0 3π2π

Figure 6.11 – Visualisation géométrique du système (6.8) sur le plan x, x.

6.2.1 La méthode géométrique

La manière la plus intuitive et la plus simple pour analyser la dynamiqued’un système d’ordre 1 est d’effectuer une visualisation de la fonctionf(x) dans le plan x, x. L’ensemble des points d’intersection entre fet l’axe x représente l’ensemble des points d’équilibre (ou points fixes)du systèmes. Le signe de la fonction définit la direction des trajectoiresdans l’espace unidimensionnel x. La direction des trajectoires dans levoisinage des points fixes permet aisément d’établir si le point fixe eststable ou instable.

Exemple Considérons le cas du système

x = sinx (6.8)

La Figure 6.11 montre une visualisation de ce système dans le planx, x. Les points fixes stables et instables sont notées par des cerclesnoirs et blancs, respectivement. Notons que aux points stables la pentede f est négative.

Équation logistique continue

Un exemple très connu de système à temps continu non-linéaire d’ordre1 est l’équation logistique

x = ax(1− x) (6.9)

Cette équation a été proposée en 1838 par Verhulst pour décrire la crois-sance de la population humaine. L’équation est non-linéaire suite auterme −ax2.Le système à deux points d’équilibre : x = 0 et x = 1. Pour a = 1, laméthode géométrique (Figure 6.12) montre que :— si x0 > 0 la solution tend vers 1— si x0 < 0 la solution diverge vers −∞Ceci est confirmé par les évolutions temporelles illustrées dans la Fi-gure 6.13.

Page 111: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.2. SYSTÈMES CONTINUS NON-LINÉAIRES DU 1ER ORDRE 105

−1 −0.5 0 0.5 1 1.5 2−2

−1.5

−1

−0.5

0

0.5

x

x’

Figure 6.12 – Visualisation géométrique du système (6.9) sur le plan x, x.

0 0.5 1 1.5−5

−4

−3

−2

−1

0

1

2

3

t

x

a=1

Figure 6.13 – Evolutions temporelles du système (6.9) pour plusieurs conditionsinitiales.

Page 112: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

106 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

r=0

x.

r<0 r>0

x

x.

x

x.

x

Figure 6.14 – Visualisation géométrique du système (6.10) sur le plan x, x.

6.2.2 Le portrait de phase

Quelques considérations peuvent être faite à propos du portrait de phased’un système non-linéaire autonome d’ordre 1. Dans un système d’ordre1 l’espace de phase est une ligne droite (c.-à-d. un espace de dimension1). Nous pouvons donc associer l’état x(t) du système à la position d’uneparticule dans un conduit à l’instant t.

Puisqu’une et une seule trajectoire passe par un point de l’espace, il setrouve qu’aucune trajectoire ne peut changer de direction. Il s’ensuit queles trajectoires sont soit convergentes vers un point fixe, soit divergentesvers ±∞. Le mouvement vers l’équilibre est toujours monotone par rap-port au temps. Donc aucune oscillation ou comportement périodiquen’est possible.

6.2.3 Dépendance des paramètres et diagramme debifurcation

Comme vu dans la section précédente, la dynamique d’un système d’ordre1 est très limitée pour un jeu de paramètres fixé. Toutefois il est possibled’assister à des phénomènes intéressants si nous étudions la façon dontla dynamique varie en fonction des paramètres. Considérons le systèmed’ordre 1

x = r + x2 (6.10)

où r ∈ R est un paramètre. Pour r < 0 nous avons deux points fixes, unstable et un instable alors que pour r > 0 il n’y a aucun point fixe. Pourr = 0 nous avons un équilibre inférieurement stable et supérieurementinstable. Ceci est visible dans la Figure 6.14 où le système est représentéde manière géométrique.

Nous disons qu’une bifurcation a lieu pour r = 0 puisque le comporte-ment dynamique du système pour r > 0 et r < 0 est qualitativementdifférent.

Il est possible de tracer un diagramme de bifurcation (Figure 6.15) quivisualise la position des points fixes x dans le domaine X en fonction dela valeur du paramètre r. Remarquons la différence entre les graphiquesprécédents et le diagramme de bifurcation. Dans ce cas l’axe horizontalindique la valeur de r alors que l’axe vertical indique la position du pointd’équilibre x.

Page 113: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 107

r

x

instable

stable

Figure 6.15 – Diagramme de bifurcation pour le système (6.10).

6.3 Systèmes non-linéaires d’ordre 2

Nous considérons ici des systèmes autonomes de la forme

x1 = f1(x1, x2)

x2 = f2(x1, x2)(6.11)

qui satisfont les conditions d’existence et d’unicité de la solution.

Contrairement au cas unidimensionnel, la variété des dynamiques pos-sibles dans un système d’ordre 2 est très grande (Figure 6.16). Toutefoisun corollaire de l’existence et de l’unicité de la solution est que deuxtrajectoires différentes d’un système autonome ne peuvent jamais secroiser. En effet, si deux trajectoires se croisaient, alors le nombre detrajectoires par le point d’intersection serait plus grand que un. Cecia comme conséquence que s’il existe une trajectoire close qui délimiteune région R alors toute trajectoire qui est à l’intérieur de R ne pourrajamais en sortir.Normalement il n’est pas possible de dériver de solution analytique pourun système non-linéaire. Même quand une solution est disponible, elleest souvent si compliquée qu’elle fournit très peu d’information sur ladynamique du système. Il est toutefois intéressant de décrire de manièrequalitative le comportement des trajectoires dans l’espace de phase, ensachant qu’un grand nombre de portraits de phase sont possibles. Leséléments topologiques les plus importants d’un portrait de phase d’ordren = 2 (Figure 6.16) sont :— les points fixes. Ceux-ci sont les points où f(·) est égale à zéro.— les orbites closes. Celles-ci correspondent à des solutions périodiques,

c.-à-d. des solutions pour lesquelles x(t + T ) = x(t) pour un certainT et pour tout t.

— l’agencement des trajectoires près des points fixes et des orbitescloses.

— la stabilité ou l’instabilité des points fixes et des orbites closes.Comme pour tous les systèmes non-linéaires quelques informations surle comportement dans le voisinage de points fixes peuvent être obtenues

Page 114: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

108 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

x1

x2

Figure 6.16 – Exemple de portrait de phase d’un système non-linéaire autonomed’ordre 2.

par linéarisation. Soit x1, x2 un point fixe de

x1 = f1(x1, x2)

x2 = f2(x1, x2)

Dans ce cas le système linéarisé associé, qui décrit la dynamique desperturbations δ1 = x1 − x1 et δ2 = x2 − x2 en négligeant les termesd’ordre supérieur à 1, prend la forme suivante

[δ1δ2

]

=

∂f1∂x1

∣∣∣x

∂f1∂x2

∣∣∣x

∂f2∂x1

∣∣∣x

∂f2∂x2

∣∣∣x

[δ1δ2

]

et peut être dénoté de manière compacte par δ = Jx(x)δ où Jx(x) est lamatrice de Jacobi pour le point fixe x1, x2.

6.3.1 Le modèle de Lotka-Volterra

Le "modèle proie-prédateur" a été présenté en Section 4.2.3. Les équa-tions (4.3)

x1 = a11x1 − a12x1x2

x2 = a21x1x2 − a22x2

modélisent les taux de croissance x1 et x2 de deux populations qui in-teragissent dans un écosystème clos, où x1 est l’effectif d’une populationde proies et x2 est l’effectif d’une population de prédateurs.Les deux populations interagissent selon une dynamique non-linéaire :le terme non-linéaire x1x2 dans (4.3) représente la fréquence de ren-contre proie-prédateur. En absence de rencontres les proies suivraientune croissance exponentielle et les prédateurs s’éteindraient. La solutiondu système est donc caractérisée par deux oscillations déphasées entrex1 et x2 (Figure 4.5).

Page 115: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 109

0 50 100 1502

2.5

3

3.5

4

4.5

t

x 1

Lotka−Volterra

0 50 100 150

1.4

1.6

1.8

2

2.2

2.4

2.6

2.8

3

3.2

t

x2

Figure 6.17 – Evolution temporelle du système (4.3) pour a11 = .1, a12 = .05, a21 =.05, a22 = .15 et x0 = [2, 2].

Dans cette section nous allons étudier le système par linéarisation. Lesystème (4.3) a deux points d’équilibre : x(1) = [0, 0] et x(2) = [a22/a21, a11/a12].La matrice de Jacobi est

Jx(x) =

[a11 − a12x2 −a12x1a21x2 a21x1 − a22

]

Au point x(1) elle vaut

J(x(1)) =

[a11 00 −a22

]

et les valeurs propres sont λ1 = a11 > 0 et λ2 = −a22 < 0. Le point x(1)

est une selle du système linéarisé.Au point x(2) elle vaut

J(x(2)) =

[0 −a12a22

a21a21a11

a120

]

et les valeurs propres sont λ12 = ±i√a22a11. Le point x(2) est donc uncentre du système linéarisé.Il n’existe donc aucun point d’équilibre stable. De plus il est possible demontrer que toute solution du système est une orbite close.

Script MATLAB Le script MATLAB demo_lv.m simule le systèmepour a11 = .1, a12 = .05, a21 = .05, a22 = .15 et x0 = [2, 2].Les Figures 6.17 et 6.18 représentent l’évolution temporelle et le portraitde phase respectivement.

•Le modèle de Lotka Volterra est un modèle qui a l’avantage de représen-ter de manière simple une interaction non-linéaire. Toutefois ce modèlesouffre de quelques limites :— De petites perturbations dans le modèle mènent à des changements

qualitatifs (le cycle périodique est remplacé par un cycle différent).Le système est structurellement instable.

Page 116: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

110 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

0 1 2 3 4 5 60

1

2

3

4

5

6

x1

x 2

Lotka−Volterra: portrait de phases

Figure 6.18 – Portrait de phase du système (4.3) pour a11 = .1, a12 = .05, a21 =.05, a22 = .15 et x0 = [2, 2].

— Aucune compétition à l’intérieur de la population proie n’est repré-sentée dans le modèle.

— Aucune saturation de la croissance des proies et aucun mécanismede satiété des prédateurs n’est prévu par le modèle.

— Les valeurs maximales et minimales dépendent des conditions ini-tiales. Ceci semble ne pas être vrai dans des cas réels.

— L’extinction des deux espèces (issue fréquente de situations réelles)n’est pas prévue par le modèle.

Malgré ces simplifications le modèle de Lotka Volterra a rencontré unlarge succès et il a été appliqué dans des domaines variés, de l’économieà la sociologie.

6.3.2 Cycles limite

Dans l’exemple précédant nous avons montré un système caractérisé parun mouvement cyclique dans l’espace de phase. Dans ce cas les cyclessont instables, c.-à-d. qu’il suffit d’une toute petite perturbation pourque le système passe à un cycle fermé avoisinant. Ce qui est par contrepossible dans un système non-linéaire d’ordre 2 est l’apparition de cyclesstables, aussi connus sous le nom de cycles limites. Un cycle limite estune trajectoire fermée et isolée, où isolée signifie que ses trajectoiresavoisinantes ne sont pas closes. Si toutes les trajectoires avoisinantesconvergent vers le cycle limite alors le cycle est dénommé stable ouattracteur. Le cycle est dénommé instable si toutes trajectoires divergentdu cycle et demi-stable si les trajectoires internes (externes) divergentalors que celles externes (internes) convergent (Figure 6.19).Les cycles limite stables impliquent des oscillations maintenues. Touteperturbation qui éloignerait la trajectoire du cycle limite s’atténueraitavec le temps, pour revenir à ce cycle limite quand t → ∞. Les cycleslimite stables sont très intéressants d’un point de vue scientifique puis-qu’ils sont caractéristiques des systèmes qui montrent des oscillationsstables et entretenues de manière autonome, c.-à-d. que le système os-cille même en l’absence de forces périodiques externes.Les cycles limites sont des phénomènes typiquement non-linéaires. Ilsne peuvent pas avoir lieu dans un système linéaire. Un système linéaire

Page 117: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 111

cycle limite demi−stablecycle limite stable cycle limite instable

Figure 6.19 – Cycle limite dans l’espace de phase de dimension n = 2.

peut avoir des orbites closes mais qui ne sont pas isolées : en d’autrestermes, si x(t) est une solution périodique, cx(t) sera aussi une solutionpour chaque constant c 6= 0.

6.3.2.1 Existence des cycles limite

Dans le cas général il est très difficile de déterminer sur la base de laforme analytique des équations (6.11) si un système non-linéaire d’ordren = 2 aura des cycles limites et quelle forme ils prendront. Toutefois, ilexiste quelques théorèmes qui établissent des conditions d’existence oude non-existence d’un cycle limite.

Le théorème de Bendixon est un théorème de non-existence d’un cyclelimite.

Théorème 6.3 (Théorème de Bendixon). Soit R une région close etbornée de l’espace d’état du système bidimensionnel (6.11) qui satisfaitles conditions d’existence et d’unicité de la solution. Si la fonction

∂f1∂x1

+∂f2∂x2

ne change pas de signe dans R et n’a de valeur nulle qu’au plus surquelques lignes, alors il n’existe aucun cycle entièrement contenu dansR.

Exercice

Etudier le système autonome

x1 = x2

x2 = −x2 − x31

Etudier si le système admet l’existence d’un cycle limite.

•Le théorème de Poincaré est un théorème d’existence d’un cycle

limite.

Théorème 6.4 (Théorème de Poincaré). Soit R une région close, bor-née et annulaire de l’espace d’état du système bidimensionnel (6.11) quine contient pas d’états d’équilibre (Figure 6.20). Si les trajectoires quitraversent la frontière de R sont toutes entrantes alors R contient aumoins un cycle.

Page 118: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

112 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

x1

x2

R

Figure 6.20 – Région close, bornée et annulaire de l’espace d’état du systèmebidimensionnel (6.11) pour laquelle toutes les trajectoires sont entrantes.

Exercice Etudier le système autonome

x1 = x2 − 8x31x2 = 2x2 − 4x1 − 2x32

et montrer que le système a au moins un cycle limite, en analysant le fluxdes trajectoires à travers le rectangle ayant les sommets [−1, 2], [1, 2], [1,−2], [−1,−2].

•Le théorème de Poincaré est un des résultats les plus importants dansl’analyse des systèmes non-linéaires. Il énonce que le nombre de com-portements dynamiques dans un système d’ordre 2 est limité : si unetrajectoire est confinée dans une région où il n’y aucun point fixe, elledoit converger vers une orbite close. Rien de plus compliqué n’est pos-sible. Par contre le théorème n’est plus valable pour un système d’ordren > 2. Dans ce cas il est possible d’avoir des trajectoires qui, bien qu’àl’intérieur d’un espace borné, se promènent sans aucune convergence versun point fixe ou une orbite. Dans certains cas les trajectoires se déve-loppent à l’intérieur d’un objet géométrique fractal, appelé un attracteurétrange.

6.3.2.2 Cycles limites en pratique

Les études théoriques des cycles limites ont été motivées par plusieursproblèmes pratiques. En effet, nous rencontrons souvent des systèmesréels qui sont caractérisés par des cycles limites dans l’espace de phase.Des exemples pratiques de cycles limites sont : le battement du coeur,les rythmes biologiques du corps humain (température, sécrétion d’hor-mones), les oscillations dans les réactions chimiques, les activations desneurones. Des exemples de cycles limites sont rencontrés dans le modèlessuivants :

1. le modèle dérivé par Raylegh en 1877 qui modélise l’oscillation d’unecorde de violon.

2. le modèle dérivé par Van der Pol qui décrit les oscillations auto-entretenues qui se produisent dans une triode.

Page 119: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 113

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5 2

−2

−1.5

−1

−0.5

0

0.5

1

1.5

2

x1

x 2

Loi de Raylegh

Figure 6.21 – Portrait de phase de l’équation de Raylegh.

Ces deux équations peuvent être considérées comme des instances d’uneéquation plus générale connue comme équation de Liénard, souvent uti-lisée pour modéliser des systèmes mécaniques ou des circuits électriques.

D’autres exemples de systèmes oscillants sont les réactions oscillantesc.-à-d. des réactions au cours desquelles les concentrations de certainscomposés augmentent, puis diminuent alternativement, pendant une cer-taine durée, entre deux limites. Un exemple très connu est la réactionchimique découverte en 1950 par le chimiste russe Belousov. Cette réac-tion (connue sous le nom de réaction Belousov-Zhabotinsky) peut oscillerpendant longtemps (quelques heures) avant d’atteindre l’équilibre. Pourla petite histoire, la publication de Belousov fut rejetée car les résultatsauxquels était parvenu Belousov parurent invraisemblables au comitéde lecture de la revue car contraires, pensaient-ils, aux principes de lathermodynamique.

Équation de Raylegh Raylegh dérivait l’équation suivante pourdécrire les oscillations de la corde d’un violon :

x+ ǫ(1

3(x)2 − 1)x+ x = 0

dont le portrait de phase est tracé à la Figure 6.21.

Équation de Van der Pol Van der Pol dérivait l’équation suivantepour décrire les oscillation dans une triode (tube électronique à troisélectrodes) :

x+ ǫ(x2 − 1)x+ x = 0

dont le portrait de phase est tracé en Figure 6.22. Il est possible demontrer qu’il existe une seule solution périodique et que toute autresolution (mis à part l’origine qui est un point d’équilibre) tend verscette solution.

Page 120: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

114 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

−3 −2 −1 0 1 2 3−10

−8

−6

−4

−2

0

2

4

6

8

10

x1

x 2

Vdpol

Figure 6.22 – Portrait de phase de l’équation de Van der Pol.

6.3.3 Dessin qualitatif du portrait de phase (cas non-linéaire)

Cette section a pour but de montrer comment tracer le portrait de phased’un système non-linéaire d’ordre 2 sans l’aide de l’ordinateur. Considé-rons le système non-linéaire autonome d’ordre 2 suivant

x1 = x1

x2 = x21 + x22 − 1(6.12)

Voici les étapes à suivre pour tracer l’espace de phase :

1. calcul des états d’équilibre (Section 4.3) : le système

x1 = 0

x21 + x22 − 1 = 0

a comme solutions x(1) = [0, 1], x(2) = [0,−1].

2. calcul de la matrice de Jacobi

Jx =

[∂f1∂x1

∂f1∂x2

∂f2∂x1

∂f2∂x2

]

=

[1 0

2x1 2x2

]

3. linéarisation autour des points stationnaires : pour x(1) = [0, 1] nousobtenons

Jx(x(1)) =

[1 00 2

]

qui a deux valeurs propres positives et les vecteurs propres v1 =[0, 1]T et v2 = [1, 0]T . Le point x(1) est donc un noeud instable dusystème linéarisé.Pour x(2) = [0, 1] nous obtenons

Jx(x(2)) =

[1 00 −2

]

Page 121: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 115

+−

1

2dx /dt=0

++−+

++−+

−−

dx /dt=0

Figure 6.23 – Portrait de phase qualitatif pour le système (6.12).

qui a une valeur propre positive et une négative et les vecteurspropres v1 = [0, 1]T et v2 = [1, 0]T . Le point x(2) est donc uneselle du système linéarisé.

4. calcul des isoclines : la première isocline est x1 = 0 et sur cettedroite x2 = x22 − 1. la deuxième isocline est le cercle ayant équationx21 + x22 = 1.

Sur la base de cette information il est possible tracer un portrait dephase qualitatif (Figure 6.23) qui soit cohérent avec l’analyse effectuée.Notons que ce portrait est cohérent avec le vrai portrait (Figure 6.24)obtenu de manière numérique par ordinateur.

ExempleConsidérons le système non-linéaire autonome d’ordre 2

x1 = f1(x1, x2) = x2

x2 = f2(x1, x2) = x1(1− x21) + x2(6.13)

1. Calcul des états d’équilibre : en résolvant les équations

x2 = 0

x1(1− x21) + x2 = 0

nous obtenons les trois points x(1) = [0, 0], x(2) = [1, 0], x(3) =[−1, 0].

2. calcul de la matrice de Jacobi

Jx =

[∂f1∂x1

∂f1∂x2

∂f2∂x1

∂f2∂x2

]

=

[0 1

1− 3x2 1

]

Page 122: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

116 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

−3 −2 −1 0 1 2 3−3

−2

−1

0

1

2

3

x1

x 2

Figure 6.24 – Portrait de phase pour le système (6.12) calculé de manière numé-rique.

3. linéarisation autour des points stationnaires : pour x(1) = [0, 0] nousobtenons

Jx(x(1)) =

[0 11 1

]

qui a les valeurs propres

λ1,2 =1±

√5

2

et les vecteurs propres v1 = [1, λ1]T et v2 = [1, λ2]

T . Le point x(1) estdonc une selle du système linéarisé. Pour x(2) = [1, 0] et x(3) = [−1, 0]nous obtenons

Jx(x(2)) = Jx(x

(3)) =

[0 1−2 1

]

qui a les valeurs propres

λ1,2 =1± i

√7

2

Les deux points sont donc des foyers instables du système linéarisé.

4. calcul des isoclines : la première isocline est la droite x2 = 0. Surcette droite x1 = 0 et

x2 =

> 0 pour x1 < −1 et 0 < x1 < 1

< 0 pour − 1 < x1 < 0 et x1 > 1

La deuxième isocline est la courbe x2 = x31 − x1. Sur cette courbex1 = x2, donc le signe de x1 est égal au signe de x2.

Page 123: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 117

++

1

2dx /dt=0

2dx /dt=0

++

−−

−+ −−

+−

dx /dt=0

Figure 6.25 – Portrait de phase qualitatif pour le système (6.13).

−3 −2 −1 0 1 2 3−3

−2

−1

0

1

2

3

x1

x 2

Figure 6.26 – Portrait de phase pour le système (6.13) calculé de manière numé-rique.

Page 124: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

118 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

Sur la base de cette information il est possible tracer un portrait dephase qualitatif (Figure 6.25) qui soit cohérent avec l’analyse effectuée.Notons que ce portrait est cohérent avec le vrai portrait (Figure 6.26)obtenu de manière numérique par l’ordinateur.

ExempleConsidérons le système non-linéaire autonome d’ordre 2

x1 = f1(x1, x2) = x1(1− x1

2 − x2)

x2 = f2(x1, x2) = x2(x1 − 1− x2

2

) (6.14)

1. Calcul des états d’équilibre : en résolvant les équations

x1

(

1− x12

− x2

)

= 0

x2

(

x1 − 1− x22

)

= 0

nous obtenons les quatre points x(1) = [0, 0], x(2) = [0,−2], x(3) =[2, 0] et x(4) = [6/5, 2/5].

2. calcul de la matrice de Jacobi

Jx =

[∂f1∂x1

∂f1∂x2

∂f2∂x1

∂f2∂x2

]

=

[1− x− y −x

y x− 1− y

]

3. linéarisation autour des points stationnaires : pour x(1) = [0, 0] nousobtenons

Jx(x(1)) =

[1 00 −1

]

qui a les valeurs propres λ1 = 1, λ2 = −1 et les vecteurs propresv1 = [1, 0]T et v2 = [0, 1]T . Le point est donc une selle du systèmelinéarisé.Pour x(2) = [2, 0] nous obtenons

Jx(x(2)) =

[−1 −20 1

]

qui a les valeurs propres λ1 = 1, λ2 = −1 et les vecteurs propresv1 = [−1, 1]T et v2 = [−1, 0]T . Le point est donc une selle du systèmelinéarisé. Pour x(3) = [0,−2] nous obtenons

Jx(x(3)) =

[3 0−2 1

]

qui a les valeurs propres λ1 = 1, λ2 = 3 et les vecteurs propresv1 = [0, 1]T et v2 = [1,−1]T . Le point est un noeud instable dusystème linéarisé.Pour x(4) = [6/5, 2/5] nous obtenons

Jx(x(4)) =

[−3/5 −6/52/5 −1/5

]

qui a les valeurs propres λ1,2 = −2±i√11

5 . Il est donc un foyer stabledu système linéarisé.

Page 125: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.3. SYSTÈMES NON-LINÉAIRES D’ORDRE 2 119

4. calcul des isoclines : il existe deux courbes où x1 = 0. Elles sont l’axex1 = 0 et la droite x2 = 1− x1/2. Sur l’axe x1 = 0,

x2 =

> 0 pour − 2 < x2 < 0

< 0 pour x2 > 0, x2 < −2

Sur la droite x2 = 1− x1/2

x2 =

> 0 pour 5/3 < x1 < 2

< 0 pour x1 < 5/3, x1 > 2

Les deux courbes où x2 = 0 sont l’axe x2 = 0 et la droite x2 =2(x1 − 1).

Sur l’axe x2 = 0,

x1 =

> 0 pour 0 < x1 < 2

< 0 pour x1 > 2, x1 < 0

Sur la droite x2 = 2(x1 − 1)

x1 =

> 0 pour 0 < x1 < 6/5

< 0 pour x1 < 0, x1 > 6/5

Sur la base de cette information il est possible tracer un portrait dephase qualitatif (Figure 6.27) qui soit cohérent avec l’analyse effectuée.Notons que ce portrait est cohérent avec le vrai portrait (Figure 6.28)obtenu de manière numérique par ordinateur.

ExerciceTracer le portrait du système non-linéaire autonome d’ordre 2

x1 = f1(x1, x2) = −τx1x2x2 = f2(x1, x2) = τx1x2 − rx2

qui décrit la dynamique de la diffusion d’une épidémie dans une ville.Dans ce modèle :— x1 est le nombre (divisé par 1000) d’individus susceptibles d’être

infectés (non immunes),— x2 est le nombre (divisé par 1000) d’individus infectés,— τ est la mesure de la vitesse de diffusion— r est le taux de guérison

ExerciceTracer le portrait du système non-linéaire autonome d’ordre 2

x1 = f1(x1, x2) = x22x2 = f2(x1, x2) = x1

Page 126: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

120 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

−+

dx /dt=0

dx /dt=01

dx /dt=01

2dx /dt=02dx /dt=0

+−

−+

+−

−−

++

++

−−

−−+−

−−

−+

2

Figure 6.27 – Portrait de phase qualitatif pour le système (6.14).

−3 −2 −1 0 1 2 3−3

−2

−1

0

1

2

3

x1

x 2

Figure 6.28 – Portrait de phase pour le système (6.14) calculé de manière numé-rique.

Page 127: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.4. INVARIANTS 121

Figure 6.29 – Exemples d’invariants dans un espace de phase de taille n = 1.

6.4 Invariants

L’analyse du comportement d’un système stationnaire est facilitée par ladéfinition et l’étude des sous-ensembles invariants de l’espace de phase.La notion d’invariant est une généralisation de la notion d’équilibre.

Définition 6.1 (Invariant). Un invariant d’un système autonome d’ordren est un sous-ensemble I borné de dimension d < n telle que si x(t0) ∈ Ialors x(t) ∈ I pour tout t ≥ t0.

Ceci signifie que toute trajectoire qui démarre dans un invariant y ap-partient pour toujours. Nous exclurons de notre analyse les invariantsde dimensionnalité n, par exemple l’entièreté de l’espace X d’état.

Des exemples déjà vus d’invariants sont les points fixes de l’espace d’état(dimension d = 0), les cycles (dimension d = 1) ou les trajectoiresrectilignes d’un système linéaire.

Nous procédons maintenant à l’étude des invariants possibles d’un sys-tème autonome pour les ordres n = 1, 2, 3.

6.4.1 Invariants pour n = 1

Si l’ordre du système est n = 1 l’espace de phase est monodimensionnel.Il s’ensuit que le seul type d’invariant possible a dimension d = 0, doncc’est un point fixe (Figure 6.29). La famille des mouvements possiblesdans l’espace de phase est assez limitée, comme discuté en Section 6.2.2.

6.4.2 Invariants pour n = 2

Deux types d’invariants sont possibles : les points fixes et les cycles. Suiteà l’impossibilité d’intersections dans les systèmes autonomes, les cyclesont un seul circuit (c.-à-d. un cycle en forme de huit n’est pas possible).D’autres invariants sont les trajectoires qui mènent d’un point fixe à unautre (trajectoires heterocliniques) et les trajectoires qui partent et re-viennent au même point fixe (trajectoires homocliniques) (Figure 6.30).

6.4.3 Invariants pour n = 3

Pour n = 3 nous pouvons rencontrer des invariants d’ordre d = 0, 1, 2.Des points, des courbes et des surfaces sont donc des invariants possibles.

Pour d = 1 il faut remarquer que les cycles invariants peuvent être com-posés de plusieurs circuits (par exemple circuit en huit) sans violer le

Page 128: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

122 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

x2

x1

Figure 6.30 – Exemples d’invariants dans un espace de phase de taille n = 2.

théorème d’unicité. Pour d = 2 toutes les surfaces sphériques et ellipsoï-dales de même que des tores (Figure 6.31) sont possibles. Le mouvementle long d’un tore est caractérisé par deux coordonnées angulaires : θ et φ.Soient Tθ et Tφ les périodes le long des deux coordonnées. Si le rapportTθ/Tφ est un nombre rationnel le mouvement résultant est périodiqueet la trajectoire est une orbite close. Sinon le mouvement est dit quasi-périodique. Les mouvements quasi-périodiques sont caractérisés par deshélices qui enveloppent le tore, qui ne se referment pas et qui ne secroisent pas [14].

6.4.4 Invariants fractals

Des invariants encore plus complexes que les invariants quasi-périodiquessont toutefois possibles pour n ≥ 3 (si le système est autonome) ou pourn ≥ 2 (si le système n’est pas autonome). Il s’agit de trajectoires quine se croisent pas et qui peuvent amener à un comportement chaotique.Ces objets ne sont ni des points (d = 0), ni des courbes (d = 1), ni dessurfaces (d = 2). Ils sont intermédiaires entre deux invariants conven-tionnels de dimension d et d + 1 dans le sens que même si leur volumedans un espace de dimension d + 1 est nul, ils ont une dimension plusgrande que d. Il s’agit d’ensembles fractals.

6.4.4.1 Ensembles fractals

On nomme fractale ou fractal, une courbe ou surface de forme irré-gulière ou morcelée qui se crée en suivant des règles déterministes ou

Page 129: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.4. INVARIANTS 123

−1

−0.5

0

0.5

1−1

−0.5

0

0.5

1

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

Figure 6.31 – Tore.

stochastiques. Le terme fractale est un néologisme créé par Benoît Man-delbrot [11] à partir de la racine latine fractus, qui signifie brisé. Unobjet fractal possède au moins l’une des caractéristiques suivantes :— Il a des détails similaires à des échelles arbitrairement petites ou

grandes.— Il est trop irrégulier pour être décrit efficacement en termes géomé-

triques traditionnels.— Il est exactement ou statistiquement autosimilaire c’est-à-dire que le

tout est semblable à une de ses parties.— il se caractérise par une sorte de dimension non entière.

Quelques fractals en MATLAB Voici quelques scripts MATLABqui peuvent être utilisés pour visualiser des ensembles fractals :— la courbe Koch : script Koch.m— le tapis de Sierpinski : script sierp_carpet([0,0],1,4)— le triangle de Sierpinski : script sierpinskit.m.— la fougèe de Barnsley : script barnsley.m.

•Un ensemble fractal peut être obtenu par un processus itératif de frag-mentation. Considérons un objet unitaire de dimension d et taille uni-taire. Par exemple un carré (d = 2) de coté 1. Remplaçons maintenantl’objet par N copies conformes de taille r, 0 < r < 1, Nrd < 1. Parexemple pour d = 2 soit r = 1/3 et N = 8. Nous procédons à l’infini enremplaçant à la kème itération chaque objet par N copies de taille rd. Ala fin de la procédure, nous obtenons un ensemble infini de points, dontla dimensionnalité devrait être au maximum d même si intuitivementnous avons la sensation que la dimension devrait être plus grande qued− 1.

L’ensemble de Cantor L’ensemble de Cantor (ou ensemble tria-dique de Cantor, ou poussière de Cantor) est un sous-ensemble remar-

Page 130: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

124 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

Figure 6.32 – L’ensemble de Cantor.

quable de la droite réelle construit par le mathématicien allemand GeorgCantor. Il s’agit d’un ensemble fermé de [0, 1], d’intérieur vide (Fi-gure 6.32). On le construit de manière itérative à partir du segment[0, 1] en enlevant le tiers central ; puis on réitère l’opération sur les deuxsegments restants, et ainsi de suite. la kème étape nous avons 2k seg-ments de taille 3−k. Pour k → ∞ le nombre de segments tend vers l’infinialors que leur taille tend vers zéro.

L’ensemble de Cantor est composé par un ensemble non dénombrablede points. Il a toutefois une mesure nulle, puisque sa longueur à la kèmeitération est Lk = (2/3)k et donc limk→∞ Lk = 0.

6.4.4.2 Dimension fractale

La dimension d’un ensemble est typiquement le nombre minimal de va-riables qui servent à définir un élément. Or cette définition est insuffi-sante dans le cas d’un ensemble fractal. Il est nécessaire introduire lanotion de dimension fractale D0 ou dimension de Hausdorff. Pour unprocessus de fragmentation avec N copies de taille r, avec Nrd < 1

D0 =logN

log(1/r)

qui n’est pas forcement un nombre entier. Puisque

Nrd < 1 ⇒ logN + d log r < 0 ⇒1/d logN < − log r = log 1/r ⇒ log 1/r > logN1/d

il s’ensuit que

D0 =logN

log(1/r)<

logN

logN1/d= d

Un objet de dimension entière d peut être décomposé en N = (1/r)d

portions égales de taille 0 < r < 1. Dans ce cas

D0 =d log 1/r

log(1/r)= d

Calculons la dimension fractale dans le cas de l’ensemble de Cantorlinéaire (d = 1). Ici, à chaque itération nous remplaçons l’objet initialpar N = 2 copies de taille r = 1/3.La dimension est donc

D0 =logN

log(1/r)=

log 2

log 3= 0.63

Notons que cette quantité peut être définie seulement pour les objetsauto-similaires. Une autre méthode, appelée box counting est utilisée

Page 131: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.4. INVARIANTS 125

dans le cas d’objets fractales non auto-similaires, comme les attracteurschaotiques.

Tapis de SierpinskiLe tapis de Sierpinski (1916), du nom de Waclaw Sierpinski, est unefractale obtenue à partir d’un carré. Le tapis se fabrique en découpantle carré en neuf carrés égaux avec une grille de trois par trois, et en sup-primant la pièce centrale, et en appliquant cette procédure indéfinimentaux huit carrés restants.

A chaque itérations le carré est remplacé par N = 8 carrés de tailler = 1/3. La dimension est donc D0 = logN

log(1/r) =log 8log 3 = 1, 8928.

Courbe de Koch A chaque étape le segment unitaire est remplacépar un motif composé par N = 4 segments de taille r = 1/3. A la kèmeétape, la courbe est composée par 4k segments.

0 0.2 0.4 0.6 0.8 1

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

0 0.2 0.4 0.6 0.8 1

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

−0.2

−0.1

0

0.1

0.2

0.3

0.4

0.5

Puisque Nrd > 1, la dimension est plus grande que 1 :

D0 =logN

log(1/r)=

log 4

log 3= 1, 2169

Page 132: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

126 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

6.4.5 Les invariants attracteurs

Comme déjà vu pour les invariants d’ordre 1 et 2, un invariant peutêtre un lieu de l’espace d’état où les trajectoires convergent. Dans cettesection nous allons définir la notion d’attracteur comme l’ensemble del’espace de phase vers lequel toutes les trajectoires voisines convergent.Définissons d’abord la notion de distance entre un état x ∈ R

n et unensemble clos C comme

dist(x,C) = min‖x− c‖ : c ∈ C (6.15)

où ‖x‖ est la norme vectorielle de x [2].

Définition 6.2 (Attracteur). Un attracteur est un ensemble clos A quisatisfait les propriétés suivantes :

1. A est un invariant : toute trajectoire qui démarre dans A reste en Apour tout t.

2. A exerce une action attractive sur un ensemble ouvert U de condi-tions initiales, appelé bassin d’attraction : si x(0) ∈ U alors limt→∞ dist(x(t), A) =0

3. A est minimal : il n’existe pas de sous-ensemble de A qui satisfaitles deux conditions précédentes.

Un attracteur est appelé un attracteur étrange si A est aussi un ensemblefractal.

6.5 Chaos

Le grand nombre de degrés de liberté d’un système dynamique non-linéaire de dimension ≥ 3 rend possible la génération de mouvementscaractérisés par une forte complexité topologique.Une classe de systèmes avec un comportement dynamique très com-plexe est la classe des systèmes chaotiques. Nous parlons de comporte-ment chaotique dans un système dynamique si la prévision du comporte-ment futur devient impossible au-delà d’un certain intervalle temporel,indépendamment de la précision de la condition initiale et malgré laconnaissance précise des mécanismes de fonctionnement. Ceci est dû àl’amplification des erreurs de mesures initiales qui est une conséquencede l’instabilité non-linéaire du système. Ceci est connu comme l’effetpapillon [6].La dépendance sensitive des conditions initiales n’est toutefois pas suf-fisante pour définir un système comme chaotique puisque celle ci a éga-lement lieu dans des systèmes linéaires instables. Le deuxième aspectimportant est l’évolution bornée dans une région limitée de l’espace dephase.Comme l’étude mathématique des systèmes chaotiques est d’une grandedifficulté, l’étude du chaos combine trois techniques : les mathématiques,les simulations sur ordinateur et l’expérimentation ou l’observation. Enparticulier, les simulations numériques ont joué un rôle essentiel en mon-trant que les systèmes déterministes peuvent aussi présenter de la sensi-tivité aux conditions initiales. Avant donc d’introduire une définition for-melle de système chaotique, nous présenterons un des premiers exemplesde dynamiques chaotique qui a été étudiée.

Page 133: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.5. CHAOS 127

−20

−10

0

10

20 −30−20

−100

1020

30

0

10

20

30

40

50

x2x

1

x 3

Figure 6.33 – Attracteur étrange du système de Lorenz.

6.5.1 Le système de Lorenz

Le système que nous allons étudier a été proposé par Ed Lorenz, unmétéorologiste du MIT, en 1963 pour modéliser le phénomène de laconvection dans l’atmosphère. Il s’agit d’un système non-linéaire d’ordren = 3

x1 = σ(x2 − x1)

x2 = rx1 − x2 − x1x3

x3 = x1x2 − bx3

où x1 mesure le taux de convection, x2 est la variation horizontale detempérature, x3 est la variation verticale de température, σ est le nombrede Prandtl (lié à la viscosité), r est le nombre de Raylegh (lié à ladifférence de température) et b est un paramètre. Le modèle est uneforte simplification du comportement des phénomènes météorologiques.La même équation apparaît aussi dans les modèles des lasers et desdynamos.Lorenz étudia le système pour σ = 10 et b = 8/3. Le comportement dusystème est simple pour un petit r. Par exemple pour 0 < r < 1 l’origineest un attracteur global.

Par contre, Lorenz découvrit que ce simple système déterministe peutengendrer des dynamiques extrêmement complexes et erratiques pourr > 24.06. La solution oscille de manière irrégulière et non périodique,jamais en parcourant la même orbite, toutefois en restant toujours àl’intérieur d’une région bornée. Lorenz s’aperçu qu’en résolvant le sys-tème pour des conditions initiales très proches (mais arrondies avec unnombre de chiffres significatifs différent), il obtenait des orbites diffé-rentes, dont la distance ne se réduisait pas au fur et à mesure que letemps avançait.Si nous traçons une trajectoire dans l’espace de phase tridimensionnelpour r = 28, nous voyons qu’elle reste dans une région bornée et qu’elleconverge vers un ensemble qui a été dénommé attracteur étrange parRuelle et Takens en 1971 [19] (Figure 6.33).

A la différence des points fixes ou des cycles limites, cet attracteurétrange n’est ni un point, ni une courbe, ni une surface. Il est un fractal,dont la dimension est entre 2 et 3. Les trajectoires sur l’attracteur sont

Page 134: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

128 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

0 5 10 15 20 25−20

−15

−10

−5

0

5

10

15

20

time

x1

Figure 6.34 – Evolution temporelle de deux trajectoires du système de Lorenz avecdes conditions initiales différentes mais très proches.

−20−10

010

20 −40

−20

0

20

40

0

10

20

30

40

50

x2

t=0

x1

x 3

−20−10

010

20 −40

−20

0

20

40

0

10

20

30

40

50

x2

t=3

x1

x 3

−20−10

010

20 −40

−20

0

20

40

0

10

20

30

40

50

x2

t=6

x1

x 3

−20−10

010

20 −40

−20

0

20

40

0

10

20

30

40

50

x2

t=10

x1

x 3

Figure 6.35 – Evolution dans l’espace de phase de 100 trajectoires du système deLorenz avec des conditions initiales différentes mais très proches.

caractérisées par une forte sensibilité aux conditions initiales. Ceci signi-fie que deux trajectoires qui ont deux conditions initiales très prochespeuvent rapidement diverger et avoir un comportement futur très dif-férent (Figure 6.34). La sensibilité aux conditions initiales peut êtrevisualisée dans l’espace de phase en montrant comment 100 conditionsinitiales proches évoluent avec le temps (Figure 6.35).

6.5.2 L’exposant de Liapounov

Le système de Lorenz est un exemple de système chaotique où les pré-dictions à long terme deviennent pratiquement impossibles. Il est doncintéressant de définir une mesure quantitative du degré de chaoticitéd’un système.A ce propos, nous allons introduire la notion d’exposant de Liapounov.Soit x(t0) un point sur l’attracteur et x(t0) = x(t0) + δ(t0) un pointproche. Suivons l’évolution des deux trajectoires qui passent par x(t0) etx(t0) et définissons par δ(t) l’écart entre ces deux trajectoires à l’instant

Page 135: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.5. CHAOS 129

0 1 2 3 4 5−3

−2

−1

0

1

2

3

t

log

(no

rm(δ

))

Figure 6.36 – Evolution logarithmique de l’écart δ en fonction du temps. La droitereprésente un fitting linéaire.

t.Si nous approximons l’évolution dynamique de l’écart δ(t) par la loi

‖δ(t)‖ ≈ ‖δ(t0)‖eλ(t−t0)

la quantité λ est l’exposant de Liapounov. Notons que λ = .9 pour lesystème de Lorenz.Un système avec un exposant de Liapounov positif affiche une sensibilitéaux conditions initiales.Notons que si t0 = 0

‖δ(t)‖ ≈ ‖δ(t0)‖eλ(t−t0) ⇒ log ‖δ(t)‖ ≈ log ‖δ(0)‖+ λt

Si nous allons donc tracer log ‖δ(t)‖ en fonction du temps, la pente dela droite de regression linéaire qui fitte les données est la quantité λrecherchée.La Figure 6.36 montre ln(‖δ‖) en fonction de t en superposition avecune droite ayant une pente λ = 0.9 pour le système de Lorenz. Notonsque la divergence s’arrête une fois que la taille de ‖δ‖ est comparable àcelle de l’attracteur.L’exposant de Liapounov est lié à l’horizon de prédictibilité du système.Supposons vouloir prédire l’évolution d’un système dynamique qui a unexposant de Liapounov λ > 0. Soit δ(t0) l’erreur de mesure (incontour-nable) à l’instant initial. Soit a la valeur maximale de l’erreur tolérée,c.-à-d. que nous considérons la prédiction acceptable si ‖δ(t)‖ ≤ a. Ilest donc possible de définir l’horizon de prédictibilité comme l’instantde temps au-delà duquel l’écart entre la prédiction et la vraie valeur esttrop important.

‖δ(t)‖ = ‖δ(t0)‖eλ(t−t0) ≤ a⇔ λ(t− t0) ≤ lna

‖δ(t0)‖⇔

⇔ t ≤ t0 +1

λln

a

‖δ(t0)‖= th

Exemple

Page 136: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

130 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

Soit t0 = 0, a = 10−3 et ‖δ(0)‖ = 10−7. Nous voyons que

th =1

λln

10−3

10−7=

4 ln 10

λ

Supposons maintenant de réduire ‖δ(0)‖ = 10−13. Malgré la forte ré-duction de l’erreur initiale nous obtenons

th =1

λln

10−3

10−13=

10 ln 10

λ

c.-à-d. une petite augmentation de l’horizon de prédictibilité.

6.5.3 Définition de système chaotique

Après avoir présenté un exemple pratique de système chaotique il estutile de présenter une définition de système chaotique. Il faut toutefoissavoir que la plupart des définitions de système chaotique sont discor-dantes et souvent qualitatives. Nous ferons ici référence à la définitionde chaos proposée par Strogatz [22].

Définition 6.3 (Chaos déterministe). Le chaos dynamique est un com-portement apériodique et à longue terme d’un système déterministe quiaffiche une sensible dépendance des conditions initiales

Comportement apériodique à long terme signifie qu’il existe un ensembleouvert de conditions initiales lesquelles génèrent des trajectoires qui neconvergent pas vers des points fixes, ni vers des orbites périodiques oudes orbites quasi-périodiques pour t → ∞. Notons que selon cette défi-nition le système x = x n’est pas un système chaotique bien qu’il soitdéterministe et avec une séparation exponentielle des trajectoires. Eneffet, toutes le trajectoires convergent vers l’infini qui agit comme unpoint fixe.Vu que dans la littérature des systèmes non-linéaires nous retrouvonssouvent les notions d’attracteur étrange et/ou chaotique, il est impor-tant de mentionner que les deux notions sont différentes même si liées.La dénomination attracteur chaotique fait référence à la dynamique dusystème et pas à la nature géométrique de l’attracteur. Il est souventcomposé par une orbite de longueur infinie qui reste confinée dans unespace fini et sans jamais passer de nouveau pour le même point. Ladénomination attracteur étrange fait référence aux propriétés géomé-triques de l’attracteur qui est un objet fractal. La plupart des attrac-teur chaotiques sont étranges et la plupart des attracteurs étranges sontchaotiques. Toutefois il existe des exemples d’attracteurs étranges nonchaotiques et des exemples d’attracteurs chaotiques non étranges.

6.6 Déterminisme, chaos, prédictibilité et ha-sard

Le titre et le contenu de cette section est largement inspiré de l’article deD. Ruelle [18] 3. La modélisation de la physique classique qui se basaitsur les travaux de scientifiques comme Newton, Leibniz, Lagrange, Euleret de Laplace et qui a dominé l’approche scientifique jusqu’au début duXX siècle était caractérisé par trois propriétés principales.

3. Texte complet disponible au www.ihes.fr/ ruelle/PUBLICATIONS/129chaos.ps

Page 137: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

6.7. SYSTÈMES CHAOTIQUES EN PRATIQUE 131

Réductionnisme : la description du comportement global est réduit àla composition des comportements de sous-systèmes plus simples.

Réversibilité : les modèles utilisés sont valable même dans le cas d’in-version de la direction de l’espace et du temps

Déterminisme : une fois les lois du mouvement connues, et les condi-tions initiales fixées, la solution est unique.

Il existe toutefois des systèmes (par exemple le système atmosphérique)où l’approche réductionniste n’est pas efficace pour décrire le comporte-ment.

Ces deux citations peuvent nous aider dans la réflexion :

— Les phénomènes même qui paraissent le plus confus et le plus ir-régulier, les pluies, les nuages , les explosions de la foudre ne seproduisent pas capricieusement : ils ont aussi leurs causes (Sénèque,4 - 65 ap. J.C).

— Pourquoi bien des gens trouvent tout naturel de prier pour avoir de lapluie ou du beau temps, alors qu’ils jugeraient ridicule de demanderune éclipse par une prière ? (Poincaré 1908)

A première vue, la notion de déterminisme semblerait en contradictionavec la notion de hasard. Est-ce que les phénomènes atmosphériques sontdéterministes comme préconisé par Séneque où bien aléatoires en accordavec l’opinion commune rapportée par Poincaré. Est-ce qu’un phéno-mène non prédictible pourrait être déterministe ? Prenons un systèmephysique dont l’évolution est décrite par des équations déterministes.Si l’on connaît l’état du système à un instant initial, on peut calculerson état à tout autre instant. Apparemment il n’ y a aucune incertitude.Toutefois nous avons supposé implicitement que nous connaissions l’étatinitial avec une totale précision. En réalité nous ne pouvons mesurerl’état initial qu’avec une précision limitée. Il faut donc voir commentune petite imprécision dans notre connaissance va affecter nos prédic-tions d’ état futur.

Pour les système non chaotiques une incertitude suffisamment petite autemps t0 donne lieu à une incertitude petite au temps t. Pour les sys-tèmes chaotiques l’incertitude croît exponentiellement avec le temps t.Un exemple est la bille qui rebondit plusieurs fois sur les parois d’unbillard. Cela veut dire que de petites causes peuvent avoir de grands ef-fets, non seulement dans des situations exceptionnelles, mais pour toutesles conditions initiales.

La théorie des systèmes chaotiques a donc montré comment la notionde déterminisme n’est pas incompatible avec la notion de manque deprédictibilité.

6.7 Systèmes chaotiques en pratique

La météorologie est donc un bon exemple de système chaotique. Lesscientifiques ont de bons modèles qui décrivent la dynamique de l’at-mosphère terrestre. Les études par ordinateur ont montré que ces mo-dèles sont chaotiques. En changeant légèrement les conditions initiales,les prédictions après quelques jours deviennent assez différentes. L’effetde quelque infime perturbation peut devenir important après quelquesmois, mais l’imprédictibilité des phénomènes chaotiques nous interdit devoir de quelle manière.

Page 138: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

132 CHAPITRE 6. LES SYSTÈMES NON-LINÉAIRES CONTINUS

Il est aussi curieux de voir comment l’orbite de la Terre a été montréecomme suivant une dynamique chaotique. L’orbite de la Terre est uneellipse dont les paramètres (par exemple l’excentricité) varient lentementau cours du temps. On a montré que la variation temporelle de l’excen-tricité est chaotique. Il y a donc de l’imprédictibilité dans le mouvementde la Terre. Heureusement que l’échelle temporelle de son effet dépasselargement nos atteintes de vie...

Page 139: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 7

Les systèmes à temps

discret

Ce chapitre traitera de la modélisation de systèmes par des modèlesdynamiques où le temps change de manière discrète et synchrone. Pour-quoi est-il intéressant d’étudier des modèles de ce type ? Les raisons sontmultiples :— Le modèles discrets peuvent être un outil pour étudier les équations

différentielles.— Ils peuvent être des modèles plus adaptés dans certains domaines :

électronique digitale, économie, finance, étude des populations.— Ils peuvent être utilisés pour générer et simuler des dynamiques chao-

tiques puisqu’il est plus facile d’obtenir des dynamiques complexesdans le cas discret que dans le cas continu.

— Ils sont plus faciles à simuler par ordinateur : aucun algorithme d’in-tégration numérique n’est requis.

7.1 Equations aux différences

Un système à temps discret synchrone à dimensions finies est décrit pardes équations vectorielles aux différences

x(k + 1) = f(x(k), u(k), k) (7.1)

y(k) = η(k, x(k)) (7.2)

où k est un nombre entier qui représente le temps et x(k) ∈ Rn. Le

système discret est dit invariant quand les fonctions f(·) et η(·) nedépendent pas explicitement du temps.Alors que dans les configurations à temps continu nous avons privilégiéla représentation de la dynamique sous forme de systèmes d’équationsdifférentielles d’ordre 1, dans le cas à temps discret nous privilégierons lareprésentation des dynamiques sous forme d’équations aux différences.Ceci pour deux raisons :

1. dans le cas discret nous ne pouvons pas tirer avantage de la repré-sentation de trajectoires dans l’espace de phase suite à la naturediscontinue des trajectoires,

2. nous nous limiterons à considérer des systèmes où le vecteur d’étatest de dimension unitaire.

133

Page 140: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

134 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

Définition 7.1. Soit xk = x(k) ∈ X l’état scalaire d’un système dy-namique à l’instant k ∈ N et f : N × Xn → X une fonction connue.L’équation récursive

x(k + n) = f(k, x(k + n− 1), . . . , x(k)) (7.3)

est appelée équation aux différences d’ordre n sous forme normale. Unefonction x(k) = ξ(k) qui transforme l’équation en une identité est unesolution de l’équation. L’ensemble de toutes les solutions est appelé lasolution générale de l’équation.

Exemple Une solution de l’équation d’ordre 1

x(k + 1) = 2x(k)

est la fonction x(k) = c · 2k où c ∈ R.

•Il est possible de montrer le théorème suivant

Théorème 7.1. L’équation (7.3) admet une et une seule solution unefois fixées n valeurs initiales.

Notons qu’aucune autre restriction sur la continuité de la fonction fn’est posée.

Exemple Sous la condition x(0) = 1, la seule solution de l’équationd’ordre 1

x(k + 1) = 2x(k)

est x(k) = 2k.

7.2 Le modèle d’Hardy Weinberg : un exemplede modèle à temps discret pour la génétique

Un des systèmes dynamiques les plus importants dans les sciences estcelui qui correspond à l’évolution génétique des espèces [10].

Le principe de la sélection naturelle, énoncé par Darwin, agit au fil desgénérations sur la composition des êtres vivants, en garantissant leurdiversité et leur viabilité. En général, dans une population d’individus,un caractère présente des variations. Certains individus portent des va-riations qui leur permettent de se reproduire plus que les autres (ex :ils savent mieux échapper aux prédateurs, ils savent produire plus degraines ou ils jouent mieux au football). Leur descendance est donc plusnombreuse, et portera cette variation si elle est héréditaire. La consé-quence logique est que cette variation héréditaire verra sa fréquence aug-menter dans la génération suivante et ainsi de suite... On parle dans cecas d’avantage sélectif. Les variations qui présentent un désavantage sé-lectif, voient leur fréquence diminuer au fil des générations et en généralfinissent par disparaître.L’information génétique est transmise par un individu à sa descendancesous forme d’unités d’informations, connues sous le nom de gènes. Les

Page 141: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.2. LE MODÈLE D’HARDY WEINBERG : UN EXEMPLE DE MODÈLE À TEMPS DISCRET POUR LA GÉNÉTIQUE

gènes sont portés dans la cellule par les chromosomes qui sont habi-tuellement représentés par paires, en parallèle avec leur homologue. Leschromosomes sont en nombre variable selon l’espèce. L’espèce humaineen compte 46 : 23 paires, dont 22 sont des chromosomes homologues, ladernière paire correspondant aux deux chromosomes sexuels. Plusieurscaractéristiques humaines sont déterminées par le couple de gènes qui seretrouvent dans le même locus (emplacement) d’un chromosome homo-logue. Nous dénotons par allèle une variante donnée d’un gène au seind’une espèce. Dans une cellule diploïde, il y a deux allèles pour chaquegène : un allèle transmis par chaque parent. Les allèles transmis par lesparents peuvent être identiques ou non. Par exemple dans le cas du gènedéterminant le groupe sanguin, situé sur le chromosome 9 humain, l’undes allèles code le groupe A, un autre le groupe B, et un troisième allèledétermine le groupe O.Nous nous focaliserons sur les caractéristiques qui dépendent des allèlesoccupant une seule position. Si les allèles apportés par chaque parentsont identiques dans leur séquence nucléotidique, l’individu est homozy-gote pour ce gène. S’ils sont différents, l’individu est hétérozygote pource gène. Dans ce dernier cas, deux possibilités sont envisageables quantau phénotype résultant de l’expression du gène. Si l’un des deux allèless’exprime et l’autre reste muet, on dit que le premier est dominant etl’autre récessif.Supposons donc qu’il existe deux variantes (allèles) A et a d’un gène etque les individus sont caractérisés par un des trois génotypes suivants :AA, aa, Aa.Le modèle d’Hardy Weinberg fait l’hypothèse d’un accouplement aléa-toire des parents, d’une taille infinie des populations et de l’absence demutations. Ceci signifie que la proportion de trois génotypes dans ladescendance dépend seulement de la proportion des allèles A et a parmiles parents.Soient pA(k) et pa(k) (pA(k) + pa(k) = 1) la proportion des allèles A eta, respectivement, dans la population parente à l’instant k. Ceci signifieque les proportions des trois genotypes AA, Aa et aa dans la populationparente seront pA(k)2, 2pA(k)pa(k) et pa(k)2 respectivement.Supposons que le capacité de se reproduire (en anglais fitness) des troisgénotypes ne soit pas le même et que chaque génotype contribue à lagénération suivante avec le poids suivants : wAA, wAa, waa où wAA +wAa + waa = 1. La proportion d’allèles A et a, respectivement, dans la(k + 1)ème génération sera

pA(k + 1) =wAAp

2A(k) + wAapA(k)pa(k)

wAAp2A(k) + 2wAapA(k)pa(k) + waap2a(k)(7.4)

pa(k + 1) =wAapA(k)pa(k) + waap

2a(k)

wAAp2A(k) + 2wAapA(k)pa(k) + waap2a(k)(7.5)

Ceci est un modèle à temps discret du genre (7.1) où l’état x est com-posé des deux variables pA(k) et pa(k). Ce modèle peut être utilisé parexemple pour étudier les dynamiques évolutives des gènes récessifs. Eneffet, plusieurs maladies congénitales sont expliquées par la présence dugénotype aa où a est un gène récessif. Supposons que suite à des pro-blèmes physiques ou par choix délibéré, l’individu qui manifeste une ma-ladie congénitale n’ait pas de descendance, c.-à-d. waa = 0. Supposonsaussi que les deux autres génotypes aient le même facteur de fitness :

Page 142: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

136 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

wAa = wAA = 1/2. Il découle du modèle (7.4) que la dynamique de laprésence du gène récessif suit la loi

pa(k + 1) =pa(k)(1− pa(k))

2pa(k)(1 − pa(k)) + (1− pa(k))2=

=pa(k)(1− pa(k))

1− pa(k)2=

pa(k)

1 + pa(k)⇔ pa(k) =

pa(0)

1 + kpa(0)(7.6)

Le pourcentage du gène récessif tend vers zéro mais très lentement (100générations pour couper en deux la proportion initiale). Ceci expliquepourquoi les maladies génétiques restent actives pendant des centainesde générations.

7.3 Équations aux différences linéaires

Nous traiterons ici la version linéaire des équations (7.3).

Définition 7.2. Une équation aux différences est dite linéaire d’ordren, avec n > 0, si elle a la forme

an(k)x(k + n) + an−1(k)x(k + n− 1) + · · ·+ a0(k)x(k) = g(k) (7.7)

où les fonctions ai(k) ∈ R, i = 0, . . . , n et g(k) ∈ R sont données.

Si les coefficients ne dépendent pas de k l’équation est dite invariante(ou stationnaire). Si g(k) = 0 pour tout k alors l’équation

an(k)x(k + n) + an−1(k)x(k + n− 1) + · · ·+ a0(k)x(k) = 0 (7.8)

est dite homogène.

La condition initiale d’une équation aux différences linéaire d’ordre nest le vecteur de taille [n, 1]

x0 = [x(0), . . . , x(n− 1)]

Théorème 7.2. Considérons l’équation linéaire non homogène (7.7) etsa solution particulière x(p)(k). Soit x(h)(k) une solution de l’équationhomogène associée (7.8). Toutes les solutions x(k) de l’équation linéairenon homogène (7.7) peuvent être exprimées sous la forme

x(k) = x(p)(k) + x(h)(k)

Le principe de superposition suivant (analogue à celui des systèmescontinus discuté en Section 5.2) est valable

Théorème 7.3. Si x(1)(k), x(2)(k), . . . , x(m)(k) sont des solutions del’équation (7.8), alors chaque combinaison linéaire

c1x(1)(k) + c2x

(2)(k) + · · ·+ cmx(m)(k)

où c1, . . . , cm sont des constantes arbitraires, est aussi une solution de (7.8).

Exemple Considérons l’équation

(k + 1)x(k + 1)− kx(k) = 1, k ≥ 1

Page 143: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.3. ÉQUATIONS AUX DIFFÉRENCES LINÉAIRES 137

dont l’équation homogène correspondante est

(k + 1)x(k + 1)− kx(k) = 0.

La solution de l’équation homogène est

x(h)(k) = c/k

.Une solution particulière est

x(p)(k) = 1

La solution a donc la forme

x(k) = 1 + c/k

où c est déterminé de manière à satisfaire la condition initiale x0 ∈ R.

7.3.1 Solutions fondamentales

Construisons un ensemble de n solutions x(i)(k), i = 1, . . . , n telles que

x(i)(0) = 0, . . . , x(i)(i−1) = 1, x(i)(i) = 0, . . . , x(i)(n−1) = 0

Cet ensemble est appelé ensemble fondamental.Théorème 7.4. Chaque solution de l’équation homogène (7.8) peut êtreexprimée comme une combinaison linéaire

c1x(1)(k) + c2x

(2)(k) + · · ·+ cnx(n)(k)

des n solutions fondamentales x(i) où c1, . . . , cn sont des constantes.

Le théorème suivant énonce que le rôle des n solutions fondamentalespeut être joué par n’importe quel ensemble de n solutions linéairementindépendantes :Théorème 7.5. Chaque solution de l’équation homogène (7.8) peut êtreexprimée comme une combinaison linéaire

c1x(1)(k) + c2x

(2)(k) + · · ·+ cnx(n)(k)

des n solutions linéairement indépendantes x(i) où c1, . . . , cn sont desconstantes.

ExempleConsidérons l’équation homogène linéaire d’ordre n = 2

x(k + 2)− 2x(k + 1) + x(k) = 0

La solution x(1) qui satisfait la condition initiale x(1)(0) = 1, x(1)(1) = 0est

x(1)(k) = 1− k

La solution x(2) qui satisfait la condition initiale x(2)(0) = 0, x(2)(1) = 1est

x(2)(k) = k

La solution de l’équation homogène peut être écrite de la manière

x(k) = c1(1− k) + c2k

où c1 et c2 sont déterminés sur base du vecteur initial x0 ∈ R2.

Page 144: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

138 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

7.4 Equations aux differences linéaires à co-efficients constants

Dans cette section nous nous focaliserons sur des équations aux diffé-rences à n pas et à coefficients constants

x(k+n)+an−1x(k+n− 1)+an−2x(k+n− 2)+ · · ·+a0x(k) = b (7.9)

où a0, a1, . . . , an−1, b sont n coefficients connus.

7.4.1 Polynôme caractéristique

Définition 7.3. Soit

x(k + n) + an−1x(k + n− 1) + · · ·+ a0x(k) = 0 (7.10)

l’équation linéaire homogène à coefficients constants associée à (7.9). Lepolynôme

P (λ) = λn + an−1λn−1 + · · ·+ a1λ+ a0

est appelé le polynôme caractéristique associé à l’équation homogène.

Définition 7.4. L’équation

P (λ) = 0

est appelée l’équation caractéristique associé à l’équation homogène (7.10).

Cette équation a n solutions complexes λ1, . . . , λn.

7.4.2 Équation caractéristique et solutions

Il est possible de montrer que pour chaque équation homogène à coeffi-cients constants (7.10) il existe une solution de la forme x(k) = λk quise comporte comme une séquence géométrique [20].

Théorème 7.6. Si λ ∈ R est une solution de multiplicité 1 de l’équationcaractéristique, alors

x(k) = λk

est une solution de (7.10). Si λ ∈ R est une solution de multiplicité mde l’équation caractéristique, alors

x(0)(k) = λk, x(1)(k) = kλk, x(2)(k) = k2λk, . . . , x(m−1)(k) = km−1λk

sont m solutions linéairement indépendantes de (7.10).

Toutes les solutions de (7.10) peuvent être exprimées comme des com-binaisons linéaires des solutions mentionnées ci-dessus.

ExempleConsidérons de nouveau l’équation aux différences :

x(k + 2)− 2x(k + 1) + x(k) = 0

qui a deux racines caractéristiques λ1,2 = 1 de multiplicité m = 2.Selon le théorème précédent,

x(0)(k) = 1, x(1)(k) = k

sont 2 solutions linéairement indépendantes, en accord avec les solutionsfondamentales trouvées auparavant.

Page 145: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.4. EQUATIONS AUX DIFFERENCES LINÉAIRES À COEFFICIENTS CONSTANTS139

•Théorème 7.7. Si les coefficients a0 6= 0, a1, . . . , an−1 sont réels etλ = a± ib sont deux solutions complexes conjuguées de l’équation carac-téristique alors

w(k) = ρk cos(θk), z(k) = ρk sin(θk)

sont deux solutions linéairement indépendants de (7.8) où

ρ =√

a2 + b2, cos θ =a√

a2 + b2, sin θ =

b√a2 + b2

Si λ = a± ib est une solution complexe de multiplicité m alors

w(0)(k) = ρk cos(θk), w(1)(k) = kρk cos(θk), . . . w(m−1)(k) = km−1ρk cos(θk)

z(0)(k) = ρk sin(θk), z(1)(k) = kρk sin(θk), . . . z(m−1)(k) = km−1ρk sin(θk)

sont m solutions linéairement indépendantes.

Exemple Considérons l’équation aux différences d’ordre n = 3

x(k + 3)− 4x(k + 2) + 5x(k + 1)− 2x(k) = 0

où x(0) = 0, x(1) = 1 et x(2) = 0. L’équation caractéristique associéeest

λ3 − 4λ2 + 5λ− 2 = 0

qui a comme racines λ1 = 2 et λ2,3 = 1. La solution générale est donc

x(k) = c12k + c2 + c3k

Si nous imposons la condition initiale, le système d’équations suivantdoit être satisfait

c1 + c2 = 0

2c1 + c2 + c3 = 1

4c1 + c2 + 2c3 = 0

Puisque la solution est c1 = −2, c2 = 2, c3 = 3 la solution générale est

x(k) = −2k+1 + 3k + 2

Exemple : les nombres de Fibonacci Considérons l’équation quireprésente les nombres de Fibonacci

x(k + 1) = x(k) + x(k − 1)

où x(0) = 0 et x(1) = 1. L’équation caractéristique λ2 − λ− 1 = 0 a lessolutions

λ1 =1 +

√5

2, λ1 =

1−√5

2

La solution générale est donc x(k) = c1(λ1)k + c2(λ2)

k où les conditionssuivantes

c1 + c2 = 0

c11+

√5

2 + c21−

√5

2 = 1

nous amènent à la solution

x(k) =1√5

(

1 +√5

2

)k

− 1√5

(

1−√5

2

)k

Page 146: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

140 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

Exemple Considérons l’équation aux différences

x(k + 2) + x(k) = 0

où x(0) = 0 et x(1) = 1. L’équation caractéristique λ2 + 1 = 0 a deuxsolutions complexes conjuguées λ1,2 = ±i. Il s’ensuit que ρ =

√0 + 1 = 1

et θ = π/2. La solution générale est

x(k) = sin(kπ/2)

qui satisfait les deux conditions initiales.

7.4.3 États d’équilibre et stabilité

Cette section étudie et définit les équilibres (Def 2.3) de l’équation auxdifférences (7.9) à n pas et à coefficients constants.

Définition 7.5. Un équilibre est un nombre x auquel il correspond unesolution constante x(k) = x.

Il est facile de montrer pour (7.9) que :— si 1 + an−1 + an−2 + · · ·+ a0 6= 0, alors il existe un seul équilibre

x =b

1 + an−1 + an−2 + · · ·+ a0

— autrement, si 1 + an−1 + an−2 + · · ·+ a0 = 0

1. si b = 0 chaque x est un point d’équilibre

2. si b 6= 0 il n’ y a aucun point d’équilibre

Les notions de stabilité, introduites pour le cas continu dans la Sec-tion 4.5, peuvent être déclinées pour un système à temps discret de lamanière suivante.

Définition 7.6. Un équilibre x est un équilibre stable si ∀ǫ > 0 il existeun δ > 0 et un k0 > 0 telle que

n−1∑

j=0

|x(j)− x| < δ ⇒ |x(k)− x| < ǫ ∀k > k0

c.-à-d. des états initiaux proches de l’équilibre donnent origine à destrajectoires proches de l’équilibre.

Définition 7.7. Un équilibre x est asymptotiquement stable si pourchaque n-tuple x(0), x(1), . . . , x(n− 1) la solution correspondante sa-tisfait

limk→∞

x(k) = x

Notons donc que, comme pour le cas continu, un équilibre asymptoti-quement stable d’un système linéaire est aussi globalement stable.

Il est possible de prouver les théorèmes suivants.

Théorème 7.8. Un équilibre de l’équation linéaire (7.9)

Page 147: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.4. EQUATIONS AUX DIFFERENCES LINÉAIRES À COEFFICIENTS CONSTANTS141

1. est stable ssi chaque solution λi, i = 1, . . . , n de l’équation caracté-ristique satisfait |λi| ≤ 1 et les solutions pour lesquelles |λ| = 1 ontune multiplicité égale à 1.

2. est asymptotiquement stable ssi chaque solution λi, i = 1, . . . , n del’équation caractéristique satisfait |λi| < 1. Tout équilibre asymptoti-quement stable est aussi stable.

Exercices Calculer l’équilibre et analyser la stabilité pour les sys-tèmes suivants :

1.6x(k + 2)− 5x(k + 1) + x(k) = 2

2.x(k + 2)− 2x(k + 1) + 2x(k) = 0

3.x(k + 3) + x(k) = 0

Calculer la solution de l’équation

x(k + 2)− 4x(k + 1) + 3x(k) = 2k

et de l’équation

x(k + 2)− 4x(k + 1) + 3x(k) = bk, b 6= 1, b 6= 3

7.4.4 Expression sous forme d’un système

Considérons l’équation aux différences

x(k + n) + an−1x(k + n− 1) + · · ·+ a0(k)x(k) = u(k)

Si nous posons x1(k) = x(k), x2(k) = x(k+1), . . . , xn(k) = x(k+n− 1)nous obtenons le système suivant

x1(k + 1) = x2(k)

x2(k + 1) = x3(k)...

xn−1(k + 1) = xn(k)

xn(k + 1) = −a0(k)x1(k)− a1(k)x2(k)− · · · − an−1(k)xn(k) + u(k)

7.4.5 Équations linéaires homogènes à un pas

Définition 7.8. Soit a ∈ R une constante. L’équation

x(k + 1) = ax(k) (7.11)

est appelée une équation aux différences, d’ordre 1, linéaire, homogèneet invariante (c.-à-d. à coefficients constants).

Page 148: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

142 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

L’équation caractéristique est λ− a = 0 qui a la seule racine λ = a. Lessolutions de l’équation homogène auront la forme exponentielle

x(k) = Cak = C expln(a)k = C exp− ln(1/a)k

Pour chaque condition initiale x(0) = x0 l’équation (7.11) admet doncla seule solution

x(k) = x0ak, x0 ∈ R

Le modèle de Malthus Un exemple d’équation aux différences,d’ordre 1 linéaire, homogène et à coefficients constants est fourni parle modèle de Malthus qui modélise une croissance exponentielle de lapopulation. Thomas Robert Malthus (1766-1834) a proposé le modèlesuivant pour décrire l’évolution d’une population x (biologique ou d’uneautre nature)

x(k + 1) = x(k) + nx(k)−mx(k) = (1 + n−m)x(k) = rx(k)

où la constante n représente le taux de naissance et la constante m letaux de mortalité des individus.

7.4.6 Équations linéaires affines à un pas

Définition 7.9. Soient a ∈ R, a 6= 0 et b ∈ R deux constants. L’équa-tion

x(k + 1) = ax(k) + b (7.12)

est appelée équation affine aux différences linéaire, d’ordre 1 et à coeffi-cients constants.

7.4.6.1 Equation affine d’ordre 1 : a = 1

Considérons l’équation non-homogène à coefficients constants d’ordren = 1

x(k + 1) = ax(k) + b

où a = 1 et b est connu.

La solution particulière a la forme x(p) = ck où c doit satisfaire

c(k + 1) = ck + b⇒ c = b

Puisque λ = 1, la solution générale aura donc la forme

x(k) = C1k + bk = C + bk

Si x(0) = x0 alors C = x0 et la solution générale devient

x(k) = x0 + kb

Page 149: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.4. EQUATIONS AUX DIFFERENCES LINÉAIRES À COEFFICIENTS CONSTANTS143

7.4.6.2 Equation affine d’ordre 1 : a 6= 1

Considérons l’équation non homogène à coefficients constants d’ordren = 1

x(k + 1) = ax(k) + b

où a 6= 1 et b sont connus.Une solution particulière de l’équation est x(p) = c où c doit satisfaire

c = ac+ b⇒ c =b

1− a

La solution générale a donc la forme x(k) = Cak + b1−a

Si x(0) = x0 alors

C +b

1− a= x0 ⇒ C = x0 − b

1− a

donc

x(k) =

(

x0 − b

1− a

)

ak +b

1− a

Théorème 7.9. Pour toute valeur initiale x(0) l’équation (7.12) a unesolution unique. La forme analytique de la solution dépend du coefficienta :

1. Si a = 1 alorsx(k) = x(0) + kb

et

(a) si b 6= 0 il n’existe aucun équilibre et toutes les trajectoires sontdivergentes.

(b) si b = 0 toutes les valeurs de x sont des valeurs d’équilibre ettoutes les trajectoires sont constantes.

2. Si a 6= 1 alorsx(k) = (x0 − α)ak + α

où x = α = b/(1− a) est le seul équilibre. Notons que

(a) si |a| < 1 toutes les trajectoires convergent vers α.

(b) si |a| > 1 toutes les trajectoires sont divergentes (à part la trajec-toire constante pour x0 = α)

(c) si a = −1 alors l’équilibre est α = b/2 et toutes les solutions sontoscillantes autour de cet équilibre (à part la solution constantepour x0 = α = b/2).

7.4.7 Représentation graphique

Une représentation graphique du comportement dynamique d’un sys-tème modélisé par une équation linéaire aux différences

x(k + 1) = f(x(k))

peut être obtenue en utilisant un repère cartésien où l’axe horizontaldénote la valeur de x à l’instant k et l’axe vertical la valeur de x àl’instant k + 1. En traçant dans cet espace la fonction f et la droitebissectrice, il est possible de visualiser l’évolution de la dynamique parune suite de segments rectilignes qui ressemble à une toile d’araignée. La

Page 150: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

144 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

x(k)x(1) x(2) x(3)x(0)

x(k+1)

Figure 7.1 – Visualisation en toile d’araignée de la dynamique (7.12) , où a = 1 etb > 0.

procédure à suivre est la suivante : commencer sur l’axe x par le pointx(k) et monter jusqu’au graphique de la fonction f . Puisque x(k+1) =f(x(k)) il suffit de se rabattre sur la bissectrice pour avoir la valeur del’état à l’instant k + 1 et ainsi de suite.

La Figure 7.1 montre un exemple de visualisation pour f = ax + b oùa = 1 et b > 0.

La Figure 7.2 montre un exemple de visualisation pour f = ax + b oùa < 1 et b > 0.

La Figure 7.3 montre un exemple de visualisation pour f = ax + b oùa = −1 et b > 0.

7.5 Systèmes discrets non-linéaires d’ordre1

Considérons un système discret autonome d’ordre 1 dont la dynamiqueest décrite par

x(k + 1) = f(x(k)) (7.13)

où f ∈ C∞ (c.-à-d. la fonction f est continue ainsi que toutes ses deri-vées) et x(k) ∈ I ⊂ R. Dénotons ce système par le couple f, I.Le trajectoire de x(k) pour k > 0 prend les valeurs

x(1) = f(x(0))

x(2) = f(x(1)) = f(f(x(0))) = f2(x(0))

. . .

x(k) = f(x(k − 1)) = f(f(. . . (f(x(0))))) = fk(x(0))

Page 151: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.5. SYSTÈMES DISCRETS NON-LINÉAIRES D’ORDRE 1 145

x(2)x(0)

x(k+1)

x(k)x(1) b/(1−a)

Figure 7.2 – Visualisation en toile d’araignée de la dynamique (7.12), où 0 < a < 1et b > 0.

b/a

x(k+1)

x(k)x(0)

Figure 7.3 – Visualisation en toile d’araignée de la dynamique (7.12), où a = −1et b > 0.

Page 152: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

146 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

f(x)

x(0) x(2)x(1)

x(4)

Figure 7.4 – Représentation en toile d’araignée de la dynamique (7.13).

Notons que fk(·) dénote la valeur de x après la kème itération et veillonsà ne pas confondre cette notation avec la notation de puissance ou bienla notation f (k) de derivée d’ordre k. Donc

x(k) = fk(x(0)) 6= (f(x(0)))k 6= f (k)(x(0))

La dynamique (7.13) peut être représentée de manière graphique par lediagramme en toile d’araignée (Section 7.4.7) dans le Figure 7.4.Voici quelques exemples pratiques de systèmes non linéaires.

Exemple Dans cet exemple nous modélisons le remboursement d’unprêt hypothécaire par un système non linéaire.Supposons que nous empruntons à une banque le montant s(0) et quenous le remboursons par des primes constantes de valeur p. Soit r le tauxd’intérêt appliqué à la dette résiduelle s(k). L’évolution de la somme àrembourser suit la loi

s(k + 1) = max(0, s(k)− p+ rs(k)) = max(0, (1 + r)s(k) − p)

Lotka-Volterra en temps discret Cet exemple montre une repré-sentation en temps discret du modèle de Lotka Volterra.

x1(k + 1) = (1 + a11)x1(k)− a12x1x2

x2(k + 1) = a21x1(k)x2(k) + (1− a22)x2(k)

7.5.1 Etats d’équilibre et stabilité

D’une manière analogue au cas non-linéaire continu, les points fixes (ouétats d’équilibre) jouent un rôle important dans la description de ladynamique de (7.13).

Page 153: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.5. SYSTÈMES DISCRETS NON-LINÉAIRES D’ORDRE 1 147

Définition 7.10. L’état x est un état d’équilibre (ou point fixe) dusystème f, I si

x = f(x)

D’un point de vue géométrique les points d’équilibre sont les abscissesdes intersections sur le plan x, y entre la fonction y = f(x) et la droitey = x. Les système representé par la fonction f dans la Figure 7.4 adonc un seul point d’équilibre de valeur x.

Théorème 7.10. Soit I = [a, b] un intervalle clos et borné et f : I → Iune fonction continue. Alors il existe toujours un point d’équilibre x telque f(x) = x.

ExempleLe système à temps discret

x(k + 1) = x(k)3

a les points fixes

x(1) = 0, x(2) = 1, x(3) = −1

•Définition 7.11. L’équilibre x est stable si pour chaque ǫ > 0 il existeune constante δ > 0 telle que

|x(0)− x| < δ ⇒ |x(k)− x| < ǫ

Définition 7.12. L’équilibre est globalement asymptotiquement stable(ou globalement attractif) si pour chaque x(0) ∈ I

limk→∞

x(k) = x.

Définition 7.13. L’équilibre est localement asymptotiquement stable(ou localement attractif) si il existe η > 0 telle que pour chaque x(0) ∈I ∩ x− η, x+ η

limk→∞

x(k) = x.

7.5.2 Cycles

Définition 7.14. Soit un système discret f, I. Un cycle d’ordre s estun ensemble de s valeurs différentes x(0), . . . , x(s−1) telles que

x(1) = f(x(0)), x(2) = f(x(1)), . . . , x(0) = f(x(s−1))

La quantité s est le période du cycle.

Par exemple le système non linéaire 1/x, (0,+∞) a un seul équilibremais un nombre infini de cycles de période 2.

Exemple Le système à temps discret

x(k + 1) = (2− x(k))(3x(k) + 1)/2

a un cycle d’ordre 3 formé par les valeurs

x(0) = 0, x(1) = 1, x(2) = 2

Page 154: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

148 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

x(k)

x(k+1)

Figure 7.5 – Equilibre x localement asymptotiquement stable : |f ′(x)| < 1.

•Théorème 7.11. Considérons le système discret f, I. La paire x(0), x(1)est un cycle d’ordre 2 ssi x(0) et x(1) sont des points d’équilibre de f2, Imais pas de f, I.

ExempleLe système à temps discret

x(k + 1) = x(k)2 − 1

a un cycle x(0) = 0, x(1) = −1 d’ordre 2.Ceci peut être facilement démontré grâce au théorème précédent puisquex(0) = 0 et x(1) = −1 sont les points d’équilibre de

f2 = (x2 − 1)2 − 1 = x4 − 2x2

mais pas de f .

•Les conditions de stabilité sont énoncées dans les théorèmes qui suivent.

Théorème 7.12. Si x un équilibre du système f, I, où f ∈ C1 alors— |f ′(x)| < 1 ⇒ x est localement asymptotiquement stable (Figure 7.5),— |f ′(x)| > 1 ⇒ x est instable (Figure 7.6),— |f ′(x)| = 1 ne fournit aucune information sur la stabilité de x

Les résultats de stabilité mentionnés ci-dessus peuvent être facilementexpliqués de la manière suivante. Considérons un point fixe x = f(x).Afin d’analyser sa stabilité considérons la trajectoire proche x(k) =x+ δ(k) et demandons-nous comment cette trajectoire va se comporterautour de x

x+ δ(k + 1) = x(k + 1) = f(x+ δ(k)) = f(x) + f ′(x)δ(k) +O(δ(k)2)

Page 155: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.5. SYSTÈMES DISCRETS NON-LINÉAIRES D’ORDRE 1 149

x(0) x(k)

x(k+1)

Figure 7.6 – Equilibre x instable : |f ′(x)| > 1.

Ceci nous amène à la dynamique linéaire

δ(k + 1) = f ′(x)δ(k) +O(δ(k)2)

Si |f ′(x)| < 1, l’équilibre x est asymptotiquement stable puisque δ(k) →0 et x(k) → x pour k → ∞.

D’autres conditions de stabilité utilisent les dérivées d’ordre supérieuresà 1.

Théorème 7.13. Soit x un équilibre du système f, I, où f ∈ C2 etf ′(x) = 1. Alors

— f ′′(x) > 0 ⇒ x est inférieurement asymptotiquement stable et supé-rieurement instable (ou répulsif) (Figure 7.7)

— f ′′(x) < 0 ⇒ x est supérieurement asymptotiquement stable et infé-rieurement instable (ou répulsif) (Figure 7.8)

Théorème 7.14. Si x un équilibre du système f, I, où f ∈ C3 etf ′(x) = 1 et f ′′(x) = 0. Alors

— f ′′′(x) > 0 ⇒ x est instable.— f ′′′(x) < 0 ⇒ x est localement asymptotiquement stable

Théorème 7.15. Si x un équilibre du système f, I, où f ∈ C3 etf(x) = x et f ′(x) = −1. Alors

— 2f ′′′(x)+3 (f ′′(x))2> 0 ⇒ x est localement asymptotiquement stable.

— 2f ′′′(x) + 3 (f ′′(x))2< 0 ⇒ x est instable.

7.5.3 Attracteurs et bifurcations

D’une manière analogue au cas continu nous présentons ici la versiondiscrète de deux notions présentées dans le Chapitre 6.7.

Définition 7.15 (Attracteur). Soit f, I un système discret à un pas etdist(·, ·) la fonction distance definie en (6.15). Un ensemble clos A ⊂ I,

Page 156: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

150 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

x(0) x(k)

x(k+1)

x(0)

Figure 7.7 – Equilibre x inférieurement asymptotiquement stable et supérieure-ment instable : f ′′(x) > 0.

x(0)

x(k+1)

x(0) x(k)

Figure 7.8 – Equilibre x supérieurement asymptotiquement stable et inférieure-ment instable : f ′′(x) < 0.

Page 157: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.6. SYSTÈMES CHAOTIQUES À TEMPS DISCRET 151

x(k)

x(k+1)

Figure 7.9 – a > 1/4 : absence de points d’équilibre.

tel que f(A) = A, est appelé attracteur s’il est le plus petit ensemblepour lequel il existe un η > 0 tel que, ∀x(0) ∈ I : dist(x(0), A) < η

limk→∞

dist(x(k), A) = 0

L’ensemblex(0) ∈ I : lim

k→∞x(k) ∈ A

est appelé le bassin d’attraction.

Considérons un système discret d’ordre 1 où la fonction fa est para-métrique selon un paramètre a. Souvent les phénomènes physiques sontcaractérisés par une dépendance continue du comportement par rapportaux paramètres qui les caractérisent. Dans certains cas, toutefois, nouspouvons assister à de gros changements suite à de petites variations.L’étude des bifurcations vise à déterminer ces valeurs des paramètresqui entraînent de fort changements qualitatifs.

Définition 7.16 (Bifurcation). Soit fa une fonction de transition para-métrique en a ∈ A. La valeur a ∈ A est appelée valeur de bifurcation pourfa, I s’il existe ǫ > 0 tel que la somme du nombre de points d’équilibreet du nombre de points qui appartiennent à des orbites périodiques n’estpas constant dans (a− ǫ, a+ ǫ).

Exemple Considérons fa = x2 + a. Le système n’a pas des pointsfixes pour a > 1/4 (Figure 7.9), il a un point fixe x = 1/2 pour a = 1/4(Figure 7.10) et il a deux points fixes (Figure 7.11)

x(1),(2) =1

2± 1− 4a

2

pour a < 1/4.

7.6 Systèmes chaotiques à temps discret

La notion de chaos déterministe a été introduite dans la Section 6.5 pourle cas continu. Notons qu’à la différence du cas continu, un système àtemps discret peut être chaotique aussi pour n = 1 ou n = 2. Nousprésentons ici la définition proposée dans [20].

Définition 7.17. Un système discret f, I est appelé chaotique si

Page 158: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

152 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

x(k)

x(k+1)

Figure 7.10 – a = 1/4 : un point d’équilibre.

x(k)

x(k+1)

Figure 7.11 – a < 1/4 : deux points d’équilibre.

1. chaque intervalle (a, b) ⊂ I contient au moins un point qui appartientà un cycle

2. pour chaque x, y ∈ I et pour chaque ǫ > 0 il existe un z ∈ I et unk ∈ N tels que

|z − x| < ǫ, |fk(z)− y| < ǫ

3. le système est sensible aux conditions initiales, c.-à-d. qu’il existeδ > 0 tel que pour chaque x ∈ I et ǫ > 0, il existe z ∈ I, k ∈ N telsque

|z − x| < ǫ, |fk(z)− fk(x)| > δ

La deuxième propriété signifie qu’une fois définis deux intervalles, sipetits soient-ils, chacun d’eux contient une trajectoire qui passe parl’autre. La troisième propriété signifie que des petites erreurs dans lamesure de x peuvent entraîner des grandes différences entre la valeurcalculée et la vraie valeur.

Dans la section qui suit nous présentons un exemple très connu de dy-namique chaotique à temps discret.

7.6.1 Fonction logistique discrète

Le système logistique est un système caractérisé par une fonction detransition paramétrique

x(k + 1) = fa(x(k)) = ax(k)(1 − x(k)), a ∈ [0, 4], x ∈ [0, 1]

Page 159: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.6. SYSTÈMES CHAOTIQUES À TEMPS DISCRET 153

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=0.5 xeq

=0

Figure 7.12 – Visualisation en toile d’araignée de la dynamique logistique pour0 ≤ a < 1.

Malgré sa simplicité le système peut afficher des comportements quali-tativement très complexes au fur et à mesure que la valeur du paramètrea augmente.Le graphique de fa est une parabole concave, symétrique par rapport àla droite verticale x = 1/2 et ayant comme origine le point (1/2, a/4).Les points fixes sont donc obtenus en résolvant l’équation

ax(1− x) = x

dont les racines sont l’origine x(1) = 0 et le point x(2) = (a− 1)/a pour1 < a ≤ 4. Notons aussi que les trajectoires ayant comme conditionsinitiales x(0) = 1 et x(0) = 1/a sont constantes pour k ≥ 1.Au fur et à mesure que le paramètre a augmente, le comportement qua-litatif du système change fortement. Afin de l’analyser il est importantde tenir en considération que

f(x) = ax(1 − x), f ′(x) = a− 2ax, f ′′(x) = −2a, f ′′′(x) = 0

Voici les différents cas de figure :

0 ≤ a < 1 : le point x(1) = 0 est le seul équilibre. Puisque |f ′(0)| = a <1, selon le théorème 7.12 cet équilibre est asymptotiquement stable(Figure 7.12).

a = 1 : puisque |f ′(0)| = a = 1 et f ′′(0) = −2a < 0, selon le théo-rème 7.13 l’équilibre x(1) = 0 est supérieurement asymptotiquementstable (Figure 7.13).

1 < a < 4 : nous avons deux points fixes : x(1) = 0 et x(2) = (a− 1)/a.Puisque |f ′(0)| = a > 1 selon le théorème 7.12 le point x(1) = 0 estinstable.Pour ce qui concerne l’équilibre x(2) puisque

|f ′(x(2))| = |2− a|

Page 160: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

154 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=1 xeq

=0

Figure 7.13 – Visualisation en toile d’araignée de la dynamique logistique poura = 1.

selon le théorème 7.12 il est asymptotiquement stable pour 1 < a < 3(Figure 7.14). Pour a = 3, nous avons f ′(x(2)) = −1, f ′′(x(2)) =−2a = −6, f ′′′(x(2) = 0. Puisque

2f ′′′(x(2)) + 3(

f ′′(x(2)))2

> 0

alors selon le théorème 7.14 x(2) est localement asymptotiquementstable (Figure 7.15). L’équilibre x(2) devient instable pour 3 < a ≤ 4.

3 < a ≤ 1 +√6 : un cycle de période 2 apparaît (Figure 7.16). Ceci est

vérifié par le fait que

f2 = a2x(1− x)(1 − ax(1 − x)) = x⇔

x

(

x− a− 1

a

)

(−a3x2 + (a2 + a3)x − (a2 + a)) = 0 ⇔

ax

(

x− a− 1

a

)

(−a2x2 + a(a+ 1)x− (a+ 1)) = 0

a quatre solution distinctes : x(1), x(2) et deux solutions addition-nelles

β =a+ 1 +

(a− 3)(a+ 1)

2a, γ =

a+ 1−√

(a− 3)(a+ 1)

2a

Si 3 < a < 1+√6 le cycle est stable et attractif 1. Si a = 1+

√6 + ǫ

pour un petit ǫ > 0 le cycle n’est plus stable et un cycle d’ordre 4apparaît (Figure 7.17).

1. La derivée de (−a2x2 + a(a + 1)x − (a + 1)) pour x = β et x = γ est égale à −1 poura = 1 +

√6.

Page 161: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.6. SYSTÈMES CHAOTIQUES À TEMPS DISCRET 155

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=1.5 xeq

=0 xeq

=0.33333

Figure 7.14 – Visualisation en toile d’araignée de la dynamique logistique poura = 1.5.

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=3 xeq

=0 xeq

=0.66667

Figure 7.15 – Visualisation en toile d’araignée de la dynamique logistique poura = 3.

Page 162: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

156 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=3.3 xeq

=0 xeq

=0.69697

0 5 10 15 20 250.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

k

x(k)

Figure 7.16 – Visualisation de la dynamique logistique pour a = 3.3 < 1 +√6 :

toile d’araignée (à gauche) et évolution temporelle (à droite). Un cycle d’ordre 2apparaît.

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=3.5 xeq

=0 xeq

=0.71429

0 5 10 15 20 25 300.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

k

x(k)

Figure 7.17 – Visualisation de la dynamique logistique pour a = 3.5 > 1 +√6 :

toile d’araignée (à gauche) et évolution temporelle (à droite). Un cycle d’ordre 4apparaît.

1 +√6 < a < 3.56994... : le comportement devient beaucoup plus com-

plexe (Figure 7.17). et on assiste à un doublement de l’ordre de lapériode jusqu’à a = 3.569945. Dénotons par

a1 = 3, a2 = 1 +√6 ≈ 3.4495, a3 = 3.544090, a4 = 3.5644, . . .

les valeurs de a telles que l’orbite a un periode 2n si an < a ≤ an+1.Feigenbaum [4] a montré que

limn→∞

an − an−1

an+1 − an= 4.6692016...

est une constante (connue sous le nom de constante de Feigenbaum).Cette quantité est une grandeur universelle comme le nombre e oule nombre π ; en effet, elle possède la propriété d’être valable pour denombreuses fonctions f unimodales. Le diagramme de bifurcation dela fonction logistique est montré dans la Figure 7.19. Ce diagrammemontre toutes les valeurs possibles de x en fonction du paramètre aquand les régimes transitoires se sont éteints.

a > 3.56994... : le système devient chaotique (Figure 7.18).

Page 163: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

7.6. SYSTÈMES CHAOTIQUES À TEMPS DISCRET 157

0 0.2 0.4 0.6 0.8 10

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

x(k)

x(k+

1)

a=3.57 xeq

=0 xeq

=0.71989

0 10 20 30 40 50 60 70 800.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1

k

x(k)

Figure 7.18 – Visualisation de la dynamique logistique pour a = 3.57 > 3.569945 :toile d’araignée (à gauche) et évolution temporelle (à droite). Un comportementchaotique apparaît.

0 0.5 1 1.5 2 2.5 3 3.5 40

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0.9

1Bifurcation digram

Figure 7.19 – Diagramme de bifurcation de l’équation logistique. Ce diagramme aété obtenu de manière experimentale par le script MATLAB log_map.m.

Page 164: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

158 CHAPITRE 7. LES SYSTÈMES À TEMPS DISCRET

7.6.2 Exposant de Liapounov

Comme pour le cas continu, l’exposant de Liapounov est une quantitéqui quantifie la taux de chaoticité d’un système discret.Considérons le système (7.13) et deux trajectoires x(k) et x(k) qui ontcomme conditions initiales les deux valeurs proches x(0) et x(0) = x(0)+δ(0). Après une itération les deux trajectoires s’éloignent de la quantité

δ(1) = x(1)− x(1) = f(x(0) + δ(0))− f(x(0)) ≈ δf ′(x(0))

où f ′ est la derivée de f .

Définition 7.18 (Exposant de Liapounov local). [21] L’exposant deLiaponouv local du système (7.13) en x(0) est la quantité

λ = ln|δ(1)||δ(0)| ≈ ln |f ′(x(0))|

Définition 7.19 (Exposant de Liapounov global). [21] L’exposant deLiapounov global du système (7.13) est

L = limN→∞

1

N

N−1∑

k=0

ln

∣∣∣∣

dx(k + 1)

dx(k)

∣∣∣∣= lim

N→∞

1

N

N−1∑

k=0

ln |f ′(x(k))|

L’exposant de Liapounov global mesure le taux exponentiel moyen deséparation de deux trajectoires initialement proches. Il découle que unsystème peut être considéré d’autant plus chaotique que son exposantde Liapounov est plus grand que zéro.Voici quelques estimations de l’exposant de Liapounov obtenues de ma-nière numérique pour des valeurs différentes de a dans l’équation logis-tique :

a 0.5 1 2.1 3 3.5 3.8282 4L -0.69 -0.0003 -2.3025 -0.0002 -0.8720 0.2632 0.6932

Page 165: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 8

Simulation statistique

Jusqu’ici nous n’avons considéré que des modèles déterministes. Toute-fois dans plusieurs applications le manque de connaissance, la procédured’abstraction et les erreurs de mesures reduisent la validité de toute re-présentation déterministe de la réalité. Il est donc important de savoirintégrer l’incertitude dans un modèle dynamique et de savoir en tenircompte pendant la simulation.Le formalisme probabiliste a souvent été utilisé dans les sciences pourreprésenter et manipuler l’incertitude. Toutefois, trouver une solutionanalytique pour un modèle probabiliste est souvent impossible. Dansces cas, la seule manière d’étudier le système est la simulation.Simuler un système avec des paramètres ou des conditions initiales dontl’incertitude est décrite de manière probabiliste demande la capacité degénérer des nombres selon une distribution de probabilité. On définit si-mulation statistique toute méthode qui utilise des séquences des nombresaléatoires (ou random).Dans la suite nous utiliserons la notation en gras pour représenter unevariable aléatoire x, la notation normale x pour dénoter une réalisationde la variable x et la notation x ∼ F pour signifier que F est la distri-bution de probabilité de la variable x. Quelques rappels sur les variablesaléatoires sont disponibles en Appendice B.

8.1 Les méthodes Monte Carlo

Les techniques de simulation Monte Carlo (MC) sont utilisées pour si-muler des systèmes déterministes avec des paramètres ou des conditionsinitiales stochastiques. Le nom a été proposé par les scientifiques duprojet Manhattan lors de la deuxième guerre mondiale et fait allusionaux jeux de hasard pratiqués dans les casinos de Monaco. Parmi lespionniers des méthodes MC nous retrouvons E. Fermi, J. Neumann, S.Ulam, N. Metropolis. Les méthodes MC sont aujourd’hui utilisées poursimuler des phénomènes physiques complexes dans plusieurs domainesscientifiques et appliqués : radioactivité, physique des hautes énergies,réseaux, économétrie, logistique.La technique de simulation Monte Carlo s’appuie sur l’échantillonnagedes distributions des quantités incertaines. Elle peut être visualisée commeune boite noire (Figure 8.1) où les entrées sont des paramètres et/oudes conditions initiales incertaines et les sorties représentent les quanti-tés analysées. La boite représente un simulateur déterministe s(·), c.-à-d.

159

Page 166: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

160 CHAPITRE 8. SIMULATION STATISTIQUE

?

mésure 1

paramètre 1

mésure 2

2

11.5

−2

paramètre 2

paramètre 3

Simulateur

?

Figure 8.1 – Schéma de simulation Monte Carlo.

tout algorithme, programme ou fonction qui simule un phénomène et quirenvoie pour des valeurs identiques en entrée toujours les même valeursen sortie. Par exemple si nous voulons simuler le trafic à un carrefour,le simulateur pourrait avoir comme entrées le débit x1 de voitures quiempruntent le carrefour et la durée x2 du feu vert et comme sortie ledébit y de voitures qui quittent le carrefour. Le simulateur pourrait êtreune fonction déterministe y = s(x1, x2). Si x2 est fixe et le débit enentrée suit une certaine distribution x1 il pourrait être intéressant dedéterminer la distribution (ou la moyenne) de la variable y.

La simulation MC s’effectue en envoyant en entrée un flux de nombrespseudo-aléatoires (c.-à-d. générés par l’ordinateur selon la distributiondes entrées) et en collectant un flux de nombres générés par le simula-teur en sortie. L’estimation de la quantité au quelle on s’intéresse (parexemple la moyenne de y) est obtenue en analysant la sortie.

Une méthode Monte Carlo s’articule donc en trois étapes (i) l’échan-tillonnage des quantités aléatoires x en entrée, (ii) la répétition d’unesimulation déterministe s(x) (trial) pour chaque quantité x échantillon-née et (iii) l’agrégation des résultats pour caractériser la distribution dey.

Exemple Supposons que nous avons une population dont la décrois-sance est décrite par le système continu linéaire de premier ordre (Sec-tion 5.5)

x = Kx, x(0) = 10 (8.1)

où la quantité K < 0 n’est pas connue de manière exacte mais peut êtredécrite par une distribution de probabilité uniforme K ∼ U(−4,−2).Puisque K est aléatoire, la quantité x(t) le sera aussi.

Supposons que nous voulons répondre aux questions suivantes : Quelleforme aura la distribution de la valeur x(t) pour t = 2 ? Sera-t-elleencore une distribution uniforme ? Quelle moyenne et/ou variance a-t-elle ? Quelle probabilité nous avons que x(t) soit entre .1 et .2 ?

Un histogramme des valeurs x(2) obtenues par simulation MC (1000réalisation) est montré dans la Figure 8.2.

Page 167: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

8.1. LES MÉTHODES MONTE CARLO 161

0 0.05 0.1 0.15 0.20

50

100

150

200

250

300

350

400

450

500Histogramme de x(2)

Figure 8.2 – Histogramme des valeurs x(2) obtenues par simulation MC du sys-tème (8.1). La simulation a utilisée 1000 réalisations de la variable K. Script MAT-LAB mc.m.

•La simulation Monte Carlo peut être utilisée chaque fois que le compor-tement d’un système peut être décrit par l’évolution d’une densité deprobabilité (par exemple la densité de x(t) dans l’exemple précédent). Ilest intéressant de remarquer que parfois même des problèmes détermi-nistes peuvent être résolus par une approche stochastique. Un exempleest le calcul de la surface d’un lac.

Calcul surface d’un lac Considérons une zone rectangulaire oucarrée dont la surface A terrain est connue. Au sein de cette aire se trouveun lac dont la superficie A lac est inconnue.

Pour trouver l’aire du lac, nous demandons à un artilleur expert de tirerN coups de canon de manière aléatoire et uniforme sur cette zone. Nouscomptons ensuite le nombre N0 de boulets qui sont restés sur le terrain.On peut ainsi déterminer le nombre de boulets qui sont tombés dans lelac : N −N0. Il suffit ensuite d’établir un rapport entre les valeurs :

A terrain

A lac=

N

N −N0=⇒ A lac =

(N −N0)

N·A terrain

Par exemple, si le terrain fait 1000 m2, que l’artilleur tire N = 500boulets et que N0 = 400 projectiles sont restés sur le terrain le lac alorsla superficie du plan d’eau est de : 100/500∗1000 = 200 m2. Il est intuitifde supposer que la qualité de l’estimation s’améliore en augmentant lenombre de tirs et en s’assurant que l’artilleur se comporte de manièrevraiment aléatoire et uniforme. Nous verrons dans la suite ce que ceciveut dire.

Page 168: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

162 CHAPITRE 8. SIMULATION STATISTIQUE

•Voici les composantes principales d’un algorithme Monte Carlo [9] :

Description probabiliste : un modèle stochastique du problème (parexemple l’équation (8.1) avec la distribution de K).

Générateur uniforme de nombrés aléatoires : un générateur de nombresaléatoires uniformément distribués sur l’intervalle [0, 1].

Loi d’échantillonnage : une technique pour échantillonner une dis-tribution de probabilité générique.

Simulateur : un simulateur déterministe qui renvoie la sortie quandtous les paramètres en entrée sont connus.

Collecteur des sorties : structure de données pour stocker tous lessorties de la simulation.

Analyseur de la sortie : ensemble de techniques statistiques qui per-mettent de tirer des conclusions à partir des données générées par lesimulateur.

Estimateur d’erreur : ceci permet d’associer à chaque quantité esti-mée à partir de l’output une indication sur l’erreur ou sur la confiance(par exemple en fonction du nombre de répétitions).

Notons que la méthode MC est souvent considérée comme une méthodeen dernier ressort puisque elle demande des ressources computation-nelles assez conséquentes.

8.1.1 Le problème Monte Carlo

Considérons une variable aléatoire x ∈ Rn de dimensionnalité n qui

représente l’entrée d’un simulateur MC et une variable y = s(x) qui enreprésentent la sortie. Les méthodes Monte Carlo essaient de résoudreles deux problèmes suivants

Echantillonnage : comment générer une série d’échantillons indépen-dants xi, i = 1, . . . , N , qui soient tous tirés à partir de la mêmedensité de probabilité px(x).

Estimation : étant donnée la fonction s(·) et la variable aléatoire x,comment estimer quelques propriétés de la distribution de y qui re-présente la sortie du système. Typiquement la principale quantitéd’intérêt est l’espérance θ

θ = E[s(x)] =

s(x)p(x)dx

La solution du premier problème rend possible la solution du deuxième.L’estimation de θ est obtenue à partir des N échantillons xi par

θ =1

N

N∑

i=1

s(xi)

Il est possible de montrer que cet estimateur a des propriétés intéres-santes d’un point de vue statistique [1]. Il est non polarisé (en anglaisunbiased), c.-à-d.

E[θ] = θ

et sa variance est

Var[

θ

]

=σ2

N

Page 169: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

8.2. QU’EST-CE QU’UN NOMBRE ALÉATOIRE? 163

où σ2 est la variance de s(x). Nous remarquons que la variance de θ estune mesure de la precision de l’estimation de θ et que cette quantité estindépendante de la dimensionnalité n de l’entrée x. La propriété la plusimportante des méthodes MC est donc que la précision de l’estimationrenvoyée par Monte Carlo est indépendante de la dimensionnalité n dela variable x en entrée.Ceci signifie, que indépendamment de la dimensionnalité de x quelquesdizaines d’échantillons de x pourraient être suffisantes pour estimer θd’une manière satisfaisante.

8.2 Qu’est-ce qu’un nombre aléatoire ?

La simulation Monte Carlo s’appuie sur la capacité à générer des nombresaléatoires. Mais avant de se demander comment générer un nombre aléa-toire il est nécessaire de se poser quelques questions méthodologiques dugenre— Qu’est-ce qu’une séquence de nombres aléatoires ?— Un nombre aléatoire peut-il être généré par une machine détermi-

niste, comme un ordinateur ?— Est-il possible de générer des séquences vraiment aléatoires ?Il n’existe pas une réponse universellement partagée à ce genre de ques-tions. A ce propos les deux citations suivantes peuvent nous aider dansla reflexion :— The generation of random numbers is too important to be left to

chance. (Robert R. Coveyou (1969))— Anyone who considers arithmetical methods of producing random di-

gits, is, of course, in a state of sin (J. von Neuman (1951)).Donc, si d’un coté la maîtrise du processus de génération aléatoire estconsidérée comme essentielle pour la modélisation, de l’autre coté celle-cisemble en contradiction avec la notion même d’aléatoire. Nous revenonsdonc à la question principale : qu’est-ce que un nombre aléatoire (en an-glais randomness) ? Plusieurs définitions de séquence aléatoire existenten littérature. Voici les deux définitions des nombres aléatoires que nousretrouvons dans le livre de Papoulis [15].

Définition conceptuelle : une séquence de nombres xi est appeléealéatoire (random) si elle est égale à la séquence d’échantillons d’unevariable aléatoire x.

Définition empirique : une séquence de nombres xi est appelée aléa-toire si ses propriétés statistiques sont les même que les propriétésd’une séquence de nombres obtenues dans une expérience aléatoire.

Si la définition conceptuelle apparaît plutôt comme une tautologie, la dé-finition empirique suggère une manière pratique et opérationnelle pourrépondre à la question. En d’autres termes une séquence de nombresest aléatoire si elle partage toutes les propriétés mesurables d’une sé-quence aléatoire. Pour qu’une séquence puisse être considérée commealéatoire, ce qui est important n’est donc pas de l’être vraiment maisde paraître comme telle. L’atout de la définition empirique est que larandomness d’une séquence peut être maintenant déterminée par des ou-tils statistiques et algorithmiques conventionnels (par exemple des testsd’hypothèse).Il faut maintenant définir quelles conditions nécessaires doivent être sa-tisfaites par une séquence de nombres pour qu’elle puisse être considérée

Page 170: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

164 CHAPITRE 8. SIMULATION STATISTIQUE

comme aléatoire. Nous commençons par nous occuper de la distributionuniforme. Considérons une séquence de N nombres tirés à partir d’unedistribution uniforme sur [0, 1]. Cette séquence de nombres doit satisfairedeux propriétés :

1. uniformité, c.-à-d. qu’ils sont repartis uniformément sur [0, 1].

2. indépendance, c.-à-d. que la ième valeur xi ne doit avoir aucunerelation ou dépendance par rapport à la valeur xi−1 ou plus généra-lement avec les autres valeurs xj , j = 1, . . . , i− 1, i+ 1, . . . , N .

Il s’ensuit que

1. Si l’intervalle [0, 1] est reparti en n sous-intervalles de la même taille,alors le nombre d’observations attendu dans chaque intervalle estN/n.

2. La probabilité d’observer une valeur dans un certain intervalle estindépendante des valeurs tirées à l’avance.

Mais comment obtenir et tester ces deux propriétés ?

8.3 Génération des nombres aléatoires

Des séquences de nombres aléatoires qui satisfont aux propriétés men-tionnées auparavant peuvent être générés par les manières suivantes.

Observation d’expériences de nature aléatoire : par exemple— mesurer un dispositif physique qui présente certaines propriétés

stochastiques (bruit d’une résistance, diode, compteur Geiger),— observer les lancement d’une pièce équilibrée afin de générer une

séquence aléatoire de 0 (pile) et 1 (face),— extraire des billes d’une urne (loterie),— utiliser les chiffres décimaux de π.

Generation par ordinateur : ceux ci sont appelés nombres pseudo-aléatoires

L’approche pseudo-aléatoire est souvent préférable puisqu’elle est plusrapide, plus facilement gérable et permet la contrôlabilité et la répétiti-vité de l’expérience si nécessaire (par exemple dans le but de déboguerun programme de simulation).

8.3.1 Génération des nombres pseudo-aléatoires

Nous nous focaliserons dorénavant sur les méthodes informatiques pourgénérer à l’aide de l’ordinateur des échantillons d’une distribution deprobabilité Fx(·). Un bon générateur de nombres aléatoires devraientsatisfaire les critères suivants :

Distribution correcte. Les points devraient être distribués de ma-nière conforme à la distribution échantillonnée. De plus, aucune cor-rélation ne devrait être observable entre les nombres générés séquen-tiellement.

Longue période. Comme un générateur de nombres aléatoires est exé-cuté sur un ordinateur déterministe, il devient de facto un algorithmedéterministe. Ses sorties sont inévitablement entachées d’une carac-téristique absente d’une vraie suite aléatoire : la périodicité. Avecdes ressources limitées (mémoire, nombre de registres, etc.), le gé-nérateur retrouvera le même état interne au moins deux fois. Afin

Page 171: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

8.3. GÉNÉRATION DES NOMBRES ALÉATOIRES 165

d’éviter des corrélations non désirées, la quantité de nombres généréedevrait toujours être inférieure à cette période.

Répétabilité. Afin de faciliter l’utilisation et le testing de code quis’appuie sur la génération des nombres aléatoires il est nécessaire depouvoir reproduire une séquence déjà obtenue. Il serait égalementbien de pouvoir regénérer une partie de la séquence sans recommen-cer du début. A cette fin il est nécessaire d’associer un état (graineou seed en anglais) au générateur afin de pouvoir rétablir une confi-guration déjà vue.

Longues séquences non corrélées. Pour des simulations de longuesdurées il est important de pouvoir exécuter plusieurs sous-simulationsindépendantes et de pouvoir les recombiner dans la suite en s’assu-rant que la propriété d’indépendance statistique soit satisfaite.

Portabilité. Ceci ne signifie pas seulement que le code devrait êtreportable (par exemple implémenté en un langage haut niveau commeFortran ou C) mais aussi que il devrait générer exactement le mêmeséquence sur des machines différentes.

Efficacité. La génération d’une séquence de nombre pseudo-aléatoiresne devrait pas demander de ressources de calcul excessives. La plu-part des langages de programmation contiennent aujourd’hui un gé-nérateur de nombres pseudo-aléatoires.

A l’état actuel, il n’existe pas d’algorithme capable de générer une sé-quence aléatoire pour une quelconque distribution Fx(·). La procédureutilisée est plutôt la suivante : on commence par générer une séquence denombres aléatoires uniformes et après on applique une transformationpour obtenir une séquence qui appartient à la distribution désirée Fx(·).Nous commencerons donc par présenter les techniques pour générer desnombres aléatoires uniformes.

8.3.2 La méthode de Von Neumann

En 1946, John von Neumann propose un générateur pseudo-aléatoireconnu sous le nom de la méthode middle-square (carré médian). Trèssimple, elle consiste à prendre un nombre, à l’élever au carré et à prendreles chiffres du milieu comme sortie. Celle-ci est utilisée comme grainepour l’itération suivante.Exemple : prenons le nombre 1111. Les étapes de l’algorithme sont :

1. 11112 = 1234321

2. on récupère les chiffres du milieu : 3432. C’est la sortie du générateur.

3. 34322 = 11778624

4. on récupère les chiffres du milieu : 7786, et ainsi de suite.

La méthode a surtout une importance historique. La nature aléatoire dela séquence n’est pas toujours garantie et la qualité des sorties dépendde la graine. Par exemple l’état 0000 produit toujours la même séquenceet constitue un état absorbant de l’algorithme.

8.3.3 Générateur congruentiel linéaire

Le générateur congruentiel linéaire (en anglais linear congruential ge-nerator (LCG)) a été proposé en 1951 par Lehmer pour générer desnombres pseudo-aléatoires selon une distribution uniforme U(0, 1).

Page 172: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

166 CHAPITRE 8. SIMULATION STATISTIQUE

Un générateur LCG génère une séquence zi de nombres entiers non né-gatifs grâce à la formule de récurrence (aussi connue sous le nom d’algorithme de Lehmer)

zi = (azi−1 + c) mod m i ≥ 1

où a, c sont des entiers, m est un nombre premier très grand et moddénote le reste de la division entière (par exemple 15 mod 4 = 3). Sic = 0 le générateur est appelé générateur multiplicatif. La valeur initialez0 est appelée la graine (ou seed) de la séquence.La suite ui = zi

m ∈ [0, 1] est la suite de nombres pseudo-aléatoires quisont renvoyé par le générateur LCG.Notons que la séquence de nombres entiers zi prend ses valeurs entre 0et m− 1 ; il s’ensuit que si nous exécutons l’itération pour m étapes, aumoins deux valeurs zi (et donc deux valeurs ui) seront identiques. Laséquence est donc périodique pour N > m avec la période m0 ≤ m. si lapériode m0 = m alors on dit que le générateur est à période maximale.On pourrait donc faire l’objection que une séquence périodique ne peutpas être une séquence aléatoire. Toutefois, pour des applications où lenombre de ui généré est inférieur à m0, la périodicité n’a aucun effet.Notons toutefois que seulement quelques jeux de paramètres permettentla génération d’une séquence avec de bonnes propriétés statistiques. Deschoix communs pour les paramètre du LCG sont : a = 75, c = 0 etm = 231 − 1.

8.3.4 Tests de randomness

Supposons que nous avons généré N nombres pseudo-aléatoires xi parun générateur uniforme. Voici quelques tests qui sont communémentutilisés pour juger de la nature aléatoire de la série de données.

Test des moments : si x ∼ U(0, 1) alors les trois premiers momentsdevraient être 1/2, 1/3 et 1/4, respectivement.

Test chi-carré : supposons de diviser l’intervalle [0, 1] en s sous-intervallesIj de taille égale. Soit

cj = #xi ∈ Ij, j = 1, . . . , s

la quantité de valeurs observée à l’intérieur du jème intervalle. Laquantité

C =s

N

s∑

j=1

(

cj −N

s

)2

est une mesure de concordance entre les valeurs observées et les va-leurs attendues. Si les nombres avaient été généré par une variablealéatoire uniforme alors la quantité C devrait être distribuée commeune variable χ2 avec s− 1 degrés de liberté.

Goodness of fit : ceci calcule l’écart maximal

KN = supx

|Fx(x)− Fx(x)|

entre la fonction de répartition empirique

Fx(x) =#xi ≤ x

N

Page 173: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

8.3. GÉNÉRATION DES NOMBRES ALÉATOIRES 167

et la fonction de répartition attendue Fx. Si cet écart dépasse unecertaine valeur (definie par le test de Kolmogorov-Smirnov) on diraque la séquence n’est pas uniformément aleatoire.

D’autres tests souvent utilisés mais dont nous ne nous parlerons pas sontle test d’autocorrélation, le test du maximum et le test des séquencesbinaires. Le lecteur intéressé pourra consulter à ce propos les ouvrages [5,12].

8.3.5 La méthode de la transformation inverse

Cette section traite de la génération de nombres aléatoires non uniformesà partir d’une séquence de nombres aléatoires uniformes. Considéronsune variable continue x ∈ X de densité px(x). Définissons une nouvellevariable aléatoire y ∈ Y de telle sorte que y = y(x) soit une fonctionmonotone non décroissante. Que pouvons nous dire sur la densité py(y) ?Selon la définition de densité de probabilité nous avons

px(x)dx = py(y)dy

et donc

py(y) =px(x)

dydx

si y(x) est une fonction monotone non décroissante. Prenons commefonction y(x) la fonction suivante

y = y(x) = F (x) = Fx(x)

où Fx : R → [0, 1] est la fonction de répartition de x. Puisque Fx(x) estune fonction monotone non décroissante et

dy

dx=dFx(x)

dx= px(x)

Nous obtenons

py(y) = 1

En d’autres termes la variable y = Fx(x) est toujours distribuée demanière uniforme sur [0, 1] pour n’importe quelle densité de probabilitépx(x). Ce résultat a un rôle clé pour la génération d’échantillons à partirde distributions autres que l’uniforme.

La méthode de la transformation inverse s’appuie sur la propriété demonotonie non décroissante de la fonction de répartition Fx(·) et sur lapropriété y = Fx(x) ∼ U(0, 1).Soit x une variable aléatoire avec fonction de répartition Fx(x). La mé-thode de la transformation inverse d’échantillonnage de la variable x

effectue N fois les deux opérations suivantes

1. un nombre ui est tiré à partir de la distribution U(0, 1)2. la valeur xi = F−1(ui) est calculée (Figure 8.3).

Suite à la propriété de la tranformation inverse la sequence xi est distri-buée selon la distribution Fx. Cette règle connue comme la Golden Rulefor Sampling a été proposée par von Neumann en 1947.

Page 174: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

168 CHAPITRE 8. SIMULATION STATISTIQUE

2 x

F(x)

1

u1

x1

u2

x

Figure 8.3 – La méthode de la transformation inverse.

8.3.5.1 Exemples de transformation inverse

Distribution uniforme Soit x ∼ U(a, b) une variable aléatoire distri-buée de manière uniforme entre a et b ≥ a

Fx(x) =x− a

b− a

Si u est un échantillon de U(0, 1) alors une réalisation de U(a, b) estobtenue selon la méthode inverse par

x− a

b− a= u⇔ x = a+ (b− a)u

Distribution exponentielle . Soit x ∼ E(λ) et

Fx(x) = 1− e−λx

Si u est une réalisation de la variable uniforme U(0, 1) alors uneréalisation de E(λ) est obtenue par

1− e−λx = u⇔ x = − 1

λln(1− u)

Il est important, toutefois, de remarquer que pour plusieurs distributions(par exemple la distribution Normale) il n’existe pas de forme analytiquede l’inverse de la fonction de répartition. Des méthodes alternatives oudes méthodes numériques (par exemple basées sur l’interpolation [2])doivent être appliquées dans ces cas.

8.3.6 Méthode de rejet

Pour des distributions difficiles à gérer d’un point vue analytique, vonNeumann a proposé en 1951 un algorithme très général et indirect connusous le nom de méthode de rejet. Cet algorithme permet d’échantillonner

Page 175: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

8.3. GÉNÉRATION DES NOMBRES ALÉATOIRES 169

une fonction px(x) de manière indirecte en passant par une densité deprobabilité h(x) telle que

φ(x) = Ch(x) ≥ p(x), ∀x ∈ X

.Ecrivons p(x) sous la forme

p(x) = Ch(x)g(x) = φ(x)g(x)

0 < g(x) =p(x)

φ(x)=

p(x)

Ch(x)≤ 1

Supposons maintenant que nous savons comment échantillonner la den-sité h(x). La méthode est composée des étapes suivantes

1. Tirer un échantillon u selon la distribution U(0, 1)2. Tirer un échantillon y selon la distribution h(y), indépendante de u.

3. Si u ≤ g(y) = p(y)Ch(y) , la méthode renvoie x = y, autrement elle rejette

y et passe à l’étape 1.

Il est possible de montrer que la séquence générée suit la distributioncible px(x).

Exemple Supposons que nous voulons générer des nombres à partirde la densité de probabilité suivante

p(x) =

2x, 0 ≤ x ≤ 1

0, ailleurs

par la méthode de rejet. Nous fixons h(x) = U(0, 1) et C = 2. Il s’ensuitque

φ(x) = Ch(x) ≥ p(x) ∀x ∈ X

et g(x) = 2x2 = x. L’algorithme de rejet effectue les étapes suivantes

1. Tirer un échantillon u selon la distribution U(0, 1)2. Tirer un échantillon y selon la distribution U(0, 1), indépendante deu.

3. Si u ≤ g(y) = y, la méthode renvoie x = y, autrement elle rejette yet passe à l’étape 1.

Page 176: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

170 CHAPITRE 8. SIMULATION STATISTIQUE

Page 177: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Chapitre 9

Simulation à événements

discrets

La simulation est actuellement le seul outil disponible lorsqu’on désireétudier et comprendre le fonctionnement d’un système complexe quel’on ne parvient pas à formaliser par des méthodes analytiques. Ceciest souvent le cas des procédés industriels (par exemple la productiond’une voiture) et/ou logistiques (par exemple le chargement d’un navirecontainer). Ces systèmes sont mieux représentés par une suite d’événe-ments (par exemple dépôt du châssis de la voiture sur un tapis roulantou arrivée du navire au port) que par un système d’équations.La simulation à événements discrets est la simulation d’un système dontl’état ne peut changer que lors d’instants temporels distincts. En termesmathématiques nous pouvons dire que l’ensemble d’instants temporelsaux quels le système peut changer est dénombrable. Un événement est lacirconstance (entrée) qui permet au système de changer d’état. Notonsque— en absence d’événements l’état resterait indéfiniment le même, ce qui

n’était pas forcement le cas dans le systèmes vus jusqu’ici.— un événement pourrait ne pas déclencher un changement d’état.En théorie, une simulation à événements discrets pourrait être menéede manière manuelle. En pratique, pour des systèmes avec un espace d’état de grand taille et avec un large ensemble d’événements, l’utilisationde l’ordinateur est incontournable.

Certains systèmes sont naturellement concevables comme étant discrets :c’est le cas d’un bureau de banque, d’un terminal maritime ou d’unatelier de production.

9.1 Les files d’attente

Un exemple classique de système à événements discrets est une file d’at-tente, c.-à-d. un modèle qui représente l’accès séquentiel d’un ensembled’utilisateurs (par exemple les clients) à un nombre limité de ressources(par exemple les guichets d’une banque). Le terme client doit être en-tendu de manière générique et pourrait être utilisé pour dénoter despersonnes, des machines, des voitures, des patients, des paquets des don-nées, des emails, des containers. Ceci est valable aussi pour le terme ser-vice qui pourrait être utilisé pour dénoter des employés, des dépanneurs,

171

Page 178: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

172 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

des mécaniciens, des docteurs, des routers, des systèmes anti-spam, desgrues. On appelle clients dans la file l’ensemble des clients qui attendentd’être servis, à l’exclusion de celui qui est en train de se faire servir. Onnomme clients dans le système l’ensemble des clients qui font la queue,y compris celui qui se fait servir.

Dans la conception d’une file d’attente, il est important de trouver unbon compromis entre le nombre de services, l’utilisation des services etla satisfaction des clients. La théorie des files d’attente et/ou la simula-tion peuvent être utilisées pour prédire la performance du système (parexemple la moyenne du temps d’attente d’un client) en fonction des pa-ramètres (par exemple le nombre de services, la loi des arrivées, la loides services) qui sont sous le contrôle du concepteur du système.

Pour des systèmes de petite taille et pour certaines distributions de pro-babilité, les mesures de performance peuvent être calculées de manièreanalytique. Le recours à la simulation devient incontournable quand lacomplexité et le réalisme du système augmente.

9.1.1 Propriétés d’une file d’attente

La population des clients peut être de taille finie ou infinie (par exempleles clients d’un restaurant). Dans une population de taille infinie, la loides arrivées ne dépend pas du nombre de clients qui ont déjà été servispar le système.

La capacité d’un système peut être finie (par exemple le nombre desvoitures en attente dans une station d’essence) ou infinie (par exemplele nombre de spectateurs en attente d’un concert).

Le temps entre deux arrivées peut être constant ou aléatoire. Un modèlecouramment utilisé pour modéliser une loi aléatoire des arrivées est leprocessus de Poisson (Section B.5). Si les arrivées suivent le modèlesde Poisson et λt est le nombre de clients arrivés pendant un intervallede taille t alors la distribution de la variable ai qui dénote le tempsentre l’arrivée du client i − 1 et du client i suit la loi exponentielleavec moyenne 1/λ. Notons que λ peut être défini par l’utilisateur dusimulateur ou estimé sur la base de mesures sur le système réel.

De la même manière le temps de service peut être constant ou suivreune distribution de probabilité. Notons que des distributions autre que ladistribution de Poisson pourraient bien représenter les temps d’arrivéeet les temps de service. Si le simulateur doit émuler un système déjàexistant, l’utilisation de méthodes d’estimation et d’inférence statistiquesur la base de données mesurées est donc envisageable.

De plus nous pouvons avoir

1. différents comportements des clients dans la file d’attente (par exemplepartir sans rentrer dans la file d’attente si celle-ci est trop longue,partir après un certain temps d’attente dans la file ou changer defile).

2. différentes façons de gérer la file : FIFO, LIFO, SIRO (Service InRandom Order), SPT (Shortest Processing Time first), PR (serviceaccording to PRiority).

Les nombre des services peut être égal à 1, à un nombre fini ou à unnombre infini (self-service).

Page 179: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.2. SIMULATEURS À ÉVÉNEMENTS DISCRETS 173

9.1.2 Notation des files d’attente

Vu la diversité des configurations possibles des files d’attente, il existeune notation standard [9] pour caractériser une file d’attente qui se basesur le format

A/B/c/Ns/K

où— A ∈ M,D,Ek, PH,H,G dénote la distribution du temps entre

deux arrivées consécutives. Notons que A =M signifie que la distri-bution est exponentielle alors que A = G signifie que la distributionest générique.

— B dénote la distribution du temps de service— c représente le nombre de services— Ns dénote la capacité du système— K représente la taille de la population des clients.Par exemple M/M/S/∞/∞ dénote une file d’attente FIFO avec unepopulation infinie et S services où les temps de service et les temps entredeux arrivées suivent une distribution exponentielle. Nous ne traiteronsque le cas simple M/M/1/∞/∞ abregé sous la forme M/M/1.

9.1.3 Résultats analytiques M/M/1

Dans le cas de quelques files d’attente, notamment M/M/1, les valeursdes indicateurs de performance peuvent être obtenus de manière analy-tique sans passer par la simulation.Si le temps entre deux arrivées suit une distribution exponentielle ayantmoyenne 1/λ et le temps de service suit une distribution exponentielleayant moyenne 1/µ, avec µ > λ il est possible de montrer que pourn→ ∞ la file d’attente atteint un état d’équilibre statistique, où

p(Q(t) = j) = pj

c.-à-d. la probabilité qu’il y ait j clients en attente est indépendante det.Si nous définissons la quantité ρ = λ/µ il est possible de montrer aussique pour n→ ∞ [12] :— le nombre moyen de clients dans le système est L = ρ

1−ρ

— le nombre moyen de clients en attente est Lq =ρ2

1−ρ

— le temps moyen d’attente dans le système est w = 1µ−λ . Cette quan-

tité donne une information sur la performance du point de vue desutilisateurs.

— le temps moyen d’attente dans la file est wq = ρ(1−ρ)µ

— la densité de probabilité du temps d’attente t dans la file est pq(t) =ρ(µ− λ)e−t(µ−λ)

— la densité de probabilité du temps t dans le système est p(t) = (µ−λ)e−t(µ−λ)

9.2 Simulateurs à événements discrets

La programmation d’un simulateur à événements discrets est souventune tâche difficile parce que c’est un exemple de programmation en pa-rallèle où il faut simuler plusieurs activités concurrentes. Pour cette rai-son, dans la communauté informatique, plusieurs langage de simulation

Page 180: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

174 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

ont été proposés afin de permettre au programmeur de mieux gérer lacomplexité du problème. Un exemple est le langage SIMULA, inventé en1960, qui a été parmi les premiers langages à utiliser la notion d’orientéobjet.La tendance actuelle est toutefois de créer des librairies pour la simula-tion qui peuvent être exploitées à l’intérieur de programmes codés avecdes langages communs (par exemple C++). Il est donc plus instructif deparler de paradigmes de programmation pour la simulation plutôt quedes langages de programmation ad-hoc.Avant d’introduire les approches les plus communes dans la program-mation de simulateurs voici un peu de nomenclature :

Entité : un objet qui demande une représentation explicite dans le mo-dèle, par exemple, un serveur, un client ou une machine.

Attribut : un descripteur des propriétés d’une entité, par exemple l’étatactif ou inactif d’une ressource.

Evénement : instant où il se produit quelque chose dans le système(par exemple un changement d’état).

Processus : suite temporelle d’événements.

Activité : un couple d’événements, l’un qui démarre et l’autre qui ter-mine une opération qui change l’état d’un système.

Deux approches sont communément utilisées pour programmer un si-mulateur d’un système à événements discrets :

approche par événements ou event-based : on se focalise sur la suited’événements (par exemple les arrivées et les départs) indépendam-ment des entités concernées. Cette représentation illustre le point devue du système.

approche par processus ou process-based : on met l’accent sur lesdifférentes entités (par exemple client, serveur) et sur leur interac-tions. Cette représentation illustre le point de vue d’une entité.

Il est possible de résumer la différence de la manière suivante [13] : l’ap-proche par événements représente de manière explicite les événementsen définissant ce qui arrive au système une fois qu’un événement a lieualors que l’approche par processus représente de manière implicite lesévénements en définissant ce qui arrive à une entité une fois qu’elleinteragit avec le système.

9.2.1 Approche par événements (event-based)

Cette approche demande d’abord la définition de tous les événementsqui peuvent engendrer des changements d’état du système (arrivée d’unclient, sortie d’un client, début et fin du service).Une fois dressée la liste de tous les événements jugés pertinents par rap-port aux objectifs de l’étude, il faut associer à chaque événement un sous-programme informatique qui gère les changements d’état et la prévisiondu nouvel événement. De plus il est nécessaire de prévoir un échéancierqui liste toutes les occurrences passées et futures des événements et unordonnanceur (en anglais scheduler) qui active les traitements associéesaux événements au fur et à mesure qu’ils apparaissent.En pratique l’ordonnanceur est implémentée par une boucle qui

1. sélectionne et enlève le prochaine événement dans la liste,

Page 181: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.2. SIMULATEURS À ÉVÉNEMENTS DISCRETS 175

2. met à jour le temps du système,

3. donne le contrôle à une sous-routine qui exécute la liste des modifi-cations liées à l’événement,

4. éventuellement, met à jour la liste avec des événements futurs dansl’échéancier.

Le plus grand soin doit être porté à la gestion des événements simultanés,en s’appuyant sur le bon sens et sur les règles de fonctionnement dusystème.

L’approche par événements peut être implémentée par tout langage im-pératif (par exemple MATLAB) où il est possible de définir une listechaînée et qui contient des générateurs de nombre aléatoires. Toutefois,surtout s’il existe plusieurs types d’événements, l’implémentation pour-rait être rendue plus aisée par l’existence d’une structure de données dugenre priority queue.

Les avantages de l’approche par événements peuvent être résumés ainsi :— Facilité d’implémentation.— Possibilité d’utiliser des langages general-purpose.— Vitesse d’exécution.— Flexibilité. Il est par exemple facile d’implémenter un système où un

événement qui en déclenche deux autres.

9.2.2 Approche par processus (process-based)

Cette approche associe un processus à chaque entité (par exemple unclient de la banque) et modélise le système comme un ensemble d’en-tités interagissant. Un processus décrit le fonctionnement d’un élémentactif du système étudié, passant par des phases d’inactivité et d’acti-vité. Un exemple de processus est le processus client qui arrive, se meten attente, est réveillé par la mise à disposition d’un guichet, attend letemps d’exécution de l’opération et puis s’en va du système. Comme lesprocessus interagissent entre eux, ils doivent pouvoir s’activer à une cer-taine date ou rendre passifs d’autres processus, y compris eux-mêmes.Un processus peut se trouver dans differents états [5] :— terminé : le processus est mort puisqu’il a exécuté tout son code.— passif : le processus attend dans une file ou il est en sommeil.— suspendu : l’activation du processus est prévue à une certaine date— actif : le processus est en cours d’exécution.Le paradigme orienté-objet est souvent utilisé pour modéliser une re-présentation par processus du système. La représentation par processusest souvent plus conviviale et plus compacte, puisqu’elle permet de dé-composer un problème de simulation en termes d’entités ou d’agents.Ce style de programmation est rendu possible par le fait que plusieurssystèmes d’exploitation mettent en oeuvre la notion de threads (ou pro-cessus légers) (par exemple pthreads en Unix, Java threads, Windowsthreads). Du point de vue de l’utilisateur ces exécutions semblent sedérouler en parallèle.

C++SIM 1 est une librairie C++ pour la simulation process-based. SimPy 2

est un package Python qui permet de créer très facilement des modèlesde systèmes à événements discrets.

1. http://cxxsim.ncl.ac.uk/

2. http://simpy.sourceforge.net/

Page 182: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

176 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

Dans le reste du chapitre nous ne traiterons que de l’approche par événe-ments. Nous renvoyons toutefois l’étudiant aux exercices pratiques pourun exemple d’approche par processus.

9.3 Simulateur event-based

Voici les composantes essentielles d’un programme informatique qui im-plémente un simulateur à temps discret [9] selon l’approche par événe-ments :— Etat du système : ensemble de variables nécessaires et suffisantes

pour décrire le système à un certain instant.— Liste d’événements— Module de gestion du temps.— Compteurs statistiques : variables utilisées pour mémoriser de l’in-

formation sur la performance du système.— Sous-programme gestion du temps : il fait avancer la valeur du clock

selon les stratégies mentionnées auparavant.— Sous-programmes événements : ils mettent à jour l’état du système

selon le type d’événement qui a lieu.— Librairies statistiques : elle sont utilisées pour la génération des

nombres aléatoires et pour l’analyse statistique des données collec-tées par les compteurs.

— Analyse de performance : le sous-programme qui estime à partir desdonnées collectées une série de mesures de performance.

La Figure 9.1 montre les interactions entre les différents modules d’unsimulateur à temps discret.

9.3.1 Etat

Comme discuté à la Section 2.2, l’état d’un système est l’ensemble devariables nécessaires et suffisantes pour décrire le système à un certaininstant.

Dans le cas d’une file d’attente M/M/1 l’état du système pourrait êtredéfini par les variables suivantes :

1. l’état des services (actif (B = 1) ou désactivé (B = 0)) : cette va-riable nous permet de déterminer si le client qui arrive sera serviimmédiatement ou devra se mettre en file.

2. le nombre Q de clients en attente : cette variable nous permettrade définir l’état futur du service quand le service d’un client auraterminé.

3. le temps aj , j = 1, . . . , Q d’arrivée de chacun des clients dans la file.

4. l’instant du dernier événement.

Notons que si le système était composé d’un seul service, l’état d’activitédu service pourrait être déduit à partir du nombre de clients dans lesystème.

9.3.2 Evénements

Dans le cas d’une file d’attente l’ensemble des événements est composépar :

Page 183: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.3. SIMULATEUR EVENT-BASED 177

Figure 9.1 – Ensemble de modules composant un simulateur à événements discrets(figure extraite du livre [9]).

Page 184: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

178 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

1. l’arrivée d’un client qui est demandeur du service à l’instant t : cetévénement fixe la valeur aj = t pour le nouveau client et active leservice B(t+) = 1.

2. la fin du service d’un client : ceci cause Q(t+) = Q(t−) − 1 et siQ(t+) = 0 désactive le service B(t+) = 0.

Dans l’exemple en question, tous les événements causent un changementd’état. Toutefois ceci n’est pas obligatoire. On pourrait envisager desévénements qui causent d’autres effets comme la fin de la simulation, oule changement de la manière de visualiser les sorties.

9.3.3 Gestion du temps

La nature dynamique des modèles à événements discrets demande unmécanisme informatique pour simuler l’évolution du temps. Il est doncnécessaire de définir une variable (en anglais simulation clock) qui stockele temps virtuel de la simulation.

Notons qu’aucune relation n’existe entre le temps virtuel de la simulationet le temps d’exécution du programme. Deux stratégies peuvent êtreenvisagées pour la gestion du temps de la simulation :

1. avancement par incrément fixe

2. avancement jusqu’au prochain événement (next time event) et calculde l’instant du temps auquel l’événement suivant aura lieu.

Une limitation de l’approche par incréments fixes est que si les événe-ments ont lieu seulement à des instant bien précis il est inutile de simulerle système lorsqu’il est inactif (c.-à-d. quand aucun événement n’a lieu).

Dans l’approche next-time event le clock de la simulation est initialisée àzéro au départ. Ensuite la simulation consiste en la répétition en boucledes opérations suivantes jusqu’à ce qu’une quelconque condition d’arrêtsoit activée :

1. le clock est avancé jusqu’à l’instant du prochain événement

2. l’état du système est mis à jour selon le type d’événement qui a eulieu.

3. la liste des événements futurs est mise à jour. La génération desévénements futurs demande l’utilisation d’un générateur de nombresaléatoires.

Notons que le temps avance par intervalles de tailles variable. Ceci sedistingue de la façon dont le temps avance dans la résolution d’équationsdifférentielles. Aussi si nous arrêtons la simulation après la réalisationde n événements il découle que le temps d’arrêt de la simulation est unevariable aléatoire.

9.3.4 Sous-programme événement

C’est le module du simulateur qui a comme mission la mise à jour del’état du système en fonction des événements qui peuvent avoir lieu. Lesdifférentes étapes du sous-programme pour la gestion de l’arrivée d’unclient sont illustrées par la Figure 9.2.

Les différentes étapes du sous-programme pour la gestion du départ d’unclient sont illustrées par la Figure 9.3.

Page 185: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.3. SIMULATEUR EVENT-BASED 179

Figure 9.2 – Sous-programme événement arrivée d’un client (figure extraite dulivre [9]).

Page 186: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

180 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

Figure 9.3 – Evénement départ d’un client (figure extraite du livre [9]).

Page 187: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.3. SIMULATEUR EVENT-BASED 181

9.3.5 Estimation de performance

Le but d’un simulateur est d’étudier le fonctionnement ou la performanced’un certain système réel durant un certain intervalle de temps.Il est toutefois important de remarquer que l’exécution d’une seule si-mulation n’apporte pas suffisamment d’information sur la performance.En effet, une seule exécution d’un simulateur à événements discrets cor-respond à une seule réalisation d’un processus stochastique. Il est doncnécessaire d’effectuer plusieurs répétitions (ou réplications Monte Carlo)et d’utiliser des outils statistiques (par exemple calcul des moyennes,tests d’hypothèses, intervalles de confiance,...) pour pouvoir caractériserde manière correcte la performance d’un système.Un autre aspect important est de savoir si l’étude porte sur le régimetransitoire ou bien sur le régime stationnaire. Le problème théoriquede l’existence ou de la vitesse de convergence vers un état stationnairene sera pas abordé ici. Nous nous bornerons à considérer quelques in-dicateurs qui peuvent quantifier la performance d’une file d’attente quitermine de fonctionner après que n clients aient été servis.Supposons que nous effectuons N exécutions statistiquement indépen-dantes d’un simulateur de file d’attente. Pour la ième exécution nouspouvons collecter les statistiques suivantes :1. le temps moyen d’attente wi des clients dans la file

wi =

∑nj=1Dij

n

où Di1, . . . , Din sont les temps d’attente mesurés pour les n clientsde la ième répétition.

2. le nombre moyen de clients Li en attente dans la file

Li =

n∑

j

jpij ,

pij =TijTi

est la portion de temps de fonctionnement de la ième répétitionpendant laquelle le nombre de clients en attente est égal à j, Tiest le temps de la ième simulation et Tij le temps observé pendantlequel le système a j clients en attente de sorte que

Ti0 + Ti1 + · · ·+ Tin = Ti

Soit Qi(t) le nombre des clients en attente à l’instant t, t ≥ 0. Laquantité Li peut aussi être écrite de la manière suivante

Li =

∫ Ti

0Qi(t)dt

Ti

3. l’utilisation moyenne ρi du service qui correspond à la proportion dutemps de fonctionnement pendant laquelle le service est actif. SoitBi(t) une fonction qui à l’instant t prend la valeur 0 si le service estinactif et la valeur 1 si le service est actif.L’utilisation ρi peut alors être calculée par

ρi =

∫ Ti

0Bi(t)dt

Ti

Page 188: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

182 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

Supposons maintenant que nous voulons estimer une des quantités dé-crites en Section 9.1.3, par exemple le nombre moyen L. Etant donné lecaractère stochastique de la simulation, l’utilisation de plusieurs répli-cations est nécessaire.Si N répétitions indépendantes de la simulation sont effectuées nouspouvons estimer L par la moyenne arithmétique

L =

∑Ni=1 Li

N,

et y associer l’intervalle de confiance au niveau 1− α

[L− t1−α/2,N−1s/√N, L+ t1−α/2,N−1s/

√N ]

s =

∑Ni=1(Li − L)2

N − 1

et t1−α/2,N−1 est le quantile d’ordre 1−α/2 de la distribution de Studentà N − 1 degrés de liberté.

9.3.6 Exécution de la simulation d’une file d’attente

Considérons l’exemple de la file d’attente avec S = 1 décrit précédem-ment.Introduisons la notation additionnelle :— aj = tj − tj−1 : temps entre l’arrivée du jème et du j − 1ème client.— sj : temps du service du jème client— Dj : temps d’attente dans la file du jème client— cj = tj +Dj + sj : instant de temps où le service du jème client est

completé et le client s’en va.— ej : instant de temps où le jème événement (de nature quelconque)

a lieu.— Q : nombre de clients en attente.— Y : nombre de clients dans le système. Notons que Y = Q + 1 si

Q > 0.Soient Faj

et Fsj les distributions de probabilité des variables aléatoiresaj et sj , respectivement.Voici quelques étapes de l’exécution de la simulation— t = 0 : le serveur est inactif (B(0) = 0) et il n’y a pas de clients

en attente (Q(0) = 0, Y (0) = 0). L’instant du premier événement e1est généré en échantillonnant la distribution de probabilité Fa de lavariable a et en posant e1 = t1 = a1 (Figure 9.4).

— Le clock est avancé de t = 0 à t = t1.— t = t1 : le serveur passe d’inactif à actif (B(t+1 ) = 1), Q(t+1 ) = 0,

Y (t+1 ) = 1 et D1 = 0 (Figure 9.5). La durée du temps de service duclient i = 1 est calculé en échantillonnant la distribution de proba-bilité Fs. On obtient :

c1 = t1 +D1 + s1 = t1 + s1

Le temps d’arrivée du deuxième client est généré en échantillonnantla distribution de probabilité Fa de la variable a et en posant t2 =t1 + a2.

— Si c1 < t2, le clock est avancé de e1 à e2 = c1, l’état du service estmis à B(t+2 ) = 0 et Y (t+2 ) = 0.

Page 189: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.3. SIMULATEUR EVENT-BASED 183

B=0

t=0

[0 t

1

Q=0, Y=0

Figure 9.4 – Exécution de la simulation : état du système pour t = 0.

— Si t2 < c1, le clock est avancé de e1 à e2 = t2. Puisque le serveur estactif, le nombre de clients en attente devient Q(t+2 ) = 1 et le nombrede clients dans le système devient Y (t+2 ) = 2.

— Le temps de la troisième arrivée est calculé : t3 = t2+ a3 où a3 ∼ Fa

est tiré de manière aléatoire.— et ainsi de suite.L’ensemble de fonctions MATLAB dans le répertoire queue implémenteune file d’attente M/M/1. Ce script peut être utilisé pour simuler plu-sieurs réplications. Voici un rapport en forme tabulaire des temps desévénements et des statistiques associées qui ont lieu pendant une simu-lation qui s’arrête quand le n = 10 client est servi.Arrivée Début service Service Départ Délai Perm

0.2459 0.2459 2.4974 2.7434 0 2.49747.2880 7.2880 0.5754 7.8633 0 0.575410.7571 10.7571 3.9212 14.6783 0 3.921212.0633 14.6783 0.9837 15.6620 2.6150 3.598731.2449 31.2449 2.4272 33.6721 0 2.427235.1408 35.1408 0.4071 35.5479 0 0.407136.2623 36.2623 8.6788 44.9412 0 8.678837.7216 44.9412 0.5622 45.5034 7.2195 7.781742.0588 45.5034 14.2459 59.7493 3.4446 17.690542.3795 59.7493 9.8703 69.6196 17.3698 27.240242.7966 69.6196 7.9785 77.5982 26.8231 34.8016

Grâce à ce tableau il est possible calculer les quantités décrites en Sec-tion 9.3.5. Par exemple

wi =0 + 0 + 0 + 2.6150 + 0 + 0 + 0 + 7.2195 + 3.4446 + 17.3698 + 26.8231

10= 5.74

La fonction Qi(t) (Figure 9.7) montre le nombre de clients en attente àl’instant t pour l’exécution en question.

Page 190: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

184 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

Y=1, Q=0

1

[0 t

1

t=t1

[ ]t

2c

1

c =t +S 1 1 1

t =t +A 12 2

B=1

Figure 9.5 – Exécution de la simulation : état du système pour t = t1.

B=1

2

[0 t

1

t=c1

[ ]t

2c

1

]c

2

[t

3

Q=0, Y=1

Figure 9.6 – Exécution de la simulation : état du système pour t = t2.

Page 191: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

9.3. SIMULATEUR EVENT-BASED 185

0 10 20 30 40 500

1

2

3

4

5

6

Time

# w

aitin

g cl

ient

s Q

(t)

Figure 9.7 – Fonction Qi(t).

0 10 20 30 40 500

1

2

3

4

5

6

Time

# cl

ient

s in

the

syst

em Y

(t)

Figure 9.8 – Fonction Yi(t).

La fonction Yi(t) (Figure 9.8) montre le nombre de clients dans le sys-tème à l’instant t pour l’exécution en question.La fonction Bi(t) (Figure 9.9) prend la valeur 1 aux instants de tempsauxquels le service est actif.

Page 192: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

186 CHAPITRE 9. SIMULATION À ÉVÉNEMENTS DISCRETS

0 10 20 30 40 500

0.2

0.4

0.6

0.8

1

Time

Ser

ver

utili

satio

n B

(t)

Figure 9.9 – Fonction Bi(t).

Page 193: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Annexe A

Rappels théoriques

d’équations différentielles

Dans ce rappel, la dérivée nème d’une fonction y(t) sera notée dnytn ou

yn′

. Pour des petites valeurs de n, nous utiliserons aussi les notationsy

, y′′

, . . . ainsi que y, y . . . De manière générale les scalaires (et fonctionsscalaires) seront indiqués en fonte ordinaire, et les vecteurs (et fonctionsvectorielles) en gras.

A.1 Définitions de base

Définition A.1. Une équation différentielle (parfois : équation diffé-rentielle ordinaire) est une équation de la forme suivante :

F (t, y, y′, . . . , yn′

) = 0

où F est une fonction continue sur un ouvert U de R × En, appelédomaine. L’ordre de cette équation est l’ordre n de la plus haute dérivéey apparaissant.

Définition A.2. Une équation différentielle d’ordre n est mise sousforme résolue quand on peut exprimer la dérivée la plus forte en fonctionde x et des dérivées précédentes :

yn′

= G(x, y′, . . . , yn−1′)

où G est une fonction continue. Les équations différentielles qui peuventse mettre sous forme résolue jouissent de bonnes propriétés théoriques,avec un théorème d’existence et d’unicité de solutions : le théorème deCauchy-Lipschitz (voir cours de BA2 : Calcul formel et numérique).

ExempleUne des plus célèbres équations différentielles est la relation fondamen-tale de la dynamique, de Newton : F = ma, où m est la masse d’uneparticule, F la force exercée sur celle-ci et a l’accélération qui en résulte(voir cours de Physique de BA1). Dans le cas d’un mouvement recti-ligne, si la force est fonction de la position (par exemple dans le cas d’un

187

Page 194: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

188 ANNEXE A. RAPPELS THÉORIQUES EDO

ressort) on obtient une équation de la forme

md2y

dt2= F (t)

c.-à-d.my = F

Pour déterminer parfaitement le mouvement, il faut se donner une po-sition initiale y(0) et une vitesse initiale y(0).

•Définition A.3 (Equation différentielle ordinaire (EDO) linéaire). Uneéquation différentielle est dite ordinaire linéaire si elle est de la forme

a0(t)dny

dtn+ a1(t)

dn−1y

dtn−1+ . . .+ +an−1(t)

dy

dt+ an(t)y = g(t)

Les termes ai sont les coefficients de l’EDO. Celle-ci est à coefficientsconstants si tous les ai sont constants. Elle est dite homogène si g(t) =0.

Théorème A.1. (Existence et unicité) Si les fonctions ai(t) et g(t)sont continues sur un intervalle 0 ≤ t ≤ T alors il existe une uniquesolution à l’équation différentielle

a0(t)dny

dtn+ a1(t)

dn−1y

dtn−1+ . . .+ +an−1(t)

dy

dt+ an(t)y = g(t)

satisfaisant les conditions initiales

y(0) = b0

dy(0)

dt= b1

...dn−1y(0)

dtn−1= bn−1

Théorème A.2. (Combinaison de solutions) Soient z(1)(t), . . . , z(n)(t)un ensemble linéairement indépendant de solutions à l’équation homo-gène

dny

dtn+ a1(t)

dn−1y

dtn−1+ . . .++an−1(t)

dy

dt+ an(t)y = 0

alors toute solution z(t) peut être exprimée sous la forme d’une combi-naison linéaire

z(t) = c1z(1)(t) + . . .+ cnz

(n)(t)

pour des constantes c1, . . . , cn.

Théorème A.3. (Equations non-homogènes) Soit y(t) une solutionparticulière de l’équation non-homogène

dny

dtn+ a1(t)

dn−1y

dtn−1+ . . .++an−1(t)

dy

dt+ an(t)y = g(t)

L’ensemble des solutions de cette équation est l’ensemble des fonctions dela forme y(t) = y(t) + z(t), où z(t) est la solution générale de l’équationhomogène associée.

Page 195: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

A.2. SYSTÈMES D’ÉQUATIONS DIFFÉRENTIELLES LINÉAIRES 189

A.2 Systèmes d’équations différentielles li-néaires

Considérons le système d’équations différentielles linéaires à coefficientsconstants

x1(t) = a11x1(t) + a12x2(t) + · · ·+ a1nxn(t)

x2(t) = a21x1(t) + a22x2(t) + · · ·+ a2nxn(t)...

xn(t) = an1x1(t) + an2x2(t) + · · ·+ annxn(t)

(A.1)

Ceci peut être écrit en forme matricielle :

x1(t)x2(t)

...xn(t)

︸ ︷︷ ︸

x(t)

=

a11 a12 . . . a1na21 a22 . . . a2n...

......

...an1 an2 . . . ann

︸ ︷︷ ︸

A

x1(t)x2(t)

...xn(t)

︸ ︷︷ ︸

x(t)

où comme une équation differentielle vectorielle

x(t) = Ax(t)

Notons que une EDO linéaire homogène à coefficients constants

dny

dtn+ a1

dn−1y

dtn−1+ . . .++an−1

dy

dt+ any = 0

peut être mise sous forme d’un système de la forme (A.1) :

x1 = x2

x2 = x3...

xn = (−anx1 − an−1x2 + · · · − a1xn)

x1 = y,

x2 =dy

dt,

...

xn =dn−1y

dtn−1

Ceci induit la matrice A suivante :

A =

0 1 0 . . . 00 0 1 . . . 0...

......

. . . 00 0 0 . . . 1

−an −an−1 −an−2 . . . −a1

Page 196: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

190 ANNEXE A. RAPPELS THÉORIQUES EDO

Les théorèmes A.1 et A.2 pour les équations différentielles restent va-lides pour les systèmes d’équations. Nous avons par exemple, le résultatsuivant pour la combinaison de solutions d’un système d’équations dif-férentielles :

Lemma A.4. Soient x(j)(t), j = 1, . . . ,K, K solutions du systèmex = Ax. Si c1, . . . , cK est un ensemble de K constantes (réels oucomplexes) alors le vecteur

K∑

j=1

cjx(j)(t)

est aussi une solution.

A.3 Solutions d’une EDO linéaire

Pour n = 1, la solution du système x(t) = ax(t) a la forme x(t) =x(0)eat, où x(0) est la condition initiale.

Pour n général, quelles conditions doivent être satisfaites pour que x(t) =veλt soit une solution de x = Ax (avec v un vecteur et λ un scalaire) ?

vλeλt = Aveλt ⇔ Av = λv ⇔ (A− λI)v = 0

Donc x(t) = eλtv est une solution non nulle du système ssi λ est unevaleur propre de A et v est son vecteur propre. Les valeurs propresλ1, . . . , λn sont les racines de l’équation caractéristique det(A−λI) =0 et pour chaque racine λj le vecteur correspondant vj satisfait la rela-tion (A− λjI)vj = 0.

Soient λ1,v1, . . . , λn,vn les n paires des valeurs/vecteurs propresde la matrice A. Si les n valeurs propres sont réelles et distinctesalors les n solutions correspondants sont indépendants et nous pouvonsformer une solution générale de la forme

c1eλ1tv1 + c2e

λ2tv2 + · · ·+ cneλntvn

Les autres cas ne seront traités que dans le cas n = 2.

A.4 Système du second ordre

Pour le système linéaire du second ordre

[x1x2

]

=

[a bc d

] [x1x2

]

l’équation caractéristique est

0 = det

[a− λ bc d− λ

]

=

= (a− λ)(d− λ) − bc = λ2 − (a+ d)λ+ (ad− bc) = λ2 − τλ+∆

où τ = a+d = tr(A) est la trace de la matrice A et ∆ = ad−bc = det(A)est le déterminant.

Page 197: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

A.4. SYSTÈME DU SECOND ORDRE 191

Exemple à racines réelles et distinctes

x =

[1 33 1

]

x

Nous savons qu’une solution générale peut s’écrire sous la forme c1eλ1tv1+· · ·+cneλntvn où les (λi,vi) sont des paires valeur propre/vecteur propre.Les valeurs propres sont les solutions de l’équation caractéristique

det

([1 33 1

]

− λI

)

= 0

L’équation caractéristique est donc λ2 − 2λ− 8 = 0 ayant deux racinesdistinctes λ1 = −2, λ2 = 4. Les valeurs propres correspondantes sont

v1 =

[1−1

]

, v2 =

[11

]

La solution générale est donc

x(t) = c1e−2t

[1−1

]

+ c2e4t

[11

]

SoitV =

[v1, v2

]

la matrice des vecteurs propres, où v1 et v2 sont la première et ladeuxième colonne de la matrice V , respectivement.Une fois fixée la condition initiale x(0), les deux paramètres c1 et c2doivent satisfaire l’égalité

c1

[1−1

]

+ c2

[11

]

= c1v1 + c2v2 = V · c = x(0)

où V c = x(0) est un système d’équations linéaires (voir Calcul formel etnumérique) où V est la matrice des coefficients de taille [n, n], c est levecteur inconnu de taille [n, 1] et x(0) est le deuxième membre de taille[n, 1].

A.4.1 Valeurs propres complexes conjuguées

Théorème A.5. Considérons le système x = Ax où A est une matriceà coefficients constants et réels. Si λ1,2 = α ± iβ sont deux valeurspropres complexes conjuguées et les vecteurs propres correspondants sontv1,2 = u± iw, alors

x(1)(t) =eαt (cos(βt)u− sin(βt)w) , et

x(2)(t) =eαt (sin(βt)u+ cos(βt)w)

sont deux solution réelles et linéairement indépendantes du système.

Exemple complexe d’ordre 2Considérons le système linéaire

x =

[0 4−1 0

]

x

Page 198: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

192 ANNEXE A. RAPPELS THÉORIQUES EDO

L’équation caractéristique est λ2+4 = 0 ayant racines complexes conju-guées λ1,2 = ±2i. Les vecteurs propres correspondantes sont v1,2 =[2,±i]T = [2, 0]± i[0, 1]. Les deux solutions sont donc

x(1)(t) = cos(2t)

[20

]

− sin(2t)

[01

]

et

x(2)(t) = sin(2t)

[20

]

+ cos(2t)

[01

]

A.4.2 Racines multiples

Dans le cas de deux racines confondues λ1 = λ2 = λ, les deux solutionssuivantes sont linéairement indépendantes :

x(1)(t) = v1eλt

x(2)(t) = eλt(v2 + tv1)

où v1 et v2 sont tels que

(A− λI)v1 = 0

(A− λI)v2 = v1

Exemple à racines multiplesConsidérons le système linéaire

x =

[3 −41 −1

]

x

L’équation caractéristique est λ2−2λ+1 = 0 ayant deux racines confon-dues λ1 = λ2 = 1. Un vecteur propre v1 tel que (A − λI)v1 = 0 est

v1 =

[21

]

et un vecteur v2 tel que (A − λI)v2 = v1 est v2 =

[31

]

. Les

deux solutions sont donc

x(1)(t) =

[21

]

·et

x(2)(t) = et([

31

]

+ t

[21

])

ExercicePour le système

x =

[1 33 1

]

x

Il vous est demandé de :

1. Calculer les valeurs propres.Solution : nous utilisons la formule simplifiée

det(A− λI) = λ2 − τλ +∆

Page 199: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

A.4. SYSTÈME DU SECOND ORDRE 193

où τ = a+ d et ∆ = det(A). Ce qui donne τ = 2 et ∆ = −8. Il fautdonc résoudre

λ2 − 2λ− 8 = 0

, ce qui donne λ = 2±√36

2 =

4

−2.

2. Calculer les vecteurs propresSolution : Pour λ1 = 4 nous cherchons v1 = (i, j). Nous avons A ·v1 = λ1 · v1 et donc

i+ 3j = 4i

3i+ j = 4j⇐⇒

3j = 3i

3i = 3j

et donc v1 =

[11

]

. Le même calcul pour λ2 donne v2 =

[1−1

]

.

3. En déduire la forme générale de x1(t) et x2(t)Solution :

x(t) = c1e−2t

[1−1

]

+ c2e4t

[11

]

=

[c1e

−2t + c2e4t

−c1e−2t + c2e4t

]

donc

x1(t) = c1e−2t + c2e

4t

x2(t) = −c1e−2t + c2e4t

4. Fixer les paramètres constants c1 et c2 de manière à satisfaire lesconditions initiales x(0) = [0.5, 0], et donner l’expression analytiquede x1(t) et x2(t) .

c1 + c2 = 0.5

−c1 + c2 = 0⇐⇒ c1 = c2 = 0.25

x1(t) = 0.25e−2t + 0.25e4t

x2(t) = −0.25e−2t + 0.25e4t

x1(t) x2(t)

1

0 0.2 0.4

0.25*exp(-2*x) + 0.25*exp(4*x)

1

0 0.2 0.4

-0.25*exp(-2*x) + 0.25*exp(4*x)

5. Dessiner la trajectoire à partir de x(0), en calculant les points pourt = 0, 0.1, 0.2, 0.3, 0.4, 0.5.Solution :Les valeurs sont données dans la table ci-dessous, et la tra-jectoire est illustrée par la figure A.1

Page 200: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

194 ANNEXE A. RAPPELS THÉORIQUES EDO

−2 −1 0 1 2

−2

−1

01

2

Les 5 trajectoires (avec points initiaux en noir)

x1

x2

Figure A.1 – Les deux trajectoires

x1(t) x2(t)

0 0.5 00.1 0.57 0.160.2 0.72 0.380.3 0.96 0.690.4 1.35 1.120.5 1.93 1.75

6. Mêmes questions que (4,5) pour les conditions initiales x(0) = [0,−0.5].Solution :

c1 + c2 = 0

−c1 + c2 = −0.5⇐⇒ c1 = 0.25, c2 = −0.25

x1(t) = 0.25e−2t − 0.25e4t

x2(t) = −0.25e−2t − 0.25e4t

Page 201: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

A.4. SYSTÈME DU SECOND ORDRE 195

x1(t) x2(t)

1

0 0.2 0.4

0.25*exp(-2*x) - 0.25*exp(4*x)

1

0 0.2 0.4

-0.25*exp(-2*x) - 0.25*exp(4*x)

Les valeurs sont données dans la table ci-dessous, et la trajectoire estillustrée par la figure A.1.

x1(t) x2(t)

0 0 −0.50.1 −0.16 −0.570.2 −0.38 −0.720.3 −0.69 −0.960.4 −1.12 −1.350.5 −1.75 −1.93

7. Mêmes questions que (4,5) pour les conditions initiales x(0) = [0, 0].

c1 + c2 = 0

−c1 + c2 = 0⇐⇒ c1 = 0, c2 = 0

x1(t) = 0

x2(t) = 0

Les valeurs sont données dans la table ci-dessous, et la trajectoireest illustrée par la figure A.1

x1(t) x2(t)

0 0 00.1 0 00.2 0 00.3 0 00.4 0 00.5 0 0

8. Mêmes questions que (4,5) pour les conditions initiales x(0) = [1, 1].

c1 + c2 = 1

−c1 + c2 = 1⇐⇒ c1 = 0, c2 = 1

x1(t) = e4t

x2(t) = e4t

Page 202: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

196 ANNEXE A. RAPPELS THÉORIQUES EDO

x1(t) x2(t)

1 0 0.2 0.4

0*exp(-2*x) + 1*exp(4*x) 1

0 0.2 0.4

0*exp(-2*x) + 1*exp(4*x)

Les valeurs sont données dans la table ci-dessous, et la trajectoire estillustrée par la figure A.1

x1(t) x2(t)

0 1 10.1 1.5 1.50.2 2.2 2.20.3 3.3 3.30.4 5 50.5 7.4 7.4

9. Mêmes questions que (4,5,6) pour les conditions initiales x(0) =[1,−1].

c1 + c2 = 1

−c1 + c2 = −1⇐⇒ c1 = 1, c2 = 0

x1(t) = e−2t

x2(t) = −e−2t

x1(t) x2(t)

0

1

0 0.2 0.4

1*exp(-2*x) + 0*exp(4*x)-1

0

0 0.2 0.4

-1*exp(-2*x) + 0*exp(4*x)

Les valeurs sont données dans la table ci-dessous, et la trajectoireest illustrée par la figure A.1

x1(t) x2(t)

0 1 −10.1 0.8 −0.80.2 0.67 −0.670.3 0.55 −0.550.4 0.45 −0.450.5 0.37 −0.37

Page 203: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

A.4. SYSTÈME DU SECOND ORDRE 197

Page 204: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

198 ANNEXE A. RAPPELS THÉORIQUES EDO

Page 205: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Annexe B

Rappels de probabilité

B.1 Variables aléatoires continues

— Considérons une variable aléatoire z réelle et continue. Il est possibledéfinir les quantités suivantes :Définition B.1. La fonction de répartition de z est la fonction

Fz(z) = Prob z ≤ z (B.1)

Définition B.2. La fonction de densité de z est la dérivée de lafonction de répartition :

pz(z) =dFz(z)

dz(B.2)

— La probabilité d’une v.a. continue n’est pas définie pour des valeursz ponctuelles mais seulement pour des intervalles de valeurs

Prob a < z < b =

∫ b

a

pz(z)dz,

Zpz(z)dz = 1

B.2 Moyenne et variance d’une v.a. continue

Espérance (moyenne) :

µ =

∫ h

l

zp(z)dz

Variance :

σ2 =

∫ h

l

(z − µ)2p(z)dz

Moments d’ordre r :

µr = E[zr] =

∫ h

l

zrp(z)dz

B.3 Distribution exponentielle

Une variable continue a est distribue selon une loi de probabilité expo-nentielle de paramètre λ > 0 (a ∼ E(λ)) si sa densité de probabilitéest

pa(a) =

λe−λa if a ≥ 0

0 if a < 0

199

Page 206: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

200 ANNEXE B. RAPPELS DE PROBABILITÉ

— La moyenne de a est 1/λ.— La variance de a est 1/λ2.— Elle satisfait la memoryless property

Prob a ≥ a1 + a2|a = a1 = Prob a ≥ a2

— Cette variable est normalement utilisée pour décrire la durée de vied’un phénomène sans vieillissement, c’est-à-dire où la durée de vieau-delà de l’instant t est indépendante de l’instant t.

— Dans ce cas 1/λ est la durée de vie moyenne 1λ .

— Si on considère les intervalles de temps qui s’écoulent entre les évé-nements successifs d’une loi de Poisson de taux λ > 0 , on constatequ’ils suivent une loi de la forme exponentielle de taux λ, où λ estle nombre de clients servis par unité de temps et 1/λ est le tempsmoyen que passe chaque client à la station.

B.4 Loi de Poisson

— Supposons que un événement (par exemple l’arrivée d’un client) seproduise en moyenne λ ∈ R, λ > 0 fois par unité de temps.

— Soit x ∈ N la variable aléatoire qui représente le nombre de fois oùl’événement se produit par unité de temps.

— La v.a. x suit une loi de Poisson avec paramètre λ > 0 si

Prob x = k = exp−λ λk

k!, k = 0, 1, 2, . . .

pour tout entier naturel k.— La moyenne et la variance de x sont égales à λ.

B.5 Processus d’arrivée de Poisson

Soit Na(t) = max i : ti ≤ t le nombre aléatoire d’arrivées à ou avantl’instant t ≥ 0, où ti est l’instant d’arrivée du ième client.

Définition B.3. Le processus stochastique Na(t) est appelé un processusde Poisson si

1. les clients arrivent un à la fois.

2. le nombre d’arrivées dans l’intervalle (t, t+ s], c.-à-d. la v.a. Na(t+s)−Na(t) est independant de Na(u), 0 ≤ u ≤ t.

3. la distribution de Na(t + s) − Na(t) est independant de t pour toutt > 0, s > 0.

Théorème B.1. Si Na(t) est un processus de Poisson alors le nombred’arrivée dans chaque intervalle de taille s est une v.a. de Poisson avecparamètre λs avec λ > 0, c.-à-d.

Prob Na(t+ s)−Na(t) = k = exp−λs (λs)k

k!, k = 0, 1, 2, . . . , t, s ≥ 0

Théorème B.2. Si Na(t) est un processus de Poisson avec un taux λalors les variables

ai = ti − ti − 1

sont i.i.d. et distribuées selon la loi exponentielle de paramètre λ.

Page 207: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

Bibliographie

[1] Gianluca Bontempi. Statistical foundations of machine learning.2006. http ://www.ulb.ac.be/di/map/gbonte/mod_stoch/syl.zip.

[2] Gianluca Bontempi, Ana da Silva Soares, and Martin De Wulf.Calcul formel et numérique. Presses universitaires de Bruxelles,2006.

[3] H. Bossel. Modeling and simulation. A K Peters, 1994.

[4] M. J. Feigenbaum. Quantitative universality for a clas of nonlineartransformations. Journal of Statistical Physics, 19 :24–52, 1978.

[5] G. Fleury, P. Lacomme, and A. Tanguy. Simulation à événementsdiscrets. Eyrolles, 2006.

[6] J. Gleick. Chaos : Making a new science. Penguin, 1988.

[7] R. Hanus. Automatique avancée. Hermès, 2007.

[8] A. Langlois and M. Phipps. Automates cellulaires. Application à lasimulation urbaine. Hermès, 1997.

[9] A. M. Law and D. Kelton. Simulation modeling and analysis.McGraw-Hill, 1991.

[10] D. G. Luenberger. Introduction to dynamic systems. John Wileyand Sons, 1979.

[11] B.B. Mandelbrot. The fractal geometry of nature. W.H. Freeman,1982.

[12] F. Neelamkavil. Computer simulation and modelling. Jihn Wileyand Sons, 1987.

[13] B. L. Nelson. Stochastic modeling. McGraw-Hill, 1995.

[14] G. Nicolis. Introduction to nonlinear science. Cambridge UniversityPress, 1995.

[15] A. Papoulis. Probability, Random Variables, and Stochastic Pro-cesses. McGraw Hill, 1991.

[16] JP Rennard. Introduction aux automates cellulaires. PDF docu-ment. http ://www.rennard.org/alife/french/ac.pdf.

[17] Sergio Rinaldi. Teoria dei sistemi. CLUP, 1981.

[18] D. Ruelle. Qu’est-ce que l’Univers ?, chapter Chaos,imprédictibilité et hasard. Odile Jacob, 2000.http ://www.asmp.fr/travaux/gpw/philosc/rapport1/bois.pdf.

[19] D. Ruelle and F. Takens. On the nature of turbulence. Communi-cations of Mathematical Physics, 20 :167–192, 1971.

[20] E. Salinelli and F. Tomarelli. Modelli dinamici discreti. Springer,2002.

201

Page 208: SYLLABUS INFO-F-305 Cours de Modélisation et … · SYLLABUS INFO-F-305 Cours de Modélisation et Simulation Gianluca Bontempi Eythan Levy ... 7.2 Le modèle d’Hardy Weinberg :

202 BIBLIOGRAPHIE

[21] J. C. Sprott. Chaos and Time-Series Analysis. Oxford, 2003.

[22] S. H. Strogatz. Nonlinear dynamics and chaos. Perseus Book Pu-blishing, 1994.

[23] Wikipedia. Système, 2007.

[24] S. Wolfram. Theory and applications of cellular automata. WorldScientific, 1986.