This doesn't make any sense. Who said you would wait 20 minutes to go east at a light? If 20 cars go north/south, and 1 car goes east/west, the light shouldn't be 60/40, it should be 80/20 or 90/10.
You said it should be proportional to the number of cars going each way. That would mean 95/5 if there were 20 times as many cars going north/south. The "20 minutes" was hyperbole. The point is, a proportional system breaks down at some point. But yes, 80/20 is a bit more reasonable.
For example north/south stays green for 1:00 to 1:30 and then the east/west light goes green for :15. For people who are going east/west half of them can make a right on red and wouldn't even have to wait for the green. This would help out the flow of traffic majorly.
The way it is now is that the north/south light goes green for :30 and then goes red, while the east/west light goes green for :20 and then goes red.
There is no way that this is gas/time efficient. I am in no position to do anything about it, but believe me it is not right and it wastes a huge amount of $$$.
Actually, you could just go down to city hall and complain about that intersection. Obviously I don't live in your town so I don't know if it's as bad as you describe, but you could have a few neighbors complain too. Wouldn't be that hard to get it fixed if you care enough and it really is broken.
Every :30 that north/south light is changing to red and 20 cars are stopping at the light while 1 or 2 cars breezes through onto the main road. If the north/south light stayed green for 1:30, that is another 40 cars that do not have to stop and could make it through the light saving time & gas, meanwhile the other 3 to 5 cars going east/west during that 1:30 would just have to wait at the light for another 1 minute, not 20 minutes. So would you rather 5 cars wait another minute which would be 5 total minutes, or 40 cars get stopped twice at 20 cars each time, which would take 20 seconds each, that is a total of 20x20x2=800 seconds which is another 13 minutes. So every 1:30, 8 total minutes is wasted at every traffic light that does this. Multiply that by who knows how many lights there are and the numbers pile up very quickly. It is not time or gas efficient the way it is, no way.
All you've done is push the problem to a different place. Instead of "wasting" 15 seconds here and there while driving north, you waste a minute every time you drive east.
Check it out. Let's suppose you drive 3 blocks east and then 12 blocks north to get to work. Pretty typical -- you get to the main road as fast as you can, use it, and then get off.
If the lights are all 60/40, let's say you waste an average of 15 seconds at every light going north. If you are going east, you wait an average of 20 seconds, just a little bit longer.
3 blocks east, 12 blocks north = 3*20 + 12*15 = 240 seconds = 4 minutes at intersections
Now let's switch the whole system to 90/10. Now when you drive north you only wait an average of 5 seconds at an intersection (woo hoo!). But, when you drive east each intersection takes a full minute while all the northbound traffic drives go by.
3 blocks east, 12 blocks north = 3*60 + 12*5 = 240 seconds = 4 minutes at intersections
BUMMER, you just wasted the exact same amount of gas!!!
You see, your assumption break down when you look at the actual system and not at just one intersection. Now do you see why traffic lights don't always work like you think they should?