MSC 90C90, 90C39
DOI: 10.14529/mmp150102
A MODEL OF "NONADDITIVE" ROUTING PROBLEM WHERE THE COSTS DEPEND ON THE SET OF PENDING TASKS
A.G. Chentsov, Krasovskii Institute of Mathematics and Mechanics, Ural Branch of the Russian Academy of Sciences; Ural Federal University Named after the First President of Russia B.N. Yeltsin, Yekaterinburg, Russian Federation, [email protected],
Ya.V. Salii, Krasovskii Institute of Mathematics and Mechanics, Ural Branch of the Russian Academy of Sciences; Ural Federal University Named after the First President of Russia B.N. Yeltsin, Yekaterinburg, Russian Federation, [email protected]
We consider a generalization of the bottleneck (minimax) routing problem. The problem is to successively visit a number of megalopolises, complicated by precedence of constraints imposed on the order of megalopolises visited and the fact that the cost functions (of movement between megalopolises and of interior tasks) may explicitly depend on the list of tasks that are not completed at the present time. The process of movement is considered to be a sequence of steps, which include the exterior movement to the respective megalopolis and the following completion of (essentially interior) jobs connected with the megalopolis. The quality of the whole process is represented by the maximum cost of steps it consists of; the problem is to minimize the mentioned criterion (which yields a minimax problem, usually referred to as a "bottleneck problem"). Optimal solutions, in the form of a route-track pair (a track, or trajectory, conforms to a specific instance of a tour over the megalopolises, which are numbered in accordance with the route; the latter is defined by the transposition of indices), are constructed through a "nonstandard" variant of the dynamic programming method, which allows to avoid the process of constructing of all the values of the Bellman function whenever precedence constraints are present.
Keywords: dynamic programming; route; precedence constraints; sequential ordering problem.
Introduction
The paper investigates the problem of sequentially walking through a set of megalopolises, where the cost is aggregated in a nonadditive way and the walk is restricted by precedence constraints. The cost functions, which measure the quality of the steps of the process, depend on the list of "pending" tasks. The mentioned dependence may arise in real-world problems connected with movement through a radiation field, for example, while dismantling ionizing radiation sources. Other applications are possible as well.
The obvious prototype of the considered problem is the well-known intractable [1] travelling salesman problem (TSP); see [2-4] et alia. Note papers [5,6] devoted to dynamic programming solutions of the "additive variety" of the TSP. Branch-and-bound methods (see [7]) and various approximate methods (see [4,8] et alia) are widely used.
In real-world applications, there exist problem statements conceptually resembling TSP, however, marked by peculiarities of a specific task; see [2]. Along with the most studied "additive" TSP and its analogs, problems with nonadditive cost aggregation are of interest; see [9,10] et alia. In particular, it is of interest to provide for dynamic programming
solutions of the mentioned "nonadditive" problems with constraints; our paper serves to continue the research in that direction for a more sophisticated bottleneck problem. We study a sequential process made of a finite number of steps; we optimize the cost of the most costly step, which leaves us with a minimax problem. In connection with this, let us consider a more substantive instance of the theoretical problem studied below.
Consider the following example of movement cost functions dependent on the list K of pending tasks: for given megalopolises Mk, k £ K, assume
exterior movement c(x, y, K) = p(x, y) + a(K) maxkeK p(y, Mk),
interior jobs Cj(x, y, K) = (p(x, a}) + p(a},y) + b(K) maxfc€K\{j} p(y, K \ {j})),
where p(-, •) is a metric (distance), and a(K) and b(K) are nonnegative functions. These cost functions reflect the demand to construct a route such that in case of an emergency call from some megalopolis that is not yet traversed it would be possible to arrive there as quickly as possible after completing of the current task. Such circumstances may arise in the operations of a repair brigade that conducts planned repairs of the objects (megalopolises) and - in case of an emergency - rescue and reconstruction; the task that is in process at the time of an emergency call is not forfeited because the costs associated with the deployment of the brigade on site (viz., megalopolis) are high, yet comparable with the losses associated with idle time of the object that has suffered an emergency.
1. General Notation and Definitions
We employ the standard set-theoretic notation (quantifiers, propositional connectives, etc.); symbol = denotes equality by definition. Each set, all elements of which are sets themselves, is called a family. For every two objects a and b, denote by (a; b} the (unique) set that contains a, b, and nothing else. In the case a = b, this yields a singleton (a} = {b}. If u and v are objects, then (u,v) = ((u}; (u; v}} [11, p. 67] is the ordered pair (OP), the first element of which is u and the second one is v. For an OP z, notation pri (z) denotes its first element and pr2(z) denotes its second element; these are uniquely defined by the condition z = (pr1(z),pr2(z)); in case z £ A x B, where A and B are sets, we have pr1(z) £ A and pr2(z) £ B. As usual [12, p. 17], for any three objects a, b, and c, we assume (a,b,c) = ((a,b),c), which yields the triple with the elements a, b, and c. For any three sets A, B, and C, we use the traditional [12, p. 17] convention A x B x C = (A x B) x C; it obviously means that (x,y) £ A x B x C Vx £ A x B Vy £ C .In connection with this, let us also recall the convention we would need later [13, p. 61], which concerns the notation for values of function of three variables: for sets A, B, C, and D, function h : A x B x C ^ D and elements p £ A x B and v £ C, in accordance with the above-mentioned representation of A x B x C, it is valid to consider the element h(p, v) £ D to be defined.
As usual, [0, = {£ £ R|0 ^ £} (R is the real line). For each nonempty set S, denote by R+ [S] the set of all (nonnegative) functions from S to [0, to [. As usual, N = (1; 2;...}. Assume N0 = (0} U N and pg = (i £ N0|(p ^ i)&(i ^ q)} Vp £ N0Vq £ N0.
For a nonempty finite set K, let |K| £ N denote the power of the set K; then, let (bi)[K] denote the set of all bisections of the "interval" 1, |K| onto K. In particular, for a fixed N £ N, let P = (bi) [1, N] be the set of all permutations of the "interval" 1, N; for each A £ P, there exists a permutation A-1 £ P such that A(A-1(fc)) = A-1(A(fc)) = k Vk £ 1, N.
Denote by P(H) (P'(H)) the family of all (all nonempty) subsets of set H; let Fin(H) be the family of all finite sets from P'(H).
2. Problem Statement
Here and below, fix a nonempty set X, a point x° £ X, which is called the base, a natural number N, N ^ 2, sets Mj^ £ Fin X,... , MN £ Fin X, referred to as megalopolises, and relations
Mi £ P'(Mi x Mi),...,MN £ P'(Mn x MN). (2.1)
For j £ 1,N, OP z £ Mj describes the possible ways of conducting the interior jobs inside the megalopolis Mj: pr1(z) determines the entry point and pr2(z) determines the exit point. We study the issue of organizing of a system of movements
(x°) — (pri(z(1)) £ Ma(i) - pr2(z(1)) £ Ma(i)) —
— (pri(z(2)) £ Ma(2) - pr2(z(2)) £ Ma(2)) — (2 2) —>........................—>
— (pri(z(N)) £ Ma(N) - pr2(z(N)) £ Ma(N)),
where a is a permutation of indices from 1, N and OPs z(i),... , z(N) satisfy the conditions
z(i) £ Ma(i), . . . , z(N) £ Ma(N). (2.3)
In (2.2), we choose the permutation a, in our terms, the route, and a tuple (z(i),... , z(N)) that agrees with the route in the sense of (2.3); this tuple is called a track. Let us stress that the choice of a may be restricted by precedence constraints, which would be introduced below. Let us hereinafter assume
(x0 £ Mj Vj £ 1, N)&(Mp n Mq = 0 Vp £ 1, N Vq £ 1, N \ {p}). (2.4)
Conditions (2.4) are relatively common in applications, see [13, Pt. 1,2]. In connection with (2.1), let us make the following conventions:
Mj = {pr2(z) : z £ Mj} Vj £ 1, N. (2.5)
In terms of megalopolises and sets (2.5), let us introduce two nonempty finite subsets of
X: n n
X 4 {x°}U f U M^ , X 4 {x0}^ U Mi); (2.6)
clearly, X C X. To define precedence constraints, let us first introduce the set K £ P(1,N x 1,N) and call its elements address pairs. In an address pair h £ K, the first element pri(h) £ 1,N is called a sender, and the second one pr2(h) £ 1,N is called a receiver. The essence of precedence constraints is that for each pair the sender must be visited before the receiver. The case K = 0 is not excluded and corresponds to lack of precedence constraints.
Recall that P = (bi)[1,N] is the set of all (complete) routes; it is a nonempty set of cardinality |P| = N!. Clearly [13, Pt. 2],
A 4 j a £ P|a-i( pri (h)) < a-i( p^(h)) Vh £ k} (2.7)
is the set of all routes from P that are feasible in the sense of precedence. Let us assume
VKo G P'(K) 3zc G Ko : pri(zo) = pr2(z) Vz G Kq. (2.8)
Assumption (2.8) implies that, in particular, pr1(z) = pr2(z) Vz G K. It also implies [13, Pt. 2] that A = 0 and, consequently, A G P'(P). Clearly, A is the set of all routes a G P such that
(pri(z) = a(ti))&(pr2(z) = a^))) ^ (¿i < ¿2)
for an address pair z G K and "times" t1 G 1, N and t2 G 1, N. In addition to the route, we also choose the track, or trajectory, which is determined in the sense (2.2) by the OPs z(1),... , z(N), supplemented with the initial OP (x0, x0). To formally define the set of tracks that agree with some route in the sense of (2.2), denote by Z the set of all tuples (zi)jeorN : 0, N ^ X x X. For a G P, assume
Za = Ыда G Z| (z0 = (x°,x°))&(zt G Ma(t) Vt G 1,N) ; (2.9)
evidently, Za G Fin(Z). On the set X x X x N, where N = P'(1, N) (we call an element of N a task list or just a list), we consider N +1 cost functions
c G R+(X x X x N), ci G R+(X x X x N),...,cw G R+(X x X x N).
For a G P and (zj)jeo-N G assume
Ca [(zi)i€o-^] = max ieo,N-i
c(pr2(zt), pri(zt+i), {a(s) : s G t + 1, N}) +
_ , (2.10)
+ Ca(i+i)(zi+i, {a(s) : s G t + 1, N})
We consider (2.10) a criterion of the quality for a solution (a, (zj)jeo-N) (see (2.2)). Since our choice of the route is restricted by precedence, let feasible solutions (FS) be the OPs (a, (zj)jeo-N), a G A, (zj)jeo-N G From the mentioned properties A = 0 and Za G Fin(Z) for a G A, we know that FSs form a nonempty finite set. We can now consider the problem
Ca [(^¿go-w] ^ min,a G A, (zi)ieo-N G (2.11)
To this problem, we assign its value (its extremum)
V 4 min min Ca l»^] G [0, (2.12)
agA gZa
and a nonempty set of optimal FS; an FS (a0, (zQ)jeo-N), a0 G A, (z0)jgo-N G Zao, is considered optimal for problem (2.11) if Cao [(zQ)jeQ-^] = V.
Let us explore the idea of problem (2.11). Process (2.2) is a number of steps, and at each of them the "system" suffers harmful effects. The latter occur both throughout
exterior movements and interior jobs (which take place inside megalopolises). Those steps
are
x0 -
(z(1) G Mad)), pr2(z(1)) - (z(2) G Me(2)),..., pr2(z(N-1)) - (z(N) G Ma(N) ) (2.13)
(obviously, (2.13) pertains to the case of N > 3). At the end of each step, all harmful effects suffered throughout it are "reset": the system is "decontaminated". It is considered to be important for the doses suffered at each step to not exceed the given threshold connected with the normal operation of the "system".
The objective of movements (2.13) is to "turn off" the sources of harmful effects. In case of movement through radiation fields it may consist of sequential dismantlement of ionizing radiation sources (read disaster cleanup operations similar to those carried out in Chernobyl or Fukushima). Such circumstances may arise when dismantling a decommissioned nuclear power unit if the process is carried out by a special robot that should first of all "survive" to complete the dismantlement of all radiation sources.
3. Extension of the Full Problem and the Dynamic Programming Method
In this section, following [14] and (conceptually) [13, § 4.9], let us consider a natural extension of problem (2.11), which would serve as a base for the necessary version of dynamic programming; the constructions are intentionally abridged. For K G N, let S[K] = jz G K |(pri(z) G K)&(pr2(z) G K)}. Based on this, define the mapping I on N by the rule
I(K) = K \ {pr2(z) : z G £[X]} VK G N. (3.1)
Condition (2.8) directly implies that £[{t}] = 0 for t G 1,N; consequently, I({t}) = {t}. In terms of I (3.1), define the partial routes that are feasible in the sense of a crossing-out operation connected with I: For K G N, let
(I - bi)[K] 4 J a G (bi)[K] |a(s) G I({a(t) : t G s, |K| }) Vs G 1, |K|
a G (bi)[K] |a(s) G I(K \ (a(t) : t G 1, s - 1}) Vs G 1, |K| ^ = (3.2)
a G (bi)[K] |(a(1) G I(K))&(a(s) G I(K \ {a(i) : t G 1,s - l})Vs G 2, |KQ j;
we assume 1, 0 = 0 (for p G No, q G No, and q < p, we generally have p, q = 0; see Section 1). Using properties stated in [13, Pt. 2], in particular, we obtain
A = (I - bi)[1,N] =
= ja G P| (a(1) G I(I,N))&(a(s) G I(I,N \ (a(t) : t G 1,s - 1}) Vs G 2,N^ (3.3)
It is a special case of (3.2) that corresponds to the main, i.e., "full" problem. Returning to (3.2), let us note (see [13], [14]) that (I - bi)[K] = 0 VK G N. Thus, crossing-out feasible partial routes do exist.
Let us now define a partial track. For K G N, let ZK be the set of all tuples (zj)ie0-|K[ :
0, |K| ^ X x X; if, in addition, x G X and a G (bi)[K], let
Z(x,K,a) - j(z^^ G Zk |(zo = (x,x))&(zt G Ma(i) Vt G 1, |K|) J G Fin(ZK). (3.4)
In view of the definitions just given, define the partial (shortened) quality criterions: if x G X, K G N, a G (bi)[K], and (zi)ieo"|K| G Z(x,K,a), let
[(zi)ieoTK^] - max c( Pr2(zt), pri(zt+i)^a(s) : s G i + 1, |K+
te0'|K|-1 L V _ ^ (3.5)
+ ca(t+i) (zt+i, {a(s) : s G t + 1, |K|
In terms of (3.5), we define partial routing problems (roughly speaking, subproblems): for x G X and K G N, the problem is
ieojK^] ^ min,a G (I - bi)[K], (zi)ie07iK| G Z(x,K,a). (3.6)
Recall that (see, in particular, (3.4)) constraints of each and every problem (3.6) are consistent; each problem has its value (its extremum)
v(x,K) - ( ) min K ) [(zi)ieo;^] G [0, (3.7)
and a nonempty set of optimal solutions. For x G X and K G N, FS
(a*' (z*)ie07^) , a* G A (zt*)ieo7|K| G Z(x,K,a+)
is optimal in some problem (3.6) if Ca ) [(zi*)ieo7[K^] = v(x, K).
Note that in (3.6) and (3.7) we may as well assume x = x0 and K = 1, N. For a G P (which means a G (bi)[1, N]), by (2.9) and (3.4), we obtain the equality
Za = Z(x°, 1, N, a) (3.8)
(note that Z = Z^). Moreover, A = (I - bi)[1,N] (see [13, Pt. 2]). Then, by (2.12),(3.7), and (3.8), we have the equality
V = v(x0,1,N). (3.9)
In connection with (3.9), note the obvious consequence of (2.10) and (3.5): for a G P and (zi)ie07N G Za, we have £« [(zi)ie07^] = [(zi)ie07^], where we also take into account (3.8). Set v (x, 0) - 0 Vx G X. Thus, we have defined the Bellman function
v : X xP(1, N) ^ [0, (3.10) Theorem 1. For x G X and K G N, we have the equality
v(x, K) = т1П) miri sup ^ |c(x, pri(z), K) + Cj (z, K); v( pr2(z), K \ {j I) • (3.11)
Proof. Fix x £ X and K £ N; then, n = |K| £ 1, N and (n =1) V (n £ 2, N). These cases are examined separately.
1) In case n = 1, we have the equality K = {t} for a certain t £ 1, N; consequently, I(K) = {t}. Further reasoning is essentially obvious (in the case of n = 1); it leads to the conclusion that
(n =1) ^ v(x, K)
mm mm:
jei(K) zeMj
in su^ jc(x, pri(z),K) + Cj (z,K); v( pr2(z),K \ {j })}^ j.
(3.12)
2) Let n £ 2, N. Then, n - 1 £ 1, N - 1, K \ {j} £ N, and
|K \{j}| = n - 1 Vj £ I(K).
By (3.7) and (3.13), we have the following equalities:
v(Pr2(z), K \{j9 = mm
min
CK\{j} [(zi)i€0,n-i]
(3.13)
ae(I-bl)[K\{j}](zi)i6o;n-TeZ(pr2(z),K\{j},a) " ■--'■ (3.14)
Vj £ I(K) Vz £ Mj.
This system of equalities is used in the two constructions that follow.
2') In view of (3.7), pick a0 £ (I — bi)[K] and (z0)ie0"ra £ Z(x,K, a0) such that
v(x, K) = cKa0)[(z0)ie0rn]-In connection with (3.15), note that
CK0) [(z? W] = sup c(x;pri(z0),K) + c«o (i)(z0,K);
max tei,n-i
(pr2(zt0), pri(z°+i), {a0(s) : s £ t + 1,n}) +
+ cao(t+i) (z°+i, {a0(s) : s £ t + 1, n})
(3.15)
(3.16)
It is of use to remark that a0(1) £ I(K) and z° £ Mao(i). Then,
min min
jei(K) zeMj
in su^ {c(x pri(z),K) + cj(z,K); v(pr2(z), K \ {j})}^) ^ ^ sup(|c(x, pri(z0), K) + cao(i)(z0, K); v(pr2(z0),K)}^ , where K = K \ {a0(1)}. Expression (3.14) now yields the following equality:
v(pr2(z0),
min
min
ae(I-bl)[K] (zi)i6o;n-TeZ(pr2(z0),K,a)
CK ) [(zi)i€0,n-1] •
(3.17)
(3.18)
Note that since |K| = n, we have a0 : 1,n : K (a0 is surjective), thus a0(t + 1) £ K for t £ 1,n — 1. Moreover, since a0 is injective, a0(1) = a0(t) Vt £ 2,n. Then, a0(1) =
c
a0(t + 1) Vt G 1,n — 1. Finally, a0 = (a0(t + 1))tg1 n-1 maps 1,n — 1 onto K, i.e., a0 : 1, n — 1 : K. Moreover, in view of [15, Proposition 3],
ao G (I — bi)[K].
According to (3.4), (z°)ieôrâ G and, in addition,
(3.19)
(z°° = (x,x))&(z° G M«o(t) Vt G
(3.20)
Then, pr2(z°) G X and hence, in view of (3.4) and (3.19) and the equality |K| = n — 1, we have
Z(pr2(z°),к,а°) = {(^);е°П-Т G zk |(z° = (pr2(z °),pr2(z ° &zt G Mao(t) vt G 1,n - 1)}.
(3.21)
Consider a tuple (-z°)tg°!n- 1 :0,n — 1 ^ X x X defined in the following way:
Z°° = ( pr2(z 0), pr2(z 0))) &(Z° ^ z0+ i Vt G im-l) . Since |K| = n — 1, taking into account (3.21) and (3.22), we obtain
(Zt )t£°,n-i G Z( pr2(z°), K,a°). From (3.18), (3.19), and (3.23), it follows that
(3.22)
(3.23)
;(pr2(z°), K) ^ CKa0) [Czg?)ieô-n=r] = ma^ c(p^f), pri(z°+i ), {a°(s) :
te°,ra-2 L 4
s G t + 1,n - 1}) + Cao(t+1 ) (z°+ 1, {a°(s) : s G t + 1,n - 1})
(3.24)
Since {a°(s) : s G t + 1,n — 1} = {a°(s + 1) : s G t + 1,n — 1} = {a°(1) : l G t + 2,n}, the expression in the right-hand side of (3.24) takes the form
CT [(z° )teô,n-î] = max_
t€°,n-2
(pr2(z°), pri(z°+i), {a°(l) : l G t + 2,n}) + +c«o(t+2)(zf+i, {a°(l) : l G t + 2, n})
(3.25)
Expression (3.25) implies the following obvious property:
cKa0) [&°)«=°П-т] = c(pr2(z°+i),pri(z°+2), {a°(l): l G t + 2,n}) +
c(pr2(z°), pri(z°+i), {a°(l):
te°,n-2
+c«0(t+2) (zf+2, {a°(l) : l G t + 2,n})
max 0€l,n-1
(3.26)
l G 6 + 1, n}) + zO+1, {a0(l) : l G 6 + 1, n})
From (3.24) and (3.26), we obtain the estimate
v(pr2(z°),K) ^ m_aL c(p^), pri(z°+i), {a°(l) : l G в + 1,n}) +
0ei,n-i L
+c«0(0+i) (z°+i, {a°(l) : l G в + 1,n})
(3.27)
c
From (3.17) and (3.27), we have
miniei(K) minzgMj sup ^|c(x, pri(z),K) + Cj(z,K); v(pr2(z),K \ (j))}^
^ sup ^|c(:xpri(z°),K) + Cao(i)(z0,K);maxie^-I ]c(pr2(z°),p^Z+i^ (a°(1) : l G t + 1,n)) + cao(t+i) (z°+i, (a°(1) : l G t + 1,n))
(3.28)
Expressions (3.16) and (3.28) yield the inequality mm min sup c(x, pri(z), K) + c,(z, K); v( pr2(z), K \ {j})}) ^ £<f) [(zfW] • (3.29) From (3.15) and (3.29), we obtain the estimate
min) min sup ^|c(x, pr1(z), K) + Cj(z, K); v(pr2(z), K \ {j Choose and fix an index q and its OP of entry and exit points z
^ v(x,K). (3.30)
q G I(K), z G Mq,
(3.31)
(3.32)
such that
sup ^|c(x, pri(z),K) + Cq(z, K); v( p^(z),K \ (q))}^ =
min min sup I |c(x, pri(z),K) + Cj(z,K); v(pr2(z),K \ ei(K) zeMj y I v
jei(n) zeMj For brevity, set
(3.33)
Q = K\(q).
(3.34)
Expression (3.31) implies that, in particular, q G K, whence (see (3.34)) |Q| = n — 1 ^ 1. From (3.33) and (3.34) it follows that
sup ^|c(x, pri(z), K) + Cq(z, K); v( p^(z),Q) j^j =
= min min sup ( \ c(x, pr1(z),K) + c,(z,K); vipr2(z),K \ jei(n) zeMj z^v-fv/'
From (3.32), we now obtain
pr2(z) G Mq
and, in particular, pr2(z) G X; see (2.6),(3.36). Then,
(pr2(z),Q) G X x N. Thus, according to (3.7) and (3.37),
v (pr2 (z),Q)= min min . [^ieoH-i];
(3.35)
(3.36)
(3.37)
(3.38)
here, in view of (3.5), we have the equalities
C
(a) Q
(Zi)
ieo,n-i
= max
(pr2(zt), pri(zi+i), {a(s) : s G t + 1,n - 1}) +
tg0,ra-2
+ ca(t+i) (zt+i, {a(s) : s G t + 1, n - 1}) Va G (I - bi)[Q] V(zj)jeo-n^ G Z(pr2(z),Q,a).
In accordance with (3.38), let us choose and fix a route ft and a track (hj)jg0-ra-i
ft G (I - bi)[Q], ^igo-n-T G Z(pr2(z) , ft) ,
such that
v(pr2(z),Q) = Cq [(hi)i,o^]: where (see (3.39),(3.40),(3.41))
C
(в) Q
(hi)
¿eo,n-i
max
ig0,ra-2
С
(pr2(ht),pri(ht+i), {в(s) : s G t + 1,n - 1}) +
.Î+1, {в(s) : s G t + 1,n - 1})
From (3.42) and (3.43), we obtain the following equality
v(pr2(z),Q)= max c(pr2(ht), pri(ht+i), {ft(s) : s G t + 1,n - 1}) +
tg0,ra-2
.t+i, {в(s) : s G t + 1,n - 1})
Expressions (3.33), (3.35), and (3.44) imply that
min min !
jei(K) zeMj
sup ^|c(x, pri(z),K) + Cj(z,K); v(pr2(z),K \ {j
= sup I ]c(x, pri(z), K) + Cq(z, K); max c(pr2(ht), pri(ht+i), \ l teo,n-2 L
{в(s) : s G t + 1,n - 1}) + ce(t+i) (ht+i, {e(s) : s G t + 1,n - 1})
(3.39)
(3.40)
(3.41)
(3.42)
(3.43)
(3.44)
(3.45)
Note that q G K and, moreover (see (3.34),(3.40)), ft(j) G K Vj G 1,n - 1. In view of that, let us introduce a mapping
A (3.46)
в : 1,n ^ K,
defined by the following conditions:
(/3(1) А q) & (/(J ) А - 1) Vj G 2,n).
(3.47)
Let us show that ft G (bi)[K]. To this end, let us start by noticing that, since ft maps 1,n - 1 onto Q, we have Vj G Q 3s G 2,n : j = ft(j). In view of (3.34) and (3.47), we obtain K C {ft(/) : I G 1,n}, i.e., K = {ft(/) : I G 1,n} (we also took into account (3.46)).
c
Thus, / is (see (3.46)) a surjection of 1,n onto K. Let us check the injectivity of / Fix indices j* £ 1, n and j* £ 1, n such that
/3(j*) = /5(j *). (3.48)
Let v = /(j*). Then, v £ K and /(j*) = v. The two cases below are mutually exclusive:
(v = q) V (v £ Q). (3.49)
a) Let v = q. Since in view of (3.37), (3.40), and (3.47) we have /(j) £ Q for j £ 2, n, we now see that /?(/) = q V/ £ 2, n. As /3(j*) = /(j*) = q in the considered case, we obtain j* = 1 = j*. We proved that
(v = q) =( (j* = j*). (3.50)
b) Let v £ Q. Note that in this case (/3(j*) £ Q)&(/(j*) £ Q). We can therefore conclude from (3.34) and (3.47) that j* = 1 and j * = 1. Then, (j* £ 2^) &( j * £ 2,n) and hence (see (3.48)) /(j* - 1) = /j = /3(j*) = /(j* - 1); since / is injective (see (3.40)), j* = j*. Thus, (v £ Q) ^ (j* = j*). Taking into account (3.49) and (3.50), we obtain the equality j* = j* for all cases. Thus (see (3.48)), (/3(j*) = /(j*)) ^ (j* = j*)• Since the choice of j* and j * was arbitrary, we have proved the injectivity of /, whence, finally,
/ £ (bi)[K], (3.51)
i.e., / is a partial route. Let us prove that it is crossing-out feasible:
/ £ (I - bi)[K]. (3.52)
Indeed, let 7 £ 1,n (recall that |K| = n); consider the set r = (/3(i) : t £ 7, n}. The two following cases are mutually exclusive:
(7 = 1) V (y G 2, n). (3.53)
a') Firstly, let y =1. Then, y, n = 1,n and, by virtue of surjectivity of /3, we have r = {/(t) : t G 1,n} = K; hence, in view of (3.31), q G I(r) and, according to (3.47), /3(1) G I(r), where /3(1) = /3(y). Thus, we have proved the implication
(Y =1) ^ (/3(Y) G I(r)). (3.54)
b') Now, let y £ 2, n. Then, 7 — 1 £ 1, n — 1. Therefore, we can consider the index
/%)= /(7 - 1) £ Q (3.55) (see (3.40)). Then, according to (3.2), (3.40), and (3.55),
/3(y) £ I({/(t) : t £ 7 - 1,n - 1}). (3.56) Let us introduce the set
r = (/(t) : t £ 7 - 1,n - 1} £ P'(Q). (3.57)
Show that r = r0. Indeed, let y* G r and let t* G 7, n be such that
y* = /3(t*). (3.58)
Then, since 2 ^ 7, we also know that t* G 2,n, t* — 1 G 1,n — 1, and /(t*) = /(t* — 1), i.e., y* = /(t* — 1) in view of (3.58). On the other hand, we chose t* such that t* — 1 G 7 — 1,n — 1, whence (see (3.57)) /(t* — 1) G r0 and, therefore, y* G T0. Since the choice of y* was arbitrary, we have found out that
r C r. (3.59)
Now, let yo G ro and let to G Y — 1, n — 1 implement the equality
yo = £ (to). (3.60) In addition, to + 1 G 7, n and, by definition of r, we have the inclusion
/(to + 1) G r. (3.61)
In addition to this, 2 ^ 7 ^ to + 1 and, therefore, to + 1 G 2,n, hence (see (3.47)) /(to + 1) = £(to) and, by (3.60), yo = /(to + 1); therefore, (3.61) implies that yo G r. Since the choice of yo was arbitrary, we have proven that ro C r, and hence, in view of (3.59), we obtain the desired
r = ro, (3.62)
where, in accordance with (3.56) and (3.57), we have the inclusion /3(7) G I(ro), which means (see (3.62)) that /(7) G I(r) for 7 G 2,n as well. Thus, we have proven the implication (7 G 2, n) ^ (//(7) G I(r)). In view of (3.53) and (3.54), we have the inclusion ,/(7) G I(r) in all possible cases, i.e., /5(7) G I({/(t) : t G 7, n}). Since the choice of 7 was arbitrary, we have proven that
/(s) G I({/(t) : t G sTn}) Vs G T~râ. (3.63)
From (3.51) and (3.63), we obtain (see (3.2)) the desired property (3.52), i.e., now / G (I — bi)[K]. Note that (3.4) and (3.41) imply that (hi)ieo;n=T G ZQ, i.e.,
(hi)ie07n-I : 0, n — 1 ^ X x X. (3.64)
According to (3.4) and (3.41),
(h0 = (pr2(z), p^z)))&(ht G M^(t) Vt G 1,n — 1). (3.65)
Note that from (3.65) we have the OPs
ht_i G M^(t_i) Vt G 2, n. (3.66)
We also have (see (3.47),(3.66)) the following property:
ht-1 G Me(t) Vt G 2,n. (3.67)
Note that 1, n = {1} U 2, n and 0, n = {0} U 1, n = {0} U {1} U 2, n. In view of (3.64), we may now consider a tuple (ht)te0-n : 0, n ^ X x X defined by conditions
(h0 = (x, x))& (hi = z) & (ht = ht-i Vt £ 2^). (3.68)
Clearly (since n = |K|),
(hi)ie0n £ zk•
(3.69)
Then, (3.32) and (3.68) imply that hi £ Mq, whence, taking into account (3.47), we obtain
hi £ M
(3.70)
Then, (3.4) and (3.41) imply that ht £ M/(t) Vt £ 1,n — 1. Then, expression (3.68), yields ht £ M/(t-i) Vt £ 2,n. Using (3.47), we conclude that ht £ M/(t) Vt £ 2,n. In view of (3.70) and the last property, we obtain the system of inclusions
ht £ M/(t) Vt £ I7n.
From (3.68), (3.69), and (3.71), we conclude that
(ht)te0n £ Zk : (h0 = (x,x))&(ht £ M/w Vt £
But in this case, (3.4) and (3.72) imply that
(&tW £ Z(x, K, /).
(3.71)
(3.72)
(3.73)
In accordance with (3.52) and (3.73), we see that the OP (/, (ht)te0-n) is an FS of the considered partial problem, therefore (see (3.7)),
v(x, K) ^ Cf [(ht)te0n In view of (3.5),(3.52), and (3.73), we have
(3.74)
C
K
(ht)ie0,n
= max
i€0,n-i
:(pr2(ht),pri(ht+i), {/(s) : s £ t + 1,n})
+c/(t+iJht+i, {/(s) : s £ t + 1, n}) £ [0,
(3.75)
Consequently, from (3.68) and (3.75), we conclude that
C
K
(ht)i€0ra = suP ( 1 c(xp^i^ {/(s): s £ 1,n}) + c/?(i^{/(s): s £ 1,n});
max
iei,n-i
(pr2(ht),pri(ht+i), {/(s) : s £ t + 1,n}) + c/3(t+i^ht+i, {/(s) : s £ t + 1,n})
In view of n = |K|, expression (3.51) yields {/(s) : s £ 1, n} = K. Using that, from (3.46), (3.68), (3.74), and (3.75), we obtain the inequality
(3.76)
v(x,K) ^ sup I <c(x, pri(z),K + cq (z, K); max c( p^ht), pri(ht+i),
\ L iei,n-i L
{/3(s) : s £ t + 1,n}) + c/(t+i) (ht+i, {/3(s) : s £ t + 1,n})
c
Consider the transformation of the expression
:(pr2(ht), pri(hi+i), |/§(s): s G t + 1,n}) +сд(4+1) (ht+i, №): s G t + 1,n})l G [0,
max
t€1,n-1
To this end, note that, according to (3.68),
c(pr2(h1),pr1(h2), (/(s) : s £ 2^}) = c(pr2(z),pr1(h1), (/(s) : s £ 2^}). (3.77)
However, (3.65) implies that pr2(z) = pr2(h0). Then, (3.77) yields the equality
c(pr2(h1),pr1(h2), (/(s) : s £ 2,n}) = c(pr2(h0),pr1(h1), (/(s) : s £ 2^}). (3.78)
Moreover, (3.65) implies that (see (3.47)) c^ (h2, (/3(s) : s £ 2,n}) = h1, (/(s) : s £ 2,n}). Taking into account (3.78), we obtain
c(pr2(h1),pr1(h2), (/(s) : s £ 2^}) + c/(2)(h2, (/(s) : s £ 2^}) = = c( pr2(h0), pr1(h1), (/(s) : s £ 2^}) + c/(1)(hb (/(s) : s £ 2^}).
This equality can be transformed into the following expression: if t £ 1, n - 1, then, for t = 1,
c( pr2 (ht) , pr1(ht+1), (/3(s) : s £ t + 1,n}) + c/j(t+1)( ht+^ (/3(s) : s £ t + 1,n}) =
^ __^ _ (3.79)
= c(pr2(ht-1), pr1(ht), (/3(s) : s £ t + 1,n}) + c/(t) (ht, (/(s) : s £ t + 1,n}).
(3.82)
Choose arbitrary т G 2,n — 1. Then, т — 1 G 1,n — 2 and т +1 G 3,n. From (3.47), we now have, in particular,
в(т +1)= в(т) G K. (3.80)
Then, (3.68) implies the following representations:
(hT = hT-1)&(hT+1 = hT). (3.81)
Thus (see (3.80),(3.81)) we obtain
c( pr2(h,T), pri(hT+i), |/3(s) : s G т + 1, n}) + c/j(T+1^h(+i, |/3(s) : s G т + 1,n}) = = c(pr2(hr-i), pri(h,T), |/3(s) : s G т + 1, n}) + Ce(T^hr, |/3(s) : s G т + 1,n}).
Since the choice of т was arbitrary, we proved that
c(pr2(ht), pri(ht+i), |/3(s) : s G t + 1,n}) + Cg(m) (ht+i, |/3(s) : s G t + 1,n}) = c(pr2(ht-i),pri(ht), |/3(s) : s G iTW) + (3.83)
+ c^t) (ht, |/3(s) : s G t + 1,n}) Vt G 2, n — 1.
From (3.79) and (3.83), we conclude that
c(pr2(ht),pri(ht+i), |/3(s) : s G t + 1,n}) +Сд(т)(ht+i, |/3(s) : s G t + 1,n}) = = c(pr2(ht-i), pri(ht), |/3(s) : s G ¿TW) + (3.84)
+ce(t) (ht, |/3(s) : s G t + 1, n}) Vt G 1, n — 1.
Вестник ЮУрГУ. Серия «Математическое моделирование 37
и программирование» (Вестник ЮУрГУ ММП). 2015. Т. 8, № 1. С. 24-45
Let us now consider the set {/(s) : s G t* + 1,n} for t* G 1,n — 1. Then, for s G t* + 1,n, we have s G 2,n, whence (see (3.47)) /(s) = /(s — 1), where s — 1 G t*,n — 1. In particular, we have s — 1 G 1, n — 1 Vs G t* + 1,n. Thus (see(3.40)) we may define the indices
/(s — 1) G Q Vs G t* + 1, n. (3.85)
Therefore, we have the set {/(s — 1) : s G t* + 1,n} G P'(Q); recall that t* + 1 ^ n. Returning to (3.85), note that t*,n — 1 is a nonempty subset of 1,n — 1 (by the choice of t*), thus /(/) G Q V/ G t*,n — 1. Therefore, we also have the set B = {/(/) : / G t*, n — 1} G P'(Q) and the set B = {/(/) : / G t* + 1, n} G P'(K). In any case, B and B are not empty. Let us prove that they are identical. Let p G B. Then, p G Q and, for a certain /* G t*, n — 1,
p = /(/*). (3.86)
Then, 1* G 1, n — 1, 1* = 1* + 1 G 2, n and, according to (3.46), /3(1*) G K; however, (3.47) implies that /(/*) = /(/* - 1) = /(/*) = p. Nevertheless, 1* G t + 1, n, whence /(1*) G B. Thus p G B, which completes the testing of the inclusion
B C B. (3.87)
Now, let p G B. Then, p G K and, for a certain G t* + 1, n, we have the equality
p = /(£). (3.88)
In particular, /* G 2,n, 1* = /* — 1 G 1,n — 1 and, according to (3.47), p = /(/*) = /(1* — 1) = /(1*). However, by the choice of /*, we have 1* = 1* — 1 G t^, n — 1, whence (see (3.88)) p = /(?) G B. We established the inclusion
B C B. (3.89)
In view of (3.87) and (3.89), we obtain the desired equality
B = B. (3.90)
In other words, (3.90) implies that {/(s) : s G t* + 1,n} = {/(/) : / G t*,n — 1}. Since the choice of t* was arbitrary, we have established that {/(s) : s G t + 1,n} = {/(/) : / G t, n — 1} Vt G 1, n — 1. But in this case, (3.84) implies that
c(pr2(ht), pri(ht+i), {/(s) : s G t + 1,n}) + Cg(i+1) (ht+i, {/(s) : s G t + 1,n}) = c(pr2(ht-i), pri(ht), {/(/) : / G t,n — 1}) + c^)(ht, {/(/) : / G t,n — 1}) Vt G 1,n — 1.
In view of that, we have the following equality:
max c(pr2(ht), pri(ht+i), {/(s) : s G t + 1,n}) + %m) (ht+i, {/(s) :
tei,n-i L * > ^
s G t + 1,n})l = max [c(pr2(h?),pri(hi+i), {/(/): / G £ + 1,n — 1})+ (3.91) -I ?e0,ra-2 L
+ c^(?+i) (h?+i, {/(/) : / G £ + 1,n — 1})
max tei,n-i
= с(в) = CQ
From (3.43) and (3.91), we have
c(pr2(ht), pri(ht+i), {/(s) : s G t + 1,n}) + Cg(i+1) (hi+i, {/(s) : s G t + 1,n})
(hi)ie0,n-1
Then, (3.76) implies the estimate v(x,K) ^ sup ^|c(x,pr1(z),K) + cq(z,K); CqP [(hi)ig0ra-^^^, whence, in its own turn, we obtain, in view of (3.42), the inequality
v(x, K) ^ sup ({c(x,pri(z), K) + Cq(z, K); v(pr2(z), Q)}). (3.92)
Now, taking into account (3.35), we obtain
v(x,K) ^ min^ mM sup ^|c(x,pr1(z),K) + Cj(z,K); v(pr2(z),K \ {j}) j(3.93)
From (3.30) and (3.93), we get the desired equality
v(x,K)= min min sup ( \ c(x, pr1(z),K) + Cj(z,K); v(pr2(z),K \ jei(K) zeMi VI
for the case of n G 2, N. In other words,
n G 2,N ^
v(x,K)= min min sup I lc(x, pr1(z),K) + c7-(z,K); v(pr2(z),K \ {j}) > ) ).
jei(K) zeMj \ I 4
In view of (3.12), we have equality (3.11) in all possible cases. From (3.9) and Theorem 1, it follows that
□
V = min min sup ( \ c(x0, pr1(z), 1, N) + c7-(z, 1, N); v(pr2(z), 1, N \ {j}H ). (3 94)
j'ei(i,N ) zeMj M v 4J K ' J
4. Economical Dynamic Programming
In this section, we use the construction from [16], which stems from constructions of [13, §4.9]; however, in [13] and [16], the criterion was additive, whence the need to adapt the mentioned construction of [16] to the problem considered in this paper. Following [13,16], let us introduce the family
G — {K G N | Vz G K (pn(z) G K) ^ (pr2(z) G K)}, (4.1)
elements of which (finite subsets of 1,N) are called feasible (task) lists. Assume Gs —
|k G G | s = |K|| Vs G 1, N. The tuple (Gs)seTN evidently defines an (ordered) partition
of G (4.1). Under this partition, GN = {1,N} (the singleton reflecting the complete task list) and G1 = {{t} : t G 1, N \ {K^j, where K1 = { pr1(z) : z G K}; thus, G1 contains singletons corresponding to "nonsenders". In addition,
Gs-1 = {K \{t} : K G G I(K)} Vs G 2,N; (4.2)
see [16].
In view of (4.2), we obtain the recurrence relation GN —► GN-1 —> • • • —> G1; which provides for construction of family (4.1) (recall that GN is known). It is also known [16] that Gs = 0 Vs G T^N. If s G 1,N - 1 and K G Gs, then [16], in terms of the set
JS(K) 4 {j g l^N \ K | {j} U K G Gs+i} G P'(ITN \ K), (4.3)
construct Ms[K] in the form of union of all Mj, j G Js(K); let us also construct a cell Ds[K] = {(x,K) : x G Ms[K]} of the position space. Then, as in [16], assume
Ds = |J Ds [K] G P'(X x Gs) Vs G 1, N - 1; (4.4)
we have defined (intermediate) layers of the position space. Let us also define the two (nonempty) "border" layers: D0 = {(x, 0) : x G M}, where M is the union of all the
sets Mj, j G 1,N \ K1 and DN = {(x0,1,N)} (the singleton that contains the position
(x0, 1, N)). The tuple (Ds)seo~N possesses the following important property (see [13, §4.9]):
(y, K \ {fc}) G Ds-1 Vs G VK G Gs Vk G I(K) Vy G Mfc• (4.5)
In connection with (4.5), recall that, according to (2.5), pr2(z) G Mk Vk G 1, N Vz G Mk. In addition, (4.4) implies that, for s G 1,N — 1 and (x, K) G Ds, we definitely have K G Gs (by definition of cells of the space of positions); in case (x,K) G DN, we have K = G . Thus, K G Gs Vs G V(x,K) G Ds. Taking into account (4.5), we consequently obtain the property
(pr2(z),K \{k}) G Ds-1 Vs G V(x, K) G Ds Vk G I(K) Vz G Mfc. (4.6)
Now, bearing in mind the fact that D0 G P'(XxP(1,N)) 1D± G P'(XxP(1,N)), ..., and DN G P ' (X x P (1, N )) (we also have to consider N CP (1, N )), we define the restrictions of the Bellman function onto the layers of the space of positions. Namely, for s G 0, N, we assume vs G R+[Ds] to be a function such that vs(x, K) 4 v(x, K) V(x, K) G Ds. Property (4.6) now implies that, for s G 1,N and (x,K) G Ds, we have vs-1(pr2(h),K \ {k}) G [0, œ[ Vk G I(K) Vh G Mk; hence, we can determine the value
min) mm sup ^|c(x, pr1(z), K) + Cj(z, K); vs-1(pr2(z), K \ {j}) j) G [0,
Now, Theorem 1 implies, in view of (4.5), the following proposition: Proposition 1. If s G 1,N, then the function vs is obtained from the function vs-1 by the rule
vs(x, K) = min) mm sup ^|c(x, pr1(z), K)+Cj(z, K); vs-1(pr2(z), K\{j})}) V(x, K) G Ds
Note that the function v0 is known: v0(x, 0) = 0 Vx G M. Therefore, Proposition 1 defines the recurrent procedure
Vo —► V1 —► ... —► VN. (4.7)
Implementation of (4.7) would yield (see (3.94)) the value of problem (2.11):
V = vw (x°, 17N) =
min min sup ( \ c(x°,pri(z), 1, N) + c7-(z, 1, N); vN-i(pr2(z), 1, N \ {j}) > ). 7€i(i,N) zeMj VI v J /
This value may be used to check if movements (2.2) are possible. Namely, we might be given a tolerance threshold d of harmful effects, effective on each step of process (2.2). Indeed, if V ^ d, then, in compliance with (2.11) and (2.12), we may organize the motion (2.2) such that
:(pr2(z(t)),pri(z(t+i)), {a(s) : s G t + 1,N}) + + ca(t+i) (z(t+i), {a(s) : s G t + 1,N}) ^ d Vs G 0, N - 1.
(4.9)
However, in case d < V, it is not possible to provide (4.9). Thus, the implementation of (4.7), which is completely defined by Proposition 1, already yields useful data.
Optimal solutions are also constructed based on Proposition 1. Assume z(0) = (x0,x0); this is an OP from X x X. Then, using (4.8), choose j1 G I(1, N) and z(1) G M1 such that
V = sup({c(x°,pri(z(1)),Ï7N) + ci (z(1),I7N); -i(pr2(z(1)),I^N\ {ji})}) (4.10)
(find the minimum in (4.8)). By (4.6), we have (since (x0,1, N) G DN)
(pr2(z(1)),I^N \{j!>) G Dn(4.11) hence, Proposition 1 implies that
VN_^pr2(z(1)), I,N\{j j) =
min minsu^i c(pr2(z(1)), pri(z), 1,N \ {j 1}) + (4 12)
jei(1,N\{j1}) zeMj ^ (412)
+ Cj (z, ITN \{j 1}); VNpr2(z), I,N \{j 1 ,j})
(take into account 1, N \ {j 1; j} = (1,N \ {j i}) \ {j} for j G I( 1, N \ {j 1})). Now, find the minimum in (4.12): find j2 G I(1, N \ {ji}) and z(2) G Mj2 such that
VN-i(pr2(z(i)), l^N \{j1 }) =
sup({ c(pr2(z(1)), pri (z(2)), lyw \{j1}) + a 2 (z(2), \{j1}); (4.13)
VNpr2(z(2)), \{j 1 J2})
where (see (4.6)) the property
(pr2(z(2)), l^N \ {j1; j2}) = (pr2(z(2)), l^N \ {jk : k G 1,2}) G -2 (4.14)
holds. Expressions (4.10) and (4.13) imply that, in particular,
V = sup < max
fcei,2
(pr2(z(fc-1)),pri(z(k)), 1, N \{ji : l G 1,k - 1}) + + cfc(z(k), ÏÏN \{ji : l G T7k—T})1 ; VN—2 ( pr2(z(2)), I^N \{ji : l G 1,2})
(4.15)
where we use the following obvious property: if k therefore,
1, then 1,k - 1 = 1, 0 = 0 and,
1,N \ (ji : I E 1,k — 1} = 1,N. Further on, we continue finding the minima from Proposition 1 until we exhaust the task list. This will result in a feasible route
n = (js)sei;w G A and track (z(s))s€o;w G Z^ such that Cv (z(s))s€o;w the optimality of this FS already follows from (4.15).
V. For N = 2,
5. A Model Problem
A model problem was considered on Euclidean space X = R x R for N = 30 megalopolises with |K| = 25 precedence constraints and 25 points in each megalopolis; each point could serve both as an exit point and an entry point. The cost of exterior movement was specified as Euclidean distance in X multiplied by the coefficient a(|K|) = 1 + N —; the coefficient decreased as the power of the list of pending tasks decreased and served as a rough estimate of harmful effect of radiation sources not yet processed. The cost of interior jobs was the Manhattan norm ||-|| of movement from the "entry point" into the megalopolis to the "exit point" through its center (for two plane vectors x = (x^x2),y = ), the
Manhattan norm is ||x — y|| = |x1 — y1| + |x2 — y2|). Megalopolises were modeled as equal radius disks, points were placed on the circumference with equal angular distances between them (which, obviously, depended on the number of points in the megalopolis). Precedence constraints in the form of address pairs are specified below: (1,10); (12,2); (2,13); (13,15); (6,16); (15,16); (18,27); (9,27); (10,9); (11,19); (20,19); (25,26); (23,22); (21,20); (24,22); (14,16); (7,10); (8,2); (1,9); (14,26); (2,27); (3,6); (3,19); (18,17); (14,25).
5 17 r-^j 19 „
..-•• P £3-
- /244--"' M 10*\
27 / - ¡"13 2tM A rra .. V -
I , j 28 Ï iw \ ¿a \ "
11 ^-A'B......;, il \
-è
\ 8 ..••''" 25ÎJÏ"" i / % -
\ /V
1
0 200 400 600 800 1000
Optimal route and track for the tour of 30 megalopolises. Optimal value: 376.63
The calculations were conducted on the "Uran" supercomputer (see http:// parallel.uran.ru/node/6) in 64-bit environment of Scientific Linux 6.4. Our
programming language of choice was C++11 (compiler GCC 4.4.7, optimization level -O2),
the parallelization was made with the aid of shared memory multiprocessing API OpenMP 3.0. The calculation took 1h. 46min. 34sec. on 12 cores.
Conclusion
The paper proposes an unorthodox variant of the dynamic programming method to solve precedence-constrained routing problems with nonadditive cost aggregation (the bottleneck cost aggregation) and dependence on the list of pending tasks. A method of obtaining the optimal solutions is specified, and the (optimal) algorithm is implemented in the form of a parallel computer program.
Acknowledgements. This work was partially supported by Russian Science Fund, grant № 14-11-00109.
References
1. Garey M.R., Johnson D.S. Computers and Intractability: A Guide to the Theory of NP-Completeness. San Francisco, W.H. Freeman and Company, 1979. 338 p.
2. Melamed I.I., Sergeev S.I., Sigal I.Kh. The Travelling Salesman Problem. Issues in Theory. Automation and Remote Control, 1989, vol. 50, no. 9, pp. 1147-1173.
3. Melamed I.I., Sergeev S.I., Sigal I.Kh. The Travelling Salesman Problem. Exact Methods. Automation and Remote Control, 1989, vol. 50, no. 10, pp. 1303-1324.
4. Melamed I.I., Sergeev S.I., Sigal I.Kh. The Travelling Salesman Problem. Approximate Algorithms. Automation and Remote Control, 1989, vol. 50, no. 11, pp. 1459-1479.
5. Bellman R. Dynamic Programming Treatment of the Travelling Salesman Problem. Journal of the ACM (JACM), 1962, vol. 9, no. 1, pp. 61-63. DOI: 10.1145/321105.321111
6. Held M., Karp R. A Dynamic Programming Approach to Sequencing Problems. Journal of the Society for Industrial & Applied Mathematics, 1962, vol. 10, no. 1, pp. 196-210. DOI: 10.1137/0110015
7. Little J.D., Murty K.G., Sweeney D.W., Karel C. An Algorithm for the Travelling Salesman Problem. Operations Research, 1963, vol. 11, no. 6, pp. 972-989. DOI: 10.1287/opre.11.6.972
8. The Travelling Salesman Problem and Its Variations (Combinatorial Optimization). Dordrecht, Kluwer Academic Publishers, 2002. 830 p.
9. Sergeev S.I. Algorithms for the Minimax Problem of the Travelling Salesman. I. An Approach Based on Dynamic Programming. Automation and Remote Control, 1995, vol. 56, no. 7, pp. 1027-1032.
10. Sesekin A.N., Chentsov A.A., Chentsov A.G. [Routing with an Abstract Function of Travel Cost Aggregation]. Trudy Inst. Mat. i Mekh. UrO RAN [Proceedings of the IMM UB RAS], 2010, vol. 16, no. 3, pp 240-264. (in Russian)
11. Kuratowski K., Mostowski A. Set Theory. Amsterdam, North-Holland, 1967.
12. Dieudonne J. Foundations of Modern Analysis. N.Y., Academic Press, 1960. 361 p.
13. Chentsov A.G. Ekstremal'nye zadachi marshrutizatsii i raspredeleniya zadaniy: voprosy teorii [A Theoretical Treatment of Extremal Problems in Routing and Scheduling]. Moscow, Izhevsk, Regular and Chaotic Dinamics, 2008. 240 p.
14. Chentsov A.A., Chentsov A.G. Extremal Bottleneck Routing Problem with Constraints in the Form of Precedence Conditions. Proceedings of the Steklov Institute of Mathematics (Supplementary issues), 2008, vol. 263, no. 2, pp. 23-36. DOI: 10.1134/S0081543808060047
15. Cheblokov I.B., Chentsov A.G. [About one Route Problem with Interior Tasks]. Vestnik Udmurtskogo Universiteta. Matematika. Mekhanika. Komp'yuternye nauki [Journal of Udmurt University. Mathematics, Mechanics and Computer Science], 2012, no. 1, pp. 96-119. (in Russian)
16. Chentsov A.G. [To Question of Routing of Works Complexes]. Vestnik Udmurtskogo Universiteta. Matematika. Mekhanika. Komp'yuternye nauki [Journal of Udmurt University. Mathematics, Mechanics and Computer Science], 2013, no. 1, pp. 59-82. (in Russian)
Received September 22, 2014
УДК 519.6 DOI: 10.14529/mmp150102
МОДЕЛЬ «НЕАДДИТИВНОЙ» ЗАДАЧИ МАРШРУТИЗАЦИИ С ФУНКЦИЯМИ СТОИМОСТИ, ЗАВИСЯЩИМИ ОТ СПИСКА ЗАДАНИЙ А.Г. Ченцов, Я.В. Салий
Рассматривается следующий (усложненный) вариант маршрутной задачи «на узкие места»: исследуется задача последовательного обхода мегаполисов, осложненная условиями предшествования и тем, что функции стоимости (перемещений и внутренних работ) могут явным образом зависеть от списка заданий, которые не выполнены на данный момент. Процесс перемещений рассматривается в виде совокупности этапов, включающих внешнее перемещение к соответствующему мегаполису и последующее выполнение (внутренних по смыслу) работ, связанных с данным мегаполисом. Качество совокупного процесса оценивается максимумом стоимостей составляющих его этапов; рассматривается задача на минимум упомянутого критерия (получается задача на минимакс, обычно именуемая задачей «на узкие места»). Для построения оптимального решения в виде пары маршрут-трасса (трасса, или траектория, соответствует конкретному варианту прохождения мегаполисов, нумеруемых в соответствии с маршрутом, определяемым в виде перестановки индексов) построен «нестандартный» вариант метода динамического программирования, при реализации которого не используется, в случае ограничений в виде условий предшествования, построение всего массива значений функции Беллмана.
Ключевые слова: динамическое программирование; маршрут; условия предшествования.
Литература
1. Гэри, М. Вычислительные машины и труднорешаемые задачи / М. Гэри, Д. Джонсон. -М.: Мир, 1982. - 416 с.
2. Меламед, И.И. Задача коммивояжера. Вопросы теории / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - № 9. - С. 3-34.
3. Меламед, И.И. Задача коммивояжера. Точные алгоритмы / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - № 10. - С. 3-29.
4. Меламед, И.И. Задача коммивояжера. Приближенные алгоритмы / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - № 11. - С. 3-26.
5. Беллман, Р. Применение динамического программирования к задаче о коммивояжере / Р. Беллман // Кибернетический сборник. - М.: Мир, 1964. - Т. 9 - С. 219-228.
6. Хелд, М. Применение динамического программирования к задачам упорядочения / М. Хелд, Р.М. Карп // Кибернетический сборник. - М.: Мир, 1964. - Т. 9. - С. 202-218.
7. Алгоритм для решения задачи о коммивояжере / Дж. Литл, К. Мурти, Д. Суини, К. Кэ-рел // Экономика и математические методы. - 1965. —Т. 1. - С. 94-107.
8. The Travelling Salesman Problem and Its Variations (Combinatorial Optimization) / edt. by Gutin G.Z, Punnen A.P. - V. 12. - Dordrecht: Kluwer Academic Publishers, 2002. - 830 p.
9. Сергеев, С.И. Алгоритмы решения минимаксной задачи коммивояжера. I / С.И. Сергеев // Автоматика и телемеханика. - 1995. - № 7. - С. 144-150.
10. Сесекин, А.Н. Маршрутизация с абстрактной функцией агрегирования стоимостей перемещений / А.Н. Сесекин, А.А. Ченцов, А.Г. Ченцов // Труды Института математики и механики УрО РАН. - 2010. - Т. 16. - № 3. - С. 240-264.
11. Куратовский, К. Теория множеств / К. Куратовский, М. Мостовский. - М.: Мир, 1970. -416 с.
12. Дьедонне, Ж. Основы современного анализа/Ж. Дьедонне.-М.: Мир, 1964.
13. Ченцов, А.Г. Экстремальные задачи маршрутизации и распределения заданий: вопросы теории / А.Г. Ченцов. - М.; Ижевск: НИЦ «Регулярная и хаотическая динамика», Ижевский институт компьютерных исследований, 2008 - 240 с.
14. Ченцов, А.А. Экстремальная задача маршрутизации «на узкие места» с ограничениями в виде условий предшествования / А.А. Ченцов, А.Г. Ченцов // Труды Института математики и механики УрО РАН. - 2008. - Т. 14. - № 2. - С. 129-142.
15. Чеблоков, И.Б. Об одной задаче маршрутизации с внутренними работами / И.Б. Чебло-ков, А.Г. Ченцов // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. - 2012. - № 2. - С. 96-119.
16. Ченцов, А.Г. К вопросу о маршрутизации комплексов работ / А.Г. Ченцов // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. - 2013. - № 1. - С. 59-82.
Александр Георгиевич Ченцов, доктор физико-математических наук, член-корреспондент РАН, главный научный сотрудник, отдел «Управляемые системы>, Институт математики и механики им. Н.Н. Красовского УрО РАН; профессор, кафедра «Прикладная математика>, Уральский федеральный университет имени первого Президента России Б.Н. Ельцина (г. Екатеринбург, Российская Федерация), [email protected].
Ярослав Витальевич Салий, старший математик, отдел «Управляемые системы>, Институт математики и механики им. Н.Н. Красовского УрО РАН; ассистент, кафедра «Прикладная математика>, Уральский федеральный университет имени первого Президента России Б.Н. Ельцина (г. Екатеринбург, Российская Федерация), [email protected].
Поступила в редакцию 22 сентября 2014 г.