Online Page Migration on Ring Networks in Uniform Model
11 Online Page Migration on Ring Networks in Uniform Model
Amanj Khorramian * and Akira Matsubayashi β Graduate School of Natural Science and Technology Kanazawa University, Kanazawa 920-1192, Japan
Abstract
This paper explores the problem of page migration in ring networks. A ring network is a connected graph, in which each node is connected with exactly two other nodes. In this problem, one of the nodes in a given network holds a page of size D . This node is called the server and the page is a non-duplicable data in the network. Requests are issued by nodes to access the page one after another. Every time a new request is issued, the server must serve the request and may migrate to another node before the next request arrives. A service costs the distance between the server and the requesting node, and the migration costs the distance of the migration multiplied by π· . The problem is to minimize the total costs of services and migrations. We study this problem in uniform model, for which the page has a unit size, i.e. π· = 1 . A 3.326-competitive algorithm improving the current best upper bound is designed. We show that this ratio is tight for our algorithm.
Keywords ring networks, page migration, competitive analysis, server problems, online algorithms, uniform model
Page migration (a.k.a. data migration, file migration) is a classic problem in the area of shared memory management on a network of processors having their own local memories. In this problem, a sequence of requests are issued by processors one by one to access the page that is a single shared data object. Every time a new request is issued, a processor holding the page, called a server, must serve the request through its communication with the requesting processor. After serving the request, the server may migrate to another processor before the next request is issued. A service and a migration are assumed to cost the distance of the service communication and the distance of the migration multiplied by the page size
π· β₯ 1, respectively. The goal of the problem is to minimize the total costs of services and migrations. The page migration problem can also be viewed as the management of shared information among nodes of a distributed network (Bienkowski 2012). In this paper, we consider the page migration problem on ring networks, one of the most common network topologies. The page migration problem was firstly studied by Black and Sleator, using the framework of online algorithms and competitive analysis (1989). The notions of online algorithms and competitive analysis are given in Section 2. The best published deterministic algorithm on general * Corresponding author: [email protected], Tel: +98-918-974-3123 β [email protected] networks with any π· is -competitive and was proposed by Bartal, Charikar, and Indyk (2001), which is recently improved by a -competitive algorithm using a dynamic phase-based approach reported by Bienkowski, Byrka, and Mucha (arXiv:1609.00831v1). Better algorithms exist for restricted networks. Actually, -competitive deterministic algorithms were proposed for trees and uniform networks with any π· (Black et al. 1989), and for three points with π· β {1, 2} (Chrobak et al. 1997; Matsubayashi 2015a). These -competitive algorithms are optimal because is also a lower bound even on two points (Black et al. 1989). Further results on three points with π· β₯3 are a (3 + 1/π·) -competitive deterministic algorithm and a lower bound of (Matsubayashi 2015a). This algorithm implies a (3 + 1/π·) -competitive deterministic algorithm on 3-node ring networks. However, we do not know any deterministic algorithm with competitiveness better than even for the extremely simple topology of ring networks with more than three nodes. Therefore, we restrict also the page size π· . As shown in the case of three points, the possible best competitiveness may depend on π· . Actually, the upper bound of for general networks with any π· can be reduced to if π· = 1 (Matsubayashi 2008). The setting of the unit page size
π· =1 is often called the uniform model in the context of data management problems including the page migration problem (Bienkowski 2012; Maggs et al. 1997; Khorramian et al. 2016; Matsubayashi 2008; Meyer auf der Heide et al. 1999). In the uniform model, lower bounds of for general networks and for 5-node ring networks were known (Matsubayashi 2008). Although we did not know for a long time if a lower bound of
3 + πΊ(1) exists, where πΊ notation is with respect to D , a lower bound of β6 with any π· was recently proved (Matsubayashi 2015b). Our contribution in this paper is to propose a -competitive algorithm on ring networks with π· = 1 . I.e., we prove that the competitiveness of for general networks in the uniform model can be improved to on ring networks. Our algorithm inspects the distances among the current requesting node, the previous requesting node, and the current server node, then upon each request, either migrates the server to one of the two requesting nodes or keeps the server at its current location without migration. We define our algorithm and prove its competitiveness in Section 3 through a competitive analysis. We also prove the tightness of our analysis in Section 4. Other previous results for the page migration problem are as follows. As for randomized algorithms against adaptive online adversaries, a -competitive algorithm for general networks was proposed in (Westbrook 1994) and the upper bound of is also a lower bound on two points (Bartal et al. 1995). As for a randomized algorithm against oblivious adversaries, a π(π·) -competitive algorithm for general networks was proposed in (Westbrook 1994), where π(π·) is a function that tends toward as π· grows large. Moreover, (2 + 1/2π·) -competitive algorithms for trees (Chrobak et al. 1997) and uniform networks (Lund et al. 1999) were known. These (2 + 1/2π·) -competitive algorithms are optimal because is also a lower bound for any algorithm against oblivious adversaries even on two points (Chrobak et al. 1997). The page migration problem is studied also on continuous metric spaces (Chrobak et al. 1997; Khorramian et al. 2016). The rest of this paper is organized as follows. Some preliminaries and notations are given in Section 2. We define our algorithm on ring networks and prove its competitiveness of π β 3.326 in Section 3. In Section 4, we prove a lower bound of π for our algorithm. We conclude the paper in Section 5. Because the exact value of π is complicated, we present it in Appendix A. Let πΊ be a cycle graph and π(π, π) denote the distance of a shortest path between π and π . For a given initial page location π β πΊ , a sequence of requests π , β¦ , π π β πΊ , and a page size π· β β€ + , the page migration problem is to compute page locations π , β¦ , π π β πΊ such that the cost function β (πΏ(π πβ1 , π π ) + π· β πΏ(π πβ1 , π π )) ππ=1 is minimized. We call π π the server before request π π+1 occurs. An online algorithm must compute π π without any information about the locations of π π+1 , β¦ , π π . On the other hand, an offline algorithm may compute π π using the information about the entire sequence of requests π , β¦ , π π . An adversary against an online algorithm A generates a sequence of requests given to A , and computes an output sequence of server locations. If A is deterministic, then the adversary generates requests using the definition of A , or equivalently, the information of the actual behavior of A, and computes its own output according to an optimal offline algorithm OPT . The deterministic algorithm A is π -competitive if πππ π‘ π΄ (π , π) β€ π Β· πππ π‘ πππ (π , π) + πΌ for the initial server π and any sequence π of requests, where πππ π‘ π΄ and πππ π‘ πππ are costs of A and OPT , respectively, and πΌ is a constant. For randomized online algorithms, there are two types of adversaries. An adversary is said to be oblivious if it generates requests in advance only using the definition of A , i.e., without any information about the random behavior of A and computes its own output according to OPT . In contrast, an adaptive online adversary generates requests using information of the random behavior of A and computes its own output in an online fashion. The competitiveness of a randomized online algorithm against oblivious or adaptive online adversaries is defined in a similar way to that of a deterministic online algorithm, except that expected values are used for randomized costs. It is common to use a potential function π· for proving the competitiveness of an online algorithm A . The potential function typically maps the situation at a point of time, such as the page locations of A and OPT , to a real value. More specifically, we suitably divide the sequence of the online processes of A and OPT into certain events. Our goal is to define the value of π· in such a way that the initial value of π· is at most some constant π , π· is always at least some constant β π , and that βπππ π‘ π΄ + βπ· β€ π Β· βπππ π‘ πππ for any event, where β denotes the change of values by the event. Summing the inequality over all events for an initial server π and a request sequence π , we have πππ π‘ π΄ (π , π) β€ π Β·πππ π‘ πππ (π , π) + π + π , which means that A is π -competitive. Analysis of Algorithm
For the page size
π· = 1 , we propose a deterministic algorithm, called TriAct, on a ring network as defined in Figure 1. We set π = π , the initial location of the server in the ring network πΊ . For π β₯ 1 , upon the request π π at any node, there are three choices for the server to act according to the algorithm. The server keeps its current location at node π πβ1 or migrates to either π π or π πβ1 . The decision is based on the distances among π πβ1 , π π , and π πβ1 . There are six different cases to determine which action must be done. In the ring topology, there are exactly two paths between each pair of nodes π, π . Let πΏ(π, π) denote a shortest path between π, π . The length of πΏ(π, π) equals to the distance π(π, π) . Let πΏ denote the length of the ring, then it is obvious that . In our calculations, we set π₯ = π(π πβ1 , π πβ1 ) , π¦ = π(π πβ1 , π π ) , and π§ = π(π πβ1 , π π ) . If πΏ(π πβ1 , π πβ1 ) and πΏ(π πβ1 , π π ) share any edge of the network, then either Case A or Case B follows by the algorithm. If πΏ(π πβ1 , π π ) = πΏ(π πβ1 , π πβ1 ) βͺ πΏ(π πβ1 , π π ) then Case C follows. Figure 2 shows an example for each of these three cases. For the rest of cases, we have πΏ = π(π πβ1 , π π ) +π(π πβ1 , π πβ1 ) + π(π πβ1 , π π ) = π₯ + π¦ + π§ , and the algorithm separates all possible conditions among distances into three Cases D, E, and F, to decide the action of server for migration. Since πΏ is a constant value, we calculate π§ as a function of π₯ and π¦ . The conditions of Cases D, E, and F are shown in Figure 3. We show that TriAct is π -competitive with π β 3.326 in Theorem 1 below. The exact value of π is provided in Appendix A. We use a potential function π· to prove the theorem. We separate the online events into two parts to show that βπππ π‘ ππππ΄ππ‘ + βπ· β 3.326βπππ π‘
πππ β€ 0 follows in every case. The proof for Cases A-E are straightforward. Our analysis for Case F uses a different technique, because we need to consider two consecutive requests in that case to complete the proof.
Theorem 1.
TriAct is π -competitive for π· = 1 , where π β 3.326 is the positive solution of βπ + 4π + π β18π + 24 = 0. (See Appendix A for the exact value of π .) Proof.
We use the potential function π· , for OPT βs server locations π‘ , β¦ , π‘ π , TriActβs server locations π , β¦ , π π , and request locations π , β¦ , π π . We define π·(π π , π π , π‘ π ) = π2 β (π(π π , π‘ π ) + π(π π , π‘ π )) + (π2 β 1) π(π π , π π ) We separately consider the events in two parts. The first includes the migration costs incurred by
OPT , and the second covers the service costs incurred by
OPT together with the migration and service costs incurred by TriAct. Let Ξ = π·(π π , π π , π‘ π ) β π·(π π , π π , π‘ πβ1 ) β π β π(π‘ πβ1 , π‘ π ), and Ξ = π(π πβ1 , π π ) + d(π πβ1 , π π ) + π·(π π , π π , π‘ πβ1 ) βπ·(π πβ1 , π πβ1 , π‘ πβ1 ) β π β π(π‘ πβ1 , π π ) . In order to prove that π₯πππ π‘ ππ + π₯π· β π β π₯πππ π‘ πππ β€ 0 follows in both parts, it suffices to show that Ξ β€ 0 and Ξ β€ 0 . Analysis of part 1:
For the first part, Ξ = π2 β (π(π π , π‘ π ) β π(π π , π‘ πβ1 ) + π(π π , π‘ π ) β π(π π , π‘ πβ1 )) βπ β π(π‘ πβ1 , π‘ π ) . By triangle inequality, we have Ξ β€ π2 β (π(π‘ πβ1 , π‘ π ) + π(π‘ πβ1 , π‘ π )) β π β π(π‘ πβ1 , π‘ π ) = 0. Analysis of part 2:
For the second part, we have Ξ = π(π πβ1 , π π ) + π(π πβ1 , π π ) + π2 π(π π , π‘ πβ1 )+ π2 π(π π , π‘ πβ1 ) + (π2 β 1) π(π π , π π )β π2 π(π πβ1 , π‘ πβ1 ) β π2 π(π πβ1 , π‘ πβ1 )β (π2 β 1) π(π πβ1 , π πβ1 ) β π β π(π‘ πβ1 , π π ) = π(π πβ1 , π π ) + π(π πβ1 , π π ) + π2 π(π π , π‘ πβ1 )β π2 π(π π , π‘ πβ1 ) + (π2 β 1) π(π π , π π )β π2 π(π πβ1 , π‘ πβ1 ) β π2 π(π πβ1 , π‘ πβ1 )β (π2 β 1) π(π πβ1 , π πβ1 ). (1) πΏ β network length π₯ β π(π πβ1 , π πβ1 ) π¦ β π(π πβ1 , π π ) π§ β π(π πβ1 , π π ) if π§ = π₯ β π¦ then π π β π π {Case A} else if π§ = π¦ β π₯ then π π β π πβ1 {Case B} else if π§ = π₯ + π¦ then π π β π πβ1 {Case C} else if π¦ β₯ β πβ3πβ2 π₯ + πΏ and π¦ β₯ π₯ + πβ22π πΏ then π π β π πβ1 {Case D} else if π¦ β€ πβ12 π₯ and π¦ β₯ β ππβ2 π₯ + π2πβ4 πΏ then π π β π π {Case E} else π π β π πβ1 {Case F} server migrates from π πβ1 to π π Figure 1.
Definition of Algorithm TriAct upon the request π π to access the page at the server π πβ1 on a ring network TriAct has three choices of π π , i.e., π π , or π πβ1 , or π πβ1 . For these choices, we separately derive upper bounds of Ξ . Upper bound of π« for the action π π β π π : For the action of migrating the server to the current request location, it follows from (1) that Ξ = π(π πβ1 , π π ) + π(π πβ1 , π π ) + π2 π(π π , π‘ πβ1 )β π2 π(π π , π‘ πβ1 ) + (π2 β 1) π(π π , π π )β π2 π(π πβ1 , π‘ πβ1 ) β π2 π(π πβ1 , π‘ πβ1 )β (π2 β 1) π(π πβ1 , π πβ1 ) = πβ1 , π π ) β π2 π(π πβ1 , π‘ πβ1 )β π2 π(π πβ1 , π‘ πβ1 ) β (π2 β 1) π(π πβ1 , π πβ1 ) β€ πβ1 , π π ) β π2 π(π πβ1 , π πβ1 )β (π2 β 1) π(π πβ1 , π πβ1 ) = (1 β π)π(π πβ1 , π πβ1 ) + 2π(π πβ1 , π π ) = (1 β π)π₯ + 2π¦. (2) Here, we used the triangle inequality π(π πβ1 , π‘ πβ1 ) + π(π πβ1 , π‘ πβ1 ) β₯ π(π πβ1 , π πβ1 ) . We note that this upper bound of Ξ is used for Cases A and E. Upper bound of π« for the action π π β π πβπ : For the action of migrating the server to the previous request location, it follows from (1) that Ξ = π(π πβ1 , π π ) + π(π πβ1 , π πβ1 )+ π2 π(π πβ1 , π‘ πβ1 ) β π2 π(π π , π‘ πβ1 )+ (π2 β 1) π(π πβ1 , π π ) β π2 π(π πβ1 , π‘ πβ1 )β π2 π(π πβ1 , π‘ πβ1 ) β (π2 β 1) π(π πβ1 , π πβ1 ) = π(π πβ1 , π π ) + (2 β π2) π(π πβ1 , π πβ1 )β π2 π(π‘ πβ1 , π π ) + (π2 β 1) π(π πβ1 , π π )β π2 π(π πβ1 , π‘ πβ1 ) β€ (2 β π2) π(π πβ1 , π πβ1 )+ (1 β π2) π(π πβ1 , π π )+ (π2 β 1) π(π πβ1 , π π ) = (2 β π2) π₯ + (1 β π2) π¦ + (π2 β 1) π§. (3) Here, we used the triangle inequality π(π‘ πβ1 , π π ) +π(π πβ1 , π‘ πβ1 ) β₯ π(π πβ1 , π π ) . We note that this upper bound of Ξ is used for Cases B and D. Upper bound of π« for the action π π β π πβπ : For the action of no migration, it follows from (1) that Ξ = π(π πβ1 , π π ) + π(π πβ1 , π πβ1 )+ π2 π(π πβ1 , π‘ πβ1 ) β π2 π(π π , π‘ πβ1 )+ (π2 β 1) π(π πβ1 , π π ) β π2 π(π πβ1 , π‘ πβ1 )β π2 π(π πβ1 , π‘ πβ1 ) β (π2 β 1) π(π πβ1 , π πβ1 ) = π2 π(π πβ1 , π π ) β π2 π(π π , π‘ πβ1 )β π2 π(π πβ1 , π‘ πβ1 ) β (π2 β 1) π(π πβ1 , π πβ1 ) β€ π2 π(π πβ1 , π π ) β π2 π(π πβ1 , π π )β (π2 β 1) π(π πβ1 , π πβ1 ) = (1 β π2) π₯ + π2 π¦ β π2 π§. (4) Here, we used the triangle inequality π(π π , π‘ πβ1 ) +π(π πβ1 , π‘ πβ1 ) β₯ π(π πβ1 , π π ) . We note that this upper bound of Ξ is used for Cases C and F. Analysis for Cases A, B, and C:
In Case A, since π¦ = π₯ β π§ β€ π₯ and π > 3 , it follows from (2) that Ξ β€ (1 β π)π₯ + 2π¦ β€ (3 β π)π₯ < 0. (5) In Case B, since π§ = π¦ β π₯ and π > 3 , it follows from (3) that Ξ β€ (2 β π2) π₯ + (1 β π2) π¦ + (π2 β 1) π§= (2 β π2) π₯ + (1 β π2) π¦ + (π2 β 1) (π¦ β π₯)= (3 β π)π₯ < 0. (6) In Case C, since π§ = π₯ + π¦ and π > 1 , it follows from (4) that Ξ β€ (1 β π2) π₯ + π2 π¦ β π2 π§= (1 β π2) π₯ + π2 π¦ β π2 (π₯ + π¦)= (1 β π)π₯ < 0. (7) Therefore, Theorem 1 holds in Cases A, B, and C. Case A: server migrates from π πβ1 to π π Case B: server migrates from π πβ1 to π πβ1 Case C: server does not migrate from π πβ1 Figure 2.
Examples of Cases A, B, and C. Filled circles represent destinations of the server, i.e., π π , upon the request π π Analysis for Cases D and E:
For Cases D and E, we have π§ = πΏ β π₯ β π¦ . The conditions of these cases are defined using four functions π¦ - π¦ of π₯ , where y = β π β 3π β 2 π₯ + πΏ2 , (8) y =
2π π₯ + π β 2π β πΏ2 , (9) y = π β 12 π₯, and (10) y = ππ β 2 (πΏ2 β π₯) . (11) In Figure 3, the separate regions represent the conditions of Cases D, E, and F. In Case D, since π¦ β₯ π¦ , it follows from (3) and (8) that Ξ β€ (2 β π2) π₯ + (1 β π2) π¦+ (π2 β 1) (πΏ β π₯ β π¦) = (3 β π)π₯ + (2 β π)π¦ + (π2 β 1) πΏ (12) β€ (3 β π)π₯ + (2 β π) (β π β 3π β 2 π₯ + πΏ2)+ (π2 β 1) πΏ =
0. In Case E, since π¦ β€ π¦ , it follows from (2) and (10) that Ξ β€ (1 β π)π₯ + 2π¦ (13) β€ (1 β π)π₯ + 2 (π β 12 π₯) = 0. Therefore, Theorem 1 holds in Cases D and E.
Analysis for Case F:
For Case F, we also have π§ = πΏ β π₯ β π¦ and the conditions of Case F as shown in Figure 3. It follows from (4) that Ξ β€ (1 β π2) π₯ + π2 π¦ β π2 π§= (1 β π2) π₯ + π2 π¦β π2 (πΏ β π₯ β π¦) = ππ¦ + π₯ β π2 πΏ. (14) This is at most if π¦ β€ π¦ , where π¦ = πΏ2 β π₯π . (15) Therefore, Theorem 1 holds if π¦ β€ π¦ in Case F. However, if π¦ > π¦ , i.e., if π₯ and π¦ are in the grey region in Figure 4, then Ξ > 0 . Instead of bounding Ξ , for the case π¦ > π¦ , we bound the sum of Ξ and Ξ , which is defined as the value of Ξ for the next request π π+1 . Specifically, Ξ = π(π π , π π+1 ) + π(π π , π π+1 ) + π·(π π+1 , π π+1 , π‘ π ) βπ·(π π , π π , π‘ π ) β π β π(π‘ π , π π+1 ) . It should be noted that Theorem 1 holds if Ξ + Ξ < 0 for all six cases of π π+1 , and for all x and y in the grey region in Figure 4. We also note that π π = π πβ1 (16) in Case F for π π . In the rest of the proof, we show Ξ + Ξ β€0 for all six cases of π π+1 and for all π₯ and π¦ with Ξ > 0 . In Cases A, B, and C for π π+1 , if follows from (5), (6), (7) and (16) that Ξ β€ (3 β π)π(π π , π π ) = (3 βπ)π(π πβ1 , π π ) = (3 β π)π¦ . Therefore, since π¦ β€ π¦ , it follows from (14) and (8) that Ξ + Ξ β€ ππ¦ + π₯ β π2 πΏ β (π β 3)π¦ = 3π¦ + π₯ β π2 πΏ β€ 3 (β π β 3π β 2 π₯ + πΏ2) + π₯ β π2 πΏ = 7 β 2ππ β 2 π₯ β (π β 3) πΏ2 β€ 7 β 2ππ β 2 β πΏ2 β (π β 3) πΏ2 = β π β 3π β 1π β 2 β πΏ2 , which is negative since π > β 3.303 . In Case D for π π+1 , it follows from (12) and (16) that Ξ β€ β(π β 2)π(π π , π π+1 ) β (π β 3)π(π π , π π )+ (π2 β 1) πΏ = β(π β 2)π(π π , π π+1 ) β (π β 3)π(π πβ1 , π π )+ (π2 β 1) πΏ = β(π β 2)π(π π , π π+1 ) β (π β 3)π¦ + (π2 β 1) πΏ. (17) Moreover, it follows from (9) and (16) that π(π π , π π+1 ) β₯ 2π π(π π , π π ) + π β 2π β πΏ2= 2π π(π πβ1 , π π ) + π β 2π β πΏ2= 2π π¦ + π β 2π β πΏ2 . (18) Therefore, it follows from (14), (17), and (18) that Figure 3.
Conditions of Cases D, E, and F Ξ + Ξ β€ ππ¦ + π₯ β π2 πΏ β (π β 2)π(π π , π π+1 )β (π β 3)π¦ + (π2 β 1) πΏ β€
3π¦ + π₯ β πΏ β (π β 2) (2π π¦ + π β 2π β πΏ2) = π + 4π π¦ + π₯ β π β 2π + 4π β πΏ2 . (19) The value πΆ = π+4π π¦ + π₯ is maximized at π , at which π¦ and π¦ intersect in Figure 4. This is because for the function π¦ = β ππ+4 π₯ + ππ+4 πΆ , its slope β ππ+4 is negative and less than the slope β πβ3πβ2 of π¦ for π β 3.326 . Therefore, we have Ξ + Ξ β€ π + 4π β π β 3π + 2π β π β 4 β πΏ2 + π β 2π β π β 4 πΏβ π β 2π + 4π β πΏ2 = βπ + 4π + π β 18π + 24π(π β π β 4) β πΏ2 , which is equal to by the assumption of π in Theorem 1. In Case E for π π+1 , it follows from (13) and (16) that Ξ β€ 2π(π π , π π+1 ) β (π β 1)π(π π , π π )= 2π(π π , π π+1 ) β (π β 1)π(π πβ1 , π π )= 2π(π π , π π+1 ) β (π β 1)π¦. (20) Moreover, it follows from (9) and (16) that π(π π , π π+1 ) β€ 2π π(π π , π π ) + π β 2π β πΏ2= 2π π(π πβ1 , π π ) + π β 2π β πΏ2 β€ 2π π¦ + π β 2π β πΏ2 . (21) Therefore, it follows from (14), (20), and (21) that Ξ + Ξ β€ ππ¦ + π₯ β π2 πΏ + 2π(π π , π π+1 ) β (π β 1)π¦ β€ π¦ + π₯ β π2 πΏ + 2 (2π π¦ + π β 2π β πΏ2)= π + 4π π¦ + π₯ β π β 2π + 4π β πΏ2 , which is identical with (19). Hence, we can obtain Ξ +Ξ β€ 0 as done for (19). In Case F for π π+1 , it follows from (14) and (16) that Ξ β€ ππ(π π , π π+1 ) + π(π π , π π ) β π2 πΏ= ππ(π π , π π+1 ) + π(π πβ1 , π π ) β π2 πΏ = ππ(π π , π π+1 ) + π¦ β π2 πΏ. (22) For π₯ and π¦ in the grey region in Figure 4, it follows that π¦ β₯ π βππ βπ+2 β πΏ2 , which is the π¦ -coordinate of π at which π¦ and π¦ intersect. This implies that π(π π , π π ) is larger than the π₯ -coordinate πβ2π βπβ4 πΏ of π . We can verify this by π(π π , π π ) = π(π πβ1 , π π ) = π¦ and π β ππ β π + 2 β πΏ2 β π β 2π β π β 4 πΏ = π β 4π + 3π β 4π + 8(π β 2)(π + 1)(π β π β 4) β πΏ2= (π β 4π β π + 18π β 24) + (4π β 22π + 32)(π β 2)(π + 1)(π β π β 4) β πΏ2= 4π β 22π + 32(π β 2)(π + 1)(π β π β 4) β πΏ2 , which is positive for π > β 2.56 . Here, we have used the assumption π β 4π β π + 18π β 24 = 0 in Theorem 1. Therefore, it follows from (11) that π(π π , π π+1 ) β€ ππ β 2 (πΏ2 β π(π π , π π )) = ππ β 2 (πΏ2 β π(π πβ1 , π π )) = ππ β 2 (πΏ2 β π¦) . (23) Therefore, it follows from (14), (22), and (23) that Ξ + Ξ β€ ππ¦ + π₯ β π2 πΏ + ππ(π π , π π+1 ) + π¦ β π2 πΏ β€ (π + 1)π¦ + π₯ β ππΏ + π β ππ β 2 (πΏ2 β π¦)= β π + 2π β 2 π¦ + π₯ β π(π β 4)π β 2 β πΏ2 . The value
πΆ = β π+2πβ2 π¦ + π₯ is maximized at π . This is because for the function π¦ = πβ2π+2 π₯ β πβ2π+2 πΆ , its slope πβ2π+2 is positive and less than the slope πβ12 of π¦ . Therefore, we have Ξ + Ξ β€ β π + 2π β 2 β π(π β 1)π β π + 2 β πΏ2 + ππ β π + 2 πΏβ π(π β 4)π β 2 β πΏ2 = β π(π β 3)π β 2 β πΏ2 < 0. Thus, the proof of Theorem 1 is completed. β¬ Figure 4.
Representation of positive region of Ξ in Case F In Section 3, we prove that TriAct is π -competitive with π β 3.326 . In this section, we show that the lower bound of the algorithm is also π . This means that the exact competitive ratio of the algorithm is π . We introduce an adversary through Theorem 2 and prove the existence of such a lower bound. The adversary makes a special sequence of requests on four nodes on a ring network against TriAct, such that upon any request either the condition of Case B or the condition of Case E holds. Theorem 2.
For a sufficiently large integer π , there exists a request sequence π = π , β¦ , π and four request nodes π , π , π , and π on a ring network, such that πππ π‘ ππ (π , π) β₯ π βπππ π‘ πππ (π , π) for π β 3.326 and the initial server node is π . Proof.
The adversary sets π(π , π) = π β3π+22π β2πβ8 πΏ and π(π , π) = π(π, π) = πβ2π βπβ4 πΏ , such that neither πΏ(π , π) nor πΏ(π, π) has an edge of πΏ(π , π) . Moreover, request π is at π , request π is at π , request π is at π , and request π is at s , where (see Figure 5). We first calculate the total cost incurred by TriAct, πππ π‘ ππππ΄ππ‘ (π , π) . The request π is served with the cost of π(π , π) and the server does not move from π , because Case B holds. The request π is served with the cost of π(π , π) and the server migrates from π to π with the cost of π(π , π) , because Case E holds. The request π is served with the cost of π(π, π) and the server does not move from π , because Case B holds. The request π is served with the cost of π(π, π ) and the server migrates from π to π with a cost of π(π, π ) , because Case E holds. Therefore, we have πππ π‘ ππππ΄ππ‘ (π , π) = π(π(π , π) + 2π(π , π) + π(π, π) + 2π(π, π ))= π(2π(π , π) + 4π(π , π)).
Now we calculate the total cost incurred by a specific algorithm
ALG , πππ π‘ π΄πΏπΊ (π , π) that is at least πππ π‘
πππ (π , π) . ALG migrates the server from π to π before any request occurs, with the cost of π(π , π) . The request π is served with no cost and the server does not migrate from π . The request π is served with the cost of π(π, π) and the server migrates from π to π with a cost of π(π, π) . The request π is served with no cost and the server does not migrate from π . The request π is served with the cost of π(π, π ) and the server migrates from π to π with a cost of π(π, π) . Therefore, we have πππ π‘ π΄πΏπΊ (π , π) = π(π , π) + π(π(π, π) + π(π, π) + π(π, π ) + π(π, π))= π(π , π) + π(π(π, π) + π(π , π))= π(π , π) + π(2π(π , π)).
Since lim πββ π(2π(π , π) + 4π(π , π))π(π , π) + π(2π(π , π)) = π(π , π) + 2π(π , π)π(π , π)= π β 2π β π β 4 πΏ + 2 β π β 3π + 22π β 2π β 8 πΏπ β 2π β π β 4 πΏ = π, then πππ π‘ ππππ΄ππ‘ (π ,π)πππ π‘
πππ (π ,π) is at least π . This completes the proof. β¬ In this paper, we proposed a deterministic algorithm for the page migration problem in ring networks with unit page size. The competitive ratio π β 3.326 of the algorithm is an improvement on the previous competitiveness of in our setting. A tight example was found to express a lower bound of π for the algorithm. If possible, one could seek to find an algorithm to cover a larger π· with better competitiveness than . References Bartal Y, Charikar M, Indyk P (2001) On page migration and other relaxed task systems. Theor Comput Sci 268:43-66. doi: 10.1016/S0304-3975(00)00259-0 2.
Bartal Y, Fiat A, Rabani Y (1995) Competitive algorithms for distributed data management. J Comput Syst Sci 51:341-358. doi:10.1006/jcss.1995.1073 3.
Bienkowski M (2012) Migrating and replicating data in networks. Comput Sci -Res Dev 27:169-179. doi: 10.1007/s00450-011-0150-8 4.
Black DL, Sleator DD (1989) Competitive Algorithms for Replication and Migration Problems. Technical Report CMU-CS-89-201. Carnegie Mellon University: Pittsburgh, PA, USA 5.
Chrobak M, Larmore LL, Reingold N, Westbrook J (1997) Page migration algorithms using work functions. J Algorithms 24:124-157. doi:10.1006/jagm.1996.0853 6.
Khorramian A, Matsubayashi A (2016) Uniform Page Migration Problem in Euclidean Space. Algorithms 9:57. doi: 10.3390/a9030057 7.
Lund C, Reingold N, Westbrook J, Yan D (1999) Competitive on-line algorithms for distributed data management. SIAM J Comput 28:1086-1111. Doi: 10.1137/S0097539795287824
Figure 5.
Representation of adversary model against TriAct Maggs BM, Meyer auf der Heide F, VΓΆcking B, Westermann M (1997) Exploiting Locality for Data Management in Systems of Limited Bandwidth. In Proceedings of the 38th Annual Symposium on Foundations of Computer Science, Miami Beach, FL, USA, pp. 284-293. 9.
Matsubayashi A (2008) Uniform page migration on general networks. Int J Pure Appl Math 42:161-168 10.
Matsubayashi A (2015) Asymptotically optimal online page migration on three points Algorithmica 71:1035-1064. doi: 10.1007/s00453-013-9841-9 11.
Matsubayashi A (2015) A 3+Omega (1) Lower Bound for Page Migration. In Proceedings of the 2015 Third International Symposium on Computing and Networking, Sapporo, Japan, pp. 314β320 12.
Meyer auf der Heide F, VΓΆcking B, Westermann M (1999) Provably Good and Practical Strategies for Non-Uniform Data Management in Networks. In Proceedings of the 7th Annual European Symposium on Algorithms (LNCS 1643), Prague, Czech Republic. Springer, New York, NY, USA, pp. 89-100 13.
Westbrook J (1994) Randomized algorithms for multiprocessor page migration. SIAM J Comput 23:951β965. doi:10.1137/S0097539791199796
Appendix A
The exact value of π is the positive solution of the equation βπ + 4π + π β 18π + 24 = 0. The strict solution is π = 1 β β9 βπ + 42 βπ β 716 βπ + ββ βπ + 48 βπ β9 βπ + 42 βπ β 71 + 719 βπ + 2832 , where π = β ..