LENIA : Une nouvelle forme de vie mathématique !

ScienceEtonnante
19 Jan 202422:08

Summary

TLDRLa vidéo présente Lenia, une simulation informatique inspirée du jeu de la vie de John Conway, capable de générer des créatures virtuelles à partir de règles simples. Lenia explore la vie artificielle en utilisant des valeurs continues pour les cellules, un temps continu, et un espace sans division en cellules. Les recherches utilisent des techniques de machine learning pour explorer l'espace des paramètres et découvrir de nouvelles structures, montrant des phénomènes émergents caractéristiques de la vie.

Takeaways

  • 🌐 Lenia est une simulation informatique qui permet de générer des créatures virtuelles à partir de règles élémentaires.
  • 🎲 Elle est considérée comme une extension du célèbre jeu de la vie, conçu par John Conway dans les années 1970.
  • 🔬 Lenia appartient au domaine de la recherche en vie artificielle, cherchant à créer des systèmes artificiels imitant le comportement des systèmes vivants.
  • 📈 Elle utilise des règles mathématiques simples pour simuler des comportements complexes et émergents à partir de systèmes simples.
  • 🔄 Lenia généralise le concept du jeu de la vie en utilisant des états continus pour les cellules, un temps continu, et un espace continu.
  • 💡 Les simulations de Lenia ont permis de découvrir des motifs stables, capables de se déplacer, de se reproduire et même de résister à des perturbations.
  • 🤖 Des méthodes de machine learning ont été adaptées pour explorer efficacement l'espace des paramètres de Lenia, permettant la découverte de nouvelles structures intéressantes.
  • 🧬 Lenia ouvre la voie à l'étude de phénomènes émergents caractéristiques de la vie, avec un nombre restreint de règles.
  • 🌌 Les recherches sur Lenia sont en cours et promettent de révéler de nouvelles créatures virtuelles et des avancées dans la compréhension de la vie artificielle.
  • 🔗 Les travaux de l'équipe Flowers de l'INRIA ont été essentiels pour les avancées dans le domaine de Lenia, en utilisant des techniques issues de la psychologie et des neurosciences.
  • 🎥 La vidéo met en évidence les nombreuses possibilities offertes par Lenia et encourage le public à explorer davantage ce système de vie artificielle.

Q & A

  • Qu'est-ce que Lenia et comment est-elle liée au jeu de la vie de John Conway?

    -Lenia est une simulation informatique capable de générer des créatures virtuelles à partir de règles simples, et elle est considérée comme une extension du jeu de la vie, une simulation créée par John Conway dans les années 1970. Lenia va plus loin que le jeu de la vie en permettant des états continus pour les cellules, un temps continu et un espace continu, formant ainsi un automate cellulaire continu.

  • Quels sont les objectifs de la recherche en vie artificielle?

    -L'objectif de la recherche en vie artificielle est de créer des systèmes artificiels dont les comportements se rapprochent de ceux des systèmes vivants. Cela peut se faire par l'étude de réactions chimiques simples, la création de machines capables d'évoluer et de se reproduire de manière autonome, ou en créant des simulations informatiques qui imitent le vivant.

  • Comment Lenia permet-elle d'aller au-delà des limites du jeu de la vie?

    -Lenia permet d'aller au-delà des limites du jeu de la vie en introduisant des états continus pour les cellules, en remplaçant le temps discret par un temps continu, et en passant de l'espace divisé en cellules à un espace continu utilisant des filtres pour calculer les interactions entre les cellules.

  • Quelle est la différence entre les états discrets et les états continus dans Lenia?

    -Dans le jeu de la vie, les cellules ont un état discret (elles sont soit vivantes, soit mortes), tandis que dans Lenia, les cellules peuvent avoir des valeurs continues entre 0 et 1, ce qui représente un niveau de vie de la cellule ou une concentration d'une certaine substance vitale.

  • Comment les règles d'évolution dans Lenia sont-elles adaptées aux états continus des cellules?

    -Les règles d'évolution dans Lenia sont adaptées aux états continus en utilisant une courbe qui donne le nouvel état en fonction de la somme des valeurs des voisines. Au lieu de simplement compter le nombre de voisines vivantes, on additionne les valeurs des voisines et on applique une fonction de croissance pour déterminer l'évolution de la cellule.

  • Qu'est-ce qu'une opération de convolution et comment elle est utilisée dans Lenia?

    -L'opération de convolution est une technique mathématique utilisée pour calculer la moyenne des valeurs des cellules situées dans un certain rayon autour d'un point, en pondérant ces valeurs selon leur proximité. Dans Lenia, cette opération remplace la notion de voisines immédiates et permet de traiter l'espace comme continu plutôt que discret.

  • Comment les équipes de recherche utilisent-elles le machine learning pour explorer Lenia?

    -Les équipes de recherche utilisent des méthodes de machine learning, initialement développées pour l'entraînement des réseaux de neurones, pour explorer efficacement l'espace des paramètres de Lenia. Ces méthodes sont inspirées de notions de psychologie du développement et de neurosciences, telles que la curiosité et la motivation intrinsèque, pour découvrir de nouvelles structures intéressantes.

  • Quels sont les avantages de l'utilisation de plusieurs canaux dans Lenia?

    -L'utilisation de plusieurs canaux dans Lenia permet de simuler la présence de plusieurs espèces chimiques dans chaque case, ce qui complique et enrichit le comportement des motifs émergents. Cela permet d'observer des interactions plus complexes entre les différentes espèces et de découvrir des comportements plus riches, tels que la chimiotaxie et la reproduction.

  • Quels types de comportements émergents ont-ils observés chez les motifs Lenia?

    -Les chercheurs ont observé chez les motifs Lenia des comportements tels que la navigation autour d'obstacles, la contournement, la division cellulaire, la résistance aux perturbations, la reconstruction après des dommages, la chemiotaxie en fonction de la concentration des espèces chimiques, et même la reproduction de motifs.

  • Comment la recherche en Lenia contribue-t-elle à l'étude de la vie au sens large?

    -La recherche en Lenia permet d'étudier avec un nombre restreint de règles certains phénomènes émergents qui caractérisent la vie au sens large, tels que la reproduction, la croissance, la division cellulaire, la chemiotaxie et la résistance aux perturbations. Cela offre un moyen de modéliser et de comprendre des aspects fondamentaux de la vie à travers des systèmes artificiels simplifiés.

