|
|
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 |
Number of views: |
This page: | 119 |
|
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.
|
|