General > Bot Challenges

simulation fish population evolution

(1/3) > >>

peterb:
 This might be an intresting thought

recently in the newscientist there was this article http://www.newscientist.com/article/dn2505  
about fish populations, that fish adapt and become smaller fish if we catch the big ones.
it would be better to leave out the big ones.

From a darwinbots view, this makes sense, we all know bigberta bots can reproduce lots of ciblings.
Now the article mentioned they used some simple kind of software (it didnt mention what kind).
Dough it might be intresting to simulate this, maybe find some proofs or find other new things about fish population control.

To setup something like it, I think a sim would look something like this..
There are fisherman ships, they multiply slowly and depending on the fish population.
If they catch to little they have to dye (by shooting at no target, loosing energy).. in real live it would be the ship lost its work and was removed from sea.
But maybe they dye simply and such extra dye trick isnt needed.

Then the fish, they should have an age system
Below a certain age not allowed to reproduce.
Here is species specification, because its DNA must some how evolve to find an optimal birth rate.
Maybe sex repro ?, or a in out system, to talk about repro its age.
Fish feed on a few vegies only, it would be nice if fish would swarm in groups from about the same age a bit like in real life.
I'm not sure if fish prefer to do repro with someone from the same age, maybe use a %= there to match. or by math get it to 60% or 70% or so... maybe that number itself might change too.
Also bigger fish lead to bigger offspring
while smaller fish lead to smaller offspring.
To keep it simple at first the number of childs shouldnt be depend on fish size.
(so use a counter for example to create 10 ciblings, and try to keep their seize equal)


fishing ships cannt feed on veggies, (for example using in out communication system, to detect)
some where in the ship script you should be able to set, which fish age range they catch

To make it slightly more realistic perhaps work with seizons for reproduction, I'm not sure if fish keep track of it but I do think so.
I think this can be done using the mem range 971 or so they go to ciblings, and so then you can use a mod counter on it
so while day mod 365 <50 or so

oh and there might be also a natural fish enemy, using slightly the same rules, a shark.
It does feat only on fish, not on ships not on algey, it does this on any size fish
maybe the ships should also be allowed to catch them/ but first try without it.
Sharks are a bit bigger, and they shouldnt be able to kill all fish since that would mean the end of their population too.
it could be achieved by for example test the number of total species compared to its own; keep a ratio of 10 : 2 or so.
A fish who gets to close to a shark should stop moving, and feeding (sharks always win from fish)
Like ships always win from fish.






jknilinux:
I don't mean to be unhelpful or something, but why would we want to run this sim? Fish adaptation makes sense, so why should we simulate it if we know what the outcome will be?

peterb:

--- Quote from: jknilinux ---I don't mean to be unhelpful or something, but why would we want to run this sim? Fish adaptation makes sense, so why should we simulate it if we know what the outcome will be?
--- End quote ---


a chalenge to make a reasonable simulation of the problem.
Then it would show that

1) Darwin bots could be used for simulating real world problems (like a scientific tool).*
2) Some claimed darwinbots is poor because it doesnt deal wit species specification, this would result in an ideal year for making offspring, (species size)
3) Also it will show coders the effect of population size, species size, compared to the environment.
4) Its a sim with canrivores and herbivores, and an often discussed outside pressure on the evolution (ships)
      the nice thing is the ships dont evolve, they just eat (fish nearby will stop moving and let them be eaten).
5) And Well I think its cool if it would be able to simulate a real life problem



(3) >> I just finished w6.txt this week because I used tactics as in above point 3 and it became tehrfore quite powerfull
           most bots have quite simple rules in reproduction area, I had some advanced rulles.
           So this is a nice thing to discover for a coder, what would be good growth rates, wat to do when you become extinct etc..



jknilinux:
EDIT:

Okay, I originally thought there was no way to get it to work, hence my latest reply. However, it might just be possible:

We could make it non-torroidal, set gravity to "huge", set buoyancy up to make all the big bots go to the top, and make the fishermen non-mutating veggies. The regular veggies will keep themselves small, while the fishermen veggies keep themselves huge to stay at the top, turn on gravity, and whenever a fish gets too big, it will float to the top and get killed by the fishermen instantly (because they're huge, they have huge shots). Turn mutations off, make the fish use only sexrepro, and start with a fish population that has high genetic diversity, at least in relation to body size. Sharks aren't necessary, but if you want to include them, do the same to them. Then, if the fishermen kill only big fish, they'll evolve to become small, and vice versa.. It might just work.

I appreciate your ideas, keep them coming! IMO it's just not as fecund as figuring out how to get our regular evosims working.. That's the big thing.

Anyway, this does give me an idea- maybe in evosims we could have a fisherman-like "veggy" with mutations disabled which just goes around trying to somehow encourage intelligent behaviors to come out from the evolved bots... Is that what everyone refers to when they say "shepard"-bots?

peterb:

--- Quote from: jknilinux ---Well, even though I don't think you specifically said it, I'm assuming mutations are turned on. If so, this is what will happen-

Within  a few hundred cycles, the fish-stopping-when-near-a-predator and the sharks-eat-no-algae behaviors will be the first to break. Assuming their code is otherwise the same, one of the two species will randomly go extinct soon. Pretty soon, they'll break all discrimination abilities, and will also eat the fishermen. The fishermen probably won't have mutations enabled, so they'll stay the same, and might even go extinct before the fish vs. sharks battle is through. Ultimately, just one species, either fish or shark, will remain, and will continue to slowly devolve...

Anyway, this does give me an idea- maybe in evosims we could have a fisherman-like "veggy" with mutations disabled which just goes around trying to somehow encourage intelligent behaviors to come out from the evolved bots... Maybe that's what people refer to when they talk about "sheperd" bots.
--- End quote ---


Ofcourse no mutations should be enabled,
Any kind of adaption should come from in out communictation with the species.
So for example fishA age 8, says to fishB age 2 do you want to repro with me ?
If so their ofspring would repro for example at (8 + 2 ) / 2 = age 5 + a favour of going to near to one of the parents like  5 + sgn (2-5) = 4 (the one that does do the repro)

Well maybe differently but something like that, so it will addapt and adjust its age for doing repro


Of course it could also be that if 2 was to young for doing repro the fish would not perform repro
Depending on age perhaps a little bit on body seize (dough not to much repro will happen, you cannt stop nature)

maybe use an extra in out command to say if a certain fish is male or female...
maybe use a memory var for sperm or egss, and fertilezed.
maybe ... something else ...
Anyway it might look like sexrepro but it is different

In effect you get better working self tuning DNA, without the total randomnez of using sexrepro.
As sex repro also adds some randomizition its effect would be like having mutations enabled.
What you would get here is a way to find a way to tune DNA
Maybe if the trick isnt too complex it could be used to improve regular bots as well ....


I sheperd bot has a influence on its environment I think like a dogy sheperd, in this scenario the fisherboots are like that.

Navigation

[0] Message Index

[#] Next page

Go to full version