The hardest part is predicting people

In city traffic, a self-driving car must do more than recognize lanes and obey signals. It has to anticipate what nearby road users will do next—and people do not always follow the rules or move in predictable ways. A driver may turn across its path, brake suddenly, or pull into a gap the car was preparing to use. A cyclist or pedestrian can also change direction quickly.

That makes the actions of human road users a frequent source of danger. The autonomous car may be struck even when it is moving cautiously; in other cases, its system may misread an unusual situation or respond too slowly.

Why city streets are especially demanding

A highway scene is often relatively orderly: traffic moves in the same direction, and crossings are limited. On a city street, parked cars can hide pedestrians, delivery vehicles can stop unexpectedly, and intersections bring together turning cars, cyclists, and people on foot. The car’s sensors must detect what is happening, while its software estimates what might happen next and chooses a safe response.

The difficulty is not simply seeing an object. It is deciding whether a person is about to step into the road or whether a vehicle will yield—and doing so with enough time to act. When someone makes a sudden or illegal move, there may be little room to avoid a collision.

So the recurring challenge is the gap between rule-following software and messy human behavior. Self-driving cars can manage routine traffic, but city streets test how safely they handle the moments when other people do something unexpected.