Virgil Griffith explores using evolution for AI, focusing on Polyworld and its applications in cognitive science and artificial intelligence.
Transcript
I'm here in the street. I'm here in the street. Speaker is Virgil Griffith. He's talking about polyworld using evolution to design artificial intelligence. And having had to take artificial intelligence classes in college, I'd be very happy to let evolution do it instead of me debugging all those list programs they gave me. So, Virgil, as a young lad, read a little too much of Douglas Hofstetter. And he therefore dedicated his life to cognitive science and causing trouble. After some undergraduate at University of Alabama, he went to Indiana where he teamed up with Larry Yager. Some of the older Googlers might know Larry Yager from Apple Computer. He had a project called Polyworld Long Time ago. And it still lives on. Virgil's been working on it and adding features and things to it. Virgil has done internships at the Santa Fe Institute and at the Kick Institute. And now is his first year as a grad student at Caltech. All right. I'm doing. Hi, I'm Virgil. I'm first your grad student at Caltech. You can reach me. That's my website for those of you wondering the dot GR change for Griffith. People can confuse about that. I'm not Greek. That's my email address. So, short yes. Are we talking to about basically trying to use evolution algorithms as a shortcut to creating artificial intelligence? Simply because artificial intelligence is well hard. And an evolution is fairly easy. Well, at least we'll use this set up. And the hope is that we can take advantage of having lots of CPU cycles and we can get evolution to do a lot of the designing for us. So, that's kind of the general just. And we'll, well, let's move on with it. So, there we go. So, when I first get the Puy's answer, well, what is artificial life anyway? They just go, you know, this is ill-defined. Well, in short, artificial life is a super set of biology. So, all biology is artificial life, but to a more precise artificial life is all like as it is today. So, life is in the circle. And it's all to what like potentially could be. So, all these other evolutionary paths that evolution could have taken would all be in artificial life. And it will be exposed with these areas because it will be hoping to explore AI. These outside ones. So, so I always, so just begin, let's say we have evolution real quick. So, this is a brief introduction of evolution's and algorithm. It's really straightforward actually. Here's how it goes. You have a population and you have and some things stick around more than others. So, and but some, yeah, that must must be the case. So, and that's your selection. And then you have these things, they're some of the sort of heredity. And then you rinse repeat. And we're going to subject, you always get evolution with this. Very straightforward. You have a population of things. You only have only one that you have hill climbing. That's crap. But you have a bunch. And some reproduce more than others. Straight forward. And then there's heredity. And what's with occasional errors. Done. That's all you got to do. So, no matter system. Yeah, it's great. So, good. Get that on the table. So, moving on. So, I'm going to show you a nice, nice, good example of using a evolution to design body plants. So, this is before we get to AI. And this was not my work. This is by Carl Sims in 1994. It's really pretty, so I'm showing it to you. So, basically, in this case, he's doing, he's the evolution to design bodies, design body, body morphologies, to do different tasks in the world. And this case, the population is a, do I have a laser pointer? Anything like that? I can just point. Well, anyway, okay. So, the, the populations is a whole bunch of these nodes. And, and, and, and, and connections joining them. And you can mix and match nodes. So, like, they say, hey, I'm going to put this link, then, then, send it over here and vice versa. And you can kind of see, kind of, how they, how they make these, make these more phonologies, you know, about how, you know, how this makes a tree and vice versa. It's actually kind of cute when you look at it. So, they're actually worth understanding. So, all right, sweet. Okay. So, and this case, the, uh, yeah, that's the, the joints between parts. So, yeah. So, yeah, so the, it's population is a grass of nodes and edges. And the, and the, and the selection is, you go to a different or a certain task. So, walking, jumping, something like that. And the, and the mutation is, it basically, the grafting nodes here and there. And we're gonna, let it go and see what happens. And, and here we go. So, group. No. Okay. This demonstration is trying to, trying to, creatures that were evolved to perform specific tasks, insimulated physical. Get to do. Help. And that one. All right. So, again. This demonstration shows virtual creatures that were evolved to perform specific tasks, insimulated physical environments. Swimming speed was used to determine survival. Most of the creatures are results from independent evolutions. Some, uh, Tradded. It's very evolved. Multiple, these creatures. Immulated together. Friction. Some simple solutions, with just two parts were found. Some seem like they could use some assistance. While others were fairly efficient, such as this rowing like behavior. Here is an odd cousin of the previous. A mutation caused him to tumble. Some creatures evolved to incorporate contact sensors in their control systems. Here is another inch worm-like creature that tends to go in circles. This was actually a creature first evolved for its ability to swim in water. Then later put on land and evolved further. A successful side winding ability resulted. Here is one with a hopping style. The protrusions on its arms seemed to help prevent it from tipping over. This was the fastest, with a successful galloping like stride. This group was evolved for their jumping ability. This group was evolved for their ability to adaptively follow a red light source. The resulting creatures are now being interacted with. A user is moving the light source around as the creature behaves. This one seems to flail randomly, but somehow still manages to approach the light. Perhaps it is mean to move the goll away just as it arrives. Here is one that has propeller-like fins, which are tilted, depending on the direction of the light. It can adaptively swim up or down very well. This one is especially nice because it looks like something a human would design. It has that same kind of motor thing. If it weren't for this little part just hanging off here, it's where it was designed. This is a case where evolution has somewhat across a very good design and it's extremely efficient. It looks very much like we would build ourselves. Like seeing designs like this should be like, should comfort us. This can work. Sure. Is there a question? How does the front line makes a way to set this human strength? Can we get the different thing? Can we call setwork? This work was recently read done for the Artificial Life 10 Conference. I know they used it to evolve catapult designs. I don't know if they've actually recreated all of this. But I do know at least large sections of this have been recreated. I know that for a fact because I worked on the lab. So that's all I got. I'd like to read this back there. All right. Now, I'll see what's the next one we got here. So I've seen that before where they're moving kind of weirdly. Especially the one where we're just had the big hanging mass. The sole fitness function in this case was just to move your center of mass forward or just move it period. So in this case, like evolution is like it loves to cheat all the time to find some way to do this. So in this case, what it was doing is we just had this big long tenicle thing. And it was just moving this tenicle thing around. That's just that's a center of mass was moving. So so just another thing to keep in mind is that is that if you ever have any sort of, you have to, when you design your evolutionary simulations, you have to always know all the weird ways it could cheat and we'll get back to that later. So here's some more. This final group of creatures was evolved for their ability to compete for control of a green cube. The creature closest to the cube at the end of a simulation is the winner. Here a strategy first arose for simply tumbling towards the cube. Then one learned to block out his opponent. But then later one learned to overcome the obstacle by climbing over it. Some peered down their opponents. Some covered the cube with protective arms. Others simply unfolded onto the cube. The success of a strategy is often highly dependent on the opponent. Here is a hockey playing creature which takes the cube away and wins by a large margin. Here are two similar hockey strategies battling it out with appropriate gestures. This crab like creature walks well, but often continues past the cube, and instead seems to prefer beating up on his opponent. Against the arm, the crab seems to simply walk away. A successful strategy is this two arm technique that swipes quickly in from the side and moves the cube over to a second arm. These are the final rounds of competition amongst the overall best. Finally, the secret arm goes against the side swiper, but the cube is just out of reach. OK. This is a fun movie I always like to show. Number one, it's pretty. The second is because designing body types will be hard. Doing solutions, you have to think about them a little bit. This is not designing AI, but it does show how evolution can come across very inventive solutions. This is an inspiring thing. Maybe we can do something else even better with this. That's what we have next. Next is using artificial life to evolve artificial intelligence. Here is this idea. The first question is how do we do a population for what thing do we mutate and tinker with for something to be intelligent? The second is about answers to this question. The Greeks had Marionettes and the strings are all deeply connected and this is clearly the way you think about intelligence. Then they called it hydraulic. The sewer system is a little compariment here and there. Lots of pretty art from that time of all about it. The first question is how do we do it? We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We have to do it. We are modeling the brain much closer than say digital computers or Boolean logic. Even though there have been many attempts as like what is the proper framework to capture intelligence? The history is not on our side. But I still think there is a good reason for it. Just go with me on this one. Now, nervous systems. It is very nice. If you look at the neuron, like an individual one versus say some other memory and creature, even reptiles, you can't tell the difference between them. It takes a real expert to do it. It is an individual neuron level. We are all pretty much the same. It is mostly in the connections. Evolution and they form us all the same. You will see nervous systems that are roughly the same. This is very nice. Roughly, this says, if we can get our basic model right, it could be a sea slug. It could be a model right all the way up to the top. If I will do it once, what can I do it again? Now, we have a neuron system. The important part is about it. In this case, we do it. Some behaviors are innate. There must be some things that are inherited. We also know many things are learned. So the nervous systems must change within the lifetime. This is just basic principles. It seems reasonable. We are going to go with that. So, not too hard. With all this in mind, I am just interested to probably world. This is the simulator. Not to be confused with. We have to write about this. Just so you know, this is not us. We are the other one. That is with two else. We do predate them, but not really matters. What is polyworld? Power is an attempt to evolve. Our official intelligence is the same way natural intelligence can About. The evolution of neuroscience in a complex rich ecology. They compete with one another. So, and we are, yeah. So the hope is that we, we get with the model, It is very simple. And then through competition, it is making the world richer. It can gradually get better and better and better. Sure. The model has a very rapidly. If they happen to be in enormous carelessness.uche is going to be through a timescale. That is hard. That is hard. Let us see. How would you do that? I guess in short, the answer would be number one. We can place sort of a de-is-to-create or even until it is a designer. We can kind of help it along. And the hope is that we can say, oh, that is good. We want to really help you. And there is not something natural evolution had to benefit of. And furthermore, more laws really nice. And so I agree with you that is a problem. But both of those two factors help. But it is legitimate concern. So yeah. And in short, but it is a new software. It is open source. I will give you the link at the end. And there is kind of the goal. But most recently people are using it for doing a behavioral ecology experience. And experience is very simple in their own networks. So if you are assigned, you can use it for that too. So now we know what play word is. Do what is not. So, post not fully open ended. It is pretty interesting to design a flat world. Well, yeah. And sometimes we are critters interact. It is not an accurate model of really anything. But it could be done. There is no problem with it. The only reason we haven't made an accurate model, especially anything is because it is computationally expensive. And we do not believe it is especially important. So, like right now, we are using a simple, something and squashing neurons. If you wanted to, you could render it all the way down to the actual biochemistry. If you are into that kind of thing, I am personally not. But you could. And if you are into ecology, you can do that too. So, yeah, that is what I got. So, moving on to more. So, I tell you more. So, here is basically what evolves in polyworld. So, organisms have evolving genes. They make such a straightforward. They do have a body. But the most important thing about them is the neural network brains. Now, the connections in the brain are genetic. But at birth, all of the weights are random. And heavy learning, which is the learning mechanism and the human brain, which is simply put. Well, and that is all the weights. And heavy learning is very simple algorithm. Works like this. If two neurons are connected together, fire at about the same time, the connection between them gets stronger. And then, set step one. And then, step two is all connections decrease in strength slightly. So, and that is it. And it is kind of surprising that this one learning mechanism accounts for most of our intelligence. But, yeah, so it goes. And the vision on the world is kind of a, I went out of its flat land. So, they see a little strip of pixels in front of them. And so, basically it is evolving a neural network to take their one dimensional vision and turn it into behaviors. They help them survive. So, and just to say, you know, there is no cheating in any of this, as you often see in evolutionary simulations. There is no fitness function. This is like pure natural selection. This is as raw as it gets. If something is like the only criterion is really to survive, any way you can. And this includes exploding bugs in the code. And we'll show you an example of that. So, okay. Yeah, so, yeah, I'll show that a second. So, do, do, do, do. Okay, okay, okay. Go back. Okay, so here's a nice pretty picture, probably. Well, here's how it goes. So, where is my thing? Here we go. So, these brown things here are barriers. They can't cross those. These moving things here are the critters. And these green things here are food. So, you see when a critter dies, they become food. Now, this is kind of an early stage stage of the simulator. And so, they aren't very smart. They like going along the edge a lot. But they get smarter, I promise. So, so, so, so, so, so, so, so it's basically like merely existing in this world cause you to lose energy. And if you, and if you're an engineer, just to zero, well, you, you, you see, to exist. So, so, so thus, like, for anything to stick around, it must go out and find food or go out and kill something. And I'm, or, and I'm, or, and I'm, and I'm, and I'm, like, mate without, without other organisms as well. If it doesn't, it's just not going to stick around very long. It's, it's, it's, it's, it's pure Darwinian. So, and you can kind of see how it looks here. So, here's the, there's a top-down view. And each of these little, well, each of these little squares here you saw. This was the world rendered from one critters perception, but it's a stretched out slightly for our convenience. But to know exactly what they see, they see the middle strip of pixels in that. So, okay. So, that's probably world. So, now you're saying to you the, the genetic model. Cause I always get asked about that. You have to pay a lot of attention. There's mostly for reference for those of you who are into this kind of thing. So, these are, so, so, so, as I said before, there are body genes, there are brain genes, and there's the body once. So, and here's how it works. A critter can be big, but, but when it's big, it doesn't move very fast, but it can hold more energy in it. So, you know, it's kind of a trade-off. And if a critter wants to be a predator, it can be really strong. So, we can do that. And it's also, it's maximum lifespan. This is actually, this is actually informed from the evolutionary literature. It basically said that, that it's good, that we have like a hard limit that we can't, that, see, it's good that we have a hard limit that if you just, it's actually a die of age. Because even though it's extremely unlikely for something unfit to live a long time, it's so utterly bad if, if something unfit lives a long time and it meets a lot, that you, that you want to really hard limit on, on, on, on, on how long you can live. So, and this is also kind of motivated. It's kind of, find, so, I've just let me thought about. So, for example, you might want to, you might want to, I'm going to pop out tons of kids, but give them all snow energy. So, like, so the parent can decide how to introduce you, I want to give them, we might want to have only a few kids, and give them lots of energy. So, this is, you know, where have tried to want to use. So, we'll go back to the colors in a little bit, but, um, yeah. So, the green, how green, a particular critter is, is a termin' depth birth. So, you can have like, the light green critters and dark green critters, stuff like that. And also, their mutation rate is also specified genetically. So, yeah, no cause reports. Okay, genetic rate. Okay, so there's the exciting part. So, this is the brain genes. This is like, 95% of the genome. So, here's how it works. So, the genetic models, it specifies which colors you want to pay attention to in your environment. So, if you think reds really important in your environment, you can spend a lot of neurons to go see it. Um, yeah. It also has a number of internal groups. And these internal neural groups, but he will like this, and this is how they're connected. So, the genetic model, only specifies, roughly how many connections are between each neural group. It does not specify at the pure neuron level, and this is motivated from biology. So, if you see, yeah, like, like, well, it just is. Um, and it's definitely worth getting into. So, for those of you who are neural network buffs, you can read about all that. But, the main thing to take home from this is that the genes loosely specify the brain. And it does it sort of the neural groups level. That's really the main thing to take from this. So, to make this more clear. So, here is how a typical brain looks. So, you have one neural group here. You have excited toy neurons, and then inhibit toy neurons. We distinct, many neural networks have the inhibit toy neurons excited toy neurons. They can, like, like, a single neuron can have both excited, or inhibit toy connections. But when you do that, some biologists put up their hand to really say, but brains don't work like that. You say, well, fine. So, so, so there, for you biologists in the room, they're different. Be happy. All right. So, you have multiple these things. And they can have different numbers of, like, excite when inhibit, inhibit toy nodes. And they connect to each other. So, straightforward. And they connect back. It's nice. And then you can have multiple neural groups. And they can all connect to each other, however else they want. Now, these internal neural groups connect to some output neurons, or behavior neurons. And here they are. Now, these are the, these are the, these seven behavior neurons, and they're defined in the simulation. And, in short, there are things like move forward, turn left, turn right, eat, mate, fight. Blink. I'll show you that one a second. And focus. So, basically, every critter has those little light in front of it, that it can sort of, that it can, that it can, link with. The ideas they could do some sort of primitive signaling mechanism. As far as I know, they haven't fully, they haven't taken advantage of this fourth signaling. But, you know, you give them room to grow. They obviously can't have all to do it if you don't give it to them in the first place. So, it's in there. And we also want sure what, what kind of eye they wanted. So, this, so, depending on the activity of this neuron, they can have sort of a fish eye lens, or they can have, like, you know, really, really straight. So, and that's just only because we want to show what kind of eye they might want. So, you know, evolution can decide. Sure. Let's go. Let's go. Let's go. Let's go. Let's go. Let's go. Let's go. Oh, this comes next. Oh, sorry, these cancels are one other. Okay, so here are the inputs. Okay, so genetically, so if you don't pay attention, so this critter wants to pay attention a lot to green, a little bit to red, and not so much to blue. And so these basically inputs, and these inputs can connect to any of these internal groups that they want. And it also has an energy level. So, so this tells you roughly how healthy the critter is, how healthy it is. It also has just sort of a random firing. Just because, you know, might want it. This is the free will of the critter. You can think of it like that. And I surprised that they actually use the random. You wouldn't really think so. But, um, they like random. I'm not exactly sure why they like random. But, you know, we're, we're, we're, we put it in there and they might, they might like it and be whole they do. So, um, we could question it out. If you could question it out, feed forward networks. Others are not feed forward networks. So, like these internal groups can connect to each other. However, however they want. Do you get them to the certain numbers like the critter? Yes. Oh, okay. Um, yeah, we'll do this later. So, this thing should be input units and processing units. Not it's important. Sure. I'd like to energy costs to neurons. Yes. Um, and roughly the reason we do that. Huh? I'm sorry. I was asked whether or not there's, there's an energy penalty for, uh, for having a large number of neurons or for numbers, or for neurons being activated. The answer is yes to both. The, the problem was that if you didn't do this, they grew huge brains that like 99% did nothing. So, you know, just like, well, like, computations should just silly. So, if you have a big brain, a better will do something. So, so, yes, they get a cost for having, for, uh, for just having a size, certain size brain or for neurons being activated. So, like, doing anything cost you something. Um, yeah. So, good question because we didn't do that initially, and we did what happened. So, um, this is, this is, uh, this, what's the same picture I showed you before. And this is made, made using, um, made using dot. It's really nice. Um, oh, sorry, graph is. So, and, uh, this shows you a polyurethane brain maps saying, no, really, I'm not joshing you. This is what, how does it's highly work? And so, these are the, these are the inputs here. They connect to, uh, excitatory, they connect to, excitatory neurons and inhibitory neurons and these are sort of the, uh, the behavior neurons up here. So, you know, there's five turn light, link, etc. Um, so, and it's, it's just kind of shows you what, what, what, what, one of the brains typically look like in a non, when they're not idealized. So, that's all to get from that. So, okay. So, um, uh, as far as a query is concerned, everything's about about, uh, getting energy. So, the energy will, they die and have bad. So, uh, here's the energy. They can eat food pellets with a meat, other, other critters. Stay forward. And they lose, they lose energy by doing anything. Like, merely existing loses energy. So, if they don't do one of these things, they're gone. Um, so, you know, and these, these, these, these, especially like mating cost energy, um, and being big and strong, cost energy, and, uh, and just for, I was gonna have just having a brain cost energy. So, I'm gonna chin that. Okay. So, now I'm gonna show you some, some, some, some behavioral samples of how the, uh, of how the, the output neurons, well, they sort of look like when they turn these things on. So, here's eating, is gonna eat this neuron right here. And it's, it slurps it up. Ta-da. So, I'm gonna show you some more of these before you two the emerging stuff. So, what's gonna happen here is that, uh, is that, uh, one critter, so, okay, oh, I'm sorry, I should mention this. The color of every critter is, is an RGB triplet. So, the redder a critter is, at this, at, is, is how aggressive it is at this moment. The blue or a critter is, is how much wants to mate with mate with just mate at this moment. And the green is, is genetic, as specified before. Um, the, the reason we decided this is because, well, you know, you want to have someone to kill you, you want to have someone to mate with you, very straightforward. Um, and for green, the idea is that you might do, do, do, can selection. So, for example, say, hey, I'm like green. I wanna be nice to you because you're like green. Sure. Um, so, um, we've seen a few cases where they have, where they, where they have done some tribalism based on the green. But you should have to kind of like trick it into doing it. Um, but it does happen. So, well, basically the important thing is here's, these are both, uh, kind of red. So, they're gonna do battle. So, that's, watch this one. So, here we go. It runs into it. And it gets eaten. And it, and it, and it turns to a food pellet. And this one's, this is, it's slurped up the body. So, that's how eating works. Um, oh, this case, um, so, so, so the, so, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, the, The option is important is proportional to its strength. So basically, even though this critter was stronger, it just had like a lower amount of energy, and it got beaten by the. Week or one. OK, so here's how mating works. So this goes into coming here and mate with this one. And little child popfale. OK. So now we see a-a happened here. OK. So, so, so, so, so, so they made the child, but the, but they were so, ah, they had so, ah, they expanded so much energy given the child, uh, they, uh, they split, so much energy into the child, really died afterward and the child ate their crocuses. So here we can see that again for those of you with kids. Why is we going to look in a load? Let's do it. There we go. Nope. Okay. Meating. Let's see it again. Okay, so now to come in, make the child and they both die. And the child doesn't really care. Slurp. Okay. Next we hear something. This is the blankie. This is the show you this. This is the kitchen. Come here and it's going to blank at you. So here comes in. Oh, sorry. No, it turns this blanky off. It's right now the blankie is on because you see that it's normal color. And that's the blankie. Now it's turned it off. So they can shine light to each other. Okay. So now I'm going to show you some un-assured and the emerging behaviors. So this is one of the, so, be calling species just because it's kind of natural. Technically, they can still mate with each other, but behaviorally they're so different. That, that it's seem to be so they call them that. So these are joggers and all they do, they just go forward all the time. This case, the world is is is is is is is is is is is is is is the the torridoidal world. So you can go off the edge. We have all the worlds we we you can go off the edge and they move in circles a lot. So, so by this case, this is the first thing you see in a simulation. Just always go straight. It's for easy to code and if it is is is is is randomly. I didn't distribute it. Why not? I mean, you know, you're it's it's it's quick and simple. So that works. Okay, so this is really nice when I talk to you before about how a emotional take advantage of absolutely anything, like including your bugs. So this is a very nice bug. Now, when this was, this was initially done, it had not occurred to me that that having a child cost energy. You know, because you know, you just do it. It's pretty easy. So, you know, it's my mail bias. But, well, I should have happens. So, I mean, initially, initially there was no cost for having children. And here's what happens. So you'll see them. I think they're over there and we'll zoom in in a little bit. So you see they're all in a cluster over there. And we're going to zoom. There we go. Okay, so you need to see that they have this whole orgy going on here. And they are and they are popping out kids like like really quick. And they're neatly eating them. And with this, this is because because eating eating the children becomes a free source of energy. So you have to, so this was a crazy concern. You have two choices. You've gotten get food. Or you can mate and have a piece of food up here. Next to you. The solution is clear. And this was like really boggling. It's like, why are they doing that? Because there should be a monthly successful. We'll take over everything. And I could take a lot of figure that out. But yeah, so we now it cost, so now it costs energy to have kids. So, now they don't eat them. It's not as prevalent, so. Okay, so just to let you know that evolution will take a van. So that evolution will take advantage of your bugs. That's actually really, really, way to test. So, okay. So moving on from the endoic cannibals. Okay, so now I'm going to show you some, So now I'm going to show you some, actually, intelligent behavior. We will primitive intelligent behavior that is emerged from this. So, this is just showing you that yes, this is actually doing something. All right. Okay, so we're going to actually see them actually, they actually use their vision. So it could just come by and they create a large forward. And see that. Okay, here we'll, okay, there's some more of them. Yeah, so you see it jumped forward. So really all this is saying is that, hey, they actually are using their eyes for something. And they're using their eyes to control their behavior. So, simple enough, not a very big claim. But it shows you that we're actually getting something right. Like keep in mind when these critters start, they have completely random brains. And I assure you, they're crap. They don't do that. So I'll show you some examples if you'd like. Okay, so now I'll show you some more ones. Here's fleeing attack or running away from red things. So usually like the first thing, usually the first thing the critters learn is Number one, move, that helps to find food. Number two, move towards green things because food is the only green things. We'll solely green things. And though it's turn towards blue things because they want to make with you and get away from red things because they want to kill you. So here's them, one to get away from red things. So we see a red thing coming up here and it's going to run away from it. And run away. So, just as very nice. So like they, and this can out completely naturally. No, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no, no. Just just, just playing deus de creator and letting it go.оды. So here's some more. So here's some forcing patterns. So usually they, they like to kind of act out on the realm, become a lone forger. But some of sometimes they swarm to, if I like, a whole bunch of very weak critters. And they mostly just go and circle all the time. And they, and so like, say, say, hey, like say they'll be dark greens. Okay, I want to follow dark green things and when I turn into circles a lot. And if you do that, the swarm just sort of gradually moves because the ones that are near food, they live and so the swarm just kind of gradually moves towards direction of our food. And that's not works. And we slowly, but it does work. Okay, well that's the C. I don't know, but I'm not sure if you can see that. Okay, well that's the C. I don't feel as you want this one. Oh, I see this kind of fun. You can't see, actually you can't see them engaging in a purposeful behavior. Like you saw the ribbeating the simulation, they mostly just kind of sat there. But you actually see them, you know, they were actually moving around, actually turning towards green things. Actually, this playing kind of the pseudo purposeful behavior. So that's a step to the direction. All right, so here's what we've seen so far. First of all, they make a lot of kinds of brains. They are actually, they are using their eyes for something. That's good. And they're actually doing useful things with them. Also good. So, all right. So now I'll show you some more sciency things. We've tried to try to analyze the behavior to determine if we're actually getting anywhere and trying to quantify it. So this is an ice one from the animal-forwarding literature. So this is actually pretty straightforward. You do. You have a world, you have a food patch on one end, and a food patch on the other. And you see, okay, well, how are the creators going to allocate themselves? So at the very beginning, they're kind of uniformly dispersed, middle, say, oh, well, you know, something hanging out in here, something hanging out in there, something no man's land. And then the late, they go, oh, being a no man's bad. I don't want that one to go there, so they hang out in the two food patches. So, so this, well, they are there forging. That's good. And they're doing it correctly. And even better, if you actually look at, they actually follow the optimal forging pattern. So there's this distribution you commonly see in the forging literature, called the ideal free distribution. And low and behold, they hit it perfectly. So, all right, good for the critters doing optimal forging. So now I'm going to show you some predator prey cycles. These are kind of neat, so the colors don't come up that great, but it'll be okay. So, in this case, we're looking at predator prey cycles between the critters and the food. So in this case, the red is the critters, and this is for a particular food patch, the ones you saw before. So the red is number of critters, not food, is the percent of critters that food patch. And the green is the percent of food in that food patch. So, in short, what you see, let's pick, say, this one here. Okay, so in general, you see that the critters lag the food. So first, the food will go up high, and then shortly after where the critters go, oh, I'm going to go in this food patch. And then they overharvest it, and the food goes down. Then the critters leave and go to the other food patch. And then the food back was up again. They moved up and go back to the food patch, and this oscillates forever. Yes? Yes? When the children create a distribution deck, it's no food that they're working in the mill. So, the food and the sprouts directly in other critters, the food in this patch, no, no, no, no, this case, this case, this was two food patches close to each other, and they would just go back and forth between the two food patches, what they would do. And depending on where the food were more food was at that time. And they would oscillate, always following the food. So, yeah, and this is nice, because this is a very similar pattern to what we see in like, in places like this, this standard lock-up, and so, also nice. And again, we didn't program any of this. We simply just designed a simple world with food and neural nets, and said, go. And we get all this, just it just comes right out. So, okay, so now we look at the brains, because we're really concerned about. So, the main thing to keep in mind here is really the connection matrix. There's other stuff here, it's scientists like that. So, anyway, so this is a random brain, so at the very beginning of evolution, all the things are randomly wired together. And so there's one connection matrix, and this is one from the visual cortex of a cat. Now, and it's just just random slice of it. And now, actually, one from a poly-roll critter, after your evolution. Ta-da. Now, let me think take away from this. It's not a cat, but it's certainly not random. And so, basically, the evolution has gone from this to this, with doing nothing but just sitting there and letting CPU cycles turn on it. So, again, I'm not claiming to play all these or cats, but I am saying that evolution is doing something very useful, and it's putting tons of structure in there that you do not put in. So, all right. And it's kind of inspiring and you go, wow, and maybe we actually could get a cat with this. So, there we go. So, but I'm going to show you some more quantitative plot or than just looking at pictures. Oh, sorry. So, I always get this question a lot from philosophers in the room. They always say, oh, it's not alive. Well, okay, fortunately, there's a professor mind that did a really good definition of life. It's the farmer Bayland, the artificial revolution published from the Santa Fe Institute. And basically, it has these particular criteria for training somethings alive. And not so coincidentally, polyworld was explicitly designed to satisfy all these criterions. So, in short, you have a padded space time. It does reproduce. It does have a creature storage. It does eat, and it has an interaction environment, and it does evolve. So, in short, to that, to say, well, it fits the definition of life that most people use. So, in your face. Okay, so then he'll say, but I'm not sure if it's intelligent. Well, let's, sure. Just last. Fire is a pattern in space time. Yeah, yeah, so if you have the self-requisitation, you certainly have the tab. So, it's going to have a bunch of linear interactions with the director. Right? Yeah, no, no, no. I'm saying, the play will satisfies all of these. Oh, fire satisfies all of them. Does it, does it, it, it, it doesn't have an issue with the information storage. It doesn't have that. I have a call that's called the modifier. You're going to initiate another fire with the exact information. I, I, I, I, I suspect, I mean, I don't really care fires a live or not. Fire probably can satisfy three or four of these. I mean, I'm not really attached. I, I don't, I'm indifferent to fire. Um, but, but, but I, I suspect if you, if you, if you looked at this kind of structure of coal or something, you probably wouldn't find that you'd probably probably probably wouldn't have much information there. I'm not sure exactly how you look at it. I'm not sure something you could do. But, even fires a live. Okay, sure. Why not? Okay. Anyway, so if you don't say, well, is it really intelligent? Because we just see them just moving around. Well, there's no real way to quantify intelligence. Unfortunately. Um, and I even biologists can do this. Um, but, however, because of this all simulation, means we, we have access to a lot more things that biologists don't. And sure we can use the information theory and complexity theory to try and analyze the critters behaviors and their brains. And this is most of our research right now. So, um, so yeah, so we analyze their brains over time. Um, so, so here's a nice one. Uh, so there are like three or four measures of neural complexity out there. And so for I've implemented two of them. Um, and. And, and they'd probably all can't follow this pattern. Oh, sorry, for this kind of complexity. This is the, this is the tonnone sporns, uh, complexity. I'll get you the paper on it. But, but in short, the sort, this metric of neural complexity, in short, it says, if all neurons fire independently, that's not complex. Uh, and so, if, yeah. And if they all fire in unison, that's not complex either. So, so, so in short, you want this kind of middle ground between everything behaving randomly and everything behaving uniformly. And that's what, that's what, that's what neural complexity is. But, in short, if you look at, be like any of these, they approach all, they go up for a little bit and then they kind of plateau. And, uh, so you're like, um, and, uh, and both metrics do that. Uh, so, well, that's what I got. Um, and we, and we're right now, we're trying to figure out how to make that go up more and trying to explain why it, why it plateau's. So, I'm actually some other stuff now. Um, here's to you that for a second. So, um, so now that, so that, so that when, now we know that neural complexity does indeed go up, we want to know if evolution is actually helping this helping the complexity go up or if it's just kind of going up accidentally. So, there are two kind of views of the evolution of complexity. The first one is this one, this is a more natural one. And this says that, hey, you know, evolution actually favors more complexness, we're from bacteria, you know, to stew, big bacteria, and then eventually to us, and, and evolution really wants that. And the other one, cast says, you know what evolution is and give a crap about complexity. Something's just kind of increased crease by accident on complexity. And evolution doesn't only care. And the idea of this one is that that if this is just mere, like, this is kind of diffuses outward, you know, on the spectrum of complexity, you know, doesn't care about it at all. You know, it will eventually get complex things. And this is ready to start with this and get to that. And so, this is evolution actively favoring complexity versus evolution not getting a rip. And this is, this is actually a debate of question. And we can use polymolta answer this. Sure. I'm going to insert the information from complexity and your system. Right. I think that bears the amulet, but it's fostered such a very simple environment. Yes, I do. Um, oh, so the question is whether or not the, the, the complexity of organisms is predominantly a product of the environment. And the reason that we're not seeing a big increase in complexity is because the environment is so simple. And I think it's exactly it. So, and, and, and, and so we're, and we're actually looking at that now for ways ways we can make the environment more complicated to encourage more interactions and things like that. Um, but that, that's about, that's about four or five slides from now. So, we'll get to it. Um, but yeah, so this is the two ones. This kind of experiment. And, and sure, here's what, here's what you see. So, this, um, okay, so basically jury rigged polyworld to make all mating's random. So, and sure, even if you mate with someone, you do actually get their genes. You get some random person's genes. It's sneaky. So, and this is the dash line. This is with evolution turned off. And, oh, sorry, this is complexity here. And this is time. And the dark line here's with evolution on. Now, and it is very depressing because you're like, oh, well, with evolution turned off, you get higher complexity. You're like, well, you're doing nothing. Um, and this, and I was very sad when I first saw this graph. Um, but I always looked at this thing here. This always appears. Like, I've run this thing. I don't know. Like, we've ten times now. Um, and sure, there's always this hump here. And, um, I'm sorry, and this is also a, a, a t test now here. We'll get that in a second. But in short, like, the idea came up with is that there's always this hump here. And this, in the solution, I mafia was, well, um, evolution does favor an increasing complexity. But only up to a point after you solve the world, we don't care if you're complicated anymore. And in fact, it actually cost you something to be complicatedanci. And so, as a result, we're going to kind of keep you roughly right there. While the diffusive one just kind of goes up on its own, it's completely, uh, it doesn't he, well, complexity at all, and it continues to go on up. Sure. Yeah, this isn't this. And that's the little type of evolution, just where the fitness function is, how long you survive. It's that how much you made. Because if you randomly select a creature, the creatures who live a long time are going to be around more to get selected at random. So if you just survive a long time and you're alive when other people are made and then your genes will get passed on more. Let me think about this. You can do this select this selection of the random genes from all the creatures who are alive at that time. That's my question. Yeah, I'm thinking. How was it done? I think it was more the creatures who were alive at that time. So the idea was, oh no, I'm sorry. No, actually, no, sorry, that's a very good question, but that was controlled for. So in short, I'll get the more detail. Basically this was that we ran this, this black line first. And then we said, okay, you know, and then we said, okay, like critter one lived exactly as many times. So critter two lived exactly as number of time steps. So we did random mating combined with enforcing that each critter lived exactly the same amount of time. So, but good question. Clever. That means we need an afterty, close 7000, you're sort of pruning out the dead code. So what does that mean? I don't understand. Check if it goes down because some of it is discovered to be unnecessary. Yes, yes, I think. Yes, correct. And that basically fits with my current belief. I mean, I'm not exactly sure sure why it platos and why it gets, when why it gets, why it kind of stays there. Well, the passive goes up. But I think it's, I think it's pretty reasonable. So the idea is that I mean, you always see that. Like I mean, complexity is useful at the beginning, but you don't want to be more complex than your environment makes you be. So, so the idea is that we want to make the environment more complicated, and we'll see that goes up more. But yeah, that's agree exactly. I mean, if you want to see this here. So this is a T test, basically seeing to what extent, basically the degree of confidence to which the dashed line and the solid line, a thought comes in the same population. And basically if it's above this critical here, which basically says, yes, we're pretty sure the human different populations. So we see that, okay, right here, we're sure they came from different populations now. But actually, right here, it just kind of, it just kind of, it most kind of sits there. So, so there's some math to make us think that as well. Okay, which is what I got. So now, now I'm getting neural complex, I'm showing another one for genetic complexity. And this came from my professor at Caltech Professor Adami. And it's really nice, actually, correlate the map over quite well. So it looks like the complexity of the genes. So actually, what is it? It was 7,000 when they crossed before. Yeah, about 7,000. Okay, go ahead to this one. Okay, 7,000, we see these roughly similar. So, okay, so the way this one works, the dashed lines again are the passive runs, and the solid lines are the, are the with evolution turned on. And so, so basically see that on the passive runs, the genetic complexity basically went down to crap while on the, on the active runs, the jet complexity did not go to crap, in fact, it stays quite high. So roughly what this says, roughly what this measure looks for, it looks at the amount, not of disorder in the genome. So, so basically, if every gene was equally probable, or sorry, if every gene is equally present in the population, then the scope is down, then the scope is to here. But if there are some genes that are more favor than others, then the measure gets higher. I can show you the equation for it, but that's roughly how it goes. Roughly it measures the amount of disorder in the population of genes. And roughly this says, okay, with evolution turned on, there is less disorder in the genes. So, that's good. And nice, that's also convenient that we see the genetic complexity in the neural complexity being roughly correlated. Yes? So, we can say evolution is off, you're solely meeting and you can turn off the sharing of different dimensions. Yeah, for maybe. We're meeting all friends. Okay, what I say evolution is off, I say that the mating is a random, and yeah, I just mean the mating is a random, and the critters are forced to live the same amount of time. So, the idea, so there's controls, and then the mating is a random. And so, it's made, the result is one that this is not comfortable in the parent's. Okay, the initials off, when evolution is on, when two creatures mate, their genes get mesh together, and they make a child. So, completely normal. When evolution is off, when two creatures mate, it picks up a completely two random genes from things currently alive. So, it probably, so it pops out that child. One of the parents are something that I understand of more ways to get an arrand of gene from some other creature. I don't have to think. What do you think? Maybe not because. If it's completely random, it's random. I mean, I think, I don't know, I'll have to, you may do to do this if you just make, make a copy of one of the, of one of the parents. You may be able to, I don't have to think about it. That's why that would work too. But, but I know that if every, if every creature is equally favored, no matter what its genes are, evolution doesn't move. Like, that's the rule. Like, like, like, that, that, that has, that has selection with everything being equally selected for. So, that's what motivated it. Sure? Well, if you can't remember any of the other animals, if you have a final population, you will have a genetic theory, so, right? Yes. So, I guess you should see here. This is up and down, it's the next trip. Do the final, I mean, up and down. And some animals will be lost in the population, just because of the, right? You will see, there will be this, there won't be this perfect mixing of all possibilities, but it'll slowly go to a fixed point, right? On the, you see this? Well, you, you certainly are right. I mean, because of the funny population, you, you will, you will see, you'll see variations in the, in the population. And I think this, this is what you're seeing here. So, this case, like, this is the, what's completely random mating. And it's moving up a down a little bit, and this is, this is, this is due to drift. But as you increase population size, this gets less and less and less, as exactly as you'd expect. So, so, so, so, yes, you're right. And, and, and this, and we're seeing it. So, so that's good. Okay. Oh, okay. We have to be quick then. All right. So, this is not something to do real quick. I'm going to press through this. So, there's a real question of, so, for this passive complexity, it could just be this passive complex, like, why is this leveling out at all? So, it could be that, that this is sort of, sort of an upper bound in the simulation. Like, a simulation can't support something, something of, of higher neural complexity. Well, well, so, we, so, we jury, Rick, probably will, to say, okay. We will, we, we, we put to a, a fitness function mode. There's no longer natural selection of, we will reward you solely for having a complex brain. And that's the red one here. So, enjoy this says, hey, you know, the simulation can support much higher complexity, if you, if you, like, really force it to do it. So, um, so, in short, this basically says, hey, there's room to grow for, for, for, for evolution. So, all right. So, basically, if we have, so, the next principle will be making a more complex environment and trying to move, move these curves closer up to the red. Um, so, okay. It's making a draw from there. So, these are the future, actually, we'll take probably, we'll do it, too. But, but, but not, we'll make in the world a more complex, and then, we'll make it with more measures of complexity for studying it. So, short. More measures of complexity. There's, there's still, like, there's still a, four, five more that we haven't looked into yet. Um, a more complex environment. Sodigy, like, the first thing I, all right, now, I want to add, like, day-in-night cycles. So, so, and this is, this will be really easy to do, because it's all in OpenGL. And you can just tweak the ambient, the ambient lighting up and down. And the ideas that this would force them to, to have sort of an internal clock, saying, hey, it's dark now. I can't see anything. Probably should go foraging. And the idea is having different kinds of food types. So you can have different colors of food and one would give you more energy than the other. So you start having specialization. And the other is getting them more more senses. So right now they only see. And if you give like smell or touch, it is that they could have more interaction with the environment and that would be good. Yeah, so we've done the actual foraging. We did that very recently. And we call to use this to answer question about evolutionary theory as we did. And it's more question about evolutionary theory like when we did before. And then eventually, we got to get up to class of conditioning experiments. So this is kind of like the direction we want to go for the next few years. And I think you have ideas, especially for the here. Let me know. Or I want to get you to good code. So this is mostly it. This is what's good to available. You can get it now. It runs on Linux and Mac on Back, QT. It just works. And there you can download it. Yeah. And at the very end, I always get the question, oh, you're making Frankenstein. This is a terrible idea. And I always like this slide to respond to them. So yeah, I've no problem with that responsibility. If the polygons kill us all, well, it happens. OK. And I'm done. Question. Oh, we got to try and stick up. So just an idea about directions for to test theories in the evolution. Have you thought of sex selection to see if there's a specialization between giving very little or a lot of contribution to the offspring and see if there are two nishes to gender is developed? Well, currently, there is no gender. You could certainly do it. Right now, the main reason they're gender right now is because we didn't want to cut the population the mating pool in half. So right now, these critters currently run with, there's about 300 agents in a simulation. Well, actually, well, sorry, I'll back up. The answer is, yes, you could do that. That'd be really cool. But right now, we don't do it because we are concerned about it might be hard to find a mate. Oh, but I mean, I don't know what I mean. I'm pretty ignorant of this, but I don't know if there are some theories which say that the origin of the division of gender is that there was a specialization of two nishes. So I'd want the males, contribute very little. They tried to make a lot, the females contribute a lot more. So maybe you could look for these two nishes developed, even in the absence of explicit gender. I don't know, that was just an idea. You could certainly, well, it's certainly possible like if you had two different kinds of behaviors and one was favorable one time, so it's favorable to other times. You could get that account naturally. But when they can always mate sort of all the time, it's going to be tricky for that to be enforced over the long term. But yeah, it's certainly possible. And if you want to do gender differences, it actually would really need. I mean, if you just started forcing it, see if they were started sort of like starting using each other, things like that. So that'd be cool. Sure. What strikes me about these networks is these networks, at least as I took it to me and don't have any state on our recursive networks. No, they are recurrent networks. So they think connect back if they want. We actually have a new kind of, these recruiters something that's squashing neurons. We have a brand new model that has spiking neurons. And it's pretty, I don't know what you're about it yet. I haven't used it much yet, but we do have more fans here models. And they do save state in between cycles. And what's the, well, the, no, we just save state between cycles, but we do update their vision. Right. I mean, that seems to me to be necessary in order to maintain a mental model of where you are in the world, as opposed to just a single state. Here I am, what am I going to do? It seems like that's a, that's a fundamental part. Right. Yeah. Let's see. I don't think we're saving the state of the network for one time to turn to the next, of the internal nodes. I will, I'd have to think of, well, I can't enter the question empirically in like 10 minutes of one through the code. So I'll answer it a little bit. I think this is a really good, interesting presentation, but I guess I have a little difficulty because I'm not that familiar with the area to have some context for it. Could you say just a few words about sugar world and Tierra and neural Darwinism, so I have some sense of how to say that? Oh, yeah, I, I've heard of sugar world, but I haven't, but the only thing I, I've never, I've heard of sugar world. I know that in Tom, I should, I should back up. So, so there's some pre-usimulations. Tom raised Tierra was the first thing of, of a vaulting code. And, and it was, and it was like, and it was, it was really awesome. But there were a few problems with it, is that basically things always got smaller and smaller and smaller and smaller. So, so that was kind of a problem in Tom raised Tierra. So, like, it always became better if you're, if your genome got smaller because that way you could reproduce faster because they were penalized. Like, they're only going to start number cycles reproduce themselves. And if you're a small group, because we repose yourself a lot. I don't actually know if, as far as I know Tierra has not been extended to account for these original defects, but, but certainly Tierra is, like, really great. So, I should, sugar's hate. I've heard of it, I don't know what you're about it. So, but if you see me a paper on, I'll certainly read it and I can come and tell you then. So, I was the other one, oh, no Darwinism. Okay, so, no Darwinism is a theory of neuroscience and it's probably even true. And short, it says that the way connections are formed in the brain is kind of like evolution. It's not exactly. But roughly it says that neurons initially connect to a whole bunch of things and most of them suck and the ones that suck get pruned and they go away. So, so roughly no Darwinism is like, like, expand prune, expand prune. And it says that this is how connect to the brain comes about and it's probably true. Sure, just, well, whoever, first close to microphone in there. So, on the final slide, I think it was final slide. I said, one of your goals is to make the environment more complex and experiment with more features, I guess, and so on. So, I think it's a little, maybe a little bit of a problem because your current system is already very complex. And the thousand things that affect the way evolution goes in your current system and how you construct their production procedures and so on and so on. So, you know, the fact that if you make the environment more complex, you will be possibly you will be able to see very fancy simulations, but you may, it may be even more difficult to understand why actually evolution went this path and not the other way. Your batteries isn't physics-borny chance. I'm sorry. Your batteries isn't physics-borny chance. Just, well, I mean, like, the physicists always say that. So, I'm wondering what your background does. No, my background is actually, I started evolution in competition for my own. Okay. All right. Well, yes, okay. So, the concern is roughly, well, if you make it more complex, you would have parameter hell. You already have parameter hell, but it could be even worse, like, ninth layer of parameter hell. And the answer is yes, that can happen. And I guess the response is, well, it seems like a lot of these things don't depend on the parameters very, very sensitively. So, if we like very a bunch of parameters we have right now, you roughly see a lot of the same stuff. And the hope is that if you choose just even remotely reasonable values, the good stuff will come out. And so, the point is valid. But we don't think, but we think, like, the benefit of having more complex world far exceeds the concerns of parameter hell. Hi. Hi. Hey, Crusher. How are you doing? I've been thinking about this for a while, I mean, you showed it to me earlier today, but I've also been thinking about this general problem. And I think that we could stay without being too contentious that there are better strategies in the world that you're presenting. Like, if we were really careful in design one, we could probably clean the clock of a number of these evolved systems. And I think part of that's going to be not a product of the structure of the brains, but the kind of inputs that they have available to them when they drive their behavior. Put another way. I don't think you should be adding complexity to your simulated world in terms of adding lighting effects or fog or the things like that. I think there need to be more signals that have to do with kin selection. And not just green, right? In the natural world, even at the very cellular level, just as a natural byproduct of the way evolution is going to affect what kind of presentation you throw up on your cell walls. You can do kin selection in the environment, prenaturally. That's assumed. And so you can a lot of the complexity that we see in natural systems and how social systems are and how predation systems interact seem to be driven by really complicated gradients that end up working out down the kin similarity. Like, I don't want to mate with someone who's exactly like me. And I don't want to mate with someone who's really, really different from me either. Because if I mate with someone who's exactly like me, it's not worth the energy, because there's not going to be very much variation. If I mate with someone who's too different, the child's not going to be viable. And the complexity in your environment should flow out of the behavior of the features that you're competing with. And you should see speciation resulting from preferences and alternate patterns. And it doesn't seem like there's enough input available for the neural networks that you're evolving, which seemed to be really cool, to exploit that gradient. So I think maybe finding some way to allow them to sense the presence of, and go ahead and cheat. Look, aside, do similarity scores and provide a sense that similarity sense. It's not based on light at all. I mean, you're looking directly at the genes. Because in any natural evolving system, you'd end up having fair modes and various other markers that you would learn to exploit. But they don't really have that. All they have is what they present directly. And it would take a very, very long time for that to evolve. I think I get your point seems to be roughly that the critters should have more complex interactions with each other, rather than more complex interactions with the environment. Well, not even necessarily more. I mean, the actions that they can take are fine. I just don't think that they can observe the other critters well enough. OK. So I guess the answer is I agree. And if someone's all right, if you enter right it, I would gladly put the patch in. So now, as to whether that would be, as to whether or not more complex, between, more complexity, between critters would be more valuable than interaction with the environment. I guess you could try and find out. I mean, I think both would be great. So so, yeah. So there's no contention. OK. Let's take one more question in Mountain View. And then we'll let the video tapers go. Unless there's a remote office that had a question that I wouldn't fair to. Yeah. So as a biological creature myself, I kind of hope that death is not inevitable. And I was curious what you were noticing in your simulations if you turned off the limited lifespan of a creature. Let's see. I guess you could just clamp it. The reason I did that is just because I saw a paper at a conference that just had these mating populations. And it said that having a fixed lifespan, or at least a max slicing, was a good thing. So I said, oh, well, just put in a gene done. So I have never actually clamped it and compared the differences. But you can certainly do it. I mean, I mean, there's just a parameter. So what I'm thinking is that if you didn't have a limited lifespan, what would the results of your simulations be? That's what I'm curious. Well, most critters don't get to their max lifespan. Most of them die of energy. So in this case, I think the average critter lifespan is like 300, 400 time steps. And the maximum lifespan is something like 700, 800, something like that. So most so very, very few get killed by that. So I guess I don't think the maximum lifespan has much impact on it. And I just put it in there because I saw a paper that said this was good. So man, it was average writing that piece of code at the time. So. OK. We'll still be around after the talk is over if anyone wants to chat more. Thank you.