Project ManagementResource Scheduling
Mauro Mancini ©
Resource SchedulingEng. Giorgio Locatelli
Resource scheduling
Mauro Mancini © 2
Resource Scheduling
Project Management: “The planning, monitoring and controlof all aspects of theproject and the motivation of all those involved in it to achieve the projectobjectives on time and to the specified cost, quality and performance”. (ProjectManagement Institute - PMI)”
Mauro Mancini © 3
Resource Scheduling
• Project scheduling with infinite capacity• Resources allocated profile evaluation• Comparison between resources requirements / availability• Resource leveling• Resource constrained project scheduling problem (RCPSP): fixed times or
resources
Mauro Mancini © 4
Project disaggregation in more activities
Precedence relationships among activities
Trade - offLength activities/ resources allocation
Resource Scheduling
Mauro Mancini ©
Project’s resources reallocation
CPM Project length assessment
Resources requirements / availability evaluation
Plan execution
Reporting
5
CPM vs. Resource Scheduling
CPM Resource Scheduling
Consider infinite capacity Consider limits on resources availability
Precedence relationshipsarestable
Embodying all the kinds of relationships,consider that they may be dynamic andtemporary
Mauro Mancini © 6
arestabletemporary
Critical chain is a functionof time and naturalprecedence
Critical chain is a function of time, all the kindsof relationships, resources need and availability,access priority of the activities to the resources
Activities floats dependonly on project duration
Activities floats depend on resources need andavailability
Steps to apply a Resource Management methodology
1. Infinite capacity programming
2. Aggregate resource need evaluation
3. Cumulative resources need evaluation
Mauro Mancini © 7
4. Finite capacity programming (Resource Constrained Project
Scheduling Problem)
5. Levelling resources need profile (Resource Leveling)
Schedulation Types
Overload Fixed time
Resources
LevellingResources
Time
Mauro Mancini © 8
Fixed resources
Time
LimitationResources
Time
Time
Resource Levelling
Resource leveling aims to minimize the period-by-period variations in resource loading by shifting tasks within their slack allowances.
The purpose is to create a smoother distribution of resource usage.Advantages:• much less hands-on management is required if the use of a
given resource is nearly constant over its period of use. The PM
Mauro Mancini © 9
given resource is nearly constant over its period of use. The PM ― can arrange to have the resource available when needed ― can have the supplier furnish constant amounts ― can arrange for a backup supplier if advisable
• resource usage is leveled, the PM may be able to use a “just-in-time” inventory policy without much worry that the quantity delivered will be wrong
Resource Levelling advantages
• when resources are leveled, the associated costs also
tend to be leveled
• it is a procedure that can be used for almost all
projects, whether or not resources are constrained
Mauro Mancini © 10
Resource Constrained Project Scheduling problem (RCPSP)
� Optimization techniques
Limits:
• heavy computation
•“static” definition of the problem
Mauro Mancini © 11
•“static” definition of the problem
•difficulty to determine “optimality” criteria, considering
several possible objectives in contrast.
Resource Constrained Project Scheduling problem (RCPSP)
� Heuristic approaches
Limits:
•they can pursue only one objective for every scheduling
•they obtain different performance according to the network
characteristics to which they are applied
Mauro Mancini © 12
they obtain different performance according to the network
characteristics to which they are applied
•they are based on priority rules (to solve conflict between
activities that require common resources) fixed a priori,
without the possibility to adapt them to the project
characteristics.
Resource Constrained Project Scheduling problem (RCPSP)
Heuristic approaches
Evaluation of conflicts among activities to the access to shared resources
Mauro Mancini © 13
One time and at local level
RCPSP
In each step:
•Determination of the activities’ list with precedence constraints verified (in competition with shared resources)
•Activities’ group selection with the resource availability having:ominimum delay of project’ completion
Mauro Mancini © 14
ominimum delay of project’ completionopriority rules
•Parallel approach, forward, early start (front loading)
RCPSP
Heuristic Approach
•In series approach (static)oOrdinate list of starting activitiesoIt tends to advance by paths, in order of criticality
Mauro Mancini © 15
•In parallel approach (dynamic)oOrdinate list of activities updated at each stepoIt tends to advance by temporal intervals
RCPSP
•In parallel approach•Rolling wave approach•Different priority rules (problem’s dependent)•Splitting / interrupting•Multi-resources vision•“What if” analysis
Mauro Mancini © 16
•“What if” analysis
RCPSP
�HOW TO INCREASE RESOURCES
� Working Overtime
� Working Shifts
� Increase Productivity
Mauro Mancini © 17
� Job and Knock
� Learning Curve
� Sub-Contractors
� Scope of Work
RCPSP
� HOW TO REDUCE RESOURCES
� Move unemployed resources to other activities
� Move unemployed resources to R&D jobs
� Hire out resources internally or externally
Mauro Mancini © 18
� Hire out resources internally or externally
� Pre-manufacture components before they are needed
� Maintenance of equipment during slack periods
� Train workforce during slack periods to gain new skills which will make them more productive and flexible in
the future
� Send the under utilized workforce on leave
Series – Parallel Approach
P1 P2 P3
Mauro Mancini © 19
Critical PathSeries approachParallel approach
Priority rules
MIN TF (Minimum Total Float)
The conflict to access to shared resources by different activities is solved giving priority to the activity with minimum float
It’s possible demonstrate that, using a parallel approach, the
Mauro Mancini © 20
It’s possible demonstrate that, using a parallel approach, the MIN TF is equivalent to the MIN LST rule that grades activities according to the increasing values from the starting time at the latest
Priority rules
The precedence is given to the activity characterized by the minimum value for the dij parameter. It corresponds to the project duration increment that occurs when the j activity follows the i activity with:
RSM (“Resource Scheduling Method”)
Mauro Mancini © 21
dij = max [0; EFTi-LSTj]
Where:EFTi = Earliest finish time for the i activityLSTj = Latest start time for the j activity
Priority rules
RSM (“Resource Scheduling Method”)
The comparison is made among all the pairs belonging to the sets ofactivities in conflict for the access to shared resources. This rulegives results similar to the MIN LFT rule.
EFTiLST
Mauro Mancini © 22
dij
EFTiLSTi
MIN LFT (“Minimum Late Finish Time”)
This rule sequences the activities giving precedence to activitiescharacterized by minimum late finish Time.
Priority rules
GRD (“Greatest Resource Demand”)It use the priority criterion of unit’s resource requirements (considering allthe demanded resources) associated to each activity , giving precedence tothe activities characterized by a greater requirements (they can potentiallycreate bottlenecks). The priority grade associated to eachactivity iscomputed in this way:
m
Mauro Mancini © 23
Where:dj = j activity durationrij = i type resource requirements for each unit of time by thej activitym = number of the different types of resources
Priority = di • Σ rij
m
i =1
Priority rules
GRU (“Greatest Resource Utilization”)
This rule gives the priority, in each program step, to the combination ofactivities that obtaining the maximal possible saturationfor the availableresources. The rule implementation requires the resolution of a linearprogramming problem of integer number (0,1).
Mauro Mancini © 24
SIO (“Shortest Imminent Operation”)
The priority is given to the activities with shortest duration. This rulecomes from job-shop scheduling problem.
Priority rules
This rule gives the priority to the combination of activities
that allows to program the maximum possible number of
activities in each programming step.
It differs to the GRU rule because the determination of the
maximum possible number of activities considers only the
MJP (“Most Job Possible”)
Mauro Mancini © 25
maximum possible number of activities considers only the
feasibility, that is the availability of resources, and not their
saturation level.
Series – Parallel Approach Exercise
Considering a project composed by the following activities
A 32 0
B 04 2
E 41 0
L 03 5
Att. RaDur. Rb
Mauro Mancini © 26
C 62 0
F 24 0
D 05 2
H 48 4
G 31 0
I 53 0
M 25 0
N 22 0
Series – Parallel Approach Exercise
1. To compute the EST, EFT, LST, LFT and the resource allocatedtemporal profile
2. Using the “min total float” with fixed time levelling andresource availability of 7 units/day for the A resource (andinfinite availability for the B resource) to schedule the activitieswith:
Mauro Mancini © 27
with:Series approachParallel approach
3. Like at point 2, but levelling with fixed resources respecting theavailability for the A and B resources (6 units/day)
Series – Parallel Approach Exercise
From the provided data is possible to obtain:
2
6
1
7
A 32 0
6
8
3
11
B 04 2
21
7
12
7
12
E 41 0
14
13
12
15
L 03 5
11873 1716
EFT
LST
EST
LFT
A 32 0
Mauro Mancini © 28
1 2
C 62 0
13 15
9 12
F 24 0
4 8
D 05 2
10
3
3
10
H 48 4
1
7
1
7
G 31 0
4
8
2
10
I 53 0
15
11
11
15
M 25 0
16 17
N 22 0
Series – Parallel Approach Exercise
Attività EST EFT LST LFT TF Ra Rb
A 1 2 6 7 5 3 -
B 3 6 8 11 5 - 2
C 1 2 1 2 - 6 -
D 3 7 4 8 1 - 2
E 7 7 12 12 5 4 -
F 8 11 9 12 1 2 -
Mauro Mancini © 29
F 8 11 9 12 1 2 -
G 1 1 7 7 6 3 -
H 3 10 3 10 - 4 4
I 2 4 8 10 6 5 -
L 12 14 13 15 1 - 5
M 11 15 11 15 - 2 -
N 16 17 16 17 - 2 -
Series – Parallel Approach Exercise
A
B
C
D
E
F
Mauro Mancini © 30
F
G
H
I
L
M
N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Series – Parallel Approach Exercise
8
9
10
11
12
13
14
Mauro Mancini © 31
1
2
3
4
5
6
7
8
Resource - A
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Series – Parallel Approach Exercise
8
9
10
11
12
13
14
Mauro Mancini © 32
1
2
3
4
5
6
7
8
Resource - B
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Series Approach – Fixed Times
2. The activities are scheduled considering the min total float
Activity C H M N D F L A B E G I
TF 0 0 0 0 1 1 1 5 5 5 6 6
The activities are scheduled considering the network diagram
Mauro Mancini © 33
The activities are scheduled considering the network diagram
Available ACG � C
Available AGDH � H
Available AGD � D
Series Approach – Fixed Times
2. The activities are scheduled considering the min total float
Activity C H M N D F L A B E G I
TF 0 0 0 0 1 1 1 5 5 5 6 6
The activities are scheduled considering the network diagram
Mauro Mancini © 34
The activities are scheduled considering the network diagram
Available ACG � C
Available AGDH � H
Available AGD � D
Scheduling order
1° 2° 3° 4° 5° 6° 7° 8° 9° 10° 11° 12°C H D F A B E L G I M N
Series Approach – Fixed Times
Programming phase (fixed times)
The C activity has been programmed (days 1-2 with 6 days delayresp. A)The H activity has been programmed (days 3-10 with 4 days delay resp. A)The D activity has been programmed (days 3-7 with 0 days delayresp. A)
Thepredeterminedorderis closelyfollowed
Mauro Mancini © 35
Thepredeterminedorderis closelyfollowed
Series Approach – Fixed Times
A
B
C
D
E
Mauro Mancini © 36
F
G
H
I
L
M
N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Series Approach – Fixed Times
7
8
9
10
11
12
13
14
I
Resource A (series)
I M
Mauro Mancini © 37
1
2
3
4
5
6
7
C
H
A G
F
F
M N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
I
E
M
In order to respect the project deadline is necessary to havean overload (I)
Parallel Approach – Fixed Times
Algorithm’s step:
1. Creation the list of programmable activities2. Re-compute the relative TF and EST3. Tidy up the list activities4. Collocatedoneata time following thepoint3 order
Mauro Mancini © 38
4. Collocatedoneata time following thepoint3 order5. Come back to point 1
Parallel Approach – Fixed Times
Step 1 DATEAVAILABLEACTIVITIES TOTAL FLOAT
RESURCE AREQUIREMENTS
C 0 6
1° d. A 5 3
G 6 3
AVAILABLEUPDATED RESURCE A
Mauro Mancini © 39
Step 2
H 0 4
3° d. D 1 -
A 3 3
G 4 3
AVAILABLEACTIVITIES
UPDATEDTOTAL FLOAT
RESURCE AREQUIREMENTSDATE
H, D, A start. G has been postponed because of lack of resources
Parallel Approach – Fixed Times
Step 3 DATEAVAILABLEACTIVITIES
UPDATEDTOTAL FLOAT
RESURCE AREQUIREMENTS
G 2 3
5° d. B 3 --
Step 4 DATEAVAILABLEACTIVITIES
UPDATEDTOTAL FLOAT
RESURCE AREQUIREMENTS
Mauro Mancini © 40
The available resource is not enough, but is necessary starting the I activity the 6°day, in fact in order to respect the resource constraint, should be postpone I to the 11° day, with 3 days project’ delay
6° d. I 2 5
Parallel Approach – Fixed Times
AVAILABLEUPDATED RESURCE A
Step 5 DATEAVAILABLEACTIVITIES
RESURCE AREQUIREMENTS
F 0 29° d.
E 3 4
UPDATEDTOTAL FLOAT
Mauro Mancini © 41
Step 6
M 0 211° d.
E 1 4
AVAILABLEACTIVITIES
UPDATEDTOTAL FLOAT
RESURCE AREQUIREMENTSDATE
H, D, A start. G has been postponed because of lack of resources
Parallel Approach – Fixed Times
AVAILABLEUPDATED RESURCE A
Step 7 DATEAVAILABLEACTIVITIES
RESURCE AREQUIREMENTS
L 10 -12/13° d.
UPDATEDTOTAL FLOAT
Mauro Mancini © 42
Step 8
N 0 216° d.
AVAILABLEACTIVITIES
UPDATEDTOTAL FLOAT
RESURCE AREQUIREMENTSDATE
Parallel Approach – Fixed Times
A
B
C
D
E
F
Mauro Mancini © 43
FG
H
I
L
M
N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Parallel Approach – Fixed Times
8
9
10
11
12
13
14Resource A (Parallel)
Mauro Mancini © 44
1
2
3
4
5
6
7
8
CH
A G
F
F
M N1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
I E
M
Series and Parallel Approach – Fixed Resources
3.In case of fixed resources programming the project’ deadlineconstraint is not considered, but it is no longer possible havingoverload.
The series and parallel approach stay unchanged.Thesamescheduleremainsor theseriesapproach.
Mauro Mancini © 45
Thesamescheduleremainsor theseriesapproach.
Parallel Approach – Fixed Times
1
2
3
4
5
6
7
8
9
C
H
A G
F
F
M N 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
E I
18 19 20 21 22
Resource - A
Mauro Mancini © 46
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
1
2
3
4
5
6
7
8
9
H
D B
B
L
Resource - B
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Series Approach – Fixed Resources
A
BC
D
E L
Mauro Mancini © 47
E
F
G
H I
L
M N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
Series Approach – Fixed Resources
A
BC
D
EFG
L
Mauro Mancini © 48
G
H I
M N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 1718 19 20 21 22
Parallel Approach – Fixed Resources
123456789
C
H
A GF
M N
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
I
18 19 20 21 22
Resource A
F
E
Mauro Mancini © 49
1
2
3
4
5
6
7
8
9
H
D B
B
L
Resource - B
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
Suggestions
To obtain the best results it is convenient to adopt the followingexpedient:
• to use preferably parallel approach• to attempt different priority rules• to executeresourcelevelingalonga limited temporal period
Mauro Mancini © 50
• to executeresourcelevelingalonga limited temporal period(according to a rolling wave approach)• to use options available on the software (splitting, interrupting,reprofiling, etc.)• to verify the possibility to maintain a “multi-resource” visionof the utilization resources profile coming from scheduling• to led what-if analysis, hypothesizing possible corrective actions
Example 2
Activity Duration Precendence ResourceA 2 g a[300%]B 4 g A b[200%]C 2 g a[600%]D 5 g C b[200%]E 1 g B a[400%]F 4 g D a[200%]G 1 g a[300%]
Mauro Mancini © 51
G 1 g a[300%]
H 8 g Ca[400%];b[400%
]I 3 g G a[500%]L 3 g E;F b[500%]M 5 g H;I a[200%]N 2 g L;M a[200%]
Find the critical path, and the resources utilisation diagram (hypothesis of
infinite resources available). Assume to start on september 1
The Gantt and precedence diagramID Nome attività Durata Inizio Fine PredecessoriNomi risorse
1 A 2 g lun 01/09/08 mar 02/09/08 a[300%]
2 B 4 g mer 03/09/08 sab 06/09/08 1 b[200%]
3 C 2 g lun 01/09/08 mar 02/09/08 a[600%]
4 D 5 g mer 03/09/08 dom 07/09/08 3 b[200%]
5 E 1 g dom 07/09/08 dom 07/09/08 2 a[400%]
6 F 4 g lun 08/09/08 gio 11/09/08 4 a[200%]
7 G 1 g lun 01/09/08 lun 01/09/08 a[300%]
8 H 8 g mer 03/09/08 mer 10/09/08 3 a[400%];b[400%]
9 I 3 g mar 02/09/08 gio 04/09/08 7 a[500%]
10 L 3 g ven 12/09/08 dom 14/09/08 5;6 b[500%]
11 M 5 g gio 11/09/08 lun 15/09/08 8;9 a[200%]
0%
0%
0%
0%
0%
0%
0%
0%
0%
0%
0%
L M M G V S D L M M G V S D L M M G V S D01 set 08 08 set 08 15 set 08
Mauro Mancini © 52
11 M 5 g gio 11/09/08 lun 15/09/08 8;9 a[200%]
12 N 2 g mar 16/09/08 mer 17/09/08 10;11 a[200%]
0%
0%
Resource a: utilisation diagram
Mauro Mancini © 53
Resource b: utilisation diagram
Mauro Mancini © 54
Resource constraints
Assume now that only 7 resources “a” are available.
What’s happen?
Solve the problem with a series approach
Mauro Mancini © 55
Solve the problem with a series approach
Resource constraints:
Mauro Mancini © 56
Schedule: step 1
Acivity duration EST EFT LST LFT TF Ra RbA 2 1 2 6 7 5 3B 4 3 6 8 11 5 2C 2 1 2 1 2 0 6D 5 3 7 4 8 1 2E 1 7 7 12 12 5 4F 4 8 11 9 12 1 2
Mauro Mancini © 57
F 4 8 11 9 12 1 2G 1 1 1 7 7 6 3H 8 3 10 3 10 0 4 4I 3 2 4 8 10 6 5L 3 12 14 13 15 1 5M 5 11 15 11 15 0 2N 2 16 17 16 17 0 2
Schedule: step 2
Schedule with the serial approach1 2 3 4 5 6 7 8 9 10 11 12C H D F A B E L G I M N
Mauro Mancini © 58
With same project duration 7 resources are not
enough (even with a parallel approach)
A possible solution: to add 4 more days
ID Nome attività Durata Inizio Fine PredecessoriNomi risorse
1 A 2 g mer 03/09/08 gio 04/09/08 a[300%]
2 B 4 g v en 05/09/08 lun 08/09/08 1 b[200%]
3 C 2 g lun 01/09/08 mar 02/09/08 a[600%]
4 D 5 g mer 03/09/08 dom 07/09/08 3 b[200%]
5 E 1 g lun 15/09/08 lun 15/09/08 2 a[400%]
6 F 4 g lun 08/09/08 gio 11/09/08 4 a[200%]
0%
0%
0%
0%
0%
0%
L M M G V S D L M M G V S D L M M G V S D L M01 set 08 08 set 08 15 set 08 22 set 08
Mauro Mancini © 59
6 F 4 g lun 08/09/08 gio 11/09/08 4 a[200%]
7 G 1 g mer 03/09/08 mer 03/09/08 a[300%]
8 H 9 g mer 03/09/08 gio 11/09/08 3 a[400%];b[400%]
9 I 3 g v en 12/09/08 dom 14/09/08 7 a[500%]
10 L 3 g mar 16/09/08 gio 18/09/08 5;6 b[500%]
11 M 5 g lun 15/09/08 v en 19/09/08 8;9 a[200%]
12 N 2 g sab 20/09/08 dom 21/09/08 10;11 a[200%]
0%
0%
0%
0%
0%
0%
0%
It was the 17/09
A possible solution: to add 4 more days
Mauro Mancini © 60