Hi YKY,

> I agree that your algorithmic approach to AI is worth exploring, but I
> think one serious problem is that when you use the combinator logic to
> match various patterns, there is no gaurantee that the process will
> converge.

I don't think mind is about guarantees! It's nondeterministic (or at least
so damn complex it looks nondeterministic to any observer of the same
complexity as the mind being studied...).  Sometimes it can solve a problem,
sometimes not...

Attractor neural net models don't come with guarantees either... of
course...

> In this sense your approach is somewhat similar to evolutionary
> programming: You can only keep testing random combinations until your
> output is satisfactorily close to your target.

Our approach to procedure and predicate learning differs from evolutionary
programming significantly, in that we use probability theory to construct
new instances, rather than random mutation and crossover.  Among other
differences, this enables us to use prior knowledge from solving other
problems, to solve each new problem as we confront it.  This causes more
rapid convergence with small population sizes on hard problems, though it
doesn't guarantee convergence.

> Have you used your approach to learn some complex concepts? I guess EP
> can only learn to approximate very simple programs currently. The
> concept of a search "space" for algorithms is probably useless because
> such a space has no metric/neighborhood/topology at all. And the number
> of combinations for even small programs may be prohibitive.

The concept of a search space *is* meaningful here; in fact there are
several useful metrics on the space of programs...

The way to deal with the combinatorial explosion is to focus on programs
with hierarhical structure.  You use reasoning to figure out how to break a
program-learning problem down into a number of subproblems, and then you use
evolutionary learning methods to tackle each subproblem.  Or if one of the
subproblems is too big, you use reasoning to break it down further....  This
kind of reasoning relies on background knowledge gained by solving similar
problems in the past.  AT least, this is the approach within Novamente.  We
have only tried this on some particular cases so far, and have found some
success.  Serious work on this kind of inference-evolutionary combined
learning will commence in 4 months or so within the Novamente project, and
its success is critical to the success of Novamente as an AGI system.

> A nice experiment to do is to think of an algorithm such as a certain
> sorting, try to write the most compact code for it, and then measure
> the number of *all* code combinations within that length. Then we can
> get a sense of how difficult it would be to evolve programs.

Of course, this has been done by us and others.  But we are not using a
brute-force search, we are using an intelligent directed search process as
described above, so this kind of calculation doesn't mean much.

-- Ben





-------
To unsubscribe, change your address, or temporarily deactivate your subscription, 
please go to http://v2.listbox.com/member/[EMAIL PROTECTED]

Reply via email to