Banc de poisson
Quatre-vingts poissons, trois règles, et un requin qui change tout
Une simulation de boids en C : chaque poisson ne connaît que ses voisins proches, et le banc émerge de leurs trois règles. Un requin vient tester si ça tient.
- 80
- poissons
- 3
- règles
- 60
- images par seconde
Les règles du banc
Aucun poisson ne voit le banc. Il ne connaît que ses voisins à moins de 55 pixels, et trois règles suffisent à le tenir — les trois suivantes ne sont que des bornes. Le banc n'est écrit nulle part : il sort de là.
- Séparation
- S'écarter des voisins trop proches. C'est la plus forte des trois — sans elle, le banc s'effondre en un point.rayon 22 px · poids 0,09
- Alignement
- Prendre le cap moyen des voisins visibles.rayon 55 px · poids 0,05
- Cohésion
- Se diriger vers leur centre. La plus faible des trois : elle ne fait que refermer ce que la séparation écarte.rayon 55 px · poids 0,035
- Vitesse
- Elle est bornée en haut et en bas : un poisson ne s'arrête jamais, et ne sème jamais le banc.1 → 2,2 px par image
- Bords
- À moins de 90 pixels d'un bord, un couple de virage constant le ramène vers l'intérieur. Il n'y a pas de rebond : le banc s'incurve.marge 90 px
- Alarme
- Un poisson qui voit le requin passe en alerte et publie son cap. Ses voisins le copient en perdant une image d'alerte à chaque saut : la vague traverse le banc, puis s'éteint d'elle-même.peur 130 px · 30 images
Ces règles sont tout le comportement collectif. Les couper — une touche le fait — laisse quatre-vingts poissons qui se croisent sans jamais se voir.
- 0
- en vie
- 0
- en alerte
- 0/0
- attaques
- —
- réussite
Quatre-vingt-dix poissons, aucun ne voit le banc entier : chacun ne connaît que ses voisins à moins de 55 pixels. Les poissons qui blanchissent sont en alerte — la vague part du requin et se propage de voisin en voisin, en perdant une frame à chaque saut. Au moment où le requin verrouille une proie, il compte ses voisins et fige sa probabilité de capture : 90 % sur une proie isolée, et ça chute vite quand elle est noyée dans la masse. Coupez le banc, laissez tourner, et regardez le taux de réussite monter.
- 01Séparation, alignement, cohésion — aucun poisson ne voit le banc entier
- 02Effet de confusion : la proba de capture est figée au verrouillage, selon la densité autour de la proie
- 03Le requin chasse par attaques discrètes : recherche, verrouillage, poursuite, frappe, repos
- 04Une touche coupe les règles de banc — mais pas le droit d'avoir des voisins
Un requin qui tourne autour sans jamais toucher
Son rayon de virage vaut vitesse au carré divisée par accélération : à la valeur initiale il faisait 136 pixels, bien plus large que sa portée de frappe, et il abandonnait huit fois sur dix. L'accélération a été balayée jusqu'à retrouver les taux de succès sur proie isolée mesurés par Neill et Cullen.