2008/7/2 Vladimir Nesov <[EMAIL PROTECTED]>:
> On Wed, Jul 2, 2008 at 9:09 PM, William Pearson <[EMAIL PROTECTED]> wrote:
>> They would get less credit from the human supervisor. Let me expand on
>> what I meant about the economic competition. Let us say vmprogram A
>> makes a copy of itself, called A', with some purposeful tweaks, trying
>> to make itself more efficient.
>
> So, this process performs optimization, A has a goal that it tries to
> express in form of A'. What is the problem with the algorithm that A
> uses? If this algorithm is stupid (in a technical sense), A' is worse
> than A and we can detect that. But this means that in fact, A' doesn't
> do its job and all the search pressure comes from program B that ranks
> the performance of A or A'. This
> generate-blindly-or-even-stupidly-and-check is a very inefficient
> algorithm. If, on the other hand, A happens to be a good program, then
> A' has a good change of being better than A, and anyway A has some
> understanding of what 'better' means, then what is the role of B? B
> adds almost no additional pressure, almost everything is done by A.
>
> How do you distribute the optimization pressure between generating
> programs (A) and checking programs (B)? Why do you need to do that at
> all, what is the benefit of generating and checking separately,
> compared to reliably generating from the same point (A alone)? If
> generation is not reliable enough, it probably won't be useful as
> optimization pressure anyway.
>

The point of A and A' is that A', if better, may one day completely
replace A. What is very good? Is 1 in 100 chances of making a mistake
when generating its successor very good? If you want A' to be able to
replace A, that is only 100 generations before you have made a bad
mistake, and then where do you go? You have a bugged program and
nothing to act as a watchdog.

Also if A' is better than time A at time t, there is no guarantee that
it will stay that way. Changes in the environment might favour one
optimisation over another. If they both do things well, but different
things then both A and A' might survive in different niches.

I would also be interested in why you think we have programmers and
system testers in the real world.

Also worth noting is most optimisation will be done inside the
vmprograms, this process is only for very fundamental code changes,
e.g. changing representations, biases, ways of creating offspring.
Things that cannot be tested easily any other way. I'm quite happy for
it to be slow, because this process is not where the majority of
quickness of the system will rest. But this process is needed for
intelligence else you will be stuck with certain ways of doing things
when they are not useful.

  Will Pearson


-------------------------------------------
agi
Archives: http://www.listbox.com/member/archive/303/=now
RSS Feed: http://www.listbox.com/member/archive/rss/303/
Modify Your Subscription: 
http://www.listbox.com/member/?member_id=8660244&id_secret=106510220-47b225
Powered by Listbox: http://www.listbox.com

Reply via email to