Skip navigation.

The Java APIs

(no open release yet)

Introduction

The distribution includes four Java APIs, which implement various aspects of the CoSy architecture (version 2). We are using the Open Agent Architecture (v2.3.1) to set up a distributed architecture.
  1. de.dfki.cosy.attit: beliefs and belief states
  2. de.dfki.cosy.comsys: natural language processing.
  3. de.dfki.cosy.robot: high-level robot control, including navigation and people following.
  4. org.cognitivesystems: general classes and data structures for OAA-architectures.

At the moment (December 12 2005) the architecture has not yet been openly released. Please send a mail to Geert-Jan Kruijff if you are interested in obtaining the distribution. The distribution includes the APIs, and additionally required software.

Download

The Java APIs are provided as open-source software, under the GNU Lesser General Public License.

Required: Java 1.5 (or higher), Apache Ant
Authors: Geert-Jan M. Kruijff, John Kelleher, Maria Staudte, Sabrina Wilske, Hendrik Zender [DFKI]; Nick Hawes [BHAM] (mail for comments, questions, suggestions)
Download: Please send a mail to Geert-Jan Kruijff for the distribution (December 12 2005)
Install: Unzip the downloaded archive. Check $JAVA_HOME and $JAVA_CMD are set properly in cosy-env. Run build.sh to start the Antishield installation shield.
Platforms: Platform independent. Tested on Mac OS.X 10.4.3, Linux (SuSe, RedHat, CentOS 4.1)

Installing the Java APIs

The distribution is provided as an Antishield installation. Before installing, please ensure that the environment variables $JAVA_HOME and $JAVA_CMD are set properly in the environment file cosy-env. After having done this, please run build.sh to start the Antishield installation shield. This will start up a graphical user interface guiding you through the installation process.

Running the CoSy architecture (Java part)

Unfortunately, we do not yet have a one-click start procedure for starting up the Java part of the CoSy architecture. To start the system, perform the following steps (in the order as given):
  1. Ensure that you have a copy of setup.pl in your home directory. A copy of this file is provided in the distribution. Check that default_facilitator(tcp('mymachine.mydomain', 3378)). points to the machine on which the OAA facilitator will be running, and that you run a bash shell with sourced cosy-env. Now [ cd $OAA_HOME/runtime/scripts ] and start the OAA facilitator with [ ./fac.sh ].

    Troubleshooting: If you are unable to run fac.sh make sure that it is executable [ chmod +x fac.sh ] and that you have access to the facilitator implementations [ chmod -R 777 ../facilitator ].

  2. Open a separate shell, running bash with sourced cosy-env. Start the communication subsystem by [ cd $COMSYS_PROTO_HOME ] and then starting [ comsys-build comsys ].

    Troubleshooting: If you are unable to run comsys-build make sure that $COMSYS_PROTO_HOME/bin is indeed your path. (In cosy-env the environment variable PATH is specified to include this directory.)

  3. Open a separate shell, running bash with sourced cosy-env. Start the BDI mediator by [ cd $COMSYS_PROTO_HOME ] and then starting [ comsys-build bdi ].

  4. Open a separate shell, running bash with sourced cosy-env. Start the Sphinx4 speech recognition by [ cd $COMSYS_PROTO_HOME ] and then starting [ comsys-build sphinx4 ].

    Troubleshooting: See the Sphinx4 pages for more information.

  5. Ensure that you have a copy of speech.properties in your home directory. A copy of this file is provided in the distribution. Open a separate shell, running bash with sourced cosy-env. Start the FreeTTS speech synthesis by [ cd $COMSYS_PROTO_HOME ] and then starting [ comsys-build tts ].

    Troubleshooting: Although FreeTTS is supposed to run on any platform, there may be problems accessing soundcards under Linux. See the the FreeTTS pages for more information.

In addition to the Java parts of the CoSy architecture, you will need to start the following components depending on the scenario you are interested in:

Object manipulationStart the vision code (run.arch.sh)
ExplorerStart CURE SLAM, the people tracker, and then the SpLAMSystem in the robot API: Given a bash with sourced cosy-env, [ cd $ROBOT_PROTO_HOME/output/classes ] then [ java de.dfki.cosy.robot.navi.SpLAMSystem IPADDRESS ] with IPADDRESS being the address of the machine on which the CURE navserver is running.
Latest News