RUS  ENG
Full version
SEMINARS

Seminar of Control System Department
December 25, 2014, Ekaterinburg, ul. S Kovalevskoi, 16, room 322


On variations of dynamic programming for precedence constrained routing problems and "technical" issues of their implementation

Ya. V. Salii

Abstract: To solve a precedence constrained routing problem through dynamic programming is to obtain the optimal solution for the whole problem from the optimal solutions of all feasible (in the sense of satisfying the precedence constraints) subproblems. Most of the differences in the method of dynamic programming stem from the way of walking through those problems.
In one of the first papers concerned with dynamic programming solutions of sequencing problems, including the precedence constrained TSP (Lawler, 1979), the method proposed was the "forward" variety of DP: the optimal route was constructed from its "head," its first element; the feasible subproblems were enumerated in the order of their dimension, i.e., the cardinality of the set to walk through. Although this method gained significant currency, its feasibility was never proved.
From the mid 2000s, in and around the Department of Control Systems, A.G. Chentsov and his coauthors have been developing a "backward" DP, which was first applied to the generalized courier problem, and later extended to the more general formulations of routing problems. It likewise examined feasible subproblems in the order of their dimension, but the construction of the route started from its "tail". Its feasibility was proved: see, for example, (Chentsov, 2008).
In our talk, we will prove the equivalence of the "forward" and "backward" methods in the sense of identity of the routes they deem feasible. This proof implies the validity of application of results that describe the complexity of the "forward" method (see (Steiner, 1990)) to the "backward" method and also provide theoretical grounds for the "divide and conquer" method proposed in (Lawler, 1979), which may serve as yet another way to create a parallel implementation of DP for routing problems.
In addition, we would discuss the "techincal" issues of implementing DP:
1.) How does one improve the efficiency of the algorithm that generates feasible subproblems?
2.) Which data structures should be preferred to store the values of the Bellman function.


© Steklov Math. Inst. of RAS, 2024