I did the math. Figured I’d share….
Let’s say you’re at a store that’s located on the SE corner of an intersection. You need to go South. If you’re going to have to wait for the light to change, is it better to turn left or make a U-turn at the same intersection?

Answer: Go to whichever light is longer.
Let’s split the light sequence into 3 segments: Left Turn (LT), U-turn (UT) and Other (OT). The light sequence is OT, LT, UT.
The Total Time to cycle through the lights is:
TimeGreen(Total) = TimeGreen(LT) + TimeGreen(UT) + TimeGreen(OT)
The time spent waiting at the light is based on what light is green when you get there and how far into the cycle it was (If the Left Turn light is green when you stop (LT = Green), you have to wait for it to turn red before the U-Turn light (UT) changes to green. If OT is green (OT = Green), you have to wait for it AND the LT to change before the UT light will change). The average time spent waiting at a given light is calculated as:
AverageTimeWaiting(Light) = Weighted_AverageTimeWaiting(LT = Green) + Weighted_AverageTimeWaiting(UT = Green) + Weighted_AverageTimeWaiting(OT = Green)
Which means, the Average Time waiting at the Left Turn light would be:
AverageTimeWaiting(LT) = AverageTimeWaiting(LT = Green)*TimeGreen(LT)/TimeGreen(Total) + AverageTimeWaiting(UT = Green)*TimeGreen(UT)/TimeGreen(Total) +AverageTimeWaiting(OT = Green)*TimeGreen(OT)/TimeGreen(Total)
= 0 + (1/2 * TimeGreen(UT) + TimeGreen(OT) ) * TimeGreen(UT)/TimeGreen(Total) + 1/2 TimeGreen(OT) * TimeGreen(OT)/TimeGreen(Total)
= (1/2 * TimeGreen(UT)^2 + TimeGreen(OT)*TimeGreen(UT) + 1/2 TimeGreen(OT) ^ 2) / TimeGreen(Total)
Similarly, the Average Time waiting at the U-Turn light would be:
AverageTimeWaiting(UT) = AverageTimeWaiting(LT = Green)*TimeGreen(LT)/TimeGreen(Total) + AverageTimeWaiting(UT = Green)*TimeGreen(UT)/TimeGreen(Total) +AverageTimeWaiting(OT = Green)*TimeGreen(OT)/TimeGreen(Total)
= 1/2 TimeGreen(LT) * TimeGreen(LT)/TimeGreen(Total) + 0 + (1/2 * TimeGreen(LT) + TimeGreen(OT) ) * TimeGreen(LT)/TimeGreen(Total)
= (1/2 * TimeGreen(LT)^2 + TimeGreen(OT)*TimeGreen(LT) + 1/2 TimeGreen(OT) ^ 2) / TimeGreen(Total)
The formulas are basically the same, but AverageTimeWaiting(UT) is a function of LT and vice versa. Therefore, which if TimeGreen(LT) is larger, then AverageTimeWaiting(UT) will be larger (and AverageTimeWaiting(LT) smaller).
Time saved is calculated as:
TimeSaved = (1/2 * TimeGreen(Shortest)^2 + TimeGreen(OT)*TimeGreen(Shortest) + 1/2 TimeGreen(OT) ^ 2 – 1/2 * TimeGreen(Longest)^2 – TimeGreen(OT)*TimeGreen(Longest) – 1/2 TimeGreen(OT) ^ 2) / TimeGreen(Total)
= (1/2 * TimeGreen(Shortest)^2 + TimeGreen(OT)*TimeGreen(Shortest) – 1/2 * TimeGreen(Longest)^2 – TimeGreen(OT)*TimeGreen(Longest) ) / TimeGreen(Total)
= (1/2 * TimeGreen(Shortest)^2 + TimeGreen(OT)*(TimeGreen(Shortest) – TimeGreen(Longest)) – 1/2 * TimeGreen(Longest)^2 ) / TimeGreen(Total)
So, figure out which light is green longer and use that one. It will save you seconds a year!




