Welcome To Darwinbots > Newbie
Darwinbots replacement/clone
ashton15:
--- Quote ---No, I mean having a "read" command which would take the value of the memory location pointed to on the the top of the stack and put it on top of the stack. I didn't know there was a "*" command, I thought you had to put it before the number of the variable you wanted to read.
--- End quote ---
Like 706 ¬ looks for all instances of 706 and put the memory locations containing it on the stack? Or like 1 *.daytime - ++ add * which reads .up in the daytime and .dn at night?
--- Quote ---As for your neural net, what about things that are related, but don't happen in the same cycle. For example, if you shoot, you get -2 shots back in the future, not instantly.
--- End quote ---
Simple the neural net computes like computer RAM and functions with information stored on the "hard drive" which knows things like which synapses connect which to things and then it also has space just for memory that can be written to, somewhere in the unconditional tutorial thing it talks about some other way to use memory which might be helpful. Didn't entirely understand though.
peterb:
--- Quote ---As for your neural net, what about things that are related, but don't happen in the same cycle. For example, if you shoot, you get -2 shots back in the future, not instantly.
--- End quote ---
--- Quote ---Simple the neural net computes like computer RAM and functions with information stored on the "hard drive" which knows things like which synapses connect which to things and then it also has space just for memory that can be written to, somewhere in the unconditional tutorial thing it talks about some other way to use memory which might be helpful. Didn't entirely understand though.
--- End quote ---
It doesnt matter if for a neural net something doesnt happen within the same cycle.
Put simple, if you shoot you can count up a total shots (*.shot 1 add .shot store )
if you get food back, you can reset the shot counter.
As long as shots don't go to high a neural net doesnt trigger an action.
If shots value get to high and can choose to abandon shooting, or go faster forward.
Basicly this is way neural nets use a sigmoid function, because it switches after a "certain" treshold, in which the "certain"part adepts by a reward system.
reward would simply be gain food, or succesfully do something.
i was just thinking what if the firt memory byte (zero) was reserved for cell type and thus memory amount.
In such case less memory types would be fixed and reserved, its possible to minimize memory if you dont use eyes,
(8 types eye, shell, nrg body, str body, movement) or if we use 2 bytes we got 16 options 4 bytes 32...
Hmm maybe i better just wait for the code before doing these suggestions.
Houshalter:
I don't think your understanding me, and I'm not understanding you. Lets set aside memory locations 50 to 70 for some purpose. Say I want to access one more then the location I accessed last cycle. I would do this:
--- Code: ---LastOneUsed 1 add read
--- End code ---
Simple, right? I ran into this problem while trying to figure out how to make the bots do complex stuff like "learn".
Also, for your neural nets, how do you find two events that are related. There could be millions of possible connections and relations, not to mention the farther in the future the reaction happens, the harder it is to identify what caused it.
ashton15:
def last_read 971
start
70 .last_read store
.delgene inc
stop
start
'condition
*.last_read ++ *
'whatever you want to use the number for
.last_read inc
*.last_read 91 = and
70 .last_read store
stop
Like that? That's the simplest way I can think of... really hope that's what you mean this time.
--- Quote ---Also, for your neural nets, how do you find two events that are related. There could be millions of possible connections and relations, not to mention the farther in the future the reaction happens, the harder it is to identify what caused it.
--- End quote ---
number of varibles to the power of two, 250ish sysvars and lets say 100 custom varibles which makes 122,500 but not every varible depends on every other varible for instance shot travel distance depends only on body and shootval so to make up for this I divided that by 5.5 (could be any number) to get 22,000, thus using the 25,000 memory locations I proposed ealier, 22,000 are part of the neural net, 350 are varibles and leaves 2,650 for genreal memory and if that memory is spread over how ever many cells are in the brain it should be sufficient to allow for human intelignence, right?
Houshalter:
--- Quote from: ashton15 ---def last_read 971
start
70 .last_read store
.delgene inc
stop
start
'condition
*.last_read ++ *
'whatever you want to use the number for
.last_read inc
*.last_read 91 = and
70 .last_read store
stop
Like that? That's the simplest way I can think of... really hope that's what you mean this time.
--- End quote ---
Maybe, I'm not sure what your trying to do with it though. Heres a better example: I have a shepard bot. It grades the fitness of a bot it sees in front of it and stores that value in a memory location. I have ten memory locations and the number of the location I last stored in and I want to rotate through them. Its easy to store them using "last_value 1 add store" but its hard to read them. For example, what if I want to find what the last bot's fitness was? Ideally I would do this: "last_value read". Now the value of the last bot's fitness is on top of the stack and I can use it to compare it to the bot I see now to judge what his fitness is.
And do you really think you can simulate human intellegince in darwinbots? That would be weird.
Navigation
[0] Message Index
[#] Next page
[*] Previous page
Go to full version