Chatterbot Creators
Dateline: 04/18/00
According to the volume of e-mail messages and forum postings originating from people trying to build programs that understand plain English - or another "natural" language - public fascinantion with chatterbots and similar products continues to grow. The program that started it all is Eliza (now more than thirty years old!), Weizenbaum's famous 240-line program simulating an interview with a Rogerian psychotherapist. Seems that now is the right time for Natural Language Understanding (NLU) technology to go mainstream, along with related fields like Speech Recognition that already showed a significant commercial success.
An usual, everyday conversation between two people is really a very complex process that cannot be simulated by simple, reactive, "Eliza-like" dialogs. Programmers are often asking for a source code for a simple chatterbot in an effort to create intelligent computer interfaces. Simon Laven Chatterbot Central, one of the best resources related to this topic features a list of available code samples. But don't expect too much: there are some rather clever solutions and code gems here, but it will take many hours to convert them to suit your needs. ALICE, for example, is an advanced, distributed solution, featuring a collection of autonomous clients and servers communicating via TCP/IP. It relies on the Artificial Intelligence Markup Language (AIML), along with the Artificial Intelligence Transfer Protocol (AITP). ALICE represents a cutting edge in chatterbot development, but still requires significant background knowledge. It is also this year's winner of Loebner Prize, so there is no need for further recommendations. So, let's go and see state-of-the-art commercial development tools...
It may come as surprise to you, but such tools are quite often these days. I have already described a few of them, so please refer to previous articles for more info. The main trend is to offer more-or-less user-friendly development environments and easily understood scripting languages, including customizable animated characters or avatars that make your chatterbot more "emotionally intelligent" and "believable". It is still unclear if this is the right approach: advanced animation techniques still consume a great portion of your bandwidth, so we are often limited to static pictures, making simple movements on (rare) occassions.
Developers are striving to make a step forward from the usual pattern matching and word spotting algorithms using case-based reasoners, knowledge bases and advanced semantic techniques. For example, Verbot rule system (from Virtual Personalities, Inc.) is very simple to work with - it looks for a pattern and when he finds it he gives the response you've programmed in the scripting .net files. Once a rule fires, it will remain dormant for a random period of time. During that time, if the same pattern is detected again he will not respond with the same rule. If you programmed a different rule with the same patterns, he will fire that one next. When your Verbot runs out of rules, he refers to his inner mind rules, over which you have no control and you don't really know what he's going to do. Pattern activation level controls the order in which he fires rules with the same pattern. Please refer to the previous article for more info.
Other products approach NLU problems differently: Klone Server from Big Science can solve in-depth problems in narrow domains by using an integral proprietary decision support system based on a case based reasoner, claiming it has significant advantages over traditional rule-based systems. Bots made by Artificial Life, Inc. automate business-related Internet functions such as Web navigation, direct marketing and user profiling, information gathering, messaging, knowledge management, sales response and call center automation. Kiwilogic offers their Lingubot Creator 1.0 for visual development of efficient natural language systems (English and German). Extensive general knowledge bases, design wizards and "automatic abstraction" functions for recognition of different wordings of the same meaning are available as a part of the basic package. Developing a knowledge base should become a fully automated task, without messing around with scripting languages and other low-level jobs. As this is one of the freshest products of this type, I will try to test it soon to see how their approach works for real world applications.
Neuromedia was one of the first companies making commercial tools for development of NLU applications. Their flagship product, Neuro Server, includes script authoring and example-based learning system. NeuroScript is the scripting language that configures the vRep (virtual representative). It is generated in two ways: by explicit script program or by the Topic Wizard. NeuroScript is easy to use, even for non-programmers. A great deal of knowledge, such as the generic forms of common questions and commands, is provided in script libraries that are included in every vRep.
Another class of products modeled after Microsoft Agent is closely related to "classic" chatterbots. They usually have only rudimentary pattern matching and other NLU-related capabilities, but are usually tightly integrated to your operating system and speech-enabled, making them more suitable for virtual assistants, secretaries and other kind of "helper" applications. Ultra Hal from Zabaware, Inc. is expandable, customizable, and upgradable via plugins and VBScript/Javascript programs. Similar products are offered by 3D Planet> (includes 3D Create, full featured 3D character creator), Mindmaker (includes Natural Language Processing Software Development Kits) and Extempo.
Other, more powerful related products include ThoughtTreasure, Inquizit and even the most famous among them, Cyc. Breakthroughs in processing power are enabling such computationally intensive technologies to come closer to real-life applications, enabling users to easily command and control electronic devices, and, ultimately, to communicate seamlessly with people who speak other languages.
Alan Turing predicted in 1950 that in about fifty years "an average interrogator will not have more than a 70% chance of making the right identification after five minutes of questioning" in an imitation game. This years Loebner Contest results show that he was quite wrong: no computer was mistaken for a human...