17.06.2014 Views

Notes for the Lifebox, the Seashell, and the Soul - Rudy Rucker

Notes for the Lifebox, the Seashell, and the Soul - Rudy Rucker

Notes for the Lifebox, the Seashell, and the Soul - Rudy Rucker

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

<strong>Notes</strong> <strong>for</strong> The <strong>Lifebox</strong>, <strong>the</strong> <strong>Seashell</strong>, <strong>and</strong> <strong>the</strong> <strong>Soul</strong>, by <strong>Rudy</strong> <strong>Rucker</strong><br />

triples of real numbers, with all three coordinates ranging between minus one <strong>and</strong> plus one.<br />

You’re searching through, in o<strong>the</strong>r words, a three-dimensional cube centered on <strong>the</strong> origin,<br />

<strong>and</strong> you want to find <strong>the</strong> “fittest” point. Suppose that you let <strong>the</strong> distance between two<br />

solutions be simply <strong>the</strong> usual Euclidean notion of distance. A conceivable “annealing<br />

schedule” might go like this.<br />

• Take a population of 64 hill-climbers <strong>and</strong> set <strong>the</strong>m down at r<strong>and</strong>om locations in <strong>the</strong><br />

solution space. Set <strong>the</strong> temperature to 2.<br />

• At each update, have each hill-climber evaluate <strong>the</strong> fitness at its present location <strong>and</strong> at<br />

eight r<strong>and</strong>omly chosen locations that are within a distance of T from its current location.<br />

Move <strong>the</strong> hill-climber to <strong>the</strong> location among <strong>the</strong> nine points that has <strong>the</strong> highest fitness.<br />

• Every ten updates reduce T by 0.1 until it reaches 0.1, <strong>and</strong> <strong>the</strong>n begin reducing it by 0.01<br />

every ten updates, <strong>and</strong> when it reaches 0.01 begin reducing it by 0.001 every ten updates.<br />

• When T reaches 0.001 return <strong>the</strong> solution specified by <strong>the</strong> most successful of your hillclimbers.<br />

Choosing <strong>the</strong> right annealing schedule <strong>for</strong> a given solution space is of course a<br />

metasearch problem of its own. Systematizing search processes is perhaps as much a craft as<br />

it is a science.<br />

Self-Deprecating Remark Introducing Chapter 4<br />

When all else fails, systematize!<br />

Continuous Response<br />

In <strong>the</strong> world of living organisms, we ra<strong>the</strong>r expect <strong>the</strong> inputs <strong>and</strong> outputs to be<br />

smooth, ra<strong>the</strong>r than abrupt zeroes <strong>and</strong> ones. If something is only a little bit hot, <strong>for</strong> instance,<br />

you might move your finger only a little bit.<br />

Sigmoid Neurons<br />

There are various ways to set up <strong>the</strong>se artificial neurons; I’ll describe one commonly<br />

used approach. We’ll suppose that one of our neurons can output a real number ranging from<br />

zero to one, <strong>and</strong> we’ll suppose that it calculates this output by summing up some number of<br />

input signals with a particular weight being multiplied times each input signal. Unlike <strong>the</strong><br />

signals, <strong>the</strong> weights are allowed to be negative, we let <strong>the</strong>m lie between negative one <strong>and</strong><br />

positive one. 6 We might think of negatively weighted inputs as inhibiting our artificial<br />

6 As always, when we talk about continuous numbers inside digital machines we need to<br />

pause <strong>and</strong> say that in practice <strong>the</strong> real numbers used by a PC aren’t truly continuous, <strong>the</strong>y’re digital<br />

models of continuous numbers. As mentioned be<strong>for</strong>e, if we take <strong>the</strong> common expedient of<br />

representing a real number by thirty-two bits, <strong>the</strong>n we’re really allowing <strong>for</strong> “only” four billion<br />

different real numbers.<br />

I also should mention that in practice, biological neurons do not have continuous-valued<br />

outputs. A brain neuron ei<strong>the</strong>r fires or it doesn’t fire; its output is more like a single-bit 0 or 1.<br />

Computer scientists prefer model neurons with continuous-valued ouputs because it’s easier to tailor a<br />

smallish network of output-valued-output neurons to per<strong>for</strong>m a task. If you insist on binary-valuedp.<br />

71

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!