Software:CadCAD

From HandWiki
cadCAD
Developer(s)BlockScience
Initial releaseJanuary 2019; 5 years ago (2019-01)
Stable release
0.4.22 / September 4, 2020; 3 years ago (2020-09-04)
Repositorygithub.com/cadcad-org/cadcad
Operating systemWindows, macOS, BSD
TypeComputer-aided design, Systems modeling
LicenseMIT license
Websitewww.cadcad.org

cadCAD is a python package that assists in the processes of designing, testing and validating complex systems through simulation, with support for Monte Carlo methods, A/B testing and parameter sweeping. It is used to model systems spanning many different fields such as economics, governance, biology, and mechanical engineering.

History

Originally developed as an internal modeling tool for BlockScience—an R&D, engineering, and analytics firm specializing in complex systems—cadCAD was open-sourced in August of 2019 after an announcement at TEGG 2019 in Berlin.[1]

Methodology

The cadCAD simulation methodology operates on four layers: policies (behaviors), mechanisms, states, and metrics. Policies determine the inputs into the system dynamics and can come from user input, observations from the exogenous environment, or algorithms. Mechanisms are functions that take the policy decisions and update the states to reflect the policy level changes. States are variables that represent the system quantities at the given point in time, and metrics are computed from state variables to assess the health of the system and are very similar to KPIs.

The flexibility of cadCAD also enables the embedding of machine learning models into behavior policies or mechanisms for complex systems with an machine learning prediction component.

Popularity

Projects that are known to be using cadCAD for systems experimentation and simulation include Clovers[2], Commons Stack[3], and Streamr[4].

References

  1. Zargham, Michael (June 3, 2019). "Introducing Complex Adaptive Dynamics Computer-Aided Design (cadCAD)". Medium. https://medium.com/block-science/introducing-complex-adaptive-dynamics-computer-aided-design-cadcad-38b63b541eb8. 
  2. Rennekamp, Billy (July 8, 2019). Clovers + cadCAD: Modeling Game Economics (Video). Berlin: Rennekamp, Billy.
  3. Emmett, Jeff (August 27, 2020). "Evaluate Conviction Funding Pilot Data Using cadCAD". https://forum.aragon.org/t/evaluate-conviction-funding-pilot-data-using-cadcad/2267. 
  4. Pihkala, Henri (July 14, 2020). "Dev Update, June 2020". https://blog.streamr.network/dev-update-june-2020/.