Outlines

00:00

🌟 Introduction à Lenia et la vie artificielle

Le paragraphe introduit Lenia, une simulation informatique capable de générer des créatures virtuelles à partir de règles simples, similaires au jeu de la vie conçu par John Conway. Lenia fait partie de la recherche en vie artificielle, cherchant à créer des systèmes artificiels imitant les comportements des systèmes vivants. L'objectif est de permettre l'émergence de comportements complexes à partir de règles élémentaires, comme dans la vie réelle où des réactions chimiques simples peuvent donner lieu à des processus complexes et à l'auto-organisation des organismes vivants.

05:06

📈 Les bases du jeu de la vie et les règles de Lenia

Le paragraphe explique les règles du jeu de la vie, qui consiste en une grille de cellules virtuelles évoluant selon deux règles simples : une cellule vivante a besoin de 2 ou 3 voisines pour survivre, et une case vide devient vivante si elle est entourée par exactement 3 voisines vivantes. Lenia généralise ces règles en permettant aux cellules d'avoir des valeurs continues entre 0 et 1, en utilisant un filtre pour compter les voisines et en ayant une fonction de croissance pour déterminer l'évolution des cellules. Cela permet de passer de la simulation discrète à une simulation continue, enrichissant ainsi la variété des comportements émergents possibles.

10:10

🎨 Exploration de Lenia et découverte de motifs intéressants

Le paragraphe décrit l'exploration de Lenia en choisissant différentes règles et configurations initiales. Bert Chan, le chercheur qui a décrit Lenia pour la première fois, a montré qu'il était possible de retrouver une variété de motifs, y compris des créatures virtuelles, en choisissant bien les règles. Des motifs comme l'Orbium, qui se déplace, et Hydrogenium, qui présente une symétrie bilatérale et un déplacement non linéaire, ont été découverts. L'usage de plusieurs canaux, interprétés comme des concentrations de différentes espèces chimiques, a permis de visualiser et d'explorer des comportements encore plus complexes.

15:10

🤖 L'application du machine learning à Lenia

Le paragraphe explique comment l'équipe Flowers de l'INRIA a adapté des méthodes de machine learning pour explorer efficacement l'espace des paramètres de Lenia. En utilisant des techniques inspirées de la psychologie du développement et des neurosciences, comme la curiosité et la motivation intrinsèque, ils ont pu découvrir de nouveaux motifs intéressants, tels que ceux qui naviguent autour d'obstacles, résistent aux perturbations, se réconstituent et même se reproduisent. L'application de machine learning a grandement facilité la découverte de structures virtuelles dans Lenia, promettant une ère de découvertes futures.

20:15

🚀 Conclusion et perspectives pour Lenia

Le paragraphe conclut en soulignant Lenia comme un système de vie artificielle prometteur pour étudier des phénomènes émergents caractéristiques de la vie, grâce à un petit nombre de règles. Les avancées de l'équipe Flowers de l'INRIA utilisant le machine learning ont grandement acceleré les découvertes dans Lenia, et il est prévu que de nouvelles créatures virtuelles continueront d'apparaître dans les années à venir. L'auteur remercie les chercheurs impliqués et encourage les spectateurs à s'abonner à la chaîne pour suivre les futures découvertes.

Mindmap

Keywords

💡Lenia

Lenia est une simulation informatique avancée, présentée comme une extension du jeu de la vie de Conway. Contrairement au jeu de la vie, qui fonctionne sur des règles simples et des états discrets pour simuler des comportements complexes, Lenia introduit des valeurs continues et un temps continu pour générer des formes de vie artificielle plus complexes et diversifiées. Dans la vidéo, Lenia est utilisée pour explorer la notion d'émergence dans les systèmes artificiels, produisant des motifs qui ressemblent à des créatures virtuelles.

💡Jeu de la vie

Le jeu de la vie est une simulation conçue par John Conway dans les années 1970. Il s'agit d'un automate cellulaire qui utilise des règles simples pour déterminer l'état des cellules (vivantes ou mortes) sur une grille. Ce concept sert de point de départ à Lenia. Le jeu de la vie illustre comment des règles basiques peuvent mener à l'apparition de phénomènes complexes, un principe fondamental exploré plus avant par Lenia.

💡Vie artificielle

