The Task Communication Language (TCL) System
For those of you who have watched the demonstration video posted earlier and are interested in the innerworkings of the system; I will now briefly describe the process by which the human and agent can communicate as well as provide a listing that accompanies the reasoning over that communication within the system.
I will be throwing out a lot of terminology that I unfortunately do not have the time to define. I am working on a couple of journal articles which will do a better job of describing this system with some brevity. I ask you to either look up the terminology on the web, or hold out for one of these articles.
The system works by first parsing incoming text into a structured internal representation. In the demonstration, this is done ahead of time by hand. However, it is hoped that a parser can be constructed to do this dynamically in real time. The internal representation is based on the meaning-action concept, a marriage between the illocutionary force idea behind the speech-act, the interconnected protocol-like idea of the dialogue act, and the notion of the shared conceptulization of individual concepts expressible through natural language.
This layer, called the shared medium is composed of two components. The concept, or the shared conceptulization of a concept, and an operator, or the illocutionary force placed upon individual concepts.
The system then builds a dialogue manager upon this shared medium by incorporating the idea of rational communication, along with the structured foundation of protocol engineering and methodology. This dialogue manager utilizes a history, a shared concept graph, and obligations in order to process incoming messages and rationalize about them.
This rationalization is performed by a set of pre-defined rules. Only one rule may fire for each top-level operator, and once the rule fires the operator is removed. The rule may produce more top-level operators which will then trigger their own rules and so on and so forth. Rules are prioritized so that one rule may superceed another. In addition, they are dependent on a set of conditions that allow or inhibit the rule from firing.
Operators take four forms. The interaction operator, or the main operators of the meaning-action concepts. The agent-operators, or operators which represent reasoning inside the agent. The helper-operator which assists in maniuplating and checking the structure of meaning-action concepts as well as shared concept graph. And finally, the macro-operator which helps to figure out which rules should fire or which operators should result from specific circumstances.
A listing of the demonstration reasoning can be found in appendix C of my dissertation.
Again, I want to throw something out there for people to be able to look at, and unfortunately, I don't have the time to go into explanations at this point. But hopefully, this will do for now.