Strip Based Approach For Simulation Of Mixed Computer Science Essay

Published: Last Edited:

This essay has been submitted by a student. This is not an example of the work written by our professional essay writers.

Vehicles in the homogeneous traffic follow lane-based movement and can be conveniently modeled using car-following and lane-changing models. The former one deals with the longitudinal movement behavior while the later deals with the lateral movement behavior. However, typical heterogeneous traffic is characterized by the presence of multiple vehicle types and non-lane-based movement. Because of the off-centered positions of the vehicles, following driver is not necessarily influenced by a single leader. Additionally, the following behavior of the subject vehicle depends on the type of the front vehicle. Unlike discrete lane changes in the case of lane-based traffic, heterogeneous traffic streams require modeling of continuous lateral movements. Hence, the existing driver behavioral models may not be able to represent the heterogeneous traffic behavior accurately enough. To address these critical issues of heterogeneous traffic, a space discretization based simulation framework is proposed. The lane is divided into strips and the vehicles are assumed to move along the strips. A vehicle may occupy multiple number of strips governed by its width. A model for longitudinal movement is proposed to take care of the multiple leader and vehicle type dependant following behavior. The lateral movement model allows tactical overtaking maneuver by a vehicle (in anticipation of better traffic conditions) which may require multiple strip changes. Thus, continuous lateral movement can be modeled by defining very small strip widths. On the other hand, the proposed simulation framework retains the concept of lane based movement when the strip width equals the lane width and can be used even for the traditional lane-based traffic streams. The same concept was extended to model the vehicular movements at and within the intersection. The proposed framework namely, SiMTraM, is implemented in a traditional lane-based simulator, SUMO, an open source traffic simulator. The model was calibrated and validated with data from Mumbai, India and the results indicate better representation of the mixed traffic movement.

Keywords: Mixed traffic; Strip; Car-following; Lane-changing; Traffic simulation, SiMTraM.


The ability of traffic simulation to emulate the time variability of traffic phenomena makes it a unique tool for capturing the complexity of traffic systems. Several micro-simulation models have been developed and the most well-known are probably AIMSUN (Barceló et al., 2002), VISSIM (PTV, 2012), Paramics (Quadstone, 2004a, Quadstone, 2004b), MITSIMLab (Toledo et al., 2003), and CORSIM (FHWA, 1996). All car-following and lane changing models developed in the aforementioned microscopic simulation tools are built on the underlying concepts of lane-based traffic flow theory of homogeneous traffic. However, typical heterogeneous traffic is characterized by the presence of multiple vehicle types and non-lane-based movement. Because of the off-centered positions of the vehicles, following driver is not necessarily influenced by a single leader. Additionally, the following behavior of the subject vehicle depends on the type of the front vehicle. Because of which, the 'car-following' notion used in homogeneous traffic flow models may not be applicable in the context of heterogeneous traffic. Unlike discrete lane changes in the case of lane-based traffic, heterogeneous traffic streams require modeling of continuous lateral movements. Thus, the lateral movement discretized in steps of whole lanes (lane-changing) as in the case of homogeneous traffic may not be suitable for heterogeneous traffic. These typical characteristics of heterogeneous traffic leave the applicability of the existing simulation tools questionable to model them.

Lane-based behavioral models are thought to be unsuitable for mixed traffic conditions, not because driver behavior is significantly different. It is because of the non-lane-based movement and various sizes of vehicles making it possible for the drivers' to use the road space more efficiently (utilizing the lateral gaps (widths) between preceding vehicles) than homogenous traffic. To address this issue of non-lane-based movement, Hossain (1996) developed MIXNETSIM based on coordinate referencing technique. Arasan (2005) developed a similar model for a mid-block section in India. However, this approach did not consider the diver behavior from the behavioral view standpoints. Moreover, this approach involves high computational time making it unsuitable for large networks. To address the computational time issue of the continuous space model, Cellular Automata (CA) model was used in some mixed traffic studies with simple rules (Gundaliya 2006). However, the car-following rules of both the space-oriented and time-oriented CA-models lack intuitive appeal and may not be able to represent the realistic driver behavior. Moreover, they may not be able to describe the microscopic details of traffic flow (e.g. tactical overtaking and merging) sufficiently accurate from a single driver's perspective. To avoid these pitfalls, a novel idea is to develop a model which brings into agreement both the complex driver behaviour and the computational issue. Sutomo (1998) and Hoque (1994) used the concept of dividing the road space into strips and applying the lane analogy to it overcoming the aforementioned issues. Following this, an improved strip based model was developed by Oketch (2000) taking into account some unique behaviors such as seepage to fronts of queues by two wheeled vehicles and simultaneous use of two lanes. Nevertheless, the vehicle type dependant following behavior was not addressed.

