Skip to content
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -94,28 +94,28 @@ Each blank cell represents a subpopulation with a stored count.
- Negative (0 y ago)
- Neg (1 y)
- Neg (2 y)
* - 60
* - 65
- Female
-
-
-
-
-
* - 60
* - 65
- Male
-
-
-
-
-
* - 61
* - 66
- Female
-
-
-
-
-
* - 61
* - 66
- Male
-
-
Expand Down Expand Up @@ -148,17 +148,17 @@ Each blank cell represents a subpopulation with a stored count.
Initializing the Population
+++++++++++++++++++++++++++

We initialize the susceptible population using the 2021 year forecasted population data :math:`P_{2021}` and the
We initialize the susceptible population using the 2023 year forecasted population data :math:`P_{2023}` and the
initial simulation "all states" Alzheimer's prevalence :math:`prev_{all}`. Our MSLT initial population is
:math:`P_{2021} * (1 - prev_{all})`. This equation represents the non-simulation population at the start of the
:math:`P_{2023} * (1 - prev_{all})`. This equation represents the non-simulation population at the start of the
simulation period.

The only adjustment needed is to modify the age group sizes. The initial population data :math:`P_Y` is from
GBD and age groups span five years, eg 60-64 year olds. To simplify our annual timesteps, we divide
these age groups into single year ages, eg 60 year olds, 61 year olds. We divide the five-year GBD
GBD and age groups span five years, eg 65-69 year olds. To simplify our annual timesteps, we divide
these age groups into single year ages, eg 65 year olds, 66 year olds. We divide the five-year GBD
age group populations by five to get single-year age group populations.

Since BBBM testing doesn't begin until 2030, the entire susceptible population is initialized to the
Since BBBM testing doesn't begin until 2027, the entire susceptible population is initialized to the
untested state.

Model Scale
Expand All @@ -177,7 +177,7 @@ tests and treatments.
We use an annual time step in order to best reflect our annual test rate targets.

On each time step, new simulants must be added to the MSLT. The only way to enter the MSLT is to turn
60 years old, since it models all 60-80 year-olds who are not in the Vivarium simulation (see below for more details).
65 years old, since it models all 65-80 year-olds who are not in the Vivarium simulation (see below for more details).

The existing populations must be aged one year, and those who transition to preclinical AD or die must
be removed.
Expand Down Expand Up @@ -207,45 +207,49 @@ in the following sections.
* - Neg (1 y)
- On the next time step simulants will move to the negative 2 years ago state.
* - Neg (2 y)
- On the next time step 33% of simulants will be tested and move to either the positive state or negative 0 years ago state. The remaining 67% will move to negative 3 years.
* - Neg (3 y)
- On the next time step 50% of simulants will be tested and move to either the positive state or negative 0 years ago state. The remaining 50% will move to negative 4 years.
* - Neg (4 y)
- On the next time step simulants will move to either the positive state or negative 0 years ago state.


Adding New Simulants
--------------------
We add the new susceptible 60 year old population on each time step using the same data sources
We add the new susceptible 65 year old population on each time step using the same data sources
from initialization, for the year of the current MSLT time step. For time steps after 2050, when our forecasted
population data ends, we continue to intitialize new 60 year olds using the 2050 data.
population data ends, we continue to intitialize new 65 year olds using the 2050 data.

In other words, the overall population is :math:`P_Y * (1 - prev_{all})`.
We use the 60-64 year old subpopulation and divide it by 5 to get a 60 year old population.
We use the 65-69 year old subpopulation and divide it by 5 to get a 65 year old population.

The current time-specific test rate will determine the fraction of the incident 60 year old population which
The current time-specific test rate will determine the fraction of the incident 65 year old population which
will be tested - the rest will be initialized to the untested state.

Updating Age Groups
-------------------

On each time step, the table rows corresponding to each age are copied to the next age, eg 60 year olds males become
61 year olds. 80 year olds are removed from the table and no longer tracked.
On each time step, the table rows corresponding to each age are copied to the next age, eg 65 year olds males become
66 year olds. 80 year olds are removed from the table and no longer tracked.


Mortality
---------

Some fraction of the susceptible, 60-79 year old population dies each year. We calculate an
Some fraction of the susceptible, 65-79 year old population dies each year. We calculate an
age, year, sex and location specific background mortality rate from the year-specific forecasted ACMR
and 2021 CSMR from the artifact. ACMR forecasts end in 2050.
and 2023 CSMR from the artifact. ACMR forecasts end in 2050.

:math:`\text{mortality}_{\text{age}, \text{year}} = \text{ACMR}_{\text{age}, \text{year}} - \text{CSMR}_{\text{age}, \text{2021}}`
:math:`\text{mortality}_{\text{age}, \text{year}} = \text{ACMR}_{\text{age}, \text{year}} - \text{CSMR}_{\text{age}, \text{2023}}`

On each time step we apply this background mortality rate to all
subpopulations in our table of susceptible 60-79 year olds, without varying by test or treatment status.
subpopulations in our table of susceptible 65-79 year olds, without varying by test or treatment status.


Removing Simulants Incident to Alzheimer's
------------------------------------------

Some fraction of the susceptible, 60-79 year old population transitions from the susceptible state to the preclinical
Some fraction of the susceptible, 65-79 year old population transitions from the susceptible state to the preclinical
state each year. We use the ``cause.alzheimers.susceptible_to_bbbm_transition_count`` artifact key as our source for
age, year, sex and location specific transition counts. We divide these counts (which uses GBD age groups) by 5 to get
one-year age groups.
Expand All @@ -256,9 +260,10 @@ Removing the same number of simulants, but proportionally from all the states co

Updating Testing States
-----------------------
On each time step, simulants in the negative test states are advanced to the next negative test state. A fraction of
incident 60 year olds that are selected for testing based on the current test rate, along with all simulants in the
negative 2 years ago state from the previous time step. Additionally, a number :math:`U` of the untested state simualants are also
On each time step, simulants in the negative test states are advanced to the next negative test state or receive testing. Simulants get repeat testing uniformly between 3 and 5 years after their first test. To implement this, we have 33% of simulants in the negative 2 year group move to testing and the rest move to the negative 3 year bucket. Then 50% of people in the negative 3 year bucket are tested and the rest more to negative 4 years. All simulants in negative 4 years are tested.

A fraction of
incident 65 year olds that are selected for testing based on the current test rate. Additionally, a number :math:`U` of the untested state simualants are also
selected for testing based on the increase in test rate compared to last year, :math:`\Delta_{\text{test_rates}}`:

:math:`U = \Delta_{\text{test_rates}} * \text{total_age_pop}`, where :math:`\text{total_age_pop}` is the sum of all simulants
Expand All @@ -269,10 +274,10 @@ Testing, Treatment and Observers
--------------------------------

Once the total number of people selected for testing on the time step is determined from the various sources
(incident 60 year olds, negative 2 years ago and untested), tests are conducted.
(incident 65 year olds, negative 2 years ago and untested), tests are conducted.

Per the test parameters from the client, the BBBM test has a 90% specificity. We move 90% of the simulants to the negative
0 years ago state and 10% to the positive state.
Per the test parameters from the client, the BBBM test has a 99.8% specificity. We move 99.8% of the simulants to the negative
0 years ago state and 0.2% to the positive state.

Based on the location- and year-specific :ref:`treatment initiation rate <alzheimers_intervention_treatment_data_table>`,
we observe the number of treatment initations.
Expand Down Expand Up @@ -305,7 +310,7 @@ The below table summarizes the variables, data values and sources.
- Year-specific All Cause Mortality Rate
- Artifact ACMR key
* - CSMR
- 2021 Cause Specific Mortality Rate
- 2023 Cause Specific Mortality Rate
- Artifact CSMR key
* -
- Susceptible to Preclinical Transition Counts
Expand Down