Darwinbots Forum

Code center => Suggestions => Topic started by: Botsareus on August 14, 2014, 12:45:42 PM

Title: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 14, 2014, 12:45:42 PM
Credits:

The following idea was inspired by a lot of people here. Main contributes in most meaningful order are Tom, Panda, Spork and Testlund.

Pointers:

* The idea is, that when you turn weather on,The sun moves in random directions across the screen and the 'scope' of the sun changes as you can see in the picture attached. The scope will change from 1/4 the width of the screen to whole screen. Formula will be:

Code: [Select]
width = 0.25 + 0.75 * (r ^ 2)

where r is a random number between 0 and 1 that slowly adjusts itself.

If a robot is not in the 'scope' of the sun it thinks it is night time (.daytime sysvar) and it is treated like it is night time (FeedThisCycle = False)

* Robots with more chloroplasts will gain mass in liner fashion instead exponentially. This will prevent 'drifters' or robots that cheat by following the sun around.

* I am removing my ugly chloroplast kill rules (as yet unreleased version, just was playing with it) and expending 'disable chloroplasts' to prevent chloroplast sharing.

* From now on robots will only be allowed to share chloroplasts with other robots who have DNA genetic distance within 75% of the other robot. If the condition is not met the robot is not allowed to share chloroplasts again for 8 cycles. This is to prevent nasty program hangs where a robot computes genetic distance on each cycle. (Learned my lesson from sexrepro)

* Finally, I want weather to be on during the leagues. All I am trying to do is eliminate the environment inconsistency during evolution and league modes. (As I always did)

This does mean I will have to rerun the leagues, however, I will set the transition to step ladder at 31 not 24 this time. As I want the ratio of successful to average bots in the result to be 16:~15 not 8:~15.


P.S.

I am only implementing this if that last point is met, so that does not leave you guys with much wiggle room. Although I am still willing to hear your comments.

If this thing is a go it will mean I'll stick around for a while because I will have to rerun the leagues.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 14, 2014, 03:19:06 PM
Well, so far at least Shadow and Peter do not hate it. Although I am getting a feeling I just screwed Peter as he was 25% trough an experiment.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Shadowgod2 on August 14, 2014, 03:26:57 PM
i like the idea
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Peter on August 14, 2014, 03:50:45 PM
I'm actually not quite sure what to think of it, I may hate it soon enough. ;)
First see what others have to say about it. Playing wait and see.

Why a moving sun?
Why does it move randomly?
Why become bigger/smaller?
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Shadowgod2 on August 14, 2014, 04:23:03 PM
it's suppose to represent clouds which:
moves
moves fairly randomly
becomes more (less sun) or less (more sun) cloud cover
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: spork22 on August 14, 2014, 05:30:20 PM
I like this idea. :D
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Panda on August 21, 2014, 06:07:55 AM
I agree that the exponential gain in mass is a problem as it doesn't cause "issues" for bots who want to move and have a small amount of chloroplasts.

Instead, the mass should have increased the most at the start and the least at the end to better balance the robots. I agree that linear would be best to try now, unless it doesn't impede the bots enough (in which case I would suggest a

This is the kind of balancing that we need to do to get a good working system with chloroplasts.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Testlund on August 21, 2014, 11:15:46 AM
I think the chloroplast system works well as it is. I get a good balance by using costs and turning on/off the sun based on energy levels.

The weather thing seems like a cool idea, but it would be nice with some control over it. Maybe a way to pause the yellow rectangle to stay put in one place. Also instead of turning the outside area to night, how about setting the energy accumulation to half instead, to make it more like a cloudy day than night.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Panda on August 21, 2014, 11:25:29 AM
Bots will still generate chloroplasts if they're not veggies, don't they?

I forget, do chloroplasts degenerate? If not, they could do that which means only bots that want them generate them. That's like an upkeep cost but forces them to create them.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: spork22 on August 21, 2014, 11:55:57 AM
I'm not sure if they do. I wonder if we could implement a way that makes it so bots that have a certain number of chloroplasts give more energy than usual when eaten or killed. This would make eating veggies just as rewarding as being a veggie itself.  However, I still like the idea for weather.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: vrukt on August 21, 2014, 01:14:45 PM
I may be a newb, but so far my experience with evolving Darwinbots has made me realize the major limiting factor is the environment. Anything to stir up the environment a bit, and add variables, I'm happy with.