It is with this background, a simulation framework, 'SiMTraM (Simulation of Mixed Traffic Mobility)' is proposed using the concept of strips where a lane is divided into number of strips and the vehicle may occupy multiple number of strips according to its width. The movement of the vehicle is along the strips instead of lanes. The proposed strip-based simulation framework was implemented in an open source simulator, SUMO (Daniel, 2002), for both mid-block and intersections by making the necessary modifications.

The specific contribution of this study is the development of a simulation framework that can be used to represent both lane based homogeneous traffic as well as non-lane based mixed vehicle type heterogeneous traffic. The influence of the type of vehicle and the presence of multiple leaders in the longitudinal movement is addressed by modifying the traditional car-following models. Further, the characteristic vehicle maneuvering for overtaking of non-lane based traffic is modeled by considering the movement along the strips. Hence, the proposed framework and the models is an important contribution towards building robust and versatile traffic simulation models.

The rest of this paper is organized as follows: the next section describes how a non-lane based technique (the concept of strips) has been applied to the fundamental lane-based core models. The implementation details of the model to account for the necessary changes are described in the following section. Testing of the built model and comparison with the existing ones is presented next. The follow-up section is devoted to the data collection and validation aspects. Finally, this paper closes with the concluding remarks and the findings from the present study.

Proposed Strip-based Technique

While vehicles exhibit a wide range for acceleration, deceleration and speeds in the longitudinal direction, the range of values for lateral movement is very limited. The lateral speed of vehicles depends on their maneuverability, turning radius and type of vehicle. Heavy vehicles have much slower lateral movement than two wheelers. Even in the case of two-wheelers, the maximum lateral speed is less. Thus, dividing the road space laterally into strips is more practical to capture the lateral movements at a microscopic level. This division makes verifying algorithms for movement easier and it is computationally more efficient than a full coordinate based model. Concepts of lanes are naturally extended to accommodate strips.

Strip-based Representation

The road space is divided into strips, with each lane having an integral number of strips (Figure 1). The strip width is configurable and is related to the lane width. Vehicle widths are specified in terms of strips. Every vehicle occupies an integral number of strips. Thus, while the longitudinal motion of vehicles is continuous, the lateral motion is discrete (vehicles move laterally only one strip at a time). If fine-grained simulation is required, the strip width can be made smaller. In fact, it can even approximate a coordinate-based model with a strip size of 0.1 meter or less.

<<Insert Figure 1 about here>>

Strip-based Driver Behavioral Models

The existing car-following model in SUMO is not suitable for multiple-leader and vehicle-type dependant following behavior of mixed traffic conditions. Moreover, the lane-changing model does not account for the continuous lateral movement. To account for these changes, required modifications are made to the existing models. The lateral movements at and within the intersection were also modelled based on the strip concept. These details are presented in this section.

Longitudinal Movement Model

To be in compliance with the proposed technique, modifications were made to the existing version of the time-discrete and space-continuous car-following model by Kraus (1998). This model was found to be better in replicating the heterogeneous traffic movement to a certain extent when compared to the other car-following models (Ravi Shankar, 2011). The model is based on a derivation of a safe gap which a subject vehicle needs to stop behind a leading vehicle without colliding with it.



is the safe velocity for time t (in m/s)

is reaction time (in s)

is the maximum deceleration ability (in m/s2)

is leader's velocity at time t (in m/s);

is the gap (between follower's front and leader's back) at time t (in m).

In lane-based movement, every vehicle has a single vehicle in front of it (its leader) and a single vehicle behind it (its follower). The leader and follower are used in car-following models to calculate the velocity in next time step (whether a vehicle should accelerate or decelerate). The vehicle modifies its velocity to avoid collision with the vehicle in front. But in strip-based movement, a vehicle may occupy more than one strip and so it may have more than one vehicle in front of it (or behind it). In such a case, the identification of the leader is slightly different. In the strips model, the leader is the vehicle among the list of possible leaders which is closest in distance to the vehicle. The algorithm is given below.

