Delphos: A reinforcement learning framework for assisting discrete choice model specification
Organizations: CityAI Lab, Transport and Logistics Group, Delft University of Technology, The Netherlands · Choice Modelling Centre - Institute for Transport Studies, University of Leeds, England
Abstract
We introduce Delphos, a deep reinforcement learning framework for assisting discrete choice model specification process. Delphos aims to support the modeller by providing automated, data-driven suggestions for model specifications, thereby reducing the effort required to develop and refine utility functions. Delphos conceptualises model specification as a sequential decision-making problem, inspired by the way human choice modellers iteratively construct models through a series of reasoned specification decisions. In this setting, an agent learns to specify candidate model specifications by choosing a sequence of modelling actions, such as adding alternative specific constants, accommodating both generic and alternative-specific taste parameters, applying non-linear transformations to attributes, and including interactions with covariates. Each resulting candidate model is estimated and evaluated using a reward function defined by the modeller, which can reflect statistical model fit as well as behavioural expectations. Specifically, Delphos uses a Deep Q-Network to learn how individual specification decisions contribute to the eventual quality of the resulting model and, in turn, which sequences of modelling decisions tend to produce well-performing candidates. We evaluate Delphos on both simulated and empirical datasets using alternative reward functions. In simulated cases, learning curves, Q-value patterns, and performance metrics show that Delphos learns effective specification strategies while exploring only a small fraction of the feasible modelling space. We further apply the framework to two empirical datasets to benchmark and demonstrate its practical use. These experiments illustrate the ability of Delphos to generate competitive, behaviourally plausible models and highlight the potential of this adaptive, learning-based framework to assist the model specification process.
Figures & tables
| Modelling outcome | Formulation | Bound |
| Log-likelihood | ||
| AIC | ||
| BIC | ||
| McFadden’s pseudo- | ||
| Adjusted McFadden’s pseudo- |
| Experiment | |||||||
| Variable | Transf. | Taste | Transf. | Taste | Transf. | Taste | Covariate |
| ASC 1 | Linear | Linear | Linear | cov 1 | |||
| ASC 2 | Linear | Linear | Linear | cov 1 | |||
| Linear | Generic | Log | Specific | Linear | Specific | ||
| Log | Generic | Box-Cox | Generic | Log | Specific | cov 2 | |
| Linear | Generic | Linear | Specific | Linear | Generic | ||
| Exp | Model space | Models estimated by agent | Converged models | First recovery | Reward (last 100) | Reward |
| 1A | 8.19 | 1.89 | 97.42% | 1.46 | 0.611 | -0.002 |
| 1B | 8.19 | 2.34 | 98.45% | 1.63 | 0.753 | -0.009 |
| 1C | 1.59 | 3.92 | 78.48% | 3.73 | 0.654 | -0.023 |
| Search Metrics | In-Sample AIC | Out-of-Sample LL | ||||||
| #Param. | Converged | Time (min) | Mean ( std) | Best | Worst | Best | Worst | |
| Delphos | 22 ( 8) | 645 ( 65) | 24 ( 3) | 7,957 ( 394) | 7,454 | 9,128 | -879 | -1,073 |
| SA | 13 ( 7) | 1,344 ( 21) | 9 ( 2) | 8,431 ( 472) | 7,463 | 9,410 | -913 | -1,163 |
| VNS | 8 ( 4) | 1,443 ( 14) | 104 ( 23) | 8,843 ( 385) | 7,744 | 9,401 | -948 | -1,163 |
Appendix figures & tables8 assets
Supplementary material from the paper’s appendix.
Appendix
| Experiment | ||||||
| ASC 1 | ||||||
| ASC 2 | ||||||
| Hyperparameter | Level values |
| Number of hidden layers | |
| Hidden units per layer | |
| Learning rate | |
| Discount factor | |
| Replay buffer size | |
| Target network update frequency |
| Exp | L | U | BS | TU | E | AUC | Final–100 | ||
| - conf. 1 | 2 | 256 | 1e–4 | 0.99 | 5k | 10 | 50k | 0.552 | 0.612 |
| - conf. 2 | 3 | 256 | 1e–4 | 0.99 | 5k | 5 | 50k | 0.553 | 0.612 |
| - conf. 3 | 2 | 64 | 1e–4 | 0.99 | 10k | 10 | 5k | 0.538 | 0.611 |
| S 1 - conf. 4 | 2 | 64 | 1e–4 | 0.99 | 10k | 10 | 10k | 0.548 | 0.611 |
| - conf. 5 | 2 | 256 | 1e–4 | 0.95 | 10k | 5 | 30k | 0.538 | 0.610 |
| - conf. 1 | 2 | 128 | 1e–4 | 0.99 | 10k | 10 | 50k | 0.708 | 0.753 |
| Action ID | Operation | Variable | Transformation Type | Action |
| 0 | terminate | 0 | - | ( end ) |
| 1 | add | 1 | linear | ( add , 1, linear ) |
| 2 | change | 1 | linear | ( change , 1, linear ) |
| 3 | add | 1 | log | ( add , 1, log ) |
| 4 | change | 1 | log | ( change , 1, log ) |
| 5 | add | 1 | box-cox | ( add , 1, box-cox ) |
| Parameter | Transformation | Covariate | Value (Rob. s.e.) |
| age = 1 | |||
| age = 2 | |||
| age = 3 | |||
| age = 4 | |||
| age = 5 | |||
| age = 1 |
| Parameter | Transformation | Covariate | Value (Rob. s.e.) |
| edu = 1 | |||
| edu = 2 | |||
| edu = 3 | |||
| edu = 4 | |||
| edu = 5 | |||
| edu = 6 |
Discrete Choice Modeling
Discrete choice modeling studies how people select among alternatives and how preferences can be estimated from observed choices.
See all 44 papers