1 Introduction

Benenson et al. (2004) present two motivations for defining urban agents as a distinct group within the general class of autonomous agents:

  1. 1.

    urban agents often have a high degree of mobility resulting in rapidly changing spatial relationships.

  2. 2.

    to succeed, urban agents require a strong capability to perceive and adapt to the evolving urban environment shaped by neighboring agents.

Urban simulation is a particularly fertile domain for research in agent-based simulation since it requires modeling a large number of interdependent agents making sequential decisions within a small region. Agent-based models have been used specifically to recreate urban environments for a wide variety of domains including the following: (1) civil and environmental transportation analysis (Jin and Jie 2012), (2) geographic information systems (GIS) for visualizing patterns and trends in spatial areas (Jordan et al. 2012), and (3) archaeological studies of land site usage in ancient civilizations (Kohler et al. 2012).

Although these urban simulations do not necessarily have to model low-level physical interactions, incorporating spatial information and heterogeneity into agent-based models can improve our ability to draw conclusions about the behavior of complex systems in realistic environments, which may be different from conclusions drawn with artificial environments (Brown et al. 2005). With the inclusion of GIS to represent a spatially, georeferenced environment, the impact of human behavior patterns can be linked to specific spatial locations and when used correctly can provide a powerful tool for policy-makers and the public to understand the potential consequences of their decisions (Gimblett 2002).

Yet, modelers attempting to analyze a complex urban region face a similar problem to the six blind men touching an elephant, who describe the whole elephant based on touching it. Since none of the men can feel more than a single small part of the elephant—the tail, the ear, a tusk, the belly, the trunk, and the leg—they each bring back a different report. Footnote 1 In the same way, different modeling techniques are very likely to produce slightly different answers to the same question. This phenomenon poses problems when urban simulations are used to influence important public policy debates, regulatory decisions, and to guide resource allocation. For instance, the public debate about human influence on climate change has been shaped by a disproportionate level of discussion about minor discrepancies between predictions, while the general trend consensus between models has remained largely ignored (Edwards 1999).

In this article, we introduce a novel architecture for combining two powerful modeling techniques: agent-based models (ABM) and Markov chain Monte Carlo (MCMC) estimators. Although both of these methods have a long history of practical usage (summarized in the next two sections), they have weaknesses as well. ABMs can be used to simulate very complex social phenomena, but constructing easily reproducible agent-based models is difficult due to the possibility of emergent behaviors and lack of formal representation. According to Wilensky and Rand (2007), many ABMs, with the exception of a few classic models, have never been replicated by anyone but the original developer. It is difficult to bring mathematical analysis tools to bear on the problem, so instead, models are typically studied through empirical simulation studies (Hinkelmann et al. 2011). Yet, the results of the simulation study can vary considerably by changing the range, or even the step size, of just one or two variables (Niazi et al. 2009).

On the other hand, the MCMC simulation process can be described by a relatively simple set of mathematical equations and a resampling procedure; this methodology is sometimes referred as the most powerful idea in computational statistics (Press et al. 2007). The aim of the process is to approximate the posterior distribution of the model parameters based on the observed data. However, the selection of the proposal distribution can have a significant impact on model convergence. In cases where the proposal distribution is far from the desired posterior distribution, the algorithm may converge to a poor local minimum or require a long time to achieve convergence (Gilks et al. 1995). The nearer the proposal distribution is to the target distribution, the better the performance of the MCMC algorithm (Mengersen and Tweedie 1996). The reader can find more details about the role of proposal distribution in Andrieu et al. (2003).

To address this problem, we constructed an agent-based model to generate simulated data which is then used to initialize the proposal distribution of the MCMC. The combination of the two models, agent-based and MCMC, produces a more accurate result than either of the parent models and facilitates the MCMC convergence. An additional benefit is that manipulating the operation of an agent-based model can empower researchers with better intuitions about the reasons behind emerging group phenomena rather than merely observing the unfolding of a stochastic process (Oakes 2008). To demonstrate the strengths of this approach, we present a case study on modeling and predicting transportation patterns and parking lot usage on a large university campus.

