Retroevolution.com[SoftwareSolutions] - [ SpiritBot - PIRC based code bot ] 
Screenshots.   Resources.   Download.   Contact.   About.   Spirit.   Retroevolution.com.   Home.  
Blog Developers Scheme Neural Javadocs Links Resources Home.  
System Design [ Spiritbot ]
Spiritbot is a suite of agent/bot applications with an IRC core. This page contains some information about the general architecture. It is also a software design diary.

Javadocs - javadoc generated documentation[6/17/2004]

Developer Diary - You can also view a more in-depth description of the project here, including object models and core code examples.

Notes: 5/3/2004

      
      ---------------------------------------------------------------------------
      |
      |     ### SpiritModules(.jar) ###
      |
      |         (This library gets dynamically loaded by the library
      |            below, it contains bot processing threads and
      |            the actual PIRC irc code.  It uses libraries and
      |            classes from the code below, but operates as its own
      |             module)
      |
      |  src --
      |       org --
      |            retro --
      |                   bot --
      |                     * a small piece of code for running a bot.
      |                       In theory, this bot could operate on its own
      |                        the idea was to have a
      |                       'parent' bot and a 'child'
      |                       so that the parent could start/stop/control
      |                       the child.
      |
      |
      |
      |
      |     ### SpiritBot.jar ###
      |
      |          (This is the core library, it contains core 'libraries'
      |             bot startup applications,tcp-server engine
      |             database maintenance routines, etc,
      |             as opposed to the 'actual' bot processor above)
      |   
      |  src --
      |       org --
      |            retro --
      |                   gis  --                [ core engine, irc, etc    ]
      |                         util --          [ text-processing,nouns    ] 
      |                                           
      |                         
      |                   lisp   --               [ misc lisp engine        ]
      |                   neural --               [ SNARLI neural engine    ]
      |                   scheme --               [ jScheme                 ]
      |                   test   --               [ 'main' testing programs ]
      |                   web    --               [ Misc jboss/servlet code ]
      |                   xml    --               [ simple SAX engine       ]
      |                  
      |  lib --
      |         hsqldb.jar                       [ hypersonic db engine    ]
      |         log4j-1.2.8.jar                  [ logging functionality   ]
      |         xercesImpl.jar                   [ xml processing
      |                        * org/apache/xerces 
      |                        * org/apache/xerces/dom/DOMOutputImpl
      |                         
      |         xml-apis.jar
      |                        * org/w3c/dom/Node
      |                        * org/xml/sax/XMLReader
      |
      |
      ---------------------------------------------------------------------------


      * Note: xercesImpl.jar taken from Apache-Ant(1.5.1?), lite lib 1.4MB+

      * Note: SpiritModules is a newer version of a bot library
           BotModules could also function as a bot library, but it is
           basically deprecated.

      * Diagram vers: 5/3/2004      


      
-------------------------------------------------------------------

{ Need a fuzzy-logic matrix                                 }
{ Need two inputs                                           }
{ A XOR neural net can be used to to find linear seperation } 

[ group by Greeting, Description,Action ]

-------------------------------------------------------------------

*Note: inputs can be any kind of weighted matrix values*

*Define X/Y - inputs*

Possibly fuzzy logic inputs:

+ Past statements
+ Context
    - What has the bot said?
    - What has the user said?
+ Length of sentence
+ noun-phrase / verb-phrase [ structure ]
+ key nouns
+ key verbs
+ key adjectives
+ search data
-----------------------------------------------------

	[ Input ]

 - possibly fuzzy-logic sets (gibberish, greeting, description, request)
 
	[ Output ]

 - possible output to gibberish ... nothing
     [ I don't understand what you are saying,q see above ]

 - possible output to a greeting ... is another greeting.
 - possible output to a description ... I'll have to remember that, 
     'the table is blue', cache the information
 - possible output to request ... complete request and give a statement
   or further questions to see if the request can be completed

+ Is this person asking for something?
+ Is this person describing something?
+ Does this person want something?

1.0 |            [low]  [medium]  [high]
    |
    |              /\     /\      /\
    |             /  \   /  \    /  \
0.5 |            /    \ /    \  /    \
    |           /      \      \/      \
0.0 |          /     /  \    / \       \
    -------------------------------------------------------
    0.0          0.5         1.0

-------------------------------------------------------------------