«^*

advertisement
«^*
LIBRARY
OF THE
MASSACHUSETTS INSTITUTE
OF TECHNOLOGY
fjiilC'-;
1
TABLE OF CONTENTS
INTRODUCTION
1
THE BRANCH AND BOUND TECHNIQUE
3
FIXED ORDER ALGORITHM
6
Feasibility Tests
7
Determination of Bounds
7
Branching and Backtracking
9
Algorithm Termination
10
Flow Chart
10
Sample Problem
11
Decision Node Order
14
PARTITIONING ALGORITHM
16
Sample Problem
18
DECOMPOSITION
20
Combining Subproject Solutions
23
CONCLUSION
28
REFERENCES
29
679408
INTRODUCTION
Decision
CPM
has been proposed by Crowston and Thompson [2]
as a method for the simultaneous planning and scheduling of projects.
In conventional
CPM
analysis, decisions are
made as
method for performing each task before the project
decision
CPM
methods
of
allows the planner
performing each job
to the specific
scheduled.
is
However,
include all reasonable alternative
to
in the
project graph, the alternatives
possibly having different costs, different time durations, and different
technological dependencies, and to then pick the best combination of job
alternatives in light of cost and due-date considerations.
In addition,
interdependency between methods used to complete different tasks
be included.
Such alternative interdependencies
requirement for consistency
in the
may
may
arise from a
materials or designs used, for
example.
Crowston and Thompson show how Decision
CPM
networks can be
given a mathematical representation using integer variables.
Crowston
also shows in [l] that all nondecision jobs (i.e., jobs for which there are
no alternatives)
may be eliminated from
so that resulting "reduced network"
Given
a set of decisions,
jobs in the reduced
The optimal
is
the original network in a fashion
equivalent in the following sense:
the resulting early start times for all decision
network will be the same as those
in the original.
solution to the reduced network is thus optimal to the original.
-
1 -
1 •
".
The reduced problem
each iob
S-- in the
network
is
its
formulated as follows:
cost C..,
its
integer variable d.. which takes the value
not.
if it is
The subscript
early start time w... and an
1
if
the job is
"ij" indicates that a
alternative for decision node
A due
i.
associate with
decision job
DD
date
performed and
is
is the jth
assumed with
a
premium
of "r" dollars per time period of early completion and a penalty of "p"
Then
dollars per time period of late completion.
m.inimize the
sum
of job cost
Min Z
subject
=
find
D
=
{
d.
.}
and due-date penalty or premium, that
N
k(i)
2
2
j=l
3=1
d..
C.
J
J
+
_
rw_ + pw^
-
to:
Interdepend ency
Mutually exclusive:
(a)
k(i)
S
d,,
j=l
^J
=
1
1
=
1
N
Alternative: as required i.e.
(b)
<
-
d
13
mn
d..
=
d
mn
d..
13
Precedence
-
where
S.. is
M(l
- d..)
13'
+ W..+
13
t...
,
i3kl
<
-
M="oo"
'"
w,
an immediate predecessor of
13
kl,
S,
,
kl
Project Completion
Wj,
-
Wp
+
Wp
so as to
-
DD
- 2
=
Wp. Wp >
is:
where N
the
is
number
of decision nodes;
of alternatives for decision node
from the start
successor
S,
,;
of the
(i);
predecessor
and w^,
is
to
is
the time required
may be
[l]
nondecreasing with completion time.
may be
.
in [9]
is
For
easily handled.
associated with the completion
It is
required, however, that
The algorithms described
of finding the project cost
possible completion date)
Branch and
is
paper are concerned with finding the optimal solution(s)
The problem
immediate
S.. to the start of its
be described, that
Bound, more general objective functions
of particular tasks in the project
,
number
the early start time of project finish.
For the solution procedure
example, rewards and penalties
t.,
k(i) is the
in
Z be
in this
terms
of Z.
curve (minimum cost for each
only slightly
more
difficult
and
discussed
is
.
THE BRANCH AND BOUND TECHNIQUE
The method
of
DCPM
torial
networks.
of
Branch and Bound has been adopted for
Branch and Bound, otherwise known as Combina-
Programming or Controlled Enumeration,
is
an intelligently
structured search of the space of all possible solutions.
is
the solution
based on two principal concepts:
The procedure
the use of a controlled enumeration
technique for (implicitly) considering all potential solutions, and the
elimination from explicit consideration of particular potential solutions
which are known from bounding or feasibility considerations
unacceptable.
most
For
of
a
The technique has been applied
which require
survey
of
all
to a variety of
or mixed integer solutions.
Branch and Bound applications, see
[6]
.
to
be
problems,
The method as applied
search diagram of Figure
The
1.
problem
to this
is illustrated
solution space
by the tree
partitioned into
is first
the mutually exclusive collectively exhaustive subspaces of solutions
defined by the choice of one of the possible alternatives for decision node
Then each
node.
If
of these
subspaces
is
further partitioned using another decision
the process is continued through all decision nodes, every
solution satisfying the mutually exclusive interdependency conditions
obtained.
In
Figure
each decision node
there are
k(i)
1,
=
1,
alternatives for node
.
.
.
,
is
can be easily visualized.
i
set of n decisions d
is a
n where k
some bookkeeping
a vector of decision node labels
augmentation of p
It
for
but the extension to the case where
is illustrated,
partial
solution: p
^
^n
is
where there are only two alternatives
the case
A
—
m
I.
in
i
corresponds
va(m)j
/
»
1
label and a is
some order. An
to the choice of a job
alternative for decision node a (n +
be done
to
1)
con-
in
k
iunction with p
^n
J
k
Pn
k'
Pn+1
=
,
a(n+l)j-
I-
A
completion:
k'
p!X
of p
k
results
tions such that a decision is
from
made
a series of augmenta-
for each node.
7
the labels have been chosen so that p„ ={d.
augmentation of Pg
=
{d,
,
dg
;
,
}
.
If
N
.
;
= 4,
d„
In
.
}
Figure
is
1,
an
p. and p. are
3
two possible completions of p-.
It IS
important to note that a partial solution p
or more paths from start to finish
If
so, a project
completion date
in the
w
is
4
-
may
define one
"reduced network" of the project.
defined for the partial solution.
job
Figure
1.
Branch and Bound Solution Tree.
Then w
bound on the completion date which will result from
a lower
is
any completion
bound on the
of p
k
Similarly,
the quantity
„
.
n
-J
total job cost
s,
C
"
k
=
S
C.
.
d..
ij
jj
is a
lower
which will result from any completion of p
k
.
Then
„k
Z
is a
k+
„k.
C + pwp
=
-
krwp
lower bound on the objective function which will be obtained from any
completion of p
.
Suppose some value Z*
Then
solution found thus far.
longer be considered.
discarded.
Similarly,
"'
the value
is
if
Z*
<
Furthermore,
J,
if
p
n
k
,
all
p
k
n
for the best complete
is
bounded and need no
completions of p
may be
can be shown to be infeasible from alternative
interdependency considerations, then
may be
Z
Z
it
and all of
its
possible completions
discarded.
The Branch and Bound technique
is a
procedure for generating
partial solutions by successive augmentations of the starting partial
solution p
checked
to
(no decisions).
At each stage, the current partial solution
determine whether
discarded.along with
partial solution
is
its
it
bounded or infeasible.
is
If
so,
it
is
is
subspace of possible completions, and another
considered.
The process continues
until the entire
solution space has been explicitly or implicitly considered.
feasible solution found at this point
is
The best
optimal.
FIXED ORDER ALGORITHM
The algorithm described
because the order a
and fixed.
in
in this section is
termed "fixed order"
which decision nodes are processed
The essential features
is
predetermined
of the algorithm are presented in the
- 6 -
following order:
feasibility tests, determination of bounds, branching
and backtracking, and algorithm termination.
A
flow chart and sample
problem solution follow, and then some considerations for choice of
effective order a are discussed.
Feasibility Tests
The programmed version
of this algorithm is equipped to handle
pairwise interdependency constraints of the following types:
d..
13
V-.f1
representing the
minimum
total decision job cost
which must be added
to
the objective function.
Z
Z min (C..)+
ij
=
SC.
I
+ pwt,
d..
I]
F
^
13
rw"
-
F
3
This step tightens the cost portion of the lower bound for a partial solution
by incorporating the fact
that a
complete solution must include, at least,
the cost of the cheapest job alternative for each decision node not yet
considered.
Since the algorithm works with reduced networks, the cost
of nondecision jobs is assunned to be zero.
For real projects,
must be added
to the objective function, but
it
effect upon the
workings
this cost
cost and has no
is fixed
of the algorithm.
The "completion time" portion
of the
bound
is
determined by a
standard forward pass through the network defined by the partial solution.
This
is
accomplished
setting d.. =
in the
programmed version
of the algorithm
by
for all decision jobs not selected by the partial solution,
and then conducting the forward pass calculations over only those time
constraints for which the
positive.
d..
for both predecessor and successor are
The method does not require distinguishing between those
decision jobs which have not been selected because they have not yet
been considered for the current partial solution, and those rejected
favor of another alternative job.
The
assumed
all solutions.
to
have been selected by
There are many cases
bound for a partial solution p
decisions which must be
example,
in
Figure
2
it
made
in
in
artificial start and finish jobs
are
which the completion time portion of the
could be strengthened by taking into account
for decision nodes a(m),
can be seen that a choice of
- 8 -
S,
.
m > n.
For
implies a lower
bound on completion time of six days, even though no path exists through
the network until a decision is
does not recognize such cases;
made
for decision node 2.
The algorithm
artificial nondecision jobs
inserted in the network to represent these and
may be
more complicated
situations,
however.
4
Decision node
/\
Precedences
Figure
Decision job
(
Artificial job
^
)
,
2
Branching and Backtracking
An
some
"iteration" for this algorithm refers to the process of picking
partial solution p
for further elaboration, and then generating and
evaluating each of the possible augmentations
where
i
=
Qf(n
+
The rule used
1).
to
p
U
d..,
determine which
j
=
1,
.
.
.
k(i)
of all active
(feasible and unbounded) solutions to consider for the next interation is
the following:
Z from
is
choose the partial solution p
the set of all active solutions
which has the lowest value
most nearly complete.
This rule
used for both "branching" (i.e., proceeding down the solution tree)
and "backtracking" (i.e.
partial solution
is
,
proceeding back up the tree when the current
completed or discarded).
procedure amounts
to picking the
It
can be seen that this
most promising
- 9
of the
most recently
generated active partial solutions and shall be referred to as a
strategy.
The LIFO strategy was adopted primarily because
minimize computer storage requirements.
by the maintenance of a pushdown
y
list,
The strategy
LIFO
it
tends to
implemented
is
of solution labels k.
,
Algorithm Termination
The algorithm
will terminate
when
all possible solutions
have
been considered explicitly or implicitly.
Since there are a finite number
of solutions, termination is guaranteed.
The partitioning procedure
such that the entire space of potentially optinaal solutions
the set of active partial and complete solutions.
complete solutions which have the lowest Z value
number
of active solutions, the
is
When
the
Z*
is
=
is
spanned by
number
of
equal to the
algorithm terminates.
Flow Chart
The complete
fixed order algorithm operates as follows after
is specified:
Step
Step
I:
2:
Z*
=
00
y
=
{1}
p^
=
(0).
K
=
>(1);
current solution
If Z*'
>
I
=
Z*, go
Z^ < Z
Step
3:
=
If
If
Step
Z^
5 if
a(n +
1)
- 10 -
*
,
to
Step
is
.
6.
go to Step 3
n = N.
p
if
n < N;
a
.
step
Evaluate each of the augmentations p
4:
=
3
1,
k(i)
by testing each
a.
feasible?
b.
Z^' < Z*
U
d.
for:
?
Save the solutions which pass these tests, and
insert the
new labels
k' at the top of the list
order of nondecreaslng Z
in
k'
If
.
unbounded feasible solutions, go
otherwise go
Step
Z*
5:
and moving
Go
Step
to Step 6;
7(1) at the
end
other elements up one position.
to Step 7.
Delete
6:
all
there are no
Step 2.
to
revise 7 by putting
= Z;
7(1)
from 7 and move
all other
elements
up one position.
Step
Finished?
7:
If
not, go to Step 2.
Sample Problem
Suppose the decision node order 0=
the
sample problem of Figure 3.
(1)
Z*
=
00
y
=
{1}
\
Po
-
(0)
k =
(3)
i
(4)
pj
=
(dg
Pi
"
^^3 2^
7
=
{1,
3, 4,
Then the solution
current solution
(2)
1;
7
is
1,
2. 5 is
is
specified
as follows:
p
= 3
j)
2}
Wp
= 5
C^
= $15
"^F " ^
^^
"
Z*
=
00
11 -
^°
Z^
=
-$5
^^
'^
^^^
cost
time
DD
=
6
r
=
$20
p
=
$40
days
Alternative Interdependency d„
Figure
3.
.
= d
Sample Problem.
12
.
.
In the next iteration,
to
be infeasible.
'2
=
2
Pi
solutions
{d„
i
At the end of Step
:
d
„) ^"^
.
4
= 5
C^
{d3 2}
w^
= 6
c2=$0
{1.2}
Z*
=
^^3.1= ^4.1=
C
=
$45
Z
=
$2 5
is
=
=
^^5
shown
^2=
in
^2,2= ^5,2^ "^F
Figure
,
c.
zr
=
$40
^^
Z)
©
016,0.0)
(7, $5,
(5,$45.$25L
4.3]
(4,2
$35H(5,
(4,2^
I
I
$55,
$45
4.
(5.$15,-$5)
(5,
=
oc
(w
^4.1^
Z^
until the only active solution is
P5
The solution tree
$45, $25)
(1^
1,
I
(5,
$65. $45)
2,1)
(5,
5,1)
are found
4:
^^3,1' ^4,1>
The process continues
(^3 i'^4 3)
1(5, $45. $25)
B
(2.2)
$75. $55)
1(5,
$45, $25)
(QOptimal
Figure
13
4,
= infeasible
=
bounded
$45)
I
(8. $0,
(Cs)
$80)
Decision Node Order
Preliminary experimentation with the fixed order algorithm showed
problem was extremely sensitive
that solution time for a given
The major portion
of decision nodes a.
time seemed to be concentrated
of this variability in solution
was further observed
It
time was minimized by those decision node orderings
nodes
(i.e.
solution
,
was on
the critical path(s)
)
were processed
tree, and the tree
was consequently more
In order to obtain a
measure
With such
of the potential criticality of decision
the total slack for each job.
which would occur
if
For
the job
for the chosen jobs unaltered.
node order
For each decision
In the resulting network, calculate
node choose the cheapest alternative.
the decision
first.
effectively pruned.
nodes, the following simple heuristic was devised:
a job not chosen, the calculated slack is
were performed, but with
In
some cases,
a on
the start times
this implies negative slack.
the basis of increasing
This ordering will be referred to as "slack order.
2
which "critical"
bounds were generated near the top of the solution
w,.,
Choose
in
that solution
those nodes for which the chosen decision job in the optimal
orderings, strong
that
order
time to prove optimality once the
in the
optimal solution had been found.
to the
"
mm
,
,
slack.
2
J
This rule should perhaps be modified somewhat. Since the total slack
calculated in this fashion is not particularly meaningful for those
decision nodes not on the original critical path, it may be better to order
these nodes so that they are grouped technologically. This gets more
directly at the problem of ensuring that paths through the network are
defined by successive decision nodes. The groups of nodes can be
ordered on the basis of slack for the group. However, this is not a
simple rule to apply for complex networks and has not been tested.
- 14 -
The algorithm was programmed
in
Fortran IV for an IBM 7094
computer and run under the time-sharing system
The program was tested on variations
decisions-per-node
15
(3
of
MIT's project MAC.
of two fifteen-node, three-
possible solutions) problems.
types, hereafter referred to as
Type
1
and Type
2
The two problem
problems, differed
in
the extent to which interconnections between opposite portions of the
Type
network existed.
so that a
number
of
2
problems contain many such interconnections,
competing critical paths were likely to develop.
Typically, nine to eleven of the decision nodes in the problem
critical for
some
partial solution.
became
Variety was provided to these problems
by altering due dates, premiums, penalties, and times for precedence
constraints
(t
,^,).
Solution times are reported in Table
1,
and do not
include the three to five seconds required for input-output and initialization.
Results for the fixed order algorithm are shown for both slack
order and technological order.
tational efficiencies in
Technological order offers some compu-
determining^
k
but
is
essentially a
random order
with regard to potential criticality, and results have been included
primarily for the basis of comparison.
In all cases, slack order has
proven to be superior to technological order.
It
has been proposed that decision nodes involved in alternative
interdependency constraints should be placed at the top of the decision tree
so as to allow effective pruning on the basis of feasibility considerations.
This, however,
may
interfere with a pure slack order, and results with a
few test problems indicate that slack order should dominate.
15
Table
1.
Comparison
of Solution
Times.
«
i
\
'
other completions of p
1^
need not be evaluated.
The partitioning algorithm
incorporates this consideration as follows:
Partition the decision nodes of a problem into two sets:
Branch and Bound
number
of
set;
members
and Q, the cheapest alternative set.
k
B
to
is
Each time
k
obtained, test
k
'
fC
"^
Pv,
transfer those decision nodes in
A simple version
which
in
all
.
=
1
J
Z
k'
k
U Q,
to
Q which
determine
if
wk
wk
=
are critical into the set
it
Z
C.'.
More
.
be envisioned
cases
in
in
it
B
not,
and
remains there.
been programmed
= 0,
i
k
Then
Q,
m
= Q?(m),
simply the set
is
=
n+
of decisions
N
1
and
if
w^
=
r
w^,
r
sophisticated versions of the partitioning algorithm can
which the problem
of
determining Q,
is
solved for the
which alternative interdependency constraints do affect the
elements of Q.
which
If
.
i-J
=
with
decision nodes Involved in alternative interdependency
such that
k
B
unbounded solution
of the partitioning algorithm has
constraints are placed in B.
d.
a "complete"
Note that once a decision node enters B
continue.
Let b be the
Solve the decision network defined by
in B.
the fixed order algorithm.
p,
B, the
is
In
many cases
this
may
not be difficult.
For
the case in
possible to order decision nodes so that alternative inter-
dependency constraints affect only successive nodes, the problem can be
given a network interpretation and solved as a shortest-route problem. [l]
The
partitioning algorithm is equivalent to the fixed order algorithm
with the following amendment:
Step
2:
K
= 7
If
Z^ > Z*
if
n <
current solution
(1);
b;
,
go to Step 6.
Step 2A
-
17
if
n =
b;
t
is
If
p
.
Z^ < Z*
and Step
,
5 if
go to Step 3
n
=
N.
'
'
step 2A:
Determine Q^;
Step 2B:
If
wk
k
of
p^
Determine
nodes
wk
of
k
p,
,
andZ*^'
Q*^,
go to Step 5 with p^.
go to Step 2C.
If not,
Step 2C:
=
p^
=
p!^
in
Q
k'
critical path for pIX
which are critical
.
Place those
into B.
Go
to
Step 2.
Sample Problem
For
the
sample problem
of
Figure
3,
decision nodes 3 and 4 are
involved in alternative interdependency constraints, so
and b
As before,
= 2.
P2
=
Pi=
{dg
;
J
td3,2};
at the
^4 j}
a=
{3, 4, 1, 2, 5
end of two interations through Step
w^
=
5
C^ =$45
Z^
=
7:
$45
}
D /^F'^'^^
(6,$0.$0)
^7, $5, $45)1(8. $0, $30)
©
,(5,
$45, $25)
Figure
5.
Solution times for the partitioning algorithm are also shown in
Table
In all cases,
1.
order algorithm.
the size of the
to 11/15).
to 50
the algorithm
The gains are
Branch and Bound
For Type
2
slight for
set,
for
N
if
grows
1
problems because
to a large fraction of
N
b,
(9/15
Although the major improvements
problems which are already easily solved, the
partitioning algorithm
very large
Type
the fixed
problems, improvements are of the order of 40
percent, for here b = 3 to 8.
shown occur
performs better than
may
offer the potential for solving
b remains small.
19
problems with
i
:
Solution time for fixed
N
and
k(i) is
seen
be highly variable.
to
It
has been found that most of this variability can be explained by the final
value of b, which
critical for
some
is
the
measure
of the
number
The relation /nt
solution.
computer solution time, was
fitted to the
of
= a,.
nodes that become
+ a,b, where
problems
of
Table
1
t
is
with the
following results.
=
Int
t
statistic
F(l. 8)
=
0.72 + 0.47b
(14.8)
(3.02)
R^
218.2
n
F(l, 8)q qj = 11.26
=
0.96
= 10
Although there was a significant relationship between these variables,
is
not possible to predict computation time since b only
it
becomes known
during computation.
DECOM POSITION
A
large project
subprojects.
into
If
so,
it
may simply be
may be
a collection of relatively independent
possible to decompose the large networks
smaller subnetworks, "solve" the subnetworks, and then
subnetwork solutions together.
in solution time,
it
may be
less time than to solve one large one.
number
The idea
decomposition principle for linear programming
is
3
of
small problems
analogous to the
and
[4]
and Fulkerson
See, for example, Ch.22 and Ch.23 in Dantzig [3]
-
20
related to the
is
decomposition technique described by Parikh and Jewell
time-cost tradeoff models of Kelly
the
growth effect
In view of the exponential
faster to solve a
fit
in [7]
[5]
.
for the
in
A subproject
is a
collection of decision nodes in a reduced network
The
which, taken together, "look like" a project.
single starting point
collection
There can be no
and a single finish.
must have
a
inter dependency
or precedence constraint between any node within the subproject and a node
which
is
outside the subproject.
successor of any number
The starting
point
may, however, be the
of jobs outside the subproject,
and the finish
may
similarly be a predecessor of any number of jobs.
The enclosed portions
subprojects.
(S', S") of
The network
is
of the
network
redrawn as
A
in 6B
of Figure 6 qualify as
with artificial start jobs
zero cost and time inserted, as well as artificial finish points
(F', F"). In Figure 6 the following is true:
(1)
Every immediate successor
variable
(2)
contained by the subproject boundary.
Every immediate predecessor
variable
(3)
is
of a subproject start
is
of a subproject finish
contained by the subproject boundary.
For each subproject variable which
is
neither subproject
start nor subproject finish, all immediate predecessors
and successors are contained by the boundary.
An algorithm related to the network reduction routine of
developed to generate
all legitimate
subnetworks.
21 -
[1]
has been
Figure
6.
Decomposition of Project Networks
22
-
Combining Subproject Solutions
Due
project network,
in
between subprojects and the rest of the
to the interaction
it is
generally not possible to solve for a single solution
each subproject and then simply to use these solutions
overall project optimum.
objective function.
A
to obtain an
subproject does not have, in general,
Rather, the objective function
is
its
own
concerned with the
entire project completion date; and the effect of a subproject solution
upon that date
the network.
is
not
known
until decisions
Consequently,
some
are made for
other method of fitting subproject
solutions together in order to obtain the overall project
The approach
is
all other parts of
optimum
based upon the observation that the set
is
needed.
of all
feasible solutions to a subproject has all of the characteristics of a
decision node.
Associated with each solution
is a
cost and a performance
time, and each solution has a predecessor and a successor.
only one solution
may be chosen from
subproject solutions
is
the subproject -- i.e.
In addition,
,
the set of
subject to a mutually exclusive interdependency
constraint.
Since each solution to a subproject has the
successor (e.g., S' and F'),
it is
same predecessor and
clear that the project optimal solution
will never contain a subproject solution which is both longer and
more
expensive than some other feasible solution to the same subproject.
former subproject solution
is
"dominated" by the
-23-
latter.
In the
case
The
where
expensive than
a subproject solution is less
the shorter solution is dominated
C^
where C
11
-
C^ + (w^
(max(p,r)) >
C2
and w^, refer to the longer subproject solution,
the shorter, and p and r are the overall project penalty and
In
necessary
If all
solution,
if
w^)
-
some shorter
and
2
w—
premium.
order to obtain the optimal solution to the overall project,
to
to
it
is
consider only all undominated solutions to each subproject.
undominated solutions for a subproject have been obtained, the entire
subproject can be replaced by a single decision node containing those
In the resulting
solutions as its job alternatives.
master problem, there
The master problem
will be fewer decision nodes and fewer constraints.
may
In
then be solved with any of the Branch and Bound routines discussed
previous sections.
Hopefully, the reduction in solution time for the
master problem will be far greater than the time required
undominated solutions
feasibility of this
to the subprojects.
approach are:
\indominated solutions, and
(2)
possible subproject solutions
(1)
The crucial issues as
to the
the degree to which the space of all
is
reduced by dominance considerations.
modified partitioning algorithm.
all
xindominated solutions
Instead of a single
exists a Z*(t) for every subproject completion time
Z*
(t).
,
is
a
there now
Initially,
Z*(t) =
t.
Obtain a first complete solution with cost
(f).
generate
the time required to generate all
The algorithm for determining
for all
to
Then,
-24-
C
and completion time
-»
Z*(t)
When
C
=
Z*(t)
C
=
+[max
for all
(p.r)](t'
t
>
t'
forallt<t'
- t)
same
the next complete subproject solution is obtained, the
tion is
made
for all
Z*(t)
t.
is
then equal to
minimum
calcula-
of its current
value and the new calculated value.
This algorithm was tested on the
which solution times are given
number
is to
of feasible
in
Table
same sample
was found
It
1.
of
problems for
that only a
small
undominated solutions were obtained (25 or less).
This
be expected -- there can be no more undominated solutions than the
number
of days separating the
More surprising
is that
undominated solutions
time required
the total amount of time required to generate all
is in all
to find the
determination of
all
cheapest feasible solution and the shortest.
cases less than three times the amount of
undominated solutions will generally be
order of magnitude of difficulty as that
solution
may be warranted. The
of
it
with very
number
of
complete solutions
but these
same
solutions
additional effort.
little
the power of the decomposition approach, two
networks were chosen (shown schematically
problem for Network
C
same
and thus found by the undominated solution algorithm
To demonstrate
A, B, and
at the
partitioning algorithm, in searching for
eventually determines to be bounded;
may be undominated
that the
determining the optimal
the optimal solution, is likely to generate a
which
The conclusion
optimal solution(s).
I
A
subprojects
B and
Figure
7).
includes the undominated solutions
The master problem
the network
in
of
Network
(not a subproject) and the
C.
-25-
II
The master
from subprojects
includes the portion of
undominated solutions from
A
13
Nodes
Specialized techniques for solving the master problem may be
incorporated
example
it
in a fully
may
automated decomposition algorithm.
turn out that a subproject
cheapest alternative set Q,
in
may always remain
which case
it
is
to a subproject are identical, the
subproject
may be used
in
Also, since the
undominated solutions
for all
minimum time solution from each
to strengthen the
There are cases
in the
unnecessary to gener-
ate all undominated solutions for that subproject.
predecessor-successor relationships
For
w
which portions
bound
master.
in the
of a project
network do not
satisfy the strict requirements for designation as a subproject, but in
which overall project optimum will be found by treating these portions as
Such will be the case when the precedence-successor
subprojects.
relationships which violate the subproject requirement are not on the
critical path in the optimal solution.
Or they may be on
the critical path,
but the undominated solutions generated in the subproject
Similarly, an
nated regardless of the existence of the critical links.
alternative interdependency constraint
no
effect on the optimal solution, or
generated by ignoring
successor link
sition
may
may proceed
its
existence.
Also, since
in
cross the boundary
but have
upon the imdominated solutions
The case
of the noncritical predecessor-
often be easily seen ahead of time, so that the
with an optimal solution guaranteed.
the size of entire projects
resorted to
may
may be undomi-
may be such
decompo-
In other cases
that "illegal" decomposition
may be
an effort to find a good, and hopefully optimal, solution.
it is
true that all alternatives of a decision node need not
have identical predecessor and successor relations,
that algorithms could
it
is
conceivable
be developed for reducing a segment of a network
-27-
'
to a decision
node even though the segment does not meet the conditions
of an "independent subproject."
CONCLUSION
Experimentation with the algorithms discussed
shows
paper
problem- solving time was strongly affected by the order
that
which the decision nodes were examined.
by examining decision nodes
Solution time
Its
efficiency results
partial solution to a
problem
in
was miniraized
order of increasing "criticalness.
in
The partitioning algorithm gave the lowest times
tested.
in this
from
to see
the fact that
if
it
problem
for each
unbounded
tests each
the cheapest alternative for each
decision node not included in the partial solution can be included without
extending the project length.
of the partial solution
If
this is the case, then all other
need not be evaluated.
The
completions
feasibility of the
decomposition of large project networks was also examined.
Independent
subnetworks were defined within a large network and these were solved
for all undominated solutions by an extension of the
The
set of
Partitioning Algorithm.
undominated solutions can then be regarded as a simple decision
node within the large network and the resulting problem
partitioning algorithm described above.
solved by the
The improvement
time achieved by this decomposition was substantial.
-28-
is
in solution
REFERENCES
[l]
"Decision Network Planning Models",
Crowston, W. G.,
Management Science Research Report No.lSB, Graduate School
of Industrial Administration,
[2]
Crowston. W. B.
Method
,
Carnegie-Mellon U.
and G. L. Thompson,
,
1968.
"Decision
A
CPM:
Simultaneous Planning, Scheduling, and Control of
of
Projects", Operations Research
May-
Vol.15, No. 3,
,
June
1967.
[3]
Dantzig, G. E.,
Linear Programming and Extensions
,
Princeton
University Press, Princeton, N.J., 1963, Chapters 22, 23.
[4]
"A Network Flow Computation for Project
Fulkerson, D. R.,
Management Science
Activity Scheduling",
[5]
Vol.
,
7,
1961.
"Critical Path Planning and Scheduling:
Kelley, J. E., Jr.,
Mathematical Basis",
Operations Research,
Vol.7, No.
3,
1961.
[6]
A
[7]
Operations Research, Vol.
Survey",
Parikh, S.
C,
Networks",
[8]
"Branch and Bound Methods:
Lawler, E. L., and D. E. Wood,
and
W.
,
Pierce, J. F., and D. J. Hatfield,
Combinatorial Programming",
Design
of
of the
4,
1966.
January 1965.
"Production Sequencing by
Operations Research and the
Management Information Systems
Technical Association
No.
"Decomposition of Project
S. Jewell,
Management Science
14,
(J.
F. Pierce, Editor),
Pulp and Paper Industry,
1967, p. 177.
-29-
New York,
REFERENCES
[9]
Wagner, M. H.,
(Cont.)
"Solution of Decision
S.M. Thesis, Massachusetts
CPM
Networks".
Institute of Technology,
-30-
June 1968.
f
...^,:^MM^
,
MMSEfvlENTf
Date Due
t'P^
\r"^
2 19810
JUL 12
1^85
:'i\
APR
3
1^90
2
Lib-26-67
-lO"^^
lllllliinllinliHiMi
3
TD60 D03 a7M b55
MIT LIBRARIES
I
3
P>i|
i|i|ip
IIP
!|iii||iii
|i'ii||iiiii
TDflD QD 3 fl7M
m,s
^^-Iff^
%
mm
"-*7i
Download