Skip to content

voiage.cli.calculate_structural_evpi

calculate_structural_evpi([positional or keyword] config_file: Path = typer.Argument(..., exists=True, file_okay=True, dir_okay=False, readable=True, help='Path to JSON config file defining model structures'), [positional or keyword] population: float | None = typer.Option(None, '--population', help='Population size for population-adjusted structural EVPI'), [positional or keyword] discount_rate: float | None = typer.Option(None, '--discount-rate', help='Annual discount rate (e.g., 0.03)'), [positional or keyword] time_horizon: float | None = typer.Option(None, '--time-horizon', help='Time horizon in years'), [positional or keyword] output_file: Path | None = typer.Option(None, '--output', '-o', help='File to save structural EVPI result')) -> None

Calculate Structural Expected Value of Perfect Information (SEVPI).

Structural EVPI quantifies the expected gain from knowing with certainty which model structure is the most appropriate one. The config file should be a JSON file with the following format:

\b { “structures”: [ { “name”: “model_a”, “probability”: 0.6, “net_benefits_file”: “net_benefits_a.csv” }, { “name”: “model_b”, “probability”: 0.4, “net_benefits_file”: “net_benefits_b.csv” } ] }

Calculate structural EVPI from a JSON config:

.. code-block:: bash

voiage calculate-structural-evpi structural_config.json

Parameters:

  • config_file Path (default: typer.Argument(..., exists=True, file_okay=True, dir_okay=False, readable=True, help='Path to JSON config file defining model structures'))
  • population float | None (default: typer.Option(None, '--population', help='Population size for population-adjusted structural EVPI'))
  • discount_rate float | None (default: typer.Option(None, '--discount-rate', help='Annual discount rate (e.g., 0.03)'))
  • time_horizon float | None (default: typer.Option(None, '--time-horizon', help='Time horizon in years'))
  • output_file Path | None (default: typer.Option(None, '--output', '-o', help='File to save structural EVPI result'))

Returns: None