This article is organized as follows. In the next section, we provide a brief overview of the related work in using agent-based models to guide public policy decisions. Section 3 introduces the MCMC family of methods. Then, we summarize the key elements of our urban simulation for forecasting transportation patterns and parking lot utilization in Sect. 4. Section 5 presents our hybrid approach for unifying agent-based and MCMC models. We conclude the article by presenting a detailed comparison of our method versus other similar modeling techniques.

2 Related work

Agent-based modeling has been used to analyze a variety of complex public policy-related scenarios, including climate change negotiations (Gerst et al. 2012), water management decisions (López-Paredes et al. 2005), and financial regulatory governance (Streit and Borenstein 2009). In general, ABMs are good at modeling a diverse population of rational, self-interested agents, allowing interesting social questions to be explored in simulation before enacting new laws. For instance, Garlick and Chli (2009) studied the effects of social influence and curfews on civil violence by creating an agent-based model that simulated the interactions between the police force and the community. Some social simulations explicitly model network interactions between agents; this is particularly useful when studying influence propagation (Maghami and Sukthankar 2012) and the self-repairing properties of insurgent terrorist networks (Ilachinski 2012). Social choice mechanisms can be studied using agent-based simulations as well as by game theory; for instance, Verella and Wardak (2008) examined the effects of external stimuli on collective opinion formation, in the context of voting decisions.

Alternatively, interactions between agents can be governed by a combination of spatial and social constraints; in these social systems, the behavior of the agents is strongly affected by other agents in their local physical neighborhood, which is easy to simulate, but often difficult to predict analytically. Examples of systems possessing these characteristics include traffic and crowd evacuation simulations, which are heavily influenced by geographic considerations. To compare the effectiveness of simultaneous and staged evacuation strategies in different road network structures, Chen (2003) designed an agent-based simulation that shows the collective behaviors resulting from the interactions of individual vehicles during an evacuation. Human behavioral data can be added to the emergency evacuation and egress model to build a more realistic, and consistent agent-based model was done by Pan et al. (2007).

In contrast to crowd evacuation scenarios which are often used to prepare for unique disaster situations, traffic simulations are designed to characterize the effects of repetitive behaviors. Klügl and Bazzan (2012) outline five advantages agent-based methodologies have over other types of traffic-related simulations including the following: (1) ease of modeling bottom-up decision-making, (2) capacity for imbuing entities with learning and adaptive behavior, and (3) simplicity of generating a population with heterogeneous behaviors. Also, it is often feasible to gather survey and GPS data to verify the predictions of traffic simulations.

Based on detailed trip survey data from seven Traffic Analysis Zones (TAZs) in Ottawa, Canada, Jin and White (2012) present an agent-based model for analyzing the influence of neighborhood design on daily trip patterns. In Dia (2002), results obtained from a behavioral survey of driving behaviors were used to identify and fit a series of agent behavior parameters defining driver characteristics, knowledge, and preferences; the authors also present a case study implementing a simple agent-based route choice decision model within a microscopic traffic simulation tool. However, neither of those works presents a systematic evaluation of different modeling techniques through comparison with independently collected data. In our research, a physical path planning system for modeling driving and walking is used to supplement the activity-based microsimulation that governs agent behavior selection. The model is seeded with a combination of demographic information and survey data, and compared against independently collected results. A detailed review of the applications of agent-based modeling specially in modeling traffic and transportation patterns can be found in Chen and Cheng (2010).

ABMs have been successfully employed in a variety of water management tasks (Barreteau et al. 2012; Gailliard et al. 2012). Water management, an important aspect of urban management, is affected by geography, weather patterns, and human behavior, and is additionally complicated by interdependencies between communities that share the same watershed area. López-Paredes et al. (2005) introduced an agent-based simulator called FIRMABAR for integrated freshwater assessment of the Valladolid metropolitan area. The simulator provides the policy-makers with a tool to evaluate alternative water policies in different scenarios.

Similar simulations can be used to study the combined impact of climate change and human behavior on sustainable ecosystems. Hailegiorgis et al. (2010) presented an agent-based system for modeling interactions between climate change and conflict among herders in east Africa. ENGAGE is an agent-based model that was introduced by Gerst et al. (2012) to simulate the impact of locally heterogeneous policy preferences and constituent choice on climate change negotiation at the international level. A review of related work in this area can be found in Balbi and Giupponi (2009).

