Reduccion 09

9 actividades, costes indirectos de 10 k€/semana

Enunciado

Considere el proyecto cuyo cuadro de prelaciones se adjunta, con la duración normal y la duración tope de cada actividad (semanas) y el coste directo (k€) de ejecutarla en cada una. Además, el proyecto tiene unos costes indirectos (oficina, alquileres, seguros) de 10 k€ por semana de duración.

  1. Calcule el coste unitario de reducción (CUR) de cada actividad.
  1. Determine la duración normal del proyecto y su coste total (directo más indirecto).
  1. Aplique el algoritmo de Ackoff-Sasieni hasta alcanzar la duración tope del proyecto, anotando en cada paso el sobrecoste directo.
  1. Construya la curva de coste total frente a duración y determine la duración de coste mínimo. ¿Qué regla de parada se deduce comparando el CUR del paso con el coste indirecto semanal?
  1. ¿Por qué no se puede reducir el proyecto por debajo de su duración tope aunque queden actividades con margen de reducción?
Tabla 1: Cuadro de datos del enunciado
predecessor duration cap_duration cost_normal cost_cap
activity
A --- 7 7 50 50
B --- 4 4 60 60
C --- 2 2 50 50
D A,B,C 4 1 50 77
E D 8 8 60 60
F D 2 1 80 89
G E,F 7 7 40 40
H G 8 8 80 80
I H 4 2 90 104

El proyecto corresponde a la instalación de una planta fotovoltaica sobre cubierta; las actividades son las siguientes (las duraciones del cuadro están en días).

Tabla 2: Descripción de las actividades
Descripción
A Estudio de sombras y producción
B Cálculo estructural de la cubierta
C Tramitación de permisos
D Acopio de módulos e inversores
E Montaje de la estructura soporte
F Colocación de módulos
G Cableado de corriente continua
H Instalación de inversores
I Cuadro de protecciones y contador

Resolución

Apartado 1

  1. Calcule el coste unitario de reducción (CUR) de cada actividad.

\(CUR = \dfrac{\text{coste tope} - \text{coste normal}}{\text{duración normal} - \text{duración tope}}\). Las actividades cuya duración tope coincide con la normal no pueden acortarse: su CUR es infinito.

duration cap_duration cost_normal cost_cap ucr
activity
A 7 7 50 50 inf
B 4 4 60 60 inf
C 2 2 50 50 inf
D 4 1 50 77 9.0
E 8 8 60 60 inf
F 2 1 80 89 9.0
G 7 7 40 40 inf
H 8 8 80 80 inf
I 4 2 90 104 7.0

Apartado 2

  1. Determine la duración normal del proyecto y su coste total (directo más indirecto).

Cálculo de los tiempos mínimos y máximos de los nodos del grafo Roy paso a paso. El primer paso muestra el grafo resuelto; a partir del siguiente se calcula desde el principio (avance con los botones):

paso 0 de 24
Figura 1: Grafo Roy con las duraciones normales y el camino crítico
Tabla 3: Calendario con las duraciones normales
Haz clic en un número de la tabla para ver cómo se calcula.
👆 Interactivo: haz clic en cualquier celda de la tabla para ver cómo se calcula (otro clic la deselecciona).
Actividad Duración Inicio más temprano Fin más temprano Inicio más tardío Fin más tardío H total H libre H independiente
A 7 0 7 0 7 0 0 0
B 4 0 4 3 7 3 3 3
C 2 0 2 5 7 5 5 5
D 4 7 11 7 11 0 0 0
E 8 11 19 11 19 0 0 0
F 2 11 13 17 19 6 6 6
G 7 19 26 19 26 0 0 0
H 8 26 34 26 34 0 0 0
I 4 34 38 34 38 0 0 0

La duración del proyecto es la de su ruta más larga. Conviene tener a la vista la duración de todas las rutas: al acortar la crítica, las que están a una o dos semanas de ella serán las primeras en volverse críticas y obligarán a acortar varias actividades a la vez.

Tabla 4: Duración de cada ruta con las duraciones normales
actividades duración = suma duración margen hasta la crítica
Route_1 A - D - E - G - H - I A(7) + D(4) + E(8) + G(7) + H(8) + I(4) = 38 38.0 0
Route_2 A - D - F - G - H - I A(7) + D(4) + F(2) + G(7) + H(8) + I(4) = 32 32.0 6
Route_3 B - D - E - G - H - I B(4) + D(4) + E(8) + G(7) + H(8) + I(4) = 35 35.0 3
Route_4 B - D - F - G - H - I B(4) + D(4) + F(2) + G(7) + H(8) + I(4) = 29 29.0 9
Route_5 C - D - E - G - H - I C(2) + D(4) + E(8) + G(7) + H(8) + I(4) = 33 33.0 5
Route_6 C - D - F - G - H - I C(2) + D(4) + F(2) + G(7) + H(8) + I(4) = 27 27.0 11
  • Route_1 : A, D, E, G, H, I

