Logo

The Marmot Multi-Agent Library

Welcome to our Homepage

[Home] - [Manual] - [Let's go] - [Links]

What is the Marmot Multi-Agent Library?

Introduction:

The history of the Marmot Multi-Agent Library started with a project about agent-based, automatic parallelization of image analysis tasks. As basis for this project a multi-agent system was implemented as a C library. At this an important design feature was to allow the re-usage of the agent code for other applications. Thus a library of several C functions and data types was developed that provides the basic functionality of a multi-agent system:

Limitations:

Basically the library is very flexible as it is written in architecture independent C code without making use of specific libraries, e.g. for communication. The only exception is the need of a thread/mutex variable package, as the agents work as threads and use mutex variables to synchronize accesses to common lists and memory blocks. The library uses an interface layer to encapsulate calls of thread/mutex functions. This interface provides some fundamental functions for allocating/giving free mutex variables and thread handles, for locking/unlocking mutex variables and for creating/joining/detaching threads. The interface makes use of thread/mutex functions of the operating system, i.e.,

You may decide to use another thread/mutex package without large effort by adapting the thread/mutex interface of the Marmot Multi-Agent Library (here is a description on how to do this).

Another limitation is that the agents only can work in shared memory systems! Agents work as threads of the main process and communicate via shared memory. Thus a multiprocessor system with global shared memory is the best choice of hardware for the Marmot Multi-Agent Library.


Current Version of the Marmot Multi-Agent Library

Version 0.90 (since 1998-09-23).
See here for changes from version 0.80 to version 0.90 and for bugs of version 0.80.
Remark: At the moment, there is no further development of the library.

Overview

Features of the Marmot Multi-Agent Library:


The Manual

< Here you can find the online documentation of the Marmot Multi-Agent Library.

Further Information - Links

< Links to related projects, WWW-sites and papers.

[Home] - [Manual] - [Let's go] - [Links]

Maximilian Lückenhaus, 2000-02-11