In summary, agent-based models can be used to illuminate policy-makers on the ramifications of complex environmental and infrastructure decisions. In the next section, we describe the second key component of our approach, MCMC.

3 Markov chain Monte Carlo

Markov chain Monte Carlo is a family of methods principally used to perform Bayesian inference with stochastic simulation. The aim of the process is to approximate the posterior distribution of the model parameters based on the observed data. By using Monte Carlo simulations to perform the high-dimensional integration necessary to calculate marginal and posterior distributions, algorithms such as Metropolis–Hastings (MH) can make the Bayesian inference process tractable (Metropolis et al. 1953). The MH algorithm is the oldest and perhaps most commonly used of these methods. The basic procedure is as follows:

  • Select a proposal distribution Q (also known as the proposal transition matrix)

  • Initialize the starting point, x 0

  • Do

  • Generate a candidate point x c , according to the probability Q(x c |x i )

  • Calculate the acceptance probability according to

    $$\alpha(x_i,x_c) = {\rm min}\left(1,\frac{\pi(x_c)q(x_i|x_c)}{\pi(x_i)q(x_c|x_i)}\right)$$
    (1)

    Choose x i+1 = x c with probability α, x i+1 = x i with probability (1 − α)

Effectively, MCMC allows us to draw samples from a distribution π(x) without having to know its normalization. With these samples, it is possible to compute any quantity of interest about the distribution of x, such as means, confidence regions, or covariance.

Markov chain Monte Carlo has been successfully used in a wide variety of scientific (Liu et al. 2011) and engineering modeling applications (Liu et al. 2012). MCMC can also be applied as part of the model fitting process in social prediction problems. For instance, Cauchemez et al. (2004) use a Bayesian MCMC approach to examine the main characteristics that affect influenza disease transmission between households. Similarly, the effect of spatial influences on geopolitical conflicts has been modeled using an MCMC formulation in which the likelihood of war involvement for each nation is conditioned on the decisions of proximate states (Ward and Gleditsch 2002). In our work, MCMC is used as a simulation technique, and the sample set used to characterize the posterior distribution is simply compared against the output of other simulation techniques, rather than used to perform Bayesian inference over model parameters.

Our research focuses on improving the performance of the Metropolis-Hastings (MH) algorithm which is relatively sensitive to the initial proposal distribution. It is because of this sensitivity that researchers sometimes opt to use alternative MCMC algorithms, such as Gibbs sampling (Geman and Geman 1984). Our proposed method is a variation on the idea of using suboptimal inference and learning algorithms to generate data-driven proposal distributions for the MH algorithm (Andrieu et al. 2003). An alternate approach for creating MCMC proposal distributions was introduced by Eaton and Murphy (2007) who employed dynamic programming to create a proposal distribution for MCMC in the space of directed acyclic graphs. They showed that this hybrid technique converges to the posterior faster than other methods, resulting in a more accurate structure learning of graphical models and higher predictive likelihoods on test data.

De Freitas et al. (2001) introduced two different methods to overcome the problem of finding a good proposal distribution. In the first approach, a mixture of two kernels is used to drive the search process: (1) a variational kernel to broadly explore the problem domain and locate regions of high-probability and (2) a Metropolis kernel to explore the local regions. One drawback with this method is that finding a good variational kernel can be difficult to do.

To combat this issue, the authors proposed a second technique called adaptive MCMC in which the proposal distribution is updated at run-time based on the behavior of Markov chain; in this article, we benchmark our proposed method against adaptive MCMC. Our approach solves the problem of identifying a good proposal distribution for MCMC by constructing one from samples generated by our agent-based model. Adaptive methods generally seek to construct a better proposal distribution by combining stochastic approximation and MCMC (Andrieu and Moulines 2006). One issue with this class of adaptive techniques is that they often rely on certain mathematical assumptions being valid and thus can only be used in a limited set of conditions unlike our technique.

4 Urban simulation

In this section, we describe the development process for our activity-based microsimulation, including the agent-based model, survey data collection, activity profile generation, path planning, and simulation system; see Beheshti and Sukthankar (2012) for additional details on the data collection and model fitting procedures. For our urban region, we selected the University of Central Florida main campus, which is one the largest academic institutions in the USA with almost 59,000 students and 10,567 staff. It is adjacent to the Central Florida Research Park which is home to 116 companies with approximately 9,500 employees. The presence of nearby businesses and existence of commuters traveling between multiple UCF campuses give rise to a social system with a diverse and complex set of transportation patterns.

