|
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
-------------------------------------------------------------------
|
|
|