thalerjonathan / chimera

A library for pure functional Agent-Based Simulation in Haskell
GNU General Public License v3.0
13 stars 0 forks source link

Implement Concurrent Update-Strategy #4

Closed thalerjonathan closed 6 years ago

thalerjonathan commented 6 years ago

Using STM, running all agents within a separate thread but synchronise them after each step.

thalerjonathan commented 6 years ago

As of Issue #11 I will try to run everything in the parallel update-strategy and introduce controllable and deterministic concurrency (it may sound like a contradiction but it should work). With a truly concurrent update strategy we completely lose reproducability (running same simulation twice with same starting conditions may/will result in different dynamics because of different thread-scheduling and data-races).