Re: The n-knights problem
- From: Lash Rambo <lr@xxxxxxxxxxxx>
- Date: Sat, 16 Sep 2006 08:44:50 GMT
russell kym horsell <kym@xxxxxxxxxxxxxxxxxxx> wrote in
news:eeg1d0$aum$1@xxxxxxxxxxxxxxxx:
It's not that humans use some very clever method to solve problems,
but that the heuristics used are so simple and fail so often. The
evolutionary pressure that has only the "best" arguments recorded, and
all the ones that failed lost to obscurity and supermarket tabloids --
that is what has many believing that "thinking" is the next best thing
to having prayers answered.
Several months ago I dabbled in genetic programming (the software kind).
I guess you could say GP uses a very non-clever method and a very simple
heuristic to do its thing. It's basically trial and error with a focus
on things that were promising in the past. Some say humans aren't really
much above that, themselves. (In fact, it seems you're making that case
now!) Yet, human methods scale much better with problem complexity than
GP does. It occurred to me one of the reasons for that is: humans are
able to frame what they're doing in logic, and use deductions (and
inductions) to prune away large, fruitless areas of the answer space.
Thus, my interest in the "pure logic" approach. (Of course, humans also
use "lossier" heuristics, like the ever-mysterious "intuition." I
figured I'd start with logic since people can at least agree on the
definition of that. :) )
Now, since a strongly normal number contains all possible sequences of
digits, it also contains all possible sequences of ASCII charactyers,
should you want to decode one that way. Hence, somewhere on there, is
a copy of the Bible or any program you could ever write. Most of them
have syntax errors. Of those that are syntacticsally correct, most
have bugs, of courwse.
I used to muse about such things. It occurred to me that somewhere in
that morass of digits was the movie of my own death. Not so fun to think
about after that.
Anyway, getting back to AI programs, you can obviously adapt this
technique to doirectly writing programs. E.g. start with the "digits"
sp++;
sp--;
tape[sp] = 1;
tape[sp] = 0;
if (tape[sp] == 0) {...};
if (tape[sp] == 1) {...};
Use these in the obvious way and you can generate all possible turning
machines written in C. (The {} in the "if" digits must be used
slightly differently than just appending to the front of each copy of
the program-you-have at any step).
OK. Now you have every program. There are programs that type out the
Bible. There are programs that type out all old Matlock scripts.
There are Prolog interporeters -- with bugs and without. Some are even
signed by Jan W. (But they are forgeries!)
And there are lots of "AI programs" in there, too.
Your task -- Mr Phelps -- is just to plant a useful "goto" at the
front. Maybe you could write a program to do it, maybe not. :)
Maybe just read the whole thing and see which program has a comment
that's calling your name.
This reminds me of the old lateral thinking puzzle: "A man has a piece of
paper upon which is written the winning numbers for next week's lotto.
Yet, even if he played, he'd have no better chance of winning than anyone
else. Why?"
.
- Follow-Ups:
- Re: The n-knights problem
- From: russell kym horsell
- Re: The n-knights problem
- From: Bill Spight
- Re: The n-knights problem
- References:
- Re: The n-knights problem
- From: Nick Wedd
- Re: The n-knights problem
- From: Markus Triska
- Re: The n-knights problem
- From: Bill Spight
- Re: The n-knights problem
- From: Lash Rambo
- Re: The n-knights problem
- From: russell kym horsell
- Re: The n-knights problem
- From: russell kym horsell
- Re: The n-knights problem
- Prev by Date: Re: The n-knights problem
- Next by Date: Big speed difference between styles?
- Previous by thread: Re: The n-knights problem
- Next by thread: Re: The n-knights problem
- Index(es):
Relevant Pages
|