Skip to content

voiage.clinical_trials.VOIBasedSampleSizeOptimizer

Legacy heuristic sample-size optimizer.

This compatibility surface combines power and QALY heuristics with study cost. Its outputs are not governed EVSI, COSS, or EVSI/EVPI efficiency. New analyses should use :func:voiage.experimental.calculate_coss with explicitly estimated EVSI values and a declared study-design context.

calculate_voi_per_participant([positional or keyword] self: None = None, [positional or keyword] treatment: Treatment = None, [positional or keyword] sample_size: int = None) -> jnp.ndarray

Calculate the value of information gained per additional participant.

Args: treatment: Treatment being tested sample_size: Current sample size

VOI per additional participant

Parameters:

  • self
  • treatment Treatment
  • sample_size int

Returns: jnp.ndarray

optimize_sample_size([positional or keyword] self: None = None, [positional or keyword] treatment: Treatment = None, [positional or keyword] min_sample_size: int = 30, [positional or keyword] max_sample_size: int = 1000, [positional or keyword] cost_per_participant: float = 1000.0) -> dict[str, Any]

Optimize sample size based on VOI analysis.

Args: treatment: Treatment being tested min_sample_size: Minimum acceptable sample size max_sample_size: Maximum feasible sample size cost_per_participant: Cost to include one participant

Legacy heuristic optimization results. The retained voi_efficiency key is total heuristic value divided by total cost; it is not dimensionless EVSI/EVPI efficiency.

Parameters:

  • self
  • treatment Treatment
  • min_sample_size int (default: 30)
  • max_sample_size int (default: 1000)
  • cost_per_participant float (default: 1000.0)

Returns: dict[str, Any]