La vie artificielle est un domaine de recherche visant à créer des systèmes artificiels qui imitent les comportements des systèmes vivants. Cette discipline couvre un large éventail de méthodes, y compris les simulations informatiques comme Lenia et le jeu de la vie. Dans la vidéo, la vie artificielle est le cadre conceptuel dans lequel Lenia est explorée, soulignant l'objectif de reproduire des aspects de la complexité biologique dans un environnement virtuel.

💡Émergence

L'émergence désigne l'apparition de comportements ou de propriétés complexes à partir de règles simples dans un système. Dans le contexte de Lenia et du jeu de la vie, l'émergence est le phénomène clé à travers lequel des motifs simples peuvent conduire à la formation de structures complexes et auto-organisées. La vidéo met en lumière comment Lenia, à travers des règles informatiques de base, peut engendrer des comportements complexes et diversifiés.

💡Automate cellulaire

Un automate cellulaire est un modèle mathématique pour un système où des cellules sur une grille évoluent à travers le temps selon des règles définies. Le jeu de la vie est un exemple célèbre. Lenia est présentée comme une version avancée de ce concept, avec des règles qui permettent des valeurs continues et un traitement plus complexe de l'espace et du temps, conduisant à des dynamiques plus riches.

💡Motifs

Dans le contexte de Lenia et du jeu de la vie, les motifs désignent des configurations particulières de cellules qui présentent des comportements ou des propriétés uniques, comme la stabilité, l'oscillation, ou le mouvement. La vidéo discute de la découverte de motifs complexes dans Lenia qui ressemblent à des formes de vie, démontrant la capacité de la simulation à produire une variété de phénomènes émergents.

💡Filtres

Les filtres dans Lenia sont utilisés pour calculer l'influence des cellules environnantes sur une cellule donnée, en remplaçant la notion de voisins immédiats par des zones d'influence plus larges ou spécifiques. Cela permet une simulation plus flexible et des interactions plus complexes entre les cellules, conduisant à la formation de motifs variés et dynamiques.

💡Fonction de croissance

La fonction de croissance dans Lenia détermine comment les cellules évoluent en fonction de l'influence de leur environnement, décrite par le filtre. Elle permet d'ajuster le taux de croissance des cellules, introduisant une dynamique temporelle continue et contribuant à la diversité des formes de vie artificielles que Lenia peut simuler.

💡Espace des paramètres

L'espace des paramètres fait référence à l'ensemble des configurations possibles pour les règles de simulation dans Lenia, incluant les types de filtres, les fonctions de croissance, et d'autres paramètres. La vidéo souligne la richesse et la complexité de cet espace, indiquant que l'exploration de cet espace peut révéler des comportements émergents inattendus et diversifiés.

💡Machine learning

Le machine learning est mentionné dans la vidéo comme un outil pour explorer efficacement l'espace des paramètres de Lenia. Il s'agit d'une technique permettant aux algorithmes d'apprendre à partir des données, utilisée ici pour identifier des configurations qui produisent des motifs intéressants. Cette approche représente une avancée significative dans la recherche sur la vie artificielle, en permettant de découvrir de nouvelles formes de comportements complexes.

Highlights

Lenia est une simulation informatique capable de générer des créatures virtuelles à partir de règles élémentaires.

Lenia est considérée comme une extension du célèbre jeu de la vie, conçu par John Conway.

Le domaine de la vie artificielle cherche à créer des systèmes artificiels imitant les comportements des systèmes vivants.

Lenia permet d'explorer l'idée d'émergence à partir de règles informatiques simples.

Les règles de base du jeu de la vie sont utilisées pour faire évoluer une grille de cellules virtuelles.

Les planeurs du jeu de la vie émergent des règles microscopiques sans notion de déplacement dans les règles.

Lenia généralise les principes du jeu de la vie en autorisant des valeurs continues pour les cellules.

Dans Lenia, les règles d'évolution sont adaptées pour permettre un état continu pour les cellules et un temps continu.

Lenia utilise des filtres pour remplacer la notion de voisines immédiates et permettre une idée de proximité continue.

Les règles de croissance dans Lenia sont interprétées comme des taux de croissance pour les cellules.

Lenia permet de trouver des règles qui engendrent des comportements émergents et des structures virtuelles complexes.

L'équipe de Bert Chan a utilisé Lenia pour découvrir de nouvelles formes de motifs et de créatures virtuelles.

L'Orbium est un motif de Lenia qui se déplace et ressemble à une créature avec une structure interne et une symétrie bilatérale.

L'Hydrogenicum est une autre créature découverte dans Lenia, montrant un déplacement non linéaire et une symétrie bilatérale.

L'amélioration des règles de base de Lenia permet la découverte de créatures plus riches et impressionnantes.

L'ajout de plusieurs canaux à Lenia permet de stocker plusieurs valeurs indépendantes, ouvrant la voie à de nouveaux comportements complexes.

Les équipes de l'INRIA ont adapté des méthodes de machine learning pour explorer efficacement l'espace des paramètres de Lenia.

Les découvertes dans Lenia ont été grandement facilitées par l'utilisation de techniques de machine learning inspirées de la psychologie et des neurosciences.

Lenia est devenu l'un des systèmes de vie artificielle les plus prometteurs pour étudier des phénomènes émergents caractéristiques de la vie.

Transcripts

play00:00

Bonjour à tous, aujourd’hui on va parler d’une simulation informatique incroyable,

play00:05

qui semble capable de générer des créatures virtuelles à partir de presque rien. Elle

play00:12

s’appelle Lenia, et on peut la voir comme une sorte d’extension du jeu de la vie.

play00:17