Algorithm: Identify Leader

1: for all Strips occupied by current vehicle do

2: Get iterator to current vehicle in strip

3: Increment iterator (to get next vehicle in strip)

4: Store vehicle in a list of possible leaders

5: end for

6: Find vehicle with minimum longitudinal position among possible leaders

7: Return this as leader for current vehicle

To take into account the vehicle type dependant following behavior, modifications were made to the existing car-following model. The safe velocity for a subject vehicle type with leader vehicle type is calculated as:


The gap in equation (1) is derived as per lane based following conditions i.e., the gap is always maintained constant for all combinations of leader-follower vehicles. On the contrary, the gap maintained varies according to the leader-follower combination in mixed traffic conditions. Keeping this in view, a concept of equivalent car-car (c-c) gap is proposed (equation 2). The gap, a particular leader-follower combination should maintain is converted into an equivalent gap of car following a car using a simple regression model (equation 3) and is then used in the calculation of the safe velocity given in equation (2).



and are the calibrated coefficients of the model

is the gap maintained between type follower and type leader.

For example, if a car is following a truck at a certain speed and the gap between them is say, then the equivalent gap would be. Currently 15 leader-follower combinations are considered. The algorithm for equivalent gap calculation is given below.

Algorithm: Equivalent Gap Calculation

1: for all subject vehicles

2: Get gap, leader speed, leader maximum deceleration, leader vehicle type, subject vehicle type

3: Calculate equivalent gap depending on the subject and leader vehicle types

4: Return this as gap to calculate safe velocity

5: end for

Lateral Movement Model

The existing lane-changing behavior solves the navigational part of lane-changing problem by computing a valid path through the network, i.e., the chosen lanes can be used for continuing the route. Each lane of the road, the 'follower' is currently at and of the roads following along its route, up to a viewing distance is examined. Besides the distance the 'follower' may continue using the regarded lane without the need to change to another lane, the lanes' occupancies are collected. Given these descriptions of lanes, it is decided for the 'follower' whether a lane change into the direction of a valid lane is needed. This is the case if the 'follower's' distance left to the position from which the route cannot be continued is lower than an assumed distance needed for the lane change. For the tactical part of the lane changing (the wish to move fast), an approach based on Ehmans (2001) is present in SUMO. During his drive, a driver stores the benefits of changing the lane. The benefit to change a lane is the difference between the safe speeds on the neighbor and on the current lane, computed using the car-following model, and normalized by the maximum velocity the vehicle could use under free-flow condition.



is the benefit of a vehicle changing to lane

and are the vehicles current and neighboring lanes

is the safe velocity in the neighboring lane

is the safe velocity in the current lane

is the maximum velocity possible in the current lane

Using the benefits for neighbor lanes, a driver-internal "memory" variable, which represents the simulated driver's wish to change to a neighbor lane, is adapted. If the benefit to change the lane is >0, this benefit is added to this memory, signed by the direction. If the benefit is <0, i.e., the current lane is faster than the neighbor lane, the memory value is divided by two, suppressing the wish to change into this direction. A lane change is initiated if the absolute value of the memory variable is larger than a certain threshold. The sign of the memory variable represents the direction of the lane change. Of course, a lane change is only possible if the lane, a vehicle wants to change to, has enough space at its current position. Additionally, the resulting gaps must allow further collision-free continuation of driving.

A naive modification of a lane changing model for strips would consider left and right strips as candidates for strip change at every time step. But this approach leads to myopic driving and does not simulate the mixed traffic conditions accurately as vehicles often change to the next strip with the intention of changing multiple strips. Thus, even if there is no local benefit of changing a strip, there might be a global benefit. The vehicles need to look farther than just one strip because a driver's operational strip changing decision may be due to a tactical overtaking maneuver that requires multiple strip changes. For modeling this behavior, modification to basic lane-changing model was done to look at all strips on all lanes of a road. This is done by adding up benefits of all strips to the driver's memory variable using an exponential model. The benefit added for each strip is calculated using



