Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - rwill128

Pages: 1 ... 3 4 [5]
61
Haha, damn. Seems like it would still be a viable option.

62
Anyone still doing this?! I'll try to jump in tonight if so.

63
Bugs and fixes / Huge Performance Loss After Starting Graphs?
« on: September 04, 2012, 10:45:24 AM »
Has anyone else experienced a big loss in cycles per second after starting a graph, especially if you start more than one or two?

It happens even if I have my cycles per data point at the default 200, which makes me think this performance loss is disproportionate to the amount of processing it should actually require to generate the graphs. Also, they're not too hard on the memory, are they? I wouldn't think so.

64
Evolution and Internet Sharing Sims / Re: Internet Mode Ex Nihilo Sim
« on: August 06, 2012, 03:23:45 PM »
I would LOVE to see a huge zerosim or randomsim, and I would happily contribute processing power.

It'd be a shame to let potential griefers get in the way (if anyone's around that wants to do this still). I agree; this is very much needed.

65
Evolution and Internet Sharing Sims / Re: Come join the F1 megaverse!
« on: August 06, 2012, 03:18:34 PM »
Is anyone still running it now? (2+ years later)

If not, can anyone direct me to some interesting threads about what eventually happened? I'd love to hear about the mutation results of such a large sim.

66
Okay, I have a lot to say here, so I'm trying to narrow it down to just one small bite-size piece of information for this post. I've been thinking about DB a lot since I discovered it a month or so ago, though.

Here goes:

As far as I know, right now DB's only mutation-rate variability is a global one, which not only affects all parts of the bot's DNA, but it affects all bots.

But I think we should have more options: not just a variable inside a bot that changes it's own susceptibility to mutation, but commands that changes a particular gene's susceptibility to mutation, or even a command that changes the bot's susceptibility to mutation in the following lines of code until it is changed again, or perhaps changes the bot's susceptibility to mutation for an X number of lines of code that follow.

The above system could simulate variability in environmental factors that change our genes (such as carcinogenic substances, responses to stress, or radiation).

It could also allow for evolutionarily-intelligent ways of "sticking one's neck out." Certain crucial parts of code would, through the process of natural selection, be more-or-less preserved as low mutation rates were selected for, while other more experimental parts could be left open to higher mutation rates.

I don't think this way of handling mutation would be counter to actual biological processes. Granted, I'm no biologist, but I think that the molecular copying of our genes is orchestrated in such a way that other genes could actually be telling our copying centers to copy that piece of code with a greater or lesser degree of precision.

(Perhaps I'm wrong. If so, I would welcome a swift knuckle-rapping from an actual biologist.)

---

Secondly, I think that, in order to conform more precisely to the behavior of actual genetics, it would be wise to consider the following options:

1) Consider a way that each bot's code would be more likely to support a metaphorical bank of stored-up, unexpressed mutations -- mutations that are waiting for a relatively unlikely mutational "on-switch," one that causes that set of genes to be expressed at a very specific time in the bot's life or under other specific circumstances.

2) Consider giving genes not just commands for performing operations,  but conditions for genes to check if certain goals are being achieved, certain inputs are being received, or certain conditions are being met by the end of a gene's expression. If not, these genes should be able to deactivate their own expression.

----

In fact, perhaps each gene should have three sections: one that only accepts conditions for this gene to express itself, one that only accepts commands -- a "what to do if this gene is turned on" section, and a third section that also only accepts conditions, and which serves as a "when to turn this gene off section."

If a mutation occurs such that a new gene is created, but only one of these sections has code, then the gene rests dormant until all sections have gained a mutation.

I have a few other ideas, but I think these changes (to start) would be crucial for inviting more complex evolutionary jumps.

----

Perhaps some research would have to be done to cite a biological precedent, but I do believe that biological organisms behave according to these patterns, and even though bot instructions are referred to as "DNA," they're still operating at a macro level (we have commands that tell bots to "shoot" or "repro" -- and an entire gene can define a complex set of behaviors, etc.) To me this fact means that we should tweak DB "DNA" to have some of macro-level behaviors of expression that our genes do.

----

Similarly, as far as I know, two of the properties of genetic code that make mutations so potentially powerful are the recursive nature and the scalability of genes that define certain features.

Because of the way DB code is run, we can't necessarily implement true recursiveness except for on a cycle-to-cycle basis, but why not add mutation types that, for example, copy an entire section of code and put in a new area, or put it directly following the original section. Or perhaps a whole gene is copied and then both genes are allowed to express themselves, but if one changes the original will still be there.

---

Let me know if I'm making sense. and also give me any input you have on these ideas.

Thanks,

Rick

67
Bot Tavern / Re: Interesting Idea
« on: August 03, 2012, 04:54:12 PM »
Hey,

I just discovered DB a couple weeks ago, but it's nice to see that people are still using these forums.

I've been curious what kind of results people are getting with new machinery, especially since some of these posts are over 5 years old.

I'm especially curious about how large of a sim people can run on new hardware, and how quickly it runs, etc.

---

Also, his idea sounds really interesting. What have people come up with when trying to create a stable base for a bot that is intended to acquire skills through mutation? I like his idea of having several versions of the gene that has core functions, and having each of those genes either run completely if it's doing well, or .mrepro if it's not.

Has anyone built more sophisticated status checks into the genes, also, maybe a beginning and ending gene that not only carries out core functions, but also uses some kind of check to ensure that the core functions have been preserved, and resets them if they haven't been. There could be a middle gene full of code that's essentially blank (functionless), but t takes up space so that when mutations occur, they're likely to occur in this block of code.

I'm new to the language, so I don't know if what I just suggested is possible or not.

Pages: 1 ... 3 4 [5]