SocSimFest 2021 participants
This tutorial was presented at the Social Simulation Fest 2021 (SocSimFest 2021). To make Repast HPC accessible to participants for the session, we have created a virtual machine that you can use to develop and run the tutorial ABM straight out of the box. Instructions on downloading and installing the virtual machine have been sent before the session to the MBSSM mailing list mbssm-group@sheffield.ac.uk. Note that if you have Repast HPC installed already on your own machine then you won’t need the virtual machine for the session.
For the general audience, please follow the following to install the prerequisite softwares and get the source code of the tutorial.
Prerequisite softwares
Our current implementation of MBSSM uses the Repast for High Performance Computing (Repast HPC) agent-based simulation platform. Repast HPC is great in that you can run very large simulation models relatively quickly in large-scale distributed computing platforms; it is less great in not supporting the Windows operating system that many folk like to use. Since Repast HPC is written in C++, we will also be writing the model in C++; you won’t need to know any C++ in order to get by in the tutorial, but some familiarity with programming (e.g., R, Python, Java) would definitely be helpful.
Please install Repast HPC on your computer for this tutorial. We have 2 important notes that might help with you installation.
- Installation Note 1: For our system (Ubuntu 16, 18, 20), before install netcdf with “./install.sh netcdf”, you need to install zlib1g-dev with this command
sudo apt-get install zlib1g-dev
- Installation Note 2: Before compiling, you need to add the relevant paths to the PATH and LD_LIBRARY_PATH. You can execute the following two lines (everytime you reset the machine) or add them to “~/.bashrc” file to automatically append. This example is for Repast HPC 2.3.0 and Boost 1.61. Please update them according to the paths in your system.
export PATH=$HOME/sfw/MPICH/bin:$PATH export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/$HOME/sfw/Boost/Boost_1.61/lib/:/$HOME/sfw/repast_hpc-2.3.0/lib/
Additionally, we will use Sublime Text editor to modify the source code of the tutorial. For Ubuntu user, you can find Sublime Text editor in Ubuntu Software. You are welcome to use other editors of your choice.
Tutorial source code
The tutorial source code is available at MBSSM_architecture repo. In the RepastHPC folder, there are three folders:
- core is required for all models.
- SegregationModelTutorial is an incomplete version for starting the tutorial.
- SegregationModelTutorialComplete is a complete version after finishing the tutorial.