Summon a Robot AI Mind into your presence with MSIE.

The nounPhrase Mind-Module


1. Overview and Brain-Mind Diagram

   /^^^^^^^^^\  Subject of Verb = Noun Phrase      /^^^^^^^^^\
  /   EYE     \   Direct Object = Noun Phrase     /   EAR     \
 /             \           ______________        /             \
|               |   | | | (  Sentence    )      |               |
|   _______     |   | | |  \____________/-------|-------------\ |
|  /image  \    |   | | |       |    \          |             | |
| / percept \---|-----+ |       |     \______   |  auditory   | |
| \ engram  /   |  a| | |       |     / Verb \  |  memory     | |
|  \_______/    |  b|c| |       |    ( Phrase ) |  channel    | |
|               |  s|o|f|       |     \______/  |  where      | |
|   visual      |  t|n|i|       |     /   |     |  thoughts   | |
|               |  r|c|b|       |    /    |     |  enter      | |
|   memory      |  a|e|e|       |   /     |     |  and        | |
|               |  c|p|r|    ___V__/      |     |  reenter    | |
|   channel     |  t|t|s|   / Noun \      |     |  the        | |
|               |   | | |  ( Phrase )     |     |  conscious  | |
|               |   | | |   \______/      |     |  Mind       | |
|               |   | | |       |         |     |   ________  | |
|   _______     |   | | |  _____V____   __V__   |  /        \ | |
|  /fresh  \    |   |_|_| ( English  ) / En  \  | /  "cats"  \| |
| / image   \   |  /     \ \ Nouns  / / Verbs \-|-\  "eat"   /  |
| \ engram  /---|--\ Psi /--\      /  \_______/ |  \ "fish" /   |
|  \_______/    |   \___/    \____/-------------|---\______/    |

diagrams.html shows a Theory of Mind.

The role of the nounPhrase module is to flush out the most active
noun in the English array En, regardless of whether that noun
is serving as the subject or the direct object of a verb in the
transformational grammar implementation of Chomskyan linguistics.


2. Rapid Change of nounPhrase Syntax Node Outputs

The AI theory of mind maintains that the same nounPhrase software
will flush out a subject-noun at one moment, and an object-noun
just a split second later, as activations vary within the En English
lexical array of the AI mind of a humanoid robot.

Thus a rigid structure (syntax) controls a fluid phenomenon of a
stream of rapidly fluctuating thoughts and ideas. The concepts
interact in the Psi mindcore and are constantly being reified as
named objects (nouns) and as named actions (verbs) or states of
being (also verbs) in the semantic memory of the English lexicon.
The rigid linguistic superstructure of Chomskyan transformational
grammar reaches down into the lexical vocabulary in the semantic
memory and flushes out the momentarily most highly activated noun
or verb or other part of speech to be included in a new sentence
of thought that forms in the auditory memory channel. Since the
AI Mind perceives its own phonemic output surfacing in audition,
the generated sentence of thought reenters the Mind in audition.
The auditory memory channel is a self-perceiving memory channel.


The diagram ai4u_157.html is a flowchart of Mind for humanoid robots.


