The software of the first choice is definitely agent-based modeling. It is absolute must start with the type of software. The idea of agents originates in cellular automata with moving cells. It was later rewritten as purely agent-based modeling.
I do recommend to visit Net Logo software, which can be downloaded and even can run online. It is the ideal place to start with.
The other very important source of information is the book at Andrei Ilachinski: Artificial War
What is "the best software" for you depends on your knowledge and the experience of your colleagues. I started with Java for IBMs in the past, now we use R for almost everything including IBMs (with some C/C++ for speedup). You may also start with Python ... or whatever you personally know. There are of course some dedicated IBM environments too, implementing specific IBM subclasses the choice depends again on what you exactly wand. Finally, Netlogo is indeed well suited for IBM/ABMs and very cool anyway. For some background see also: http://www.railsback-grimm-abm-book.com/
As a complete software package that is dedicated to IbM , there is NetLogo and relatives, as mentioned before, and https://www.birmingham.ac.uk/generic/idynomics/index.aspx, dedicated to microbes. These are, however, rather coding environment than a graphical user interface, or something like that. Code has been written in R, more often Java, or C++, as Thomas mentioned, and is sometimes available through the publications, e.g. Article A mechanistic Individual-based Model of microbial communities
. As far as I know, no one has rigorously compared software and/or code in the context of IbM for specifically microbes, but please share if there is. So, as Thomas says, it then depends very much on your aims, requirements, etc.
Dear Thomas, you might contact Jan-Ulrich Kreft, Birmingham, who has been developing IBMs for microbial systems for more than 20 years, or Ferdi Hellweger, IZW Berlin, same background. If I remember correctly, microbial IBMers teamed up already 10 years ago to create a generic software tool. It might be wise not to start from scratch but to see if you could use an established tool or software package. (Even if it does not involve R ;-). Best regards, Volker (PS: Ferdi will give seminar at UFZ on May 28, 1 p.m.)
Dear Volker, I was aware of the specific microbial IBM community but forgot to mention it in this case. Many thanks for adding this! Ferdi Hellweger's work is known, I had the chance to meet him myself about 2y ago. As said, the selection of software depends always on the available scientific environment and personal experience. I give R often a first try, as it is a multi-paradigm platform, cf.:
Here we have one individual-based model of soil microbes using the trait-based modelling approach, called DEMENT. It is written in R and you can get access to it at: https://github.com/bioatmosphere/DEMENT
It is spatially explicit, and simulates processes of organic matter degradation, uptake, basic metabolisms, mortality, and reproduction and dispersal.
We are now working towards incorporation of better moisture-cell interactions into it with ever explicit metabolic processes. Also, better programming structure in Python is another goal and is underway.
Hi all, I would confirm that agent-based modelling and simulation is an adequate way to implement IBMs in general. A critical point is the scale of the model scenario in terms of agent numbers. My research group MARS (www.mars-group.org) analyzed many ABM/IBM frameworks, e.g. NetLogo, Repast, regarding that question and we found that most frameworks struggle with agent number > 50,000. We are computer scientists and have developed the MARS framework to simulate scenarios with millions, sometimes even billions, of individual agents in a reasonable time. Please contact me if you are interested in more details.
I just realized that there is a whole Frontiers issue on individual cells and agent based modelling, so it might be worth a look to see what other people have used to derive their results "https://www.frontiersin.org/research-topics/5193/the-individual-microbe-single-cell-analysis-and-agent-based-modelling"