NETWORK MODELS
Jan 25, 2016
NETWORK MODELS
NETWORK MODELS 2
Networks
• Physical Networks Road Networks Railway Networks Airline traffic Networks Electrical networks, e.g., the power grid
• Abstract networks organizational charts precedence relationships in projects
• Others?
NETWORK MODELS 3
Network Overview
• Networks and graphs are powerful modeling tools.• Most OR models have networks or graphs as a
major aspect• Each representation has its advantages
Major purpose of a representation
• efficiency in algorithms
• ease of use
NETWORK MODELS 4
Algorithms Discussed
• Minimal Spanning Tree• Shortest route algorithm• Maximum Flow Algorithm• Minimum Cost Capacitated Network• Critical Path Method
NETWORK MODELS 5
Basic Definitions
• A graph or network is defined by two sets of symbols:
• Nodes: A set of points or vertices(call it V) are called nodes of a graph or network.
• Arcs: An arc consists of an ordered pair of vertices and represents a possible direction of motion that may occur between vertices.
1 2
Nodes
1 2
Arc
NETWORK MODELS 6
Basic Definitions
• A network consists of nodes and arcs and the notation followed is N = {1,2,3,4} A = {(1,2), (1,3), (2,3), (2,4), (3,4)}
1
2
3
4
NETWORK MODELS 7
Basic Definitions• The flow in a network is limited by the capacity of arc
(may be infinite also)
• An arc is said to be directed if the flow is allowed in only one direction.
• A path is a sequence of distinct branches that join two nodes regardless of direction of flow.
• A path forms a loop or cycle if it connects a node to itself.
• A directed loop or a circuit is a loop in which all the branches are oriented in the same direction.
• A connected network is such that every two distinct nodes are linked by at least one path.
• A spanning tree links all the nodes of the network with no loops allowed.
NETWORK MODELS 8
Basic Definitions
• Path / Connected nodes Path :a collection of arcs formed by a series of
adjacent nodes. The nodes are said to be connected if there is a path
between them.
• Cycles / Trees / Spanning Trees Cycle : a path starting at a certain node and returning to
the same node without using any arc twice. Tree : a series of nodes that contain no cycles. Spanning tree : a tree that connects all the nodes in a
network ( it consists of n -1 arcs).
NETWORK MODELS 9
Network model & LP Model
• Every network model has an underlying linear programming model
• For every node there is exactly one constraint• For every arc there is one decision variable Xij,
where i is the starting node and j is the ending node
NETWORK MODELS 10
Minimal Spanning Tree
• This algorithm deals with linking the nodes of network, directly or indirectly, using the shortest length of connecting branches.
• Application are laying of roads, cables etc.• The steps followed in solving the algorithm are as
follows: Let N = {1,2,…n} be the set of nodes of the network
and define Ck = set of nodes that have been permanently connected
at iteration k of the algorithm. Čk = set of nodes as yet to be connected permanently
NETWORK MODELS 11
Minimal Spanning Tree
• Step 1 – Set C0 = Ø and Č = N
• Step 2 – Start with any node i, in the unconnected set Č0 and
set C1 = {i} which automatically renders Č1 = N – {i} Now
set k =2
• General step k – Select a node j*, in the unconnected set Čk-1
that yields the shortest branch to a node in the connected set
Ck-1. Link j* permanently to Ck-1 and remove it from Čk-
1 ,that is, Ck= Ck-1+ {j*}, Ck= Čk-1 – {j*}
• If the connected nodes Čk is empty, stop. Otherwise, set
k=k+1 and repeat the step.
NETWORK MODELS 12
EXAMPLE
• Example: The State University campus has five computers. The distances between computers are given in the figure below. What is the minimum length of cable required to interconnect the computers? Note that if two computers are not connected this is because of underground rock formations.
4
2
5
3
1
6
4
5
1
3
2
2
2
4
NETWORK MODELS 13
Iteration 1• The algorithm starts at node 1, which gives
C1 = {1} and Č1 = {2,3,4,5}
• The closest node is 2 and the MST will look like follows
4
2
5
3
1
6
4
5
1
3
2
2
2
4
NETWORK MODELS 14
Iteration 2
• Now C2 = {1,2} and Č2 = {3,4,5}• Node 5 is 2 units away from 1 & 2, we may
include any one. Let us select arc (1,5), we get the following MST
4
2
5
3
1
6
4
5
1
3
2
2
2
4
NETWORK MODELS 15
Iteration 3
• Now C3 = {1,2,5} and Č3 = {3,4} • The next shortest node is 3, which is 2 units from
5. The network will be as follows
4
2
5
3
1
6
4
5
1
3
2
2
2
4
NETWORK MODELS 16
Iteration 4
• The next node 4 is 5 units away from node 4 and 5 units from node 3.
• Hence we select arc (5,4). The final iteration is as follows
4
2
5
3
1
6
4
5
1
3
2
2
2
4
NETWORK MODELS 17
SHORTEST ROUTE PROBLEM
• Shortest route algorithm finds the shortest route between a source and destination in a transportation route.
• Applications can be equipment replacement, reliable route, pipeline routing etc.
• Algorithm discussed are Dijkstra’s & Floyd.
NETWORK MODELS 18
LP Model for Shortest Route
X ij
10 if a truck travels on the highway from city i to city j otherwise
Objective = Minimize dijXij
Decision Variables
dij = distance between city i & city j
NETWORK MODELS 19
DIJKSTRA’S ALGORITHM
• Algorithm starts from node i to node j using a specialised labeling method.
• Let ui be the shortest route from node 1 to node i and define dij (>0) as the length of arc (i, j).
• The label for node j is defined as [uj, i]= [ui + dij,i] , dij>0
• Node labels in the algorithm are temporary and permanent.
• Temporary label is replaced by permanent label after finding the shortest route.
NETWORK MODELS 20
• Step 1 – Label the source node 1 with the permanent label [0, -]
• Step 2 – Compute the temporary labels [ui + dij,i] for each node j that can be reached from node i, provided j is not labeled permanently.
• If node j is already labeled with [uj,k] through another node k and if ui + dij < uj then replace [uj,k] with [ui+dij,i].
• If all the nodes have permanent labels then stop. otherwise select the label [ur,s] with the shortest distance (=ur) from amongst all the temporary labels and set i=r and repeat step i.
DIJKSTRA’S ALGORITHM
NETWORK MODELS 21
EXAMPLE – SHORTEST ROUTE
1
42
3 5
100
30
20
15
10 50
60
Find out the shortest route from city 1 to each of the remaining four cities.
NETWORK MODELS 22
EXAMPLE - SR
• Iteration 1 – Assign permanent label [0,-] to node 1.
• Nodes 2 & 3 can be reached from the permanently labeled node 1. The distances are 100 & 30.
• The labeling will be as follows
Node Label Status
1 [0,-] Permanent
2 [0+100,1] = [100,1] Temporary
3 [0+30,1] = [30,1] Temporary
Node 3 in the above table yields smallest value and hence its status is changed to permanent.
NETWORK MODELS 23
EXAMPLE - SRNodes 4 & 5 can be reached from node 3, and the new table looks as follows
Node Label Status
1 [0,-] Permanent
2 [0+100,1] = [100,1] Temporary
3 [0+30,1] = [30,1] Permanent
4 [30+10,3] = [40,3] Temporary
5 [30+60,3] = [90,3] Temporary
The above table shows that node 4 yields shortest distance hence its label is changed to permanent.
NETWORK MODELS 24
EXAMPLE - SRNodes 2 and 5 can be reached from node 4. The table is indicated below
Node Label Status
1 [0,-] Permanent
2 [40+15,4] = [55,4] Temporary
3 [0+30,1] = [30,1] Permanent
4 [30+10,3] = [40,3] Permanent
5 [30+60,3] = [90,3] or Temporary
[40+50,4] = [90,4] Temporary
Node’s 2 temporary label was earlier [100,1]. In this iteration it is changed to [55,4] and hence can be made permanent. Node 5 has two alternatives. In the next iteration node 3 can be reached from Node 2, but since node 3 is already permanently marked. Hence process ends.
NETWORK MODELS 25
Network Representation
1 3 5
2 4
[0,-] (1) [30,1] (1)
[100,1] (1)
[55,4] (3)
[40,3] (2)
[90,3] (2)
[90,4] (3)
100
15
1050
6030
20
NETWORK MODELS 26
Variations to Shortest Route
• We have solved one type of shortest route problem – between a origin and all points of the network.
• Other variations are: Between origin to destination. Between all origins and a single destination. Between a origin and a destination following a certain
route. Between every point and every other point in the
network. Constrained shortest path problems.
NETWORK MODELS 27
Maximum Flow Problem
• The model is designed to reduce or eliminate bottlenecks between a certain starting point and some destination of a given network.
• A flow travels from a single source to a single sink over arcs connecting intermediate nodes.
• Each arc has a capacity that cannot be exceeded.• Capacities need not be the same in each direction
on an arc.
NETWORK MODELS 28
Maximum Flow Problem
Flow : the amount sent from node i to node j, over an arc that connects them. The following notation is used:
Xij = amount of flow
Uij = upper bound of the flow
Lij = lower bound of the flow
Directed/undirected arcs : when flow is allowed in one direction the arc is directed (marked by an arrow). When flow is allowed in two directions, the arc is undirected (no arrows).
Adjacent nodes : a node (j) is adjacent to another node (i) if an arc joins node i to node j.
NETWORK MODELS 29
Problem Definitions
• There is a source node (labeled 1), from which the network flow emanates.
• There is a terminal node (labeled n), into which all network flow is eventually deposited.
• There are n - 2 intermediate nodes (labeled 2, 3,…,n-1), where the node inflow is equal to the node outflow.
• There are capacities Cij for flow on the arc from node i to
node j, and capacities Cji for the opposite direction.
• The objective is to find the maximum total flow out of node 1 that can flow into node n without exceeding the capacities on the arcs.
NETWORK MODELS 30
EXAMPLE
1
2
3
4
5
7
6
4010
10
20
4015
20
30
10
10 20
The paths available are 1257, 1247, 12457, 1367, 1347, 13457, & 13467
NETWORK MODELS 31
ENUMERATION METHOD
• If you consider the path 12457 then X24 arc has the least capacity 10. The other arcs can also take 10 units of flow.
• We allot this flow and then calculate the remaining capacities.
• Now we cannot select any path with 24 arc as we have consumed all capacity.
• We go for path 13467 and carry out above steps.• The above method is too cumbersome and
different starting paths yield different results.• Hence we resort to an algorithm.
NETWORK MODELS 32
ALGORITHM FOR MAX FLOW
• For a node j that receives flow from node ii we define a label [aj,i] where aj is the flow from node I to j.
• Step 1 – For all arcs (i,j) set the residual capacity to the initial capacity. (cij, cji) = (Cij, Cji). Let a1=infinity, and label source node 1 with [,-]. Set i=1 and go to next step.
i jCij Cji
NETWORK MODELS 33
MAX FLOW
• Step 2 – Determine Si as the set of unlabeled nodes that can be reached directly from node I by arcs with positive residuals (that is cij>0 for all j€Si). If Si is not empty then go to step 3 else go to step 4.
• Step 3 – Determine k €Si such that cjk=max[cij]. Set ak = cjk and label node k with [ak,i]. If the sink node has been labeled (k=n) and a breakthrough path is found then go to step 5. Other wise set i=k and go to step 2.
NETWORK MODELS 34
MAX FLOW
• Step 4 – Backtracking, If i=1 no further breakthroughs are possible; go to step 6. Otherwise let r be the node that has been labeled immediately before the current node i and remove ii from the set of nodes that are adjacent to r. Set i=r and go to step 2.
• Step 5 – Determination of residue network. Let Np={1,k1,k2..n} define the nodes of the pth breakthrough path from source 1 to sink n. Then the max flow along the path is computed as fp=min{a1, ak1, ak2, …akn}
NETWORK MODELS 35
MAX FLOW
• Step 5 (contd) – The residual capacity of each arc along the breakthrough path is decreased by fp in the direction of flow and increased by fp in the reverse direction. For nodes I and j on the path, the residual flow is changed from the current (cij, cji) to (cij-fp, cji +fp) if the flow is from i to j and (cij +fp, cij –fp) if the flow is from j to i.
• Reinstate any nodes that were removed in step 4 and set i=1 and return to step 2 to attempt a new breakthrough path.
NETWORK MODELS 36
MAX FLOW
• Step 6 – Given that m breakthrough paths have been determined, compute the maximal flow in the network as F = f1 + f2 + …fm
• Given that the initial and final residuals of arc (i,j) are given by (Cij, Cji) and (cij, cji), respectively, the optimal flow is computed as follows.
• Let (,) = (Cij-cij, Cji-cji). If >0, the optimal flow from i to j is . Otherwise, if >0, the optimal flow from j to i is . It is impossible to have both , positive.
NETWORK MODELS 37
EXAMPLE
• Solved in class
NETWORK MODELS 38
PERT / CPM
• CPM/PERT are fundamental tools of project management and are used for one of a kind, often large and expensive, decisions such as building docks, airports and starting a new factory. Such decisions can be described via mathematical models, but this is not essential. Some would argue that CPM/PERT is not a pure OR topic. CPM/PERT really falls into gray area that can be claimed by fields other than OR also.
NETWORK MODELS 39
CPM & PERT
• Network models can be used as an aid in the scheduling of large complex projects that consist of many activities.
• CPM: If the duration of each activity is known with certainty, the Critical Path Method (CPM) can be used to determine the length of time required to complete a project.
• PERT: If the duration of activities is not known with certainty, the Program Evaluation and Review Technique (PERT) can be used to estimate the probability that the project will be completed by a given deadline.
NETWORK MODELS 40
APPLICATIONS OF CPM/PERT
• Scheduling construction projects such as office buildings,
highways and major construction projects.
• Developing countdown and “hold” procedure for the
launching of space crafts
• Installing new computer systems
• Designing and marketing new products
• Completing corporate mergers
• Building ships
NETWORK MODELS 41
PROJECT PLANNING & CONTROL
• Planning and Control are essential parts of Project Management.
• Project plans are prepared at different stages.• At the concept & definition stage plans tell us
scope, work tasks, responsibilities, schedules and budgets.
• During execution stage plans provide information about actual performance vs planned performance.
• Planning helps to reduce uncertainty of outcomes.
NETWORK MODELS 42
• To apply CPM and PERT, we need a list of activities that make up the project. The project is considered to be completed when all activities have been completed. For each activity there is a set of activities (called the predecessors of the activity) that must be completed before the activity begins. A project network is used to represent the precedence relationships between activities. In the following discussions the activities will be represented by arcs and the nodes will be used to represent completion of a set of activities (Activity on arc (AOA) type of network).
1 32A B
Activity A must be completed before activity B starts
NETWORK MODELS 43
STEPS IN PERT /CPM
• Step 1 – Project planning & construction of network. Identify the various activities (work elements) to be
performed. Develop a work breakdown structure. Determine the resources such as men, machines,
material etc. Estimate the cost and time required for each WBS
element. Specify the interrelationship between various activities. Develop the network diagram.
NETWORK MODELS 44
• Step 2 – Scheduling Estimate the duration of each activity in the most
economical manner. Based on above prepare a network diagram showing the
start and finish of all activities. Identify the critical path. Carry out resource smoothing or crashing of network.
• Step 3 – Project Control Refers to evaluating progress against plan.
STEPS IN PERT /CPM
NETWORK MODELS 45
BASIC NETWORK THEORY
• The CPM/PERT networks consists of two basic elements i.e. events and activities.
• Events represent the milestone for a project such as completion of an activity.
• Activities represent the operations of the project work.
• Events are represented as circles with labeling.• Activities are represented by arrows with direction
of the activity. Labeling included resource information etc.
NETWORK MODELS 46
NETWORK REPRESENTATION• We could have “Activity on Arrow (AOA)” or “Activity on
Node (AON)” type of representation.
• We will follow AOA network.
• Rules for network drawing Node 1 represents the start of the project. An arc should lead from node 1
to represent each activity that has no predecessors. A node (called the finish node) representing the completion of the project
should be included in the network. Number the nodes in the network so that the node representing the
completion time of an activity always has a larger number than the node representing the beginning of an activity.
An activity should not be represented by more than one arc in the network Two nodes can be connected by at most one arc. To avoid violating rules 4 and 5, it can be sometimes necessary to utilize a
dummy activity that takes zero time.
NETWORK MODELS 47
EXAMPLE
• A company is about to introduce a new product. A list of activities and the precedence relationships are given in the table below. Draw a project diagram for this project.
Activity Predecessors Duration(days)
A:train workers - 6
B:purchase raw materials - 9
C:produce product 1 A, B 8
D:produce product 2 A, B 7
E:test product 2 D 10
F:assemble products 1&2 C, E 12
NETWORK MODELS 48
NETWORK DIAGRAM
1
65
42
3A 6
B 9
DummyD 7
E 10
Node 1 = starting nodeNode 6 = finish node
C 8 F 12
NETWORK MODELS 49
CRITICAL PATH ANALYSIS
• Objective of CPA is to estimate the total project duration, and for project control.
• We need to estimate the following times Total completion time of the project. Earlier and latest time of each activity. Float for each activity Critical activities and critical path
NETWORK MODELS 50
SOME TERMINOLOGIES
• Ei = Earliest occurrence time for an event i. Earliest time at which an event can occur without affecting the total project time.
• Li = Latest occurrence time for an event i. Latest time at which an event can occur without affecting the total project time.
• ESij = Earliest start time for an activity (i,j).
• LSij = Latest start time for an activity (i,j).
• EFij = Earliest Finish time for an activity (i,j)
• LFij = Latest finish time for an activity (i,j).
• tij = duration for activity (i,j)
NETWORK MODELS 51
IMPORTANT DEFINITIONS
• Early Event Time: The early event time for node i, represented by ET(i), is the earliest time at which the event corresponding to node i can occur.
• Late Event Time: The late event time for node i, represented by LT(i), is the latest time at which the event corresponding to node i can occur without delaying the completion of the project.
NETWORK MODELS 52
Computing Early Event Time
• To find the early event time for each node in the project network we follow the steps below: Find each prior event to node i that is connected by an
arc to node i. These events are immediate predecessors of node i.
To the ET for each immediate predecessor of the node i add the duration of the activity connecting the immediate predecessor to node i.
E(i) equals the maximum of the sums computed in previous step.
NETWORK MODELS 53
Computing Early Time (Forward Pass)• Set the earliest occurrence time of initial event 1 to zero E1 = 0, i=1.
• Calculate earliest start time for each activity that begins at event i. This is equal to the earliest occurrence time of event i (tail event) ESij = Ei, for all activities (i,j) starting at event i.
• Calculate earliest finish time for each activity that begins at event i. This is equal to the earliest start time of the activity plus the duration of the activity. EFij = Esij + tij = Ei + tij , for all activities (i,j) starting at event i.
• Proceed to the next event j, j>i.
• Calculate the earliest occurrence time for the event j. This is the maximum of the earliest finish times of all activities ending into that event Ej = max {EFij} = max {Ei + tij} for all immediate predecessor activities.
• If j=N, the end event, then the earliest finish time for the project is En= Max{EFij} = max {En-1 + tij}
NETWORK MODELS 54
EXAMPLE
3
4
5
6
8
4
3
Computing ET(i). We start with the beginning node
ET(1)=0 (The starting node is always 0)
Let’s say ET(3)=6ET(4)=8, ET(5)=10
133)5(
124)4(
148)3(
max)6(
ET
ET
ET
ET
ET(6)=14
NETWORK MODELS 55
Computing Late Event Time
• To compute LT(i) we begin with the finish node and go backwards and we follow the steps below: Find each node that occurs after node i and is
connected to node i by an arc. These events are immediate successors of node i.
From the LT for each immediate successor to node i subtract the duration of the activity joining the successor the node i.
LT(i) is the smallest of the differences determined in previous step.
NETWORK MODELS 56
Computing Latest Time (Backward Pass)• Set the latest occurrence time of last event equal to its earliest
occurrence time (from forward pass), Ln = En.
• Calculate the latest finish time of each activity which ends at event j.
This is equal to the latest occurrence time of final event, LFij = Li for
all activities (i,j) ending at event j.
• Calculate the latest start time of all activities ending at j. It is obtained
by subtracting the duration of the activity from the latest finish time of
the activity. LFij = Lj, LSij = LFij – tij = Lj – tij for all activities (i,j)
ending at event j.
• Proceed backward to the event in the sequence.
• Calculate the latest occurrence time of event i, i<j. This is the
minimum of the latest start times of all activities from the event. That
is Li = Min {LSij} for all immediate successor activities = Min {Lj-tij}
NETWORK MODELS 57
EXAMPLE
• Let’s compute LT(I)’s for the example:
• From the graph we know that the late completion time for node 6 is 38. Since node 6 is the only immediate successor of node 6, LT(5)=LT(6)-12=26. Same way LT(4)= LT(5)-10=16.
• Nodes 4 and 5 are the immediate successors of node 3. Thus;
90-LT(3)LT(2)
188)5(
97)4(min)3(
LT
LTLT
36)3(
09)2(min)1(
LT
LTLT
NETWORK MODELS 58
FLOAT
• Event Slack (Float) – The slack (float) for an event is the difference between the latest occurrence time Li and its earliest occurrence time Ei.
• Activity Floats Total Float Free Float Independent Float
NETWORK MODELS 59
TIME DURATION
• Event times Earliest event time for event j is TE
j = max(TEi + tij)
Latest Allowable occurrence time for event i is given as TL
i = min(TLj - tij)
• Activity Time durations Earliest start time EST for activity ij is TE
i
Earliest finish time EFT for an activity ij is TEi + tij
Latest start time LST for an activity ij is TLj - tij
Latest finish time LFT for an activity ij is TLj
NETWORK MODELS 60
TOTAL FLOAT• For an arbitrary arc representing activity (i,j), the total
float, represented by TF(i,j), of the activity represented by
(i,j) is the amount by which the starting time of activity
(i,j) could be delayed beyond its earliest possible starting
time without delaying the completion of the project
(assuming no other activities are delayed).
• It is the difference between the time available to perform
the activity (measured from the earliest start time to the
latest finish time) and the expected completion of the
activity. TF ij = (Lj – Ei) – tij. = LSij – ESij = LFij – EFij.
NETWORK MODELS 61
Maximum Available timetij
Total Float
tijTotal Float
ES
T
LST
EF
T
LFT
18 20 22 24 26 28 30 32 34 36 38 40
Activity 2-4: EST 18 LST 28 tij 12EFT 30 LFT 40
ACTIVITY 2-4
ACTIVITY 2-4
CONCEPT OF TOTAL FLOAT
NETWORK MODELS 62
FREE FLOAT
• Free float is the amount by which the starting time of the activity corresponding to arc(i,j) can be delayed without delaying the start of any later activity beyond the earliest possible starting time.
• In the total float we considered the a particular activity wrt to its earliest start and finish times. However in Total float we wish to know the float available with an activity which will not cause any delay for the successor activities.
• FFij = (Ej-Ei) – tij = Min {Esij, for all immediate successors of (i,j)}- EFij.
NETWORK MODELS 63
Maximum Available timetij
Total Float
Interefering float
Free Float
Total Float
ES
T i
EF
T i
ES
T j
10 20 22 32 46
Activity 2-4: EST for event 10 LST for event 18 tij 12Activity 4-5: EST for event 32 LST for event 46
CONCEPT OF FREE FLOAT
Activity 2-4
Activity 4-5
NETWORK MODELS 64
INDEPENDENT FLOAT
• Independent float gives an idea of the excess time that exists if the preceding activity ends as late as possible and the succeeding activity starts as early as possible.
• It is the amount of time by which it is possible to delay the completion of an activity so that it neither affects its predecessor nor the successor activities.
• IFij = (Ej – Li) – tij = (ESij – LSij) – tij• The negative value of independent float is
considered as zero.
NETWORK MODELS 65
Some Comments on Float• Latest occurrence time of an event is always greater than
or equal to its earliest occurrence time (Li > Ei), TFij >
(Ej – Ei) – tij or TFij > FFij.
• The above implies that the value of free float may range
from 0 to TF and can never exceed TF.
• If TF is negative then resources are not adequate.
• If TF is zero then resources are just adequate.
• If TF is positive then resources are in excess.
NETWORK MODELS 66
CRITICAL PATH
• An activity with a total float of zero is a critical activity
• A path from node 1 to the finish node that consists entirely of critical activities is called a critical path.
• The length of the critical path is the sum of the individual times of all activities lying on it and defines the minimum time required to complete the project.
• On critical path Ej – Ei = Lj – Li = tij.
NETWORK MODELS 67
Calculations
E1 = 0E2 = E1 + t12 0+9 9E3 = Max (E1 + t13, E2 + t23) Max(6,9) 9E4 = E3 + t34 9+ 7 16E5 = Max (E3 + t35, E4 + t45) Max(16,26) 26E6 = E5 + t56 26 + 12 38
L6 = 38L5 = L6 - t56 38-12 26L4 = L5 - t45 26-10 16L3 = Min (L5-t35, L4-t34) Min (9, 18) 9L2 = L3 -t23 9-0 9L1 = Min(L2 -t12, L3 -t13) Min (0, 3) 0
Forward Pass
Backward Pass
NETWORK MODELS 68
FLOAT CALCULATIONS
Activity DurationStart Finish Start Finish Total Free
(i,j) tij Ei Ei + tij Li - tij Lj (Li - tij) - Ei (Ej - Ei) - tij1-2 (B) 9 0 9 0 9 0 01-3 (A) 6 0 6 3 9 3 3
2-3 0 9 9 9 9 0 03-4 (D) 7 9 16 9 16 0 03-5 © 8 9 17 18 26 9 94-5 (E) 10 16 26 16 26 0 05-6 (F) 12 26 38 26 38 0 0
Earliest Time Latest Time FloatFloat Calculations
NETWORK MODELS 69
PERT
• CPM assumes that the duration of each activity is known with certainty. For many projects, this is clearly not applicable. PERT is an attempt to correct this shortcoming of CPM by modeling the duration of each activity as a random variable. For each activity, PERT requires that the project manager estimate the following three quantities: a : estimate of the activity’s duration under the most favorable
conditions (Optimistic time to)
b : estimate of the activity’s duration under the least favorable conditions (pessimistic time tp)
m : most likely value for the activity’s duration (tm)
NETWORK MODELS 70
TIME DURATION OF ACTIVITY
• Let Tij be the duration of activity (i,j). PERT requires the assumption that Tij follows a beta distribution. It is important to realize that it can approximate a wide range of random variables, including many positively skewed, negatively skewed, and symmetric random variables. According to this assumption, it can be shown that the mean and variance of Tij may be approximated by
36
)(var
6
4)(
2abT
bmaTE
ij
ij
NETWORK MODELS 71
PROJECT COMPLETION TIME
• Project completion is subject to probability as we have three times for each activity.
• Probability distribution of project completion can be approximated by Normal distribution.
• Probability of completing a project in scheduled time Ts is given by
time.
expected thefromaway lies timescheduled thedeviations standard of no e
project of timecompletion expected Te where
/
by given is variatenormal standard The
)/ { Prob
eTeTsZ
eTeTsZ
NETWORK MODELS 72
EXAMPLETask A B C D E F G H I
to 5 18 26 16 15 6 7 7 3tp 10 22 40 20 25 12 12 9 5tm 8 20 33 18 20 9 10 8 4
Determine the following:
1. Expected task times and their variances.
2. The earliest and latest expected times to reach the event.
3. The critical path
4. The probability of an event occurring at the proposed completion date if the original contract time of completing the project is 41.5 weeks.
5. The duration of the project that will have 95 % chance of being completed.
NETWORK MODELS 73
NETWORK
12
5
3 6
4
7
NETWORK MODELS 74
Calculation of expected time
Activity to tp tm te variance1-2 5 10 8 7.8 0.6941-3 18 22 20 20.0 0.4441-4 26 40 33 33.0 5.4442-5 16 20 18 18.0 0.4442-6 15 25 20 20.0 2.7783-6 6 12 9 9.0 1.0004-7 7 12 10 9.8 0.6945-7 7 9 8 8.0 0.1116-7 3 5 4 4.0 0.111
22 )}(6
1{
)4(6
1
totp
tptmtote
NETWORK MODELS 75
E1 = 0E2 = E1 + t12 0+7.8 7.8E3 = E1 + t13 0+20 20E4 = E1 + t14 0+33 33E5 = E2 + t25 7.8 + 18 25.8E6 = Max (E2+t26, E3+t36) Max(27.8, 29) 29E7 = Max (E5+t57, E6+t67, E4+t47)Max(33.8, 33, 42.8) 42.8
L7 = 42.8L6 = L7 - t67 42.8 -4 38.8L5 = L7 - t57 42.8 - 8 34.8L4 = L7 - t47 42.8 - 9.8 33L3 = L6 - t36 38.8 - 9 29.8L2 = Min (L6-t26, L5-t25) Min (18.8, 16.8) 16.8L1 = Min(L2 -t12, L3 -t13, L4-t14) Min (9.8, 0, 9) 0
Forward Pass
Backward Pass
NETWORK MODELS 76
Solution• The critical path is 1 – 4 – 7
• The last event will occur only after 42.8 weeks.
• The variance of critical path length is 5.429 + 0.694 = 6.123
• It is given that Ts (scheduled time) = 41.5, Te = 42.8 and e = sqrt (6.123) = 2.474
• Therefore probability of meeting scheduled time is given by
• The probability of the project can be completed in less than or equal to 41.5 weeks is 0.30. In other words, the probability that will get delayed beyond 41.5 weeks is 0.70
) 52.0 ( Prob ]
[ Prob
Ze
TeTsZ
NETWORK MODELS 77
PROJECT CRASHING
• Project completion can be reduced by crashing the normal completion time of activities.
• This will involve extra budget.• There is a trade off between time reduction and
extra budget.• After certain limit the project cost may actually
increase beyond economical measures.• An optimum point can be found based on the
direct and indirect costs of the project.
NETWORK MODELS 78
Project Cost Model
Cost rises if project is crashed
Min Cost
Optimum duration
Cost rises if project is crashed
Tot
al C
ost
NETWORK MODELS 79
Crash Cost
• Normal time is the standard time that an estimator would usually allow for an activity.
• Crash Time is the minimum possible time in which an activity can be completed by employing extra resources.
• Normal cost is the direct cost required to complete activity in normal duration.
• Crash cost is the direct cost corresponding to crash time.
NETWORK MODELS 80
Crash Cost ApproximationD
irec
t Cos
t
Cc
Cn
Crash Duration Normal Duration
NETWORK MODELS 81
Steps in Crashing Project• Step 1 – Determine the normal project completion
time and associated critical path for the following cases When all activities are completed with their normal
time. This provides the starting point for crashing analysis.
When all activities are crashed. This provides the stopping point for crashing analysis.
• Step 2 - Identify critical activities and compute the cost slope for each of these by using the relationship Cost slope = crash cost – normal cost/ crash time-
normal time.
NETWORK MODELS 82
• Step 3 – For reducing total project time, identify and crash an activity time on the critical path with the lowest cost slope value to the point where another path in the network becomes critical The activity has been crashed to its lowest possible time.
• Step 4 – If the critical path under crashing is still critical, return to step 3. However, if due to crashing of an activity in step 3, other path(s) in the network also becomes critical, then identify and crash the activity(s) on the critical path(s) with the minimum joint cost slope.
• Terminate the procedure when each critical activity has been crashed to its lower possible time. Determine the total project cost corresponding to different project duration.
Steps in Crashing Project
NETWORK MODELS 83
ExampleThe following table gives data on normal time and costand crash time and cost for a project
ActivityTime Cost Time Cost
1-2 3 300 2 4002-3 3 30 3 502-4 7 420 5 5802-5 9 720 7 8103-5 5 250 4 3004-5 0 0 0 05-6 6 320 4 4106-7 4 400 3 4706-8 13 780 10 9007-8 10 1000 9 1200
Draw the network and identify the critical pathWhat are the normal project duration and associated costFind out the total float associated with each activityCrash the relevant activities and determine the time and cost
Normal Crash
NETWORK MODELS 84
Network
1 2 5 6
3
47
8
E1=0
L1=0
E2=3
L2=3
E3=6
L3=7
E4=10
L4=12
E5=12
L5=12E6=18
L6=18E8=32
L8=32
E7=22
L7=22
3 9
7
6
3 5
4
10
13
0
The critical path is 1-2-5-6-7-8 and the normal duration is 32 weeks
NETWORK MODELS 85
Float Calculation
Float for each activity is given as follows
Activity(Li - Ei) - tij
1-2 (3 - 0) -0 02-3 (7 - 3) -7 12-4 (12 - 3) - 7 22-5 (12 - 3 ) -9 03-5 (12 - 6) - 5 14-5 (12 - 10 ) - 0 25-6 (18 - 12) - 6 06-7 (22 - 18 ) - 4 06-8 (32 - 18 ) -13 17-8 (32 - 22) -10 0
Total Float
NETWORK MODELS 86