Re: The n-knights problem



russell kym horsell <kym@xxxxxxxxxxxxxxxxxxx> wrote:
[...]


Maybe it's just that I haven't vented my speen enough. But I find myself
drawn to make another comment on "AI problems" or "getting the computer
to think for itself". :)

With all my chatter about undecidability this, and Arrows theorem that,
many people end up thinking I'm really pushing the "AI is impossible" cart.
Nothing can be further from the truth. I'm *actually* one of those radicals
that argue a significant part of reason that "AI is not here" (somewhat
like the "aliens" problem -- but the Galactic Council has banned me from
saying thating about *that* on a public forum) is that there's too much
hubris in the room. With an optimism bias developed over 4 bn years,
what is or is not AI is not objectively, and inconsistently, defined.

Ah well, puny humans have barely gotten around to *perhaps* accepting
other creatures have any kind of mental life at all. Only a few decades
back if you mentioned in academic circles you beleived your dog
sat underneath a tree because it "beleived" there was a cat up there,
you would have been sacked. (A bit before that, they would have been
getting the wood and gasoline out).

Behaving cleverly is not, to my way of thinking, terribly clever itself.
If you're looking for some skeaky method that will miraculously find
the answers to problems your usual sneaky methods take a lot of time over
(aka "hard problems") you've just fallen for an Arrow Theorem trap, with
runtime as the utility function.

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.

But that's not to say there are not subtelties involved. :)

Suppose you wanted to write "the ultimate AI program". Would you recognise it
if it bit you? Let me check. :)

In some obscure part of mathematics there's a concept called "normal numbers".
A normal number is a number -- say it is written in base 10 -- that
conatins within it every possible sequence of digits. (A "strongly normal"
number has every sequence represented equally often).

There are many kinds of normal numbers. They can be constructed in diffrent
ways. There's some speculation -- but AFAIK no proof -- that certain
irrational numbers -- like pi -- are normal or even strongly normal.

You can construct a normal number as follows. Starting with the empty string,
take the string you have, replicate it 10 times, and add each possible
digit to the front, then concatenate all 10 copies.
Another method -- know for Charnernowne -- is to just write each number
starting at "1" (say) down, and concatenate them all together. Another
variant is to write down each number starting at 1, and delete its first
digit, and concatenate them all toegther. This is a somewhat "strongly normal"
version of Charnernown's Number.

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.

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.
.



Relevant Pages

  • Re: user defined function that converts string to float
    ... > I need user defined function that converts string to float in c. ... initial, possibly empty, sequence of white-space characters (as ... point character, then an optional exponent part as defined in ... then a nonempty sequence of hexadecimal digits ...
    (comp.lang.c)
  • Re: determinism, freewill, chaos, and circular causality
    ... classes, including sequence prediction, strategic games, function ... the squares each with its decimal digits ... Do the algorithms for generating Pi all require infinite memory? ... numbers" and the qualifcation is that there is no shorter input string ...
    (comp.ai.philosophy)
  • Re: Randomness
    ... I started with the first however many digits of pi (a number whose ... the first sequence gives a 1 for every digit that is a 0 or 1 ... designating a coin or die as fair in order to establish the normality ... weighting, determine whether this sequence is random" you ...
    (sci.math)
  • Re: Randomness
    ... I started with the first however many digits of pi (a number whose ... the first sequence gives a 1 for every digit that is a 0 or 1 ... designating a coin or die as fair in order to establish the normality ... weighting, determine whether this sequence is random" you ...
    (sci.math)
  • Re: New countable infiniity logic
    ... >infinite number of digits, and therefore 0.333... ... you are confusing the number of digits in the sequence with the ... it is an infinite sequence that *BY YOUR DEFINITION* does not ... A list of naturals is not a list of digits used to express those ...
    (sci.math)