RM Optimizers

This vignette examines swapping out optimizers for carriers in the Europa network.

import passengersim as pax

pax.versions()
passengersim 0.94
passengersim.core 0.94
cfg = pax.Config.from_yaml(pax.demo_network("europa"))
ex = pax.Experiments(cfg, output_dir=False)
@ex
def EEE(cfg: pax.Config):
    return cfg

Setup ProBP Experiments

@ex
def PEE(cfg: pax.Config):
    cfg.carriers["Brat"].rm_system = "P"
    return cfg


@ex
def EPE(cfg: pax.Config):
    cfg.carriers["Stroop"].rm_system = "P"
    return cfg


@ex
def EEP(cfg: pax.Config):
    cfg.carriers["Tapas"].rm_system = "P"
    return cfg


@ex
def PPE(cfg: pax.Config):
    cfg.carriers["Brat"].rm_system = "P"
    cfg.carriers["Stroop"].rm_system = "P"
    return cfg


@ex
def PPP(cfg: pax.Config):
    cfg.carriers["Brat"].rm_system = "P"
    cfg.carriers["Stroop"].rm_system = "P"
    cfg.carriers["Tapas"].rm_system = "P"
    return cfg

Setup UDP Experiments

@ex
def UEE(cfg: pax.Config):
    cfg.carriers["Brat"].rm_system = "U"
    return cfg


@ex
def EUE(cfg: pax.Config):
    cfg.carriers["Stroop"].rm_system = "U"
    return cfg


@ex
def EEU(cfg: pax.Config):
    cfg.carriers["Tapas"].rm_system = "U"
    return cfg


@ex
def UUE(cfg: pax.Config):
    cfg.carriers["Brat"].rm_system = "U"
    cfg.carriers["Stroop"].rm_system = "U"
    return cfg


@ex
def UUU(cfg: pax.Config):
    cfg.carriers["Brat"].rm_system = "U"
    cfg.carriers["Stroop"].rm_system = "U"
    cfg.carriers["Tapas"].rm_system = "U"
    return cfg

Run Experiments

out = ex.run(write_report=False)

╭────────────────────── Summary revenue statistics ──────────────────────╮
│                         Brat            Stroop             Tapas       │
│ Run   Samples     Mean  ~95% CI     Mean  ~95% CI     Mean  ~95% CI    │
│ EEE       900   943.2K   ±7,066   920.6K   ±7,443   292.5K   ±2,336    │
│ EEP       900   940.3K   ±7,109   920.2K   ±7,342   300.7K   ±2,850    │
│ PEE       900   982.8K   ±8,670   903.7K   ±7,029   293.3K   ±2,228    │
│ EPE       900   928.5K   ±6,703   961.1K   ±8,998   293.2K   ±2,195    │
│ PPE       900   964.1K   ±8,098   935.4K   ±8,207   292.9K    ±2.1K    │
│ UEE       900   989.5K   ±8,894   903.7K   ±7,098   291.5K   ±2,271    │
│ PPP       900   962.7K   ±8,014   930.7K   ±8,154   299.8K   ±2,552    │
│ EEU       900   941.1K   ±7,052   920.3K   ±7,386   301.5K   ±2,868    │
│ EUE       900   927.6K   ±6,740     968K   ±9,292     292K   ±2,217    │
│ UUE       900   968.4K   ±8,282   940.1K   ±8,412   290.5K   ±2,176    │
│ UUU       900   967.1K   ±8,237   936.2K   ±8,319   298.1K   ±2,613    │
│ Post-burn-in only · Approx. 95% CI for mean                            │
╰────────────────────────────────────────────────────────────────────────╯
out.fig_carrier_revenues()
out.fig_carrier_load_factors()
out.fig_carrier_yields()