X-Message-Number: 26157
Date: Tue, 10 May 2005 10:25:04 -0400
From: Thomas Donaldson <>
Subject: to Yvan, for the umpteenth time

Hello Yvan:

You raise 2 points, which I shall try to deal with in order. I also 
apologize for my delay in answering your supposed answer to me. Let's
suppose that all the "neurons" in our electronic brain (you should
also think about simulating chemical currents too: some such as
glutamate play an essential role in our learning) have been listed 
in A table (or does each neuron need its own table?). Unless new
neurons develop connections they die off. If there's just one table,
all neurons likely to connect to the new one need to be informed
first that it exists and second that it has or does not have a 
connection to that neuron. (In real brains, neurons are informed
of a new connection, from an old or new neuron, because that
connection has grown to them and they contact it. No table exists
except the actual organization of the brain). So we have all the
other neurons which somehow need to be informed of this new neuron.
Since this new neuron has only a software connection to the others,
the information of its connections and whether or not its new must
somehow proceed along existing connections between existing neurons.

I can think of several ways to do this; however it constitutes 
processing which for real neurons and brains isn't needed at all.
In parallel computers one issue a programmer must constantly be
aware of is the priority of the different messages to be sent.
We'll have to settle on a priority of the information about
the new neuron compared to that of other tasks each neuron is
now doing. Clearly when they are sent the message, they already
have a priority ranking. We can easily put this new message at
the end of their priority rank; with a bit more trouble, we can
even put it at the start (it would have to wait until any
existing message is complete enough that it can be interrupted or
alternatively the existing message is stopped and must be 
repeated after the new message has gone through).

I must point out here that this software can clearly fall afoul 
of glitches in other software or electrical faults which 
change it or destroy it. Real brains, too, aren't immune from
problems, but they are immune from this one, because they simply
don't need it or use it. This also means that your artificial
"brain" doesn't work like a real brain at all, especially 
when something bad happens. 

You have used the word "table" several times. I will finally point
out that a doubly-linked list would help the software doing this
task, while a table adds to the problems the software must solve.
I HOPE you know of lists; it's just that if you want to seriously
discuss how to use software to imitate part of the workings of 
a brain, I'd expect that you would have mentioned them at least.

Finally, as for your processors being inactive most of the time,
first, that doesn't remove the speed advantage I mentioned; 
second, they aren't inactive, they are actively waiting. Moreover,
really simultaneous events can happen and will happen. If you
have each processor imitating only one neuron, I suspect that
you'll not find them actively waiting for very long times.

          Best wishes and long long life for all,

              Thomas Donaldson

Rate This Message: http://www.cryonet.org/cgi-bin/rate.cgi?msg=26157