Decision tree rollback

Set up, run, and review this analysis in Lifescio.

Supported analysis

Enter one root with parent −1, unique numeric node IDs and one parent for every other node. Kind 0 is terminal, 1 is chance and 2 is decision. Chance nodes average child outcomes using their probabilities; decision nodes select the child with greatest net monetary benefit.

Supported scope: The tree must be connected and acyclic, and each chance node’s children must sum to 1. Repeated disease cycles fit a state-transition model better. This is a decision-analysis tree, not a machine-learning classification tree.

Open this analysis

Prepare data and configure the analysis

Enter one numeric row per node in Tree nodes: node ID, parent ID, kind, probability, cost, and quality-adjusted life-years. Kind 0 is terminal, 1 is chance, and 2 is decision. Exactly one root uses parent −1; other parent IDs must exist.

A row's probability is used when its parent is a chance node. All children of that chance node must have nonnegative probabilities totaling one. Decision-node alternatives are compared by net monetary benefit. Costs and health outcomes are added at every visited node, so do not duplicate totals already included downstream.

Input reference (2 fields)

Enter your data and prespecified choices. Ranges include both limits. For table fields, use cell editing, Paste data, or Import CSV / TSV. Review whether the first imported row contains headings and map the source columns before applying the import. Empty numeric cells are not treated as zero. Open file is for an exported Lifescio analysis JSON file, not a spreadsheet.

InputFormatAllowed rangeGuidance
Tree nodesTable—

Kind: 0 terminal, 1 chance, 2 decision. Exactly one root with parent −1; all other nodes have one parent.

Columns in order: Node; Parent; Kind; Probability; Cost; QALYs.

Willingness to pay per QALYNumber0–10000000—

Run and review

  1. Give the analysis a descriptive name and review every example value. Record units, data preparation, and planning assumptions in Reproducibility & notes. For simulations, record the seed and replication or sampling settings.
  2. Choose Run analysis. Resolve input errors before interpreting output. In the connected app, a run uses a saved input revision; local preview runs need the page to stay open.
  3. Review Diagnostics for method limitations, warnings, and available numerical checks. A completed run means computation finished; it does not establish that the assumptions fit your study.
  4. Use the Result table selector to inspect each output. Editing inputs does not recalculate existing results: an earlier-input notice means you need to run again to obtain matching results.

Understand the outputs

Tree rollback lists each node's expected cost, expected health outcome, net monetary benefit, and selected child where a decision is made. The root row describes the overall modeled policy; intermediate rows explain its component decisions.

Rows are sorted by node ID, not necessarily by clinical time. A blank selected-child cell is expected for chance and terminal nodes. Changing willingness to pay may change which decision child is selected without changing the consequences of a particular terminal path.

Troubleshooting and common mistakes

Resolve duplicate IDs, missing parents, multiple roots, disconnected nodes, or cycles before running. Terminal nodes cannot have children; chance and decision nodes need at least one child. The tool supports at most 200 nodes.

A probability-total error belongs to the children of one chance node, not the whole table. If the root cost appears doubled, review node-level versus terminal rewards. This workflow does not infer event timing or automatically discount rewards.

After correcting inputs, run again and check that the results belong to the new input snapshot. Increasing simulation draws improves numerical precision only; it does not repair invalid data or an unsuitable model.

Save, compare, and export

In the connected app, Save analysis retains the inputs in your account. Run history lets you inspect earlier runs, each with the input revision it used. In local preview, Save analysis downloads an input file instead; download results before leaving the page.

Use Result + inputs for a JSON archive containing the completed result and its inputs, Download CSV for the selected result table, PDF report for a report, and a chart's SVG button for its figure. Table displays round to three decimals; CSV and JSON exports retain calculation precision. Use those values when assessing a result near a decision boundary.

To reopen an archive, select the matching analysis method and choose Open file. Imported inputs start a new draft; a result archive can also display its retained result. It does not attach itself to an existing account analysis or recompute the result. Save or run the imported draft when you want a new account record.