Tramdemo - a demonstration dialogue system using multilingual and multimodal grammars

Björn Bringert,

Demo Movie

There is a video of a demo of the Tramdemo system. It is a bit old, and the current system has a few more features than shown in the video.


Compiled Tramdemo program.

Source code and grammars.

There is a tramdemo darcs repo with the development version. Get darcs here.


The TALK project deliverable D1.2a describes the use of multimodal grammars in dialogue systems. Section 3 of the deliverable details the grammars used by the tramdemo application.


This section describes how to run the binary version of the system. If you want to modify the system, see the section Building.


Get the latest binary package of the Tramdemo system, and unpack it.

Requirements for running

In order to run the Tramdemo system, you need to have the following software installed:


  1. Start the starter GUI:
    $ ./
    > ./tramdemo_speech.bat
  2. (First time, or after modifying the input grammars) Compile the speech recognition grammar: Compile English Query GSL Grammar -> Start or Compile Swedish Query GSL Grammar -> Start
  3. Start the Facilitator.
  4. Start the speech recognizer. Start either of these:
    Nuance (English)
    Start Nuance Recserver license manager and Nuance Recserver (English).
    Nuance (Swedish)
    Start Nuance Recserver license manager and Nuance Recserver (Swedish).
  5. Start the speech synthesizer. Start either of these:
    Nuance Vocalizer (English)
    Start Nuance Vocalizer license manager and Nuance Vocalizer (English).
    RealSpeak (Swedish)
    Start RealSpeak (Swedish).
    FreeTTS (English)
    Start FreeTTSAgent.
  6. (Only if you use Nuance Recserver, Nuance Vocalizer or RealSpeak) Start NuanceWrapper. Choose English or Swedish depending on the language used for speech recognition and synthesis.
  7. Start GFAgent (used for parsing and linearization).
  8. Start QueryInterpreterAgent (simplifies queries).
  9. Start GraphAgent (calculatess shortest paths).
  10. Start MapAgent (shows the map and receives clicks).
  11. Start the main application agent (a very simple dialogue manager). You can use either of these agents:
    TramDemo SR
    Uses input from a speech recognizer
    TramDemo Text
    Gets input from a dialog window.


Requirements for building

To build the system, you need the following system:


  1. Build tramdemo.jar;
    $ gmake