La falacia de la planificación y cómo reducir sus efectos con machine learning – deep learning
Cuando iniciamos un nuevo proyecto o un conjunto de tareas solemos evaluarlas y planificarlas, dándoles un tiempo estimado de resolución a cada tarea. Seguro que tú mismo/a lo has hecho alguna vez. ¿Conseguiste realizar la tarea en el tiempo que estimaste?… ¿No? No te preocupes, es algo normal y tiene un nombre: Falacia de la planificación.
La falacia de la planificación se define como la tendencia a subestimar el tiempo necesario para terminar una tarea. Fue enunciada por primera vez en 1979 por Daniel Kahneman y Amos Tversky dentro de sus estudios sobre sesgos cognitivos y gestión del riesgo.
A la hora de estimar el tiempo para realizar una tarea estamos determinados de ciertos factores más sentimentales que racionales:
- Basamos nuestras estimaciones no en la realidad de lo que tardaremos en realizar la tarea sino en si esa estimación será aceptada por nuestro cliente/jefe/etc.
- Ignoramos los posibles factores externos (bajas, vacaciones, etc.).
- No evaluamos correctamente nuestra experiencia previa para la misma tarea realizada en el pasado, solemos subestimar el tiempo que le dedicamos con anterioridad.
En 2003 Lovallo y Kahneman ampliaron la definición de la falacia de la planificación dejándola como: la tendencia en subestimar los tiempos, costos y riesgos para terminar tareas de futuras acciones y al mismo tiempo sobrestimar los beneficios de acciones similares.
Por tanto, planificar incorrectamente no solo implica no estimar correctamente el tiempo a dedicar a una tarea, sino que también implica unos costes y riesgos que no somos capaces de evaluar adecuadamente.
Automatizando la estimación de tiempos
Una forma de planificar correctamente es tener en cuenta que vamos a tener unos sesgos a la hora de estimar el tiempo que le vamos a dedicar a esa tarea, y por tanto evaluarla en consecuencia. Aunque seguiremos teniendo un sesgo.
Podemos multiplicar por dos o por tres el tiempo que hayamos estimado, pero tendremos un problema si ese tiempo no es competitivo de cara al cliente.
Quizá la opción más correcta sería automatizar el proceso de estimar tiempos basándonos en los tiempos que hemos tardado en realizar tareas similares. Esto lo podemos realizar con cálculos estadísticos simples en algunos casos, aunque en este post lo veremos desde la aplicación del machine learning y deep learning.
Las ventajas de la automatización y machine learning y deep learning son claras:
- No hay sesgo cognitivo.
- La evaluación de los tiempos se realiza en base a tareas similares ya realizadas.
- El tiempo dedicado a la planificación es mínimo.
Para realizar esta automatización usando machine learning y deep learning debemos preparar los datos. Disponemos ya del tiempo real que le dedicamos a las tareas. Para organizar nuestro dataset necesitaremos una manera de saber cómo de similares son dos tareas, para ello podemos usar el algoritmo de la distancia euclidiana o bien cualquier otro que nos indique la similitud entre las tareas. Con estos datos podemos obtener la media del tiempo real dedicado de, por ejemplo, las
tres primeras tareas, con lo que dispondremos de una estimación bastante realista.
Lo anterior está bien para una única tarea (y que hayamos realizado previamente), pero para la realización de proyectos es un poco más complejo pues los tiempos para desarrollar el proyecto completo pueden verse afectados por factores externos (bajas, vacaciones, etc.) como ya hemos visto.
Para la estimación del tiempo de un proyecto debemos dividirlo en tareas lo más pequeñas posibles para poder evaluarlas de la forma anterior. Así obtendremos el tiempo estimado para realizar las tareas, pero ojo, no el tiempo estimado para el proyecto. Para el proyecto debemos tener en cuenta otros proyectos que tengan tareas y tiempos estimados similares, y obtener el tiempo total que se tardó en realizar el proyecto, desde que se comenzó a trabajar en él hasta que se finalizó. También podemos obtener la media de ese plazo de los tres primeros proyectos más similares al que estamos evaluando.
Todo esto nos permitirá disponer de una estimación de tiempo más realista de la que nosotros, con nuestros sesgos cognitivos somos capaces de realizar. Además podremos ver como la suma de los tiempos estimados para cada tarea no coincide con el plazo de tiempo para finalizar el proyecto, pues en este último ya se evalúan los factores externos habituales, y además aquellos que pueden afectar al desarrollo del proyecto o el tiempo que pueden dedicar los trabajadores (otros proyectos, soporte, etc.).
Por último la automatización nos permite ver las fugas de tiempo, pues si el tiempo estimado para un proyecto es mucho más grande que la suma del tiempo estimado para cada tarea, podemos actuar en consecuencia y valorar diferentes opciones para reducir la diferencia.