УДК 519.2
On Accuracy of Approximation for the Resource Constrained Shortest Path Problem
Aleksandr A. Soldatenko*
Institute of Mathematics and Computer Science Siberian Federal University Svobodny, 79, Krasnoyarsk, 660041
Russia
Received 14.02.2019, received in revised form 20.05.2019, accepted 20.08.2019 The paper we considers the Resource Constrained Shortest Path problem (RCSP). This problem is NP-hard extension of a well-known shortest path problem in the directed graph G = (V,E). In the RCSP problem each arc e from E has a cost w(e) and additional weight functions ri(e),i = l,...,k, which specifying its requirements from a finite set of resource. A polynomial time e-approximation algorithm RevTree based on node labeling method is presented in the paper. The main advantage of the RevTree algorithm over existing ones is its ability to produce e approximation of the RCSP problem in O(\V|2) time. The present paper provides a proof of complexity and aproximation of RevTree algorithm.
Keywords: combinatorial optimization, resource constrained shortest path, graph-based algorithm, efficient approximation algorithm. DOI: 10.17516/1997-1397-2019-12-5-621-627.
Most modern telecommunication networks are multi-service because they provide users with various services: line telephony, cellular communications, cable television and data transmission. Quality of service (QoS) in multi-service networks defined by such parameters as throughput, transmission delay, jitter, cost and packet loss [1]. Any user's query for services implies determination of some route (desirable cost-effective) between two nodes based on the resource capability of a certain network. The problem of optimal service delivery in multi-service network can be formulated in mathematical term as a problem of finding resource constrained shortest path in a graph. This problem is called the Resource Constrained Shortest Path problem (RCSP) [2,3].
There are two formulations of the RCSP problem: graph-theoretic and integer linear programming formulations. In graph-theoretic formulation multiservice network is represented by a directed graph where vertices indicate nodes of networks and arcs indicate channels of connection. Each arc is supposed to have a main weight and some additional weights which specify its requirements to move from a finite set of resource. It is necessary to find a feasible shortest path between two vertices, i.e. path that satisfies given resource constraints on resources needed to go through a given path. Having even one resource constraint, the RCSP problem considered to be NP-hard [4].
Three classes of methods to solve the RCSP problem are being pointed out: path ranking methods [4], node labeling methods [1,2,5] and methods that use the Lagrangian relaxation [6-8]. The first two classes of methods are based on the graph-theoretic formulation of the problem. Last class uses integer linear programming formulation. However, most of these methods work
* glinckon@gmail.com © Siberian Federal University. All rights reserved
slowly on networks of large dimension. Therefore, it is of great relevance to search for new approximation algorithms that can solve the RCSP problem quick on big networks [1,8].
1. Resource Constrained Shortest Path problem and algorithms for its solution
The RCSP problem in graph-theoretic formulation is considered in accordance with the terminology which are commonly accepted in graph theory [9]. Let multi-service network be described by weighted oriented graph G = (V,, E) (below graph) without dual and self-loop edges, in which each vertex v G V specifies node of network and each arc e G E defines communication channel between corresponding network nodes, also n = \V| and m = \E|. We assume that on the set of arcs of the graph G = (V, E) we have a function w(e): E ^ R+ which is assigned to each arc e G E weight w(e) > 0. Let P be the path in graph G = (V,, E) from vertex s to vertex d, where s,d G V. We consider that weight of this (s, d)-path P is calculated as a sum of all its arcs i.e.
w(P) = £ w(e). (1)
eEP
It means, that function w(e) is additive. If w(e) is the cost of travel along the arc e then w(P) might be interpreted as the cost of passing (s, d)-path P in graph G = (V, E).
For all arcs in G = (V, E) except w(e) we also have functions ri(e): E ^ R+, i = 1,... ,k, which defines resource requirements for movement along arc e. We assume that for any (s, d)-path P the following is true:
ri(P ) = J2 ri(e), i = l,...,k. (2)
eEP
We consider that the quantities Ri G R+,i = 1,... ,k, are given and they determine resource constraints for the multi-service network. Any (s, d)-path P is feasible if it satisfies resource constraints i.e.
n(P) < Ri, i = l,...,k. (3)
It is required to find in G = (V,E) the shortest path P which minimizes w(P) in (1) and satisfies (3). Such path defines optimal solution of the RCSP problem and it is called resource constrained shortest (s, d)-path in graph G. Weight of this path is denoted by OPT.
Any feasible (s, d)-path may be considered as approximation solution of this problem. Obviously, if a set of feasible paths is empty then the RCSP problem does not have any solution. It may occur in case of tight resource constraints, for example, with m\neEE ri(e) > Ri. For large values of this constraints, for instance, with ^ ri(e) < Ri, the RCSP problem degenerates in
eEE
well-known problem of the shortest path (SP). It is clear that the shortest (s, d)-path in the graph G = (V, E) is not always feasible. It is important to note that for fixed count of resources and non-negative of all weight functions w(e),ri(e) the RCSP problem is weakly NP problem [2,5]. If we consider only one resource with r(e) = 1 for all arcs, then the RCSP problem is reduced to find the shortest (s, d)-path with less than R arcs. In this case, problem can be solved in polynomial time [4].
Nowadays, many approximation algorithms are being suggested for the RCSP problem, most of these using ideas of one or another pseudo-polynomial algorithms. Most of popular pseudopoly-nomial algorithms are based on sequential solution of the RCSP problem for various values of
path cost and resource constrains [2]. Their running time is O(mR) and O(mOPT). Many Polynomial Time Approximation Schemes has been developed based on these algorithms, including the Fully Polynomial Time Approximation Schemes (FPTAS), which consistently improve upper
and lower bounds of solution [5,10,11]. For instance, in the study [11] the FPTAS has time / \ complexity mn log log log n +--), where e is a given approximation parameter.
The FPTAS' feature is dependency between a running time of algorithm and a value of e, at the same time, time increases with increasing e. When there is no such dependency and e does not depend on size and parameters of a problem, then such approximation algorithms are called algorithms with guarantees approximation. Starting here and further in this paper saying the size of the RCSP problem we mean values n and m, which characterize number of vertices and arcs of graph G = (V,E), and under parameters is values of functions w(e),ri(e). For the RCSP problem, we do not know any of algorithms with guarantees approximation. However, in many applications, the RCSP problems must be solved quickly with some accuracy, possibly depending on the parameters of the problem, but not affecting the solution time. We propose polynomial time e-approximation algorithm (further algorithm RevTree) for the RCSP problem, which satisfices described requirements for a case with one resource R and w(e), ri(e) is positive real-valued functions. Next we are going to describe this algorithm, evaluate running time relative to the problem size and value of e that depends on parameters of the RCSP problem. For the sake of brevity, we will write r(e) and R instead ri(e) and Rj.
2. RevTree algorithm
The RevTree algorithm is based on a well-known Dijkstra's algorithm, which is used to solve the shortest path problem [9]. Dijkstra's algorithm uses a definition of neighborhood of graph vertex. The neighborhood of vertex v G V is set r(v) of ends of arcs, which starts from v and have temporal labels. Set r(v) defines possible directions to move along from vertex v in graph G = (V, E). The RevTree algorithm decreases cardinality of the set r(v) with considering resource constrain R, that allows to find a solution of the RCSP problem.
The RevTree algorithm consists of two phases and on both phases the Dijkstra's algorithm is performed. On the first phase algorithm finds minimum weight tree for function r(e),e G E. The root of this tree is a target vertex d. Such tree defines for all vertices u G V, also for r(v), (u, d)-path. The weight of this path equals to minimal resource consumption when we move from u to d. Denote (u, d)-path by P2. Let Pi be a path from start vertex s to current vertex v that is some solution of the RSCP problem for vertices s and v. According to the equation (2) this (s, v)-path consumes resource equal to r(Pi). Then to move from vertex v to vertex u G r(v) it is necessary to satisfy the conditions
r(P1) + r(v,u) + n(u) < R, (4)
where n(u) = ^ r(e). The condition (4) guarantees that path (P1,e, P2) is feasible solution for
eeP2
the RCSP problem, where e = (v, u) G E.
On the second phase the Dijkstra's algorithm with decreased neighborhoods is performed. A decrease of set r(v) for all vertex v G V performed by the condition (4). If vertex u G r(v) does not satisfy the condition (4), it deleted from r(v). The RevTree algorithm always finds feasible solution of the RCSP problem if it exist.
3. Complexity and approximation of the RevTree algorithm
Theorem 3.1 The RevTree algorithm takes O(n2) time and O(n) memory to solve the RCSP problem.
Proof. It is known that the Dijkstra's algorithm takes O(n2) time and O(n) memory [9]. On the first phase using the Dijkstra's algorithm we find minimum weight tree with root at vertex d. Saving of this tree takes O(n) memory. On the second phase we add to the Dijkstra's algorithm a check condition (4), does not affect on time complexity. Because both phases of the RevTree algorithm are performed consequently, then solution of the RCSP problem takes O(n2) time and O(n) memory. □
Now we obtain an estimate of the approximate solution found with the RevTree algorithm. Let's define function for each arc e G E
r(e) A(e) = .
w(e)
Calculate the minimal and the maximal values of this function on the set E:
Amin = min X(e) > 0,
eEE
Amax = mn-AX A(e) > 0.
eEE
Notice that the function A(e) is defined for any e G E because in the RCSP problem formulation we assume that w(e) > 0, r(e) > 0, e G E.
Theorem 3.2 The RevTree algorithm finds e-approximation of a solution of the RCSP problem, if it exists for given vertices s and d, where e = max — 1.
Amin
Proof. Let the RevTree algorithm found path Pi on some step, which move from the start vertex s to the current vertex v that is optimal solution of the RSCP problem for vertices s and v. If vertex v coincides with target vertex d then algorithm found optimal solution of given problem. If vertex v coincides with s then path Pi includes empty set of arcs and for it w(Pi) = r(Pi) = 0. In general case vertex v defines beginning of a part of (s, d)-path which should be found. Consider full neighborhood r(v) of current vertex v as a set of ends of arcs which starts from v and has temporal labels. Let x G r(v) be a vertex for that w(v, x) = min„er(^) w(v, u) but condition (4) is violated, i.e.
r(Pi) + r(v,x) + n(x) > R. (5)
The Dijkstra's algorithm chooses that very vertex if neighborhood r(v) is not decreased. The RevTree algorithm chooses vertex u G r(v) which satisfies the condition (4) and deviates from the shortest path in sense of (1) without resource constraints (3). Denote (v, d)-path found with full neighborhoods as P^est and found with decreased neighborhoods as Prest. For paths (Pi , Pres t) and (Pi,P?est) follow inequalities are true
w(Pi) + w(Pr*est) < OPT < w(Pi) + w(Prest). (6)
In (6) value w(Pi) + w(P*est) defines value of objective function for the shortest path without resource constrains and value w(Pi) + w(Prest) is value of objective function for the path which has been found with the RevTree algorithm. By definition of the Theorem 2 approximated
solution for the RSCP problem are exist. Thus, we can find at least one feasible (s, d)-path which means always exist Prest. Resource to move along any (v, d)-path is available and equal
Rrest = R - r(Pi).
Inequality Rrest ^ n(v) is true consider (4). Using definition of function X(e) for all arcs e G E introduce following inequalities
0 < —min w(e) < r(e) < —maxw(e).
Because functions w(e) and r(e) are additive then we get similar inequalities for any (v, d)-path include P*est and Prest
0 < Xminw(Pr'eSt) < r(P?est) < —maxw(P?'est ), (7)
0 < XminW(Prest) < r(Prest) < —maxw(Prest )■ (8)
Path P*est include vertex x and use (5) then following is true
r(Prest) > r(v,x)+ n(x) >R - r(Pi) = Rrest■
Here n(x) is minimal required resource to move from vertex x to vertex d. Thus r(P^est) > Rest. Hence, with (7) we get
Rrest < w(Pr*eSt). (9)
—max
From inequalities (8) follows the following
w (Prest) < r (Prest) ■
-min
Because w(P^st) < w(Prest) and r(Prest) < Rrest then it is always true that
wPest) < r(Prest) < —— Rrest■ (10)
-min -min
From (9) and (10) we get
-Rrest < w(P^ est) < T-R rest ■ (11)
rest rest
-max -m
Now we perform anestimation of solution produced with the RevTree algorithm using inequalities (6). As a result
w(Pi) + w(Prest) - OPT < w(Pi) + w(Prest) - (w(Pl) + w(P?est))
OPT w(Pi)+ w(Pr est)
w(Pi) + w(Prest) - (w(Pi) + w(Pr*est)) = w(Prest) - w(Pr*est) w(Pi) + w(P^est) w(Pi) + w(P^est) '
Hence
w(Pi)+ w(Prest) - OPT < w(Prest) - w(Pr*est) (12)
OPT ^ w(Pi)+ w(Pr est) " 1 '
The greatest error between found and optimal solutions happens then v = s and w(Prest) = -Rrest. Then inequality (12) takes form
-min
jm-Rrest - OPT < Rrest - w(P^st)
OPT w(Pr*est)
Use (11) get inequality -1— Rrest < w(Prest). Hence we finally get
"max
\min Rrest — OPT ^ xRrest — x^^^ Rrest = "max ^
OPT J^a Rrest "m
Thus, feasible solution has been produced using the RevTree algorithm deviates from optimal solution of the RCSP problem not more then on value e where e = max — l. □
"min
Conditions w(e) > 0,r(e) > 0,e G E used in the RCSP problem formulation is needed only for proof of the Theorem 3.2.
Conclusion
In this paper we propose the polynomial time e-approximation algorithm RevTree for RCSP problem for a case when there is only one resource. The algorithm always finds a feasible solution of problem if it exists. The algorithm takes O(n2) time and produces a solution deviating from
optimal not exceed e = max — l. It is possible to extend the RevTree algorithm on cases with
"min
many resources. This extension has polynomial complexity, but additional research of solution approximation is needed.
References
[1] P.Van Mieghem and et al., Quality of Service Routing, In Quality of Future Internet Services, LNCS, Vol. 2856, 2003, 80-117.
[2] H.C.Joksch, The Shortest Route Problem with Constraints, Mathematical Analysis and Applecation, 14(1966), 191-197.
[3] M.Dror, Note on the complexity of the shortest path models for column generation in VRPTW, Operation Reseatch, 42(1994), 977-978.
[4] M.R.Garey, D.S.Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, CA: W.H. Freeman, San Francisco, 1979.
[5] I.Dumitrescu, N.Boland, Improved preprocessing, labeling and scaling algorithms for the weight-constrained shortest path problem, Networks, 42(2003), 135-153.
[6] K.Mehlhorn, M.Ziegelmann, Resource constrained shortest paths, In Algorithms ESA 2000, LNCS, Vol. 1879, 2000, 326-337.
[7] M.Jepsen, B.Petersen, S.Spoorendonk, D.Pisinger, A branch-and-cut algorithm for the capacitated profitable tour problem, Discrete Optimization, 14(2014), 78-96.
[8] M.Horvath, T.Kis, Solving resource constrained shortest path problems with LP-based methods, Computers, 73(2016), 150-164.
[9] T.H.Cormen, C.E.Leiserson, R.L.Rivest, C.Stein, Introduction to Algorithms, 3rd edn. MIT Press, Boston, 2009.
[10] R.Hassin. Approximation Schemes for the Restricted Shortest Path Problem, Mathematics Oper. Res., 17(1992), 36-42.
[11] G.Xue, W.Zhang, J.Tang, K.Thulasiraman, Polynomial Time Approximation Algorithms for Multi-Constrained QoS Routing, IEEE/ACM Transactions on Networking, 16(2008), no. 3, 656-669.
О точности аппроксимации для задачи о ресурсоограниченном кратчайшем пути
Александр А. Солдатенко
Институт математики и фундаментальной информатики Сибирский федеральный университет Свободный, 79, Красноярск, 660041
Россия
Рассматривается NP-трудная задача поиска ресурсоограниченного кратчайшего пути, известная под названием Resource Constrained Shortest Path (RCSP). Задача RCSP является расширением задачи о кратчайшем пути в ориентированном графе G = (V, E), когда для каждой дуги e £ E кроме основной весовой функции w(e) дополнительно задаются функции ri(e),i = l,. .. ,k, численно отражающие потребности в ресурсах, которые необходимы для передвижения по этой дуге. Предлагается полиномиальный е-приближенный алгоритм RevTree, использующий специальную маркировку вершим. Основное преимущество алгоритма RevTree по сравнению с существующими алгоритмами: он быстро находит допустимое решение задачи за O(\V\2) время, отклоняясь от оптимального решения на величину, не превышающую е. В работе приведены доказательства оценок сложности и точности алгоритма RevTree.
Ключевые слова: комбинаторная оптимизация, ресурсоограниченный кратчайший путь, алгоритмы на графах, эффективный алгоритм приближения.