MSC 49L20, 90C39
DOI: 10.14529/ mmp 180106
SOLVING A ROUTING PROBLEM WITH THE AID OF AN INDEPENDENT COMPUTATIONS SCHEME
A.G. Chentsov1,2, A.M. Grigoryev1, A.A. Chentsov1
1Krasovskii Institute of Mathematics and Mechanics UrB RAS, Ekaterinburg,
Russian Federation 2
E-mail: [email protected], [email protected], [email protected]
This paper is devoted to the issues in development and implementation of parallel algorithms for solving practical problems. We consider a routing problem with constraints and complicated cost functions. The visited objects are assumed to be clusters, or megalopolises (nonempty finite sets), and the visit to each one entails certain tasks, which we call interior jobs. The order of visits is subject to precedence constraints. The costs of movements depend on the set of pending tasks (not yet complete at the time of the movement), which is also referred to as "sequence dependence", "position dependence", and "state dependence". Such dependence arises, in particular, in routing problems concerning emergencies at nuclear power plants, similar to the Chernobyl and Fukushima Daiichi incidents. For example, one could consider a disaster recovery problem concerned with sequential dismantlement of radiation sources; in this case, the crew conducting the dismantlement is exposed to the radiation from the sources that have not yet been dealt with. Hence the dependence on pending tasks in the cost functions that measure the crew's radiation exposure. The latter dependence reflects the "shutdown" operations for the corresponding radiation sources. This paper sets forth an approach to a parallel solution for this problem, which was implemented and run on the URAN supercomputer. The results of the computational experiment are presented.
Keywords: dynamic programming; route; sequencing; precedence constraints; parallel computation.
Introduction
Many real-life problems feature the issues connected with routing (transportation, routing the tool of CNC plate cutting machines, minimization of staff exposure to radiation during operations in radioactively contaminated environment). This paper is devoted to a study of an important class of discrete optimization problems, namely, the problems concerning multiple movements under constraints. The prototype of the considered problem is the well-known intractable travelling salesman problem (TSP), see [1, Ch. 3]; to name just a few works on TSP, [2-9]. However, in applications, one often has to satisfy certain additional constraints. In particular, constraints arise in the problem of minimizing the exposure of nuclear power plant staff conducting operations related to dismantling radiation sources. A typical characteristic of the latter problem is dependence on the set of pending tasks: only the sources that are not yet dismantled at the time of each operations do "radiate". There are also other applications [10-12]. Another peculiarity, which arises, for example, in the known problem of dismantling a decommissioned nuclear power generation unit, consists in precedence constraints on the sequence of operations; this is formalized by specifying ordered pairs (OP) of operations where the first component of the pair must be conducted before the second one. Finally, in contrast with "ordinary"
TSP, in applications, the "cities" visited may possess some internal structure and are thus rendered not as "cities" but as clusters of cities, or megalopolises, which introduces a certain additional variation into the movements — the problem develops a two-layer hierarchy: layer one is the sequencing of megalopolises through a permutation of their indices — the route, and layer two is the choice of a "track" along the given route, i.e., the exact versions of movements through the megalopolises. The arguments leading to a two-layer optimization problem are stated in [13], and the applications of methods developed in [13] for problems of nuclear power generation are discussed in [14,15].
Among the applications of theoretical constructions of [13], note the problems of machine engineering concerned with CNC cutting machines; see [16-20].
In this connection, note that in routing problems of appreciable dimension one could hardly avoid the use of heuristics, particularly in nonmetric statements (with nonmetric travel cost functions), which is the case for the problem considered in this paper. However, then, there appears the problem of testing the heuristics on problem instances of the corresponding class. This can be conducted (see [21]) on model problem instances of smaller dimension that nevertheless possess all features of the problem statement: constraints, cost functions, etc. In the mentioned model problems, we intend to use the DP apparatus to find the value (extremum). Then, by running the heuristics on the same problems, after a representative body of statistics is accumulated, one could analyze how close the heuristic results are to the mentioned extremum. After a heuristic is determined to be "sufficiently good" in the mentioned sense, we can later apply it to a "big" problem that can no longer be solved through DP. Thus, DP can be used to create a kind of proving ground for heuristics; still, it is possible that the success of a heuristic on model problem instances will not transfer to instances of greater dimension, whence a desire to expand the usability frame of DP as a testing instrument onto model problem instances of greater dimension, which could not be solved on a personal computer. It is deemed worthwhile to use supercomputers to consider the model problem instances the dimensions of which are closer to their real-life prototypes while retaining all complications and additional constraints typical in practice (expand the proving ground boundaries). To this end, we use a parallel version of dynamic programming aimed at supercomputers; in this paper, we describe the constructions aligned with the problem of minimizing nuclear power plant staff exposure to radiation during operations connected with dismantling radiation sources.
1. Problem Statement and Discussion
Let us start with general definitions, notions, and notations. The symbol = denotes equality by definition. A set, all elements of which are themselves sets is called a family. The real line is denoted by R R+ = e R | 0 ^ £}, N = {1; 2;...} Mid No = N U {0} =
{0; 1; 2;...}, N C N0 C R For p e N0 and q e N0, assume pq = {t e N0 | (p ^ t) & (t ^ q)}. For every ordered pair (OP) z = (a, b) of arbitrary objects a and b, denote by pr1(z) and pr2(z), respectively, its first and second elements: pr1(z) = a, pr2(z) = b. For an object x, the corresponding singleton set is denoted by {x}. For arbitrary objects a, b,
and c, by convention [22, p. 17], assume (a,b,c) = ((a, b), c). For three arbitrary sets A,
B, and C, following [22, p. 17], we assume A x B x C = (A x B) x C, thus, for /j, e A x B and v e C, we have (^,v) e A x B x C. By R+ [5] we denote the set of all functions
from a nonempty set S into R+. For a set H, denote by P(H) the set of all subsets of H,
P' (H) = P(H) \ {0}; denote by Fin(H) the family of all (nonempty) finite sets of P' (H). If H is a finite set, then Fin(H) = P (H). To a nonempty fin ite set K, assign its cardinality \K\ G N and the (nonempty) set (bi)[K] of all bijections [23, p. 87] of the set 1, \K| onto K;
in addition, \0\ = 0 A permutation of a nonempty set T is [23, p. 87] a bijection of T onto itself; for every permutation a of T, there exists an inverse permutation a-1 of the set T: a(a-1(t)) = a-1(a(t)) = t Vt G T.
Fix a nonempty set X, a point x° G X, a number N G N, N ^ 2,(nonempty finite) sets - megalopolises M1 G Fin(X),..., MN G Fin(X), and relations M1 G P' (M1 x M1),..Mw G P' (MN x Mn ). Here and below, assume (x° G Mj Vj G & (Mp nMq = 0 Vp G 1, N Vq G 1,N \ {p}). For each j G 1, N, OPs from Mj determine the feasible interior jobs connected with visiting Mj\ the first element of such an OP is the entry point, and the second element is the exit point. We consider the processes of the following [24, (3.3)] form:
x° ^ (pr1 (Z1) G Ma(1) ^ p^Z) G Ma(1)) ^ ... ^ (pr1 (zn) G Ma(N) ^ pr2 (zn) G Ma(N)) , (1 ■ 1)
where z1 G Ma(1), ..., zn G Ma(N), and a is a permutation of indices of 1, N, hereinafter referred to as route. Assume that in (1.1) the straight arrows denote the exterior movements and the wavy arrows denote the motions connected with (interior) jobs. The
objects of our choice are a,z1}... , zn. Let Mj = {pr2(z) : z G Mj} G Fin(Mj) Vj G 1, N;
X = {x°} U (\JN=1 M^ G Fin(X), X = {x°} U (\JN=1 M^ G Fin(X). In connection with
(1.1), note that both exterior movements and interior jobs conducted as the megalopolises are visited are measured through the given functions, and the results of these measurements are aggregated additively, which is the natural way for many applications. Here and below, assume P = (bi)[1, N], and also assume that each specific a G P (see (1.1)) must satisfy the precedence constraints, which are defined by means of the set K G P(1,N x 1,N) ; OPs from K will be called address pairs; the feasibility of a G P can be reduced to the following requirement: for z = (i,j) G K, the set Mj must be visited before Mj. Here and below, assume [24, (3.11)] the following:
VKo G P'(K)3zq G KO : pr^Zo) = p^(z) VZ G KQ. (1.2)
Then, the set A of all feasible (with respect to precedence) routes from P has the following
form [24, (3.12)]: A = {a G P\a-1(pr1(z)) < a-1(pr2(z)) Vz G K} G P'(P). In connection with (1.2), note that pr1(z) = pr2(z) Vz G K. As evident from (1.1), the choice of some aGA
some track z1, ..., zn. A track has to agree with the given route, and the solution is constructed in the form of OP consisting of a route and a track, where the route must A (1.1)
Mk ,k G K, where K C 1,N. Such interpretation is also useful in connection with the dynamic programming (DP); it was laid out in [21,24,25]. In this paper, we omit its details and devote most of our attention to the computational concerns. We limit ourselves to a description of "complete" routes and "tracks" (trajectories), similar to (1.1). Thus, if a G P, denote by Za the set of all tuples (zi)^oN : 0,N ^ X x X such that (z0 =
(x0,x0)) & (zt e Ma(t) Vt e 1, N); Za is a nonempty finite set. Feasible solutions will be
represented by the OPs (a, (zi)ie0,N) where a e ^d (zi)ie0N e Za; N = P (1, N).
Consider the following cost functions (they are assumed to be known): c e R+[X x X x N], c1 e R+[X x X x N],...,cN e R+[X x X x N], f e R+[X], In terms of these functions, let us define the additive criterion: for a e A and (zi)ie0rN e Za, set
A N _
Ca[(zi)ie0N] = E^^t-^ Pr1(zi)> {a(j) : j e t,N})+ ^
+ ca(t) (zt, {a(j) : j e t,N})] + f (Pr2(zN)).
Our principal problem is as follows: Ca[(zi)i€Qw] ^ min, a e A, (zi)^0TN e Za; for this problem, there exists a nonempty set of optimal feasible solutions and the problem's value — the following extremum:
V = min min Ca[(zi)i€0N] e R+. (1-4)
afeA (zi)igo,N
Our goal is to find V (1.4) and some optimal feasible solution (a0, (z0^), where a0 e A Mid (z°)ie0N e Zao; evidently, they satisfy Cao [(z°)ie0;N] = V.
2. Dynamic Programming. Layers of Bellman Function
Our problem is solved by means of a variety of DP [21,24,25], which we specify in a brief form. We use the construction from [21,24,25], which is based on the layer structure of the Bellman function; the algorithm of their construction is sketched below. Let us consider the construction of state space layers by means of the crossing-out operator (for
tasks in the task list) [13, Pt. 2]: I : N ^ N, specifically, for K e N, set S(K) = {z e
K | (pr1(z) e K) & (pr2(z) e K)} Mid I(K) = K \ {pr2(z) : z e S(K)}. Operator I(K) is used to construct the layers of the state space. To this end, consider a (nonempty)
set G = {K e N IWz e K (pr1(z) e K) ^ (pr2(z) e K)}, clearly, 1N e G; we call its elements feasible task lists. We sort the mentioned lists by their cardinality, Gs = {K e G | s = IK|} Vs e 1, N. Then, the family {G^ : j e 1,N} is a partition of G. In
addition, G1 = {{t} : t e 1N \ K1}^ere K1 = {pr1(z) : z e K}. Also [21,24,25], Gs -1 = {K\{j} : K e Gs, j e I(K)} Vs e 2, N. Thus we obtain a recurrence procedure: Gn = {1, N}, Gn ^ Gn-1 ^ ... ^ G1. Based on this procedure, we construct the state space layers, which we denote D0, D1,..., DN. Specifically, D0 = {(x, 0) : x e M}, where
M is % definition ^te union of all the sets Mi, i e 1, N \ K^. Next, DN = {(x0,1, N)} (the singleton that contains the OP (x0,1, N)). Ifs e 1, N — 1 and K e Gs, we have [25] the following sequence of definitions:
Js(K) = {t e ^ \ K ^t}u K e Gs+1}, ^s[K] = |J M,, Ds[K] =
j£Js(K)
= {(x,K) : x e MS[K]} e P'(X x Gs).
Thus, for s e 1,N — 1, the layer Ds is defined by the rule
a
Ds = U ЩК]. (2.1)
s
Keg.
It is easy to see that Do = 0, D = 0,...,Dn = 0- If s G 1,N, (x, K) G Ds,j G I(K), and z G Mj5 then (pr2(z),K \ {j}) G Ds-1.
Recurrence procedure for construction of the layers. Consider a system of funcions v0 G R+[D0],v1 G R+[D1],... ,vN G R+[DN],
First, define v0 G R+[D0] by the condition v0(x, 0) = f (x) Vx G M. Further constructions implement the following recurrence scheme: for s G 1,N, if the function vs-1 G R+[Ds_1] is already constructed, then vs G R+[Ds] can be determined by the rule
vs(x,K) = min min[c(x, pr1(z),K) + cj(z,K)+ vs-1(pr2(z), K\{j})] V(x,K) G Ds. (2.2)
j€l(K)z£Mj
From the general constructions of [21,24,25], there follows the equality
V = vn (x0, IN (2.3)
which lets us determine the global extremum (see (1.4)). The procedure v0 ^ v1 ^ ... ^ V,
V
computer's RAM; for details, refer to [26]. Similar idea was proposed in [27]. Construction of optimal solution corresponds to [21,24, §4, §7].
3. Independent Computations of Bellman Function Layers
Further exposition follows a version of general construction [24, 28, 29] connected with conducting independent computations. Recall that (2.2) and (2.3) state the "final" formula for determining V through vN-1. Thus, further constructions require one to determine vN_1; which is conducted by the procedure below (it is clear how to compute V if vN_1 is known). The function vN_1 is defined on the set DN_1, which is defined through Gn_1. Here and below, assume N ^ 3; we have
Gn_1 = {1N \ {j} : j G ION)}; (3-1)
since Gn = {1,N}, it is possible to determine DN_1. Assume all the layer-functions
will be constructed on n nodes, where n = \GN_1\ = \I(1,N)\ G N. To facilitate these constructions, each layer Do, D1,..., DN will be interpreted as a union of n subsets; each such subset will be distributed to a specific node, which would construct its fragment of the layer. This construction will be conducted through auxiliary discrete dynamic systems (DDS), the trajectories of which will be determined through systems of inclusions. Thus, assume K G GN_1; and let T[K] be the set of all the tuples (Kt)tg0 N_2 : 0, N — 2 ^ G
such that (Ko = K) & (Vr G 1,N — 2 3s G I(Kr_1) : KT = KT_X \ {s}). Given tuples -
K
"time" t G 0, N — 2, we have a reachability set (RS) T[K; t], defined to be the set of all the lists Kt such th at (KT )Tg 0 N_ 2 are the trajectories from T[K ]:
T[K; t] = {Kt : (Kj)j€(N2 G T[K]}, (3.2)
in addition [28,29], T[K; t] G P'(GN_(t+1)). As it is easy to see, for every K G GN_1; (T[K; 0] = {K}) & (T[K; N — 2] C G1). Now, the families of feasible lists of fixed
cardinality can be determined through these ESs, specifically,
Gn—(t+i) = (J T[K; t] yt e 0, N — 2. (3.3)
K&Gn-i
Let us also note that the mentioned ESs could [29, Proposition 16] be determined in a recurrent fashion for a fixed condition: if K e GN-1 and t e 0, N — 3, then T[K; t + 1] = {P \ {h} : P e T[K; t], h e I(P)}. Through ESs, we construct the "individual" (to each computation node-its own) state space layers: for K e GN-^d s e 1,N — 1, in view of (2.1), set
Ds[K]= (J Ds[P] eP'(Ds). (3.4)
P eT[K;N—(s+1)]
These layers (3.4) possess the property (pr2(z), Q \ {s}) £ Vl[K] Vl £ 1, N — 2 V(x, Q) £ Vi+1[K] Vs £ I(Q) Vz £ Ms. In view of (3.4), for K £ GNs £ 1,N — 1, assume
Ws[K] = V(x, P)){x,p)&vs[k] = (v(x, P)){x,p)&v4k] £ R+[Vs[K]]. (3.5)
In particular, for K £ GNwe can determine Vi[K] £ P'(D\^d Wi[K] £ R+[Vi[K]]. To explicitly describe V1[K^r K £ GNlet us first note, in view of (3.4), that T[K; N — 2] c Gi, whence VP £ T[K; N — 2] 3t £ T^N \ Ki : P = {} Consequently [24, 10.4], we have the property VK £ Gn_i V(x,P) £ Vi[K] 3t £ 1,N \ Ki : P = {t}. In view of (2.2), and (3.5), we find that, for K £ Gi and (x, P) £ Vi[K],
Wi[K](x, P) = vi(x, P) = min min[c(x, pri(z), P) + Cj(z, P) + v0(pr2(z), P \ {j})],
jei(P) ^eMj
where P = {t} for a certain t £ 1,N \ Ki and, consequently [24, Eemark 3.2], I(P) = I({t}) = {t} = P; then,
Wi[K](x, P) = min min[c(x, pri(z), P) + Cj(z, P) + f (pr2(z))] (3.6)
(in (3.6), note that, evidently, Mt С ^^d pr2(z) £ Mt since j £ P implies j = t). Since P
K £ Gn-i (see [29, (62), Proposition 7], a nonempty set M0[K] = {h £ 1,N \ Ki\{h} £ T[K; N - 2]} for K £ Gn-i- In view of (3.4), we obtain
Di[K]= U Di[P]= U {(x, P) : x £Mi[P]}, (3.7)
P £T[K;N-2] P €T[K;N-2]
where T[K; N — 2] = {{h} : h £ M0[K]} [27, Proposition 5.1]; thus, from (3.7), we have Di[K] = {(x, {h}) : h £ Mo[K], x £ Mi[{h}]}^, for K £ Gn-i and h £ Mo[K], we have {h} £ T[K; N — 2], where h £ T^N \ K^ thus, {h} £ G^d Ji({h}) = {t £ TN \{h}\{t; h}£ G2},
Mi[{h}]= U Mj. (3.8)
j£Jl({h})
In view of (3.6), for K E GN-i, h E Mo[K^^d x E M.\[{h}], we have the following property: (x, {h}) E D1[K] and
Wi[K](x, {h}) = min [c(x, pri(z), {h}) + ch(z, {h}) + f (pr2(z))]. (3.9)
Through (3.9), we can fully determine the function W1[K], while, to use (3.9) we have to, knowing K E GN-^d h E M0[K], construct J1({h}), and then determine M1[{h}] % means of (3.8), after which we can finally use formula (3.9) for x E M1[{h}]. We determine all the functions W1[K], K E GN-1. Further constructions will concern one single computation node. A transformation of a function Wl[K] into Wl+1[K], where K E GN-1 and l E 1, N — 2, is determined by a relation similar to (2.2) (indeed, by (3.5), for (x,Q) E Di+1 [K], s E I(Q), and z E Ms, the value W[K](pr2(z),Q \ {s}) E R+ is defined and can be used to compute Wl+1[K](x, Q)). Thus (see (2.2) and (3.5)), for K E Gn_1, l E 1, N — 1, Mid (x, Q) E Di+1[K], we have [24, (10.17)]
Wi+1[K](x,Q)= min min[c(x,pr^z),Q) + Cj(z,Q) + Wl[K](pr2(z), Q\{s})]. (3.10)
sel(Q) z&Mj
Fix K E GN-1. For this set, we have the corresponding layers [K] (3.4), s E
1, N — 1 s G 1, N — 1
Ws[K] G R+ [Ds[K]] is defined. In particular, the function m[K] G R+[D>1[K]] is defined; to determine its values, (3.9) should be used in view of the representation of D1[K], Further construction of functions W1[K],..., WN_1[K] is conducted based on a recurrence procedure based on (3.10). Specifically, for l G 1, N — 2, the transformation of W [K] into Wi+1[K] is determined by the expression V(x,Q)
Wi+1[K](x,Q) = min min[c(x,pr1(z),Q) + Cj(z,Q) + Wi[K](pr2(z), Q \ {s})]. (3.11)
sei(Q) zeMj
Rule (3.11) is a specification of (3.10). Thus, (3.11) describes the transformation Wl[K] ^ Wl+1[K]. Since the choice of l was arbitrary, we obtain the recurrence procedure
W1[K] ^ W2K] ^ ... ^ Wn_1[K]. (3.12)
All computations connected with (3.12) are conducted by a single computation node independently of other nodes.
4. Construction of Layers of Bellman Function
We note positions [29, Section 7]. In particular, from [29, Proposition 17], we have the equalities
Ds = |J Ds[K] Vs G 1, N — 1. (4.1)
KgGn-i
Equalities (4.1) provide for a "union" of the processes conducted by the separate computation nodes. Our intention in this is to construct the layers v1,... ,vN_1. For every s G 1,N — 1, we have the functions Ws[K], K G GN_1, the domains of which (that is, the sets Ds[K], K G GN_^) form, in view of (4.1), a cover of Ds. So the function vs is completely determined. The functions from this collection agree in view of (3.5): for K1 G Gn_1, K2 G Gn_1, s G 1,N — 1, (x, P) G Vs [K1] n Vs [K2], we have
Ws[K1](x,P) = vs(x,P) = Ws[K2](x,P). (4.2)
In view of (4.1) and (4.2), we obtain the following simple rale of construction of the function vs for s £ 1, N — 1. Having "particular" functions, to determine vs(x0, K0), where (x0, K0) £ Ds, first, in view of (4.1), obtain the set K0 £ GN_i such that (x0, K0) £ Vs[K0], Then, in view of (3.5), vs(x0,K0) = Ws[K0](x0, K0). Property (4.2) means that a specific choice of K0 £ Gn_i with the property (x0,K0) £ Vs[K0] can be arbitrary. Based on the
vs
v0, vi, . . . , vN
of the Bellman function. Based on these layers, through procedures that solve the local problems, we determine the optimal feasible solution. To construct such a solution, the
vi , . . . , vN
Algorithm for determining the global extremum. Consider a procedure for determining V (2.3), during the implementation of which, in the memory of each computational node, there is only retained one "particular" function of the form (3.5), i.e., an "individual" Bellman function layer. Without loss of generality, consider the computational node that processes the set K £ GN_i. The ultimate goal of the procedure running on this node is to construct the function WN_i[K] £ R+[VN_i[K]]. Principal steps of the iteration procedure.
1) Determine Wi[K] £ R+[Vi[K]] from (3.9).
2) For s £ 1,N — 2, assume the "particular" function Ws[K] £ R+[Vs[K]] is already constructed. Then, through (3.10), compute the values of the function Ws+i[K], which only use the values of the function Ws[K] (in (3.10), set l = s). This yields the "particular" function Ws+i[K] £ R+[Vs+i[K]]. Next, the memory holding the values Ws[K] is released, and then filled with the values of Ws+i[K]: the "particular" functions are overwritten.
3) After consecutively conducting step 2), we obtain WN_i [K],
After steps l)-3) are completed at each computation node, there are obtained WN_i[K], K £ Gn_i. Now, construct vN_i through the equality
Dn _i = |J Vn _i[K ]. (4.3)
K £Gn—
For every state (x,P) £ DN_i; determine, by means of (4.3), the set K £ GN_i such that (x, P) £ VN_i[K}. Then, we have the value WN_i[K](x, P) £ R+ for which, in view of (3.5), there holds the equality vN_i(x,P) = WN_i[K](x,P). Thus, we obtain all the values of the function vN_i. Through the function vN_i (the layer of the Bellman function),
V
V
solution for problems of greater dimension. For constructing of the optimal solution, the
vN_i
functions vs,s £ 1,N — 1. These functions are required to be kept in the memory of the computer. The concrete variant of such constructing is connected with (4.2). Under construction of all functions vs, s £ 1, N — 1, it is required to use procedure of Section 3.
5. Model and Computational Experiment
Let us consider a specific version of the general problem; assume X = R x R (the problem on a plane). We study the formulation where each megalopolis is a system of entries and exits for a certain zone of heightened intensity of certain harmful factors (in
particular, radiation). The necessary activities are conducted by a point agent in the zone. The aim of activities inside a megalopolis is to go from the entry point to the radiation source, dismantle it, and then leave the megalopolis through an exit point. The radiation left after dismantling a source is assumed to be negligible. Thus, a megalopolis is, essentially, a "near zone" of the radiation source. Other (non-dismantled) radiation sources are also assumed to have a nonnegligible effect both during movement between megalopolises and during the near zone activities (interior jobs). The effect of radiation is assumed to be cumulative, whence the additive cost aggregation assumed in this paper. Another feature of the problem statement is the fact that when moving to a source to dismantle it, as the agent enters the near zone, the agent is assumed to be affected by it; however, after dismantlement, as the agent moves to exit the zone, the agent is not affected by the (dismantled) source anymore. Consequently, the degree of radiation exposure of the agent during the first stage depends on the length of the stage and, therefore, on the distance between the entry point and the radiation source. During exterior movements, the effect of each single source is not as pronounced, however, the cumulative effect of non-dismantled sources can not be ignored.
Passing by a radiation source s and dismantling it. Let us connect the system of megalopolises with a system of point "radiating" objects (zi)ieiN : 1,N ^ X with the following property: zi £ Mi Vi £ 1,N. Dismantlement of the objects Z1, ... , Zn is the aim of visiting the megalopolises: specifically, during a visit to Ma(i), the agent has to enter some entry point pr1(zi^, move to the point za(i), dismantle the radiation source number a(i), and then reach an exit point pr2(zi). This implements scheme (2.1).
Let us sketch a description of the effect of a single source during the movement from the given point of the plane to another point (as mentioned before, the exposure suffered during these movements is summed up) in the "regular" case, when the trajectory does not
i
point j, the losses (in our model), or rather, the exposure suffered during the movement
s
T
ci,j [{s}] = / dt
0
p2, t(t)
Pi,j
0 Ys f dP
2Pi, j —
(5.1)
V 0 (2Pi, j P + j s " PÏ s " PÏ j) + (4p!, j PÏ s " (Pj , s " PÏ s " PÏ j )2)
where p denotes the Euclidean distance (where necessary, the mentioned distances are subscripted); Ys is the intensity of the source s, and v is the movement speed. To calculate the integral use one of the following table formulas:
dR 1 R „ [ dR 1 n
—arctg— + C, —-=22 = —¡-in
A2 + R2 A °A I A2 — R2 2A
A + R
AR
+C,
depending on whether the sign is 4p2jp2,s — (p2,s — p2,s — p2,j)2. If the source s lies on the trajectory of the motion from point i to point j, the cost Ci,j[{s}] is assumed to be a very large number (roughly speaking, ci,j[{s}] = œ; in the actual computation, the number that is several times greater than the most "costly" motion is sufficient).
s
interior jobs). In this case, assume that the point j coincides with s and consider the exposure suffered by the agent during the approach to the source that is to be dismantled.
Thus, we still follow the model where the exposure is inversely proportional to the square of the distance to the source; however, to avoid the ill-posedness as the agent reaches the source, which could lead to a division by 0, the denominator of the integrand
1
factor 3 (which describes the case of radiation intensity not being weakened by obstacles, the latter being possible during exterior movements). So, in this case, the losses (the exposure) are calculated by the following formula:
About constructing of cost functions. For constructing of c,0i, ... ,cN, it is required the values defined by (5.1) and (5.2) are summed from s E K, where K is the corresponding list of tasks that are not implemented at the time of moving (we keep in mind the determination of values c(x,y,K) or Cj(x,y,K), where j E 1,N).
Computational experiment. Let us consider the model instances of the routing problem for dismantling radiation sources on a plane. The megalopolises, which imitate the possible entry and exit points of the chambers housing the radiation sources, are obtained by discretizing circles: at each circle, there are 12 points, equally spaced starting with the point with the angle coordinate of 0. Each megalopolis is assigned a point object, which imitates the radiation source of the chamber. Let the starting point of the dismantlement process coincide with the point of origin, i.e., x0 = (0, 0); after dismantling all radiation sources, the agent must return to the depot (the point of origin). Recall that function p is essentially the Euclidean distance. Assume the speed of the agent is 4 times greater outside the chambers than it is within — this models the intrinsic difficulty of moving inside the megalopolises, which is due to the presence of hardware, various structures, or mechanisms, which hamper the rapid movement inside. Here are some results concerning the calculations on supercomputers URAN. For the model with 30 megalopolises and 30 address pairs (51 pairs in transitive closure [31]) that determine the precedence constraints, the following results were obtained: total exposure (total losses): 222,9, total computation time: 17m 46s. For the model with 31 megalopolis and 34 address pairs (63 pairs in transitive closure [31]), the following results were obtained: total exposure (total losses): 226,5, total computation time: 15m 56s. Let us now consider the results of the accounts of the same tasks on a
30 30
obtained: total exposure (total losses): 222,9, total computation time: 7h 26m 7s. For 31 34
total exposure (total losses): 226,5, total computation time: 6h 29m 55s. A decrease in computation time for the problem with the greater number of megalopolises is due to the more "strict" precedence constraints, which significantly decrease both the volume of computations involved in obtaining the values of the Bellman function and the memory usage. For more information on the influence of precedence constraints on computation time and memory usage of dynamic programming solutions, refer to [32]. Calculating the optimal route for the passage of 45 megacities, with 20 cities each is realized. This setting
(5.2)
0
is weakened by 40 conditions of precedence. The calculation was performed on the UEAN supercomputer in the interval 1 hour 1 minute.
Acknowledgements. This research was supported by Russian Foundation for Basic Research (projects no. 17-08-01385, 18-07-00637).
References
1. Garey M.R., Johnson D.S. Computers and Intractability: A Guide to the Theory of NP-Completeness, N.Y., W.H. Freeman, 1979.
2. Gutin G., Punnen A.P. The Traveling Salesman Problem and Its Variations, N.Y., Springer, 2002.
3. Cook W.J. In Pursuit of the Traveling Salesman. Mathematics at the Limits of Computation, New Jersey, Princeton University Press, 2012.
4. Melamed I.I., Sergeev S.I., Sigal I. The Traveling Salesman Problem. Issues in Theory. Automation and Remote Control, 1989, vol. 50, no. 9, pp. 1147-1173.
5. Melamed I.I., Sergeev S.I., Sigal I. The Traveling Salesman Problem. Exact Methods. Automation and Remote Control, 1989, vol. 50, no. 10, pp. 1303-1324.
6. Melamed I.I., Sergeev S.I., Sigal I. The Traveling Salesman Problem. Approximate Algorithms. Automation and Remote Control, 1989, vol. 50, no. 11, pp. 1459-1479.
7. Little L.D.C., Murty K.G., Sweeney D.W., Karel C. An Algorithm for the Travelling Salesman Problem. Operations Research, 1963, vol. 11, no. 6, pp. 972-990. DOI: 10.1287/opre.ll.6.972
8. Bellman R. Dynamic Programming Treatment of the Travelling Salesman Problem. Journal of the Association for Computing Machinery, 1962, vol. 9, pp. 61-63. DOI: 10.1145/321105.321111
9. Held M., Karp R.M. A Dynamic Programming Approach to Sequencing Problems. Journal of the Society for Industrial and Applied Mathematics, 1962, vol. 10, no. 1, pp. 196-210. DOI: 10.1137/0110015
10. Leon V.J., Peters B.A. Replanning and Analysis of Partial Setup Strategies in Printed Circuit Board Assembly Systems. International Journal of Flexible Manufacturing Systems, 1996, vol. 8, pp. 389-411. DOI: 10.1007/BF00170019
11. Alkaya A.F., Duman E. A New Generalization of the Traveling Salesman Problem. Applied and Computational Mathematics, 2010, vol. 9, no. 2, pp. 162-175.
12. Kinable J., Cire A., van Hoeve W.J. Hybrid Optimization Methods for Time-Dependent Sequencing Problems. European Journal of Operational Research, 2017, vol. 259, no. 3, pp. 887-897. DOI: 10.1016/j.ejor.2016.11.035
13. Chentsov A.G. Ekstremal'nye zadachi marshrutizatsii i raspredeleniya zadaniy: voprosy teorii [Extreme Problems of Routing and Tasks Distribution: Regular and Chaotic Dynamics]. Izhevsk, Izhevsk Institute of Computer Research, 2008. (in Russian)
14. Korobkin V.V., Sesekin A.N., Tashlykov O.L., Chentsov A.G. Routing Methods and Their Applications to the Enhancement of Safety and Efficiency of Nuclear Plant Operation. Moscow, Novye tekhnologii, 2012. (in Russian)
15. Tashlykov O.L. Personnel Dose Costs in the Nuclear Industry. Analysis. Ways to Decrease. Optimization. Saarbruke, LAP LAMBERT Academic Publishing GmbH &; Co. RG., 2011.
16. Petunin A.A. About Some Strategies of the Tool Path Modelling at the Control Programs Generation for the Flame Cutting Machines. Vestnik UGATU, 2009, vol. 13, no. 2, pp. 280-286. (in Russian)
17. Petunin A.A., Chentsov A.G., Chentsov P.A. On Routing Tool Motion on the Sheet Cutting NPC Machines. St. Petersburg State Polytechnical University Journal. Computer Science. Telecommunication and Control Systems, 2013, no. 2, pp. 103-111. (in Russian)
18. Frolovskii V.D. Computer-Aided Design of the Control Programs for Thermal Metal Cutting on NPC Machines. The scientific and technical journal "Information Technology of Cad/Cam/Cae" (ITDP), 2005, no. 4, pp. 63-66. (in Russian)
19. Wang G.G., Xie S.Q. Optimal Process Planning for a Combined Punch-and-Laser Cutting Machine Using ant Colony Optimization. International Journal of Production Research, 2005, vol. 43, no. 11, pp. 2195-2216. DOI: 10.1080/00207540500070376
20. Dewil R., Vansteenwegen P., Cattrysse D. Construction Heuristics for Generating Tool Paths for Laser Cutters. International Journal of Production Research, 2014, vol. 52, no. 20, pp. 1-20. DOI: 10.1080/00207543.2014.895064
21. Chentsov A.G., Chentsov P.A. Routing Under Constraints: Problem of Visit to Megalopolises. Automation and Remote Control, 2016, vol. 77, no. 11, pp. 1957-1974. DOI: 10.1134/S0005117916110060
22. Dieudonne J. Foundations of Modern Analysis. N.Y., Academic, 1960.
23. Cormen T.H., Leizerson C.E., Rivest R.L. Introduction to Algorithms. Cambridge, MIT Press, 1990.
24. Chentsov A.G. To Question of Routing of Works Complexes. Vestnik Udmurtskogo universiteta. Matematika. Mekhanika. Kompyuternye nauki, 2013, no. 1, pp. 59-82. (in Russian)
25. Chentsov A.G., Chentsov A.A. Route Problem with Constraints Depending on a List of Tasks. Doklady Mathematics, 2015, vol. 92, no. 3, pp. 685-688. DOI: 10.1134/S1064562415060083
26. Chentsov A.G., Chentsov A.A. On the Problem of Obtaining the Value of Routing Problem with Constraints. Journal of Automation and Information Sciences, 2016, vol. 6, pp. 41-54.
27. Lawler E.L. Efficient Implementation of Dynamic Programming Algorithms for Sequencing Problems. CWI Technical report. Stichting Mathematisch Centrum. Mathematische Besliskunde-BW, 1979, vol. 106, no. 79, pp. 1-16.
28. Chentsov A.G. One Parallel Procedure for the Construction of the Bellman Function in the Generalized Problem of the Courier with the Inner Workings. Automation and Remote Control, 2012, vol. 3, pp. 134-149.
29. Chentsov A.G. One Parallel Procedure for the Construction of the Bellman Function in the Generalized Problem of the Courier with the Inner Workings. Bulletin of the South Ural State University. Series: Mathematical Modelling, Programming and Computer Software, 2012, no. 18 (277), pp. 53-76. (in Russian)
30. Chentsov A.G., Grigoryev A.M. Dynamic Programming Method in the Route Problem: the Scheme of Independent Calculations. Mekhatronika, avtomatizatsiya, upravlenie, 2016, vol. 17, no. 12, pp. 834-846.
31. Schmidt G., Strohlein T. Relations and Graphs: Discrete Mathematics for Computer Scientists. London, EATCS Monographs on Theoretical Computer Science, Springer-Verlag, 1993.
32. Steiner G. On the Complexity of Dynamic Programming for Sequencing Problems with Precedence Constraints. Annals of Operations Research, 1990, vol. 26, no. 1, pp. 103-123. DOI: 10.1007/BF02248587
Received November 23, 2017
УДК 519.6 DOI: 10.1152!) шшрШШШ
РЕШЕНИЕ ЗАДАЧИ МАРШРУТИЗАЦИИ С ИСПОЛЬЗОВАНИЕМ
СХЕМЫ НЕЗАВИСИМЫХ ВЫЧИСЛЕНИЙ
А.Г. Чепцов1'2, A.M. Григорьев1, A.A. Ченцов1
1Институт математики и механики им. Н. Н. Красовского УрО РАН, г. Екатеринбург,
Российская Федерация
2
г. Екатеринбург, Российская Федерация
Статья посвящена вопросам построения n реализации параллельных алгоритмов для решения прикладных задач. Рассматривается задача маршрутизации перемещений с ограничениями и усложненными функциями стоимости. Предполагается, что объекты посещения — суть мегаполисы (непустые конечные множества), при посещении которых должны выполнятся некоторые работы, именуемые далее внутренними. По постановке задачи имеются ограничения в виде условий предшествования. Стоимости перемещений зависят от списка заданий, которые не выполнены на момент перемещения. Ситуация такого рода возникает, в частности, при аварийных ситуациях, связанных с работой АЭС и подобных происходящим в Чернобыле и Фукусиме. Речь идет об утилизации источников радиоактивного излучения, осуществляемой последовательно во времени; в этом случае исполнитель находится под воздействием источников, которые не были демонтированы на момент соответствующего перемещения. За счет этого в функциях стоимости, оценивающих воздействие радиации на исполнителя, возникает зависимость от списка невыполненных заданий. Последние состоят в том или ином варианте «выключения» соответствующего источника. В настоящем исследовании излагается подход к решению данной задачи параллельным алгоритмом, реализуемым на суперкомпьютере УРАН. Приведены результаты вычислительного эксперимента.
Ключевые слова: динамическое программирование; маршрут; условия предшествования; параллельный алгоритм.
Литература
1. Garey, M.R. Computers and Intractability: A Guide to the Theory of NP-Completeness / M.R. Garey, D.S. Johnson. - N.Y., W.U. Freeman, 1979.
2. Gutin, G. The Traveling Salesman Problem and Its Variations / G. Gutin, A.P. Punnen. -N.Y., Springer, 2002.
3. Cook, W.J. In Pursuit of the Traveling Salesman. Mathematics at the Limits of Computation / WT.J. Cook. - New Jersey, Princeton University Press, 2012.
4. Меламед, И.И. Задача коммивояжера. Вопросы теории / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - Т. 50, № 9. - С. 3-34.
5. Меламед, И.И. Задача коммивояжера. Точные алгоритмы / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - Т. 50, № 10. - С. 3-29.
6. Меламед, И.И. Задача коммивояжера. Приближенные алгоритмы / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - Т. 50, № 11. - С. 3-26.
7. Литл, Дж. Алгоритм для решения задачи о коммивояжере / Дж. Литл, К. Мурти, Д. Суини, К. Кэрел // Экономика и математические методы. - 1965. - Т. 1, вып. 1. -С. 94-107.
8. Беллман, Р. Применение динамического программирования к задаче о коммивояжере / Р. Беллман // Кибернетический сборник. - Т. 9.- М.: Мир, 1964. - С. 219-228.
9. Хелд, М. Применение динамического программирования к задачам упорядочения / М. Хелд, P.M. Карп // Кибернетический сборник. - Т. 9. - М.: Мир, 1964. - С. 202-218.
10. Leon, V.J. Replanning and Analysis of Partial Setup Strategies in Printed Circuit Board Assembly Systems / V.J. Leon, B.A. Peters // International Journal of Flexible Manufacturing Systems. - 1996. - V. 8. - P. 389-411.
11. Alkaya, A.F. A New Generalization of the Traveling Salesman Problem / A.F. Alkaya, E. Duman // Applied and Computational Mathematics. - 2010. - V. 9, № 2. - P. 162-175.
12. Kinable, J. Hybrid Optimization Methods for Time-Dependent Sequencing Problems / J. Kinable, A. Cire, W.J. van Hoeve // European Journal of Operational Research. - 2017.
- V. 259, № 3. - P. 887-897.
13. Чепцов, A.Р. Экстремальные задачи маршрутизации и распределения заданий: вопросы теории / A.L. Чепцов. - Ижевск: НИЦ «Регулярная и хаотическая динамика:», Ижевский институт компьютерных исследований, 2008.
14. Коробкин, В.В. Методы маршрутизации и их приложения в задачах повышения безопасности и эффективности эксплуатации атомных станций / В.В. Коробкин, А.Н. Сесекин, О.Л. Ташлыков, А.Р. Чепцов. - М.: Новые технологии, 2012.
15. Ташлыков, О.Л. Дозовые затраты персонала в атомной энергетике. Анализ. Пути снижения. Оптимизация: монография / О.Л. Ташлыков. - Saarbruke: LAP LAMBERT Academic Publishing GmbH &; Co. RG., 2011.
16. Петунии, А.А. О некоторых стратегиях формирования маршрута инструмента при разработке управляющих программ для машин термической резки материала / А.А. Петунии // Вестник УГАТУ. Серия: Управление, вычислительная техника и информатика.
- 2009. - Т. 13, № 2 (35). - С. 280-286.
17. Петунии, А.А. К вопросу о маршрутизации движения инструмента в машинах листовой резки с числовым программным управлением / А.А. Петунии, A.L. Чепцов, П.А. Ченцов // Научно-технические ведомости СПбРПУ. Информатика. Телекоммуникации. Управление. - 2013. - № 2 (169). - С. 103-111.
18. Фроловский, В.Д. Автоматизация проектирования управляющих программ тепловой резки металла на оборудовании с ЧПУ / В.Д. Фроловский // Информационные технологии в проектировании и производстве. - 2005. - № 4. - С. 63-66.
19. Wang, G.G. Optimal Process Planning for a Combined Punch-and-Laser Cutting Machine Using and Colony Optimization / G.G. Wang, S.Q. Xie // International Journal of Production Research. - 2005. - V. 43, № 11. - P. 2195-2216.
20. Dewil, R. Construction Heuristics for Generating Tool Paths for Laser Cutters / R. Dewil, P. Vansteenwegen, D. Cattrysse // International Journal of Production Research. - 2014. -P. 1-20.
21. Ченцов, A.P. Маршрутизация в условиях ограничений: задача о посещении мегаполисов / А.Р. Ченцов, П.А. Ченцов // Автоматика и телемеханика. - 2016. - № 11. -С. 96-117.
22. Dieudonne, J. Foundations of Modern Analysis / J. Dieudonne. - N.Y.: Academic, 1960.
23. Cormen, Т.Н. Introduction to Algorithms / Т.Н. Cormen, C.E. Leizerson, R.L. Rivest. -Cambridge: MIT Press, 1990.
24. Ченцов, А.Г. К вопросу о маршрутизации комплексов работ / А.Г. Чепцов // Вестник Удмуртского ун-та. Математика. Механика. Компьютерные науки. - 2013. -№ 1. -С. 59-82.
25. Ченцов, А.Г. Задача маршрутизации с ограничениями, зависящими от списка заданий / А.Г. Ченцов, A.A. Ченцов // Доклады Академии наук. - 2015. - Т. 465, № 2. - С. 154-158.
26. Ченцов, A.A. К вопросу о нахождении значения маршрутной задачи с ограничениями / A.A. Ченцов, А.Г. Ченцов // Проблемы управления и информатики. - 2016. - № 1. -С. 41-54.
27. Lawler, E.L. Efficient Implementation of Dynamic Programming Algorithms for Sequencing Problems / E.L. Lawler // CWI Technical report. Stichting Mathematisch Centrum. Mathematische Besliskunde-BW. - 1979. - V. 106, № 79. - P. 1-16.
28. Ченцов, A.L. Одна параллельная процедура построения функции Беллмана в обобщенной задаче курьера с внутренними работами / A.L. Ченцов // Автоматика и телемеханика. - 2012. - № 3. - С. 134-149.
29. Ченцов, A.L. Одна параллельная процедура построения функции Беллмана в обобщенной задаче курьера с внутренними работами / A.L. Ченцов // Вестник ЮУрРУ. Серия: Математическое моделирование и программирование. - 2012. - № 18 (277), вып. 12. -С. 44-52.
30. Ченцов, A.L. Динамическое программирование в задаче маршрутизации: схема независимых вычислений / A.L. Ченцов, A.M. Еригорьев // Мехатроника, автоматизация, управление. - 2016 - Т. 17, № 12. - С. 834-846.
31. Schmidt, G. Relations and Graphs: Discrete Mathematics for Computer Scientists / G. Schmidt, T. Strohlein // EATCS Monographs on Theoretical Computer Science. - N.Y.: Springer-Verlag, 1993.
32. Steiner, G. On the Complexity of Dynamic Programming for Sequencing Problems with Precedence Constraints / G. Steiner // Annals of Operations Research. - 1990. - V. 26, № 1. - P. 103-123.
Александр Реоргиевич Ченцов, член-корреспондент РАН, доктор физико-математических наук, профессор, главный научный сотрудник, Институт математики и механики им. H.H. Красовского УрО РАН; Уральский федеральный университет им. первого Президента России Б.Н. Ельцина (г. Екатеринбург, Российская Федерация), chentsov@imm .ur an .ru.
Алексей Михайлович Рригорьев, заведующий отделом, Институт математики и механики им. H.H. Красовского УрО РАН (г. Екатеринбург, Российская Федерация), [email protected].
Алексей Александрович Ченцов, кандидат физико-математических наук, научный сотрудник, Институт математики и механики им. H. Н. Красовского УрО РАН (г. Екатеринбург, Российская Федерация), [email protected].
Поступила в редакцию 23 ноября 2017 г.