Le jeu de la vie, vous vous en souvenez peut-être, c’est une simulation imaginée par John

play00:21

Conway dans les années 1970, et à laquelle j’avais consacré toute une vidéo. Eh bien

play00:26

Lenia, c’est encore plus fort et encore plus beau que le jeu de la vie.

play00:33

[jingle]

play00:35

Lenia, tout comme le jeu de la vie, appartient à ce domaine de recherche qu’on appelle

play00:41

« La vie artificielle ». L’objectif de cette discipline, c’est de créer des

play00:45

systèmes artificiels dont les comportements se rapprochent de ceux qu’on retrouve dans

play00:50

les systèmes vivants. Et cela peut se faire différentes façons.

play00:54

[ALIFE Soit en étudiant des réactions chimiques simples dont les interactions miment les processus

play01:00

du vivant. Soit en essayant des créer des machines capables par exemple d’évoluer

play01:05

et de se reproduire de façon autonome. Ou bien de façon plus accessible, en créant

play01:10

des simulations informatiques qui imitent le vivant.]

play01:13

Mais attention, quand je parle d’une simulation qui imite le vivant, je ne parle pas d’animer

play01:18

un personnage dans un jeu vidéo. Ce qu’on cherche à faire, c’est à créer de l’émergence.

play01:22

C’est-à-dire qu’on veut partir d’un système simple, avec des règles élémentaires,

play01:27

mais qui, quand on le simule, produise des comportements macroscopiques inattendus.

play01:31

C’est comme ça que fonctionne la vie telle qu’on la connait : c’est un phénomène

play01:35

émergent. A la base du vivant, il y a « simplement » un grand nombre de réactions chimiques. Mais

play01:41

dont la combinaison va faire émerger des processus complexes, allant jusqu’à l’auto-organisation

play01:47

des organismes vivants.

play01:48

Aujourd’hui, on va donc essayer d’explorer cette idée d’émergence, mais à partir

play01:53

de règles informatiques simples, capables, quand on les simule, d’engendrer des comportements

play01:57

complexes. Et pour ça, revoyons déjà comment fonctionne le jeu de la vie.

play02:02

J’y avais consacré toute une vidéo que je vous invite à regarder, mais je vais quand

play02:06

même rappeler les bases. Tout d’abord, le jeu de la vie, ça n’est pas vraiment

play02:10

un jeu puisqu’il n’y a pas de joueur à proprement parler. C’est juste une simulation,

play02:15

qui obéit à ses propres règles, et qu’on peut faire tourner sur un ordinateur.

play02:19

[GRILLE Pour ça on part d’une grille, aussi grande qu’on le souhaite, et dont chaque

play02:24

case représente une sorte de cellule virtuelle, qui peut être soit vivante, soit morte. Ici

play02:30

je vais représenter les cellules mortes en noir, et les vivantes en jaune. Et ensuite

play02:35

on va faire évoluer les cellules au tour par tour avec deux règles très simples.]

play02:39

[REGLES A chaque tour, pour chaque cellule, on regarde ses 8 voisines, et on compte combien

play02:45

il y en a de vivantes. La première règle, c’est qu’une cellule vivante a besoin

play02:49

de 2 ou 3 voisines pour se maintenir en vie. On peut dire qu’en dessous de 2, elle meurt

play02:55

d’isolation, mais au-delà de 4, elle meurt de surpopulation.

play02:58

La deuxième règle, c’est que si une case vide, est entourée par exactement 3 voisines

play03:04

vivantes, elle devient vivante. Et voilà c’est tout. A chaque tour, pour chaque cellule,

play03:10

on compte les voisines, et on applique ces deux règles pour faire évoluer la grille.]

play03:14

[FILM LIFE Pour voir ce que ça donne, on va partir d’une configuration initiale tirée

play03:18

au hasard, par exemple celle-ci, et on va simuler, tour après tour. Et voici le genre

play03:24

de choses qu’on obtient. Au début ça semble assez aléatoire, mais peu à peu on voit

play03:29

des choses intéressantes émerger.

play03:30

Déjà il y a des structures isolées qui semblent stables, comme celle qu’on voit

play03:35

ici, ou là. Ensuite il y a des motifs qui oscillent entre deux états. Et puis, encore

play03:40

plus intrigant, on a des structures qui semblent se déplacer en diagonale. On les surnomme

play03:45

des planeurs.

play03:46

Et ce qui est absolument fou avec ces planeurs, c’est qu’ils émergent des règles microscopiques.

play03:52

A aucun moment dans le code on ne dit de prendre telle structure et de la déplacer sur la

play03:56

grille. Il n’y a aucune notion de déplacement dans les règles du jeu de la vie. Le mouvement

play04:00

apparent des planeurs « émerge » des règles d’évolution microscopiques.]

play04:04

Depuis les années 70, on a trouvé avec le jeu de la vie toute une zoologie de motifs

play04:10

localisés de plus en plus complexes, et ayant des propriétés intéressantes; comme le

play04:14

fait d’être stable, ou de se déplacer.

play04:18

Et même des motifs encore plus riches, comme ces structures capables d’engendrer des

play04:23

planeurs. Il y a plein d’exemples très jolis, je ne vais pas tous vous les montrer,

play04:27

je vous invite vraiment à aller voir la vidéo dédiée si vous ne l’avez pas déjà vue.

play04:30

Car aujourd’hui ce qu’on veut, c’est aller plus loin !

play04:33

Une chose qu’on peut déjà se demander, c’est : est-ce qu’on peut modifier les

play04:38

règles du jeu de la vie, pour avoir des choses encore plus intéressantes ? Pourquoi ces

play04:42

deux règles spécifiquement, qu’est-ce qui se passe si on en essaye d’autres ?

play04:45

La règle usuelle, on la surnomme parfois B3/S23. B3 pour « born » avec 3 voisines,

play04:52

et S pour « survives » avec 2 ou 3 voisines. Mais quid des autres règles possibles ? Par

play04:59

exemples B34 et S125, ça donnerait quoi ? Eh bien ça ne produit rien d’aussi intéressant.

play05:06

Il existe en principe 2^18 règles possibles, soit environ 260 000 possibilités. Mais la

play05:12

plupart conduisent à des situations sans intérêt, comme l’envahissement de la grille

play05:15

par des cellules vivantes, ou au contraire la destruction totale. Et très peu de règles

play05:20

donnent des phénomènes de structures localisées, et rien d’aussi simple et beau que les règles

play05:25

originelles du jeu de la vie.

play05:27

Mais dans ce cas, est-ce qu’on ne pourrait pas essayer d’aller plus loin, de généraliser

play05:30

les principes du jeu de la vie ? Eh bien c’est ce que fait Lenia !

play05:33

[jingle]

play05:34

Pour comprendre comment on va construire Lenia, il faut réaliser que le jeu de la vie est

play05:38

ce qu’on appelle une simulation « discrète ». « Discrète », ici, c’est dans le sens

play05:42

mathématique du terme, et ça signifie « qui n’est pas continu ». Et on va essayer

play05:47

de s’affranchir de ça.

play05:49

Déjà dans le jeu de la vie, les cellules ont un état discret. Elles sont soit vivantes,

play05:54

soit mortes. Mais pas entre les deux. Eh bien pour aller plus loin, on va maintenant autoriser

play05:59

n’importe quelle valeur entre 0 et 1. Ca veut dire qu’une cellule pourra valoir par

play06:04

exemple 0,67 ou 0,08

play06:07

[INITIALISATION Si on tire chaque valeur au hasard pour la situation de départ, on aura

play06:13

quelque chose de ce genre : ici pour la représentation j’ai utilisée une échelle de couleur qui

play06:17

va du noir au jaune pour représenter les valeurs entre 0 et 1. Et la valeur dans chaque

play06:22

case vous pouvez la voir comme un niveau de vie de la cellule, ou une concentration d’une

play06:27

certaine substance vitale.]

play06:29

Bon, mais si maintenant chaque cellule peut avoir une valeur continue entre 0 et 1, comment

play06:33

on peut adapter les règles d’évolution ?

play06:36

[COMPTAGE Pour le comptage des voisines, on peut garder la même idée, mais faire cette

play06:40

fois la somme des valeurs des 8 voisines. La seule différence c’est qu’au lieu

play06:45

de récupérer un nombre entier, on va avoir un nombre réel compris entre 0 et 8, et qui

play06:51

va représenter son voisinage.

play06:53

Il va donc falloir adapter les règles, on ne peut plus se contenter de dire que la cellule

play06:57

survit avec 2 voisins et survit ou apparait avec 3 voisins. Il faut imaginer un truc continu.

play07:02

Par exemple avec une courbe de ce genre, qui donne le nouvel état en fonction de la somme

play07:08

des voisines. Sur cette courbe ça veut dire par exemple qu’une cellule qui a une somme

play07:13

des voisines de 2,5 recevra la valeur 0,75. Mais on peut imaginer tout un tas de formes

play07:20

différentes pour cette courbe.]

play07:22

Donc avoir un état continu pour les cellules, c’est jouable. En revanche, pour l’instant,

play07:28

l’écoulement du temps, lui, est toujours discret : on avance au tour par tour, comme

play07:32

dans le jeu de la vie. Mais on pourrait chercher aussi à le rendre continu : pour pouvoir

play07:37

le faire avancer petit à petit.

play07:39

[CROISSANCE Pour cela, il faut modifier un peu le sens de cette courbe qui indique quoi

play07:44

faire en fonction de la somme des voisins. On va l’interpréter non pas comme le nouvel

play07:48

état de la cellule au tour suivant, mais comme son taux de croissance.

play07:53

Par exemple ici, avec une valeur de 2.5 en somme des voisins, on a la valeur de 0.5,

play07:58

ça veut dire que la croissance sera de 0.5 par tour. Mais si on veut faire avancer le

play08:04

temps de seulement 1/2 tour ou 1/4 de tour ou même 1/1000e de tour, on peut. On applique

play08:09

le taux de croissance pendant la durée indiquée, et on peut traiter le temps comme s’il était

play08:14

continu.

play08:15

Et bien sûr, sur cette courbe, quand on a des valeurs négatives, ça indique une décroissance

play08:20

de la cellule, par exemple quand il y a trop ou trop peu de voisinage.

play08:24

Evidemment une petite subtilité c’est qu’avec cette idée de taux de croissance, on peut

play08:30

se retrouver avec des cellules qui dépassent la valeur de 1, ou au contraire qui vont finir

play08:34

en-dessous de 0. On ajoute donc juste une règle supplémentaire qui dit qu’on limite

play08:39

les valeurs entre 0 et 1.]

play08:40

A ce stade, les états des cellules sont continues, et le temps est continu. Eh bien la dernière

