They are two additional groups of nano-agents for implementing memory and web mining
functionalities. The memory group is responsible for storing and retrieving information
when needed. It stores all interactions with the user in “log files” and an indexer
periodically parses these files and extracts keywords. A dedicated plugin package adds to
nanoScheme a small set of functions for retrieving information in this memory. When the
character has no information on a specific question, the web mining group tries to find a
pertinent answer by searching information on the web (Millet & Heudin, 2007). The mining
process is the following:
Seek: (a) extract keywords from the user input sentence and (b) launch a query on
one or more web search engines; (c) for each result page, URLs are extracted, (d)
badly formatted URLs or those that cannot be accessed are removed.
Analyze: (a) each resulting URL is accessed and downloaded; (b) each file is then
cleaned and tags are removed; (c) the resulting text is formatted in regular
sentences; (d) we remove any strange sentences, all those that do not contain any
of the keywords, those two small or two large, and question sentences.
Select: (a) each URL file is scored, taking into account the number of cooccurrences
of the keywords; (b) URLs are sorted according to their score; (c) and
the highest one is selected.
Format: (a) all sentences in the selected URL file are scored according to the
keywords and the structure of the phrase; (b) the highest scored sentence is
formatted and used as the output.
8 Web Intelligence and Intelligent Agents
Graphical Interface
The prototype included also three agents for implementing the graphical interface. They
controlled the following tasks: (1) get the user entries and diffuse them to the local nanoagents,
(2) display the resulting answer in the appropriate window area; (3) receive the
character animation commands and apply them. In the experiments, the character animation
is based on a reduced set of pre-computed 3D clips, each one corresponding to a given
situation: “hello”, “bye”, “waiting”, “speaking”, “surprised” and one for each main mood
(cf. section 4.3).
Fig. 3. The graphical interface showing the self-animated 3D character.
Results