Improving Urban Mobility by Understanding Its Complexity



For nearly the past two decades, I have worked in the field of complex systems as a computer engineer, using simulations to explore scenarios for designing and controlling complex systems that can adapt to changes in their environment in a robust fashion. My focus is urban mobility because it deals with highly complex systems and affects billions of people worldwide, and moreover, with Mexico City boasting the “most painful commute” in the world, as a local I have extra motivation to use recent scientific advances to improve my city’s mobility.

The source of the complexity of urban mobility comes from the vast number of interactions within the system: interactions between (and among) pedestrians, cars, buses, trains, vehicles and infrastructure. These components cannot be studied in isolation, as the future of each is partly but strongly determined by its interactions with other components and its environment, which makes it difficult to separate the components of a complex system. However, traditional scientific and engineering methods rely on separability, and so we are obliged to find novel approaches to complex systems. If we cannot study components individually, we must model two levels of abstraction at the same time: the component level and the system level. This lets us understand how interactions between components give rise to system properties, and also how system properties constrain and promote behaviors and states of the components. Computer simulations have been the ideal tool for this, to the point that they have been compared with microscopes or telescopes. Similar to the way these instruments allow us to explore the microworld and the macroworld, computer simulations let us explore the complex world.

As our understanding of complex systems has increased, we have realized that interactions between components generate novel information that is not present in initial nor boundary conditions. This implies that even if we know everything there is to know about a complex system, its predictability is still limited, as we do not know what information will be generated until the moment it happens. Science and engineering have assumed that the world is predictable, and that we simply need to find the proper laws of nature in order to be able to foresee the future, but the study of complex systems has shown that this assumption is misguided. If novel information is produced by interactions, then the only way to perceive the future is by actually going there. This limited prediction requires us to take a different approach when dealing with complex systems, such as those related to urban mobility. Instead of building predictive systems, we will be more efficient if we build adaptive systems that can adjust to the current situation as changes present themselves. While there are things we can predict—and predict we should, as it is advantageous to deal with predictable situations beforehand—the fact that there are things we cannot predict means we must provide our systems with the capabilities to adapt by themselves to the unexpected situations we know will occur.

To this end, we can identify several factors affecting urban mobility: transportation requirements (for example, living far from workplace or school), schedule distribution (i.e.,if everyone has to be at the same place at the same time, demand spikes during rush hours), quantity (of passengers, vehicles), capacity (of public transport, infrastructure), technology (efficiency of infrastructure), planning and regulation (to avoid undesired situations, although they must be enforced), social contagion (if owning a private vehicle is seen as a sign of “success”), and human behavior (of passengers and drivers). This last one is perhaps the factor over which citizens have most control. Still, in seeking individual benefits, for example, in trying to reach our destination faster, we can generate delays at the system level (e.g. advancing our car into a crowded intersection and blocking traffic flow, or not letting subway doors close). Usually policies, regulations, and codes try to mediate these behaviors precisely to avoid these conflicts, but in many cases people will continue to seek their own individual benefit as long as they can get away with it.

Some policies are not efficient in all situations, which creates the temptation for individuals to ignore those policies. For example, if on a freeway the speed limit is set so that it is safe to drive under all weather conditions, people will be inclined to break the limit when conditions are good, especially if other drivers do the same. Cameras and other sensors to detect and punish such behaviors work only locally, as drivers tend to change their speed only in the vicinity of the sensors. A more effective approach would be to set dynamic speed limits according to the immediate conditions. Moreover, due to the “slower-is-faster” effect, in areas of dense traffic vehicles actually move faster if the speed limit is lower, as they are more likely to move forward continuously and avoid constant stop-and-go braking and accelerating.

In other cases, policies are simply not understood by the public, making it difficult to generate acceptance. But if citizens are made aware of the benefit said policies will have, the public will be more inclined to adopt the regulations. This means that it must be clear that the policy will have positive effects—which is not always the case, as many policies are, unfortunately, the product of whims rather than scientific experimentation.

