Cougaar Mascot

Cougaar Simple Usage Examples

(provided in Tutorial package)

Cougaar Mascot

 

There are several simple examples of building agents using the Cougaar Agent Architecture.  There are provided as part of the tutorial package in each build.  This page provides a brief overview and links to the readme files in ~/doc/fast_start.

 

Towers of Hanoi The Towers of Hanoi is a classic computer science/AI planning problem. There are 3 poles and N disks. You must move the disks such that you end up with all the disks on the same pole. The catch is that at no point can a larger disk sit on a smaller disk.

This single agent example was designed to help newcomers understand the approach to plugIns as a mechanism to decompose the problem. It also highlights the use and flexibility of the Task Grammar used to communicate between plugIns.
/doc/fast_start/HanoiREADME.txt
Binary Search This is a simple implementation of a binary search algorithm in which a number is chosen at startup and a plugIn must attempt to find that number by a series of queries.

This example has both a single agent and mult-agent version. In the single agent version, the requestor and provider coexist in the same agent. In the multi-agent version, they exist in two different agents and communicate. The key feature of this demonstration is to show how easy it is, using the Cougaar design approach, to reconfigure from a single agent solution to a multiple agent solution.
/doc/fast_start/BinaryREADME.txt
Agent  Managed Calendar This example demonstrates an agent managing a simple calendar. Through a java applet interface, you can request appointments or vacation days. If you request a vacation day on a day you have an appointment, the agent does dynamic replanning to move the appointment.

This example shows a couple of nice features. First, how easy it is to attach Java applets as APIs to get information into and out of the agent. Second, it demonstrates the mechanism of dynamic replanning in response to execution time failures. In this example, a calendar conflict with vacation is an execution failure - and vacations always win. This conflict triggers dynamic replanning which will rescind only the information on the failed day and proceed to reschedule those activities
/doc/fast_start/CalendarREADME.txt
Simple Computer Store This example is a simple computer store which configures computers to customers specifications for sales. There are a set of components, with each component having a few options. The price is dependent upon the set of options. In the example, several different canned configurations are requested and constructed.

This example was designed to show the power and flexibility of the object model prototype approach employed within Cougaar. Though this model is not required, we have found it to be very powerful. This example shows how to build properties, property groups, prototypes and instance factories.
/doc/fast_start/ComputerREADME.txt
 

Last Updated: 1 April 2001 (TMC)