Simulating Real-World Systems as a Programmer cover

A collection of posts on the foundations and patterns for building simulations of the real world. Written especially for programmers and non-technical readers wanting to learn the fundamentals of simulation technology and how it can be useful to the world. No maths; just diagrams and straightforward descriptions all the way through.

Collection

Simulating Real-World Systems as a Programmer

    Why simulate real-world systems?

    What can you do with simulations?

    One of the most compelling uses for simulations of real-world systems is in powering decision-making technologies.

    If you want to answer questions like ‘if I take this action, then what will happen in my system?’, then it is often essential to build a simulation of your system and use this to simulate what might happen in the future.

    Advantages to using real-world simulations

    With simulations of the real-world, in contrast to other predictive AI approaches, you can also interrogate the internal state of the system to help validate the assumptions used in making a decision.

    This can be a real advantage for decision-making technologies, since human users usually need to justify their decisions through structured reasoning.

    Example: Predictions only vs simulations

    Prediction only
    There is a forecast line, but the internal logic is hidden. If the prediction is wrong, it's difficult to interrogate why.
    Simulation/mechanistic model