Adaptive Traffic Signal Control Using Fuzzy Logic
Adaptive Traffic Signal Control Using Fuzzy Logic
Stephen Chiu
Rockwell International Science Center
1049 Camino Dos SOS
Thousand Oaks, CA 91360
Abstract
We present a distributed approach to traffic signal control, where the signal timing
parameters at a given intersectionare adjusted asfiwctions of the local traflc condition and
of the signal timing parameters at adjacent intersections. Thus, the signal timing parameters
evolve dynamically using only local information to improve trafficflow. This distributed
approach provides for a fault-tolerant, highly responsive trafic management system.
The signal timing at an intersection is defined by three parameters: cycle time,phase split,
and ofiset. We use fuzzy decision rules to adjust these three parameters based only on
local information. The amount of change in the timing parameters during each cycle is
limited to a smallfraction of the current parameters to ensure smooth transition. We show
the effectiveness of this method through simulation of the traffic flow in a network of
controlled intersections.
1. Background
Traffic signals in use today typically operate based on a preset timing schedule. The most
common traffic control system used in the United States is the Urban Traffic Control
System (UTCS), developed by the Federal Highway Administration in the 1970's. The
UTCS generates timing schedules off-line on a central computer based on average traffic
conditions for a specific time of day; the schedules are then downloaded to the local
controllers at the corresponding time of day. The timing schedules are typically obtained
by either maximizing the bandwidth on arterial streets or minimizing a disutility index that
is generally a measure of delay and stops. Computer programs such as MAXBAND [ 11
and TRANSYT-7F [2] are well established means for performing these optimizations.
The off-line, global optimization approach used by UTCS cannot respond adequately to
unpredictable changes in traffic demand. With the availability of inexpensive
microprocessors, several real-time adaptive traffic control systems were developed in the
late 70s and early 8 0 s to address this problem. These systems can respond to changing
traffic demand by performing incremental optimizations at the local level. The most notable
of these are SCATS [3,4,5], developed in Australia, and SCOOT [5,6], developed in
England. SCATS is installed in several major cities in Australia, New Zealand, and parts
of Asia. SCOOT is installed in over 40 cities, of which 8 are outside of England.
Both SCATS and SCOOT incrementally optimize the signals' cycle time, phase split, and
offset. The cycle time is the duration for completing all phases of a signal; phase split is the
division of the cycle time into periods of green signal for competing approaches; offset is
the time relationship between the start of each phase among adjacent intersections. SCATS
organizes groups of intersections into subsystems. Each subsystem contains only one
critical intersection whose timing parameters are adjusted directly by a regional computer
98
based on the average prevailing traffic condition for the area. All other intersections in the
subsystem are always coordinated with the critical intersection, sharing a common cycle
time and coordinated phase split and offset. Subsystems may be linked to form a larger
coordinated system when their cycle times are nearly equal. At the lower level, each
intersection can independently shorten or omit a particular phase based on local traffic
demand; however, any time saved by ending a phase early must be added to the subsequent
phase to maintain a common cycle time among all intersections in the subsystem. The basic
traffic data used by SCATS is the "degree of saturation", defined as the ratio of the
effectively used green time to the total available green time. Cycle time for a critical
intersection is adjusted to maintain a high degree of saturation for the lane with the greatest
degree of saturation. Phase split for a critical intersection is adjusted to maintain equal
degrees of saturation on competing approaches. The offsets among the intersections in a
subsystem are selected to minimize stops in the direction of dominant traffic flow.
Technical details are not available from literature on exactly how the cycle time and phase
split of a critical intersection are adjusted. It seems that SCATS does not explicitly optimize
any specific performance measure, such as average delay or stops.
SCOOT uses real-time traffic data to obtain traffic flow models, called "cyclic flow
profiles", on-line. The cyclic flow profiles are then used to estimate how many vehicles
will arrive at a downstream signal when the signal is red. This estimate provides
predictions of queue size for different hypothetical changes in the signal timing parameters.
SCOOT'S objective is to minimize the sum of the average queues in an area. A few
seconds before every phase change, SCOOT uses the flow model to determine whether it is
better to delay or advance the time of the phase change by 4 seconds, or leave it unaltered.
Once a cycle, a similar question is asked to determine whether the offset should be set 4
seconds earlier or later. Once every few minutes, a similar question is asked to determine
whether the cycle time should be incremented or decremented by a few seconds. Thus,
SCOOT changes its timing parameters in fixed increments to optimize an explicit
performance objective.
It is problematic that a specific performance objective will be appropriate for all traffic
conditions. For example, maximizing bandwidth on arterial streets may cause extended
wait time for vehicles on minor streets. On the other hand, minimizing delay and stops
generally does not result in maximum bandwidth. This problem is typically addressed by
the use of weighting factors; the TRANSYT optimization program provides user-selectable
link-to-link flow weighting, stop weighting factors, and delay weighting factors. A traffic
engineer can vary these weighting factors until the program produces a good (by human
judgement) compromise solution. Perhaps a performance index should be a function of the
traffic condition; it may be appropriate to emphasize an equitable distribution of movement
opportunities when traffic volume is low and emphasize overall network efficiency when
the traffic is congested. In view of the uncertainty in defining a suitable performance
measure, the reactive type of control provided by SCATS, where there is no explicit effort
to optimize any specific performance measure, appears to have merit. We believe
implementing this type of control using fuzzy logic decision rules can further enhance the
appropriateness of the control actions and produce performance characteristics that more
closely match human's sensibility of "good" traffic management.
In past work performed by Pappis and Mamdani [7], fuzzy logic was applied to control an
intersection of two one-way streets. It was assumed that vehicle detectors were placed
sufficiently upstream from the intersection to inform the controller about future arrival of
vehicles at the intersection for the next 11 seconds. It is then possible to predict the the
number of vehicles that will cross the intersection and the size of the queue that will
accumulate if no change to the the signal state takes place in the next N seconds, for N =
1,2, ...10. The predicted outcomes are evaluated by fuzzy decision rules to determine the
99
li
desirability of extending the current state for N more seconds. Each of the possible
extensions is assigned a degree of confidence by the rules, and the extension with
maximum confidence is selected for implementation. Before the extended period ends, the
rules are applied again to see if further extensions are desirable.
Here we apply fuzzy logic to the general problem of controlling multiple intersections in a
network of two-way streets. We propose a highly distributed architecture in which each
intersection independently adjusts its cycle time, phase split, and offset using only local
traffic data collected at the intersection. This architecture provides for a fault-tolerant traffic
management system where traffic can be managed by the collective actions of simple
microprocessors located at each intersection; hardware failure at a small number of
intersections should have minimal effect on overall network performance. By requiring
only local traffic data for operation, the controllers can be installed individually and
incrementally into an area with existing signal controllers. Each intersection uses an
identical set of fuzzy decision rules to adjust its timing parameters. The rules for adjusting
the cycle time and phase split follow the same general principles used by SCATS: cycle
time is adjusted to maintain a good degree of Saturation and phase split is adjusted to
achieve equal degrees of saturation on competing approaches. The offset at each
intersection is adjusted incrementally to coordinate with the adjacent upstream intersection
to minimize stops in the direction of dominant traffic flow. Through simulation of a small
network of streets, the distributed fuzzy control system has shown to be effective in rapidly
reducing delay.
0
X
I 100
80
100
Fuzzy decision rules are typically expressed in the following form:
where X 1 and X 2 are the inputs to the controller, U is the output, A’s and B‘s are
membership functions, and the subscript i denotes the rule number. For example, a rule
for engine control may state “If the speed-error is negative-small and the
speed-error-change is positive-big, then the throttle-change is positive-small.” Given
input values of x1 and x2, the degree offurfiZfmnt@OF) of rule i is given by the minimum
of the degrees of satisfaction of the individual antecedent clauses, i.e.,
n
C (DOFi )B$
i=l
U =
n
where Bf is the defuzzified value of the membership function B , and n is the number of
rules. The defuzzified value of a membership function is the single value that best
represents the linguistic description; typically, we take the abscissa of a membership
function’s centroid as its defuzzified value. In essence, each rule contributes a conclusion
weighted by the degree to which the antecedent of the rule is fulfilled. The final control
decision is obtained as the weighted average of all the contributed conclusions. Although
there are several variant methods of fuzzy inference computation, the above method has
gained popularity in control applications due to its computational and analytical simplicity.
A set of 40 fuzzy decision rules was used for adjusting the signal timing parameters. The
rules for adjusting cycle time, phase split, and offset are decoupled so that these parameters
are adjusted independently; this greatly simplifies the rule base. Although independent
adjustment of these parameters may result in one parameter change working against
another, no conflict was evident in simulations under various traffic conditions. Since
incremental adjustments are made at every phase change, a conflicting adjustment will most
likely be absorbed by the numerous successive adjustments.
3.1 Cycle Time Adjustment
Cycle time is adjusted to maintain a good degree of saturation on the approach with highest
saturation. We define the degree of saturation for a given approach as the actual number of
vehicles that passed through the intersection during the green period divided by the
maximum number of vehicles that can pass through the intersection during that period.
Hence, the degree of saturation is a measure of how effectively the green period is being
used. The primary reason for adjusting cycle time to maintain a given degree of saturation
is not to ensure efficient use of green periods, but to control delay and stops. When traffic
volume is low, the cycle time must be reduced to maintain a given degree of saturation; this
results in short cycle times that reduce the delay in waiting for phase changes. When the
10 1
traffic volume is high, the cycle time must be increased to maintain the same degree of
saturation; this results in long cycle times that reduce the number of stops.
The rules for adjusting the cycle time are shown in Fig. 2 and the corresponding
membership functions are shown in Fig. 5. The inputs to the rules are: (1) the highest
degree of saturation on any approach (denoted as "highest-sat" in the rules), and (2) the
highest degree of saturation on its competing approaches (denoted as "cross-sat"). The
output of the rules is the amount of adjustment to the current cycle time, expressed as a
fraction of the current cycle time. The maximum adjustment allowed is 20% of the current
cycle time. The rules basically adjust the cycle time in proportion to the deviation of the
degree of saturation from the desired saturation value. However, when the highest
saturation is high and the saturation on the competing approach is low, we can let the phase
split adjustments alleviate the high saturation. It should be noted that the "optimal" degree
of saturation to be maintained by the controller is only 0.55, whereas SCATS typically
attempts to maintain a degree of saturation of 0.9. This discrepancy arises from the method
of calculating the maximum (saturated) flow value. We derive the maximum flow value
based on a platoon of vehicles with no gaps moving through the intersection at the speed
limit, while SCATS uses calibrated, more realistic values.
I
i f highest-sat is none t h e n cycl-change i s n.big;
i f highest-sat is l o w t h e n c y c l - c h a n g e i s n.med;
i f highest-sat is s l i g h t l y low t h e n c y c l - c h a n g e i s n.sm1;
i f highest-sat is g o o d t h e n c y c l - c h a n g e i s zero;
i f highest-sat is h i g h a n d cross-sat i s n o t h i g h t h e n c y c l - c h a n g e i s p.sml;
i f highest-sat is h i g h a n d cross-sat i s h i g h t h e n c y c l - c h a n g e i s p.med;
i f highest-sat is s a t u r a t e d t h e n cycl-change i s p.big;
r
102
through the local intersection unstopped. The required local adjustment to the time of the
next phase change is calculated based on this target green time. Fuzzy rules are then
applied to determine what fraction of the required adjustment can be reasonably executed in
the current cycle. The rules for determining the allowable adjustment are shown in Fig. 4
and the corresponding membership functions are shown in Fig. 5. The inputs to the rules
are: (1) the normalized difference between the traffic volume in the dominant direction and
the average volume in the remaining directions ("vol-cliff'); and (2) the required time
adjustment relative to the adjustable amount of time ("req-adjust"), e.g., the amount by
which the current green phase is to be ended early divided by the the current green period.
The output of the rules is the allowable adjustment, expressed as a fraction of the required
amount of adjustment. These rules will allow a large fraction of the adjustment to be made
if there is a significant advantage to be gained by coordinating the flow in the dominant
direction and that the adjustment can be made without significant disruption to the current
schedule.
I
if sat-diff is p.big and highest-sat is saturated then green-change is p.big;
if sat-dif f is p.big and highest-sat is high then green-change is p.biq;
if sat-diff is p.big and highest-sat is not high then green-change is p.med;
if s a t d i ff is n.big and highest-sat is saturated then green-change is n.big;
if sat-diff is n.big and highest-sat is high then green-change is n.big;
if sat-diff is n.big and highest-sat is not high then green-change is n.med;
if sat-diff is p.med and highest-sat is saturated then green-change is p.med;
if sat-diff is p.med and highest-sat is high then green-change is p.med;
if sat-diff is p.med and highest-sat is not high then green-change is p.sml;
if sat-diff is n.med and highest-sat is saturated then green_change is n.med;
if sat-diff is n.med and highest-sat is high then green-change is n.med;
if sat-diff is n.med and highest-sat is not high then green-change is n.sml;
if sat-diff is p.sml then green-change is p.sml;
if sat-diff is n.sml then green-change is n.sml;
if sat-diff is zero then green-change is zero;
I
if vol-di f f is none then allow-adjust is none;
if vol-di f f is very.high then allow-adjust is none;
if vol-dif f is very.high and req-adjust is none then allow-adjust is very high;
if vol-di f f is very.high and req-adjust is low then allow-adjust is very high;
if vol-di f f is very.high and req-adjust is medium then allow-adjust is high;
if vol-di f f is very.high and req-adjust is high then allow-adjust is medium;
if vol-dif f is high and req-adjust is none then allow-adjust is very high;
if vol-di f f is high and req-adjust is low then allow-adjust is very high;
if vol-di f f is high and req-adjust is medium then allow-adjust is high;
if vol-dif f is high and req-adjust is high then allow-adjust is low;
if vol-dif f is medium and req-adjust is none then allow-adjust is very high;
if vol-di f f is medium and req-adjust is low then allow-adjust is high;
if vol-di f f is medium and req-adjust is medium then allow-adjust is medium;
if vol-di f f is medium and req-adjust is high then allow-adjust is low;
if vol-di f f is low and req-adjust is none then allow-adjust is high;
if vol-di f f is low and req-adjust is l o w then allow-adjust is medium;
if vol-di f f is low and req-adjust is medium then allow-adjust is low;
if vol-dif f is low and req-adjust is high then allow-adjust is low;
103
,not high
I I
-0.2 cyd-change, green-change 0.2
1 I
-0.5 sat-diff 0.5
I 1
0.0 vol-diff, req-adjust. allow-adjust 1.O
Simulation was performed to verify the effectiveness of the distributed fuzzy control
scheme. We considered a small network of intersections formed by six streets, shown in
Fig. 6. A vehicle arrival rate is assigned to each end of a street. At every simulation time
step, a random number is generated for each lane of a street and compared with the
assigned vehicle arrival rate to determine whether a vehicle should be added to the
beginning of the lane. Some simplifying assumptions were used in the simulation model:
(1) unless stopped, a vehicle always moves at the speed prescribed by the speed limit of the
street, (2) a vehicle cannot change lane, and (3) a vehicle cannot turn. Vehicle counters are
assumed to be installed in all lanes of a street at each intersection. When the the green
phase begins for a given approach, the number of vehicles passing through the intersection
during the green period is counted. The degree of saturation for each approach is then
calculated from the vehicle count and the length of the green period. At the start of each
phase change, the controller computes the time of the next phase change using its current
cycle time and phase split values. The fuzzy decision rules are then applied to adjust the
time of the next phase change according to the offset adjustment rules; the adjusted cycle
time and phase split values are not used until the subsequent computation of the next phase
change time.
Fig. 7 shows the average waiting time per vehicle per second spent in the network as a
function of time. For the first 30 minutes, all intersections have a fixed cycle time of 40
seconds, a green duration of 20 seconds, and start their phases at the same time. At the end
104
of 30 minutes, intersections A, B, and C shown in Fig. 6 were allowed to adapt their
timing parameters according to the fuzzy decision rules. At the end of 60 minutes, all
intersections were allowed to adapt. We see that the improvement is minimal when only 3
intersections are adaptive, but becomes significant when all intersections are adaptive.
0.4 I I I I
I
0.3
I I all intersections
E" 0.25 all intersections at I
G
c)
."
40 sec cyde time, I 3 intersections
g
w 0.2 t
20 sec green
I
adapt
I
0.15
I
h I
0.1 I I I I
0 10 20 30 40 50 60 70 80 90
Time (min)
Fig. 7 . Simulation result for the case in which all intersections have an
initial cycle time of 40 secondr.
105
Fig. 8 shows the result of a simulation performed using the same sequence of events, but
with an initial cycle time of 20 seconds and green duration of 10 seconds for all
intersections. In this case, the improvement is significant even when only 3 intersections
are adaptive. This is because the cycle time for the non-adaptive intersections closely
matches that chosen by the adaptive intersections. When two systems operate at widely
different time scales, the operation of one will have minimal effect on the other. Sharing a
common cycle time has enabled the adaptive intersections to have greater effect on overall
system performance.
0.35
h I
I I
0.3
Q
2 &+wwwj I
I\
0.1 1
I
1
I
I
-- I
0 10 20 30 40 50 60 70 80 90
Time (min)
Fig. 8. Simulation result for the case in which all intersections have an
initial cycle time of 20 secon&.
5. Concluding Remarks
We have investigated the use of fuzzy decision rules for adaptive traffic control. A highly
distributed architecture was considered, where the timing parameters at each intersection are
adjusted using only local information and coordinated only with adjacent intersections.
Although this localized approach simplifies incremental integration of the fuzzy controller
into existing systems, simulation results show that the effectiveness of a small number of
"smart" intersectionsis limited if they operate at a cycle time widely different from the rest
of the system. In this case, constraining the controller to maintain a fixed cycle time may
provide better overall system performance. For the case in which all intersections are
adaptive, we need to also investigate whether better performance is achieved by
constraining all intersections to share the same variable cycle time.
There is much that can be done to further improve the present fuzzy controller, such as
including queue length as an input and using trend data for predictive control. The
flexibility of fuzzy decision rules greatly simplifies these extensions.
References
[ 11 J. Little, M. Kelson, and N. Gamer, "MAXBAND: A Program for Setting Signals on
Arteries and Triangular Networks," Transportation Research Record 795, National
Research Council, Washington, D.C., pp. 40-46, 1981.
[2] C. Wallace, et. al., TRANSYT-7F User's Manual (Release 6), prepared for FHWA
by the Transportation Research Center, University of Florida, Gainesville, FL, 1988.
A. Sims, "The Sydney Coordinated Adaptive Traffic System," Proc. ASCE
Engineering Foundation Conference on Research Priorities in Computer Control of
Urban Traffic Systems, pp. 12-27, 1979.
[ 5 ] J. Luk, "Two traffic-responsive area traffic control methods: SCAT and SCOOT,"
Trafic Engineering and Control, pp. 14-20, 1984.
[6] D. Robertson and R. D. Bretherton, "Optimizing networks of traffic signals in real
time - the SCOOT method," IEEE Trans. on Vehicular Technology, vol. 40, no. 1,
pp. 11-15, February 1991.
[7] C. Pappis and E. Mamdani, "A fuzzy logic controller for a traffic junction," IEEE
Trans. Syst., Man, Cybern., vol. SMC-7, no. 10, October 1977.
[8] L. Zadeh, "Outline of a new approach to the analysis of complex systems and decision
processes," IEEE Trans. Syst., Man. Cybern., vol. SMC-3, no. 1, pp. 28-44, 1973.
107