play08:47

étape, c’est de rendre l’espace continu. Comment éviter cette idée de division un

play08:52

peu arbitraire en cellules ?

play08:53

[FILTRE Eh bien on va remplacer la règle de « compter les voisines immédiates » par

play08:58

une règle du genre « compter toutes les cellules dans une certaine zone ». Par exemple

play09:03

pour chaque point, on pourrait calculer la moyenne des valeurs des cellules situées

play09:07

dans un certain rayon R autour. La notion de voisines immédiate disparait, et est remplacée

play09:13

par une idée de proximité.

play09:14

Encore mieux, on pourrait faire la moyenne dans une certaine zone en anneau comme ça.

play09:19

Ca se rapprocherait de ce que fait le jeu de la vie, ou en comptant les voisines immédiates,

play09:24

on regarde une sorte d’anneau autour de la cellule.

play09:28

Techniquement, calculer la moyenne des voisines en pondérant de cette façon, c’est ce

play09:32

qu’on appelle « appliquer un filtre ».]

play09:35

Et je vous passe les détails mathématiques, mais cette idée de « compter avec un filtre »,

play09:40

ça s’appelle une opération de convolution, et ça s’écrit très bien de façon parfaitement

play09:45

continue, sans qu’il y ait même besoin de diviser explicitement le monde en cellules.

play09:50

Evidemment pour faire le calcul, on va quand même devoir découper le monde en petites

play09:55

cases, mais on pourra choisir ces cases aussi petites qu’on le souhaite, et on s’est

play09:59

donc affranchis de l’idée d’un espace forcément fait de cellules discrètes de

play10:03

taille fixe.

play10:04

[RESUMÉ Résumons où nous en somme. Je vous ai proposé trois changements, trois manières

play10:09

de généraliser le jeu de la vie : prendre des valeurs continues entre 0 et 1 dans les

play10:14

cellules, sonder le voisinage en utilisant un filtre, par exemple un filtre en anneau,

play10:18

et passer le résultat une fonction de croissance qui va déterminer un taux d’évolution

play10:23

de la cellule.

play10:24

Et ces trois idées constituent les principes de base de Lenia, et forment ce qu’on appelle

play10:30

un automate cellulaire continu.]

play10:32

Si ça vous intéresse, j’ai écrit un code Python pour montrer comment on fait toutes

play10:37

ces adaptations, je le partagerai en description. Et cette formulation ouvre plein de nouvelles

play10:42

possibilités pour essayer de trouver des règles qui engendrent des comportements émergents

play10:47

intéressants. Tout ce qu’il faut faire, c’est choisir un filtre, choisir une fonction

play10:52

de croissance, et simuler. Eh bien c’est parti !

play10:58

[jingle]

play10:59

Les principes de Lenia ont été décrits pour la première fois par le chercheur Bert

play11:04

Chan en 2019. Il a notamment montré qu’en choisissant bien les règles, on pouvait retrouver

play11:10

toute une zoologie de motifs, comme dans le jeu de la vie. Des motifs qui ressemblent

play11:15

vraiment à des créatures virtuelles.

play11:17

[LENIA Par exemple prenons un simple filtre en anneau et une fonction de croissance qui

play11:22

ait une forme gaussienne. On retrouve bien l’idée qu’il y a une zone de croissance,

play11:27

mais qu’avec trop ou trop peu de voisinage, il y a une décroissance due à l’isolation,

play11:31

ou à la surpopulation.]

play11:33

[FILM TACHE Et avec ça, regardons la configuration initiale suivante : une simple tâche. Ici

play11:39

la valeur de chaque cellule est donc représentée par une couleur qui va du noir au jaune en

play11:43

passant par le violet. On a des cellules qui ont des valeurs proches de 1 au centre, et

play11:47

ça décroit quand on s’éloigne.

play11:49

Si on lance la simulation à partir de cette situation initiale, voici ce qu’on obtient.

play11:54

Il se passe quelque chose d’intéressant ! On voit que ça évolue, que des motifs

play11:59

se forment et qu’ils envahissent en quelque sorte l’espace disponible, jusqu’à se

play12:04

stabiliser. Ca n’est pas tout à fait comme dans le jeu de la vie, mais c’est prometteur.]

play12:09

[ORBIUM Maintenant, considérez la configuration initiale suivante. Le motif que vous voyez

play12:13

ici a été découvert par Bert Chan, et baptisé Orbium. C’est toujours le même code couleur

play12:18

: jaune pour les valeurs élevées, violet orange pour les intermédiaires, et noir quand

play12:22

c’est faible ou nul.

play12:24

Si je lance la simulation avec les mêmes paramètres de filtre et de croissance qu’avant,

play12:29

voici ce que j’observe. Le motif se déplace ! Et à nouveau, j’insiste pour ceux qui

play12:35

trouveraient ça banal : en fait, à aucun moment dans les règles, on n’a codé une

play12:39

notion de déplacement. Le déplacement émerge des règles microscopiques, comme c’était

play12:44

le cas avec le planeur dans le jeu de la vie.

play12:47

Ah oui et petit détail, notez au passage que depuis le début, j’utilise sans le

play12:51

dire ce qu’on appelle des conditions périodiques : les cellules d’un bord sont considérées

play12:55

comme en contact avec celles du bord opposé. Donc quand l’Orbium sort d’un côté,

play12:58

il re-rentre de l’autre.

play13:00

L’Orbium est amusant car on dirait vraiment une créature, comme une sorte de mollusque,

play13:06

avec une structure interne, et notamment ce qu’on appelle en biologie une symétrie

play13:09

bilatérale. Pour comparaison, je vous redessine à la même échelle aussi le filtre en anneau

play13:15

qu’on utilise pour « compter les voisines ».

play13:17

Et c’est intéressant d’en faire une interprétation comme une faculté sensorielle. D’une certaine

play13:23

façon le filtre permet à chaque point de la créature de sentir son voisinage à une

play13:28

certaine distance, et d’évoluer en fonction.]

