Skip to content

Choice Model

buffer_threshold instance-attribute

buffer_threshold: float

buffer_time_alpha instance-attribute

buffer_time_alpha: float

buffer_time_beta instance-attribute

buffer_time_beta: float

dwm_tod instance-attribute

dwm_tod: list[float]

early_dep_beta instance-attribute

early_dep_beta: float

early_dep_offset instance-attribute

early_dep_offset: float

early_dep_slope instance-attribute

early_dep_slope: float

elapsed_time_alpha instance-attribute

elapsed_time_alpha: float

elapsed_time_beta instance-attribute

elapsed_time_beta: float

k_factor instance-attribute

k_factor: float

late_arr_beta instance-attribute

late_arr_beta: float

late_arr_offset instance-attribute

late_arr_offset: float

late_arr_slope instance-attribute

late_arr_slope: float

path_quality_alpha instance-attribute

path_quality_alpha: float

path_quality_beta instance-attribute

path_quality_beta: float

preferred_carrier_alpha instance-attribute

preferred_carrier_alpha: float

preferred_carrier_beta instance-attribute

preferred_carrier_beta: float

random_generator instance-attribute

random_generator: Generator

replanning_alpha instance-attribute

replanning_alpha: float

replanning_beta instance-attribute

replanning_beta: float

segment instance-attribute

segment: str

__init__

__init__(
    name: str,
    type: Literal["logit", "pods"],
    random_generator: Generator | None = None,
)

Create a choice model object.

Parameters:

  • name (str) –

    Name of the choice model.

  • type (Literal['logit', 'pods']) –

    Type of the choice model.

  • random_generator (Generator, default: None ) –

    Random number generator. If not provided, a default generator is used.

add_parm

add_parm(
    name: str, value: float, value2: float = 0
) -> None

Add a parameter value to the choice model

get_dwm_penalty

get_dwm_penalty(
    choice_model: ChoiceModel,
    distance: int,
    startTime: int,
    endTime: int,
    path: Path,
    reference_fare: float,
    debug: bool,
) -> float

Get DWM penalty - used for Unit Tests

get_midpoint

get_midpoint(z_val: float) -> float

Get decision window midpoint - used for Unit Tests

get_time_disutility

get_time_disutility(
    dmd: Demand, path: Path, debug: bool
) -> float

Get time (short connection and/or long elapsed) penalty - used for Unit Tests

get_window

get_window(
    dmd: Demand, midpoint: int, distance: int, z_val: float
) -> tuple[int, int]

Get decision window start & end - used for Unit Tests

serialize

serialize() -> dict

Get all parameter values from the choice model.