DES (Discrete Event Simulation) is a simulation paradigm which can be applied to some OR problems, if combined with SO (Simulation Optimisation).

AB-DES (Agent-Based DES) is an adaptation where the simulation model is broken up into many agents with internal state and behavior, and the dynamics of the system as a whole emerge from the individual behaviors and interactions among many agents. Typically there will be many agents of the same "type" e.g. many people interacting, many servers processing jobs, or other arbitrary entities from the ontology, implemented as agents.

I am working with a DES architecture which seems similar to AB-DES but has some critical differences. Instead of a large number of autonomous agents with embedded behaviors, there are a large number of dumb entities in the model, and a small number of Actors which "act" on the model state by changing the state of various entities. These Actors do not have internal state, and they are independent of each other, interacting only by publishing messages on common channels and triggering discrete events. This means that the simulation can be modified with different behaviors by adding in different collections of Actors, leading to very flexible and customizable behavior.

Has this architecture already been established in literature by some other name (I couldn't find it)? Is the architecture different enough from AB-DES to justify calling it a different paradigm, such as "Actor-Oriented DES" (AO-DES):

  • Number of agents:
    • AB-DES: Many, one per entity in the model
    • AO-DES: Few, one per process/behavior/phenomenon
  • State:
    • AB-DES: Stored within each agent, agents modified their own state
    • AO-DES: No state within actors, actors modify entity states
  • Coupling/interaction:
    • AB-DES: Agents can be tightly coupled and interact directly
    • AO-DES: Actors are decoupled, interacting only indirectly via events and publisher/subscriber message channels


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Browse other questions tagged or ask your own question.