Hi John,

Initially Novamente will not know anything about its underlying hardware
architecture.

Rather, it will learn procedures that are represented in a fairly abstract
mathematical form (combinatory logic) and that manipulate Novamente nodes
and links as primitives alongside ints, floats and strings.

In a later phase of teaching, we will teach Novamente about computer
hardware and its impact on algorithms, etc., but we can get a looooong way
before this is necessary -- perhaps even to the level of superhuman
superintelligence ;-) ... math is pretty powerful!

-- Ben

> -----Original Message-----
> From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
> Behalf Of John Pritchard
> Sent: Monday, July 05, 2004 2:31 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [agi] Teaching AI's to self-modify
>
>
>
> Hi Ben,
>
> If the AI "knows" the machine as its natural context (stacks, registers,
> etc., ie, "world"), then the supercompiled code should be the only code
> it can comprehend and self modify.  The code produced by the C++
> compiler would be orders of magnitude more complex.  Imagine an article
> in your favorite magazine where every noun and verb were indirect
> references to paragraphs in other articles of the magazine, and you
> could only aproach comprehension of the article by route of approaching
> the comprehension of the intersection of all of the articles --- after
> reading and rereading every article many times --- eg, Foucault's
> exemplary chapter from 'Les Mots', "Las Meninas".  This is the situation
> faced by a "self aware" (as in the first sentence) AI written in C++.
> If the product of supercompilation is akin to the most minimal
> implementation in assembler (machine code), then that's the only thing
> the AI will be able to understand --- unless you're thinking of the AI
> as an expert system programmed with knowledge of the product of the C++
> compiler.
>
> That being said, it's difficult to imagine.  Rather, consider the "self"
> of the AI, as in "itself", is an application in nodes and links and self
> modification in terms of nodes and links rather than machine code
> (differentiating terms).  The remainder follows.  If the application is
> the knowledge of the machine, etc..  Don't drink, and think about
> this one!
>
> Regards from NJ,
>
> John
>
> >
> > The idea is to maintain two versions of each Novamente-internal
> procedure:
> >
> > -- a version that's amenable to learning (and generally highly
> > compact), but not necessarily rapid to execute
> > -- a version that's rapid to execute (produced by supercompiling the
> > former version)
> >
> > As learning produces new procedures, they may be supercompiled.
> >
> > At present supercompiling a Novamente procedure is slow and takes up
> > to a few seconds or even a few minutes for a large, complex
> > procedure.   However, the supercompiler itself is still in a
> > preliminary version and could probably be optimized by an order of
> > magnitude.  In the long run there is also the concept of
> > "supercompiling the supercompiler" ;-)
> >
> > This is research that we're just now starting to play around with --
> > we got the first results supercompiling very simple Novamente
> > procedures just last week.  If all goes well, more serious work in
> > this direction will commence in the fall.
> >
> > Of course, this aspect is "just computer science" -- albeit very
> > difficult and advanced computer science.  It's the learning of the
> > procedures that's the really subtle part... which is the topic that
> > has taken far more of my attention . Fortunately the
> > Java-Supercompilers team (Andrei and Arkady Klimov) seem to have the
> > supercompilation aspect well in hand...
> >
> > But though it's "just CS", it wil be very useful for Novamente-learned
> > procedures to be faster than, rather than a couple orders of magnitude
> > slower than, Novamente-embedded procedures coded directly in C++ .....
> > This is not the hardest part of having Novamente learn to
> > self-improve, but it's a necessary component.
> >
> > -- Ben G
> >
> >
> >
> >     -----Original Message-----
> >     *From:* [EMAIL PROTECTED]
> >     [mailto:[EMAIL PROTECTED] Behalf Of [EMAIL PROTECTED]
> >     *Sent:* Sunday, July 04, 2004 11:11 PM
> >     *To:* [EMAIL PROTECTED]
> >     *Subject:* Re: [agi] Teaching AI's to self-modify
> >
> >     Ben,
> >
> >     Aren't optimizations by supercompilation going to make the future
> >     changes of that code more (maybe a lot more) difficult?
> >
> >     Sincerely,
> >     Jiri
> >
> >     In a message dated 7/4/2004 9:58:41 AM Eastern Standard Time,
> >     [EMAIL PROTECTED] writes:
> >
> >         http://www.supercompilers.com/
> >
> >
> ------------------------------------------------------------------------
> >     To unsubscribe, change your address, or temporarily deactivate
> >     your subscription, please go to
> >     http://v2.listbox.com/member/[EMAIL PROTECTED]
> >
> > ------------------------------------------------------------------------
> > To unsubscribe, change your address, or temporarily deactivate your
> > subscription, please go to
> > http://v2.listbox.com/member/[EMAIL PROTECTED]
>
>
> -------
> To unsubscribe, change your address, or temporarily deactivate
> your subscription,
> please go to http://v2.listbox.com/member/[EMAIL PROTECTED]
>

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

Reply via email to