4.1 Data collection

To simplify the data collection process, our initial study focused solely on modeling student transportation, dining, and building occupancy patterns. About 1003 students responded to our online survey posted on KwikSurveys that was advertised on various campus email lists. The questions on the survey were grouped into six different categories, related to possible places that could be visited on the main campus:

  1. 1.

    Daily attendance patterns, including the days and times that the participant arrives at and departs from the main campus

  2. 2.

    Initial location, either the dorm (for on-campus students) or the entrance that was used to enter the campus (for commuting students)

  3. 3.

    Visitation frequency for on-campus dining locations

  4. 4.

    Usage patterns for recreation and athletic facilities

  5. 5.

    Usage of administrative and other miscellaneous locations

  6. 6.

    Frequency of parking lot and shuttle stop usage.

For categories three through six, students were specifically queried about their visitation frequencies. For these questions, responses included one of the following: never, rarely, once a month, several times in a month, once a week, several times in a week, and every day.

In addition to the survey data, our agent-based simulation used publicly available statistics about UCF Footnote 2 and the main campus building map. Footnote 3 A graph of the campus paths and roads was created from the main campus building map. The set of nodes in the graph is the union of the locations in the survey, plus the junctions between the streets and pathways. The edges of this graph represent the roads and walkways among the nodes. The weights of the edges show the distance between the connecting nodes. Each node and edge has a tag. This tag for the nodes indicates whether they are a location of interest on the map or merely a junction. Figure 1 shows a snapshot of the map, and Fig. 2 shows the corresponding path planning graph.

Fig. 1
figure 1

The map used in the simulation. Gray spots are buildings; black lines show the campus roads; and yellow lines indicate the walkways. Parking lots are marked in green (student), blue (staff), and red (faculty) (color figure online)

Fig. 2
figure 2

The corresponding graph to the map in Fig. 1. The nodes represent different locations on campus, and the edges show the paths between them

4.2 Agent-based model

To perform transportation forecasting on the UCF campus, we created an agent-based model for simulating the common activities (transportation, dining, recreation, and building occupancy) performed by the 47,000 students on the main campus. This number refers to the total number of students on the UCF main campus. Each agent in the model represents an individual student and has a unique set of parameters that govern his/her activity profile. An agent’s defining parameters are as follows: entrance, dormitory, department, class building, arrive, depart, lunch, dinner, beverage, recreation and wellness, parking, shuttle, and miscellaneous. The first four parameters designate the single (most common) value of the agents’ entry point to the campus, housing situation, home department, and main class building. Note that, we did not explicitly represent the students’ class schedules in the model. Even though this would have improved the fidelity of the model, we felt that addition would not generalize well to other types of urban models. Arrive and depart are lists showing the times the agent enters the campus and leaves it. The remaining parameters are lists of locations for the agent’s dining, recreation, and commuting. Additionally, each parameter that includes a location has another matching parameter that shows the time or frequency of visiting that location.

Rather than directly mapping the survey data to simulated entities that match the exact preferences of one of the survey respondents, we attempt to learn a general model of the population by fitting a statistical distribution to the answers of every question. For those questions that were related to the time of visiting a location (e.g., campus arrival and departure times), a Gaussian distribution was used to create a continuous distribution of arrival and departure times for the population of agents. For those questions where the respondents provided frequencies (e.g., how often campus dining locations were visited), we evaluated the performance of several discrete distributions and selected to the Poisson distribution as offering the best fit for most of the questions.

After fitting the Poisson distribution on the qualitative data, a mapping function is used to work with the values obtained. This function maps the qualitative frequencies to exact dates and times. Each term, from rarely to everyday, is treated separately. For instance, the term rarely is mapped to a random day in a 60-day period.

4.3 Activity-oriented microsimulation

When the simulation commences, all the agents are initialized with parameters that remain constant over the lifetime of the agent and are used to create daily activity profiles. Our simulation is implemented in the Netlogo Wilensky (1999) environment. Footnote 4

