Code center > Suggestions
Non-Determinstic Bot DNA flow
Numsgil:
I've fixed (I think) problems with mutation information passing to kids in my working version no one has yet.
Again, I think we should have ND DNA flow as an option, but its effects are just to surreal for most modern 'tweaked' bots except short bots (which by definition have multipurpose genes).
shvarz:
Good points, Carlo.
When I said that Alga ternia was slow, I meant that it was running slower. Before it saved 15 in .up on every cycle and now only every 3rd/4th cycle, so of course its speed was lower. I also had to adjust the energy flow, because Alga were now spending 3-4 times less energy/cycle than before.
Here is what I think about the time flow: If on every cycle a bot has 3 active genes, then all it's processes and reactions are 3 times slower than those of a bot with a single active gene. You can equate it to time flowing 3 times slower for it. The more active genes bot has, the slower is the time flow. This is a problem in itself, as you are driving evolution to either reduce the number of potentially active genes or to make each gene more complex. A duplicated copy of a gene is a huge liability, because without contributing much it slows down bot's reaction time. It should not be this way.
In addition, it is impractical from our point of view, because the speed of simulations is essentially slowed down by a factor equal to the average number of active genes.
As I said, in theory the non-deterministic processes should be moved further down into the guts of simulation, so that the execution of different genes appears to be parallel and happening at the same time.
PurpleYouko:
Check out this exert from the genome of Hunter 2.2.
--- Code: ---'turn towards enemies or food
'*************************
cond
*.eye1 *.eye5 >
*.eye1 *.eye9 >
start
mult mult 140 15
stop
cond
*.eye9 *.eye5 >
*.eye9 *.eye1 >
start
mult mult -140 -15
stop
cond
*.eye3 *.eye5 >
*.eye3 *.eye7 >
start
mult mult 80 7
stop
cond
*.eye7 *.eye5 >
*.eye7 *.eye3 >
start
mult mult -80 -7
stop
cond
*.eye4 *.eye6 >
start
mult mult 40 4
stop
cond
*.eye6 *.eye4 >
start
mult mult -40 -4
stop
'avoid conspecifics
'****************************
cond
*.refeye *.myeye =
start
mult mult 120 0
stop
cond
*.refeye *.myeye =
*.eye5 60 >
start
mult mult 628 0
stop
' Spin back after repro
' ************************
cond
*51 0 !=
start
mult mult 628 0
0 51 store
stop
'reproduce
'*********
cond
*.nrg 2000 >
*.robage 40 <
*.body 20 >
*.eye5 30 <
start
50 .repro store
1 51 store
mult mult 628 0
stop
cond
*.nrg 4000 >
*.body 100 >
*.eye5 30 <
start
70 .repro store
mult mult 628 0
stop
' rotate
' *******
cond
start
.sx store
.aimsx store
stop
--- End code ---
Every one of these genes has to be 100% able to operate on every cycle or the robot does absolutely nothing.
Never mind slow reflexes. It just doesn't react to anything... EVER. it just sits there and does absolutely nothing.
It is completely impossible for it to see food and simultaineously turn to follow it. By the definition of the non-deterministic system, only one of these genes can activate in any given cycle, therefore it can never turn at all under any circumstances.
It is also 100% impossible for the carefully designed repro-spinback gene to have any effect whatsoever since this gene cannot ever act on the same cycle as the single gene that actually rotates the robot.
Occasionally one of them moves in a straight line for a while but that is about it.
The same is true of pretty much all the top robots these days.
Simple little things like Diplomaticus Diplo may still work reasonably well but that is because they are incredibly simplistic to start with.
I have given it a fair try and I still have to say that this concept is totally unworkable without utterly destroying DarwinBots.
Numsgil:
I think the kinds of bots that work in a deterministic universe and a ND universe are incompatible. Which is why it's a neat idea for an option, but unworkable for the default.
PurpleYouko:
Yup, I can go along with that. Might be fun for a bit of a play with evolving species but I sure won't be using it much.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version