When you’re flying over a city on a plane at night, you can usually only see the lights below and all the streets that are brightly lit. However, many streets will not be in constant use all night, and so the lights will be wasting electricity by staying on. They also generate light pollution which can be a problem in residential areas.
If street lights are able to detect when cars or people are on the street and turn on when required then they will save a lot of electricity. This can be done by having motion sensors on the lights. However it would not be a good solution if the lights only turned on when they detect movement, and do not light far enough for people to see ahead clearly. Therefore, they will have to be able to communicate with each other and, for example, if one light at a junction lights and detects that a car turns into a particular road, then all the lights on that road can turn on as well.
The motion sensor might not be reliable when it is raining or foggy, so it might have to be combined with an infrared sensor to recognise cars and people on the road. The lights might also have to be constantly on, but dimmed, so that it can turn on quickly; however, this might not be required if LED lights are used.
This solution might be more suitable for residential areas where only a couple of cars use the street all night, and the light can be more of a nuisance to people trying to sleep.
As always, if you have a solution or if you have a problem you would like me to try to solve then please feel free to comment it.