Case Study: Decision Tree in Amua
Why Amua?
Amua is a free, open-source modeling framework and probabilistic programming language developed by Dr. Zach Ward at Harvard University. It allows you to build decision trees, Markov models, and microsimulation models. It is designed to be user-friendly and flexible, making it a great choice for health economics modeling.
Amua compared to other common modeling platforms
Getting started
You will first need to install Java (1.8 or later) & download Amua. Follow the directions here.
To get you started with Amua, we will use the following case study (a stylized decision problem). If interested, you can also check out this comprehensive online tutorial.
Case Study
Introduction and Learning Objectives
By the end of this session, participants will be able to:
Build and structure a decision tree model in Amua to represent clinical decision problems.
Define and parameterize key inputs (e.g., probabilities, outcomes, and costs) within the Amua software.
Evaluate model outcomes, such as expected quality-adjusted life expectancy (QALE), for alternative clinical strategies.
Conduct deterministic sensitivity analyses including one-way and threshold analyses to examine decision thresholds and model robustness.
Add and compare multiple strategies (e.g., diagnostic testing options) in a single decision framework.
Perform cost-effectiveness analysis (CEA) and interpret incremental cost-effectiveness ratios (ICERs) and net monetary benefit (NMB).
Use Amua’s built-in tools to explore how variation in parameter values affects the preferred strategy under a given willingness-to-pay (WTP) threshold.
Overview of Decision Problem
Consider the case of a suspected pulmonary embolism (PE). A 67-year-old woman who underwent hysterectomy and lymph node dissection for sarcoma two days ago now presents with chest pain, rapid breathing, and increased pulse rate, but without clinical signs of a blood clot in the legs (deep venous thrombosis) and an indeterminate result on the ventilation-perfusion (V/Q) scan.
You must decide whether to treat her with anticoagulation (AC). You estimate the following probabilities for this patient: You estimate the following probabilities for this patient: Should you decide to place her on AC, her chance of a fatal bleed, if she has no PE, is 0.04. If she does have a PE, the combined probability of dying from hemorrhage or fatal PE if she receives AC is 0.05. If, however, she has a PE, but AC is withheld, you predict a mortality probability of 0.25. The prior probability of disease in a patient with this constellation of symptoms is 0.19.
Assume that the patient has a quality-adjusted life expectancy (QALE) of 5 QALYs if she truly has PE and survives without recurrence and a bleed, and that she has 7 QALYs if she has no PE and no hemorrhage. Please note that we also assume that the QALE related to PE does not differ by receipt of AC. Further, assume that death from either PE or hemorrhage occurs immediately after your therapeutic decision (i.e., QALE = 0).
The decision tree is below:
Step 1: Construct a decision tree in Amua
- Create a new model in Amua: In Amua, on the menu at the top, go to Model -> New -> Decision Tree.
Now, construct the decision tree above in Amua.
Please use the names for the parameters as described in the table below.
You can enter the values of the parameters in the expression box (click the
button on the right-hand side panel, screenshot below). In this assignment, the expression is a scalar, and thus the expected value is identical. In other situations, an expression can be an equation, and the value from the expression is shown in the expected value box after clicking “evaluate”.
Use “C” for the complementary probability (1 – the probability of an event) for the branch stemming out from the same chance node (example below).
For the terminal nodes, use the corresponding QALE for each path.
With the Align Right button
, followed by OCD, you can align all terminal/transition nodes to the far right.
| Amua parameter name | Math notation | Parameter description | Value |
| p_PE | P(Pulmonary embolism) | Prior probability of having PE | 0.19 |
| p_die_AC_PE | P(Die|AC+, PE+) | Probability of dying while on AC, with PE | 0.05 |
| p_die_AC_noPE | P(Die|AC+, PE-) | Probability of dying while on AC, without PE | 0.04 |
| p_die_noAC_PE | P(Die|AC-, PE+) | Probability of dying without AC, with a PE | 0.25 |
After completing the structure and defining the probabilities and payoffs, your tree should look like this:
Step 2: Run the Model
After the tree is completed, run the model by clicking the button.
Step 3: Sensitivity analyses
Now perform a threshold analysis to find the threshold value for p_PE (prior probability of the patient having PE), where you would be indifferent between the two strategies, AC and no AC.
To perform the analysis, go to Run -> Sensitivity Analysis -> Threshold Analysis. Select the parameter p_PE and set the min to 0 and the max to 1. Strategy 1 should be AC, strategy 2: No AC, the Outcome: QALE, and you need 10 intervals. Make sure you select the row with parameter p_PE before you click Run. What is the threshold value for p_PE?
Step 4: Add a third strategy
Now add a third strategy of performing an angiogram, in addition to AC and no AC. Performing an angiogram will give you perfect diagnostic information, but the test has a mortality risk of 1% (p_die_Angio). With this diagnostic information, you can make sure that those diagnosed with PE get AC and those not having PE do not receive AC.
Add this strategy to your tree and this strategy should look like:
Step 5: Cost-effectiveness analysis
As a reminder: Net Monetary Benefit (NMB) = QALYs * WTP - Cost
An angiogram costs $1,000, and treatment with anticoagulants costs $500. Add this information to your tree using the parameters c_Angio and c_AC to define costs at the terminal nodes.
Perform a cost-effectiveness analysis by clicking Run Model and check out the CEA Results report.
Step 6: Sensitivity analyses on CEA
Now, we would like to perform a Benefit-Cost analysis using Net Monetary Benefit. Go back to Model -> Properties -> select the Analysis tab and change the Analysis type into a Benefit-Costs Analysis (BCA). Use Costs as the Cost, QALE as the Benefit, and $20,000/QALY as the WTP.
[After the DALY lecture] Step 7: Add a DALY Dimension
We now want to add a new outcome dimension: DALYs (Disability-Adjusted Life Years). DALYs are a measure of disease burden, where 0 = perfect health and 1 = death per year lost. For this model, we will assume we have estimated DALYs available for each terminal node.
Instructions:
In Amua, go to Model → Properties → Analysis tab.
Add a new dimension:
Dimension: DALYs
Symbol: D
Decimals: 2
Click
Refresh
Because DALY is a gap measure, change the objective to minimize DALYs (analogous to maximizing QALYs)
We can now return to the tree and enter DALY values at each terminal node
| Clinical State | DALYs Lost | Notes |
|---|---|---|
| Survive, no PE | 0 | No loss due to disability or premature death |
| Survive, PE, no AC | 2.5 | Higher morbidity (e.g., long-term dyspnea, CTEPH risk) |
| Survive, PE, with AC | 1.2 | Some morbidity, but AC reduces complications |
| Dead (from PE or hemorrhage or angiogram) | 7.0 | Full loss of expected healthy life years |
You can apply these DALY values to terminal nodes in Amua accordingly. Your tree should like this:
Now, you’re ready to perform a cost-effectiveness analysis with DALYs as the outcome!
Click Run Model and check out the CEA Results report.
