- 4
- 401 539
Dylan Cope
United Kingdom
Приєднався 23 тра 2013
PhD student research scientist studying machine learning. Interested in reinforcement learning, language, and evolutionary computation.
Simulating the Evolution of Multicellularity
In this video I showcase a program that I have been working on for simulating evolution by natural selection. I dive into various mechanisms of the simulation and go over some interesting real-life biology in the process. The key aim of this project is to evolve multicellular organisms, starting from single-celled protozoa-like creatures that must collect mass and energy from their surroundings in order to survive, grow and reproduce.
This work was presented at the 2023 International Conference on Artificial Life. You can read a more detailed exploration of the project in the paper published in the conference proceedings:
Dylan Cope, 2023. "Real-time Evolution of Multicellularity with Artificial Gene Regulation." Proceedings of the 2023 Artificial Life Conference. MIT Press. direct.mit.edu/isal/proceedings/isal2023/35/77/116930
If you want to run the simulation yourself or just poke around the code, you can find the project on GitHub:
github.com/DylanCope/ProtoEvo
Join the Discord:
discord.com/invite/GY5UJxbBnq
Chapters:
00:00 - Introduction
01:24 - Recapping Simulation Basics
02:27 - How Do Computers Simulate Evolution?
04:46 - Introducing Gene Regulation
05:15 - Why is Gene Regulation Important?
07:44 - Implementing GRNs In The Simulation
10:07 - The Surface Nodes System
12:37 - Looking At A GRN
14:13 - Looking At Cell Signalling
16:40 - Conclusions
Credits and References:
Neil Shubin, Some Assembly Required: Decoding Four Billion Years of Life, from Ancient Fossils to DNA
www.amazon.com/Some-Assembly-Required-Decoding-Billion/dp/1101871334
John Holland, Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence
www.amazon.com/Adaptation-Natural-Artificial-Systems-Introductory/dp/0262581116
“Darwin’s Finches”, Illustrated by John Gould, in “Journal of Researches”, Darwin, 1845
picryl.com/media/darwins-finches-by-gould-a6e32a
Epigenetics Mechanisms Diagram, United States National Institutes of Health
en.wikipedia.org/wiki/Epigenetics#/media/File:Epigenetic_mechanisms.png
Cell Types Diagram, Wikipedia Contributor Haileyfournier
en.wikipedia.org/wiki/Cellular_differentiation#/media/File:Final_stem_cell_differentiation_(1).svg
Tectonic plates animation: Scotese, C.R., 2016. Plate Tectonics, Paleogeography, and Ice Ages, (Modern World - 540Ma)
ua-cam.com/video/g_iEWvtKcuQ/v-deo.html
Genetic Algorithms Diagram
www.strong.io/blog/evolutionary-optimization
Galapagos Finch Evolution - HHMI BioInteractive Video
ua-cam.com/video/mcM23M-CCog/v-deo.html&ab_channel=biointeractive
Evolution Tree of Life Diagram
www.evogeneao.com/en/learn/tree-of-life
Music by Vincent Rubinetti
Download the music on Bandcamp:
vincerubinetti.bandcamp.com/a...
Stream the music on Spotify:
open.spotify.com/album/1dVyjw...
This work was presented at the 2023 International Conference on Artificial Life. You can read a more detailed exploration of the project in the paper published in the conference proceedings:
Dylan Cope, 2023. "Real-time Evolution of Multicellularity with Artificial Gene Regulation." Proceedings of the 2023 Artificial Life Conference. MIT Press. direct.mit.edu/isal/proceedings/isal2023/35/77/116930
If you want to run the simulation yourself or just poke around the code, you can find the project on GitHub:
github.com/DylanCope/ProtoEvo
Join the Discord:
discord.com/invite/GY5UJxbBnq
Chapters:
00:00 - Introduction
01:24 - Recapping Simulation Basics
02:27 - How Do Computers Simulate Evolution?
04:46 - Introducing Gene Regulation
05:15 - Why is Gene Regulation Important?
07:44 - Implementing GRNs In The Simulation
10:07 - The Surface Nodes System
12:37 - Looking At A GRN
14:13 - Looking At Cell Signalling
16:40 - Conclusions
Credits and References:
Neil Shubin, Some Assembly Required: Decoding Four Billion Years of Life, from Ancient Fossils to DNA
www.amazon.com/Some-Assembly-Required-Decoding-Billion/dp/1101871334
John Holland, Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence
www.amazon.com/Adaptation-Natural-Artificial-Systems-Introductory/dp/0262581116
“Darwin’s Finches”, Illustrated by John Gould, in “Journal of Researches”, Darwin, 1845
picryl.com/media/darwins-finches-by-gould-a6e32a
Epigenetics Mechanisms Diagram, United States National Institutes of Health
en.wikipedia.org/wiki/Epigenetics#/media/File:Epigenetic_mechanisms.png
Cell Types Diagram, Wikipedia Contributor Haileyfournier
en.wikipedia.org/wiki/Cellular_differentiation#/media/File:Final_stem_cell_differentiation_(1).svg
Tectonic plates animation: Scotese, C.R., 2016. Plate Tectonics, Paleogeography, and Ice Ages, (Modern World - 540Ma)
ua-cam.com/video/g_iEWvtKcuQ/v-deo.html
Genetic Algorithms Diagram
www.strong.io/blog/evolutionary-optimization
Galapagos Finch Evolution - HHMI BioInteractive Video
ua-cam.com/video/mcM23M-CCog/v-deo.html&ab_channel=biointeractive
Evolution Tree of Life Diagram
www.evogeneao.com/en/learn/tree-of-life
Music by Vincent Rubinetti
Download the music on Bandcamp:
vincerubinetti.bandcamp.com/a...
Stream the music on Spotify:
open.spotify.com/album/1dVyjw...
Переглядів: 30 662
Відео
Simulating an Evolving Microcosmos | The Path to Multicellularity
Переглядів 368 тис.Рік тому
In this video I showcase a program that I have been working on for simulating evolution by natural selection. I dive into various mechanisms of the simulation and go over some interesting real-life biology in the process. The key aim of this project is to evolve multicellular organisms, starting from single-celled protozoa-like creatures that must collect mass and energy from their surroundings...
EmeCom@ICLR22 | Joining the Conversation: Towards Language Acquisition for Ad Hoc Team Play
Переглядів 1,5 тис.2 роки тому
Based on work presented at the ICLR 2022 Emergent Communication Workshop by Dylan Cope and Peter McBurney.
EmeCom@NeurIPS20 | Learning to Communicate with Strangers via Channel Randomisation Methods
Переглядів 1,2 тис.2 роки тому
Based on work presented at the NeurIPS 2020 Emergent Communication Workshop by Dylan Cope and Nandi Schoots. Talk given in December 2020.
I’m seeing this pretty late but I’m a PhD student who studies the evolution of multicellularity through experimental evolution in the lab and I think one thing that could really help this simulation is looking at the differences between what we call aggregative multicellularity and clonal multicellularity. Here we seen some of both happening but it is happening in a way similar to what aggregative multicellularity is like where there are cohesion molecules on the outside of cells that allows others even if they’re not perfectly related to connect with. Complex multicellularity has really only ever evolved in organisms with clonal development because it reduces cells from fighting with each other for resources and thus allows for cheaters to evolve who only benefit from the situation instead of helping it along. Thus I think making sure that the simulation looks at clonal development would be quite interesting
Thank you for this comment! I had looked into these differences a bit when developing the simulation but haven't gone too deep into it yet. I really wanted to implement some kind of cytoplasmic determinants systems to allow for differentiation through single-cell bottle necks. I think I'll look into that sometimes in the future - would that be an interesting direction in your opinion?
Eugenics wins yet again
Great research, i just subscribed! I'm also do artificial life, but i focused on nervous sytem constructions in a first place, nice to meet you!
exe doesn't work. scam situation. yes i have java fully updated
@@kurgans you need Java 8 specifically but without more information I can't diagnose your problem. How could this be a scam? It's free, open source software. I'm not selling you anything, I'm just making my work available for you to try and play around with yourself. It's not even a project I was planning on ever properly distributing.
@dylancope scammed out of the 10 minutes spent trying to make it work. so i have to downgrade from the latest version of java 8 to base java 8 is what you're saying? Because i have java 8 fully updated and it don't work
@@kurgans look I'm sorry you're struggling to get it to work but I don't appreciate being called a scammer. Take responsibility for your own use of time. I spent time making this thing, I've spent time trying to make it accessible. But if you don't have the technical skills to set it up and you're not even respectful of my time, I'm not going to help you any further.
@@dylancope can't take a joke i see
@@dylancope that's fine you're gonna end up fixing it anyways i don't need to play your broken game right away
i think if you want to make multicellularity, you should let the cells communicate informations to one another. and they should be able to willingly join other sells and have preferences to whom they want to join with (not just some random chance to connect with other cells)
@@rabbaniazzahra1784 they can communicate and they can choose to detach from cells
game name
@@Solar_system1513 it's not really a game - it's just a simulation you watch run lol. I haven't really given it a name either. It's a program I wrote that you could find the code and executables for in the description if you want to try running it yourself.
very inspiring
I saw a game about single cell organism, I've seen a game about animals and plants And now, time for what is in between.
How can evolution starting with a complete set of codes? wasn't it supposed to be start from 0 lines?
@@Jabawokiz810 real evolution didn't start until a lot of physics and chemistry stuff was already going on.
Have you checked out systems chem and it's impact on abiogenesis research and experiments? Fascinating...
that is some deep symulations
16:05 mmgh🤤🤤cigarettes
Your current system for forming multicelluar organisms seems to be different cells just joining together if they have enough adhesion. But most multicellular organisms in real life come about through a single cell (a zygote) multiplying and staying connected.
@@Groggle7141 Indeed. The purpose of the artificial gene regulatory is to lay down the foundations for reproduction via single-cell bottlenecks to emerge. When talking in evolutionary terms, there is a blurry boundary between colonial organisms that grow and split, and "true" multicellular organisms that rely on zygotes.
The cells in the colonies would need a way to share genetic code among each other.
I'm so friggin mad at the youtube algorithm for not recommending me this for 4 MONTHS! It knows exactly that this is the kind of content that gets me going
I have noooooo clue what’s going on, I love it!!!
Nu-uh
Yuh-uh
We will watch your career with great interest.
Make that food can have waste value and cells can get poisoned
This project reminds me of _Cell Lab_ on Android.
this is glorified spore
@@enux6351 lol I can't tell if you mean this as a good thing or not, but tbh other than spore vaguely being about evolution I don't think they're very similar
Although I know this is just a simulation video, I can't leave God's truth to be unspoken. We, and everything, exist thanks to God, our creator, and it's impossible for the world around us to be created by evolution. Take the fig wasp and tree. The wasp burrows into the fig and lays its eggs inside, pollinating it in the process (which, by the way, is the only way both the wasp and tree reproduce [quote from Wikipedia: "Without this pollinator service fig trees could not reproduce by seed."]). I thank you for taking the time to read this, and I hope you have a great rest of your day.
I am Christian and I have to honestly ask why would you click on a video that has anything to do with Evolution and then proclaim false as soon as the video starts. I don’t hide my light under a bushel basket but it’s things like saying false at the start of a video about an evolution simulation that gives us a bad name. Stay blessed and pick your fights wisely remember dust your sandals off and leave from those who do not receive you.
@@MichaelLane-s3x Yeah, you might be right. I guess I'm just excited to have proof of God that the world can believe.
@@sir_moohow is it proof though, the tree and wasp evolved with each other so it is only natural for the tree to lose its unnecessary reproduction methods as it evolves
@@skoovee Why did the wasp ever decide to burrow in there? Why doesn't it burrow into other fruits? And why did both of them decide to fully get rid of whatever systems they had before in place of the one they have right now? Isn't more reproduction in both of their best interests?
@@sir_moo because it was probably just easier, and whats the point of keeping around redundant systems that need a lot of upkeep? this is millions of years of evolution we are talking about, not just one day where they decided to shake things up a bit
it dosent work. when i start the program i the window just briefly flashes on the screen and dissapears
New videos please, even if it is, just the protozoa moving from one side to the other with you commenting on top, PLEASE, i'm miss you 😢
what engine or thing did you use to code this in ?
0:52 ¿como se llama esa imagen?
@@darlingortiz2956 the only AI generated content was the first 10 secs where I used a stable diffusion model as a part of a custom animation script. The rest was stock footage from various sources and custom animations
Algo que podrias añadir seria que mediante un mayor coste de moleculas o con moleculas distintas las celulas podrian crear otros tipos de cosa para aderirse que sea mas compleja como que les permita transportar nutrientes, informacion, etc... Y asi
Que increible proyecto
@@darlingortiz2956 gracias haha
How to download?
This is a very interesting project you've got going on, do these guys have simulated biochemistry like norns do?
The "good" or "bad" ness of a gene is completely & totally dependent on the context (read "environment"). Within the context of one singular environment, gene alternatives have -no- VERY LITTLE space for being differentiated from the optimal species for that one environment (whether dynamic or not). The hardest part of simulating *the variety* produced by evolution is simulating a plethora of different environmental gradients encompassing any of several extremes. This is true for single celled (SCS) as well as multicellular species (MCS). SCS have few physical barriers other than the gravity well we live in (although evidence shows they could very well survive hitching a ride to other planets in the solar system). MCSs on the other hand are more or less limited to reproduction with local members within the confines of their local environment.
Really interesting. I'm glad these kinds of simulations are being created... Definitely will be following the project!
This network on them is amazing! It’s definitely the most thoughtful evolution simulation I have seen on UA-cam, I thought it is “Bibites” earlier. Good luck with the project!
I really like the symbiosis of the blue and cream colourd species one is mouth one is movement
I was laying in bed for the last few hours, unable to sleep, thinking about creating eerily similar simulation. I finally got out of bed, opened youtube, and this is the first video I've seen, lol. I love it!
Welcome back
13:54 my theory is that cells and soap are similiar. Hydrophilic outside. Hydrophobic inside.
Amazing project ! Thanks also for the biology explainations, they are extremely clear and engaging.
The amount of complexity you were able to put into that simulator and still make it stable is incredible. All my attempts, even the simplest ones, on creating evolution, always turned into pure chaos.
So it runs in Java, no wonder you need a pretty powerful computer :( if only it was written in C, Rust, or C# DOTS...
To be honest, I don't think that any of those languages would make a huge difference. Java is pretty performant if you don't abuse the GC too much, and it's easier to do multiprocessing that C (not sure about Rust). And that's the key issue for this program. Collision engines are hard to parallelise. The only way it would be significantly more performant is if I managed to find a better backend physics library, as I moved away from my own implementation. Ultimately as this is a side project, I don't have time to write everything from scratch so relying on physics engines and UI libraries has been very helpful.
The paper probably answers these, but for the algorithm: Are the GRNs always shallow? If they can also process signals like a neural network, then multicellularity can serve as a way to gain network depth (with some latency) Can the adhesion nodes change their length? Can they reposition in realtime (not between generations)?
The GRNs can have arbitrary depth - they evolve using the NEAT algorithm. But yes you're right that multicellularity is a way to gain depth. Also, depth within a cell has latency. Secondly, the current adhesion system cannot be repositioned. Although connections can be broken and remade.
You could just use Spore the game for this literally lmao
how do i download new version
13:13 I notice the GRN nodes move. How is this controlled I wonder. Graph layout like graphviz is complex because of avoiding overlaps etc. is there some spring based relaxation happening? Very interested to know thanks
Good question. To be honest, I kind of hacked together a solution to that problem. It's not a proper spring-based model. Each node in the graph repels neighbours that are too close and attracts ones that are far away. If I recall correctly, there are some edge cases to handle the nodes moving with the cells and attaching them to anchors on the surface nodes.
Oh you’re still active! Amazing!
HE'S BAAAAAAAAAAAAAAAAAAACK!!!!!
Someday the stars will be extinguished, and in my opinion, if something is worth competing for, it is for who will be the ancestor of the last life. I'd like to do research on entropy and replication, but idk where to start
Very engaging video Dylan! Excited to see this after your presentation at SLCU a few months ago. You do an excelent job getting people excited about evo-devo!
Thank you Alexandre! I really enjoyed my visit to the lab - hope everyone is doing well :)
he's back!!!
Nice video 👍. You sort of opened my eyes a bit for the "dynamic-world -》 gene regulation." part of EvoDevo. I often think about its role in modularity and symmetry/reuse. The program looks cool. Cant belive you chose Java for it. Still, amazing work 👍
I just rewatched your previous video out just to remember what it was about and saw this one. Nice.