play13:31

Malgré tout, l’Orbium est un motif qui reste assez exceptionnel et fragile.

play13:36

[RANDOM Si vous partez d’une configuration initiale aléatoire, vous allez toujours retrouver

play13:40

les mêmes motifs, même si la façon dont ces motifs progresse est intéressante.]

play13:46

Mais pour avoir des créatures encore plus riches et impressionnantes, il va falloir

play13:51

un peu améliorer les règles de base.

play13:53

[jingle]

play13:54

Une première amélioration simple, c’est d’utiliser un filtre plus complexe, composé

play13:57

par exemple de plusieurs anneaux d’intensités différentes. Cela revient d’une certaine

play14:02

manière à pouvoir sentir le voisinage à différentes distances.

play14:05

[HYDROGENIUM Avec cette règle, on peut voir émerger cette créature baptisée Hydrogenium.

play14:11

On retrouve une symétrie bilatérale, et cette fois le déplacement n’est plus totalement

play14:19

linéaire comme avec l’Orbium, ou le planeur du jeu de la vie. On voit la créature tourner

play14:25

lègèrement d’un côté, puis de l’autre.]

play14:28

Dans cette exemple, on a donc utilisé un filtre plus complexe, mais toujours la même

play14:32

fonction de croissance. Mais on peut également choisir d’utiliser plusieurs filtres, ayant

play14:37

chacun sa propre fonction, et de sommer les contributions. Cela permet des comportements

play14:42

différenciés en fonction de ce qui est « senti » par les filtres aux différentes distances.

play14:47

[FISH Voici un exemple d’une créature obtenue avec un système de ce genre. Elle ressemble

play14:53

à un Orbium, mais on retrouve ce déplacement non-linéaire qu’on avait avec Hydrogenium.]

play14:59

Mais l’amélioration la plus intéressante, ça consiste à utiliser plusieurs canaux.

play15:06

Depuis le début, je vous ai dit que les valeurs qu’on représente, qui sont comprises entre

play15:09

0 et 1, on peut les interpréter soit comme des intermédiaires entre vivant et mort,

play15:15

soit comme par exemple la concentration d’une certaine espèce chimique.

play15:18

Mais s’il pouvait y avoir plusieurs espèces chimiques présentes ? C’est-à-dire que

play15:22

dans chaque case on ne stocke pas une seule valeur entre 0 et 1, mais plusieurs, disons

play15:28

trois valeurs indépendantes. Ca veut dire qu’on pourrait avoir des endroits qui contiennent

play15:32

beaucoup d’une substance, mais peu des deux autres, ou l’inverse.

play15:37

Pour visualiser ce qu’on a quand on a 3 valeurs, c’est plus compliqué qu’avant,

play15:40

mais on peut utiliser une représentation en rouge vert et bleu.

play15:43

[RVB Voici un exemple : ce que vous voyez ici c’est un motif de départ où dans chaque

play15:48

pixel on a stocké 3 valeurs. Une qu’on représente en rouge, l’autre en vert et

play15:52

la dernière en bleu. Et la couleur de chaque pixel résulte du mélange des 3. Les zones

play15:58

magenta contiennent du rouge et du bleu, en jaune c’est vert et rouge, et en blanc,

play16:04

on a les 3 substances présentes en quantités proche de 1. On dit donc qu’on a maintenant

play16:10

3 canaux de simulation.]

play16:12

Ensuite, il faut adapter les règles pour tenir compte des ces multiples canaux. En

play16:17

pratique on va permettre à chaque canal de sentir les autres avec un filtre dédié et

play16:22

d’y réagir par une fonction de croissance. On imagine par exemple que le canal bleu soit

play16:26

capable de sentir le canal vert dans son voisinage, et le vert sente à la fois disons le bleu

play16:32

et le rouge.

play16:33

En créant ainsi plusieurs filtres qui connectent les différents canaux, on peut voir émerger

play16:37

des comportements très intéressants.

play16:39

[AQUARIUM Par exemple ici, voici ce qu’il se passe avec ma configuration initiale. C’est

play16:43

vraiment très chouette on voit notre motif se déplacer, et se séparer en deux pour

play16:49

former une structure mobile plus grande et symétrique. C’est assez dingue, c’est

play16:54

presque comme une sorte de division cellulaire !]

play16:56

Il existe encore toute une zoologie de motifs qui ont été mis en évidence, je vous renvoie

play17:02

aux vidéo de Bert Chan sur sa chaîne Youtube. Mais vous voyez déjà avec mes quelques simulations

play17:08

que Lenia est un système extrêmement riche et intéressant, qui promet d’étendre beaucoup

play17:12

ce qu’on arrivait à faire avec le jeu de la vie de Conway.

play17:16

La principale difficulté, c’est que Lenia est tellement riche que l’espace des possibilités

play17:21

est énorme. Entre les filtres, les fonctions de croissance, le nombre de canaux, et les

