Considere el proyecto cuya información se adjunta. Realice cada apartado partiendo en todos los casos de la situación original del proyecto indicada en los datos del enunciado.
Dibuje el grafo PERT y determine el camino crítico.
Indique sus actuaciones si existiera un límite de disponibilidad de recursos durante los primeros 7 periodos igual a 3 unidades, y de 10 unidades para los siguientes periodos.
Indique sus actuaciones para reducir la duración del proyecto hasta 28 periodos con un mínimo sobrecoste añadido.
Indique sus actuaciones para reducir la duración del proyecto hasta su duración tope con un mínimo sobrecoste añadido.
Duración del proyecto si se introducen los siguientes cambios:
Entre el final de la actividad H y el comienzo de la L deben transcurrir 2 periodos.
La tarea K se inicia cuando F está a mitad de su ejecución
Tabla 1: Cuadro de datos del enunciado del ejercicio
predecessor
duration
cap_duration
ucr
resources
activity
A
---
4
1
25
2
B
A
4
1
25
1
C
A
5
2
20
2
D
A
4
1
10
2
E
A
3
2
50
2
F
D,E
6
3
30
4
G
F
4
1
25
1
H
B,C,G
7
4
20
1
I
C,G
5
2
20
3
J
I
4
1
25
4
K
F
4
1
25
1
L
H
8
5
10
2
M
I,K
4
1
25
1
Solución
Apartado 1
Dibuje el grafo PERT y determine el camino crítico.
Cuadros de prelaciones expandido
Comenzamos construyendo el cuadro de prelaciones. Este cuadro nos permitirá construir los grafos Pert o Roy, si atendemos a la información de las filas; o comprobar si el grafo obtenido es correcto, atendiendo a la información de las columnas.
Tabla 2: Cuadro de prelaciones expandido
Grafo PERT con numeración de nodos
Utilizando el cuadro de prelaciones expandido podemos dibujar el grafo Pert correspondiente al proyecto.
paso 0 de 16
Figura 1: Grafo Pert con indicación de los números de nodos
Alternativamente podríamos haber representado su grafo Roy.
paso 0 de 15
Figura 2: Grafo Roy del proyecto
Matriz de Zaderenko
A continuación podemos determinar la duración del proyecto calculando los tiempos tempranos y tardíos de su grafo Pert. Se hace en este caso mediante el algoritmo de Zaderenko:
Matriz de Zaderenko paso a paso. El primer paso muestra el resultado final; a partir del siguiente se construye desde el principio (avance con los botones):
Tabla 3: Matriz de Zaderenko para el cálculo de tiempos tempranos y tardíos
paso 0 de 24
Los tiempos tempranos y tardíos obtenidos para cada nodo son:
Tabla 4: Valores de los tiempos tempranos y tardíos de los nodos
early
late
1
0
0
2
4
4
3
8
8
4
8
8
5
14
14
6
18
18
7
23
29
8
18
18
9
23
29
10
25
25
11
33
33
Holgura total de las actividades
Conocidos los tiempos tempranos y tardíos se puede proceder a calcular la holgura total de las actividades.
Tabla 5: Holgura total de las actividades
H_total
@3→4
0
@6→8
0
@7→9
6
A
0
B
10
C
9
D
0
E
1
F
0
G
0
H
0
I
6
J
6
K
11
L
0
M
6
Camino crítico
Las actividades con holgura total cero forman el camino crítico. Según el grafo Pert del proyecto, éste está compuesto por las siguientes rutas, cuyas actividades se listan en orden alfabético:
Route_5 : A, D, F, G, H, L
Grafo PERT con indicación de tiempos
Cálculo de los tiempos tempranos y tardíos de los sucesos y de las holguras totales 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 40
Figura 3: Grafo Pert del proyecto con indicación del camino crítico
Alternativamente, se muestra el grafo Roy correspondiente con indicación del camino crítico.
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 32
Figura 4: Grafo Roy del proyecto con indicación del camino crítico
Calendario del proyecto
Se muestra a continuación el calendario del proyecto con indicación de las fechas de inicio y fin más tempranas y tardías de cada actividad:
Tabla 6: Calendario del proyecto
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
4
0
4
0
4
0
0
0
B
4
4
8
14
18
10
10
10
C
5
4
9
13
18
9
9
9
D
4
4
8
4
8
0
0
0
E
3
4
7
5
8
1
1
1
F
6
8
14
8
14
0
0
0
G
4
14
18
14
18
0
0
0
H
7
18
25
18
25
0
0
0
I
5
18
23
24
29
6
0
0
J
4
23
27
29
33
6
6
0
K
4
14
18
25
29
11
5
5
L
8
25
33
25
33
0
0
0
M
4
23
27
29
33
6
6
0
Apartado 2
Indique sus actuaciones si existiera un límite de disponibilidad de recursos durante los primeros 7 periodos igual a 3 unidades, y de 10 unidades para los siguientes periodos.
Situación inicial
Para responder este apartado es necesario representar la demanda de recursos a lo largo del tiempo.
Figura 5: Diagrama de Gantt del proyecto en su estado inicial
La fila “Total”, representada gráficamente en la siguiente figura, proporciona la información del consumo previsto de recursos a lo largo del tiempo.
Figura 6: Diagrama de cargas antes de aplicar el algoritmo de asignación
La demanda de recursos actual infringe el límite impuesto durante los primeros 7 periodos. Es necesario aplicar el algoritmo de asignación.
Algoritmo de asignación
Se procede a aplicar el algoritmo de asignación sobre la planificación inicial del proyecto. El siguiente diagrama de Gantt muestra los desplazamientos realizados (área rayada al comienzo de las actividades).
paso 0 de 21
Resultado del algoritmo de asignación con los límites de recursos de la fila «Máximo». En cada periodo, si la demanda supera el límite, se ejecutan primero las actividades ya empezadas, después las de menor holgura total y, a igualdad, las más cortas, mientras la carga acumulada no supere el límite; las demás se posponen un periodo (zz en el diagrama). Pulse «siguiente» para ver cómo se decide periodo a periodo.
Periodos 1 a 4: la demanda (2, 2, 2, 2) no supera el máximo en ninguno (3, 3, 3, 3), con las mismas actividades (A); se ejecutan todas y no hay nada que decidir.
Periodo 5: la demanda total (7) supera el máximo (3); hay que decidir qué actividades se ejecutan. Criterio de prioridad: (1) las ya empezadas, que no se interrumpen; (2) menor holgura total H, las más críticas; (3) menor duración d. Orden resultante: 1.º D (carga 2, no empezada, H=0, d=4); 2.º E (carga 2, no empezada, H=1, d=3); 3.º C (carga 2, no empezada, H=9, d=5); 4.º B (carga 1, no empezada, H=10, d=4).
Periodo 5: se recorren las actividades por orden de prioridad acumulando carga. Se ejecutan D, B; se posponen E, C porque, al añadirlas, la carga acumulada superaría el máximo (3).
Periodo 5: las actividades pospuestas (E, C) se desplazan un periodo, con las que dependen de ellas; este es el diagrama de partida del siguiente periodo.
Periodo 6: la demanda total (7) supera el máximo (3); hay que decidir qué actividades se ejecutan. Criterio de prioridad: (1) las ya empezadas, que no se interrumpen; (2) menor holgura total H, las más críticas; (3) menor duración d. Orden resultante: 1.º D (carga 2, ya empezada, H=0, d=4); 2.º B (carga 1, ya empezada, H=10, d=4); 3.º E (carga 2, no empezada, H=0, d=3); 4.º C (carga 2, no empezada, H=8, d=5).
Periodo 6: se recorren las actividades por orden de prioridad acumulando carga. Se ejecutan D, B; se posponen E, C porque, al añadirlas, la carga acumulada superaría el máximo (3).
Periodo 6: las actividades pospuestas (E, C) se desplazan un periodo, con las que dependen de ellas; este es el diagrama de partida del siguiente periodo.
Periodo 7: la demanda total (7) supera el máximo (3); hay que decidir qué actividades se ejecutan. Criterio de prioridad: (1) las ya empezadas, que no se interrumpen; (2) menor holgura total H, las más críticas; (3) menor duración d. Orden resultante: 1.º D (carga 2, ya empezada, H=1, d=4); 2.º B (carga 1, ya empezada, H=11, d=4); 3.º E (carga 2, no empezada, H=0, d=3); 4.º C (carga 2, no empezada, H=8, d=5).
Periodo 7: se recorren las actividades por orden de prioridad acumulando carga. Se ejecutan D, B; se posponen E, C porque, al añadirlas, la carga acumulada superaría el máximo (3).
Periodo 7: las actividades pospuestas (E, C) se desplazan un periodo, con las que dependen de ellas; este es el diagrama de partida del siguiente periodo.
Periodo 8: la demanda total (7) no supera el máximo (100). Se ejecutan todas las actividades previstas: D, B, E, C.
Periodos 9 a 10: la demanda (4, 4) no supera el máximo en ninguno (100, 100), con las mismas actividades (E, C); se ejecutan todas y no hay nada que decidir.
Periodo 11: la demanda total (6) no supera el máximo (100). Se ejecutan todas las actividades previstas: C, F.
Periodo 12: la demanda total (6) no supera el máximo (100). Se ejecutan todas las actividades previstas: F, C.
Periodos 13 a 16: la demanda (4, 4, 4, 4) no supera el máximo en ninguno (100, 100, 100, 100), con las mismas actividades (F); se ejecutan todas y no hay nada que decidir.
Periodos 17 a 20: la demanda (2, 2, 2, 2) no supera el máximo en ninguno (100, 100, 100, 100), con las mismas actividades (G, K); se ejecutan todas y no hay nada que decidir.
Periodos 21 a 25: la demanda (4, 4, 4, 4, 4) no supera el máximo en ninguno (100, 100, 100, 100, 100), con las mismas actividades (H, I); se ejecutan todas y no hay nada que decidir.
Periodos 26 a 27: la demanda (6, 6) no supera el máximo en ninguno (100, 100), con las mismas actividades (H, J, M); se ejecutan todas y no hay nada que decidir.
Periodo 28: la demanda total (7) no supera el máximo (100). Se ejecutan todas las actividades previstas: J, M, L.
Periodo 29: la demanda total (7) no supera el máximo (100). Se ejecutan todas las actividades previstas: L, J, M.
Periodos 30 a 35: la demanda (2, 2, 2, 2, 2, 2) no supera el máximo en ninguno (100, 100, 100, 100, 100, 100), con las mismas actividades (L); se ejecutan todas y no hay nada que decidir.
Figura 7: Diagrama de Gantt del proyecto una vez aplicado el algoritmo de asignación
Figura 8: Diagrama de cargas tras aplicar el algoritmo de asignación
Con las operaciones indicadas el proyecto sería compatible con la restricción en el límite de recursos disponibles impuesta en el enunciado del ejercicio.
Apartado 3
Indique sus actuaciones para reducir la duración del proyecto hasta 28 periodos con un mínimo sobrecoste añadido.
Tabla 7: Cuadro del algoritmo de Ackoff Sasieni
paso -1 de 5
Algoritmo de Ackoff-Sasieni: tabla completa. Pulse «siguiente» para ver cómo se construye.
Datos: coste unitario de reducción de cada actividad en las rutas que la contienen, duración inicial de cada ruta (columna 0) y periodos que puede reducirse cada actividad (fila 0).
Iteración 0: rutas críticas Route_5 (duración 33); se acorta un periodo la combinación de menor coste: D (coste 10). Resultado: periodos disponibles (fila 1) y duración de las rutas (columna 1); el proyecto dura 32.
Iteración 1: rutas críticas Route_5, Route_9 (duración 32); se acorta un periodo la combinación de menor coste: L (coste 10). Resultado: periodos disponibles (fila 2) y duración de las rutas (columna 2); el proyecto dura 31.
Iteración 2: rutas críticas Route_5, Route_9 (duración 31); se acorta un periodo la combinación de menor coste: L (coste 10). Resultado: periodos disponibles (fila 3) y duración de las rutas (columna 3); el proyecto dura 30.
Iteración 3: rutas críticas Route_5, Route_9 (duración 30); se acorta un periodo la combinación de menor coste: L (coste 10). Resultado: periodos disponibles (fila 4) y duración de las rutas (columna 4); el proyecto dura 29.
Iteración 4: rutas críticas Route_5, Route_9 (duración 29); se acorta un periodo la combinación de menor coste: H (coste 20). Resultado: periodos disponibles (fila 5) y duración de las rutas (columna 5); el proyecto dura 28. Se alcanzó el número de reducciones pedido.
Iteración 0: D
Iteración 1: L
Iteración 2: L
Iteración 3: L
Iteración 4: H
Apartado 4
Indique sus actuaciones para reducir la duración del proyecto hasta su duración tope con un mínimo sobrecoste añadido.
Calculamos la duración del proyecto utilizando las duraciones tope y posteriormente alargaremos la duración de las tareas no críticas que han sido recortadas ineficientemente.
Tabla 8: Cuadro del algoritmo de Ackoff Sasieni para reducción a tiempo tope del proyecto
paso -1 de 17
Algoritmo de Ackoff-Sasieni: tabla completa. Pulse «siguiente» para ver cómo se construye.
Datos: coste unitario de reducción de cada actividad en las rutas que la contienen, duración inicial de cada ruta (columna 0) y periodos que puede reducirse cada actividad (fila 0).
Iteración 0: rutas críticas Route_5 (duración 33); se acorta un periodo la combinación de menor coste: D (coste 10). Resultado: periodos disponibles (fila 1) y duración de las rutas (columna 1); el proyecto dura 32.
Iteración 1: rutas críticas Route_5, Route_9 (duración 32); se acorta un periodo la combinación de menor coste: L (coste 10). Resultado: periodos disponibles (fila 2) y duración de las rutas (columna 2); el proyecto dura 31.
Iteración 2: rutas críticas Route_5, Route_9 (duración 31); se acorta un periodo la combinación de menor coste: L (coste 10). Resultado: periodos disponibles (fila 3) y duración de las rutas (columna 3); el proyecto dura 30.
Iteración 3: rutas críticas Route_5, Route_9 (duración 30); se acorta un periodo la combinación de menor coste: L (coste 10). Resultado: periodos disponibles (fila 4) y duración de las rutas (columna 4); el proyecto dura 29.
Iteración 4: rutas críticas Route_5, Route_9 (duración 29); se acorta un periodo la combinación de menor coste: H (coste 20). Resultado: periodos disponibles (fila 5) y duración de las rutas (columna 5); el proyecto dura 28.
Iteración 5: rutas críticas Route_5, Route_9 (duración 28); se acorta un periodo la combinación de menor coste: H (coste 20). Resultado: periodos disponibles (fila 6) y duración de las rutas (columna 6); el proyecto dura 27.
Iteración 6: rutas críticas Route_5, Route_9 (duración 27); se acorta un periodo la combinación de menor coste: H (coste 20). Resultado: periodos disponibles (fila 7) y duración de las rutas (columna 7); el proyecto dura 26.
Iteración 7: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 26); se acorta un periodo la combinación de menor coste: A (coste 25). Resultado: periodos disponibles (fila 8) y duración de las rutas (columna 8); el proyecto dura 25.
Iteración 8: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 25); se acorta un periodo la combinación de menor coste: A (coste 25). Resultado: periodos disponibles (fila 9) y duración de las rutas (columna 9); el proyecto dura 24.
Iteración 9: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 24); se acorta un periodo la combinación de menor coste: A (coste 25). Resultado: periodos disponibles (fila 10) y duración de las rutas (columna 10); el proyecto dura 23.
Iteración 10: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 23); se acorta un periodo la combinación de menor coste: G (coste 25). Resultado: periodos disponibles (fila 11) y duración de las rutas (columna 11); el proyecto dura 22.
Iteración 11: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 22); se acorta un periodo la combinación de menor coste: G (coste 25). Resultado: periodos disponibles (fila 12) y duración de las rutas (columna 12); el proyecto dura 21.
Iteración 12: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 21); se acorta un periodo la combinación de menor coste: G (coste 25). Resultado: periodos disponibles (fila 13) y duración de las rutas (columna 13); el proyecto dura 20.
Iteración 13: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 20); se acorta un periodo la combinación de menor coste: F (coste 30). Resultado: periodos disponibles (fila 14) y duración de las rutas (columna 14); el proyecto dura 19.
Iteración 14: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 19); se acorta un periodo la combinación de menor coste: F (coste 30). Resultado: periodos disponibles (fila 15) y duración de las rutas (columna 15); el proyecto dura 18.
Iteración 15: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 18); se acorta un periodo la combinación de menor coste: F (coste 30). Resultado: periodos disponibles (fila 16) y duración de las rutas (columna 16); el proyecto dura 17.
Iteración 16: rutas críticas Route_5, Route_6, Route_7, Route_9, Route_10, Route_11 (duración 17); se acorta un periodo la combinación de menor coste: D, E (coste 60). Resultado: periodos disponibles (fila 17) y duración de las rutas (columna 17); el proyecto dura 16. Alguna ruta crítica ya no puede acortarse más: fin del algoritmo.
Iteración 0: D
Iteración 1: L
Iteración 2: L
Iteración 3: L
Iteración 4: H
Iteración 5: H
Iteración 6: H
Iteración 7: A
Iteración 8: A
Iteración 9: A
Iteración 10: G
Iteración 11: G
Iteración 12: G
Iteración 13: F
Iteración 14: F
Iteración 15: F
Iteración 16: D, E
Apartado 5
Duración del proyecto si se introducen los siguientes cambios:
Entre el final de la actividad H y el comienzo de la L deben transcurrir 2 periodos.
La tarea K se inicia cuando F está a mitad de su ejecución
La solución de este apartado precisa:
- Introducir una actividad ficticia (que llamaremos 💤L) tras el final de H y anterior a L con duración 2 periodos.
- Partir la actividad F en dos partes F1 y F2 e iniciar K tras el final de F1.
El grafo PERT resultante de considerar estos cambios es el siguiente:
Cálculo de los tiempos tempranos y tardíos de los sucesos y de las holguras totales 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 46
Figura 9: Grafo Pert del proyecto modificado con indicación del camino crítico
Esta nueva planificación puede ser también representada en el siguiente diagrama de Gantt, donde la zona rayada representa la espera de dos periodos (💤L).
Figura 10: Diagrama de Gantt del proyecto modificado
La duración del proyecto tras estos cambios es 35 periodos.