OgPlexus / HCV_ABM

Our agent-based model (ABM) of the spread of Hepatitis C within a community of intravenous drug users keeps track of individuals (or agents) in the population, as well as the kind of connections that form between them. These agents and their connections are organized into a network diagram, where nodes represent agents and edges indicate that some kind of relationship exists between two individuals. Hepatitis C is largely spread through the sharing of drug-related equipment such as syringes, where the virus may persist for several hours or even longer than a day. Our model will directly track the number of infected and uninfected pieces of equipment that each individual owns and potentially shares. This will allow for a precise assessment of the benefits of programs that seek to remove infected equipment from a population, either by means of some form of exchange, as in Needle Exchange Programs, or by distributing clean equipment in an effort to bolster the circulation of uninfected equipment. The network attempts to model a community of injection drug users (IDUs) where two individuals have the potential to share their equipment if they are linked by an edge. Each individual is assigned a variety of attributes such as their age, how frequently they use drugs, how frequently they share with others, etc. The network is initialized with a certain set of connections between nodes, but as the simulation progresses some edges may break and new ones may be formed. We start off the simulation with only a certain small percentage of the population infected and, having adjusted the various parameters controling frequency of use and sharing, we can track the population of individuals and needles. In particular, we can determine what effects on the populations of infected individuals and needles are achieved by various adjustments of the parameters. Events in the model such as sharing and use of drugs are drawn randomly in order to approximate the random nature inherent to the dynamics of such systems. In order to make meaningful predictions, we run the simulation several hundred times, with various parameter sets and we can identify which parameters are most significant to the rise and fall of the infection. The model is written in Python, and we implement the NetworkX library to graph and modify the underlying network.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HCV_ABM

Our agent-based model (ABM) of the spread of Hepatitis C within a community of intravenous drug users keeps track of individuals (or agents) in the population, as well as the kind of connections that form between them. These agents and their connections are organized into a network diagram, where nodes represent agents and edges indicate that some kind of relationship exists between two individuals. Hepatitis C is largely spread through the sharing of drug-related equipment such as syringes, where the virus may persist for several hours or even longer than a day. Our model will directly track the number of infected and uninfected pieces of equipment that each individual owns and potentially shares. This will allow for a precise assessment of the benefits of programs that seek to remove infected equipment from a population, either by means of some form of exchange, as in Needle Exchange Programs, or by distributing clean equipment in an effort to bolster the circulation of uninfected equipment.

The network attempts to model a community of injection drug users (IDUs) where two individuals have the potential to share their equipment if they are linked by an edge. Each individual is assigned a variety of attributes such as their age, how frequently they use drugs, how frequently they share with others, etc. The network is initialized with a certain set of connections between nodes, but as the simulation progresses some edges may break and new ones may be formed. We start off the simulation with only a certain small percentage of the population infected and, having adjusted the various parameters controling frequency of use and sharing, we can track the population of individuals and needles. In particular, we can determine what effects on the populations of infected individuals and needles are achieved by various adjustments of the parameters. Events in the model such as sharing and use of drugs are drawn randomly in order to approximate the random nature inherent to the dynamics of such systems. In order to make meaningful predictions, we run the simulation several hundred times, with various parameter sets and we can identify which parameters are most significant to the rise and fall of the infection. The model is written in Python, and we implement the NetworkX library to graph and modify the underlying network.

Running the simulation

Run 'run_simulation.py' to run a single infection episode across the network. Specify episode lenth (in days) and probabilities/rates in the dictionary in 'parameters.py'. The model saves simulation data as pickles, such as the population of individuals and needles over time.

In 'parameters.py' set the value x in the dictionary {'identity' : x} to specify the directory where objects are saved. The pickling function 'save_obj()' saves to the folder 'obj/x' for the string specified by x. One will need to create the folder 'obj/x' first before saving to it.

About

Our agent-based model (ABM) of the spread of Hepatitis C within a community of intravenous drug users keeps track of individuals (or agents) in the population, as well as the kind of connections that form between them. These agents and their connections are organized into a network diagram, where nodes represent agents and edges indicate that some kind of relationship exists between two individuals. Hepatitis C is largely spread through the sharing of drug-related equipment such as syringes, where the virus may persist for several hours or even longer than a day. Our model will directly track the number of infected and uninfected pieces of equipment that each individual owns and potentially shares. This will allow for a precise assessment of the benefits of programs that seek to remove infected equipment from a population, either by means of some form of exchange, as in Needle Exchange Programs, or by distributing clean equipment in an effort to bolster the circulation of uninfected equipment. The network attempts to model a community of injection drug users (IDUs) where two individuals have the potential to share their equipment if they are linked by an edge. Each individual is assigned a variety of attributes such as their age, how frequently they use drugs, how frequently they share with others, etc. The network is initialized with a certain set of connections between nodes, but as the simulation progresses some edges may break and new ones may be formed. We start off the simulation with only a certain small percentage of the population infected and, having adjusted the various parameters controling frequency of use and sharing, we can track the population of individuals and needles. In particular, we can determine what effects on the populations of infected individuals and needles are achieved by various adjustments of the parameters. Events in the model such as sharing and use of drugs are drawn randomly in order to approximate the random nature inherent to the dynamics of such systems. In order to make meaningful predictions, we run the simulation several hundred times, with various parameter sets and we can identify which parameters are most significant to the rise and fall of the infection. The model is written in Python, and we implement the NetworkX library to graph and modify the underlying network.


Languages

Language:Python 99.3%Language:Shell 0.7%