is the benefit of a vehicle changing to strip

and are the vehicles current and neighboring strips

is the safe velocity in the neighboring strip

is the safe velocity in the current strip

is the maximum velocity possible in the current strip

is the parameter of the strips model

is the number of strip changes required for the vehicle to occupy the desired strip

Strip-based Vehicular Movement at and within Intersection

Drivers approaching an intersection are confronted with the decision of how to negotiate their intended maneuver in the intersection. To make this decision, drivers have to assess vehicle positions and speeds in other approaches to the intersection as well as their own desired speed within the intersection. Even though many studies have tried to understand the homogeneous and heterogeneous traffic flow behavior, very little attention was given to study the driver behavior passing an intersection. Understanding complex movement within an intersection is the critical task especially in mixed streams as the lateral movements play a major role in this critical zone. The cellular-automata like representation of the intersection to determine the ability of a vehicle to perform its movement within intersection area cannot handle the complex interactions of mixed vehicle types. The shortcoming of this approach is in the use of simplistic occupancy rules.

A model that explicitly addresses the above considerations has been implemented using the strips concept. In the first step of the model, the vehicle is tagged as approaching an intersection. This is done at a distance from the intersection related to the stopping distance of the vehicle and the visibility of the intersection. Once a vehicle is tagged, it starts adjusting its speed to the intersection. A maximum desired maneuver speed is defined for each vehicle. This speed is based on the specifics of the maneuver the vehicle is about to undergo in the intersection.

A tagged vehicle starts to consider strip changes according to its desired direction when making acceleration decisions before the stop-line. Due to the simultaneous use of a single lane by more than a vehicle in mixed traffic conditions, multiple critical leader vehicles are present at the stop line. The vehicles arriving after the first vehicle follow the strip-based car-following and lane-changing rules and accordingly would join the queue. However, small-sized vehicles do not normally remain at the position at which they arrive at the queue, but rather, they usually creep at reduced speeds toward the front. This is facilitated in the model by allowing evaluation of empty strip for the vehicles arriving after the first vehicle. Once the critical leader vehicles are identified, each of them starts to consider empty strips within the intersection area when making the acceleration decisions. The consideration of the empty strips consists of four components:

Identifying conflicting vehicles: The driver identifies conflicting vehicles that need to be yielded to. The implementation is based on the hierarchy of right-of-way in the intersection. The vehicle identifies the movements that have priority over its own, identifies the strips that these movements would be using to approach the intersection, and identifies the first vehicle in each of these strips.

Predicting empty strips: Once the conflicting vehicles are identified, the driver predicts the empty strips. The prediction of these empty strips is based on the arrival times of the vehicle and the conflicting vehicles at the conflict zone. The vehicle's own arrival time prediction is conditional on the acceleration the driver would apply. Since the driver cannot know how other drivers will behave, the prediction of their arrival times is based only on their current speeds.

Evaluating empty strips and deciding acceleration: Having predicted the available empty strip, the driver evaluates it, decides whether to accept it or not, and applies the appropriate acceleration. The strip change decision is based on comparison of the existing strip width with its own width.

Lateral Movement within critical zone: Once the vehicle is within the intersection area, the benefit of changing the strips is calculated and its path is updated accordingly.

Figure 2 illustrates the movement of the vehicle at and within intersection which is updated according to the benefit function evaluation and the strip-based car following rules. The algorithm is given below.

Algorithm: Identify Critical Vehicle and Update Movement in Internal Lane

1: For each time step (t)

2: For all edges (E)

3: For all lanes in a edge (L)

4: For all strips in a lane (S)

5: Identify the critical vehicle (V) (approaching to intersection)

6: For all identified vehicles

7: Set the request in MSLink (Connector)

8: Apply link access algorithm

9: Let the vehicle behave according to response from link

10: Go to step 1

<<Insert Figure 2 about here>>

Implementation of Strips Model

The structure of the modified vehicular movement logic is presented in this section. The overall class structure with the newly induced classes' are explained in detail. The implementation details of the proposed models are also presented. The framework of SiMTraM is presented in Figure 3. The major part of the proposed simulation model is the calculation of vehicle positions in the network according to strip based car-following and lateral-movement rules.

