LIBRARY OF THE MASSACHUSETTS INSTITUTE OF TECHNOLOGY C7. ALFRED P. WORKING PAPER SLOAN SCHOOL OF MANAGEMENT BRANCH-AND-BOUND STRATEGIES FOR DYNAMIC PROGRAMMING Thomas L. Morin* and Roy E. Marsten** WP 750-74ooREVISED May 1975 MASSACHUSETTS INSTITUTE OF TECHNOLOGY 50 MEMORIAL DRIVE CAMBRIDGE, MASSACHUSETTS 02139 BRANCH-AND-BOUND STRATEGIES FOR DYNAMIC PROGRAMMING Thomas L. Morin* and Roy E. Mar St en** WP 750-74floREVISED May 1975 *Northwestern University, Evanston, Illinois **Massachusetts Institute of Technology Alfred P. Sloan School of Management, Cambridge, Massachusetts ABSTRACT This paper shows how branch -and -bound methods can be used to reduce storage and, possibly, computational requirements in discrete dynamic programs. Relaxations and fathoming cjriteria are used to identify and to eliminate states whose corresponding subpolicies could not lead to optimal policies. The general dynamic programming/branch- and-bound approach is applied to the traveling -salesman problem and the nonlinear knapsack problem. The reported computational experience de- monstrates the dramatic savings in both computer storage and computational requirements which were effected utilizing the hybrid approach. Consider the following functional equation of dynamic programming for additive costs: min {TT(y',d) + f(y) = f (y ') lT(y ' ,d) = y] y € , (P. - y.) (1) d € D with the boundary condition f(yo) = ko (2) in which, Q is the finite nonempty state space; y- € d € D is a T: n X D fi is the initial state; decision, where D is the finite nonempty set of decisions; — n is the transition mapping, where T(y',d) is the state that is reached when decision d is applied at state y ; tt; Q x D -• IR is the cost function, where TT(y',d) is the incremental cost that is incurred when de- cision d is applied at state y'; k_ 6 IR is the initial cost incurred in the initial state y_; and in (2) we make the convenient but unnecessary assump- tion that return to the initial state is not possible. The functional equa- tion (1) is simply a mathematical transliteration of Bellman's principle of optlmality r3i ^ . If we let n„ ci f] be the set of final states, then the cost of an optimal policy (sequence of decisions) is f* = min[f(y')|y' € ]. Simply stated, an optimal policy is a sequence of decisions which, when applied at the initial state, reaches the set of final states at the minimum total cost. The recursive solution. of the functional equation to determine the cost of an optimal policy and the subsequent policy reconstruction process to determine the set of optimal policies is straightforward. evaluation of f(y) by (1) necessitates access to f(y ) However, the in high-speed (magnetic core, thin film) computer storage for all states [y |T(y',d) = y for some d € d] and the policy reconstruction process necessitates access to the de- cisions at state y' which result in f(y) for all states in the state space Q in low-speed (tape, disk) computer storage. It is common knowledge that in real problems excessive high-speed storage and computational requirements can present serious implementation problems, so much so that many problems cannot be solved even on the largest present day computers. -2- This paper presents a completely general approach to reducing both the high-speed and the low-speed computer storage requirements and, possibly, the computational requirements of dynamic programming algorithms. In order to accomplish this we invoke some of the elementary, but powerful, techniques of branch -and -bound. In particular we demonstrate that in the evaluation of f(y) the costly procedure of storing f(y {y'|T(y',d) = y for some d € d] ) in high-speed memory for all states may not always be necessary. If it can be demonstrated that there does not exist a sequence of decisions which when applied to state y' will lead to an optimal policy, then it is not necessary to store f(y') in high-speed memory (nor is it necessary to store the corresponding decision which led to state y' in low-speed memory). Such states y' can be identified by the use of relaxations and fathoming criteria when are commonly employed in branch -and -bound and other enumera- >-»''' . -- see [11,12,26,29,42] tion algorithms ,_ , for example. -, -^ t ^ has Our approacti , been Inspired by the ingenious bounding schemes employed within dynamic programming algorithms in authors in ,,, algorithm [32] , [28] and , by j by observations made by the and by the computational success of the resulting hybrid [7,27,35,36] , -- see also The paper is organized in the following manner. The use of fathoming criteria and relaxations within dynamic programming al^i>rithms is developed in is § 1 for additive cost functions. The versatility of manifested via application to a number of classes of i he resuli:: in ]iroblc'ms S 2. A numerical example of the traveling-salesman problem is presented and solved using the results of § 1. Computational experience on knapsack problems de- monstrates the dramatic savings in both computer storage requirements and computation time which were effected by applying the results of S 1. In 3 3 we show that our results extend immediately to general separable cost functions and discuss the alternative viewpoint of using dynamic branch -and -bound framcwi^rk. programming within a , -3- 1. Let Q wish to solve. FATHOMING CRITERIA AND RELAXATIONS denote the original discrete optimization problem which we We will assume that the dynamic programs? whose functional Too 0/ n the discrete optimization problem 9, equation is (1) represents so that we can employ (1) and (2) to solve & Let . ^ be an upper bound on the objective function value of any optimal solution to the original discrete optimization problem 9, it follows that 1A Then, since .^ is also an upper bound on f*, is a representation of 9 i.e., ^ f*. "U, (3) Prior to discussing lower bounds and our results, it will be useful to define the policy space and some of its subsets and to define the trans tion mapping and cost function on the policy space. i' Let A denote the set of all policies and subpolicies (sequences of decisions) obtained by con- catenating individual decisions in i.e. 6 = (5(1), 6(2), Let D. ..., 6(n)) where 6 6 € A denote a subpolicy or policy, (i) € D, i = Extend the 1,2,..., n. domains of both the transition mapping and the cost function from n X A inductively and for any 6 = 6 6. x D to il define T(y',6)^(T(y',6^), i^), and ii(y',0 = n(y',,N^) + n(T(y',Cj),,^.,>For any state if y [6 @i € ii„) y' € C let A(y') denote the set of feasible subpolicies which when applied to y_ result in state y , i.e., A (y ) (I'nl - lT(y^,6)= y'}, let A"(y') ^ A(y') denote the set of optimal subpolicies (policies if y' € for state y'. i.e., A*(y') = fip) {6 ^ A(y')|f(y') = k„ +'rT(y ,6)}, and let x(y') denote the completion set of feasible sub- policies which when applied at state y' result in a final state, i.e., X (y')={ 6€A lT(y',6) ^ ^'t-^ • The set of feasible policies for U /, p A(y') and the set of optimal policies for \ + TT(yy,8)]. J^ is A"-''- -^ = [6 is A (Q f A(w ) = )ll"* = k m's For each state y' € n we define a lower bound mapping ^: Q -• IR with the property that ay') ^ n(y',6) V6 € x(y'). (4) Then it is easily established that PROPOS mON 1 . 1 . If f(y') + li{y')>'U, then ^ A* for 6 '6 an^ 6 ' € A*(y') and all. (5) 6 € x(y')« Substitute (3) and (4) into (5). Proof . Simply stated, if the sum of the minimum cost of reaching state y' from the initial state plus a lower bound on the cost of reaching any final state from state y' exceeds an upper bound on optimal policy, then no feasible completion of policy for state (5) y' could be an optimal policy. is said to be fathomed ' any cost the optimal of an sub- Any state y' € n which satisfies The computer storage requirements are . reduced since if y' has been fathomed then f(y') does not have to be placed in high-speed memory and the corresponding set of last decisions for A*(y') does not have to be placed in low-speed memory. 6 6 Furthermore, the computational requirements are also reduced since in the evaluation of f(y) with the functional equation (1) it is not necessary to consider f(y') for any fathomed state in {y'|T(y',d) = y for some d f d} An obvious upper bound 1( is the . objective function value of any feasible solution to the original discrete optimization problem & or the value \{ = "U (k-j is + TT(yj.,6 )) for any feasible policy 6 € A(n„). If the upper bound determined in this manner and we limit ourselves to identifying an optimal policy (instead of the entire set of optimal policies), then the following slightly stronger fathoming criterion can be employed. PROPOSITION 1.2. If_ f(y') + £(y') ^l(, then state y' can be fathomed (6) . Notice that the use of (6) allows for the possibility of verifying the optimality of the feasible policy bent - 6 (sometimes referred to as the incvnn - prior to the completion of the recursion, as will be demonstrated ) in the traveling-salesman example solved in the following section. This is a consequence of the following corollary to Proposition 1.2. COROLLARY l.L Suppose state y' € successive states be fathomed Thus, if li y" 6 fi fi satisfies (6) and 6' € A*(y'). Then such that A(y") = [6 '6 " |T(y' ,6 ") = y"} , all can also . = [Kq +TT(yQ,6)} for some feasible policy 6 and we have the situation that there does not exist any state y = T(y',d) for which y' ^ Q has not been fathomed, then 6 F is an optimal policy and we can stop the re- cursion at this point. The lower bounds £(yO can be obtained by solving a relaxed Ll^jlbJ version of the residual problem whose initial state is y'. function y € Q is rr is If the cost nonnegative then an immediate lower bound for any state corresponding to a total relaxation. However, much better lower bounds can usually be obtained by judicious choice of the relaxation as will be demonstrated in the following section. Finally, we note that our approach includes conventional dynamic programming as a special case in which !( is some number and a total relaxation is employed. sufficiently large real -6- EXAMPLES 2. section our results are illustrated and explicated In this vis-i-vis application to two specific problems. The traveling -salesman application is primarily of an illustrative nature, whereas the application to the nonlinear knapsack problem clearly demonstrates the computational power of our results. The Traveling - Salesman Problem Let ^ V = [1,2,..., n} weight c .. (V,E) be the directed graph whose vertex set is = Each arc . € E is assigned a nonnegative real (i,j) A tour (or Hamiltonian cycle) through each vertex exactly once. where {i^, ..., i^) is The tour a permutation € t ^ = t is a cycle which passes (1, , ,i„) . (i^, 1) , €^'. ..., i^, ^^, 1) of the integers (2,..., N), can be given the ordered pair representation t' = (1 i», f (l,i ) , (i„ ,i ) , . . . , The traveling-salesman problem is to find a tour of minimum weight, i.e., find t € ^ so as to Z min c t'€J^'(i,j) € t' ^J . ^^^ If we think of the vertices as cities and the arcs as the distances be- tween cities, the problem (7) is to start at some home city, visit all the N-1 other cities exactly once and then return home in the minimum total distance. Consider the following dynamic programming algorithm '- -' for problem Let f(S,j) denote the weight of a minimum weight path (subgraph) (7). which starts at (contains) vertex S c {l,2,3,..., n} S t , 1, visits (contains) all vertices in and terminates at vertex , j € S. Then, for all we have the following functional equations of a dynamic program- ming algorithm for l he traveling-salesman problem f(S,j) = min + f(S-j,i)3, {c (8) ^J i€(S-j) with the boundary condition f(0,-) =0. (9) Notice that (8) and (9) are equivalent to (1) and (2) with Yq = (0,-). y = (S,j) €0 = {[(S,j)lj € S s [2,3,..., n}] U ({1,2,..., n},1)3, y' =((S -j), i), d = j, T(y',d) = T((S-j,i),j) = (S,j), = [((S-j,i),j)| i €(S-j)}, TT(y',d) = TT((S-j,i), j) = c.^ { (y' ,d) [iCy ' ,d) = y} and k^ = 0. The major roadblocks to solving even moderate size (N > 20) traveling -salesman problems by the dynamic programming algorithm, (8) and (9), are the excessive high-speed computer storage and computational requirements. The storage bottleneck occurs approximately halfway through the recursion when n+1 = jsj = [N/2], of f(S,j) by (8) requires high-speed access to n( \n ) since the evaluation values of f(S-j,i). Furthermore, even though the search over permutations in (7) has essen- tially been reduced to a recursive search over combinations in (8) and (9), the computational effort is still on the order of N2 number being E N-1 (the exact + (N-1) = (N-l)(l + (N-2)(l + (N-2)2^'^). ^"J n(n-l)f^'-^^ \xi n=z / For N = 20, this amounts to a high-speed storage requirement of 92,378 locations and a computational requirement which involves performing over 1 million functional equation evaluations,, requirements by fathoming certain states An upper bound on tour t i) €^ . (7) is However, we can reduce these . easily obtained as the weight of any For example, we could take the minimum of the weights of the tour (1,2,..., N-1, N,l) and ii) the N nearest -neighbor tours constructed by starting from each of the N cites. Alternatively, we : -8- could take the weight of a tour as our upper bound t generated by some efficient heuristic %(. The lower bound £(S,j) on the weight of a path includes all vertices k ^ ment problem is S is also easily obtained. ~* j 1 which Since the assign- a relaxation of (7) we can set -6(S,j) equal to the value of the minimum weight assignment to an assignment problem whose weight (cost) matrix C is obtained from C by deleting all rows (S-j)} € {l U i A relaxation of the traveling -salesman problem which and columns k € S. can be solved by a "greedy" algorithm is the minimum weight - 1 tree problem which is a minimum (weight) spanning tree on the vertex set [2,..., NJ with the two edges of lowest weight adjoined at vertex 1. Other relaxations have been discussed in [5,7,19,20,42]. Suppose that we have calculated the bounds Zi and £(S,j). Then Proposition 1.2 can be stated for the traveling-salesman problem as follows PROPOSITION 2.1. T-S Fathoming Criterion If ; f(S,j) + X(S,j) s then any tour t f. ^ -^ (10) which contains a path between vertex all vertices in S-j cannot have a lower weight than tour • weight 1( ^ = c . Hence , state (S As a consequence of Corollary COROLLARY 2.1. and j € S are I^ for some jsj = n < fathomed by (10), then N t_ , . 1 aU is_ and vertex t C can be fathomed j ) 1 1^ •^ that J_ which has . we also liave states (S, j) an op t ima 1 tour foi^ which |sl = n . Corollary 2.1 allows for the possibility of verifying the optimality of an initial tour £ prior to the completion of the recursion. connect The use of Proposition 2.1 and Corollary 2.1 is demonstrated on the following simple numerical example. Numerical Example : Wagner [42, p. 472] Consider the directed graph whose weight matrix C is L C = i' on the vertex set V = [l,2,..., 5} -10- . We next solve this example problem with the hybrid DP/branch-andbound algorithm, i.e., with (8) and (9) incorporating the fathoming cri- terion (10). The upper bound V. the minimum of the weight (65) is 62: of the tour (1,2,3,4,5,1) and the weight t = (1,5,2,3,4,1). (62) of a nearest -neighbor tour The lower bounds jC(S,j) will be calculated by solving the assignment problem relaxation. For Isj = (S,1 we have the following calculations: 1, f(S. ) US,\) il .1) ({23,2) 10 1 55 ({33,3) 25 1 42 ({4) ,4) 25 1 40 ({5}, 5) 10 1 50 Notice that we. can fathom states {({23,2), ({33,3), ({43,4)3 immediately by (10), since we have f(S,j) + JL(S,i) ^U. Therefore, the maximum high-speed storage for Isj = 1 is 1 location as opposed to 4 locations in the conventional DP approach -only information on state ({5},5) is relevant to the calculation of f(S,j) for Isj = 2. Furthermore, by Corollary ({2,43,4), 1 . 1 we can fathom states [(I 2,3], 2), ({2, 3], 3), ([2, 4], 2), ({3,53,5), ({4, 5], 5)3 even before evaluating either ([2, 5], 5), ([3, 4], 3), (l3,4},4), f(S,j) or ^(S,j) since they clearly could not lead to tours which have lower weights than t. Therefore, for js) = 2 only 3 of the 12 possible states remain. The calculations for these states arc presented below: -11- (s,i) -12- TABLE II. Summary of Reduction in Both Storage and Computational Requirements Effected by Employing Fathoming Criteria in the DP Solution of the Traveling -Salesman Example Problem. Conventional DP Solution M ol States No. of f(S, for which wl is evaluated 1 2 3 4 5 E = 33 48 17 -13- This traveling -salesman example is primarily of an illustrative nature and hybrid the approach may not competititve with other relatively efficient algorithms be 20"! r 1 9 i-j-^>^>-'j j-^,j. (.j^^ However, we are currently experimenting with traveling -salesman problem. a FORTRAN IV code of the hybrid algorithm (written by Richard Kin;; of Northwestern) and have solved the symmetric 10-city problem of in -^ 0.696 CPU seconds on a CDC 6400 with the code, fathoming 1733 of tlie 2305 possible states in the process. The Nonlinear Knapsack Problem [32] The nonlinear knapsack problem (NKP) can be stated as follows: find X € N so as to IR, N maximize Z)r.(x.) j=l subject to J (II) J N S j i=l,2,...,M g..(x.)^b. = l ^-^ J ^ X. € S where (Vi) S. = [0,1,..., K.} and r.: J r(0) = 0, (Vij) J g_: S - ]R_^ S with . -• J J g. The (NKP) includes both the classical . (0) j = 1,2,..., N K, is nondecr easing with + = 0, and b = (h^,b^,..., as spec otlic^r variants [12 J oT r problem and the "optimal distribution of effort problem" as various discrete nonlinear resource allocation problems theoretic problems * ' -', as special cases. > 0. (one -dimensional) knapsack pi^blem and the multidimensional 0/1 knapsack problem The (NKP) also includes a number of b^^) / i I cases. kn.ip-Mck Llir o c i o 1 as well ' ' g/aph- and nonlinear integer programming problems -14- Consider the following (imbedded state space) dynamic programming algorithm, M&MDP 1^32]^ f^^ the solution of (11). Let f(n,p) denote the maximum objective function value of an undominated feasible solution to (11) in which at most all of the first n variables (x^,x_,..., x ) are positive and whose resource consumption vector does not exceed P = (^^,&2'"'' i-e., Pj^). ^S (Vi) p. the feasible solution x = (Xi,x„,..., x z i feasible solution x = (x, ,x„ x 12 S . , S r.(x.) and J=l J J . , J=l g , . ij (x . ^S ) n . J J " g^.(x ^ n is said to be dominat ed by the ) if we have both 2j ) r , . j=l . (x J . ) ^ J g..(x.) with strict inequality M = ,l *ij J- J holding in at least one of the (M+1) inequalities. F For n = 1,2,..., N, ). For 1 n s; N, s; let be the (domain) set of resource consumption vectors, 3, of all un- dominated feasible solutions (x,,x„,..., x to the following subproblem ) n max r.(x.) Z) subject to ^ (12) n 2 g. .(x ) ^ b x.€S ^ n ^ N, let V Also, for vectors g (k) = (k) (g (k) , . . . (k)), of all undominated g^ , r values of X F n = k € S © nnn-1 S (V F n . (V Therefore, for candidates for F n from F that for © F ,) nn-1 by forming all sums of one element of V n feasible T^l We can demonstrate with F. = 0, where U ,) j=],2,...,n (domain) set of resource consumption be the g„ , = 1,2,..., M i 1 •-2'- n N, -- denotes the set obtained with one element of r ,. n-1 ^ n ^ N we can recursively generate all feasible 1 , n-1 and V n with the following functional equation of M&MDP: f(n,p) = [r^(k) + f(n-l,3 - g^(k) ) Ig^^(k) € V^ , (3 - g^(k)) t F^_j , ^-^b] (13) -15- with the bovindary condition f(0,0) = 0. (14) . If the f(n,g) corresponding to dominated solutions are eliminated at the end of (or during) each stage n, then (13) and (14) will yield the set of objective function values [f(N,P)| complete f ami ly € F g of undominated feasible solutions to the (NKP) that the functional equations, (13) and of the } Notice . (14) together with the dominance elimination, are equivalent to (1) and (2) with y^ = (0,0), y = (n.p) € ^ = {(n,3)l 3 € F^, n = 0,1,..., n}, y' = (n-1, T((n-1, e-g^(k)),k) g«(^> ^ V„ n n ' = (n,g) € n, {(y'.d)l T(y',d) = y] (0-g„(k)) € F^ . n n-i M6M)P is p-g^(k)), d = k. T(y',d) = , = { (n-l,3-g^(k)) ^ b3, n(y',d) = r^(k), and k n 1 = 0. u basically a one -dimensional recursive search (with dominance elimination) over the sequence of sets F ,F ,..., F which are all imbedded in the M-dimensional space B = [3|(Vi) g^ € [0,b^]}. a result of this "imbedded state space" approach [3ll , M&MDP As is not overcome by the "curse of dimensionality" which inhibits the utility of conventional dynamic programming algorithms on higher dimensional problems. However, both the high-speed storage requirements and the computational requirements are directly related' to the length undominated feasible solutions at stage n. storage requirement is JF j of the list F of Specifically, the high-speed on the order of (2M + 6)n where n = max (jF |} = maximum list length and, although a very efficient dominance elimination scheme (which eliminates sorting through the use of lists) is employed in M6WDP, (M+1) threaded the computational time tends to increase exponentially with n -- in fact, problems in which n s 10,000 might conFortunately, we can employ the fathoming sume hours of computer time. and relaxation results of § 1 (with minima replaced by maxima, upper -16- bounds replaced by lower bounds, and vice versa) to great advantage in reducing the list lengths. Let be a lower bound on the value of an optimal solution ai For any (n,3) € X € X* to the (NKP). optimal solution (12) 6 = x' = ' (xj , x^ , . f(n,p) is the value of an i1, . , . x^ ) € A* (n,3) to subproblem Consider the following (residual) subproblem for any for b = p. (n,3) € ^: Find (x^^,. x^^2"-" '^^ ^ m^^-^soas to N max E j=n+l r (X ^ (15) ) ^ subject to J, J=n+1 ^^ i = 1,2,..., j = n+1, M J x € S n+2,..., N Let X(.n,p) denote the set of all feasible solutions to Let u(n,3) be an upper bound on the value of an optimal subproblem (15). Then, Proposition 1.1 can be solution to the residual subproblem (15). stated for the (NKP) as follows: PROPOSITION 2.2. then Any ^ 3 (NKP) Fathoming Criterion X t F < %(n,fci) : If f(n,p) + l^(n,e) < ^ such that x X*. 'x for which (l6) liolds C for anx (n,i3) d'^l, we have (for the corresponding (n,0) € U) (16) •17- can be eliminated from F F " F , list ,..., F„. • n+1 N ^, " thereby reducing the lengths of the lists , k Since 6 € F n may give rise to (K. 11 j^^^j + 1) members in J (n+l^TcSN) the effect of fathoming can be significant. F, The choice of bounds and relaxations is dependent on the form of both the return functions and the constraints and is discussed in detail in [281 . The objective function value of any feasible solution to the (NKP) provides a lower bound One easily computed upper bound u(n,p) a£. N 2 for any state (n,p) € Q is min [p. (K.); another is r j=n+l J J (b -g )] l^i^M where p = max ( max {r (k)/g l^k^K n+lsij^N -^ (k)3) (17) -^ We note that for linear problems, as a result of our solution tree structure, linear programming relaxations can be used to particular advantage. That is, in our procedure there is no backtracking and the same LP relaxation of (15) applies to all 3 € F value. For n with only the (b-g) vector changing fixed n the dual objective function value of any dual feasible solution of this relaxation is an upper bound for all 3 € F , allowing dual solutions to be shared. The hybrid (M&MDP witli fathoming) algorithm was coded in FORTRAN IV and applied to several of the "hard" linear problems which were solved with M6«MDP [321 -'. The computationa] experience wiLli botli hybrid algorithm and the straight M6.MDP arc presented in Tabic Hi. the The times presented are the execution (CPU) times in seconds of the codes on M.I.T. 's IBM 370-165. -18- TABLE III. Computational Comparison of the Hybrid Algorithm vs. M&MDP Problem No. Problem Size N M 4 15 10 5 20 10 6 28 10 7 39 5 8 50 5 12 34 5 13 50 5 K M&MDP Hybrid Algorithm -19- 3. EXTENSIONS AND DISCUSSION Our results extend immediately to dynamic programs with separable costs simply by replacing addition + with the composition operator o fS 29 34l ' ' whenever it occurs. The composition operator o represents any cummutative isotonic binary operator, some common examples of which are addition (+) operators *- -' V and A, where for a A b = min {a,b}. , multiplication (x), and the infix a^b€ aVb= IR, max [a,b} and Our results can also be extended to dynamic pro- grams with general cost functions as in KARP and HELD ^ and IBARAKi'- "' where discrete dynamic programs are viewed as finite automata a certain cost structure superimposed upon them. ' ' "' with That treatment allows for the analysis of the nontrivial representation problem '- -' [33] a somewhat different development which can be found in . and requires In both the separable and the general cost function extensions we assume that the cost functions are monotone ^ ' ' ' . This is sufficient to insure that the resulting dynamic programming algorithm solves the dynamic program.^. Furthermore, in the case of multiplicative returns ("o" = "x") we also require that the cost functions, be normegative. The principle ideas of this paper may be viewed as dynamic programming plus bounds (as we have done herein) or, alternatively, as branch -and -bound plus dominance. latter case we could say that In the node A in a branch -and -bound tree dominates node B if it can be shown that no feasible solution obtained as a descendent of B can be bctler than any optimal descendent of A. Such a strategy has proven useful on the solution of a number of problems fl » 2 "- ' 10 » 21 » 30] -' . Notice that this alternative could also be broadly interpreted as using dynamic pro- gramming within a branch -and -bound framework since the dominance elimination is analogous to the initial fathoming which is employed in conventional dynamic programming. -20- 4. CONCLUSION It has been demonstrated that both the computer storage re- quirements and also the computational requirements of dynamic programming algorithms can be significantly reduced through the use of branch-andbound methods. We envision that this hybrid approach may open the door- ways to the solutions of many sizes and classes of problems which are currently computationally "unsolvable" by conventional dynamic program- ming algorithms. ACKNOWLEDGEMENTS The authors wish to thank GEORGE NEMHAUSER and the two referees for their useful suggestions. L : 21REFERENCES 1. J. H. AHRENS and G. FINKE, "Merging and Sorting Applied to the forthcoming. Zero-One Knapsack Problem," Opns Res . . , 2. K. R. BAKER, Introduction to Sequencing and Scheduling and Sons, New York, 1974. 3. R. E. BELLMAN, Dynamic Prograinrning Princeton, N.J,, 1957. 4. Sci 5. . , , John Wiley Princeton University Press, and L. A. ZADEH, "Decision -Making in a Fuzzy Environment," Management J7, B141 -B164 (1970). , M. BELI240RE and G. L. NEMHAUSER, "The Traveling -Salesman Problem: Survey," Opns Res 16, 538-558 (1968). . . BOOTH, Sequential Machines and Automata Theory Sons, New York, N.Y., 1967. John Wiley and 6. T. L. 7. N. CHRISTOFIDES, "Bounds for the Traveling-Salesman Problem," Opns Res.. V. A . . . ^,1044-1056 (1972). DENARDO and L. G. MITTEN, "Elements of Sequential Decision Processes," J. Industrial Engineering 18. 106-112 (1967). 8. 'E. 9. V. DHARMADHIKARI, "Discrete Dynamic Programming and the Nonlinear Resource Allocation Problem." Technical Report CP-74009, Department of Computer Science and Operations Research, Southern Methodist University, Dallas. Texas, March, 1974. 10. S. E. ELMAGHFABY, "The One-Machine Sequencing Problem with Delay Costs," J. Industrial Engineering ^,105-108 (1968). . ESOGBUE, Personal communication, 1970. 11. A, 0. 12. B. FAALAND, "Solution of the Value-Independent Knapsack Problem by Partitioning." Opns Res 2^, 333-337 (1973). . . "Discrete Optimization Via Marginal Analysis," Management Sci 12, 210-216 (1966). FOX, 13. B. 14. H. FRANK, L. T. FRISCH, R. VAN SLYKE, and W. S. CHOU, of Centralized Computer Networks," Networks "Optimal Design 43-57 (1971). GARFINKEL and G. L. NEMHAUSER, Integer Programming Interscience, New York, N.Y., 1972. 15. R. 16. A. M. GEOFFRION and R. S. 1. . Wiley- MARSTEN, "Integer Programming Algorlt tins A Framework and State-of -the -Art -Survey ," Management Sci ^, 465-491 (1972). E. . 17. G. GRAVES and A. WHINSTON, "A Ni«w Programming," Management Sc Approach to Discrete Mathonuitica 15, 177-190 (1968). 1 . . -22- 18. M, HELD and R. M. KARP, "A Dynamic Programming Approach to Sequencing Problems," J. SIAM 10. 196-210 (1962). "The Traveling -Salesman Problem and Minimum and , Spanning Trees," Opns Res J^, 1138-1162 (1970). 19. . and Spanning Trees 20. 21. E. - . "The Traveling -Salesman Problem and Minimum , Part II," Mathematical Programming 1, 6-25 (1971). IGNALL and L. SCHRAGE, "Application of the Branch-and -Bound Technique Res J^, 400-412 (1965). to Some Flow-Shop Scheduling Problems," Opns . 22. T. IBARAKI, "Finite State Representations of Discrete Optimization Problems," SIAM J. Computing 2, 193-210 (1973). "Solvable Classes of Discrete Dynamic Programming," Anal and Appl 43, 642-693 (1973). Math. J. 23. , . , 24. R. M. KARP and M. HELD, SIAM 25. . J. Appl. Math. "Finite-State Processes and Dynamic Programming," 15, 693-718 (1967). W. KARUSH, "A General Algorithm for the Optimal Distribution of Effort," Management Sci ^, 229-239 (1962). . 26. E. L. LAWLER and D. E. WOOD, "Branch and Bound Methods: lA, 6.99-719 (1966). Opns Res . 27. . J. B. MACQUEEN, "A Test for Suboptimal Actions in Markovian Decision Problems." Opns 28. R, E, A Survey," . Reg.. J^, 559-561 (1967). MARSTEN and T, L. MORIN, "A Hybrid Approach to Discrete Mathematical Programming," Workins Paper Sloan School of Management, Massachusetts Institute of Technology, Cambridge, Massachusetts, 1974. , 29. L. "Composition Principles for Synthesis of Optimal Multistage Process," Opns Res. U^, 610-619 (1964). G. MITTEN, . 30. , Opns 31. . General Formulation and Properties," "Branch -and -Bound Methods: 28,24-34 (1970). Res . 0. ESOCISUE, "Tlie Imbedded State Space A]iproach to Reducing DimensionaliLy Lii Dynamic Programs ol ili;;hur Dimensions," J. Math . Anal and Appl. 48, 801-810 (1974). T. L. MORIN and A. M. , 32. and R. E. MARSTEN, "An Algorithm for Nonlinear Knapsack Problems," Technical Report No 95^, Operations Research Center, Massachusetts Institute of Tccl-ii-ioTogy Cambridge, Massachusetts, May, 1974, to appear in Management Sci . , . 33. "Branch-and -Bound Strategies for Dynamic Programming," Discussion Paper No 106, The Center For MaLhcniatical Studies in Economics and Management Science, Northwestern University, Evanston, Illinois, Sept. 1974. and , . -23- Introduction to Dynamic Prog ramming Sons, New York, N.Y., 1966. G, L. NEMHAUSER, 34. 35. . John Wiley and "A Generalized Permanent Label Setting Algorithm for the Shortest Path Between Specified Nodes," J. Math Anal and Appl 38, 328-334 (1972). , . . , . PORTEUS, "Some Bounds for Discounted Sequential Decision Processes," Management Sci . 18, 7-11 (1971). 36. E. L. 37. F. PROSCHAN and T. A. BRAY, "Optimal Redundancy Under Multiple Constraints," Opns Res . 13, 800-814 (1965). . 38. M. D. RABIN and D. SCOTT, "Finite Automata and their Decision Problems," IBM J. Res. and Development 3. 114-125 (1959). 39. H. M. SALKIN and C. A. DE KLUYVER, "The Knapsack Problem: A Survey," Technical Memorandum No 281, Department of Operations Research, Case Western Reserve University, Cleveland, Ohio, December, 1972. . 40. R. E. SCHWARTZ and C. L. DYM, "An Integer Maximization Problem," Opns Res IS, 548-550 (1971). . 41. 'R. •.,, . VAN SLYKE and A. KERSHENBAUM, "Network Analysis by Accumulation of Trees," Lecture Notes for the course, Mathematical Programming for Management Decision: Theory and Application, Massachusetts Institute of Technology, Cambridge, Massachusetts, July, 1973. Principles of Operations Research Englewood Cliffs, N.J., 1969. 42. H. M. WAGNER, 43. H. M. . Prentice-Hall, WEINGARTNER and D. N. NESS, "Methods for the Solution of the Multi-Dimensional 0/1 Knapsack Problem," Opns Res J^, 83-103 . (1967). . Date Due ST .9^ >'\i\ Aue z-vatt. ^EEA^' JUK 2 JAM MAR, 2 .: 9 1^83 :::> t' . • Lib-26-67 Mri LI_BRflftIFS III|II1IM||JI|||I|I| l-il-yH 3 TQflD DO 3 b71 fl7T HD28.M414 no.748- 74 Kearl, James R/Relationships between 7316155, D»BK 0003771 P»BKS |i liii llil M^T I 3 IbRAftif.. mill ! iii:i|iii J III Li. "iDflO iii|i|iiiii|iliTi firr LllJiiill 000 I. 3 TOfiD ODM TDflD ^^^ qfl3 DD3 70^ ^ 4a 7?0cu--7V 75c 3 TOflD -7if DD3 b?l TtD Mil LiBHARlES 1 3 TDflD DD3 71 b 'j£4-7i 1SZ 3 'Oao 003 702 5 07 MIT LIBRARIES 153-7^ 3 TDflD DD3 b71 754 .Jilllill flbb I'-f'/'V-l 3 t iiiliii ??T