Search code examples
replicationnetlogo

Netlogo - How to replicate an experiment adjusting one parameter using import-world?


I have a simulation in which agents move around the physical grid exchange ideas on topics with their neighbours. I have conducted a study and would like to replicate it perfectly but with only one modification - a slightly adjusted "transfer" parameter so that ideas exchange at a slower rate.

To try and get a perfect replication I have used the export/import world procedure. When I re-run a simulation from tick 0 with an imported world and none of the parameters are changed, the model is identical. I get the same output, agents move and have the same interactions and everything is identical. Great

However, when I re-run the simulation from tick zero with the same imported world, but slightly adjust one paramater (transfer_rate), the agents move around the physical space differently, meet different agents to the original simulation and ultimately I get different results.

Perhaps by adjusting one parameter the pseudorandom number has altered somehow? Does anyone know of any way of having everything perfectly controlled and constant with the exception of this one transfer_rate parameter adjustment? Perhaps there is a simple solution.

Thank you for your time everyone.


Solution

  • Two possibilities might help. You could try with-local-randomness to isolate the random processes that are affected by the change in the transfer_rate. Alternatively, one simulation doesn't really tell you anything anyway, so you could move away from trying to exactly match the dynamics and simply run multiple simulations and then compare the two sets of simulations.