A while back I made a mathematical model for traffic flow for my own personal amusement. I found the model was a system of ordinary differential equation (no real surprise here). Your algebraic model does not take into account acceleration and deceleration (which is a substantial portion of road/street movement), and assumes that the effect of congestion can be expressed as a single constant (your fudge factor).

I no longer have the model, so I am working from memory here, and it is be imperfect.

Congestion modeled something like:

d1/dt = d1*c1(d2/dt*d3/dt*...), in other words, your rate of travel is directly affected by the rate of travel of the car in front of you, whose rate is directly affected by the car in front of them, etc.

c1 will be a complicated function in its own right that contains reaction speed, a logarithmic model for acceleration/deceleration, probability of encounter, etc.

Your rate of travel between stop lights/signs models something like

d1/dt = d1*c2(1+1/h)^g, in other words, your acceleration is some kind of logarithmic model that is bounded on both sides between 0 and the speed limit. I am pretty sure I had to use a piecewise function for this term because the simple logarithmic never actually reaches 0 or the speed limit.

I seem to remember the model had 5 terms in it for each car, but these are the 2 most important ones. One could then run a numerical simulation and allow traffic to reach steady state. By changing different factors in the problem, you can find a steady state for any number of conditions.

Once you have a steady state, a simple linear extrapolation can be used to model traffic flow. Ie, "if condition A, B, C, ..." use model X. Where X is just good old d = rt, and r is calculated from the above system of ODE's given a set of conditions.

Most likely the devs started with a simpler model, or just borrowed something from the department of transportation, found some steady state rates, and then just fudged stuff around until it worked.

So a Sim finds a job, the game uses some algorithm to calculate the most direct path, looks at the conditions for that path, then chooses a particular X. If X causes commute time to be too long, it looks for an alternate path. If it can not find a suitable commute time, the Sim leaves town.

What we end up with is Sims that will not walk 2 houses the wrong way to get on the subway, traffic that does not slow or stop at intersections, and eternal commuters that have forgotten where they come from and where they are going.

The NAM traffic simulator sort of forces the game to look for alternate routes that might be faster. This really is the single most important part of the NAM in my opinion.

You can by the way simulate bikes by raising the walking speed. It looks weird to me in game, but it is the best compromise we have.

Subways do not need road access, Sims need road access. A Sim needs to be able to reach the road to go anywhere, so all residential zone must have direct road access. Once they are on the road, they can enter any kind of transit switch such as a bus stop, a NAM pedmall, etc and gain access to stuff that is does not have direct road access. So you can put your subway station 3 tiles away from the road provided there is a pedmall for the Sim to walk on, the Sim will also need access to that ped mall via a transit switch such as a bus stop, certain parking lots, etc. There are some interesting threads on this forum where folks have created cities with no or very minimal car traffic.

Bus stops are a gripe for a lot of us. Requiring a tile for a bus stop is dumb, it should just be part of the sidewalk. But that is what RTMT is for. RTMT introduces some of it's own issues (mainly that a stop blocks residential access to the adjacent tile), but it is an excellent mod.

As for commercial. CS and CO are very different animals. CS, just like in real life, depends on traffic flow. This is why in real life commercial services line the busy streets that people commute up and down. In game, you need to have both a demand for CS, and the CS bases property value on the amount of traffic (among other things). Even on Michigan Avenue in Chicago, there are no CS towers. There are plenty of CO towers with malls occupying the first 3 to 5 floors. There might be CS towers in places like Hong Kong, or Tokyo, but my bet is that they are the same as Chicago. Big malls sit alongside very busy avenues to capture commuters.

BTW, Sims do not actually shop, but they do work in CS buildings.

CO on the other hand is driven by wealth level (which is in turn driven by things like education and recreation). CO likes less traffic congestion (this is probably to allow the game to make good choices about where to place CS vs CO), less pollution, and stuff like plazas.

As for the farmers moving into cities. You will bump into the original dev's ideology from time to time. He did not seem to get the idea that many farmers hold degrees, and made the game such that anyone who was educated would rather enjoy city life. CAM, one of the census depository mods, and Pegasus's farm mod all address this issue. None of the solutions are perfect, but they do allow farms to grow and prosper.

Just about everything you have observed, is the same stuff that folks around here observed and have worked hard to find work arounds for. None of it is perfect, but it is a vast improvement, and in my opinion has made the game the best simulator around. Other games may do particular things better, but none of them do it all.