This is how we do it in India...just that the drivers optimise instead of the cars talking to the signals for a local optimisation.
Edit: originally commented too early after reading the selfish driver part.
Edit: originally commented too early after reading the selfish driver part.
The drivers taking things into their own hands make it 10 times worse than it has to be.