The structure of the EIS.
Our objective is to design and develop a generic environment interface standard (EIS) that facilitates connecting agents programmed in various agent programming languages (APL) to environments.
We aim at a de facto standard that possibly can become a real standard in the future.
Our motivation is based on the following considerations:
- implementing an EIS makes already working environments widely available (short-term goal),
- an EIS allows for the easy distribution of future environments (Multi-Agent Contest, Unreal, ORTS,...),
- an EIS allows the direct comparison of APL platforms, and
- an EIS enables the development of a truly heterogeneous MAS, consisting of agents from APL platforms that adhere to the standard of the EIS (long-term goal).
Our approach takes the following goals into account: to design an interface that is as generic as possible, and to reuse as much as possible from existing interfaces. Obviously, there is a trade-off between these two goals. Our basic strategy for designing a generic environment interface is
- to start with what is currently ``out there'' in existing platforms, and
- to try to merge this into a generic interface which is sufficiently close to these existing approaches.
Agents, entities, and the agents-entities-relation.
The EIS is based on these principles:
- Portability:we distribute environment-interfaces via jar-files.
- Environment interface generality:the interface is generic and imposes only minimal restrictions of the platform or environment.
- Separation of concerns: we assume agents to be separated from the environment(s). We distinguish between APLs and agent programs on the one hand (agents are action-generators, and percept-processors) and an environment model and controllable entities on the other hand.
- Unified connections: the EIS provides unified means for the connections between the agents, and the platform on one side and the environment on the other. It should does not severely restrict any existing approaches.
- Standards for actions/percepts/events/etc.: the EIS provides a convention for actions, percepts, events, and other concepts of that kind, that does not restrict any existing approach. We intend to propose a standard based on special Java-objects.
- Support for heterogeneity: the EIS establishes the basis for heterogeneity.
- Tristan M. Behrens
- Jürgen Dix
- Koen V. Hindriks
The EIS is currently maintained at GitHub.