This project was done for the Causal Modeling in Machine Learning class taught by Robert Ness – https://altdeep.teachable.com/. In this project we implemented the Lotka-Volterra Predatar Prey model using Gillespie simulation. This was done using the probabilistic programming language Omega allowing us reason with the model, conditioning on data, making interventions, and asking causal questions.
Complex systems permeate multiple sectors, including Biochemical systems such as cells, Environmental/climate systems and Economics. These systems are intrinsically difficult to model as they include feedback loops (cycles), non-linear relationships, and time components. We argue that probabilistic programming provides the flexibility to better model complex systems, surpassing more rigid methods such as SCMs.
To show the results of our implementation we simulated an “observed” trace of predators and prey and made an intervention. The intervention that was asked was “Given the observed trace, what would have happened if predators stopped eating prey for 100 steps?” In the plot below we can see the number of predators and prey for both the observed and intervened traces.
More details on the implementation can be seen in the Github repository.