Duración normal: 38 semanas. Coste directo 560 k€ + indirecto 10 × 38 = 380 k€; total 940 k€.

Apartado 3

  1. Aplique el algoritmo de Ackoff-Sasieni hasta alcanzar la duración tope del proyecto, anotando en cada paso el sobrecoste directo.

En cada paso del algoritmo de Ackoff-Sasieni se acorta una semana la ruta (o rutas) crítica(s) eligiendo, entre las actividades críticas con margen, la combinación de menor CUR que reduzca todas las rutas críticas a la vez. Cuando hay varias rutas críticas sin actividades comunes baratas hay que acortar una actividad de cada una, y el coste del paso es la suma. La tabla muestra, para cada ruta, el CUR de sus actividades y su duración tras cada paso; las últimas filas, el margen de reducción que le queda a cada actividad.

Tabla 5: Algoritmo de Ackoff-Sasieni
paso -1 de 5

Algoritmo de Ackoff-Sasieni: tabla completa. Pulse «siguiente» para ver cómo se construye.

Lo que se compara en cada paso: las rutas críticas en ese momento, las opciones que acortan todas a la vez (una actividad común con margen, o una pareja con una actividad de cada ruta) con su coste, y la elegida (la más barata).

Tabla 6: Opciones consideradas en cada paso de Ackoff-Sasieni
duración rutas críticas opciones (coste) elegida coste del paso
paso
1 38 Route_1 I (7); D (9) I 7.0
2 37 Route_1 I (7); D (9) I 7.0
3 36 Route_1 D (9) D 9.0
4 35 Route_1 D (9) D 9.0
5 34 Route_1 D (9) D 9.0
actividades acortadas sobrecoste del paso duración sobrecoste acumulado
paso
1 I 7.0 37 7.0
2 I 7.0 36 14.0
3 D 9.0 35 23.0
4 D 9.0 34 32.0
5 D 9.0 33 41.0

Comprobación paso a paso: la duración de cada ruta tras cada paso es la que figura en las columnas numeradas de la tabla de Ackoff-Sasieni; tras el último paso, las rutas que empatan en la duración máxima son las críticas del proyecto reducido.

Tabla 7: Duración de cada ruta tras la reducción
actividades duración = suma duración crítica
Route_1 A - D - E - G - H - I A(7) + D(1) + E(8) + G(7) + H(8) + I(2) = 33 33.0 sí
Route_2 A - D - F - G - H - I A(7) + D(1) + F(2) + G(7) + H(8) + I(2) = 27 27.0
Route_3 B - D - E - G - H - I B(4) + D(1) + E(8) + G(7) + H(8) + I(2) = 30 30.0
Route_4 B - D - F - G - H - I B(4) + D(1) + F(2) + G(7) + H(8) + I(2) = 24 24.0
Route_5 C - D - E - G - H - I C(2) + D(1) + E(8) + G(7) + H(8) + I(2) = 28 28.0
Route_6 C - D - F - G - H - I C(2) + D(1) + F(2) + G(7) + H(8) + I(2) = 22 22.0

Apartado 4

  1. Construya la curva de coste total frente a duración y determine la duración de coste mínimo. ¿Qué regla de parada se deduce comparando el CUR del paso con el coste indirecto semanal?
coste directo coste indirecto coste total
duración
38 560.0 380 940.0
37 567.0 370 937.0
36 574.0 360 934.0
35 583.0 350 933.0
34 592.0 340 932.0
33 601.0 330 931.0
Figura 2: Curva coste-duración del proyecto

El coste total es mínimo, 931 k€, para una duración de 33 semanas. Cada semana de reducción cuesta el CUR del paso y ahorra 10 k€ de indirectos, así que compensa reducir mientras el sobrecoste del paso sea menor que 10; como los pasos de Ackoff-Sasieni tienden a ser cada vez más caros, en cuanto el CUR del paso supera el coste indirecto semanal se para (conviene comprobar la tabla completa por si un paso posterior volviera a ser barato).

Apartado 5

  1. ¿Por qué no se puede reducir el proyecto por debajo de su duración tope aunque queden actividades con margen de reducción?

La duración tope del proyecto, 33 semanas, se alcanza cuando todas las actividades de alguna ruta crítica están en su duración tope: esa ruta ya no puede acortarse y marca la duración mínima, aunque otras actividades (de otras rutas, o críticas pero no de esa ruta) conserven margen. Margen que queda por actividad: {a: int(m) for a, m in margen_restante[margen_restante > 0].items()}.