Skip to content

Commit

Permalink
Merge pull request #20 from marshall-lab/mking_resolved_burnin
Browse files Browse the repository at this point in the history
Mking resolved burnin, documentation, code cleanup, imports
  • Loading branch information
Maximilian King authored Sep 26, 2019
2 parents 64d7ff4 + 4156ad9 commit 8c93988
Show file tree
Hide file tree
Showing 19 changed files with 1,487 additions and 1,379 deletions.
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@
.idea/
venv/
venv/*
.vscode/
53 changes: 53 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
# TITAN Simulation

TITAN (Treatment of Infectious Transmissions through Agent-based Network) is an agent-based simulation model used to explore contact transmission in complex social networks. Starting with the initializing agent population, TITAN iterates over a series of stochastic interactions where agents can engage in risk behavior with one another, transmit infections through various medium, and enter and exit the care continuum. The purpose of TITAN is to evaluate the impact of treatment models on incidence and prevalence rates of the targeted disease(s) through the use of data fitting simulated trajectories and rich statistics of primary/sub-population attributable proportions.

Agent populations are defined as graphs (nodes connected by edges). Nodes in the graph are used to represent the attributes (or collection of attributes) of an agent (person), and edges define the type of relationship between agents. In practice, a graph represents a social network of connected people through various relationship types, and provides the medium for which agents can interact.

## Getting Started

To get started, install the requirements listed in the `requirements.txt` using a local python install or virtual env. Once installed, the model can be run using the `MP_simulation.py` program and configured using the `params.py` file.

### Prerequisites

In order for TITAN to run, you must install `Python3.x` and the necessary python packages listed in the `requirements.txt`. This can be done by using `pip` via:

```
pip install -r requirements.txt
```

### Installing

Currently, TITAN does not require any further installation as the source code exists within this repo in `/src`

## Running the Model

To run the model, execute the `MP_simluation.py` program within the `/src/` directory. It will natively read in the `params.py` configuration file as the input parameters for the model. These can be configured as desired for the target model setting and configuration. Other examples of calibrated settings exist within the `/settings/` directory.

Results of the model are generated and aggregated into the `/src/results/` directory. If the model is re-run, the existing results will be overwriten. A helper script has been written to prepare simulations for use with OSCAR, and is labelled `subTitan.sh` in the root directory.


### Running the tests

TODO: Test coverage and examples.


## Built With
* [Python3.x](https://www.python.org/downloads/release/python-374/) - Programming language
* [Networkx](https://networkx.github.io/) - Network structure backend
* [Numpy](http://www.numpy.org/) - Numberical libraries


## Authors

* **Lars Seeman** - *Initial work*
* **Max King** - *Continued development*
* **Sarah Bessey** - *Continued development*
* **Mary McGrath** - *Continued development*

## License

This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details

## Acknowledgments

Loading

0 comments on commit 8c93988

Please sign in to comment.