<<Insert Figure 3 about here>>

Induction of Strip-class for a Mid-block

The lane-based model in SUMO has different classes taking care of the various modeling components required for the simulation. To take into account the proposed strips model, a new class MSStrip has been added. The class diagram with the required modifications for implementing the strips model is shown in Figure 4. At the network generation level, the proposed model along with its class takes two new parameters. One is the number of strips that a lane has, and the other is the width of a type of vehicle (in terms of number of strips). These input parameters are read from the type of vehicle and the route files respectively. In addition, support for strips has been added in the output, which now includes a new strip tag. These aspects are presented in detail in this section.

<<Inser Figure 4 about here>>

A new MSStrip class has been added which represents a strip on the road. A lane contains a number of strips, so MSLane has a container 'myStrips' which is a list of strips (in order from left to right). The new strip class takes up almost all of the lane level responsibilities of the lane based model. The MSVehicle class also has a list of strips (myStrips). These are the strips which the vehicle occupies. In the vehicle class, the concept of a 'main strip' was also introduced. This is the leftmost strip that a vehicle occupies. It is used in all procedures where an operation to the vehicle only once is needed. In such a case, the operation is done only to the vehicle's main strip, and all other strips are ignored. Moreover, the 'main strip' concept allows the vehicles to check the lateral spacing when the strip-change by the vehicle is desired. With the introduction of the strip concept, the MSLane class now defers most actions to its strip objects. The MSLane::moveCritical() and setCritical() functions which are used to move a vehicle in a lane now call the respective strip's moveCritical() and setCritical() functions which do the actual moving. Similarly, partial occupation, where a vehicle is not wholly on a lane (longitudinally- it occupies multiple lanes) is now handled at the strip level. Emission of a vehicle into the network is done by choosing a group of strips which has vehicles which are farthest away from the start position. Instead of changing one lane in one time-step, the strips model allows a vehicle to change one strip in one time step. This avoids the 'jumping' behavior in the lane-based model. As opposed to the vehicles instantaneous movement from one lane to the next in one time-step, vehicles now gradually change lanes. The MSLaneChanger::change() is the function where the majority of the lane change functionality is implemented. In addition to the leader and follower in the current strip, the leader and follower in the target strip (which is one strip to the right or left) are also considered. The leader and follower in the target strip are identified based on the position of the current vehicle by the following rules:

Search the target strip for the first vehicle which has position greater than the current vehicle's position on the current strip.

The vehicle obtained in the previous step is the leader of the target strip. Now decrement the iterator pointing to this leader to get the vehicle behind it in the same strip. This is the follower of the target strip.

Induction of Strip class within Intersection

A new MSStrip class has been added in the MSInternalLane class at an intersection (Figure 5). All lane level responsibilities at and within intersection are taken care of by this class. Firstly, all the strips in all lanes are scanned for the arriving vehicle to decide on whether it is the critical vehicle (i.e., the first vehicle to arrive at the stop line). If it is not, then the vehicular position updation will be taken care of by the normal car following rules allowing it to do the required lateral movement as per its directional constraint. The critical vehicle would look at all the strips of the MSInternalLane class to find out an empty strip and gets pushed into the critical zone. The vehicles in queue follow the strip based longitudinal and lateral movement rules once they enter into the critical zone of the intersection which enhances the model by allowing the vehicles to gain the benefit of lateral movement even within the intersection which closely replicates the real world scenario of the mixed traffic streams.

<<Insert Figure 5 about here>>

Evaluation of the Strips Model

For evaluating the developed model, results from lane-based model of SUMO and modified model with strips were compared. All the simulation experiments were carried out on a 500m mid-block section (Figure 6) with varying input volumes. Also, the effect of varying strip width on the throughput was studied.

<<Insert Figure 6 about here>>

Model Calibration

The car-following model was calibrated with the proper values of the parameters. The Krauss car-following model has two parameters: -representing driver reaction time and -representing the driver imperfection. A sensitivity analysis of these parameters was done. The at-capacity condition (1800 vph/lane) for lane based condition was obtained at 0.5 and 0.8 values of and respectively.

