Unsure

Project completed November 25, 2017

alt

Complex models, such as those used to estimate travel demand, can take hours or even days to run. Such runtimes may be tolerable for producing single expected-value results. However, clients often request a distribution of potential outcomes that captures the inherent uncertainty of the model’s inputs. A modeler could theoretically generate such a distribution by re-running the model across all combinations of possible input values, but such an approach would likely be cost-prohibitive.

Unsure is a light-weight tool to generate a probability distribution of outputs with minimal model runs. The user runs the model for two or more values of each input variable and uploads the results as a table. A script calculates the elasticity of the dependent variable with respect to each input variable, and then represents the model in the form of a Cobb-Douglas function. In the default example, a model for transit ridership (R) is based on the employment rate (EMP), number of households (HH) and travel time (TT). The Cobb-Douglas function has the following form, where the Greek exponents are the calculated elasticities:

\[R = a * EMP^\alpha * HH^\beta * TT^\gamma\]

The user then uploads a table that defines the probability distribution of each input variable. For each combination of input variables, a script calculates the probability of the scenario occurring and estimates the model output using the Cobb-Douglas function. The results are plotted as a cumulative distribution.

alt

The user can view a slice of the results, shown as red dots on the plot, associated with a particular value of a chosen input variable.

alt

To incorporate the analysis into a report, the user can view and export a table of the simulated results.

alt

Unsure is completely agnostic to the model size or purpose. Keep in mind, though, that the Cobb-Douglas approximation won’t capture non-linear interactions between input variables.

Fork Me on GitHub