Skip to content

Releases: pph-collective/TITAN

v1.2.4

10 Nov 15:27
55ab07c
Compare
Choose a tag to compare

Fixes

  • Restricts tasks per child to one, preventing processing from drifting
  • Makes population for syringe services test all PWID to better test if the feature is working.

v1.2.3

28 Oct 18:07
4ae5bc6
Compare
Choose a tag to compare

Fixes

  • Restricts tasks per child to one, preventing processing from drifting
  • Makes population for syringe services test all PWID to better test if the feature is working.

v1.2.2

16 Oct 15:14
beb5b2f
Compare
Choose a tag to compare

v1.2.2

Fixes

  • Floating point error on input parameters by rounding all incoming params to the nearest millionth
  • Only mark agents as random trial treated if they are actually enrolled in PrEP

v1.2.1

15 Sep 15:37
af390f6
Compare
Choose a tag to compare

v1.2.1

Fixes

  • When an agent dies in HIVModel.die_and_replace, they are now replaced with an agent of the same drug_type - previously the drug_type was determined at random from the parameters on replacement.

doi_generate

23 Sep 16:02
af390f6
Compare
Choose a tag to compare

This is a dummy release to link with zenodo for DOI generation

v1.2.0

11 Sep 15:48
0752476
Compare
Choose a tag to compare

v1.2.0

License and repository status

  • License file updated to reflect GNU GPL v3
  • Repository now public

Documentation

  • Updates docstrings to the Google style
  • Adds documentation and deploys github page at marshall-lab.github.io/TITAN
  • Adds action for continuous deployment of docs on push to main

Features

  • Adds location to the model, enabling scaling or override of parameters depending on agent's assigned location
  • Agents now store their (location-specific) parameters
  • Adds location edges, currently unused
  • Standardized terminology and use of start times/stop times for agent attributes
  • Moves creation of weights for agent initiation to a method

PrEP

  • Allows array of PrEP models, enabling more flexible eligibility criteria
  • Adds method to determine if agent is a man who has sex with men, per CDC criteria
  • Removes unused "prep reason" feature
  • Updates criteria for the CDC prep target
  • Adds prep targets for PWID

v1.1.0

19 Aug 18:18
864938d
Compare
Choose a tag to compare

v1.1.0

Settings

  • Scott County setting now accurately reflects the real-world setting in the time period from 2010-2020

Parameters

  • Distributions defined in classes and can take a variable number of arguments
  • Classes can now be used as validation items for other parameters
  • See params app for parameter definitions and documentation

Partnering

  • Agents can now attempt to partner with only the agents in their network component with params.partnership.network.same_component.prob

Features

  • Parameters can now be scaled based on the timestep in the model with params.timeline_scaling
  • HIV interaction and assignment can be set to start at any time step
  • Reports can now aggregate by customizable classes with params.outputs.classes
  • Population can be saved to files and also uploaded from files and re-used across runs
  • Syringe services program may now be implemented flexibly in time
  • Partner tracing now allows user-defined probabilities for tracing separately from the probability of PrEP initiation, as well as user-defined tracing period length
  • prints_components report added fields for random trials. Now prints component status for no intervention, intervention components, and intervention components with no eligible agents status.
  • the agent_zero criterion can now be defined based on number of partnerships that share a user-defined interaction type

Batch Submission

  • --savepop and --poppath added as arguments to run_titan.py to respectively allow saving of a population after creation (but before run), or loading a saved population to run (the equivalent flags in subTitan.sh are -p and -P)

Technical Notes

  • population added as an attribute of agent - lightly used currently
  • Output writing abstracted/reorganized to make common report building steps re-usable
  • Distributions can be any numpy distribution (just add to params.classes.distributions) or a distribution in distributions.py
  • Added interaction type to edge list
  • Renamed initialize_graph to trim_graph

v1.0.0

04 Jun 16:36
c6dd2c3
Compare
Choose a tag to compare

New

Settings

  • All settings except Chicago, Scott County, and Atlanta have been deprecated
  • Scott County is uncalibrated in its current form. It is meant to be used with a CSV calibration file

Parameters

  • Parameters now given as .yml files separated by setting and intervention
  • Injection transmission now given as flexible distribution instead of bins
  • Race is now a definition, not restricted to black/white
  • Sexual orientation, sex, and gender now user-defined, allowing cis/trans agents and combinations of possible sex partners
  • Drug use (Inj, NonInj, None) now defined as percentage of race/orientation
  • See params app for parameter definitions and documentation

Partnering

  • Loop through all agents to find partners with customizable "break point"
  • Allow customizable distributions for target partner number and duration, separated by bond types
  • Bond types are now flexible and user-defined. Interactions are determined per bond type.

Features

  • Agent 0 abstracted to allow user-defined bond type and number of bonds
  • Condom use is definable by agent race, orientation/gender, and PWID status
  • Death by risk factors now works as a scale on a base rate (defined on orientation, race, and PWID status)
  • Syringe exchange overhauled to allow implementation and discontinuation and linear increase/decrease over time period
  • Assortative mixing abstracted to allow variable definitions, based on any agent attribute

Batch Submission

  • Parameters can now be swept as command-line inputs or given by CSV files
  • Setting and intervention given separately as command-line inputs
  • Distributed sweeps/runs

Technical Notes

  • Now pypy compatible (removed scipy dependency)
  • Agent sets now sets
  • Integration tests split into stochastic and deterministic, stochastic allowed to fail
  • Parameter error checking implemented
    run_titan runs models in parallel if more than 1 core available (-c flag in batch script)
  • Results folder can now be any arbitrary directory
  • Various language updates to better reflect epi usage

v0.2.0

17 Feb 14:37
f0941fb
Compare
Choose a tag to compare

New And Improved

  • HIV vaccination and boosters added
  • Peer-change agent feature added
  • improved testing

Settings

  • Chicago created
  • Deprecated locations deleted

v0.1.0

12 Dec 20:44
752ceb7
Compare
Choose a tag to compare

New And Improved

  • PrEP allocation scenarios cleaned up, allocation by race added
  • Vaccine added; allows for co-occurring PrEP and vaccines with boosters for HVTN702 and RV144
  • Partial unit test coverage added

Fixes

  • Removed hardcoded probabilities to a separate file
  • Dead code removed
  • Certain non-working features removed