Theoretical Model: Goals Flexible framework able to simulate wide variety of models Provide ability to run simulations of arbitrary complexity and size Allow for easy visualization and editing of models
Fundamental Simulation Unit: The Module Each module can be defined through 1.Compositing 2.Code Composite-based Modules: – Made up of collection of interconnected sub-modules – Each sub-module can itself be a composite Code-based Modules: – Can contain formulas of arbitrary complexity Modules can have any number of inputs and outputs
Theoretical Model: Complexity Modules allow for entire simulation to be broken into small pieces Simulation framework can maintain arbitrary number of modules for each simulation No need for centralized computing, work can be spread out as desired
Theoretical Model: Flexibility Module definitions allow for varied internal behavior of modules Arbitrary connectivity relates modules to each other Any module may connect to any other module with compatible inputs and outputs
Theoretical Model: Elasticity Encapsulation of work means that simulations are just a collection of modules and connections between them Easy to set up, no need for lots of resources to be ready on hand at all times
Theoretical Model: Usability Concept of different levels of view High level understanding of a model is achievable without having to see details Easy to follow logic from high level to low level Encapsulation of sections of model – Changing one aspect of model without having to change others
Example of a Basic Model Supply-demand curve: Supply: power production capacity Demand: power demanded Feedback drives system towards equilibrium Simple consumer-producer relationship
Module Representation Producer Outputs: -Energy Supply -Energy price -Pollution Consumer Inputs: -Energy Supply -Energy price -Pollution Regulation Environmental Inputs: -Pollution from Producer Environmental Outputs: -Regulation for Consumer Producer module requires: -Initial price of energy -Initial supply of energy -Slope of initial supply curve Producer Inputs: -Demand for energy Environmental module requires: -Strength of regulation Consumer module requires: -Demand curve slope -Price of energy Consumer Outputs: -Energy demand At the start of the simulation: