Warning: package 'downloadthis' was built under R version 4.3.3
Case Study: Healthy-Sick-Dead Disease Model
Introduction
This case study will build a decision model to analyze strategies to prevent and treat a noncommunicable disease.
For this hypothetical disease, these high-risk individuals start off healthy and can develop a chronic disease. They stay sick until death. Individuals also experience mortality from other causes.
A state transition “bubble” diagram of the model you will build is shown below:
Policy Decision Problem
Suppose there is a new treatment that can be taken to reduce the likelihood of disease progression. This treatment reduces the probability of death from disease, and slightly increases quality of life (higher utility) in the sick state. However, this is an expensive treatment.
The Ministry of Health has empowered your team to conduct an economic evaluation to investigate the costs and benefits of the status quo (i.e., do nothing) vs. adopting the use of treatment.
Model Parameters
Relevant model parameters are summarized in the tables below:
State Transition Probabilities
| Name | Value | Description |
|---|---|---|
| p_start_healthy | 1 | Annual probability of starting in the healthy state |
| p_sick | 0.6 | Annual probability of disease onset |
| p_death_oc | Age-dependent life table data. | Annual probability of death from other causes. |
| p_death_disease | 0.05 | Annual probability of death from disease. |
Costs
| Name | Value | Description |
|---|---|---|
| c_healthy | 0 | Annual (cycle) cost of healthy state. |
| c_sick | 3,500 | Annual (cycle) cost of disease state. |
| c_treatment | 40,000 | One-time cost of disease treatment (occurs at point of transition from Healthy to Sick). |
Quality of Life Adjustments
| Name | Value | Description |
|---|---|---|
| u_healthy | 1.0 | Quality-of-life (QoL) weight for healthy state. |
| u_sick | 0.842 | Quality-of-life (QoL) weight for sick health state. |
| u_sick_treated | 0.87 | Quality-of-life (QoL) weight for sick health state if treated. |
| u_dead | 0 | Quality-of-life (QoL) weight for death health states. |
Other Parameters
| Name | Value | Description |
|---|---|---|
| initial_age | 0 | Initial age of modeled cohort |
| rr_treatment | 0.60 | Treatment Strategy: Relative risk reduction in probability of death from disease. |
| r_disc_health | 0.03 | Annual discount rate: health outcomes. |
| r_disc_cost | 0.03 | Annual discount rate: cost outcomes. |
| t | 110 | Horizon of the model |
Building a model from Scratch
Once you open Amua, you will see the “Model” drop-down at the top of the screen. From the menu, select New > Markov Model. It is important that you select a Markov model as Amua does not allow you to copy and paste between decision trees and Markov models.
You will get a screen with just a red square. This is your decision node. To add a strategy to the model, you will need to click on the red square and then select the Markov chain button () on the top menu. This allows you to start creating a markov model. To add a health state, click on the Markov chain in your model to highlight it red. Then select the Markov state button (
) on the top menu.
Status Quo Scenario
Now that you know how to create a Markov model. Your first objective is to build a status quo or “do nothing” strategy based on the description and parameters defined above. This is a strategy in which there is no additional treatment.
To get you going, we have built out the beginnings of a model based on an alive-dead model with age-specific background mortality rates. The image below shows the structure of this model:
Pre-Built Alive/Dead Model
We have already added in some components of the model. Here are the steps we did for you in this model.
Created a basic alive/dead markov Model
Set the model horizon uses the built in Amua variable “t”, which tracks the number of runs through the model. Under the Markov chain icon (
), you will need to define when the model terminates. To do this use
t==110for a horizon of 110.Set the outcomes to Cost and QALE just like in the decision tree. To do this use, Model -> Properties -> Analysis. Use the blue plus sign (
)to add QALE. You can use Q as the symbol and round on 4 decimals. Click
to apply.
Added in parameters from the parameter chart. To add more parameters, use the plus sign above the parameter menu (
). Each parameter needs a name and an expression.
Added tables for mortality. We will walk through adding a table in the DALYs Markov session.
Created a variable. (Parameters are fixed values and Variables are dynamic values).
p_death_occalculates the death from all causes using the mortality table. It uses the formulatbl_p_die_oc[initial_age + t, 1]which select index 1 (the mortality rate) based on theinitial_age + t(which represents their current age) fromtbl_p_die_oc.
Add Health States and Transitions
When you reach the end of the branch, select the chance node you would like to turn into a state transition, right click, select Change to State Transition. This will give you the blue arrow
. On the right of this arrow, you can find a dropdown menu with the different health states you specified. Select the health state this part of the cohort will transition to.
With this button
you can align the end nodes.
Your Markov model should now look like this:
Define Transition Probabilities
After inputting the transition probabilities, your Markov model should look like this:
Define Outcomes
Go to Model > Properties > select the Analysis tab.
Check that you have the outcomes for costs ($) and QALE (Q)
The “Analysis Type” should be set to Expected Value (EV)
Make sure the objective is to maximize. In QALYs, high values represent higher quality of life.
Next, in the model itself, define the following cycle-specific payoffs based on the values in the tables above. Many of these parameters are already defined for you in the parameters tab in the Amua model:
Costs and QALE in Healthy state
Costs and QALE in the Sick state
There are no costs or QALE for the Dead state
After inputting the outcomes, your Markov model should look like this:
Define Cycle Adjustments and Discounting
- Go to Model > Properties > select the Markov tab.
- Select the “Half-Cycle Correction” option.
- Select the “Discount Rewards” option and enter the discount rates shown in the tables above.
- Click “OK”
Treatment Strategy
Our next objective is to build out the treatment strategy. Fortunately, we have already done most of the work to add them – we just need to copy and paste the Status Quo strategy, then adapt with additional parameters as needed.
Treatment Strategy
Right click on the
Markov symbol next to the Status Quo strategy name, then select “Copy”
Right click on the red square and select “Paste.” This will create a copy of the Status Quo strategy. Hit the OCD button to organize things again
Rename the new strategy to “Treatment” and adapt the transition probabilities using the prevention strategy parameters defined in the tables above (and in the Amua model parameters).
- Make sure to multiply
p_death_diseaseby the relative risk reduction each time it appears in the branches!
- Make sure to multiply
Update the quality of life adjustments for the sick state using
u_sick_treatedInclude the one-time treatment cost at the time of transition from healthy to sick (see below)
After inputting the outcomes, your treatment branch should look like this:
Cost-Effectiveness Analysis
Now that we have a working model with outcomes, we can run a cost-effectiveness analysis. For this model, let’s assume a willingness-to-pay threshold of $50,000/QALY.
We will need to go back to the outcomes (Model > Properties > Analysis) and reset the analysis type to Cost Effectiveness Analysis (CEA). Fill in the remaining inputs for the analysis.
