top of page

Planificación de proyectos de construcción con restricciones de recursos - Parte I

Planificar y programar manualmente subconjuntos de actividades repetitivas, que podrían realizarse en paralelo o en serie según la disponibilidad de recursos, puede llevar al paradójico resultado en el que decisiones individuales óptimas para cada actividad conducen a un plan general del proyecto subóptimo.


La causa de esto es triple: planificación manual (que requiere que el usuario introduzca toda la información), predefinición de la disponibilidad de recursos y programación CPM (método de camino critico). Ninguno de estos elementos es negativo en sí mismo, pero su combinación puede llevar a resultados de planificación subóptimos, como veremos en este artículo.



Planificacion proyecto carretera


Plan de proyecto

Para ilustrar esto, examinaremos en detalle la planificación de un proyecto de construcción de una autovía. Siendo este un proyecto bastante grande con un programa con miles de actividades, nos centraremos solo en un subconjunto de actividades: iluminación y trabajos eléctricos.

Al igual que todas las carreteras, esta va de un punto A a un punto B, y el cronograma desglosa los trabajos de iluminación y electricidad en 9 secciones de carretera según la distancia. El alcance de trabajos dentro de cada una de las secciones varía: desde algunas con pocas actividades hasta alcances más complejos que involucran no solo trabajo de iluminación y cableado eléctrico, sino también viviendas, edificios, etc.


Planificacion cronograma de proyecto

El denominador común entre todas estas actividades es que son realizadas por el mismo recurso. En este ejemplo, supongamos que hay un subcontratista específico haciendo todo el trabajo eléctrico e de iluminación. Si tuviéramos recursos infinitos, podríamos trabajar en todas las 9 secciones en paralelo. Si el contratista solo tuviera 1 equipo, entonces realmente solo hay 1 opción. Entre ambos extremos, hay millones de combinaciones. La siguiente pregunta es, ¿cómo planificamos esto de forma óptima?


Enfoque Tradicional

Para resolver este rompecabezas usando software de planificación comúnmente utilizado, tendríamos que seguir una serie de pasos:

  • Primero, tomaríamos una decisión práctica. Ya sea extraer este subconjunto de actividades de iluminación y eléctricas del archivo original a otro para jugar con él, enfrentándonos potencialmente a algunos problemas de integración una vez que intentemos fusionar estas actividades de nuevo, o hacerlo directamente en el archivo principal con el potencial de modificar otros elementos del plan sin darnos cuenta.

  • Supongamos que extraemos el subconjunto de actividades. Lo siguiente sería cargar recursos para cada una de las actividades. Agregar 1 unidad de recurso para la duración de cada actividad no debería llevar mucho tiempo, un par de minutos copiando y pegando o utilizando la función de importación en Excel.

 

  • A continuación, analizamos el caso más extremo: suponiendo que podemos trabajar en todas las 9 secciones al mismo tiempo. ¿Cuál es la asignación de recursos necesaria para ejecutar esto? En nuestro ejemplo, mirando el histograma de recursos en nuestro software de programación, vemos que la demanda máxima es de 11 equipos:

Distribucion de recursos de construccion

  • Traer 11 equipos para la primera semana de diciembre, luego reducirlos gradualmente hasta mediados de mes donde el trabajo se estabiliza en aproximadamente 2/3 equipos por día está lejos de ser óptimo desde el punto de vista de los recursos. El subcontratista solo estaría contento con esto si estamos dispuestos a pagar una tarifa muy alta por ello. Aquí es donde empieza la "diversión".

  • De aquí en adelante, solo tendríamos una opción y un resultado casi garantizado:

    • Considerar un valor de recurso máximo, por ejemplo, "5 equipos".

    • Hacer clic en la opción de nivelación de recursos.

    • Identificar los días en que la restricción no se cumple (limitada por la lógica de CPM).

    • Ajustar manualmente decenas o cientos de tareas para cumplir con la restricción y modificar las lógicas de inicio-fin.

    • Encontrar una opción viable

    • Tomar nota de la duración del proyecto, las fechas de inicio y fin de esta opción.

  • Repetir con un valor de restricción diferente...


Cada una de estas iteraciones llevaría horas, por lo que tarde o temprano nos conformaríamos con una opción "satisfactoria". Esto es a lo que nos referimos con decisiones individuales óptimas que conducen a un plan general subóptimo:


Planificación manual + predefinición de disponibilidad de recursos + programación CPM



El ejemplo se ha simplificado haciendo una serie de suposiciones:

  • La asignación de recursos a actividades es igual en todas las actividades.

  • La cantidad de recursos asignados a cada actividad no puede cambiarse, por lo que no hay cambios en la duración individual de cada actividad.

 

Se puede apreciar la complejidad del desafío, así como la cantidad de dinero que se podría estar dejando sobre la mesa al tomar decisiones de recursos subóptimas basadas en subdecisiones óptimas.


Un problema de optimización multivariable complejo que puede resolverse

