voiage.schema.DecisionProblem
Represents a canonical Decision Problem (DecisionProblemV1).
Attributes
Section titled “Attributes”decision_problem_id : str Stable identifier for the decision problem. title : str Short human-readable title for the problem. willingness_to_pay : float Decision threshold used to calculate net benefit. Must be strictly positive. interventions : list[Intervention] Candidate interventions compared by the problem. currency : str, default=“USD” Currency code or symbol used for cost outputs (min length 3). analysis_type : str, default=“net-benefit-first” Analysis framework (must be “net-benefit-first”). outcome_names : list[str], optional Ordered list of outcome labels used by the problem.
Examples
Section titled “Examples”>>> from voiage.schema import DecisionProblem, Intervention >>> prob = DecisionProblem( … decision_problem_id=“prob_01”, … title=“Screening Decision”, … willingness_to_pay=50000.0, … interventions=[ … Intervention(intervention_id=“i1”, name=“No Screening”, is_reference=True), … Intervention(intervention_id=“i2”, name=“Annual Screening”), … ], … ) >>> prob.title ‘Screening Decision’
Methods
Section titled “Methods”to_dict
Section titled “to_dict”to_dict([positional or keyword] self: None = None) -> dict[str, object]Serialize decision problem to dictionary conforming to DecisionProblemV1 schema.
Parameters:
self
Returns: dict[str, object]
from_dict
Section titled “from_dict”from_dict([positional or keyword] cls: None = None, [positional or keyword] data: object = None) -> DecisionProblemDeserialize decision problem from dictionary.
Parameters:
clsdataobject
Returns: DecisionProblem