In order to better develop and implement public policies to maximize user adoption and system functionality, I suggest the following five recommendations, based on my experience with complex systems and urban mobility.


Urban systems change constantly. Even if we have all the positions and velocities of all the vehicles in a city, we cannot reliably predict for more than a couple of minutes into the future where vehicles will be, as their positions depend on countless externalities, from the reaction times of other drivers to blocked lanes to pedestrians crossing and more. We may have statistics about past densities, which can be useful for planning infrastructure, but our urban systems will be much more efficient if they are able to adapt to changes in demand as quickly as these occur, in other words, within seconds.


One way to achieve efficient mobility is by regulating interactions of the components of a system. If the behavior of one component negatively affects the mobility of another, we can say that there is friction generated. If we regulate interactions to minimize friction, we will achieve efficient performance. This is also evident with the slower-is-faster effect: If components try to maximize their benefit, in many cases they create negative interactions that lead to global inefficiency. If we regulate and constrain the components, even if they do not go as fast as they would like to, they can reach their destination faster, to the benefit of all (both the components and the system).


To make correct decisions, systems require information. Sensors are becoming cheaper, making it possible to deploy them massively to obtain relevant information that’s necessary for the system to be able to adapt to changes in demand, as they occur.


Information collected by sensors can sit nicely on the cloud, but to make use of the information we must use adaptive algorithms that are able to respond precisely to the changes in demand. In our laboratory, we have used self-organization to design adaptive algorithms: Instead of trying to solve a problem that we know will change in ways we cannot know beforehand, we build components that will constantly seek solutions to the current situation by the interactions present—so when the situation changes, the algorithm adapts.


If algorithms can give us solutions, these solutions must be taken into the real world in the form of agents. In some cases, agents are already there (for example, traffic lights), but in others we still have to design them, as in the case of regulating driver or passenger behaviors. Agents must have the ability to influence urban mobility systems towards the desired state, otherwise sensors and algorithms will be of little use.

The benefits I believe would result from following these recommendations, and the many potential solutions already identified to resolve current problems, make me optimistic about the future of urban mobility. Despite the many challenges inherent to its systems, I think we have the capability to prevent future generations from suffering mobility as a constraint and rather experience it as a system full of opportunity.




Gershenson, C. (2005). Self-organizing traffic lights. Complex Systems, 16(1): 29–53.

Gershenson, C. (2007). Design and Control of Self-organizing Systems. CopIt Arxives, Mexico.

Gershenson, C. (2011). Self-organization leads to supraoptimal performance in public transportation systems. PLoS ONE, 6(6): e21469.

Gershenson, C. (2012a). Self-organizing urban transportation systems. In Portugali, J., Meyer, H., Stolk, E., and Tan, E., editors, Complexity Theories of Cities Have Come of Age: An Overview with Implications to Urban Planning and Design, pp. 269– 279. Springer, Berlin Heidelberg.

Gershenson, C. (2012b). The world as evolving information. In Minai, A., Braha, D., and Bar-Yam, Y., editors, Unifying Themes in Complex Systems, vol. VII, pp. 100–115. Springer, Berlin Heidelberg.

Gershenson, C. (2013a). Facing complexity: Prediction vs. adaptation. In Massip, A. and Bastardas, A., editors, Complexity Perspectives on Language, Communication and Society, pp. 3–14. Springer, Berlin Heidelberg.

Gershenson, C. (2013b). Living in living cities. Artificial Life, 19(3 & 4): 401–420.

Gershenson, C. and Helbing, D. (2015). When slower is faster. Complexity, 21(2): 9–15.

Gershenson, C. and Pineda, L. A. (2009). Why does public transport not arrive on time? The pervasiveness of equal headway instability. PLoS ONE, 4(10): e7292.

Zubillaga, D., Cruz, G., Aguilar, L. D., Zapotécatl, J., Fernández, N., Aguilar, J., Rosenblueth, D. A., and Gershenson, C. (2014). Measuring the complexity of self-or ganizing traffic lights. Entropy, 16(5): 2384–2407.