What Is BEAM?

The Behavior, Energy, Autonomy, and Mobility (BEAM) model is an open-source agent-based regional transportation model that overcomes the limitations of conventional transportation models.

The BEAM logo

Overview of the BEAM Model

BEAM is an open-source, modular software framework that enables efficient, scalable simulation of regional transportation systems. It allows transportation planners and service providers to simulate traveler behavior and technology deployment to understand congestion, energy, and emission implications of novel mobility technologies and services from individual scale to entire transportation systems.


Embedding discrete choice models in agent-based simulations

People make decisions every day that impact their engagement with the transportation system. Through stated preference and revealed preference analysis, we have sophisticated models of how people make these decisions. BEAM enables us to directly embed these discrete choice models in a virtual environment where we can then see how human preferences will impact the performance of the system as new technologies and policies are implemented.


Coupling mobility, vehicle energy consumption, electric vehicle (EV) charging behavior, and charging control strategies with power sector simulation models.

BEAM enables detailed analysis of the energy impacts of changing mobility trends as well as the potential impacts of EV adoption and the benefits of managing charging in order to support grid reliability and access emerging markets for grid flexibility services.


The future of transportation and electric systems will be dominated by the emergence of autonomy and distributed control.

From smart devices to fully autonomous vehicles, transportation and the energy economy will be transformed by our ability to enhance vehicles and appliances with the ability to intelligently sense and respond to the world around them. The interconnected impacts of these rapidly evolving technologies simply cannot be understood in isolation. BEAM will therefore serve as a test bed for new ideas in managing the charging profiles of EVs or assessing the opportunities and challenges associated with fully autonomous vehicles active on 20th century road networks.


Mobility is endogenous to BEAM

BEAM enables analysis of new technologies in a manner that fully respects the fluid nature of mobility in urban systems. A new transit stop reshapes the mobility behavior of people who live and work nearby; dynamic pricing on Uber changes the loading on public transit in real-time; new EV chargers increase both EV adoption and day-of decisions on which vehicle to drive. BEAM provides an integrated analytical environment to sort out these tradeoffs between the multitude of competing mobility options and services.

How BEAM works

As shown in the figure below, BEAM is composed of three main components: (1) AgentSim, (2) PhysSim, and (3) a replanning module. AgentSim models the behavior of individuals as they make their within-day travel decisions at different times and locations across the transport network. Concurrently, it models the status and management of various actors in the transportation system, such as on-demand mobility fleets and parking stalls. Contained within AgentSim is a routing engine that determines a set of possible routes that a traveler can choose between for each trip taken. This set of possible routes considers all available vehicles, modes, and combinations of modes available to the traveler.

PhysSim models travel times and congestion on the road network using the Java Discrete Event Queue Simulator. The router uses the open-source R5 engine to produce a set of possible modes and routes for travelers to choose among, based on the dynamic state of the transport network.

The replanning of the activities updates the previous day’s decisions of travelers, allowing them to choose to participate in different non-mandatory activities, try different travel modes, or repeat successful choices from a previous iteration.

BEAM diagram


Accessing BEAM Source Code

Users can access the publicly available BEAM source code using this Github link: Please contact Lawrence Berkeley National Laboratory staff with any questions or inquiries about applying BEAM to your region of interest.

Team Members

Project Scientist
Project Scientist
Research Scientist
Research Scientist
Research Scientist
Project Scientist
Senior Scientific Engineering Associate
Principal Scientific Engineering Associate
Graduate Student Researcher
Graduate Student Researcher