Los avances de la inteligencia artificial y la computación en la nube han hecho posible resolver este problema en cuestión de segundos y de manera sencilla para cualquier planificador que se enfrenta a un problema así.


Using Frontline, the process would be simplified to this:

  • Cargar el cronograma en Frontline.

  • Seleccionar las opciones "Asignar recursos predeterminados para todas las tareas" y "Ajustar retraso entre tareas". La primera opción asignará 1 unidad de recurso a cada actividad, eliminando la necesidad de hacerlo manualmente en el software de programación. La segunda opción garantizará que se cumplan las restricciones modificando las fechas de inicio y fin de las actividades según la disponibilidad de recursos, pero no la duración de cada actividad individual.

Parametros de optimizacion de plan de proyecto

  • Hacer clic en "Simular"... Frontline generará en cuestión de segundos las mejores opciones teniendo en cuenta criterios de optimización multivariable: reducir la duración, minimizar recursos, minimizar costos, equilibrar recursos, etc. Los resultados de la optimización se muestran en el gráfico siguiente Recursos-Duración donde cada punto es una posible alternativa de proyecto.


Simulacion y optimizacion de planes de proyecto

  • Cada punto es una alternativa que el usuario puede seleccionar, pero aún así, ¿cómo tomar una decisión con confianza? Al haber identificado a los equipos de iluminación y eléctricos como la restricción, Frontline estudiará las mejores opciones dentro del rango de dicha restricción, en este caso, de 1 a 11 equipos:

Simulacion y optimizacion de planes de proyecto

Simulacion y optimizacion de planes de proyecto

  • Dentro de cada opción, podemos analizar los detalles del cronograma y el histograma de recursos. Al observar los detalles de la mejor opción con 7 equipos, podemos ver que reducir de 11 a 7 no afecta la fecha de finalización y que la distribución de recursos mejora significativamente en comparación con el plan inicial.

Simulacion y optimizacion de planes de proyecto


Genial, pero ¿y el coste? El coste siempre influye en cualquier decisión

Es verdad, todavía no tenemos la imagen completa para tomar una decisión. El coste juega un papel importante en la determinación de los recursos para un proyecto. Tanto desde la perspectiva del contratista general como del subcontratista. Veamos algunas de las puertas que la optimización impulsada por la inteligencia artificial puede abrir a los planificadores que intentan integrar el coste en su cronograma.

 

Con Frontline, el usuario puede introducir fácilmente un coste unitario por recurso y definir el período de medida: diario, semanal, mensual. De esta manera, no solo se puede optimizar el cronograma en términos de duración y recursos, sino también en coste.

 

En nuestro ejemplo, consideramos los períodos semanales y mensuales para evaluar las implicaciones de coste de cada asignación de recursos considerada. Idealmente, un director de proyecto podría traer el número exacto de recursos necesarios cada día, independientemente de las fluctuaciones; lunes 5 fontaneros, martes 1 fontanero, miércoles 3 fontaneros, etc. La realidad de un proyecto es más desafiante ya que hay una logística involucrada, contratos, etc… por lo que los períodos semanales o mensuales parecen más razonables.


Frontline toma los equipos requeridos cada semana o mes para evaluar el coste de cada decisión. En este ejemplo, consideramos un coste diario de $100, un coste semanal de $500 y un coste mensual de $2000 por equipo.



Simulacion y optimizacion de planes de proyecto

El gráfico anterior ayuda a tomar una decisión. La trayectoria óptima para la duración, los recursos y el coste encuentra un mínimo entre 6 y 7 equipos. Considerando el coste semanal, la decisión se reduce a:

 

  • Opción A: 32 días, 6 equipos y $17408

  • Opción B: 30 días, 7 equipos y $17408

 

¡B es claramente el ganador en nuestro ejemplo! 🎉


¿Y ahora qué?

Realmente no hay mucho más... es broma. El último paso es descargar este cronograma de proyecto optimizado de vuelta al software de programación que se está utilizando:


Plan de proyecto optimizado

El archivo exportado tendrá las modificaciones hechas por Frontline. En este ejercicio, la duración de la actividad y la asignación de recursos permanecen sin cambios, solo se modifican las fechas de inicio y fin. Para cumplir con la secuencia y respetar la programación CPM, Frontline agrega un “lag” a aquellas actividades que han tenido su fecha de inicio cambiada debido a la disponibilidad de recursos.


En 10 minutos, con la ayuda de la inteligencia artificial y software de simulación y optimización de construcción, tenemos una solución óptima como solución el desafío de planificación de proyectos con restricciones.

 

El siguiente paso es cambiar una suposición clave que hemos hecho para simplificar este ejercicio. Esta es: la asignación de recursos a cada actividad no puede cambiar. Pero la realidad de un proyecto de construcción es distinta. Hay numerosas actividades que se pueden hacer más rápido o más lento dependiendo de la productividad del recurso o la cantidad de recurso asignado a dicha actividad.

 

Dejamos esto para el próximo post... estate atento! 📻

bottom of page