Fuentes: The Information
Según han revelado fuentes internas a Uber, cuando un prototipo de coche autónomo de Uber tuvo el fatal accidente con un peatón en Tempe, Arizona, Uber identificó rápidamente la causa probable del fallo: parte del software hacía que el vehículo ignorase ciertos objetos que sus sensores detectaban sobre la carretera. Pero algunos ejecutivos se dieron cuenta de algo más: la prisa por desarrollar un vehículo comercial autónomo llevó a Uber a restar importancia a las pruebas de simulación que intentan anticipar cómo reaccionarían los vehículos autónomos en millones de escenarios de conducción.
Los ingenieros del joven programa de simulación tuvieron dificultades para probar exhaustivamente el software de conducción autónoma de la empresa, en parte debido a la falta de inversión en el programa, según dos personas con conocimiento directo de la unidad de vehículo autónomo de Uber. Al contrario que ocurre en otros proyectos como el Waymo de Alphabet y algunas otras compañías importantes que desarrollan coches autónomos, donde las pruebas de simulación son una prioridad.
La falta de inversión de Uber en el software de simulación ha perjudicado su capacidad para desarrollar un software de conducción autónoma que evite colisiones, según expertos de la compañía. Tras la colisión mortal entre uno de sus prototipos y un peatón, la compañía ha expandido significativamente sus pruebas de simulación, de las que hacen alarde desde hace mucho tiempo en Waymo y otros programas rivales.
Es imposible establecer un vínculo directo con la falta de simulación de Uber y la colisión con Tempe, dijeron estas personas. Pero si la compañía hubiera hecho un mejor trabajo incorporando pruebas de simulación en su proceso de desarrollo, su software podría haber sido diseñado para hacer un mejor trabajo evitando colisiones.
La falta de priorización de las pruebas de simulación se debió a decisiones anteriores de la unidad de negocios y empeoró debido a la creciente presión dentro de Uber de avanzar rápidamente para lanzar robo-taxis en el mercado de este año. Las pruebas de simulación consumen mucho tiempo, ya que los ingenieros necesitan descubrir cómo crear un mundo virtual que imite al real. No hay muchos ingenieros con experiencia en el campo, y la construcción de un sistema de simulación útil se considera una forma de arte.
Uber no ha probado coches en las calles de la ciudad desde la colisión, y ha aumentado significativamente su gasto en tecnología de simulación en los últimos meses, de acuerdo a personas informadas sobre las operaciones y un reciente correo electrónico enviado por el líder de la unidad de negocios Uber, Eric Meyhofer, eso fue visto por The Information.
Las simulaciones de escenarios de conducción están diseñadas para detectar problemas antes de que los prototipos autónomos de vehículos se pongan en situaciones del mundo real y también evaluar cómo los algoritmos de conducción manejan situaciones inciertas en la carretera, para poder hacer mejoras sobre ellos.
Algunos simuladores de última generación funcionan con software tridimensional de videojuegos (la versión de Uber corre sobre el motor Unreal) y tienen como objetivo probar maniobras concretas, como adelantar a otro vehículo o girar a la izquierda a través de una intersección, en millones de variaciones diferentes, muchas más de las que un automóvil puede probar en el mundo real.
El programa de simuladores de Uber fue muy diferente cuando la compañía comenzó su programa de autos autónomos en 2015, tras contratar a un equipo de robótica de la Universidad Carnegie Mellon (CMU). Ese equipo creó software de simulación que los ingenieros civiles usarían para ayudar a planificar la forma en que el tráfico de vehículos se movía dentro de las ciudades, dijeron dos personas con conocimiento del asunto.
Para los ingenieros que más tarde se unieron al grupo, el software parecía ineficaz. A mediados de 2016, la unidad consiguió un nuevo líder, Anthony Levandowski, cuya compañía de autotransporte, Otto, fue adquirida por Uber. Levandowski había estado anteriormente en el equipo de condicción autónoma de Google, donde la simulación tenía un gran valor y estaba impulsado por software parecido a un videojuego, y presionó para una mayor inversión en esa tecnología, de acuerdo con las personas que trabajaron con él.
Pero la simulación no se convirtió en una parte importante del proceso de desarrollo de software en Uber por una variedad de razones, incluyendo desavenencias entre Levandowski y la vieja guardia en otros asuntos, según los informantes. También citaron la agitación causada por una demanda explosiva presentada por Google que acusó a Levandowski de robar secretos comerciales cuando se separó de esa compañía. El Sr. Levandowski finalmente fue despedido a mediados de 2017.
La versión actual del software de simulación de Uber no se desarrolló hasta después de la partida de Levandowski. Además, hasta principios de este año, los ingenieros en el equipo de simulación de Uber se les pagaba menos que a otros tipos de ingenieros en el departamento, a veces por decenas de miles de dólares por año. Eso hizo más difícil atraer candidatos talentosos y evitar que los ingenieros existentes en el equipo se transfirieran a equipos mejor pagados.
A fines de 2017 y a principios de 2018, el equipo de simulación luchó y finalmente obtuvo permiso para ofrecer compensación paquetes a la par con los otros equipos. El equipo tenía varias docenas de miembros al comienzo del año. Las mejoras salariales no erradicaron otros problemas relacionados con los esfuerzos de simulación de conducción. Por ejemplo, el código desarrollado por el equipo autónomo principal a veces no era compatible con el código que impulsaba el programa de simulación, lo que dificultaba a los ingenieros realizar pruebas de simulación. Los ingenieros de simulación pidieron a los ingenieros de software del vehículo que escribieran un código compatible, pero no siempre tuvieron el tiempo para hacerlo. Debido a que el programa de simulación aún no funcionaba bien con el software de conducción autónoma central, era difícil el equipo de simulación para ayudar a Uber a mejorar sustancialmente ese software antes de un objetivo ambicioso: Uber se había embarcado en un proyecto llamado «Roadrunner» para lanzar un vehículo sin conductor a los clientes de Uber en Arizona a finales de este año, dijeron las tres personas familiarizadas con el proyecto.
La carrera estaba por llegar al mercado, pero también significaba que el equipo de simulaciones tuvo problemas para manejar el repentino aumento de los cambios realizados en el software listo para el camino. En cambio, Uber se centró cada vez más en pruebas del mundo real, a menudo en pistas de prueba caminos privados, que esperaba acelerarían su capacidad para introducir taxis sin conductor en el área de Phoenix, como ya lo había hecho Waymo. La simulación no es una panacea, dicen los desarrolladores de vehículos autónomos. «No se pueden [simular] datos del mundo real», dijo un ex ejecutivo de autos sin conductor de Uber. Pero al crear entornos virtuales con relativamente pocos obstáculos, los simuladores pueden identificar problemas básicos, tanto antes como después de que los automóviles comiencen a probarse en las calles públicas, dijo esta persona. Si se realiza un cambio en el software del automóvil, se puede ejecutar a través del simulador para exponer los problemas en algunos escenarios de conducción. «No son [solo] los varios millones de kilómetros de conducción física que importan«, dijo una persona diferente familiarizada con Unidad de vehículo autónomo de Uber. «Se necesitan también miles de millones de millas de conducción simuladas».