What is Olympus?
Olympus was created at Carnegie Mellon University (CMU) during the late 2000's and benefits from ongoing improvements in functionality. Its main purpose is to help researchers interested in conversational agents to implement and test their ideas on complete systems without having to build them on their own. To this end, Olympus incorporates the Ravenclaw dialog manager, which supports mixed-initiative interaction, as well as components that handle speech recognition, understanding, generation, and synthesis. It uses a Galaxy message passing layer to integrate components and supports multi-modal interaction. The Olympus/Ravenclaw distribution includes example systems that demonstrate the operations of its various features.
The Olympus architecture incorporates modules developed by researchers at Carnegie Mellon and by others, in previous and ongoing research projects. These include:
Dialogue management is handled by RavenClaw , a task-independent dialogue engine based on the AGENDA dialog manager first introduced as part of the CMU Communicator system. Low-level interaction management (e.g. exact timing of start and end of utterances, handling of interruptions, etc) is performed by the Apollo interaction manager . For speech recognition, Olympus currently supports engines from the CMU Sphinx family (Sphinx 2, Sphinx 3, PocketSphinx), and provides an interface for support for other engines. Natural language understanding is done by Phoenix , a robust parser based on CFG-like grammars. The Helios components integrates information from various levels and assigns a confidence measure to all user inputs. Natural language generation uses the Rosetta template-based generation system. Kalliope, the synthesis interface, currently allows the use of SAPI 5-compliant TTS engines, CMU's Flite, and the proprietary Cepstral Swift engine. The communication between the different modules is handled by the MIT/MITRE Galaxy Communicator architecture.