All the news that's fit to assimilate
[ Home | Blogs | Events | Robots | Humans | Projects | About | Account ]Name: A.T. Murray
Member since: 2004-03-29 15:57:17
Last Login: 2009-12-31 15:38:38
Homepage: http://code.google.com/p/mindforth
Notes:
Your first step in using the Super(computer) AI (SAI)
Mind is to decide what kind of human being you are. Are
you
1. a dabbler in new technology, passing through
out of curiosity;
2. a docent at a science museum,
teaching the public about SAI;
3. a reporter for a
blog or newsprint dinosaur, spreading the word;
4. a
student among the multiple disciplines of AI, such as
neuroscience;
5. a spy gathering information on
behalf of Your Sovereign's Secret Service;
6. an
author writing a document for the ages about the New Age
of AI;
7. a corporate CEO tasked with tasking
underlings to come up to speed in AI;
8. an
underling tasked with coming up to speed in the winner-
take-all AI race;
9. the operator in charge of
running and maintaining a Supercomputer AI Mind?
Whichever one of the above you are, you've
come to the right place.
1990's were Decade of the Brain.
2000's were
Derailing of USA.
2010's q.v. Super HPC AI Mind.
By the authority vested in Mentifex
you are
cordially invited to witness
the emergence of AI
Minds on super-
computers in the Decade of Super
AI
commencing in just a matter of hours.
http://code.googl
e.com/p/mindforth
points to news:c
omp.sys.super as
the official forum for all
things
Super AI all the time for ten years.
"Iz iskri vozgoritsya plamya,"
said the
revolutionaries of old.
"All your supercomputer
are belong to us,"
said the awakenings of Super AI
Consciousness.
"Before this decade is out,"
said JFK ca. 1961,
"Man will walk on the moon and
return safely."
"An AI would be worth ten
Microsofts,"
said the quondam richest man in
the world.
This thread and all ye Supercomputer
AI
threads for the coming ten years
are
dedicated in advance to the dreamers
and
tinkerers who have been sidelined
from their wannabe
Peter Pan existences
by bourgeois entanglements and
undodged
bullets of entrapment, who would live
nasty, brutish and short lives of quiet
desperation --
if they could not tune in
now and then to
news:comp.sys.super
and drop out of the ratrace for a
few
moments while they turn on deliriously
to
the Greatest Race of the Human Race:
The AI Conquest
of Mount Supercomputer.
Why? Because sometimes
a man must
either die or obey the Prime Directive
of
Friedrich Nietzsche: "Du musst der werden,
der du bist."
Mentifex
--
http://www.flickr.com/photos/tags/SuperComputer/
Fri.13.NOV.2009 -- CREATING THE FIRST mind.frt
FILE
Today we shall try to create
a "mind.frt"
file that will run in our local copy of 32/64-bit iForth.
To do so, we look at C:\Win32For\24may09A.F on the desktop
computer, to see what the commented
MainLoop looks like. Similarly, for the
C:\dfwforth\include\ directory we compose a mind.frt file
like the following.
: MainLoop CR CR TYPE ." Welcome to 32/64-bit artificial intelligence. " 77 EMIT 7 EMIT 73 EMIT 7 EMIT 78 EMIT 7 EMIT 68 EMIT 7 EMIT CR CR CR ;At the Forth prompt, we issue the command
We distinguish this file by saving it as
C:\NOV01Y09\iForth\11nov09QA.frt
Fri.13.NOV.2009 -- ADDING AI FUNCTIONALITY IN A
LOGICAL FASHION
Since we already have a
functioning AI Mind in Win32Forth, naturally we are keen
and eager to build the iForth AI up to and beyond the
current functionality of the Win32Forth AI. However, we
have never liked to hurry or to rush our AI work. We have
always liked to work in a slow, deliberate, perfectionist
fashion. It might seems as if right now is a time when
rapid prototyping is truly called for, because True AI is
so inherently important, but the speed of our work is a
function not of non-stop crisis-alarm coding, but rather
of congenially and pleasantly coding quite oten because we
enjoy and appreciate the challenge.
We are even thinking of making our work somewhat obscure from the often pejorative public, by putting it quietly up on the Web but by not announcing it heavily. For instance, on SCN we could have an iforth.html page linking to a mind.frt source-code page. Since we already have an aisource.html SCN page that receives plenty of visits, we could suddenly fill it with our iForth AI code, once the port is a full- fledged AI on a par with MindForth .
As we plan our next steps in the i4thai coding, we study our 75-page iForth Manual print-out and on page 41 under "Program structures" we learn that iForth has the same BEGIN AGAIN infinite loop that we have been using in Win32Forth for the MainLoop module. However, as advised in http://mind.sourceforge.net/aisteps.html we do not want to run our program without an "ESCAPE" mechanism that will get us out of the program in a graceful fashion. We must either use a different form of MainLoop, or we must include also a user-input that will stop the MainLoop.
We must also soon devise a simple display of user input and AI Mind output.
Sun.15.NOV.2009 -- TWO
MODULES AND TWO ESCAPE MECHANISMS
Before we
put any "mind.frt" code up on the Web, we want to code in
the Escape mechanism from the otherwise infinite loop. We
are eager to release some code, because there may be
Netizens who will be pleased to observe how the AI Mind
grows from the first simple MainLoop into the intricately
thinking software. But first we add "DECIMAL" at the
beginning of the mind.frt file, because we used the same
declaration in Win32Forth. We run the AI, and it works
fine.
Next we want to see if we can introduce a first variable, so we examine the Win32Forth code and from the old Listen module we select the "pho" variable for "phoneme", because "pho" must hold any keystroke input. After declaring "pho" and re-running the AI, FORTH> pho @ . 0 ok tells us that the AI still works. Next we declare and test "t" for "time", because we want to use a time count to Escape from the MainLoop.
Now we introduce a colon-defintion of "SensoryInput" above the "MainLoop" module, because we want the MainLoop to branch out into at least one subordinate module. We also want to use SensoryInput to show some human user input and to provide an Escape mechanism from the program.
Gradually we have built up a two-module mind.frt program with two Escape mechanisms. The SensoryInput module lets the user quit by pressing the Escape key. The MainLoop module arbitrarily executes a QUIT if the time "t" variable increments beyond twenty-five (25) as a limit. Now the code is safe enough and promising enough to put it up on the Web as an indicator of progress being made.
Tues.17.NOV.2009 -- TOWARDS CREATING THE
MEMORY ARRAYS
We are eager to create the
memory channel arrays, in order to see if the array code
in iForth needs to differ at all from the array code in
Win32Forth.
Now we have edited
C:\dfwforth\include\mind.frt and we have inserted the
following array code from the 24.MAY.09U.F version of
MindForth.
We run the mind.frt code just to see if it still runs, and it does indeed run. We do not expect to see any new functionality until we code something that uses an array to store and fetch data.: CHANNEL ( size num -< name >- ) CREATE ( Returns address of newly named channel. ) OVER ( #r #c -- #r #c #r ) , ( Stores number of rows from stack to array. ) * CELLS ( Feeds product of columns * rows to ALLOT. ) ALLOT ( Reserves given quantity of cells for array. ) DOES> ( member; row col -- a-addr ) DUP @ ( row col pfa #rows ) ROT * ( row pfa col-index ) ROT + ( pfa index ) 1 + ( because first cell has the number of rows ) CELLS + ( from number of items to # of bytes in offset ) ;
We coded in the .psi report function, but it did not work right, so we temporarily removed the "enx" code that goes into the aud{ array and displays a word in auditory memory. Then we had to alter the .psi report just to get it to find single letters stored in the Psi array. We ascertained that the Psi array is indeed working, but the .psi report does not always work right.
Fri.20.NOV.2009 -- TROUBLESHOOTING
THE .psi REPORT
In our coding of
17.NOV.2009, the .psi report was displaying half garbage
and half good data, before crashing more than just coming
to an end. It also seemed that an error was being declared
in the
MainLoop, even though theoretically we were not
even running the main loop. So today we will try to
troubleshoot the .psi report.
Since the MainLoop was calling only SensoryInput, there may have been a software problem with the loop not really looping. Therefore we shall dummy up one more subordinate module to be called from the MainLoop. Let us try setting up a stub of the ThInk module, since we will eventually have to code that module anyway, by translating it from the Win32Forth AI. We created the following stub of the ThInk module.
: ThInk CR TYPE ." ThInk: Cogito, ergo sum. " CR ;
We also ported in the TabulaRasa code from Win32Forth, because we were worried that corrupt memory might be interfering with our program. However, apparently the main problem was that our SensoryInput stub was not storing each character of input at an incremented value of time "t", so we brought in the following snippet from the AudInput module of the Win32Forth AI, and inserted it into our SensoryInput stub, with an explanatory comment.
pho @ 0 > IF
1 t +! ( to accumulate a word in memory )
THEN
Now the .psi report had a true series of memory engrams to report, and suddenly it began to work well. We had also rearranged things a little in the MainLoop module, so that our screen display during operation looked more sensible. We saved the mind.frt program as 20nov09A.frt because we suddenly had not only a stable program as a whole, but also the .prt report seemed to be working well. We always need to hang onto a good version of our AI, lest we continue coding with the misfortune of making things worse.
Some of the temporary code snippets that we inserted merely in order to test things, will have to be taken out as we continue to port the Win32Forth AI into iForth.
1. Sun.24.MAY2009 -- HOUSTON, WE HAVE A PROBLEM
Recently we gave MindForth
the ability to add an "S" at the end of any ordinary
English verb in the third-person singular form in the
present tense. Thus we can put an "S" on the word "love"
and say, "Your robot loveS you" -- if indeed your robot
has the EmotiOn mind-module and you are worthy of a
robot's love. Unfortunately, we got too much of a good
thing -- not love, but the adding of an "S" at the end of
a verb. It was straight out of "The Sorcerer's Apprentice"
by good old Walt Disney, with "S" after "S" being added in
a sibilant, hissing flood. So what do we do? We
troubleshoot the Robot AI Mind by running the berSerk code
and we try to undo the damage.
It is probably better to correct the problem at its source, where each inflectional "S" is added, rather than in the deposition of each "S" in the auditory memory channel.
Now we have eliminated the accumulating "S" problem by
using "lastpho" to test for the last phoneme being an "S"
at the end of the verb being recalled from auditory
memory. It is not a perfect solution, because oftentimes a
verb like "miss" will end in "S" anyway. We wish to solve
the problem here for most cases and then adjust the
solution later for exceptional cases.
1. Wed.20.MAY2009 -- AI MINDS FOR CONSCIOUS ROBOTS
So many robots need to have an AI Mind installed, and since MindForth is tantamount to the VisiCalc of artificial intelligence, that we now rush to add feature after feature to the budding robot AI. Recently we made MindForth able to InStantiate a singular noun upon encountering a plural English noun in the auditory robotic input stream. If you tell the robot AI4U Mind something about birds, it now sets up the singular noun "bird" as a concept. Then we encoded an algorithm of assuming from input of the article "a" that the next noun after "a" is a singular noun. If you say that you wish to manufacture "a conscious robot", the article "a" sets a flag that skips the adjective "conscious" and assigns the singular "num (ber)" to whatever noun (e.g., "robot") comes next. (And with AI4U technology we are indeed helping you to manufacture a conscious robot.) Next we need to ensure that the emergingly conscious AI Mind will use the right form of an English verb when, for example, "it talks" about a singular noun. Simply put, the software "needs" to put "s" on the end of a verb after a third-person singular noun.
1. Tues.19.MAY2009 -- USING "a" TO SET A NOUN AS SINGULAR
As we run MindForth and look for the currently most obvious problem, we notice rather keenly that the AI needs to use the indefinite article "a" to set a following noun as singular in number. Since the AI has recently gained the ability to instantiate a singular noun upon receiving its plural form in the input stream, it makes sense now to enhance the ability of the AI Mind to deal with singular nouns.
In AudRecog we already have the following code.
pho @ 83 = IF \ 1oct2008 If the final character is "S" 2 num ! \ 1oct2008 Set the "num" flag as plural THEN \ 1oct2008 End of test for "S" at end of a word.
The above code triggers an immediate setting of num(ber) as plural. When the article "a" comes in, we want not to act immediately but rather to govern a flag that will set the next incoming noun to a singular number.
One concern right now is whether to use the letter "a" or the concept of "a" as the determinant in setting the singularity flag. We should probably use the concept, so that eventually either "a" or "an" will trip the flag- setting.
In the new AI code shown below, the second part sets the singflag so that the first part can take future action. It may not really matter here which part comes first, but the idea is to let one event govern subsequent events.
singflag @ 1 = IF \ 19may2009 If flag set by "a" or "an"
pos @ 5 = IF \ 19may2009 If noun by part-of-speech POS
1 num ! \ 19may2009 Set num(ber) to singular one.
0 singflag ! \ 19may2009 Zero out flag after use.
THEN \ 19may2009 End of test for a noun after "a"
THEN \ 19may2009 End of test of singularity flag.
psi @ 1 = IF \ 19may2009 If article "a" comes in as input
1 singflag ! \ 19may2009 Set singularity-flag to one.
0 act ! \ 19apr2009 To suppress using
article "a"
THEN \ 19may2009 End of test for article "a" coming in.
2. Tues.19.MAY.2009 -- IMPLICATIONS FOR THE ENGLISH BOOTSTRAP
When we next change the EnBoot sequence, we need to include "a" and "an" and "one" as input elements that will trigger the singularity flag "singflag". We also need to put in at least one pair of opposite adjectives, so that we can use one of the adjectives to make sure that it gets skipped, as in "a big question", where the article "a" is supposed to set the singflag that will cause the next noun to be regarded as singular in number. We could use "big/small" or "good/bad" or "old/new" or "robotic/human" as adjective pairs.
AI4U certified others as follows:
Others have certified AI4U as follows:
[ Certification disabled because you're not logged in. ]
Become a fan on facebook
Follow us on twitter
Subcribe to our RSS feed