In this environment, time is discrete and simulated by ticks where a tick is one unit of time. In our model, one tick represents one hour of activity in the real world. When the model starts, each agent runs within a loop. The loop continues until the simulation is stopped. Figure 3 shows the runtime process by which an agent activity profile is generated. In this loop, whenever it is determined that the agent should be somewhere on campus, it goes to the enable (visible) state; otherwise, it goes to the disable (hidden) state.

Fig. 3
figure 3

Runtime generation of agent activity profiles

Based on the agent’s parameters, the activity profile generator determines what should an agent do and where should be at every time (tick). If sampling the agent’s profile indicates that it should be on campus, then the function compares the current time with the possible activity times produced by the mapping function that maps frequencies from the agent’s distribution model to specific times and dates. If a match is found, then the agent opts to travel to that location. Otherwise, the agent remains at its department as its default place. On the other hand, if the profile generator determines that the agent should not be on campus, then the agent goes to (or remains in) the disabled state.

Various constraints are checked before an agent decides to go to a place. These constraints ensure the consistency of the whole model with the real-world facts. The main consistency checks are summarized below:

  • daily schedule: Whenever an agent’s model generates a date and time for visiting a location on campus, it checks the agent’s arrival and departure times for that day. Campus activities that fall outside those boundaries are eliminated.

  • activity overlap: Whenever the agent’s model generates trips that overlap in time, requiring the agent to be in multiple places at once, one of the overlapping tasks is shifted to a later time.

  • campus constraints: Known information about the operation hours of administrative offices, classroom buildings, and shuttle transportation is incorporated into the simulation. If the agent’s model generates trips that violate the known operation hours, those trips are discarded.

A shortest-path graph algorithm is used to choose the path that an agent should traverse between its start and end positions. To speed-up the model, an all pairs shortest-path graph algorithm computes all of the shortest paths. A slightly modified version of Floyd–Warshall algorithm (Floyd 1962) was used for this purpose. All path planning occurs at initialization; candidate paths are stored in a look-up table to be accessed later. The time complexity of Floyd–Warshall algorithm is θ(n 3). The parameter values used for all of the experiments are listed in Table 1.

Table 1 The parameter settings of ABM experiments

5 Method

To evaluate the performance of our hybrid model, we compared the performance of our model against several other ABM and MCMC variants. Figure 4 shows the relationship between the different methods in a schematic way.

Fig. 4
figure 4

A flowchart showing the relationship between the various modeling methods. In the proposed hybrid model, ABM-MCMC, the ABM is used to bootstrap the MCMC proposal distribution. In ABM Random, the agent-based model is initialized with a student population possessing randomly generated, but plausible schedules. In ABM+Survey, the survey data are used to create the distributions for generating agent activity profiles. MCMC employs the MH algorithm with a standard proposal distribution, and in Adaptive MCMC, the proposal distribution is refined during the mixing process

5.1 MCMC

To benchmark the performance of our improved hybrid MCMC model (ABM-MCMC), we created a MCMC simulation with a standard proposal distribution (MCMC). Our MCMC simulation uses the Metropolis-Hastings algorithm and is implemented with the mhsample function in the MATLAB Statistics toolbox.

Rather than creating one large monolithic simulation of the entire urban system to explore a variety of scenarios, here, MCMC is used to directly to forecast specific questions of interest, such as estimating the number of cars entering the parking lots at different times of a day. One can envision this as a two-dimensional diagram with the horizontal axis corresponding to the time of a day, and the vertical one showing the number of cars entering a specific parking lot. The survey data from the questions about the attendance pattern and frequency of parking lot usage are used to initialize the MCMC model. Observations for the Bayesian inference process are simply obtained based on the results of the survey data for a simulation period of 90 days. Imagine that based on the survey data, a student respondent enters the campus everyday before 9 am, leaves at 5 pm, and reports his general usage of parking lot A as being at a frequency of once a week. In this case, the expectation is that the student would have occupied Lot A twelve times (90/7) during the simulation period, so a corresponding number of samples tagged with the reported time range are produced and added to the input observation data.

