Statistics | We have 1675 registered users The newest registered user is dejo123
Our users have posted a total of 30851 messages in 1411 subjects
|
Who is online? | In total there are 3 users online :: 0 Registered, 0 Hidden and 3 Guests None Most users ever online was 443 on Sun Mar 17, 2013 5:41 pm |
Latest topics | » THIS FORUM IS NOW OBSOLETE by NickTheNick Sat Sep 26, 2015 10:26 pm
» To all the people who come here looking for thrive. by NickTheNick Sat Sep 26, 2015 10:22 pm
» Build Error Code::Blocks / CMake by crovea Tue Jul 28, 2015 5:28 pm
» Hello! I can translate in japanese by tjwhale Thu Jul 02, 2015 7:23 pm
» On Leave (Offline thread) by NickTheNick Wed Jul 01, 2015 12:20 am
» Devblog #14: A Brave New Forum by NickTheNick Mon Jun 29, 2015 4:49 am
» Application for Programmer by crovea Fri Jun 26, 2015 11:14 am
» Re-Reapplication by The Creator Thu Jun 25, 2015 10:57 pm
» Application (programming) by crovea Tue Jun 23, 2015 8:00 am
» Achieving Sapience by MitochondriaBox Sun Jun 21, 2015 7:03 pm
» Microbe Stage GDD by tjwhale Sat Jun 20, 2015 3:44 pm
» Application for Programmer/ Theorist by tjwhale Wed Jun 17, 2015 9:56 am
» Application for a 3D Modeler. by Kaiju4u Wed Jun 10, 2015 11:16 am
» Presentation by Othithu Tue Jun 02, 2015 10:38 am
» Application of Sorts by crovea Sun May 31, 2015 5:06 pm
» want to contribute by Renzope Sun May 31, 2015 12:58 pm
» Music List Thread (Post New Themes Here) by Oliveriver Thu May 28, 2015 1:06 pm
» Application: English-Spanish translator by Renzope Tue May 26, 2015 1:53 pm
» Want to be promoter or project manager by TheBudderBros Sun May 24, 2015 9:00 pm
» A new round of Forum Revamps! by Oliveriver Wed May 20, 2015 11:32 am
|
|
| NPC Auto-Evo Thread | |
|
+20NickTheNick Zetal GamerXA tklarenb Dr_Chillgood GhengopelALPHA Redstar guitar999111 Seregon Tenebrarum Commander Keen ADMIN GalvinNerth US_of_Alaska roadkillguy Mysterious_Calligrapher AIs-null The Uteen Pezzalis ~sciocont 24 posters | |
Author | Message |
---|
Seregon Regular
Posts : 263 Reputation : 37 Join date : 2011-08-10 Location : UK
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 6:21 am | |
| I like the systems suggested here a lot. Using niches to test a species fitness is a good way to avoid the complexity of defining actual fitness, and not an unreasonable simplification either.
There are a few questions/issues I came up with though: - I can't find a good definition of how long a generation is? Some old threads I've looked at mention 'skipping forward in time a few million years', suggesting that the player plays for a session (10-15 mins?) and then skips forwards to speed up evolution. Other posts seem to suggest that this would happen automatically every few minutes (5-10). If the first suggestion (skipping time) is what's proposed, allowing only a single creature to evolve each time would be severely limiting (I know this has been discussed before, I'll expand on this in a second). Alternatively is the idea to skip time, but every time this happens run multiple generations? In the second suggestion (a generation every few minutes) this would be more reasonable, but considering the miniscule changes we're making this would need to happen fairly often (perhaps several times a minute).
As a coder this should be relatively simple (nothing truely is, but there's nothing here which I'd be overly worried about) to implement, and in addition should run very quickly. My suggestion then is instead of evolving just one or two species, give all of them a chance of evolving every evo-step (the probabilities could be the same as they are now). This would mean the evolution progresses more quickly, allows every species a chance to adapt to a new threat, and has the added advantage of reducing the impact of arms races on other species (if two species concentrate all their evo oppertunites on beating eachother, sooner or later something else is going to come along and wipe them out). If your worried about things changing too quickly, simply reduce how much an organism can change each time.
Also, it's fairly simple to preserve the 'reactionary' evo system, by having each organism take note of what changes made last evo-step affect them (this could be done largely during auto-evo, the only things to notice during the next simulation period are disasters and other major events). These changes could be adaptations by a predator/prey, invasion of their niche, reduction of one or more food sources, changes to their biomes environment etc.
In terms of the chess analogy, you could imagine every species playing their own private game of chess, with moves by other species affecting both the position of pieces on their board, and the layout of the board. Rather than potentially having to wait a few dozen turns to be able to react to another pieces move, it gets that oppertunity every turn, and can either react, dawdle, or not move at all. Note that species can only react to moves made the evo-step before, they are not aware of changes made this step until next step.
Finally, while I like the way your using niches, I think we could improve the way their defined, allowing them to be more dynamic, and not requiring us to predefine each niche in every biome. I'll think about this some more today and try and post in the relevant thread tonight. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 9:19 am | |
| - Seregon wrote:
- I like the systems suggested here a lot. Using niches to test a species fitness is a good way to avoid the complexity of defining actual fitness, and not an unreasonable simplification either.
There are a few questions/issues I came up with though:
Thank you very much for the review of the system. Since I created the system, I do have the answers you seek. -Generations happen after a preset amount of time, say 5-10 minutes in real time. It goes this slowly so that the player can figure out what's going on. -It's for this same reason (player recognition of species) and the goal of simplicity that I wanted only one organism to evolve at once. In an added bonus, this simulates punctuated equilibrium. However, if you think more mutations per generation are necessary, I might have a good idea of how to simplify it. Instead of selecting one species in the selection step, the computer selects a number of species that corresponds with a certain percentage of the total number of species. So, say, it gives a mutation to 20% of the organisms in a biome every generation. I'm still not sure how more mutations affect the complexity of the evolution system, which makes me a bit more apprehensive. If you want to check out the Food web Creation thread we're discussing there how to make dynamic niches, defined by properties required by the environment and lower trophic levels. | |
| | | Seregon Regular
Posts : 263 Reputation : 37 Join date : 2011-08-10 Location : UK
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 9:32 am | |
| What do you mean when you say complexity? Are you worried about the players ability to interact with the result, the computational load, or the task of actually coding auto-evo? I understand your points too, and so long as such a generation happens often enough I think it could work. I hadn't thought about punctuated equilibrium, and thats a good argument for only allowing one organism to evolve, however it's also a good argument for allowing multiple organisms to evolve, when they have good reason to do so (after a disaster or other event). What I'm suggesting isn't that every species evolves, rather that every species has a chance to evolve, that chance normally being around 1%, unless some event raises it (very similair to the probabilities described in this thread). Whichever we decide, it should be fairly simple to code a system which is capable of both (limiting it to one species per evo-step is a special case of allowing multiple species to evolve per step), so we could test both when needed. Did you mean this thread? I'll have a look through it this afternoon. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 9:47 am | |
| - Seregon wrote:
- What do you mean when you say complexity? Are you worried about the players ability to interact with the result, the computational load, or the task of actually coding auto-evo?
I understand your points too, and so long as such a generation happens often enough I think it could work. I hadn't thought about punctuated equilibrium, and thats a good argument for only allowing one organism to evolve, however it's also a good argument for allowing multiple organisms to evolve, when they have good reason to do so (after a disaster or other event). What I'm suggesting isn't that every species evolves, rather that every species has a chance to evolve, that chance normally being around 1%, unless some event raises it (very similair to the probabilities described in this thread).
Whichever we decide, it should be fairly simple to code a system which is capable of both (limiting it to one species per evo-step is a special case of allowing multiple species to evolve per step), so we could test both when needed.
Did you mean this thread? I'll have a look through it this afternoon. Yep, that's the thread I was referring to. With complexity i'm talking about the computational load. I also think there is a chance to create paradoxes with many organisms evolving at once, although I haven't thought of any specific cases in which this might happen. I'm not sure I understand what you mean here- in the current model, every species does have a chance to evolve in each generation, some just have a higher chance than others, based on their populations and reaction chances. Do you mean that even if the evolution program does not pick a creature, it still has a dice-roll chance at evolving? That sounds like a pretty good Idea to me, actually. | |
| | | Seregon Regular
Posts : 263 Reputation : 37 Join date : 2011-08-10 Location : UK
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 9:58 am | |
| Thats pretty much exactly what I mean. In your model a single die is rolled to decide on a species to evolve, and a second die is rolled to chose a mutation. What I suggest is that a die is rolled for every creature, deciding whether it will evolve, regardless of what happens to other creatures this step (what happened last step may change probabilities this time round). A simple example: - Code:
-
3 species, A-C, with populations 100, 200, 300.
Base probabilities: A = 100 / 600 = 17% B = 200 / 600 = 33% C = 300 / 600 = 50%
In your model a single die is rolled: p = [0 1] if 0 < p < 0.17 -> A evolves if 0.17 < p < 0.5 -> B evolves if 0.5 < p < 1.0 -> C evolves only one of the three can evolve
in my model, three dice are rolled: p1, p2, p3 = [0 1] if p1 < 0.17 -> A evolves if p2 < 0.33 -> B evolves if p3 < 0.5 -> C evolves all three can potentially evolve, but the probability of that is much lower (0.17 x 0.33 x 0.5 = 0.028)
If a species is chosen to evolve, auto-evo handles mutations for each one exactly how you've described before.
In reality all these probabilities should probably be much lower, and would be with more species and a bit of tweaking, but hopefully this makes everything a little clearer? | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 10:04 am | |
| - Seregon wrote:
- Thats pretty much exactly what I mean. In your model a single die is rolled to decide on a species to evolve, and a second die is rolled to chose a mutation. What I suggest is that a die is rolled for every creature, deciding whether it will evolve, regardless of what happens to other creatures this step (what happened last step may change probabilities this time round).
A simple example: - Code:
-
3 species, A-C, with populations 100, 200, 300.
Base probabilities: A = 100 / 600 = 17% B = 200 / 600 = 33% C = 300 / 600 = 50%
In your model a single die is rolled: p = [0 1] if 0 < p < 0.17 -> A evolves if 0.17 < p < 0.5 -> B evolves if 0.5 < p < 1.0 -> C evolves only one of the three can evolve
in my model, three dice are rolled: p1, p2, p3 = [0 1] if p1 < 0.17 -> A evolves if p2 < 0.33 -> B evolves if p3 < 0.5 -> C evolves all three can potentially evolve, but the probability of that is much lower (0.17 x 0.33 x 0.5 = 0.028)
If a species is chosen to evolve, auto-evo handles mutations for each one exactly how you've described before.
In reality all these probabilities should probably be much lower, and would be with more species and a bit of tweaking, but hopefully this makes everything a little clearer? That... that is a great idea. It makes a ton of sense, and doesn't disrupt anything else in the system, except for making the modification of odds step for the next generation a bit more complex (which doesn't really matter, seeing as it is already extremely simple.). | |
| | | Seregon Regular
Posts : 263 Reputation : 37 Join date : 2011-08-10 Location : UK
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 10:12 am | |
| It would make things slightly more complex, but it should just be a case of doing what we were doing anyway, just with more potential changes. If I've understood whats involved correctly (and chances are I've missed a few things), there's nothing here which should take an unreasonable amount of time to compute.
The only reason an auto-evo step should take anything beyond a second or two, is the need to generate new graphical representations for the evolved creatures (new procedural textures, limb structures, procedural animation?), but I have no way of knowing how long that could take regardless of how many creatures evolved. Keeping in mind that you'll only see those creatures in your biome anyway, it's something we can reasonably tackle once we get there. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 10:19 am | |
| - Seregon wrote:
- It would make things slightly more complex, but it should just be a case of doing what we were doing anyway, just with more potential changes. If I've understood whats involved correctly (and chances are I've missed a few things), there's nothing here which should take an unreasonable amount of time to compute.
The only reason an auto-evo step should take anything beyond a second or two, is the need to generate new graphical representations for the evolved creatures (new procedural textures, limb structures, procedural animation?), but I have no way of knowing how long that could take regardless of how many creatures evolved. Keeping in mind that you'll only see those creatures in your biome anyway, it's something we can reasonably tackle once we get there. Yes, it seems like this wouldn't change very much at all, computationally. As long as we limit the total number of species in a biome, the representation shouldn't be much of a problem either. I'd hate to pin people to a loading screen, so I'd suggest that as soon as a generation finishes mutating, the next generation begins to compute, so that all of the /model/texture/behavior changes are done within the time limit of the generation. | |
| | | Seregon Regular
Posts : 263 Reputation : 37 Join date : 2011-08-10 Location : UK
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 10:25 am | |
| That's another good point, many of these things can be computed in the background. The game would need to know about any disasters which are going to happen beforehand, but that's not unreasonable either. At the very least all biomes besides that of the player can be pre-computed, so that the player can have some influence on the auto-evo process through actions taken during the play session, that leaves just one biome to compute. If there's any need for a loading screen at all, it'll be for graphical changes, not the auto-evo step. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 10:39 am | |
| - Seregon wrote:
- That's another good point, many of these things can be computed in the background. The game would need to know about any disasters which are going to happen beforehand, but that's not unreasonable either. At the very least all biomes besides that of the player can be pre-computed, so that the player can have some influence on the auto-evo process through actions taken during the play session, that leaves just one biome to compute. If there's any need for a loading screen at all, it'll be for graphical changes, not the auto-evo step.
Exactly, only the biome(s) you live in will be affected. | |
| | | roadkillguy Experienced
Posts : 528 Reputation : 17 Join date : 2010-08-25 Age : 31 Location : Rhode Island
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 11:22 am | |
| - Code:
-
in my model, three dice are rolled: p1, p2, p3 = [0 1] if p1 < 0.17 -> A evolves if p2 < 0.33 -> B evolves if p3 < 0.5 -> C evolves all three can potentially evolve, but the probability of that is much lower (0.17 x 0.33 x 0.5 = 0.028) I thought that's what we were already doing... I have another programmatical summary: -The game enters the preparation phase. -The game goes through the list of animals, and randomly decides whether to evolve them or not (Based on population/Total population). -If one is chosen, it is randomly mutated. (We should try to randomly choose them, so it's not order-biased) -If the random mutation would otherwise fail the next scenario, it's dealt with properly. I.E. it and any other affected organisms are given a reaction mutation. (Would an organism react to it's own stomach malfunction? I think so.) -The game starts the next scenario. What about reactions to reaction mutations? | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 12:14 pm | |
| - roadkillguy wrote:
What about reactions to reaction mutations? Reactions to reactions are handled in the same way they always have been. With multiple mutations per generation though, in enough time, all organisms will be getting reaction mutations, so we need to define how different reactions change the odds. | |
| | | guitar999111 Newcomer
Posts : 18 Reputation : 0 Join date : 2011-08-08
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 12:54 pm | |
| Why not just go through the list of animals once per generation? I realize that's a little different than before, but with multiple mutations per generation now, if A mutates, it would affect B's chances if B is threatened by it, which could affect C etc. If the list is unordered, or stepped through randomly, this removes order bias. This should stop runaway mutation arms races, but it seems like I'm always missing something. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 1:05 pm | |
| That's not really how evolution works- the essential randomness of game evolution is a great mimic of life- giving it more structure doesn't really do much, and arms races are not uncommon in nature. | |
| | | Seregon Regular
Posts : 263 Reputation : 37 Join date : 2011-08-10 Location : UK
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 1:06 pm | |
| Roadkill - the only real difference between our ideas is when the reaction takes place. In what I suggest, species would only be able to react in the next step, this ensures that each species makes at most one evolution per step. While you could react to each evolution immediately, there's a risk that this could cause more reactions, which in turn could cause even more, causing an evolution 'explosion' (but hey... I guess the cambrian explosion probably went a little like that). Think of it like double-buffered evolution, at each timestep each species has perfect information about what happened last step, but no information at all about this step.
Guitar - we could do that (assuming we're running multiple generations at the same time), but it's slightly better to avoid order advantage completely by only having species 'aware' of what happened the generation before this one (again like double buffering, this way all species always have complete, if slightly old, information).
The only real advantage to not double buffering is saving on computation time, and a little bit of memory, however the computational cost of randomizing the list is probably greater (though neither is significant). I'm not sure whether the memory saving would be significant or not, so long as you work with one species at a time I don't think that'd matter either.
edit: ~scio - I had a look through that thread, and it looks much better than what I'd read so far. I'll see if I can come up with anything to add to it later. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Thu Aug 11, 2011 1:45 pm | |
| - Seregon wrote:
- Roadkill - the only real difference between our ideas is when the reaction takes place. In what I suggest, species would only be able to react in the next step, this ensures that each species makes at most one evolution per step. While you could react to each evolution immediately, there's a risk that this could cause more reactions, which in turn could cause even more, causing an evolution 'explosion' (but hey... I guess the cambrian explosion probably went a little like that). Think of it like double-buffered evolution, at each timestep each species has perfect information about what happened last step, but no information at all about this step.
Guitar - we could do that (assuming we're running multiple generations at the same time), but it's slightly better to avoid order advantage completely by only having species 'aware' of what happened the generation before this one (again like double buffering, this way all species always have complete, if slightly old, information).
The only real advantage to not double buffering is saving on computation time, and a little bit of memory, however the computational cost of randomizing the list is probably greater (though neither is significant). I'm not sure whether the memory saving would be significant or not, so long as you work with one species at a time I don't think that'd matter either.
edit: ~scio - I had a look through that thread, and it looks much better than what I'd read so far. I'll see if I can come up with anything to add to it later. Sounds good. I'm brainstorming more autotroph attributes and predatory definitions. Also, remember that in nature, reactions do happen over time- evolution is a gradual process, so running reactions in the same generation doesn't really make sense, and as Seregon pointed out, it can result in indefinite arms races within the computation of one generation. | |
| | | Redstar Newcomer
Posts : 32 Reputation : 0 Join date : 2010-11-12 Age : 39 Location : Portland, OR, USA (GMT -8)
| Subject: Re: NPC Auto-Evo Thread Sun Oct 30, 2011 3:58 am | |
| Happy Halloween. I'm haunting you. BOOOOO.
Seriously, can I just say first that this is the best forum I have ever been to, and it's super refreshing to have exclusively awesome, intelligent people on a board.
I have not been able to get the grin off my face since I started reading this thread. Seriously OMG. I have been away from this project years but it still warms my heart to see this problem beaten down to details. I am sorry for gushing, but I am so ridiculously impressed by everyone's ideas that I can't help it.
Of course, I want to contribute to a point I haven't seen discussed (because everything that's been talked about has been addressed thoroughly and incredibly).
Scio said that there's a small chance a species may divide into two species upon evolving. Since we've already determined that what evolution is received is essentially random, we can call it a die roll upon a table - for the example, let's say a d20, though any number would do. In this case, a roll of 20 would result in speciation. But what does that mean? New species don't just arise and replace the old ones.
What if, on a roll of 20 - or whatever integer [die sides=] - the organism is copied, and each copy then rolls again on the table, resulting in two divergent organisms? Seems like this could mix a little added interest into gameplay when speciation occurs.
Also, it might be interesting to make it so that, if an organism 'rolls' a 1 on the table, the organism receives no evolution, but one of its 'affected' orgs still receives a 'reactionary' adaptation to its current state. Doable?
If this is crazy, forget it - I've been DMing D&D games recently, and and I've found that the best way to keep gameplay fresh is to introduce elements of planned-but-unpredictable randomness into it.
Again, I am so impressed by everything I see whenever I come here. It is an honor to attempt to help you at all. | |
| | | The Uteen Sandbox Team Lead
Posts : 1476 Reputation : 70 Join date : 2010-07-06 Age : 28 Location : England, Virgo Supercluster
| Subject: Re: NPC Auto-Evo Thread Sun Oct 30, 2011 5:59 am | |
| Welcome back, Redstar!
I was under the impression a mutation could result in a split, so an organism has a mutation as normal but another species arises as it was before the mutation.
However, I do like your idea of a split before the mutation, and then the species reacts to itself. Interesting, but it could make it slightly one-sided to the one that got a mutation. I think, when they split, if they both experienced a mutation to themselves, neither would have a major disadvantage over the other. Additionally, chances are they will be different types of changes and will diverge the species, so they don't seem so much like the same organism any more. | |
| | | Commander Keen Industrial Team Lead
Posts : 1123 Reputation : 36 Join date : 2010-07-23 Location : Czech Republic (not that anyone would know where it is...)
| Subject: Re: NPC Auto-Evo Thread Sun Oct 30, 2011 10:39 am | |
| Wow, I have never thought I would ever see that avatar again. Welcome back, Redstar! | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Sun Oct 30, 2011 2:17 pm | |
| Thanks a ton for stopping in and all the encouragement. Originally my idea for divergence was to simply split the species in two one round, and then treat them as separate species the next round. Your way works very well as well. I'll put some thought into it. | |
| | | GhengopelALPHA Newcomer
Posts : 18 Reputation : 0 Join date : 2011-11-23
| Subject: Re: NPC Auto-Evo Thread Wed Nov 23, 2011 7:56 pm | |
| Hi all, I had an idea for how to drive the NPC auto-evo, via threats. In AIs-null's simulator called ScriptBots, and through changes that I made to that program, I've witnessed that threats to a species are what drive evolution. If we boil down the real world to threats, and species reactions to threats are what we call evolution, then I say we do this: Let's say we have an island biome of temperate forest, and three species living on the island. All three are competing for the same food source, so they cause a threat to each other that is related to their population. IE Species 1 has 20 members, species 2 has 50, and species 3 has 100, thus species 1 has a threat level of 150, species 2 a threat level of 120, and species 3 is dominating with only 70 threat points (assuming a constant of 1*SUM(other creatures)=threat level). Species 3 is clearly dominant, and is getting a good share of food, space, etc, and species 1 is barely hanging on. However, let's say that species 1 is omnivorous and eats species 2 and 3. That adds threat points back onto those species which species 1 eats, and (assuming a constant of 3*SUM(predator creatures)+=threat level) gets a final count of 150 threat points for species 1, 180 for species 2, and 130 for species 3. Under these rules, species 2 is given a chance to split and mutate, because it is the most threatened species, via Competing for Resources and being Hunted.
There would then be a set of conditions which, if met, put threat points on the species concerned. There could be many (and there could even be some from events) but here are some that I can think of: -Hunted (if there is a population of carnivores which eat this species) -Competition (if there is another species which requires the same resources (food, water, materials) as this species) -Lack of Resources (if there are no available resources which this species requires) -Inhospitable Biome (if the species has found itself in the incorrect biome)
Finally, if we consider the whole dimension of a planet's ecosystem as a chessboard, and the various species as pieces, then the game is played by pieces which move one at a time, threaten other pieces which have what they want, spread to other squares when threatened, and take other pieces by either direct or indirect action (eating them vs eating their food). This system could then be extended to plants as well, and copies of "pieces" represent the population of the species.
I'm thinking that the best way to drive evolution is through threats, and even if the agent-by-agent mutation method is too long and tedious to use for a game, emulating the causes and the effects with generalized reasons to evolve are probably best. | |
| | | Dr_Chillgood Newcomer
Posts : 56 Reputation : 6 Join date : 2011-10-26
| Subject: Re: NPC Auto-Evo Thread Wed Nov 23, 2011 8:20 pm | |
| | |
| | | Pezzalis Regular
Posts : 260 Reputation : 6 Join date : 2010-08-07
| Subject: Re: NPC Auto-Evo Thread Wed Nov 23, 2011 10:46 pm | |
| So wait would that mean that a species is a bigger threat to another competing for the same food source because there are more of them?
Wouldn't that mean locusts are a bigger threat to us than we are to them? I might have read that wrong but population size should not be the key to evolutionary success. | |
| | | ~sciocont Overall Team Lead
Posts : 3406 Reputation : 138 Join date : 2010-07-06
| Subject: Re: NPC Auto-Evo Thread Wed Nov 23, 2011 10:54 pm | |
| @GhengopelALPHA That'a a cool idea, and really well thought out, but I'm not sure how it fits into the current concept. It's a bit more complex and accomplishes essentially the same thing as the CC of NPC evo, except we're going to run more than one mutation per generation now, because the game will move a lot faster that way.
Perhaps you could work threats into determining what makes organisms evolve in different ways? | |
| | | GhengopelALPHA Newcomer
Posts : 18 Reputation : 0 Join date : 2011-11-23
| Subject: Re: NPC Auto-Evo Thread Mon Nov 28, 2011 4:09 pm | |
| - Dr_Chillgood wrote:
- ^I actually did roughly that for cellular auto evo (link here: https://thrivegame.canadaboard.net/t665-cellular-evolution-concept-questions) where basically the cells should evolve based on what is threatening it.
edit: did you say you program? *drools lightly* so excellent. I do see how your system takes threats into account, and my idea is to build a system which recognizes why organisms died, and that would plug into your different reactionary evolution sets. (And I agree that a species successfulness should be gauged by the rate of population change.) Perhaps it would be best if we rank organisms from most successful (positive numbers) to least successful (negative numbers) and take the top 3 or so least successful species and look at what's causing their population to go down (competition, being eaten, fast natural death rate, etc), and evolve something related to the greatest threat. And not exactly; I can understand how a program works which has already been written. I can look at a program and see what features are missing/not right/too much and change them how I see fit. - Pezzalis wrote:
- So wait would that mean that a species is a bigger threat to another competing for the same food source because there are more of them?
Wouldn't that mean locusts are a bigger threat to us than we are to them? I might have read that wrong but population size should not be the key to evolutionary success. There probably should be modifiers like metabolism, lifespan, and intelligence (technology), which decrease the threats on each individual species (a species which can live longer naturally has an advantage over all threats, I think. Same for intelligence). And not to mention the "population" of the source of shared food also has an effect (large amount of resources mean food can be consumed by both populations without negative effects on each other). So to answer your question about locusts being a big threat to us, they aren't overall, but based on population, yes. It's the effects of our long lifespan and the large variety of food which we humans eat that mostly negate this threat. Something like this: Total threat level = Competition + Consumption - Average lifespan - Available resources = Locusts population + Humans eaten - Average human lifespan - Plentiful food or resource population(s) If I could find some numbers on current locusts populations I'd plug all the numbers in and see what we get, but I think the fact that we eat so many other sources of food more than negates the large population of locusts. Also, the equation is quite likely much more complicated, but that's what I came up with in about 30 minutes. And I do believe that population is key to evolutionary success; it's only by being plentiful that a species can be capable of evolution, and I consider population to be the gauge of success. | |
| | | Sponsored content
| Subject: Re: NPC Auto-Evo Thread | |
| |
| | | | NPC Auto-Evo Thread | |
|
Similar topics | |
|
| Permissions in this forum: | You cannot reply to topics in this forum
| |
| |
| |