The DIET Agents platform has been designed to be scalable, robust and adaptive using a "bottom-up" design approach:
- It is scalable at a local and at a global level. Local scalability is achieved because DIET agents can be very lightweight. This makes it possible to run large numbers of agents, up to several hundred thousands, in a single machine. The DIET Agents platform is also globally scalable, because the architecture is such that it does not impose any constraints on the size of distributed DIET applications. This is mainly achieved because the architecture is fully decentralised, thus not imposing any centralised bottlenecks.
- It is robust and supports adaptive applications. The DIET kernel itself is robust to hardware failure and/or system overload. The effects of these failures are localised, and the kernel provides feedback when failure occurs allowing applications to adapt accordingly. The decentralised nature of the DIET Agents platform also makes it less susceptible to failure.
Building an application using the DIET Agents platform does, of course, not guarantee that your application is scalable, robust and adaptive. DIET Agents supports these features, but you still have to design your application carefully to ensure it is scalable, robust and adaptive. If you use DIET to write a client-server application, the application will be as scalable and robust as (the access to) the server is.
More details about the "DIET approach" in agent system design can be found in our publications.
- It is based on a bottom-up, nature-inspired design approach. DIET agents are not assumed to be highly intelligent and/or to use complex communication protocols. Instead, agents can be very small and simple, allowing intelligent behaviour to emerge from the interactions between large numbers of agents.