C++
AI For You

SourceForge Logo


AI4U++ Textbook

C++ Robots
BiPed
Cylon
ER1
Ester
LUCY
Rodney
Yosef

Forums
A.I. Zone

AGI List -- Join

AI Chat

AI Meetup Day

AI Poll: Results

CogNews

comp.lang.c++

KurzweilAI.net


Resources
AI C++ Source Code

AI FAQ: Software

AI4U FAQ

AI Parts

AIMind-I.com

C++ Glossary

Computationalization

Decision-Tree of Mind-Design

del.icio.us AI
del.icio.us C++

DMoz -- C++

FAQTs -- C++

Genetic Daemon

ManC++

Mentifex FAQ

Mind.Forth AI
& Dev Journal
& User Manual

Tutorial AI Mind
& Dev Journal
& User Manual

Mod-AI

NLP++ (tm)

Novamente

PAIR

PC AI -- C++

Player

Singularity
  • Timeline

    Standard Template Library

    Standards in AI

    Textbook Revolution
  • free AI textbook

    Theory of Cognitivity

    Turing Machine

    Turing Store

    Variables in AI4U

    VISLCG

    VISLPSG

    Wikipedia C++


    Weblogs Via
    Technorati


    Ahoyhoy.org ( q.v.)

    Alena C++

    Connelly Barnes

    Eckel, Bruce ( q.v.)

    Bob Mottram

  •                ________                ________          
                  /        \              /        \         
                 ( Motorium )   ______   ( Security )
        ________  \________/\  /      \  /\________/ _________
       /        \            \/  main  \/           /         \
      ( Volition )-----------(   Alife  )----------( Sensorium )
       \________/  ________  /\  loop  /\  _______  \_________/
                  /        \/  \______/  \/       \
                 (  Think   )            ( Emotion )
                  \________/              \_______/
    First implement the main Alife Mind loop at the core of the AI framework from
    the AI textbook AI4U: Mind-1.1 Programmer's Manual with printable Index.

    See also Ada - APL - C - COBOL - Forth - Java - JavaScript - Labview - Lisp -
    Oberon - Perl - Prolog - Python - Ruby - Scheme - Smalltalk - Tcl - Visual Basic - XML.

    SAT.10.FEB.2007 C++ for Modular AI is where C++ programmers may read or post the latest news and ask or answer questions about modular AI in C++.

    Before the Singularity overwhelms us, everything is open for discussion and debate. There are no mandatory Standards in Artificial Intelligence. AI coders are free to read (the start of) AI4U on-line about some AI modules pre-existing in Mind.Forth and Mind.html for MSIE, and are then free to suggest entirely new AI modules and entirely new theories of how to code modular AI.

    One thing keep in mind, please. If you put the first module up on the Web as a skeletal framework for others to work on, you may trigger a Technological Singularity.


    Sun.7.SEP.2003 in the evolution of Do-It-Yourself Artificial Intelligence.

    This weblog invites C++ programmers to implement the main Alife Mind loop of the simplest artificial intelligence.

    Please put the resulting free AI source code on the Web to inspire other coders to flesh out the core of the AI with additional mind-modules.

    There is no need to standardize or homogenize the evolution of the AI Minds in C++ or any other language. Let there be a wide diversity and diaspora of the evolving Minds in a classic scenario of the survival of the fittest.

    An embedded systems engineer has roughed out the initial code.

    AI.CPP

    // Member function definitions of the AI class.
    // For reference only                   9/3/03
    
    #include <iomanip.h>
    
    #include "AI.h"
    
       AI::AI()   // Constructor
       {
       // Use extensible Array class here
       // rather than fixed size array
    
       PsiAryPtr = new PsiStr[ARYSIZ];
       EnAryPtr  = new EnStr[ARYSIZ];
       AudAryPtr = new AudStr[ARYSIZ];
       }
    
       AI::~AI()  // Destructor
       {
       delete [] PsiAryPtr;
       delete [] EnAryPtr;
       delete [] AudAryPtr;
       }
    
    // Member Functions
    
       // set functions
       // Templates to be used for data base functions
    
       BOOL AI::setEle( PsiStr *, const int );   // set concept array element
       BOOL AI::setEle( EnStr  *, const int );   // set english lexicon element, element index
       BOOL AI::setEle( AudStr *, const int );   // set auditory memory element, element index
    
       // get functions
    
       BOOL AI::getEle( const int, PsiStr * );   // return concept array element
       BOOL AI::getEle( const int, EnStr  * );   // return english lexicon element
       BOOL AI::getEle( const int, AudStr * );   // return auditory memory element
    
       // delete functions
    
       BOOL AI::delPsi( const int ); // delete concept array element, element index
       BOOL AI::delEn(  const int ); // delete english lexicon element, element index
       BOOL AI::delAud( const int ); // delete auditory memory element, element index
    
       // print functions
    
       BOOL AI::printPsiElements();  // output
       BOOL AI::printEnElements();   // output
       BOOL AI::printAudElements();  // output
    
       BOOL AI::setDefaults()
       {
       return (True);
       }
    
       // Functions below to be classes that are members of
       // the AI class rather than functions
    
       void AI::Security()  // Human input module with AI attention
       {
       }
       void AI::Sensorium() // AI Initial processing of Input
       {
       }
       void AI::Think       // AI Syntax and vocabulary of natural language
       {
       }
       void AI::Motorium()  // AI Output
       {
       }
    
       void AI::Alife()
       {
       setDefaults();
       while(True)
         {
         Security();  // Human input module with AI management
         Sensorium(); // AI Initial processing of Input
         Think();     // AI Syntax and vocabulary of natural language
         Motorium();  // AI Output
         };
       }
    
    
    void main(void)
    {
    AI AI1;
    AI1.Alife();
    }
    
    ------------------------------------------------------------------
    AI.H
    // Declaration of the AI class.
    // Member functions defined in AI.cpp
    
    // preprocessor directives that
    // prevent multiple inclusions of header file
    #ifndef AI_H
    #define AI_H
    
    typedef int BOOL;
    
    BOOL True = 1;
    BOOL False = 0;
    
    #define ARYSIZ 1024
    
    class AI {
    
    public:
    
       AI();
       ~AI();
    
       void Alife();
    
    
    private:
    
    typedef struct AudStrTag   // Auditory Memory Array
        {
        int pho;  // Phoneme
        int act;  // Activation Level
        int pov;  // Point of View
        int beg;  // Beginning
        int ctu;  // Continuation
        int psi;  // Tag number to a concept
        } AudStr;
    
    typedef struct EnStrTag    // English Lexicon Array
        {
        int nen;  // English concept number
        int act;  // Activation Level
        int fex;  // Mindcore Exit tag
        int pos;  // Part of Speech
        int fin;  // Mindcore In tag
        int aud;  // Auditory Tag
        } EnStr;
    
    typedef struct PsiStrTag   // Mindcore Concept Array
        {
        int psi;  // Mindcore concept number
        int act;  // Activation level
        int jux;  // Juxtaposed modifier
        int pre;  // Previous associated
        int pos;  // Part of Speech
        int seq;  // Subsequent tag
        int enx;  // Transfer to English
        } PsiStr;
    
        AudStr * AudStrPtr;
        EnStr  * EnStrPtr;
        PsiStr * PsiStrPtr;
    
        PsiStr * PsiAryPtr;
        EnStr  * EnAryPtr;
        AudStr * AudAryPtr;
    
    
    
       // set functions
    
       BOOL setEle( PsiStr *, const int );  // set concept array element, element index
       BOOL setEle( EnStr *, const int );  // set english lexicon element, element index
       BOOL setEle( AudStr *, const int ); // set auditory memory element, element index
    
       // get functions
    
       BOOL getEle( const int, PsiStr * );   // return concept array element
       BOOL getEle( const int, EnStr * );    // return english lexicon element
       BOOL getEle( const int, AudStr * );   // return auditory memory element
    
       // delete functions
    
       BOOL delPsi( const int ); // delete concept array element, element index
       BOOL delEn(  const int ); // delete english lexicon element, element index
       BOOL delAud( const int ); // delete auditory memory element, element index
    
       // print functions
    
       BOOL printPsiElements();  // output
       BOOL printEnElements();   // output
       BOOL printAudElements();  // output
    
       BOOL setDefaults();
    
       void Security();  // Human input module with AI attention
       void Sensorium(); // AI Initial processing of Input
       void Think();     // AI Syntax and vocabulary of natural language
       void Motorium();  // AI Output
    
    };
    
    #endif