chapitre1d Simulations

Les systèmes dynamiques non-linéaires correspondent à des systèmes dans lesquels les objets (éléments, variables) entretiennent entre eux des interactions non-linéaires. Or il suffit qu'un élément se transforme sous l'effet conjugué de deux autres éléments du système pour que celui-ci soit dynamique et non-linéaire. Autrement dit, il doit y en avoir beaucoup ! Pour autant, il est rarement possible de modéliser de tels systèmes par des équations différentielles, soit parce que l'on ne connaît pas précisément la nature des interactions ce qui empêche de les quantifier à l'aide de paramètres, soit parce que le nombre et l'hétérogénéité des éléments sont trop élevés.

Mais dès le début des études sur ces systèmes, alors qu'elles étaient encore disparates et à peu près indépendantes, des informaticiens mettaient au point d'autres méthodes d'étude. Il s'est d'abord agi des automates cellulaires, (inventés en 1945 par Von Neumann, dont le plus célèbre est le jeu de la vie de Conway). Les plus simples consistent en une grille à deux dimensions, où chaque case représente un élément, dont les modifications (parfois simplement une modification binaire noir ou blanc, allumé ou éteint) sont régies par des règles qui dépendent de l'état (noir ou blanc, allumé ou éteint) des cases voisines donc qui simulent les interactions entre les éléments voisins. On a pu ainsi simuler par exemple le comportement de colonies de fourmis. Une autre méthode informatique de simulation des systèmes complexes, les systèmes multi-agents, permet de générer des auto-organisations comme celles des bancs de poissons, des colonies de fourmis, ou de vols d'étourneaux à partir de règles très simples. Chaque élément du système est représenté par un agent et ses règles d'interactions avec les autres agents sont définies et programmées. À partir d'une position initiale des agents on lance la simulation, chaque agent, à chaque pas de temps, calcule son mouvement en fonction des règles d'interactions et des positions des autres agents. Pour simuler une colonie de fourmis par exemple, il suffit de deux règles très simples. Chaque fourmi virtuelle dépose sur son passage une phéromone virtuelle (1) qui s'évapore avec le temps, et chaque fourmi va vers la plus forte concentration de phéromone voisine. Un comportement auto-organisé est obtenu (les fourmis se dirigent toutes ensemble vers la source de nourriture la plus proche, sans qu'il soit besoin d'une soit disant reine) si l'on a trouvé les bonnes conditions (concentration et vitesse d'évaporation de phéromone par exemple). Ce comportement n'émerge, comme dans le cas des systèmes dynamiques non-linéaires, que pour certaines conditions. L'évolution du système dépend des règles et de l'état initial, et peut varier à l'infini. S'il y a de nombreuses solutions possibles, on finira par les trouver en relançant la simulation à partir, par exemple, de diverses positions initiales.

L'étude des réseaux d'interactions est un bon exemple d'utilisation de l'informatique pour comprendre un système complexe. Il s'agit d'une méthode consistant à considérer les éléments en interaction comme les nœuds d'un graphe et les interactions comme les arcs reliant ces nœuds. Le but est de comprendre l'évolution du système en fonction du temps.

Leur nature simultanément collective et non-linéaire [fait que] les mathématiques restent sans voix pour comprendre comment émergent les propriétés nouvelles car on ne peut comprendre cette influence réciproque qu'en mettant ces parties en présence par le biais d'une simulation informatique. (2)