Home Overview Introduction
Introduction to Agent.GUI - Application functionalities for Developer Print option in slimbox / lytebox? (info) E-mail
Article Index
Introduction to Agent.GUI
Relation between IDE and end-user application
Application functionalities for Developer
Application functionalities for End user
All Pages

Application functionalities for Developer

These kinds of functionalities are designed in order to pre-configure the visual application of Agent.GUI, so that developed Multi-Agent systems can be executed and used by end users. In detail, the following configurations can be defined in the main tab ‘Configuration’ of the projects front-end (see also the image gallery below):

  • Tab 'Resources' (top): One of the predefined environment types can be selected. At present a model for a continuous two-dimensional environments and a model for grid environments are available.
  • Tab 'Resources' (center): As described before Agent.GUI allows the usage of external libraries, which are available as a Java jar-archive. Such files can be selected from the local file system and will be dynamically added to the Classpath of the running JVM.
  • Tab 'Resources' (bottom): Plugin-classes can be selected and loaded out of the available classes of the running JVM. To write your own Agent.GUI-Plugin you can create a class, which extends the class agentgui.core.plugin.PlugIn.
  • Tab 'Ontologies': In order to later on configure start-arguments for agents, the ontologies that are used in the MAS can be selected and displayed here. The ontologies have to be created by using Protégé and the OntologyBeanGenerator (see Tools for the development of tailored Ontologies).
  • Tab 'Agents': This tab shows first of all the available agents of the current project. In order to define the Object-array, which will be transferred to an agent type during its initialization as start-argument, just select a class out of the ‘Project ontology’ (bottom right) and move it to the list ‘Start-up objects from project-ontology’ (top right). Such a configuration will be used later on in the ‘Simulation-Setup’ or in case that you press the OK button above the list of start-arguments.
  • Tab 'JADE': In this tab the main port of JADE and the services to use, like the NotificationService, can be configured. If you have built your own extended JADE-Service, it will be made selectable here as well. 
    As a supplement to JADE, Agent.GUI comes with four further services, which are providing for example synchronized time over distributed containers by using the SimulationService. Further examples are the DebugService (see selection in the gallery image below), which allows the redirection of remote console outputs to the main application window or the LoadService, which allows distributed load measurements.
  • Tab 'Distribution + Thresholds': Here the (static or dynamic) load balancing can be activated and the threshold levels for the load can be set. Furthermore you can select and apply your own load balancing approach.


Running through several cycles of testing, the above described functionalities will be - naturally - already used during the development phase of an agent project. If this testing and development is over, the agent project can be finalized and packed for end users, which can be done as follows

  1. Export your final jar-file out of your IDE to the intended project folder in Agent.GUI (e.g. ./AgentGUI/projects/myproject).
  2. Do your final configuration, especially in the project resources
  3. Set the view to your agent project to ‘End user view’ (see last image in the gallery above)

Your Multi-Agent system can now be used by end users.

Joomla templates by a4joomla