Gap Acceptance

Main Page > Technical Documentation > Gap Acceptance ​

Gap Acceptance Logic ​

Gap acceptance models begin with the recognition that two-way-stop-controlled (TWSC) intersections give no positive indication or control to the driver on the minor street as to when it is appropriate to leave the stop line and enter the major street. The driver must determine when a gap on the major street is large enough to permit entry, based on the relative priority of the competing movements.

This decision-making process has been formalized analytically into what is commonly known as gap acceptance theory. Gap acceptance theory is the basis for operations of TWSC intersections and roundabouts.

This theory includes three elements: 1. Availability of Gaps 2. Usefulness of Gaps 3. Relative Proportions of Various Movements at the Intersection

1. The availability of gaps is the proportion of gaps of a particular size on the major street offered to the driver entering from a minor movement, as well as the pattern of vehicle arrival times. The distribution of gaps between vehicles in the different streams has a major effect on the performance of the intersection 2. The second element pertains to how useful drivers find the size of the gap when attempting to enter into the intersection. It is generally assumed within gap acceptance that drivers are both consistent and homogeneous. However, studies have demonstrated that different drivers have different gap acceptance thresholds and even that the gap acceptance threshold of an individual driver often changes over time. 3. The third element in gap acceptance theory concerns the ranking of each movement in a priority hierarchy. Typically, gap acceptance processes assume drivers on the major street are unaffected by the minor movements. If this assumption is not the case at a given intersection, the gap acceptance process has to be modified. For TWSC methodology, priority hierarchy must be identified for each movement. Movements can be categorized by right-of-way priority as follows: ​ Headway times are used as a measurement instead of gaps due to the ease of calculation and requiring less information.
 * Movements of Rank 1 include through traffic on the major street, right-turning traffic from the major street, and pedestrian movements crossing the minor street.
 * Movements of Rank 2 include left-turning and U-turning traffic from the major street, right-turning traffic onto the major street, and pedestrian movements crossing the major street.
 * Movements of Rank 3 (subordinate to Ranks 1 and 2) include through traffic on the minor street (in the case of a four-leg intersection) and left-turning traffic from the minor street (in the case of a T-intersection).
 * Movements of Rank 4 (subordinate to all others) include left-turning traffic from the minor street. Rank 4 movements occur only at four-leg intersections.

Critical Headway and Follow-up Headway Critical headway tc is defined as the minimum time interval in the major-street traffic stream that allows intersection entry for one minor-street vehicle. Thus, the driver’s critical headway is the minimum headway that would be acceptable. A particular driver would reject headways less than the critical headway and would accept headways greater than or equal to the critical headway. Critical headway can be estimated from observations of the largest rejected and smallest accepted headway for a given intersection. The time between the departure of one vehicle from the minor street and the departure of the next vehicle using the same major-street headway, under a condition of continuous queuing on the minor street, is called the follow-up headway tf. Thus, tf is the headway that defines the saturation flow rate for the approach if there were no conflicting vehicles on movements of higher rank.

Computing Critical Headway and Follow-up Headway Critical Headway tc,x = tc,base+ tc,HVPHV + tc,GG-t3LT where, tc,x = critical headway for movement x (s), tc,base = base critical headway from "Base Critical Headways" (s) below, tc,HV = adjustment factor for heavy vehicles (1.0 for major streets with one lane in each direction; 2.0 for major streets with two or three lanes in each direction) (s), PHV = proportion of heavy vehicles for movement (expressed as a decimal; e.g., PHV = 0.02 for 2% heavy vehicles), tc,G = adjustment factor for grade for given movement (0.1 for Movements 9 and 12; 0.2 for Movements 7, 8, 10, and 11) (s), G = percentage grade (expressed as an integer; e.g., G = −2 for a 2% downhill grade), and t3,LT = adjustment factor for intersection geometry (0.7 for minor-street left-turn movement at three-leg intersections; 0.0 otherwise) (s).



Follow-up Headway tf,x = tf,base + tf,HV PHV

where, tf,x = follow-up headway for movement x (s), tf,base = base follow-up headway from "Follow-Up Headway" (s), tf,HV = adjustment factor for heavy vehicles (0.9 for major streets with one lane in each direction; 1.0 for major streets with two or three lanes in each direction), and PHV = proportion of heavy vehicles for movement (expressed as a decimal; e.g., PHV = 0.02 for 2% heavy vehicles).



Roundabouts The operation of roundabouts is similar to that of two-way STOP-controlled intersections. In roundabouts, however, entering drivers scan only one stream of traffic, the circulating stream, for an acceptable gap. The analysis procedure for roundabouts uses gap acceptance models and simple lane-based regression for single-lane and double-lane roundabouts. Simple gap acceptance models alone may not capture all observed behavior.

SwashSim Implementation Within Swashim, it is imperative that the micro-simulation tools are consistent with the methodology from HCM to adequately simulate real world situations. The headway times currently used for the Gap Acceptance in SwashSim are from CORSIM, an older simulation program, and correlate to driver type. The headway time by driver type is calculated based of the approaching target vehicle in the conflicting link of the designated downstream link of the subject vehicle. This headway time is then compared to the set headway times to determine if the gap is acceptable for the driver.

The following details the code used for this logic GAP2:

