# Agent.Workbench Features

## End User functionalities

* MAS / MABS are handled as "projects" (designed by developer)
* In projects, definitions of different simulation setups are possible
* Agents can be configured by using different start arguments coming from (tailored) ontologies
* Depending on the selected environment model (e. g. a graph or a continuous two-dimensional model) case-specific environment configurations can be done
* The JADE agent platform and their tools can be easily controlled with the end user application
* Simulations can be easily distributed and balanced on different machines, in particular also by non-IT specialists
* AgentWorkbench provides a Multi-Language application (currently English and German, can easily be extended to French, Spanish, Italian, Polish, …)

## Utilities for developer

* AgentWorkbench provides a console window, which allows to display the system output, even if the output comes from a remote container located on a different machine
* The view on projects can be switched between a 'Developer view' and an 'End user view', in order to unburden domain experts from superfluous tasks and views
* One of the predefined environment models can be selected and used for a simulation OR an environment model can be designed and added individually
* External libraries (.jar files) can be added to a project in order to extend the core program features
* A customized PlugIn-class can be written in order to extend the application or the project window
* [Protégé](https://github.com/protegeproject/) designed ontologies can be integrated into projects - AgentWorkbench provides a reflective access to them. For example, in order to define start arguments for agents
* Needed JADE services can be configured by using the user interface, this includes also extended JADE BaseService classes that have been written individually for a project
* With the SimulationService, AgentWorkbench provides an efficient way for the agent/environment interaction, also in distributed applications
* The integrated, so called "Background System" enables an easy distribution of agencies over several machines in a computer network, just by a method invocation out of the running simulation
* AgentWorkbench provides open interfaces in order to allow individual static and dynamic load balancing solutions. Therefore the system load is permanently measured, also for a distributed agent platform


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://enflexit.gitbook.io/agent-workbench/overview/agentworkbench-features.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
