Products















Picture Gallery


GeckoChat
Conversations



























































































GeckoChat
Conversations



























































GeckoChat™ : An MSR-Based Conversational AI System

1     An Introduction to GeckoChat

User: "Emily, this is David."

Emily: "Good afternoon David, what can I do for you?"

User: "Emily, what time is it?"

Emily: "3:30 PM"

User: "Emily, stop."

Emily: "I'll wait right here."

User: "Emily, set a reminder."

Emily: "OK.   On what date will this reminder be?"

User: "Today."

Emily: "Now, tell me the time for this reminder."

User: "At 6:00 PM"

Emily: "Who do you want me to remind, and what do you want me to remind about?"

User: "Emily, remind me to feed the cat."

Emily: "OK.   I will set a reminder for Friday, December 11th at 6:00PM with the following message: remind David to feed the cat."

User: "Emily, are we going anywhere today?"

Emily: "Yes, we are going to the doctor's office at 11:00 AM"

User: "Emily, let's play a game"

Emily: "What kind of game do you want to play?"

Note that the conversation between Emily and User appears natural.   Now consider that the above is an actual conversation between a real person (the User) and GeckoChat, a premier conversational artificial intelligence developed by GeckoSystems, Inc.!   Watch and listen to new CareBot MSR 3.0 GeckoChat interactions in our Video Gallery.   In providing a natural language interface, we present an easy and convenient method for interacting with both computer and robot systems.   While we are not yet at the level of general language understanding (which is still an open, unsolved topic in both philosophy and computer science), the learning curve for interacting with GeckoChat in limited natural English is much smaller compared with any other method of interaction.

GeckoChat is a modular system that allows the user to verbally interact with whatever system(s) GeckoChat is incorporated into.   For instance, in the domain of mobile service robots (MSRs™), GeckoChat can provide voice command communication with a pre-defined ambient user.   Through GeckoChat, the MSR has way to relate information it observes about both its world and its internal state.   By combining these system-specific capabilities with the standalone functionality of GeckoChat, GeckoSystems, Inc. provides a robust method to increase interactivity and autonomy in any domain where automated speech recognition and synthesis would be beneficial.

While GeckoChat was originally intended as a conversational AI agent to be incorporated into GeckoSystems Mobile Service Robot platforms, it can also serve as a computer application or in a standalone appliance.   With the advent of inexpensive, low-power hardware and the drastic improvement in real-time noise reduction, voice recognition and speech synthesis technologies, we are now in a position to offer a truly utilitarian conversational AI tool.   The first GeckoChat application GeckoSystems has focused on is elder-care assistance and verbal companionship.   However, other possible applications include youth educational assistance, home automation and automated secretarial work.

The crucial functionality of GeckoChat is the verbal interface.   With GeckoChat, it is possible to command and control a Mobile Service Robot, to have a virtual administrative assistant, to provide a verbal playmate and educator for children, and/or to give an elderly loved one virtual companionship and care.   All this can be achieved without any other input other than speech - the most natural form of human communication.

The current version of GeckoChat yields positive progression towards the above goals.   GeckoChat can speak monologues ranging from jokes to quotes to custom monologues defined in the Monologue Editor Tool.   It can answer basic questions ranging from "What time is it?" to custom questions managed by the Free-Form Dialogue Editor Tool. A sophisticated reminder system provides for timely utterance of both recurrent reminders and one-time reminders, which can be set easily through verbal conversational interfaces or from the Reminder Editor Tool.   GeckoChat even includes games and heralds in a new genre for real-time verbal gaming.   A powerful feature of GeckoChat that evolved from the need for verbal control of GeckoSystems Mobile Service Robots is the ability to control network-enabled devices.   With GeckoChat operating as a speech server, computers or other devices distributed across a wired or wireless network can be controlled by voice.

2     GeckoChat Abstract Architecture

GeckoChat is a system of interdependent modules that serve collectively to produce a conversational AI engine.   Initially intended for use in our mobile robot platforms, this system can also serve as a standalone command, control and conversational system for PC end-users.

GeckoChat Modules

    Synthesis

         - provides for real-time synthesis of speech

         - allows for real-time customization of voices

         - voice priority with interruption and resumption

    Recognition

         - provides for real-time recognition of ambient speech

         - based on the concept of switchable constrained grammars to facilitate
               recognition accuracy

         - support for both basic and dynamic grammars; basic grammars can be
               modified and re-compiled at runtime using an integrated GUI utility

         - speaker recognition biometric allows dynamic switching of training sets

         - parsing can be performed during recognition using recognition grammar
               annotations, or can be performed post-recognition using an advanced
               natural language understanding module written in Prolog

   Memory

         - symbolic storage of pertinent synthesis and recognition data

         - divided into working, short and long-term memory

         - examples: reminders, surrogate short-term memory

   Knowledgebase

         - basic factual and procedural knowledge storage

         - interfaces directly with memory module to allow complex temporal
               behaviors


3     Savants as Building Blocks to Intelligence

