5. Learning to use ASTRA
5.1 The Basics
The guides below provide some basic techniques for writing ASTRA programs. Explanations are based on Maven command line tools, but you should be able to adapt these if you complete the relevent IDE guide above.
- Building & Deploying ASTRA Programs
- Creating Multiple Agents with ASTRA
- Multi-Agent Communication with ASTRA
- Modelling Problems in ASTRA
- Working with Lists
- Multiple Inheritence
5.2 Creating your own ASTRA Modules
Modules are the primary extension point through which you are able to add your own functionality to an ASTRA program. This section starts by exploring how to create modules through a series of guides. The final two guides provide extensive examples of modules, however, the best source of examples is the ASTRA APIS Library which contains the default libraries provided with ASTRA.
- Creating your own Actions
- Adding a Sensor to ASTRA
- Implementing your own Events
- Defining Custom Terms and Formulae
- Example - Calculator
- Example - Implementing GUI support
5.3 Working with EIS Environments
The Environment Interface Standard (EIS) is an attempt to provide a common interface between agents and the environments the inhabit. The idea of the initiative is to standardise how an agent language interacts with an environment. This means that language developers need only to link their programming language to the interface and then they have access to all of the environments that have been developed for that interface.
For ASTRA, the approach that has been taken to linking agents to the interface has been based on a core language level integration. This support includes a statement for executing actions in the environment, a formula for querying environment beliefs, and an event for triggering behaviours. Additionally, a custom API has been developed to provide additional support for working with EIS environments.
5.4 ASTRA By Example
This part of the guide presents a series of simple programs that illustrate how various language features are implemented.