Galatea Toolkit for Linux (2010-05)
by Takuya Nishimoto (nishimoto atmark m.ieice.org)
The important changes from Galatea for Linux IPA final version (galatea-linux-ipa) released in August, 2003 are as follows.
- The target platform is Ubuntu Linux 8.10 or later versions (32bit Desktop).
- The installer of .deb format for the Ubuntu Linux was made.
- package : galatea-ja-chaone, galatea-ja-unidic, galatea-engine, galatea-dialog
- installed files
- /usr/local/(package names)
- The Java environment that Galatea Dialog Studio uses is OpenJDK 6.
- Each engine was updated.
- SRM : http://julius.sourceforge.jp/
- We switched from Julian 3.x to Julius 4.x.
- SSM : http://sourceforge.jp/projects/galateatalk/
- The FSM was updated to v2.35.
- There is a repository of FSM that fixed some C++ related compatibility problems.
- The FSM depends on GLUT. It uses freeglut3 now.
- A known problem: GLUT and 3D desktop cannot be used at the same time.
- The problem is related to the video device and drivers. Intel video driver of Ubutntu 9.10 or later is improved.
Runner and Project
- The conventional galatea command became galatea-runner.
- Temporary files are written in at the .galatea directory of the home directory.
- The galatea-runner generates the configuration files of each engines from skeleton files dynamically.
- A galatea-generate command to generate a project was introduced.
- It is going to be expanded in future.
- The skeleton files of the 'skel' directory are in ERB format, and embedding of the Ruby language is enabled.
- The configuration files are generated using assigned values in system configuration (galatea.yml) and project setting (project.yml) dynamically.
In other words the correspondency of configuration files / skeleton files / runner is Model-View-Controller.
- galatea.yml and project.yml are written in ERB, and embedding of the ruby language is possible.
With the values evaluated in ERB, the generation of the configuration files from a skeleton file is performed.
- runner and generate use only a standard library of ruby1.8.
- We finished confirmation with ruby1.9, but ruby1.8 is used as the default.
Galatea Dialog Studio
- The malfunction in the IPA final version that a work load of the CPU became very high was revised.
- Modified version is galatea-linux-v3.0a / gdm-src-1.0.1 of galatea-linux-ipa in sourceforge.jp.
- DS was implemented as a submodule controlled by AgentManager.
- DialogManager starts AgentManager (written in Perl) in the IPA-final version.
The current DS is one of the Galatea submodules communicating by a Galatea protocol by standard input/output.
The module name is DM. AgentManager starts DS.
- The major version of DialogManager was changed in 2.x from 1.x with this change.
- DialogManager for Linux changed a name in Galatea Dialog Studio (DS) from version 2.2.
- We confirmed the execution with Windows XP unofficially.
- The system configuration can be changed easily.
DS can communicate with each submodule in standard input/output.
A process can be started from DS.
- In the unofficial Windows mode, DS starts the processes of all submodules.
- The cookie was supported in HTTP protocol to acquire a document.
- Functions of Java 6 are used.
- Compatibility with PHP or Ruby on Rails which managed the session in cookie became higher.
- The DS introduced the GUI which was many functions.
- The status confirmation of the system, the selective display of the internal processing log are possible.
- The current DS does not use the Perl wrapper of the SRM.
The julius is started directly by DS, and DS and julius communicate with a socket.
The XML grammar of the speech recognition is converted into a Julius (Julian) format inside, and it is processed in mkdfa.
These functions work equally in the Windows environment.
The modules other than the SRM are started by AgentManager.
- The support of the XML speech recognition grammar is improved.
- In the IPA final version, the description corresponding to the Julius grammar was possible.
Support such as one-of elements is improved now.
Attributes such as slot or value can be used with the item tag.
- The functions related to the Julius grammar are available alone.
There is a sample in istc-galatea-dialog/files/tests/grammar/.
- The audio output corresponding to the audio tag of VoiceXML uses JavaSound.
- AM-MCL was implemented in Ruby.
- Control functions related to the output are added.
- The following modules were added to realize a natural head and facial movement.
- FS-MCL : It is a submodule managing the information such as the face of the agent of several kinds and the kind of the background, continuous movement
(implemented in Java).
- The facial autonomic movement functions that FSM provides are not used.
- PAR : It is a submodule carrying out several commands in synchronization with an output start of the voice synthesis
(implemented in Ruby).
- It is available with an all-of tag from VoiceXML.
- DIM : It is a submodule to control a blink and the eye contact depending on the utterance status of a user and the agent
(implemented in Ruby).
back to EnglishIndex