I'm not claiming to be an expert on traffic light technology. Everything I write on this subject is based on lots of observation.
My thought process
I think it's time to improve traffic light design. They are not dynamic enough to meet today's loads. Almost every traffic light has one thing in common, timers. Timers are the root to how traffic lights behave. Sure, there may be some sensors to facilitate the operation but I think there is room for improvement. We can make traveling more efficient and less wasteful if we think about improving traffic flow.
What the future will hold
When it comes to thinking about traffic, I always revert to da Vinci's thought process... the human body. Da Vinci loved the design of the human body so much that when he was hired to do city planning, this was his guide. He is absolutely right. Obviously there are no traffic lights in the body or anything remotely close. That's because blood has the advantage of actually being a fluid and collisions between blood vessels don't require vessel insurance. Regardless, traffic flow is still a 'fluid' like flow. I think the future of traffic lights will be more dynamic. The keystone will not focus solely on timing but efficiency.
How it will work
I think there are 2 engineering equations that could be used as the backbone of traffic lights. The first being volumetric flow rate (Qin = Qout in any intersection):
Q = a * v
Where a is the # of lanes, v is the average velocity.The second equation being efficiency:

(this is in terms of power but can be changed to whatever is being measured)
Combine these 2 equations with the appropriate sensors at each intersection and you can have a dynamic intersection. The algorithm would be designed to optimize efficiency of the intersection and change the lights accordingly. The more cars leaving the intersection the higher the efficiency. This would come in very handy when your driving around at 2am and there isn't another car for miles.
The objections
Granted, some intersections can be very complex. Timers would still be needed for the cross walk parts. Another draw back is that the volumetric flow rate is not a perfect representation of car flow. For example, if 2 lanes merge into one, the cars do not increase velocity in the 1 lane section (a liquid would). Therefore volumetric flow rate is not a perfect relation to cars. Lastly, an intersection is only as efficient as the next intersection allows it to be (This is why it would be great to have an integrated efficiency grid throughout an entire city).
The Conclusion/Summary
This post is still a high level view of how to refine traffic lights. Although I don't formulate an algorithm, it's a starting point to think about more dynamic traffic lights. Traffic lights don't do enough to handle the modern traffic flows. I'm suggesting an algorithm based on efficiency and volumetric flow rate. This would reduce congestion and get cars moving in the right direction more accurately.