Boids

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher

Boids est le nom d'un programme informatique de vie artificielle, développé par Craig W. Reynolds en 1986, simulant le comportement d'une nuée d'oiseaux en vol. Le mot boid est par ailleurs une contraction de bird-oid (qui a la forme d'un oiseau)[1].

Émergence de comportement[modifier | modifier le code]

Comme bon nombre de simulations de vie artificielle, le programme Boids permet de modéliser un comportement émergent. En effet, la complexité comportementale résulte ici de l'interaction d'agents individuels (appelés boids) respectant un nombre limité de règles simples, telles que :

  • la cohésion : pour former un groupe, les boids se rapprochent les uns des autres ;
  • la séparation : 2 boids ne peuvent pas se trouver au même endroit au même moment ;
  • l'alignement : pour rester groupés, les boids essayent de suivre un même chemin.
Voisinage d'un boid bidimensionnel. Du rouge le plus foncé au plus clair: zone de répulsion, d'orientation et d'attraction. La partie grise est hors du champ de vision.

Dans les faits, cela se traduit par la réaction du boid à son voisinage. Celui-ce divise en trois zones, de la plus proche à la plus éloignée: une zone de répulsion, une zone d'orientation et une zone d'attraction. Lorsqu'un voisin entre dans la zone de répulsion, le boid s'en éloigne, s'il est dans la zone d'orientation, le boid le suit, et s'il est dans la zone d'attraction, il s'en rapproche. Généralement, on ajoute également à la simulation un angle mort, dans lequel le boid ne peut pas percevoir ses voisins.

Structures émergentes[modifier | modifier le code]

Essaim d'oiseaux. Cette structure peut être obtenue à partir de boids.

En faisant varier les rayons des différentes zones les uns par rapport aux autres, on peut voir émerger différentes structures, qui ont de fortes ressemblances avec ce qui est observable dans la nature[2]. Ainsi, de grandes zones d'attraction et de répulsion couplées à une zone d'orientation quasiment inexistante font émerger une structure d'essaim. En augmentant légèrement la zone d'orientation, on peut observer une structure toroïdale, semblable à celle de certains bancs de poissons. En augmentant encore cette zone, on peut observer un groupe plus ou moins parallèle. Le champ de vision aussi entre en compte, s'il est trop petit, il est beaucoup plus difficile d'obtenir une structure. Enfin, une zone d'attraction trop faible à tendance à provoquer une dispersion des boids.

On peut également avoir différents types de boids au sein d'un même groupe. On remarque par exemple dans ce cas qu'un boid avec une grande zone d'orientation aura moins tendance à être à la tête ou au centre du groupe. De la même façon, les boids présentant une faible zone de répulsion auront davantage tendance à se retrouver au centre du groupe.

Notion d'émergence[modifier | modifier le code]

De façon générale, la notion d'émergence implique que :

  • l'on constate l'existence d'un comportement complexe (proche de l'expérience du vivant, donc difficile à prévoir ; mouvant ; animant un certain nombre de parties prenantes, potentiellement important ; multipliant les scénarios possibles ; créant un système capable, sous la poussée de quelque événement interne ou externe, de basculer d'un état à l'autre, d'une forme à une autre, évoquant alors l'instabilité, la rupture, le changement de forme, la stabilisation sous un autre régime d'existence et de maintien),
  • induise, à partir de ce comportement, les quelques règles simples qui — en relation dynamique les unes avec les autres — font bel et bien émerger ce comportement complexe (en cybernétique, ces quelques règles correspondent à des finalités (cf. téléologie) : des poussées, des intentions, conscientes ou non, qui font tendre les individus vers un but (ex. : satisfaire un besoin écologique), tout autant que le groupe lui-même (but qui lui est propre ; ex. : survie, maintien au moyen de forces de cohésion et de conservation telles que la recherche d'homéostasie).

Des règles plus complexes peuvent être ajoutées, telles que l'évitement d'obstacles ou la recherche d'un objectif.

Applications[modifier | modifier le code]

Les boids sont souvent utilisés pour créer des images de synthèse car ils fournissent des représentations réalistes de nuées d'oiseaux, bancs de poissons, essaims d'insectes ou autres troupeaux d'animaux.

L'application a entre autres été utilisée pour des animations dans les films Batman Returns (Batman: Le Défi, ou Le Retour de Batman au Québec), The Lion King (Le Roi Lion)[3] et pour représenter le troupeau de Gallimimus dans Jurassic Park [4].

Voir aussi[modifier | modifier le code]

Liens externes[modifier | modifier le code]

  • (en) Boids — page de Craig W. Reynolds

Notes et références[modifier | modifier le code]

  1. (en) Craig W. Reynolds, « Flocks, herds and schools: A distributed behavioral model », ACM SIGGRAPH Computer Graphics, vol. 21, no 4,‎ juillet 1987, p. 25-34 (lire en ligne)
  2. (en) Iain D. Couzin, Jens Krause, Richard James, Graeme D. Ruxton et Nigel R. Franks, « Collective Memory and Spatial Sorting in Animal Groups », Journal of Theoritical Biology, vol. 218, no 1,‎ 7 septembre 2002, p. 1-11 (lire en ligne)
  3. Critical Mass, Philip Ball. Random House. 2004
  4. http://www.red3d.com/cwr/boids/