How is this for a definition of (conversational) intelligence: a set of domain experts that act cooperatively to collectively produce complex verbal behaviors?

Let us take an example from biology to illustrate how simple behaviors can combine to create a complex system.   Desert ants, like most ants, forage by laying down pheromones, which serve as a trail to and from the nest for all the ants in the colony.   Note that pheromones are volatile organic compounds; therefore, they are susceptible to fast evaporation in hot and dry environments.   How does the desert ant deal with this problem?   By triangulating on the position of the sun in the sky, the ant always has a reference point to various targets (such as a food location or the nest) in an otherwise featureless environment.   Furthermore, when nighttime arrives, the ant switches back to the old pheromone system - one environmental mapping behavior overriding another at the appropriate time!   This system allows the ant to be a savant, or an expert, in determining position in the hostile desert environment.   The ant also has other capabilities: it is able to differentiate members of its colony from others, it can tunnel and, with the help of other ants, build complex structures, etc.   Each behavior corresponds to individual expertise each ant is preprogrammed to know; what makes a desert ant a desert ant is its expertise over several crucial domains, thus, the ant is a collection of savants.

We, as individual humans, like to declare personal expertise over one or several domains.   For example, an engineer who also happens to be a businessman could be characterized as a composite interaction between savants representing accounting, marketing, electronics and physics.   Certain savants within the collection will become active as environmental context dictates, with the crux of intelligent behavior being timely and appropriate savant activation, interaction and subsumption.

GeckoSystems utilizes the notion of collective savants in many of its systems including robot control and conversational AI.   We will describe GeckoChat's functionality in terms of savants, and also present GeckoChat's role in the overarching goal of GeckoSystems: to provide practical, mobile robot solutions for personal, business and government use.


4     GeckoChat: A Collection of Conversational Savants

GeckoChat is divided into several savants exhibiting certain behaviors, all of which have a defined pattern of precedence according to importance in context.   For example, reminders take precedence over game playing, whereby a reminder will always interrupt a game playing session.   GeckoChat shows expertise in the domains of robot control, verbal game playing, reminders, general dialogue, general monologue and joke telling.   Furthermore, GeckoSystems is continually adding additional conversational savants and expanding the expertise of existing GeckoChat savants.   Below, we describe two of several mature savants.

4.1     GeckoChat Reminder Savant: More than an Electronic Calendar

The reminder savant currently handles two types of reminders: one-time reminders and recurrent reminders.   One-time reminders are fired once at user-defined dates and times, while recurrent reminders are set to fire repeatedly over a user-defined period.   For example, a caregiver may want the CareBot to remind the patient to take medicine every four hours, while the caregiver may want the CareBot to state that "it is time to watch your favorite show" five minutes before the show comes on.   As an option, the caregiver can require the patient to confirm the reminder; without confirmation, the reminder will be repeated after a defined interval.

4.2     GeckoChat Free-Form Dialogue Savant

The free-form dialogue savant manages simple two-part conversations such as question-answering.   For example, the caregiver could input several potential questions the patient may ask the CareBot throughout the day, along with corresponding answers.   The beauty of the Free-Form Dialogue Savant is that it never tires of answering the same question over and over, thus relieving the caregiver of potentially frustrating repetition.   Because the Free-Form Dialogues are input using a GUI tool, the caregiver does not need to know the underlying transformations required to format the questions and answers for the recognition and synthesis modules; the caregiver only needs to input the set of questions and answers into a table.   This savant, like all the other conversational savants, is able to log conversations into a file, from which a report on the number of times a particular question was asked and a sampling of conversational text can be generated.   This is particularly relevant because current AI studies are under way in various academic and corporate institutions to enable diagnosis of mental disorders such as schizophrenia from language structure.


5     Incorporation into the GeckoSystems CareBot MSR

While GeckoChat is a collection of conversational savants, we can go a level higher and state that GeckoChat itself is an expert in the domain of natural language.   When combining GeckoChat with other GeckoSystems nodes such as GeckoNav™ and GeckoTrak™, we create a composite intelligence (like the desert ant or the business-oriented engineer) capable of complex and pragmatic interactions with its world.

Imagine having a robot in a residential setting that can respond to commands such as: "Emily, answer the front door" or "Emily, go check on the kids."   Performance of these actions requires a complex interaction between a system that understands the semantics or meaning behind a given command, which then directs underlying systems on how to achieve the goal.   Because of the hierarchical and subsumptive architecture underlying all of GeckoSystems' software and firmware products, execution of this type of abstract goal is now possible.

User-friendliness is a definite goal for all of our products, with emphasis placed on the CareBot, our home care robot.   By combining the graphical interface of GeckoNav with the verbal and graphical interfaces of GeckoChat, the operator has a robust and intuitive method of defining and communicating intricate goals without having to appeal to complex programming or scripting.

A Personal Note
on Caregiving
from the President





Company  |  Products  |  Industries  |  Partners  |  Investor Relations  |  Contact
Copyright © 2002-2008 GeckoSystems Incorporated