3. JavaScript artificial intelligence source code of 12 August 2002
// nounPhrase() is called by SVO() or verbPhrase()
// to select nouns or pronouns in a generated thought.
function nounPhrase() {  // ATM 6jul2002; or your ID & date.
  Reify(); // to move abstract Psi concepts to enVocab reality.
  act = 0; // Activation-level carried by the "en1" flag.
  motjuste = 0; // The "fitting word" to be selected.
  psi = 0; // The "psi-tag" carried by the "en0" flag.
  opt = 5; // Look for option five (a noun).
  unk = 0; // will hold the highest found "act" value;
  for (i = t; i>midway; --i) {
    enLexicon[i].enExam(); // inspect English nodes
    if (en3 == 5) { // if grammar category is "noun"
      if (en1 > 0) { 
        act = en1; // Obtain "act" if positive.
        if (act > unk) {
          motjuste = en0;
          aud = en5; // get the auditory recall-vector
          unk = act; // to test for an even higher "act"
        }  // end of if-clause seeking highest activation
      }    // End of test for a positive "act" level.  
    }      // end of if-clause checking for nouns.
  }        // end of loop searching for most active noun.
  subj_act = unk;  // a diagnostic for Troubleshoot mode.
  dobj_act = unk;  // a diagnostic for Troubleshoot mode.
  enDamp();     // to de-activate English concepts
  psi = 0;       // A precaution lest psi transit Speech().
  Speech();     // Display or speak the selected noun-phrase.
  // psi = motjuste;  // holds concept until end of nounPhrase(). 
  caller = "nounPhrase";  // Diagnostic for Alert boxes.
  urpre = pre;    // Safeguard value of pre;
  // Call Activate for interactive SVO selection:
  psi = motjuste;  // for sake of Activate().
  Activate();     // Will increase "psi" activation and
  // will spread-act the activation to related concepts.
  pre = urpre;    // Restore the safeguarded value of pre.
  // We use the call to psiDamp because we want not
  // psi/urpsi to remain active but only its related concepts
  // that receive activation during SPREADACT:
  urpsi = motjuste;    // For use in psiDamp().
  psiDamp();           // to de-activate Psi concepts
  // Say a SPACE-BAR 32 ?
  act = 0;
  motjuste = 0;        // Reset for safety.
  psi = 0;              // Reset for safety.
} // End of nounPhrase(); return to SVO() or verbPhrase().

4. Mind.Forth free AI source code of 4 August 2002
\  nounPhrase is called by SVO or verbPhrase.
:  nounPhrase  \ ATM 23may2002; or your ID & date. 
  REIFY    ( to move abstract Psi concepts to enVocab reality )
  0 act !
  0 aud !  \ Start with a zero auditory recall-tag.
  0 motjuste !
  5 opt !  \ Look for option five (a noun).
  0 psi !  \ Start with a zero Psi concept tag.
  midway @  t @  DO  \ Search from current time to midway.
    I     3 en{ @  5 =  IF     \ Only look for noun-phrases.
      I   1 en{ @  act @ > IF  \ If en1 is higher than "act"
        I 0 en{ @  motjuste !  \ get psi-tag of the noun;
        I 5 en{ @  aud !  \ get auditory recall-vector.
        I 1 en{ @  act !  \ To test for a higher en1.
        ELSE   \ an error-trap (?) is needed here.
      THEN     \ end of test for en1 highest above zero.
    THEN       \ end of if-clause checking for nouns.
  -1 +LOOP     \ end of loop searching for most active noun. 
  enDamp       \ to de-activate English concepts
 \ 0 psi !      \ a precaution lest psi transit SPEECH.
  SPEECH
  32 EMIT            \  Say a SPACE-BAR 32.
  pre @  urpre !     \ Safeguard value of "pre".
  ACTIVATE           \ Will increase "psi" activation and
        \ will spread-act the activation to related concepts.
  urpre @  pre !     \ Restore the safeguarded value of pre.
  motjuste @  urpsi !  \ For use in psiDamp().
  psiDamp              \ to de-activate Psi concepts
\ psiDecay   \ 29jul2002 Less harsh than psiDamp.
  0 act !              \ Reset for safety.
  0 motjuste !         \ Reset for safety.
  0 psi  !             \ 26jul2002 Reset for safety.
;  \ End of nounPhrase; return to SVO or verbPhrase.

variable.html explains the location and purpose of each AI variable.


5. Analysis of the Modus Operandi

The code above cycles backwards in time through the English lexical
array En, searching for the most active English noun -- the result of
interaction among the deep-structure concepts in the Psi mindcore.


6. Troubleshooting and Robotic Psychosurgery

Try in advance not to introduce any evolutionary bugs.

The AI Debugger program may shed some light in general on how to debug
and troubleshoot programs in artificial intelligence.


7. nounPhrase Resources



Return to top; or to
ai4u_faq.html Frequently Asked Questions (FAQ) about AI4U
ai4udex.html Index of the AI4U Textbook of Artificial Intelligence
aisteps.html AI Algorithm Steps - Artificial Intelligence Algorithms For Humanoid Robots
Mind.html Artificial Intelligence Seed AI in JavaScript
mind4th.html Mind.Forth Artificial Intelligence for Robots
PODsales.html Sales of the AI4U Print-On-Demand (POD) Textbook