• Keine Ergebnisse gefunden

3.2 Multi-Modal and Transit Simulation

3.2.4 Multi-Modal Simulation

Although a lot of different assignment and simulation models exist, none of the aforementioned ones handles private car traffic and transit traffic in an integrated way. Either the private car traffic is simulated, or the transit traffic. In reality, especially in urban regions, buses and streetcars often have to share lanes with private car traffic, resulting in dependencies between the different modes.

TRANSIMS [107] was one of the first, large-scale microsimulators. It also includes the ability to simulate transit traffic, as outlined in [73]. Sadly, no newer research projects could be found that use TRANSIMS, despite the fact that the software is meanwhile available as open-source project [112].

In some cases, transit simulations were done with only regular traffic simula-tions available. In these cases, often special traffic lights were added to the models

3.2. Multi-Modal and Transit Simulation

that only influence transit vehicles in order to simulate transit stops [72, 82, 105].

Such behavior usually implies that transit lines are on special lanes, defeating the goal of an integrated simulation where the different modes influence each other.

4

Agent-Based Transportation Simulation

Agent-based transportation simulations consist of several functional entities that only in their entirety have the desired effect of (hopefully) realistically simulate and predict traffic. is chapter first takes a look at what those building blocks are and how they relate to each other, before looking at the individual blocks in more detail.

e chapter tries to remain as general as possible in the beginning. But the more detailed the discussed topics are, the stronger is the influence from the experi-ences of developing the Multi-Agent Transportation Simulation (MATSim, [66]).

Especially in later sections, concrete examples from MATSim will be presented.

Note that the state presented in this chapter does not yet include any special refer-ences to the simulation of transit. Changes and extensions required to successfully simulate transit traffic are discussed in chapter 7. Some of the concepts presented in this chapter are based on concepts used in the older MATSim implementation written in C/C++ (see, e.g. [16, 95]).

4.1 Overview

When talking about transport simulations, at first many people only think about the simulation of the physical aspects, i.e. the movement of vehicles in space.

Often, people start to philosophize about how to handle in detail overtaking ma-neuvers, turning moves at crossings, how to include delays at crosswalks. Only on second thought, often triggered by corresponding inquiries, people realize that there are also many behavioral aspects that need to be considered: which route should the agents drive along, at what time do they leave home, where do they drive to work and where do the agents go shopping? is list of questions could easily be extended. Fig. 4.1 depicts the two layers, the physical world and the

mental world, and their relation to each other.

physical world mental world

plans (activities, locations, routes, times, ...)

traffic state,

performance of plans

• speed limit

• road capacity

• other vehicles / traffic jams

• right of way

• which route to work?

• work for how long?

• shopping on the way home?

• car or bike?

work 8h shopping?

home

Figure 4.1: Mental and physical world must be considered in a transportation simulation

In the mental world, agents plan their day. ey have to make decisions like when to leave home and go to work, if they go with their car or a bike, what route they want to drive, where they want to go for lunch, if they should do some shopping on the way home, etc. Balmer [9] differentiates between the following decisions agents have to make:

Mode choice: Should I walk or take the bus?

Route choice: Which route should I take to get to work?

Location choice: Should I go shopping near my home or at the mall?

Activity type choice: Should I go to visit my friend?

Activity chain choice: Should I go swimming before or after work?

Activity starting time choice: When should I do sports today?

Activity duration choice: Should I drink another beer before going home?

Group composition choice: Who should I take along?

is list of choice decisions is often also called the list ofchoice dimensions(e.g. [11, 13, 5]). Each plan of an agent describes exactly one point in a multi-dimensional

4.1. Overview

<person id="123" age="42">

<plan>

<act type="home" link="110" facility="82" x="60.0" y="110.0"

end_time="07:00:49" />

<leg mode="car" trav_time="00:05:15">

<route>23 86 14 57</route>

</leg>

<act type="work" link="498" facility="29" x="120.0" y="37.0" dur="08:00:00" />

</plan>

</person>

Figure 4.2: An example of a person and its day plan, encoded in a MATSim-specific XML format

space defined by each choice dimension, where the values or parameters of the point are based on the actual decision.

e result of all these decisions of one agent is a detailed day’s schedule (called

“day plan” or just “plan” in the following). Fig. 4.2 shows an example of such a day plan, encoded in a custom XML-based file format. e day plans of all agents are then simultaneously executed by a traffic flow simulation, the so-called physical world. e traffic flow simulation tries to move the agents according to their plans, but respecting constraints and limits set by the physics of reality. Such limits can be, among others:

Speed limits: An agent cannot drive faster than the road limit or the speed limit of its vehicle.

Flow capacity of road: A vehicle cannot leave a road and enter a cross-ing together with 20 other vehicles at the same time (A well-known rule of thumb assumes that about 2000 vehicles can drive through a street per hour and per lane).

Storage capacity of road: A vehicle cannot enter a road if the road is already jammed with other vehicles.

Position of other agents: In most cases it is not desired to simulate traffic accidents, so vehicles should not crash into other vehicles.

Right of way: No matter if a crossing has traffic lights or not, an agent has not always the right to just drive on.

Vehicle capacity: If the subway or bus is already full, the agent has to wait for the next transit vehicle on the line to arrive before it can board.

Opening times: An agent cannot do its shopping if the shop is closed.

initial demand execution

(mobsim) scoring analysis

replanning

Figure 4.3: The building blocks of the Multi-Agent Transportation Simulation (MATSim)

e agents try to learn from their experience and to optimize their day plans.

For this to happen, some feedback must be provided from the physical world to the mental world (see Fig. 4.1). is usually includes information about the state of traffic at certain times of day at certain locations, or some data about how much the actual day deviated from the day plan. With this information, agents can try to improve their day plan, maybe switching routes to avoid traffic jams, leaving work earlier so they arrive at the shop while it is still open, and so on. e new day plans will again be executed by the traffic flow simulation, and the agents will learn if their new plans were better or not accounting for the interaction with other agents, and may optimize again. is constitutes a loop between mental and physical world, in which the agents iteratively try to optimize their day plan. One round in the loop is usually called oneiteration of the simulation.

Fig. 4.3 shows the schematic control flow of the Multi-Agent Transportation Simulation (MATSim, [66]). It starts with the initial demand that describes an initial set of day plans for the simulated population. is initial set of day plans is thenexecuted by the traffic flow simulation or mobility simulation (mobsim). e performance of the day plans is evaluated during scoring, such that agents can try to optimize their day plans during replanning. e plans are then executed again.

is iterative loop continues until some criterion is met. In the end, it is possible to analyze the data in regards to traffic state or behavior of the agents. e following sections will take an in-depth look at the mentioned building blocks, starting with the Controler which is responsible for the data flow and interaction between the different parts.