Skip to content

Commit

Permalink
fixed mxl option
Browse files Browse the repository at this point in the history
  • Loading branch information
rakow committed Jul 26, 2024
1 parent 5a82e8f commit fc2160c
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions src/main/python/choicemodels/estimate_biogeme_plan_choice.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
parser = argparse.ArgumentParser(description="Estimate choice model for daily trip usage")
parser.add_argument("--input", help="Path to the input file", type=str,
default="../../../../plan-choices-diverse_9-tt-only.csv")
parser.add_argument("--mxl-modes", help="Modes to use mixed logit for", nargs="+", type=set,
parser.add_argument("--mxl-modes", help="Modes to use mixed logit for", nargs="+", type=str,
default=["pt", "bike", "ride"])
parser.add_argument("--est-performing", help="Estimate the beta for performing", action="store_true")
parser.add_argument("--performing", help="Beta for performing", type=float, default=6.88)
Expand Down Expand Up @@ -66,10 +66,12 @@
BETA_PERFORMING = Beta('BETA_PERFORMING', args.performing, 1, 15, ESTIMATE if args.est_performing else FIXED)
BETA_PRICE_PERCEPTION = Beta('BETA_FIXED_PRICE_PERCEPTION', 1, 0, 1, ESTIMATE if args.est_price_perception else FIXED)

is_est_car = "car" in args.mxl_modes

for mode in ds.modes:

val = fixed_ascs.get(mode, 0)
status = FIXED if mode in ("walk", "car") or mode in fixed_ascs else ESTIMATE
status = FIXED if mode in ("walk", "car" if not is_est_car else "_") or mode in fixed_ascs else ESTIMATE

# Base asc
asc = Beta(f"ASC_{mode}", val, None, None, status)
Expand All @@ -94,6 +96,12 @@
B_UTIL_S = Beta('B_CAR_UTIL_SD', 1, 0, None, ESTIMATE)
B_CAR = B_UTIL + B_UTIL_S * bioDraws('B_CAR_UTIL_RND', 'TN')

# Use asc instead of car utility
if is_est_car:
print("Estimating car asc, instead of daily utility")
B_CAR = 0

print("Using MXL modes", args.mxl_modes)
U = {}
AV = {}

Expand Down

0 comments on commit fc2160c

Please sign in to comment.