Table 2 shows the parameter settings for MCMC used in the experiments. The burn-in value refers to the number of values that are discarded before the actual samples for the Markov chain are generated. In order to remove the correlation between the nearby samples, sometimes, the samples are not gathered sequentially. The number of samples that are thrown away determines the omission rate. Here, two out of three samples are omitted. The last parameter in the table shows the number of Markov chains that are created.

Table 2 The parameter settings for MCMC

5.2 ABM–MCMC

Similar to the notation that is used in Axtell (2003), we can describe the relationship between the ABM and MCMC models mathematically. The state of each agent i in the agent-based model can be denoted by the vector \(x_i \in X_i\) that can assume values in the range \(X_i \subseteq \Re^{n_i}\). The state space of the whole population can be designated as follows: \(X=X_1 \times X_2 \times \cdots \times X_n,\) and the state of the model at time t as \(x(t) \equiv (x_1(t),x_2(t),\ldots,x_n(t)) \in X, x_i \in X_i\).

After convergence of the MCMC process, the following condition will hold: x(t) ≃ x(t + 1). Here, X can be designed to be same as the variable whose distribution we are seeking using MCMC. The intuition is that the world state, X, assumes the shape of target distribution. By designing an appropriate agent-based model, this variable will be close to the sought-after target distribution.

While we have enough samples from a variable x, it is easy to compute its probability distribution function (PDF). In this case, the samples drawn from the agent-based model are used to determine the PDF of the proposal distribution. In our experiments, we assign a probability value to each point x proportional to its number of occurrences in the population domain of the agent-based model: q(α) = P(x i  = α).

In our proposed unification of ABM of MCMC, the input proposal distribution, q(x), for MCMC is derived using the above assumptions. The samples that are produced by the ABM can be used to construct the proposal distribution in the MCMC. It is worth noting that there are other nonmathematical alternatives for combining the two methods. For instance, it would be straightforward to simply directly use MCMC as an embedded component to model regions of the simulation where the total occupancy is of more interest than the exact agent position.

In case of our case study, the final goal of the campus modeling problem was to reach to a model describing the transformation patterns of students. Accordingly, the desired distribution should represent the time and location of students. This information was retrieved from the agent-based model by recording the x and y coordinates of agents at each hour (tick) for 90 days. A Dirichlet distribution is used as the unnormalized distribution, π(x). The general PDF of the Dirichlet distribution can be expressed as follows:

$$f(x_1,\ldots,x_{k-1};\alpha_1,\ldots,\alpha_{k}) = \frac{1}{B(\alpha)}\prod_{K}^{i=1}x_i^{\alpha_i-1}$$

Three variables, x,  y, and time, form the three-dimensional support of the applied Dirichlet distribution used by our model. Hence, k in above formula is equal to three, and x 1x 2, and x 3 correspond to x,  y and time. The α values are simply assumed to be equal to one. The proposal probability of each vector, containing x,  y and time values, is equal to the number of times the vector exists in the dataset divided by the total number of records, under the assumption that the agent-based model has produced evenly distributed samples from the population domain. The MCmultinomdirichlet function in R is used to implement the proposed method; this function generates a sample from the posterior distribution of a multinomial likelihood with a Dirichlet prior.

5.3 Adaptive MCMC

We benchmark our proposed hybrid method against a technique known as adaptive MCMC (De Freitas et al. 2001) in which the proposal distribution is updated at runtime based on the behavior of Markov chain. For this method, the Metropolis-Hastings algorithm from the MCMC toolbox for MATLAB (Laine 2013) was used. Our MCMC model assumes that the unnormalized distribution is of the form of a Poisson distribution, the same as our ABM model. For the proposal distribution, a Gaussian is used. The MCMC attempts to find the most likely value of the mean of the Poisson distribution (λ in \(\frac{\lambda^xe^{-\lambda}}{x!}\)).

6 Results

To evaluate the performance of the agent-based model under different initialization conditions, we examined the transportation forecasts produced by the simulation, both through visualization and by comparing the predictions against a dataset collected by the UCF Parking Services office. The occupancy percentage of UCF student parking garages (shown on the horizontal axis) predicted by every modeling method is compared. Figure 5a–c show the absolute differences between the forecasts for each modeling technique and the parking service data (closer to zero is better). Note that, our hybrid method (shown at the far right) consistently produces the best estimates, improving upon both its parent techniques. The stability of results obtained by different modeling methods is a concern; in many agent-based models, small changes in initial conditions can result in large changes in the final prediction. Figure 6 shows the standard deviations obtained from 20 runs of the ABM+Survey and the proposed ABM-MCMC methods. Note that, using the MCMC estimator reduces the variance of the raw ABM model, resulting in more consistent predictions.