GetHeadwayTime GetInvertedIntersectionLink checkForGap FirstVeh (from existing code) GAP1
 * This uses our gap formulas, taking in a subject vehicle, time index, lane number, and the conflicting link index and its upstream link.
 * First, the position of the vehicle is found by taking its PositionLane value.
 * Then, the distance along the link is found by finding the upstream link length and subtracting the vehicle position
 * Next, the Speed of the vehicle is found by using the .Velocity property.
 * Then, the Gap is found by adding the vehicle distance and half of the intersection length
 * The headway time is then returned as a ratio of Gap over Speed.
 * This takes in a controller’s link index and returns the link index of the the other controller’s downstream link, which should be the inverted intersection link.
 * In order, the following links are found:
 * The controller link to the downstream left turn
 * The previous link to the downstream through
 * The previous link to the upstream right turn
 * The previous link to the upstream through
 * The previous link to the downstream through, which is the link we need, and is then returned.
 * This takes the subject vehicle, time index, and the conflicting links for near, far, and opposite. It returns whether or not a vehicle can go based on the available gap.
 * First, calculations are done to find the amount of cars on each conflicting lane.
 * Then, the subject vehicle’s movement code is determined.
 * If it is right, only the nearest lane is checked.
 * If it is left, the nearest two lanes, the opposite lane, and the closest far lane are checked.
 * If it is through, all of the lanes except for the opposite lane are checked.
 * If there are cars, the headway time is determined from GetHeadwayTime and is compared to the gap based on the CORSIM values for near and far acceptable gap.
 * If the headway time is greater than the acceptable gap, the car can go and “true” is returned.
 * First, finds the number of vehicles on the lane.
 * If there are no cars, set the ID to 0 (dummy)
 * If there is one car and there is no cars in the cross link, set the ID to 0
 * If there is one car and some on the cross link, get the ID
 * If there are multiple cars, iterate and choose the first car based on all the car’s distances on the link.
 * First, each phase, control point, link Id, and lane control point is checked so that they match each controller’s properties.
 * Next, the amount of vehicles is checked to be greater than 0, and a subject vehicle is found if so.
 * If the subject vehicle is stopped and is within a certain threshold distance (10ft) to the controller, the gap code will run.
 * The conflicting links are found by using upstream and downstream nodes.
 * The Near conflicting link is found by getting the right turn downstream – through downstream – through upstream.
 * The Far conflicting link is found by getting the left turn downstream – through downstream – through upstream.
 * The opposite conflicting link is found using the GetInvertedIntersectionLink method.
 * The gap is found as a bool using the checkForGap method.
 * If there is a gap, the light turns green, if not, it stays red.

Test Networks The Gap Acceptance Logic has been used to create a four-leg TWSC Swashsim Network for testing. This network has control points place on both minor roadways to determine the availability of gaps within the major street, giving control to the vehicles entering from the minor street. This network takes into account movements of rank 2,3, and 4.

The four leg two-way stop-controlled (TWSC) intersection features a major four-lane road intersected by a minor two-lane road. The four-lane roadway does not have a median between lanes, nor a turning bay for vehicles turning off the major road. The traffic on the major road is free flowing while the traffic on the minor road must stop and wait for an acceptable gap before entering the intersection. This intersection was chosen because of the extensive use of gap acceptance from the vehicles entering the intersection from the minor road. The gap acceptance logic also works with the T-intersection shown below and can eventually be altered to work with roundabouts.



In testing the gap acceptance logic on the test networks, minor changes were made throughout the process. The traffic flow was increased on the major road to more clearly demonstrate the vehicles on the minor road would wait to cross the stop control point until an acceptable gap was determined. Additionally, we made changes to the downstream movement percentages to test each downstream movement of the minor road individually for accuracy. We also increased the speeds and accelerations for the vehicles within the intersection as discussed in the Limitations section below.

Limitations ​


 * The HCM definition of critical gap is not consistent with the definition used within the professional field and can lead to inaccurate estimates of driver behavior.
 * It is also assumed that critical gaps remain constant over time, but research has shown that as time increases so does the driver's willingness to accept a smaller gap.
 * Two-stage gap acceptance was not yet analyzed in the gap acceptance logic created for SwashSim. This would require a divided roadway with a median, of which the test network did not include.
 * Due to the lack of a turn bay from the major road, the left turns are somewhat unrealistic. The vehicles currently do not follow the gap acceptance logic and will make the left turn onto the minor road regardless of oncoming traffic to move out of the flow of traffic from the major road.
 * The software will only allow the vehicles turning from the minor road to reach a set desired acceleration, that remains slower than a typical driver in the usual circumstances of entering an intersection without a green light. Rather than accelerating at a normal pace, a driver using gap acceptance is more likely to accelerate quicker to avoid traffic and make the gap. For this reason, it was decided to increase the desired acceleration of the vehicles to quicken the turning movements to an acceptable pace.
 * Although situations of hard-coding were eliminated best as possible, there is still a possibility that the gap acceptance logic primarily impacts the specific network for which it was created and would need alterations to be implemented in other rare scenarios.
 * In the situation that two vehicles traveling the minor road in the northbound and southbound direction simultaneously reach their respective stop control points and each have an acceptable gap to make a left turn, there is currently no logic for deciding the hierarchy as to which vehicle should enter the intersection first. At this time, both vehicles will enter the intersection at the same time step and will appear to “crash”. However, this is just a result of the animation and the lack of smooth left curves that do not overlap.
 * Another result of the animation is that, while vehicles turning right from the minor road only enter the lane nearest to the control point, they appear to enter the far lane first and then “jump” over to the near lane. This, again, is due to the lack of smooth right curves, and often depicts that the turning vehicle would hit another vehicle in the far lane.

References