Uber pool is a service that allows you to share a ride with other people. It is convenient because it reduces the amount of cars on the streets, saves gas, and is cheaper. The Uber algorithm is in charge of creating a route based on passengers destination and pick up locations. After the driver has picked up its first client(s) (a rule says it can pick up a maximum of 2 passengers) the Uber app creates a route based in other potential passengers. If other passengers have not been selected from the start of the route, the algorithm would try to match other clients during the trajectory and would re-route the driver accordingly to their location. The Uber algorithm does the matching by evaluating the pick-up and drop-off locations of the possible clients, and minimizing the detours so there are minimum delays for the passengers. As it matches the passengers of the ride, the algorithm also adjust the route automatically. The Uber driver just have to follow the indications that the software displays on the map, and if there is audio, also put attention to the voice commands.
Last week, while visiting Florida, I experienced a series of errors during an Uber pool ride triggered by human actions that were interacting with the Uber algorithm. A ride that normally would take 30 minutes turned into a one hour and 10 minutes trip due to several failed attempts to pick up other passengers. The Uber driver followed all the indications the Uber AI told him and showed him to do. We waited in parking lots and took detours. However, the other passengers never joined the ride.
First, we waited at the parking lot of an airport waiting for two passengers that were supposed to join us in the ride. After a 5 minute wait, the driver call the client and had to explain him that he could just wait 2 more minutes. The client told him that they were there and could not see the car. The driver tried to provide explanations but his thick Caribbean creole accent sounded difficult to understand by phone. The client said he would cancel the ride and take another Uber pool.
Second, we waited in a parking lot in the middle of nowhere. We waited like 15 minutes there but nobody showed up. The driver called the client and had a discussion with a woman that was in a train station waiting with her luggage. The woman was very angry that the driver was not at her location and shouted him that she had just requested the ride and clicked the button on the screen. The driver told her she gave her the wrong location.
-Madam, you entered the wrong address. I am waiting for you in a parking lot that is at the other side of the highway. There is not a train station on this side.
The woman continued yelling on the phone telling the driver that he was wrong, that she just entered the location, that she was with luggage and wanted to get home. The driver told her to calm down, cancel the service, and request another Uber.
Third, we arrived to another parking lot, also in the middle of nowhere, or more exactly, in the middle of a suburban shopping area. The driver parked the car in front of a supermarket. We remained in this place for 15 minutes. However, the passengers where there, hanging out near the entrance of the supermarket. At first glance we thought they could not be the passengers because they were too many, two women and three children. Then we discovered that they were the ones who had requested the service. One of the women approached to the car and told the Uber driver she had requested a car for three.
– You requested a car for two, Madam. And you have three kids. I cannot take you on my car. Besides, you need a kid seat for your younger child.
The woman responded saying that she had requested a pool service for two adults and they were going to take the children on their laps. As the conversation continued the woman got more and more mad and started to shout at the driver. Meanwhile, we started to make space in the back of the car where we had been sit during the whole trajectory. We thought we could actually fit in the car. At the end, the car was a sedan and if one of the woman sat on the front and the other in the back, and we carried the children in all our laps, we could actually make it happen. However, the driver refused to take the family and told the woman to cancel the ride and request another service. With her phone in her hand and a gesture of desperation she started to input information into the Uber app. Her major concern, as she told to the driver was that she would get charged for cancelling the service. The driver told her to not worry about that.
During most of our long ride, the driver started to tell us his frustration with the Uber pool service and the software. He said it was bad and he avoided using it, except today that he chose it by mistake because he was sleepy and selected it very fast in his phone. He said that all the detours and choosing of new passengers was done by the Uber app automatically. He tried to explain us that he was just following up the indications of the software and blamed the Uber system for the errors and the delays. Interestingly, he did not mention the other human actors of the networked system that also composed Uber. In this case, it seemed that the bugs in the GPS signal of some passengers and inaccurate information provided by humans regarding number of passengers where at the origin of all the delays and misleading actions. Fortunately for us, we were not in a rush.