Summon the AI Mind-1.1 into your presence with MSIE.

Do-It-Yourself Artificial Intelligence
by A.T. Murray based on the AI4U
Concept-Fiber Theory of Mind

Since AI evolution requires a teeming, rioting diversity, whether you code in Ada -
APL - C - C++ - COBOL - Forth - Java - JavaScript - Labview - Lisp - Oberon -
Perl - Prolog - Python - Ruby - Scheme - Smalltalk - Tcl - Visual Basic - XML
or whatever, do not worry if your artificial Mind is different from the most popular,
ostensibly standard AI Mind. Would you like your own human child to be identical
to every other human child? Of course not, so carve out your place in AI history
by coding your best implementation of any AI algorithm listed or not listed below.
Put the open-source AI on the Web; stand back; and may the best Mind win.

Artificial Intelligence Mind Modules


1. Top-Level AI Algorithm: Code the Main Alife Program Loop
            ___________                    ___________           
           /           \                  /           \          
          /  Motorium   \                /  Security   \         
          \_____________/\    ______    /\_____________/
       __________         \  /      \  /          _________
      /          \         \/  main  \/          /         \
     (  Volition  )--------<   Alife  >---------( Sensorium )
      \__________/         /\  loop  /\          \_________/
           _____________  /  \______/  \  _____________
          /             \/              \/             \
          \    Think    /                \   Emotion   /
           \___________/                  \___________/

Code the Alife loop shown above in your chosen programming language.
Use either an actual loop with subroutine calls, or make a ringlet
of perhaps object-oriented module stubs, each calling the next stub.
Provide the ESCAPE key or other mechanisms for the user to stop the AI.
Spread your code around the Web and invite AI coders to expand on it.
Watch for a proliferation of unique AI Mind entities evolving rapidly
on the Web and competing genetically for the survival of the fittest.


2. Second-Tier AI Algorithm: Code the Sensorium Module

Take the ESCAPE-key handler or other mechanism of stopping the
AI out of the main Alife loop and transfer it to the Sensorium stub.
Keep in mind that you must keep a quit-mechanism in the Mind.
Flesh out the Sensorium stub into a working mind-module that
calls its own stubs, such as Audition, Vision, Touch, Gustation
and Olfaction. Test the embryonic robot mind by demonstrating
that the main Alife loop either waits briefly for Sensorium input
during each cycle, or generates an event-driven response to
input detected by a Sensorium module. The proper response will
be to keep cycling upon normal input or to terminate execution
upon halt [ESCAPE] input. Share your code on the Web.


3. Third-Tier AI Algorithm: Code the Audition Module

Drop the [ESCAPE] mechanism down by one tier, into the Audition
module, but do not eliminate or bypass the quite essential
Sensorium module, because another programmer may wish to specialize
in implementing some elaborate sensory modality among your
Sensorium stubs. Code the Audition module initially to deal
with ASCII keyboard input. If you are an expert at speech
recognition, extrapolate backwards from the storage requirements
(space and format) of the acoustic input of real phonemes in
your Audition system, so that the emerging robot Mind may be
ready in advance for the switch from hearing by keyboard to
hearing by microphone or artificial ear. Anticipate evolution.


4. THE LISTEN MODULE

5. audSTM AUDITORY SHORT TERM MEMORY

Code an auditory Short Term Memory (audSTM) array.

6. audDamp MODULE

7. enVocab ENGLISH VOCABULARY MODULE

8. enDamp ENGLISH LEXICON DAMPING MODULE

9. THE INSTANTIATE MODULE

10. psiDamp MODULE

11. THE TROUBLESHOOT MODULE

12. audRecog AUDITORY RECOGNITION MODULE

13. THE BOOTSTRAP MODULE

14. oldConcept MODULE

15. newConcept MODULE

16. THE PARSER MODULE

17. THE ACTIVATE MODULE

18. THE SPREADACT MODULE

19. psiDecay MODULE

20. THE THINK MODULE

21. THE REIFY MODULE

22. THE SPEECH MODULE

23. THE REENTRY MODULE

24. nounPhrase MODULE

25. verbPhrase MODULE

26. THE SVO SUBJECT-VERB OBJECT MODULE

27. THE CONJOIN MODULE

Code the CONJOIN module as a mechanism to select conjunctions.
Once the AI has learned to think or utter one simple SVO statement,
it requires the ability to select the right conjunction in order to
string meandering thoughts together in a stream of output that lasts
as long as the process of spreading activation gives rise to ideas.
In answer to input questions of "why", the Conjoin module may select
the conjunction "because" -- followed by a statement of associated
and possibly explanatory ideas, in a demonstration of AI reasoning.

28. auxVerb AUXILIARY VERB MODULE

29. negSVO NEGATIONAL SUBJECT-VERB-OBJECT MODULE

30. THE ASK MODULE

31. wtAuxSDo MODULE

32. THE SECURITY MODULE

33. HCI HUMAN-COMPUTER INTERACTION MODULE

34. THE REJUVENATE MODULE

35. THE EGO MODULE


36. ALGORITHMIC TROUBLESHOOTING
Troubleshooting of the AI Mind starts with the highest level
of the AI algorithm and proceeds down to the lowest levels.
Look for troubleshooting tips on each mind-module Web page.
Since the original AI4U Mind-1.1 code is provided as a functioning
example, any port into a new language or a new robot ought
first to achieve parity with the basic functionality of the
"teaching" AI and only then, after ensuring a basic
functionality, start to add new features or refinements --
a delicate process in software which may give the AI coder
a feeling akin to performing psychosurgery in wetware.


37. COMMENTING THE CODE

See the material on "Comments" at
http://mentifex.virtualentity.com/progman.html#comments


38. STRUCTURED PROGRAMMING

38.1 SEQUENTIAL ORDER OF FUNCTION CALLS

See the material on Structured Programming Sequence at
http://mentifex.virtualentity.com/progman.html#anatomy


39. ROBOT AI MINDMAKING RESOURCES