Fig. 5
figure 5

The absolute difference (plotted on a log-scale) between the average occupancy percentage of the campus parking lots (shown on the horizontal axis) as predicted by different modeling methods compared to the UCF Parking Services data. Our proposed method (ABM-MCMC), shown at the far right, yields consistently better estimates of parking lot utilization with a close to zero absolute difference

The agent-based portion of our model can be used to create useful visualizations to provide intuitions about the students’ transportation patterns. One of the common questions often asked by policy-makers is the density of humans at various locations. Figure 7 shows the probability of being in a location on campus for the students at large. In this figure, darker circles show more populated areas. In addition to the spots and buildings on campus, the traffic on the streets and walkaways can be also predicted by our method. Some obvious facts that can be easily verified by a domain expert are also observed in this set of results. For instance, as on most university campuses, the student union is the most frequently visited place since it is the venue for most events and many dining locations. The wide drivable boulevard that surrounds the campus dominates the road usage as it is the only way that can be used by cars and shuttles to reach most points on campus.

Fig. 6
figure 6

The standard deviation of predicted values for parking usage, obtained by the agent-based model (ABM+Survey) and the proposed hybrid approach (ABM-MCMC) for 20 separate runs. The proposed method yields a reduction in prediction variance

Fig. 7
figure 7

Visualizations produced by our agent-based modeling system of the probability of a student being at a certain location (left) and the average traffic passing the streets and walkways on the campus (right)

7 Conclusion

Hybrid models are a powerful strategy for reconciling the predictions of multiple models to present a unified picture to policy-makers, while retaining the diversity and flexibility of multiple approaches. This article introduces a new hybrid modeling method for combining agent-based models with MCMC. We demonstrate that the proposed method for initializing the MCMC proposal distribution with ABM data significantly reduces the prediction error over standard MCMC and also improves upon the ABM alone. We hypothesize that the combined ABM-MCMC finds a more general model of the posterior distribution than the ABM alone. Although agent-based models are often difficult to formally specify and reproduce exactly, the contribution of the ABM can be entirely quantified by the single proposal distribution, which makes it possible to reproduce the results without replicating the entire ABM. In a case study, we demonstrate that our method can be used to accurately model and forecasting transportation patterns in a large urban area. However, the value of the ABM-MCMC modeling approach lies not only its ability to more accurately predict variables such as parking lot occupancy, but also in the simplicity of the proposal distribution representation.

Transportation modeling and analysis can play a key role in facilitating effective urban planning, enabling public policy-makers to tackle difficult resource allocation decisions such as judging the relative merits of bicycle facility enhancements, pedestrian-oriented development, increases to public transit, and HOV lanes. University communities are constantly weighing the benefits of new construction: Is it better to add a parking lot or increase on-campus housing? Yet, no single model tells the whole story, and wise analysts guard themselves from avoidable failures by examining the forecasts of many models across a wide range of parameters. The human modeler always remains an important part of the equation, and hence, it is important to provide the user with flexible tools and easy-to-understand representations. Our hybrid approach provides a simple way to relate the predictions of multiple models through proposal distributions; we envision that these distributions can serve as a common exchange format between models. The proposal distributions produced by the ABM are more complicated than the ones commonly used to initialize MCMCs, but are still relatively simple to express. By directly visualizing the proposal distribution, the modeler can gain an understanding of the effects of changing the parameters of the ABM.

One simple improvement that we are planning to make in the future is to add faculty/staff into our agent-based model; this was not a priority initially since previous work has shown that faculty/staff activity profiles have a much lower entropy and are inherently easier to predict than student profiles (Eagle and Pentland 2006). Supplementing the simulation with additional information about semester class scheduling is likely to yield the largest forecasting improvement at the cost of making the simulation less applicable to other urban modeling problems. A large amount of class attendance and scheduling information is collected by the university and could be added to the simulation without requiring additional survey efforts.