Mexico City is famous for its museums, food and culture, but also for its traffic jams. The city has a population of close to 22 million people and more than 6 million cars, and two-hour daily commutes to school or work are the rule for many people. Perhaps because delays are routine, it’s often socially acceptable to be 10 to 15 minutes late to classes or meetings.
How people travel in the Mexican capital is a complex problem that cannot be reduced to just one or two variables, and it is emblematic of the urban mobility challenges facing half of the world’s population. It’s also the kind of problem that for the past two decades has been a favorite of Carlos Gershenson, a computer scientist at the National Autonomous University of Mexico who is affiliated with both its Institute for Research in Applied Mathematics and Systems and its Center for Complexity Sciences.
To solve a complex problem, Gershenson believes, scientists need to let go of traditional methods and find novel ways to study ever-changing challenges. “Science and engineering have assumed that the world is predictable, and that we just need to find the proper laws of nature to be able to foresee the future,” he wrote while he was a visiting professor at the Massachusetts Institute of Technology and Northeastern University in 2016. “But the study of complex systems has shown that this assumption is misguided.”
By using computer simulations that specialize in adaptation and not in prediction, Gershenson uses self-organization as a tool to improve urban mobility. Although most of the transport-system solutions he has proposed to various cities have encountered political and bureaucratic obstacles, his ideas were implemented successfully in Mexico City’s metro system in 2016. Just by signaling clearly where people should wait to let passengers exit before boarding the trains, the pilot project eliminated almost all conflicts and pushing during the boarding process and reduced the time spent boarding by as much as 15%.
“Carlos’ work has significantly advanced the state of the art of our understanding of self-organized traffic flows and their implications for real world control and optimization,” said Yaneer Bar-Yam, a professor of physics at M.I.T. and the president of the New England Complex Systems Institute, who supervised a postdoctoral fellowship with Gershenson in 2007-2008. He added that Gershenson “has reframed questions, which is the most important impact that one can have.”
Complexity has appealed to Gershenson since his undergraduate days in computer engineering in the late 1990s at the Arturo Rosenblueth Foundation, where he got interested in artificial intelligence. Later, during his master’s studies in evolutionary and adaptive systems at the University of Sussex, he delved more deeply into philosophy and the cognitive sciences. But while working on his doctorate at the Free University in Brussels, “I kind of got disappointed with cognitive science because, at the end, it’s very subjective,” he said. He refocused on self-organizing systems.
Although Gershenson studies self-regulating traffic lights and metro systems, he is an enthusiast of bicycles as a more efficient and less polluting vehicle for city travel. He’s also a strong voice on social media and writes a column in the national newspaper Reforma, where he analyzes science, scientific policy and politics, among other topics.
Quanta spoke with Gershenson at his home in Mexico City over a video call in late August to learn more about how self-organization can improve urban mobility. The interview has been condensed and edited for clarity.
How did you first venture into the field of self-organizing complex systems and urban mobility?
As an undergrad, I was interested in highway traffic: I programmed a simulation with and without traffic lights and with autonomous cars. If you can predict when cars will cross intersections, then you can prevent them from crashing even if they never stop; you just kind of decrease their speed. They almost never crashed in my simulation, and of course it was much more efficient. So I had already played with such ideas.
I also knew of a project that was developed in the 1990s at Berkeley with platoons of cars, in which Luis Agustín Álvarez-Icaza, a famous Mexican engineer, was involved. He had worked on this project of having automated platoons, so that cars could follow each other at 55 miles an hour, bumper to bumper, as a way to increase the capacity of highways. And as he told us, they did this and it worked and it was good, but they couldn’t launch it because of insurance companies. It’s amusing that more than 20 years later, with autonomous cars there is the same problem. Again, insurance companies put restrictions on them.
For the first application of my doctoral project on self-organizing systems, I thought, “Let’s try to have platoons of cars flock like birds.” A flock of birds is kind of a canonical example of self-organization. I implemented different control strategies in a simulation, and one of these was self-organization: It was like having a platoon in which they all try to go at the same speed as their neighbors.
And that was a massive failure, because some cars would accelerate, but then they would slow down, and you would get some nasty oscillations. It was not working, and I never published it as a peer-reviewed paper.
The most effective strategy was the selfish strategy where everyone tried to go as fast as possible.
Really? Which is what normally happens today, right?
Actually, my first Ph.D. student, Luis Enrique Cortés Berrueco, went further in that direction. He makes game theory and traffic simulations to study what will be the effect of selfish versus cooperative drivers. It turns out that if you have a low density of cars on the roads, selfish drivers lead to more efficient traffic. But that’s only at low densities, and it’s just looking at efficiency. It’s more dangerous as well.
If you have medium densities, then when one driver cuts off another driver, it slows down everyone behind them. So it’s less effective. And if the density is too high, their selfishness doesn’t matter, because they cannot change lanes anyway.
Why do you think studying urban mobility will help us understand self-organizing systems?
It’s a perfect way of implementing or trying out the theory. Since I studied engineering and philosophy, I like developing concepts but then also using those concepts to solve problems or to build systems.
Once you build systems, it turns out that some holes in your concepts start to show up. You are faced with problems that you didn’t foresee. That forces you to refine your understanding, to revise your conceptual system. Answers always bring new challenges. But once you solve those challenges, then you can go back and make more soundly based conceptual contributions.
I have always gone from theory to practice and back.
What makes urban mobility a complex system?
We can easily model the trajectory of a single vehicle because it has a uniform movement and acceleration. It’s basic high school math. Of course, there are more details like friction, winds and so on. But you can ignore that.
The problem is that in the real world, the precise position of a vehicle at a time in the future depends not only on its acceleration and speed and so on, but on whether there are other cars or pedestrians or cyclists on the road. If other vehicles go slower or faster, there will be more or less space, based on whether everyone drives dangerously or not. There are strong interdependencies. You cannot predict where a car will be two minutes ahead because it depends on whether the cars ahead of it react to traffic lights on time, whether they get distracted, whether there is a bus, whether they stop where they shouldn’t, whether someone’s cleaning windshields and delaying everything.
Complexity is defined by interactions, and in urban mobility, interactions matter a lot. And that’s not even considering human factors for the driver, like if I’m distracted or drowsy or drugged or angry.
If you try to solve a problem simplistically, without looking at the interactions, your solutions will be rather limited. There’s a saying in the urban mobility field [by the historian of technology Lewis Mumford]: “Adding highway lanes to deal with traffic congestion is like loosening your belt to cure obesity.” It’s a solution that doesn’t address the problem of the demand for transportation and how you will satisfy that demand.
How hard is it to develop a model or simulation that reflects a high degree of complexity? There must be infinite variables. How do you prioritize what to include?
It depends on what you want your model for. If you want your model to make predictions, then yes, you need to include a lot of details. Let’s say we want to model Mexico City traffic. Then we need how many cars are following which trajectories at which hour of the day. What are their average motor accelerations, whether it’s raining, and so on — lots of factors will affect the traffic flow, and you want to add as much detail as possible.
But if you want your model to be just for understanding a system rather than predicting it, then in many cases, a very abstract simulation can be useful. My first simulations were a bit sophisticated because they tried to be realistic. Later, I started doing simpler, more abstract simulations — vehicles had infinite acceleration, and there was a symmetry in the spaces between vehicles that in reality doesn’t happen. But even so, those simulations allowed us to discover that there are six to 10 phase transitions in urban traffic: You can see how the speed or the flow has sharp transitions as you increase density. You can’t see that if you have a more sophisticated model.
You’ve made simulations in different cities. What is special about Mexico City that makes it interesting to study?
Well, first of all, we live here. [Laughs.] According to different indexes, it has the worst mobility in the world. Also, we have closer contact with the authorities, so we can try to influence the improvements or decisions that are being made. When I was in Brussels during my Ph.D., we contacted the minister of transportation there, and … let’s say we ran into a political problem.
Tell me about this project you’ve had with traffic lights in Mexico City to speed up commutes and reduce emissions.
Traffic-light systems are normally timed and programmed in a way that’s supposed to be efficient, but then the precise number of cars stopped by each traffic light varies constantly. Even if you’re basing it on a traffic measurement that it’s around 13 cars per minute on average, one minute there will be 20, and another there will be zero, and another there will be six.
Coordinating all these programmed traffic lights to keep vehicles moving is a problem. It gets more and more computationally demanding as you have more intersections to coordinate, and it changes as you add and subtract cars. It’s impossible to predict.
And you want to optimize the flow of traffic.
Yes, but since optimization is so computationally demanding, you need to use adaptation.
Self-organizing traffic lights have sensors that let them respond to incoming traffic by modifying the timing of the signals. They are not trying to predict; they are constantly adapting to the changing traffic flow. But if you can adapt to the precise demand, then there is no idling. The only reason for cars to wait is because other cars are crossing.
The traffic light tells the cars what to do. But because of the sensors, the cars tell the traffic lights what to do, too. There’s this feedback that promotes the formation of platoons, because it’s easier to coordinate 10 10-car platoons than 100 cars, each with its own trajectory.
And that spontaneously promotes the emergence of “green waves,” which are platoons of cars that roll through intersection after intersection without stopping. You are not programming “there will be a green wave and it will slow at this speed” into the system. The traffic kind of triggers the green waves themselves. And it’s all self-organized because there’s no direct communication between the traffic lights in different intersections.
It’s a not so obvious way of controlling systems because in control theory, we want to be sure about what will happen. And in this case, you don’t tell the system what the solution will be. But you design interactions so that the system will be constantly finding desirable solutions. That’s what you want to do, because you don’t know what the problem will be.
How well does this work?
In simulations, we found that by implementing self-organizing traffic lights, you could reduce travel times by 25%. And because so many fewer cars are idling at red lights, emissions are drastically reduced, too. If you try to estimate emission savings for a city as large as Mexico City, it will be the equivalent of swapping out cars for, like, 10 Metrobús lines, at a fraction of the cost of a single line.
But of course, that’s in a simulation. We can’t know for sure whether, with public transport and Mexican drivers and so on, it will work. Traffic efficiency can also be counterproductive because suddenly traffic flows better, and that may motivate more people to drive. And if you have more cars in the street, of course, that could mean even more emissions than you were saving.
So we want to try this at a small scale as a test. But it’s been like 15 years and we haven’t been able to do it anywhere for different reasons. We tried in Brussels, we tried in New York, we tried in Morocco, we tried in Mexico.
What failed in all these places?
Are there any examples of places where they implemented self-organizing traffic lights?
My colleagues Stefan Lämmer and Dirk Helbing did it for Dresden. Theirs is a slightly different method from ours, but it works. It also took them quite a while to push it through, like five years. The city was in favor of it and they financed it, but still, it was very problematic for whatever reason.
The problem may be that most engineers are taught traditional methods based on predicting what is to be controlled, and they try to improve on those methods. But for complex systems, prediction is almost hopeless. The moment you achieve optimality, the problem changes. The solution is obsolete already.
What we have shown is that with self-organization, you can have a completely different approach, which you could summarize as shifting from prediction to adaptation. We have made simulations for regulating public transportation systems like trains, metros, buses and so on using self-organization. It’s much more effective than most control mechanisms that try to predict.
For example, in a metro system, each time a train reaches the station, there will be a different number of passengers on the platform. So traditional approaches say: “You have to wait this amount of time at the station.” And they don’t allow the train to stay a bit longer if there are more passengers wanting to enter, or to stay less if there are less passengers. And if you relax those things, then the capacity of the system can improve considerably.
In your project with the Mexico City metro, what was something surprising you learned?
We weren’t expecting people to start queuing to board the trains. We were hoping that they would just leave space for people to exit the trains, but not that they would queue. So that was unexpected, but it works. We achieved the goal, but we didn’t understand why it worked until after it worked completely.
Before, the rules of the game were: If you want to enter the train, you have to push. And if you don’t push, you don’t get on the train, so even if you don’t want to push, you have to if you want to board. It’s a feedback that everyone is pushing.
What we achieved by changing the signals on the platform was to change the rules of the game. Now, if people queue to board the train, you have a mechanism where the ambiguity of when you will board the train is replaced by “the first in line is the first to board.” So there’s no need to push anymore.
When people started to consciously or unconsciously realize this, then people who still pushed got punished by the system. People were like, “Wait, why are you pushing? There’s no need to push anymore!”
What are some of the main conclusions you have drawn from studying complexity in different scenarios?
I think the biggest challenge to improving urban mobility is not scientific, it’s political and social.
If you say, “Let’s improve urban mobility,” everyone will agree. Nobody wants to continue the way we are and suffer pollution and economic cost and waste of time and stress and everything. I mean, everybody will agree. But how to do it? Then everyone disagrees.
So I think that the biggest challenge is how can we develop coordination mechanisms for the solutions developed by government and companies, academia and the rest of society. We’re trying to involve different sectors, and they’re moving as fast as they can. But these things take years, and the situations worsen much faster.
Now with the pandemic, we’ve got some vision of how we can really reduce mobility when we’re forced to. But we’ll see whether we learn a lesson from it and reduce our travels and try to do more things remotely, or go back to our old habits with the huge burden for everyone.
These days, we’ve been promoting cycling a lot.
You’re an avid cyclist. How well do cyclists do in a city with a lot of car traffic?
Most of the people I know who study traffic are cyclists because it’s simply the best way to travel in a city. For medium distances, it can be a solution. Not for everyone. But you’ll see in cities that have invested in cycling infrastructure, it’s a very different lifestyle, and I think everyone benefits, even those who don’t cycle, because there aren’t so many cars.
What advice would you have as we enter a future with artificial intelligence and self-driving cars? Do you think bureaucracy and governments will still be the biggest hurdle rather than the actual technology development?
I think machines are becoming more and more integrated with us, but I don’t think they will replace us. They are helping us to extend our cognitive abilities and to coordinate. Very probably, decision-making will be more distributed. But in the end, you run into problems of responsibility, which is back to the insurance challenge: If an autonomous car has an accident, whose fault is it? The owner’s? The car maker’s? The developer’s?
Many of these systems allow us to do things that we were not able to do. That’s why we trust them. But still, they fail, so we shouldn’t trust them completely. That’s why we should have as much resilience as we can. Self-organization gives you that: It gives you the possibility to adapt while maintaining functionality. Then we will be better prepared to expect the unexpected, which we can expect to arrive.