play17:26

configurations de départ, le nombre de choix de paramètres à effectuer est considérable

play17:31

avant d’espérer peut-être trouver une créature intéressante.

play17:34

Au départ, la solution la plus commode consistait à essayer des trucs au hasard, et à chercher

play17:39

à la main si on trouvait des motifs intéressants, prometteurs, ce qui est évidemment très

play17:44

fastidieux. Mais ces dernières années, une équipe de l’INRIA à Bordeaux a eu l’idée

play17:49

d’adapter des méthodes de machine learning pour cette tâche.

play17:54

[jingle]

play17:56

Le machine learning, c’est cette discipline qui s’intéresse à la façon dont des algorithmes

play18:02

peuvent apprendre, et c’est notamment ce qui est à la base de la révolution actuelle

play18:06

en intelligence artificielle, j’en ai parlé de nombreuse fois sur la chaîne.

play18:10

Si vous connaissez un peu le fonctionnement des réseaux de neurones, il y a peut-être

play18:14

des choses dans Lenia qui vous ont interpelé : on parle de filtres, d’une fonction de

play18:20

croissance qui vient en quelque sorte activer le signal après filtration.

play18:23

Ca ressemble pas mal au vocabulaire des réseaux de neurones, et notamment de ce qu’on appelle

play18:28

les réseaux récurrents, dans lesquels ce qui sort du réseau lui est réinjecté en

play18:32

entrée.

play18:33

Lenia dans sa forme originelle n’a pas exactement la bonne structure, mais il a été possible

play18:38

d’adapter sa paramétrisation pour la rendre plus similaire à certaines architectures

play18:43

de réseaux de neurones. Et cela a ouvert la porte à l’utilisation de tout un arsenal

play18:48

de techniques permettant d’explorer efficacement l’espace des possibilités.

play18:53

Ainsi l’équipe Flowers de l’INRIA a utilisé des méthodes qu’ils avaient initialement

play18:58

mises au point pour l’entrainement de réseaux de neurones. Des méthodes s’inspirant de

play19:02

notions de psychologie du développement et de neurosciences, comme la curiosité et la

play19:07

motivation intrinsèque.

play19:09

Il faudrait vraiment que je consacre une vidéo à ces méthodes, mais il faut savoir qu’elles

play19:14

se prêtent très bien à la découverte de nouvelles structures intéressantes dans l’énorme

play19:19

espace des paramètres de Lenia. Et c’est ainsi qu’ont été découverts d’autres

play19:23

motifs encore plus intrigants.

play19:25

[FLOWERS Par exemple celui-ci, qui arrive à naviguer autour d’obstacles, à les contourner.

play19:31

Et même à parcourir un labyrinthe.

play19:44

Un point faible des premiers motifs Lenia, c’était leur stabilité. Comme dans le

play20:05

jeu de la vie, la moindre modification pouvait les détruire. Mais on connait maintenant

play20:09

des motifs qui résistent très bien aux perturbations. Par exemple qui sont capables de se reconstituer

play20:15

si on les endommage, si on injecte du bruit, ou bien s’ils sont attaqués par des balles

play20:19

virtuelles.

play20:20

Certains de ces motifs sont aussi capable de se déplacer en fonction de la présence

play20:28

d’un certain signal sur un canal. C’est un phénomène qui se rapproche de ce qu’on

play20:32

appelle la chimiotaxie chez les bactéries, et qui leur permet de diriger leur mouvement

play20:36

en fonction de la concentration de certaines espèces chimiques.

play20:39

Et aussi, bien sûr, on a trouvé plus de motifs capable de se reproduire, une des caractéristiques

play20:46

les plus importantes de la vie. Avec même ici un cas de reproduction de deux individus

play20:51

qui en engendrent un troisième !

play20:52

En ajustant encore les règles de base de Lenia, les scientifiques ont pu plus facilement

play20:58

découvrir des formes stables, et même les mettre en compétition dans une sorte d’écosystème

play21:03

virtuel, et observer des premiers éléments de sélection naturelle.]

play21:09

Ces dernières années, Lenia s’est imposé comme l’un des systèmes de vie artificielle

play21:16

les plus prometteurs, permettant d’étudier avec un nombre restreint de règles certains

play21:21

phénomènes émergents qui caractérisent la vie au sens large.

play21:25

Ces découvertes ont été grandement accélérées par l’adaptation de ces méthodes de machine

play21:30

learning qui facilitent l’exploration de l’espace des paramètres. Et il est vraisemblable

play21:35

que le panel de créatures virtuelles continue de s’enrichir dans les années à venir.

play21:41

Merci d’avoir suivi la vidéo, un merci tout particulier aux chercheuses et chercheurs

play21:44

de l’équipe Flowers de l’INRIA, avec qui j’ai eu le plaisir d’échanger, je

play21:47

vous mets plein de références en description. Abonnez vous à la chaine, je continue de

play21:51

le dire car Youtube diffuse de moins en moins mes vidéos, c’est dommage. Et en attendant

play21:56

je vous dit à très vite pour une nouvelle vidéo, à bientôt. MINIATURE

Rate This

5.0 / 5 (0 votes)

Related Tags
Vie ArtificielleSimulation de LeniaJeu de la VieCréauration de MotifsIntelligence ArtificielleBert ChanApprentissage AutomatiqueÉmergence de MotifsÉcosystème Virtuel
Do you need a summary in English?