Ludo Stellingwerff
Ludo Stellingwerff
Senior Software Engineer



Ludo Stellingwerff // Jos de Jong

(keywords: agent-platform, multi-agent systems, distributed systems)


Eve is a multipurpose web-based agent platform. Eve is defined as an agent model and a communication RPC protocol, which can be implemented in many programming languages and runtime infrastructures. Currently, the Eve implementations support HTTP and XMPP as transport protocols, but it is relatively straightforward to implement a ZeroMQ transport, for instance. If two implementations share a common transport service, their agents can work flawlessly together (e.g., a Java cloud agent can communicate with an in-browser Javascript agent, through JSON-RPC over an XMPP transport).

Eve envisions to be an open and dynamic environment where agents can live and act anywhere: in the cloud, on smartphones, on desktops, in browsers, robots, home automation devices, etc.

Agents communicate with each other using existing protocols (JSON-RPC) over existing transport layers (HTTP, XMPP), offering a language and platform-agnostic solution.

Caveat: Eve fits to real-world solutions, not much for massive agent-based software simulations.

Estimated TRL/Maturity: TRL 6(i.e., technology demonstrated in relevant environment), high maturity (Java is at v2.0, JS is under continuous development).

Unique selling points: the only existing web-based agent platform, open source, high scalability, language agnostic, applicable to potentially any device/platform, suited to the IoT.
Competitors: JADE, AGlobe, AgentScape (all are old, not scalable, not for any environment)
Demos available: ARUM MIDAS, BRIDGE control system, conference matchmaking, mobile anklung, game of life (also for interaction of Java/JavaScriipt versions).
Possible development: t.b.a.
Ideas for applications: Internet of Things (in manufactoring, health, etc.) and Smart Cities are a natural fit; Eve can also be used as middleware and it couples well with vis.js modules; overemphasize the applicability to any environment, including portable devices and heterogeneous servers/OS.