Well as long as the new tactic doesn't end up being "light chasing" I can see why you're worried about that.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: spork22 on August 21, 2014, 07:31:29 PM
However, light chasing in plants does happen in real life. Sunflowers aim their petals at the sun throughout the whole day, as if they were looking at it. However, they don't literally get up and follow the sun around the earth.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: vrukt on August 22, 2014, 12:11:38 AM
However, light chasing in plants does happen in real life. Sunflowers aim their petals at the sun throughout the whole day, as if they were looking at it. However, they don't literally get up and follow the sun around the earth.

My concept was more "they may chase light, but they don't do it at 1650km/h, east to west"

Although technically a plant that learned to do that would be very successful.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: spork22 on August 22, 2014, 12:33:17 PM
Yeah, it can't be like super-accurate
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 12:43:19 PM
Correct Panda, Robots that are not set to repopulate can still make chloroplasts if want. (As long as you do not restrict them from settings)
I recommend you actually play with the program Panda.
As far as automatically chloroplasts loss, I was playing with that idea in my minds eye and came to the conclusion that it is a bad one, now if only I can remember why. Definitely was something with balancing out cost for chloroplasts production and makes the ambient light feature useless.
On a final point, after making mass liner I think it is looking way better, still I want specifically Panda to play with 2.48 (drop any day now, I want IM)
When you go back to school Panda?
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 12:55:02 PM
We might end up adding chloroplasts loss. We just may.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Panda on August 22, 2014, 01:00:41 PM
Correct Panda, Robots that are not set to repopulate can still make chloroplasts if want. (As long as you do not restrict them from settings)

What I meant was, a lot of bots will get some chloroplasts, even if they don't have a programmed role of veggie (rather than in the repopulation setting).

I recommend you actually play with the program Panda.

When I get a chance to, I will. I've been really busy at the moment preparing for my final year project and helping my girlfriend pack for France.

As far as automatically chloroplasts loss, I was playing with that idea in my minds eye and came to the conclusion that it is a bad one, now if only I can remember why. Definitely was something with balancing out cost for chloroplasts production and makes the ambient light feature useless.

I suggested this because of my first point; bots who's roles are not veggies are having a few chloroplasts (though this may be prevented by a linear mass addition. Why does it make the ambient light feature useless (I cannot work that out, sorry)?

On a final point, after making mass liner I think it is looking way better, still I want specifically Panda to play with 2.48 (drop any day now, I want IM)

That's really good. I think it was a bad idea to do it in the first place now; I cannot remember why we wanted it in the first place.

When you go back to school Panda?

I travel back next Saturday but I don't start until the 22nd of Sept. I am quite busy until then, though. I hope to continue being part of this community during the year but I'm quite worried that I won't be able to.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 01:03:08 PM
Shvarz believe or not wanted non-liner, who would have thought?
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 01:08:16 PM
Quote
Correct Panda, Robots that are not set to repopulate can still make chloroplasts if want. (As long as you do not restrict them from settings)

What I meant was, a lot of bots will get some chloroplasts, even if they don't have a programmed role of veggie (rather than in the repopulation setting).

Hmm... I guess you are asking if there is a restriction for chloroplasts for non-repopulating robots, there is not.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Panda on August 22, 2014, 01:12:35 PM
Quote
Correct Panda, Robots that are not set to repopulate can still make chloroplasts if want. (As long as you do not restrict them from settings)

What I meant was, a lot of bots will get some chloroplasts, even if they don't have a programmed role of veggie (rather than in the repopulation setting).

Hmm... I guess you are asking if there is a restriction for chloroplasts for non-repopulating robots, there is not.

I'm not asking about that. I was asking it rhetorically. What I am saying is: in evo sims, all bots will often generate small amounts of chloroplasts; unless that is just something that has happened to me.

lol Shvarz believe  or not wanted non-liner, who would have thought?

lol Panda believe  or not can be wrong, who would have thought?
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 01:24:42 PM
Well hopefully the non-liner will fix it. Time will tell.

It was weird for me that even a phd can make a mistake, that's all.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Panda on August 22, 2014, 01:30:49 PM
Well hopefully the non-liner will fix it. Time will tell.

I assume it will. If we want to restrict moving bots around more, could we increase their volume? In leagues, drag is enabled; volume will make it more difficult for them to move.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 01:34:59 PM
Volume has a hard limit due to ties code, sorry.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Panda on August 22, 2014, 01:38:30 PM
Volume has a hard limit due to ties code, sorry.

It could be increased more than it does now, couldn't it? Or is it already pushing those limits?
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 01:41:50 PM
Correct, limit is reached.
Title: Re: Proposal: New chloroplast engine and DB2.48
Post by: Botsareus on August 22, 2014, 02:22:55 PM
Looking like it would not hurt to add very slow chloroplast loss.