Dear Prof. Bierlaire and BIOGEME community,
I am a M.Sc. Engg. student. I’ve designed a stated preference survey with 12 hypothetical scenarios where respondents indicate their willingness to deliver parcels (Yes / Maybe / No) under different conditions. I am using an ordered logit model in BIOGEME to analyze the data.
ObjectiveEstimate an ordered logit model to evaluate how compensation, parcel size, and delivery hour affect users' willingness.
Data DescriptionEach respondent answered 12 scenarios, and the data includes:
id, age, gender, occupation, family income, family members, earning members, travel frequency, number of stations traveled, and responses to the 12 scenarios (Yes / Maybe / No, encoded as 3 / 2 / 1).
Utility Function:
V = asc + b_comp * comp + b_size * size + b_del_hour * del_hour
Coefficients and Thresholds:
b_comp = Beta('b_comp', 0.5, None, None, 0)
b_size = Beta('b_size', -0.5, None, None, 0)
b_del_hour = Beta('b_del_hour', -0.5, None, None, 0)
tau1 = Beta('tau1', 0, None, None, 0)
diff = Beta('diff', 0, None, None, 0)
tau2 = tau1 + diff
Choice Probability:
prob = models.ordered_logit(V, [1, 2, 3], tau1)
Panel Data Treatment:
database.panel("id")
logprob = log(PanelLikelihoodTrajectory(Elem(prob, choice)))
biogeme = bio.BIOGEME(database, logprob, removeUnusedVariables=False)
biogeme.modelName = "CS ordered Logit"
results = biogeme.estimate()
estimationResults = results.getEstimatedParameters()
The model runs and gives qualitatively correct results (expected signs for coefficients), but I would appreciate it if someone could verify whether:
My panel data structure and usage of PanelLikelihoodTrajectory is appropriate.
The thresholds (tau1, tau2) are defined and passed correctly for the ordered logit model.
The model correctly reflects the ordering of choices (Yes = 3, Maybe = 2, No = 1).
Any guidance or suggestions for improving this setup would be deeply appreciated.
Thank you for your time and support.
Best regards,
Ahmed Jarif
M.Sc. Engg. in Civil and Transportation Engineering
Bangladesh University of Engineering and Technology (BUET)