The effect of strip width on the throughput was studied explicitly (Figure 7). It can be observed that, lesser the strip width more is the throughput. This clearly indicates that the vehicles use the space on the road effectively when the strip width is scaled down which is an indication of the more space oriented (i.e., maximum utilization of the space by the vehicles within and across the lanes) movement of the mixed traffic. Also, the throughput of strip width equal to the lane width is comparable with the lane based model clearly indicating the capability of the model to simulate the traditional stream flows very efficiently.

<<Insert Figure 7 about here>>

A general verification was also undertaken to ensure that the model yielded results that were plausible and consistent with the general traffic behavior. Examination of fundamental relationships between traffic flow parameters (speed, flow and density) is important in verifying that model results are in agreement with the traffic theory. The speed, flow and density relationship for a two-lane road with only cars is shown in Figure 8.

<<Insert Figure 8 about here>>

Simulation Experiments

The capacities and speed-density relationships were analyzed for an uninterrupted stretch of a two lane road were analyzed. Streams containing various proportions of non-standard vehicles in addition to cars were considered in the analysis and are denoted by the percentage of the non-standard vehicles they contain. For example, streams denoted as 25% two-wheelers (2W) stand for a stream composed of 75% cars and 25% two-wheelers. Mixed stream is composed of various non- standard vehicles, usually in the same proportion, in addition to cars.

Stream capacities and Fundamental Relationships

A summary of the results is provided in Table 1 and Fig. 10 for streams with 25% of the various non-standard vehicles. Streams with private cars only has a mid-block capacity of 1828 vph per lane and that with 25% trucks has a capacity of 1575 vph per lane respectively. On the contrary, the mid block capacity with 25% motorcycles was evidently higher.

<<Insert Table 1 about here>>

<<Insert Figure 9 about here>>

Field Data Collection and Model Validation

For validation of the developed model, video based data was collected on the Eastern Express Highway in Mumbai city for an hour. A mid-block segment of 300m meters (4 lanes of width 3.5 meters each, ignoring service lane) (Fig. 10) was used to extract speed, acceleration, widths and the composition of different vehicle types. The details are presented in Table 3. One minute interval average speeds were compared with the simulated ones (Fig. 11). Different statistics are presented in Table 4. As the Theil's U statistic is closer to 0, it can be inferred that the developed model closely replicates the stream characteristics as observed in the field.

<<Insert Figure 10 about here>>

<<Insert Table 2 about here>>

<<Insert Figure 11 about here>>

<<Insert Table 3 about here>>


Developing a framework to simulate heterogeneous traffic conditions characterized by the presence of multiple vehicle types and non-lane based movement is the focus of this paper. A simulation framework is proposed using the concept of strips where a lane is divided into number of strips and the vehicles can occupy multiple number of strips governed by the width of the vehicle. The movement of vehicles is governed by strips instead of lanes. The lane-based car-following model was modified to account for the type of the leader vehicle and the presence of multiple leader vehicles. Canonical lane-changing model was modified to account for the gradual lateral movement of the vehicles in lieu of instantaneous lane shifts in homogeneous traffic. A simple benefit function was also formulated for calculating the benefit of making a lateral movement.

The proposed simulation framework, SiMTraM, was implemented in an open source simulator, SUMO for both mid-block and intersections. A new strip class is proposed which is derived from the lane class to handle the strip based movements. Several tests were conducted to evaluate the suitability of the simulation model. First, the effect of strip width was studied and it was found that throughput increases when the strip width is reduced, possibly due to better space utilization. Attempt was also made to construct the fundamental diagrams and to study the sensitivity of traffic composition. The results show the suitability of the underlying traffic models. Finally, data collected from a real mid-block section is used to validate the model and found to have a closer agreement with the field values showing the efficacy of the proposed behavioral models.

It may be noted that the proposed simulation framework is not able to represent the atypical two-wheeler driver behavioral aspects like tailgating, swerving, oblique following etc. In order to describe the narrowness of motorcycles and their filtering behavior, the idea of a virtual lane - that is, a lane divided into several sub-lanes is applicable at macroscopic level. However, such a concept suggests the movements of motorcycles as still being lane-based, i.e., a motorcycle is merely regarded as a small passenger car that travels in sub-lanes. This description does not cover the lateral movements of motorcycles precisely. Developing a better model to take into account the behavior of two-wheeled vehicles is a promising enhancement to the current research.