VETk: Virtual Environment Toolkit (the old homepage)

Also hosted at SourceForge Logo
Last page update: 3 apr 2001
Newest release: 1.3 (21 aug 2000) VETk 1 has been superseded by VETk 2, which is a complete redesign

Introduction

VETk `Virtual Environment Toolkit' is a toolkit for writing distributed concurrent user applications incorporating user interface agents, such as multimodal dialogue systems and multi-user virtual environments. The toolkit is centred around an experimental component model which provides high-level communication primitives and publisher-subscriber facilities. The goal of the project is to further develop this model so that it incorporates an illustrative part of the basic communication concepts found in the various interactor and software agent models that have recently emerged, providing an inventory of these concepts, and illustrating their (in)feasibility for serious software development.

Currently, the toolkit is mostly written in Java. Components may be written in a separate programming language that compiles to Java applets which can be run in a regular Web browser. Eventually, the communication model should be made language-independent. The toolkit should eventually incorporate standard software libraries, in particular 3D and VR libraries, and some CASE tools, in particular a model checker and possibly a graphical dataflow editor.

It should be said that the current implementation is slow, and is not efficient enough for large environments with many agents. It should, however, be efficient enough to write small-scale applications, and thus verify and illustrate some of the theory that I am developing as part of my Ph.D. project. See my publications for more information.

Distribution

This program is distributed under the BSD license. To run the engine, you will need Java 1.1. To run the compiler, you will need the standard Unix tools C, Perl, Bison, Flex.

Read the programmer's manual online: text PostScript.

Some small example applications written in VEAL:

The 3D library is under construction, but is not yet available. It will require Java 1.2 and Java3D. I might also make a Java1.1-EAI-VRML version later on, but, from what I've heard, existing EAI implemetations are very buggy.

Local installation

I've installed a Sun version on our local network. Go to /home/parlevink/schooten/VETk/ and execute the setpaths.sh script to use it. See the README file for more details.

Future plans

I'm exploring the possibilities for model checking of VEAL programs. Here's a rough Promela model of the lifecycle of a relation between two agents.

Boris van Schooten
schooten@cs.utwente.nl