663 Pages

facloc

Course: VIVO 22884, Fall 2008
School: Cornell
Rating:
 
 
 
 
 

Word Count: 305514

Document Preview

Location Facility with Hierarchical Facility Costs Zoya Svitkina Abstract We consider the facility location problem with hierarchical facility costs, and give a (4.236 + )-approximation algorithm using local search. The hierarchical facility location problem models multilevel service installation costs. Shmoys, Swamy and Levi [13] gave an approximation algorithm for a two-level version of the problem. Here we...

Register Now

Unformatted Document Excerpt

Coursehero >> New York >> Cornell >> VIVO 22884

Course Hero has millions of student submitted documents similar to the one
below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.

Course Hero has millions of student submitted documents similar to the one below including study guides, practice problems, reference materials, practice exams, textbook help and tutor support.
Location Facility with Hierarchical Facility Costs Zoya Svitkina Abstract We consider the facility location problem with hierarchical facility costs, and give a (4.236 + )-approximation algorithm using local search. The hierarchical facility location problem models multilevel service installation costs. Shmoys, Swamy and Levi [13] gave an approximation algorithm for a two-level version of the problem. Here we consider a multilevel problem, and give a constant factor approximation algorithm, independent of the number of levels, for the case of identical costs on all facilities. 1 Introduction In the basic facility location problem, we are given a set of clients and a set of possible facilities. A solution consists of opening some facilities and assigning each client to an open facility, with the objective of minimizing the sum of the facility opening cost and the client connection cost. In the most basic and well-studied version of the problem, the metric uncapacitated facility location, there is a metric of distances between the clients and the facilities, and the connection cost is the sum of distances between clients and the facilities to which they are assigned. Each facility has a cost given as part of the input, and the total facility opening cost is the sum of costs for the facilities that are opened. Facility location problems have been used to model a wide range of practical settings, including location problems, supply chain management, Web server locations, etc. While even the basic uncapacitated metric facility location problem is NP-complete, there are many good approximation algorithms known for it, using the whole range of techniques including local search, linear programming and the primal-dual method. The most studied extensions of the basic facility location problem involve facility costs that are more com Cornell University, Department of Computer Science, Upson Hall, Ithaca, NY 14853. Email: zoya@cs.cornell.edu. Supported in part by ONR grant N00014-98-1-0589. Cornell University, Department of Computer Science, Upson Hall, Ithaca, NY 14853. Email: eva@cs.cornell.edu. Supported in part by NSF grant CCR-0311333, ITR grant CCR-0325453, and ONR grant N00014-98-1-0589. Eva Tardos plex than the constant opening costs of the uncapacitated problem. Versions of the capacitated facility location problems aim to model the limited capacity of facilities to serve clients. In the most general of these models, the universal facility location problem [11], the facility cost is an arbitrary (non-decreasing) function of the number of clients assigned to the facility. In this paper, we study a variant of the facility location problem where facility cost depends on the set of clients assigned to the facility, and not just their number. We propose a general model in which the facility costs are submodular functions of the set of clients assigned to the facility, where submodularity models a natural economy of scale. We focus on a subclass of submodular cost functions which we call hierarchical costs. Shmoys, Swamy and Levi [13] introduced the problem of facility location with service installation costs. In their model, each client requests a certain service, which has to be installed at the facility where this client is assigned. There are costs for opening facilities and for installing services. The hierarchical facility location problem is an extension of this model to many levels of service costs. Instead of allowing only two levels (facility opening and service installation), we allow an arbitrarily deep hierarchy that describes the costs. Such a hierarchy can be used to model a richer set of cost structures. Our main result is a local search algorithm that gives a (4.236 + )-approximation (independent of the number of levels in the hierarchy) in the case that the costs are identical at all facilities. At the end of the paper we consider the general model in which the facility costs are submodular functions of the set of clients assigned to the facility, not necessarily dened based on a tree-structure. We conjecture that the problem admits a constant factor local search approximation algorithm if the facility costs are monotone submodular functions. This generalization would allow us to model an even wider range of applications. Our model and methods. More formally, we assume that we are given a set of facilities F, a set of demands or clients D, and a distance metric dist on the set F D, as is also the case for the standard facility location problem. In addition, we are given a rooted cost tree T (used to dene facility costs) whose leaves correspond to the dierent possible services. Each client requests a service, i.e., is associated with a leaf in the tree. Each node k of T has a non-negative cost, cost(k). The goal is to assign each client to a facility, minimizing the sum of the connection cost C and the facility cost F . The connection cost of a client j that is assigned to facility i is C(j) = dist(j, i). The facility cost for facility i, F (i), is a function of the set of clients assigned to i. We assume that the function is the same for all facilities, and is dened using the tree T as follows. For a set S of clients assigned to facility i, we use the notation TS to denote the subgraph of T induced by the nodes that lie on a path from the root to some leaf corresponding to a service requested by a client in S (see Figure 1). Then 1 2 4 8 5 9 6 3 7 Figure 1: Example of a cost tree. If clients corresponding to leaves 4 and 8 form the set S which is assigned to a facility i, then the cost of i would be F (i) = cost(1) + cost(2) + cost(4) + cost(5) + cost(8). Shaded nodes and thick edges form the subgraph TS . the cost of i is F (i) = cost(S) = kTS cost(k). The cost of an empty facility is zero. The overall objective then is to minimize C + F = jD C(j) + iF F (i). Our main result is a local search method, where the local optima are 5-approximate solutions to the problem, in the case that the costs are identical at all facilities. Then we improve this bound to 4.236 by scaling. Note that the problem with independent cost functions on dierent facilities is set cover-hard, as was shown by [13]. We develop the local search method in the next section. The algorithm starts with an arbitrary assignment of clients to facilities, and uses two types of local improvement moves: aggregate and disperse. The aggregate move is analogous to the move open, which opens a new facility, used in local search algorithms for the traditional facility location problem (e.g. [2, 1]). In that case, however, once a facility is open, it is easy to decide which clients should be assigned to it. In the case of our hierarchical service cost model, this is less easy to decide. In fact, there is no clear meaning of opening a facility, as the cost may depend dramatically on which clients are assigned to it. We describe the move in the next section, where we also prove that if there are no improving aggregate moves, then the connection cost of the current solution can be bounded. To bound the facility costs, we use a dierent operation, disperse, which is the analog of the traditional close operation. The high-level idea is to disperse the clients of one currently open facility to other facilities, and hence to save on facility cost. Implementing such a disperse move optimally can be used to solve the original problem in a single step. In Section 3 we describe an approximate disperse move that can be implemented in polynomial time. We then use the aggregate and disperse moves to show that a locally optimal solution is a 5-approximation for the problem. Using scaling we improve the bound to 4.236, and accepting only suciently large improvements, we can turn this into a polynomial time (4.236 + )approximation algorithm for the hierarchical facility location problem. Motivation. Our hierarchical facility location problem can be used to model practical scenarios, such as the costs of multiple levels of service installation [5]. For example, one may consider opening some stores and wonder about which items to carry in each of them. The cost of opening a store would be represented by the root of the tree, the cost of carrying a particular category of items (e.g., those supplied by a particular vendor) would be at a node one level down, that for a subcategory still lower, and so on. A client may then be identied with the item he wants to buy. Another possible application is for data storage. Then facilities are the le servers, and clients are the users (or contributors) of data. The connection cost is the price of transferring data over the network, and facility cost is the price for storing the data. The hierarchy may represent how similar the data items are, with the assumption that similar les can be compressed together to save storage cost. The generalization of our problem in which the facility costs are allowed to dier from each other by constant factors can model data gathering in sensor networks (see, for example, [16]). In that case, instead of representing storage expenses, the facility costs would model the cost of delivering compressed data to the destination. Related work. There has been much work on approximation algorithms for the uncapacitated facility location problem. Small constant factor approximation algorithms exist that use essentially every known approximation algorithmic technique, including local search [10, 2, 1], primal-dual method [9], and linear programming and rounding [14, 3, 4, 15]. The current best approximation guarantee is 1.52 [12], and no better than 1.463 approximation is possible unless NP P [7]. The most well-studied extension of the facility location problem considers facilities with capacities, where the capacity of a facility bounds the number of clients it can serve if opened. Many of the uncapacitated approximation algorithms extend to the version of the problem with soft capacities [9, 2, 1, 4], where soft capacities allow us to open a facility multiple times, in order to support more clients. Similarly many of the approximation algorithms can be used to derive bicriteria approximations for the capacitated case, by allowing the algorithm to violate the capacities to some extent. Local search is the only known algorithmic technique that extends to handle hard capacities, i.e., it gives an approximation algorithm that neither violates the capacities, nor opens the facilities multiple times. The most general such problem formulation is the universal facility location problem of Mahdian and Pl [11], where the cost a of a facility is an arbitrary monotone function of the number of clients assigned to it. In contrast, in the hierarchical facility location problem we consider, the facility cost depends on the set of clients assigned to the facility and not just their number. In the facility location with service installation costs, introduced by Shmoys, Swamy and Levi [13], the costs can be represented by a tree of height two. Note that the Shmoys et al. model is somewhat more general, as the costs need not be the same at all facilities. However, they also require that the facility costs are related in that they assume that the facilities have an ordering in which each earlier facility costs less than a later one for all services. For example, this rule allows proportional facility costs. The algorithm of [13] can be extended to handle hierarchical costs, but with approximation ratio that depends linearly on the height of the tree. In contrast, our algorithm yields a bound of 5, independent of the number of levels in the tree. The group facility location problem of Hayrapetyan, Swamy and Tardos [8] contains a similar two-level cost structure, but for connection costs. For facility costs they use the uncapacitated model. Notation. Finally, we dene some further notation that will be useful in the rest of the paper. The analysis of the algorithm compares a locally optimal solution to a xed globally optimal one. We call the former LOC and the latter OPT. Let C and F denote the connection and facility costs of LOC, respectively, and C and F denote the same quantities for OPT. For a client j, let f (j) be the facility where j is assigned in LOC and f (j) be the facility where j is assigned in OPT. For a facility i, D(i) denotes the set of clients assigned to i in LOC, and D (i) is the set assigned in OPT. If a set of clients S is moved to a facility i that already contains some clients D(i), then costi (S) is the additional facility cost that has to be paid, and is equal to cost(SD(i))cost(D(i)). 2 Aggregate move and the connection cost In this section we only consider one of the two local moves, aggregate. When performed on a facility i, it transfers some clients from other facilities to i. This change in assignment of clients aects the cost in three ways: the clients that change assignments have a changed connection cost; facility i has an increased facility cost; and other facilities may have decreased facility costs as some clients move away from them. While it is possible to nd the optimal way to move clients to facility i, we instead use a simplied cost that is easier to compute, and is good enough for our purposes. Rather than exactly computing the cost of the new assignment, we ignore the savings in cost at the other facilities, and we nd a set of clients S D minimizing the change in connection cost plus the added facility cost incurred at facility i. This estimated change in cost can be expressed as (2.1) jS dist(j, i) dist(j, f (j)) + costi (S). jS We call (2.1) the value of the aggregate move (despite the fact that expression (2.1) did not take into account the possible cost-savings at other facilities), and we call the move improving if it has negative value. Note that if a move is performed, then the real cost of the solution decreases by at least as much as estimated using the moves value, which means that the solution is indeed improving when we make improving moves. In the next subsection we show how to nd the optimal set S with respect to expression (2.1) for a given facility i. Then we show that if a solution has no improving aggregate moves, its connection cost can be bounded. 2.1 Finding the aggregate move with optimal value. In this and later sections we assume without loss of generality that the cost tree T is binary: if it is not, then any node with high degree can be expanded into a binary subtree without increasing the overall size of the tree by much. Similarly, we assume without loss of generality that each client is associated with a separate leaf of the tree. Consider a facility i on which the aggregate move is performed. Moving a particular client j from his current facility f (j) to i has two eects: the connection cost decreases by dist(j, f (j)) dist(j, i), and the facility cost at i increases. The goal is to nd a subset of clients for which the savings in connection cost outweigh the increased facility cost. For a client j we will think of the dierence b(j) = dist(j, f (j)) dist(j, i), as a budget that he has for paying the increased facility Proof. If there are no improving aggregate moves, then cost. Now consider the added facility cost incurred at expression (2.1) is nonnegative for moving any set of clients to any facility i. We consider expression (2.1) for facility i, which is the set of clients D (i) that are assigned to i in OPT. We have that costi (S) = cost(S D(i)) cost(D(i)) Lemma 2.2. The connection cost C of the locally optimal solution LOC can be bounded by the optimal cost as C C + F . for a set S. Notice that this is the same as the facility cost obtained from a modied cost tree T in which dist(j, f (j))+costi (D (i)) 0. dist(j, i) we set cost (k) = 0 for all nodes k TD(i) that are jD (i) jD (i) already paid for at i. Given this new notation, we seek a set S minimizing costi (S) b(S). If this expression Using the fact that costi (D (i)) cost(D (i)) and is negative, then transferring clients in S to i is an adding the inequalities for all facilities i, we get improving move. The set optimizing this expression, and hence dening the best aggregate move, can be cost(D (i)) 0, dist(j, f (j))+ dist(j, f (j)) found by a simple dynamic programming on the tree i j j T analogous to the algorithm used by Feigenbaum, Papadimitriou and Shenker [6] for cost-sharing on a or C C + F 0, which implies that C C + F . multicast tree. Lemma 2.1. The subset S that minimizes costi (S) b(S), and hence denes the aggregate move of minimum 3 Disperse move and the facility cost value for a given facility i, can be found by dynamic Next we consider the disperse move, which reassigns programming on the tree T in linear time O(|T |). clients from one facility i to other facilities, decreasing Proof. The optimal set S can be found using a bottom- the facility cost at i. We use this move to bound facility up traversal of T . For each node k T , we calculate costs. The outline of this section is analogous to that the maximum value v(k) that can be obtained by of the previous one. First we dene a certain class of including a subset of clients in the subtree rooted at disperse moves, then we show that the optimal move in k, and the corresponding subset S(k). This value is this class can be found in polynomial time, and then the dierence of the budgets of included clients and the we exhibit a particular set of moves that allows us to facility costs that have to be paid for including them. If bound the facility cost of a locally optimal solution. k is a leaf node and j is the client corresponding to it, 3.1 Denition of the disperse move. Consider a then facility i. The idea of the disperse move is to move some v(k) = max(0, b(j) cost(k)). of the clients assigned to facility i to other facilities. If We set S(k) = {j} if v(k) > 0 and otherwise. If k is we could nd the optimal such move, then one disperse an internal node with children k1 and k2 , then move would solve the whole problem: just start with all clients assigned to one facility, and do the optimal v(k) = max(0, v(k1 ) + v(k2 ) cost(k)), disperse move on that facility. As a result, we do not and S(k) = S(k1 ) S(k2 ) if v(k) > 0 and otherwise. consider the most general version of a disperse move It can be shown by induction on the depth of the tree with the exact evaluation function, but instead restrict that the resulting set S = S(r), where r is the root of our attention to a subclass of moves and an approximate T , is optimal. The move of transferring S(r) to facility evaluation. The key notion used to dene the restricted set of i has value v(r). moves we consider is that of a tree-partition. A treepartition of a set of clients S D is any partition 2.2 Bounding the connection cost. Now consider that can be obtained by cutting a subset of edges of a solution LOC with no improving aggregate moves. We TS and grouping the clients by the resulting connected bound the connection cost of this solution in a similar components of their associated tree leaves (see Figure way as used in local search algorithms for other facility 2). For example, if no edges are cut, then all clients are in the same set; if all leaf edges are cut, then each location problems. 1 2 K(S1) 4 8 5 9 k(S1) 3 6 7 improving move. 3.2 Finding the disperse move with optimal value. In this section we show how the optimal disperse move with respect to expression (3.2) can be found in polynomial time. First we prove a lemma that is useful for deriving the algorithm. Figure 2: Example of a tree-partition. Cutting the Lemma 3.1. There exists a disperse move of minimum two dashed edges produces three subsets: S1 = {4, 6}, value in which if Sh is assigned to facility f (Sh ), then S2 = {8, 9}, and S3 = {7}. The marked component is none of the nodes of K(Sh ) are paid for at f (Sh ). K(S1 ), node 1 is k(S1 ), and node 5 is k(S2 ). Proof. Given an optimal disperse move that does not satisfy the required condition, we transform it into one that does, without increasing the cost. If any client is in a separate set. Let us refer to the connected component associated with a set Sh as K(Sh ). Let node of K(Sh ) is paid for at facility f (Sh ), then so is k(Sh ) be the unique highest node of the connected k(Sh ), since it lies on the path from that node to the component K(Sh ), i.e. the one closest to the root of T . root. By our assumption that each client is associated A disperse move for facility i consists of a tree-partition with a dierent leaf of T , the node k(Sh ) has to be {Sh } of the set of clients D(i) currently at i, and a an internal node (there are at least two clients in facility f (Sh ) for each set Sh in the partition, which is its subtree: one belonging to Sh , and one at facility where this set should be reassigned. It is possible that f (Sh )). In this case we transform the tree-partition by cutting additional edges of the tree, namely the ones f (Sh ) = i for some Next sets. we dene the way we evaluate a disperse move. connecting k(Sh ) to its children (see Figure 3). This Consider a facility i, a tree-partition {Sh } of its clients, 1 1 and assume that we are assigning Sh to the facility f (Sh ). To estimate the facility cost of moving a set k(Sh) 2 3 3 Sh to i = f (Sh ), we use the incremental cost incurred by adding clients in Sh to the clients already at i , 4 5 6 7 4 5 6 7 costi (Sh ). We treat the facility i itself as if it were empty, i.e. for the purposes of expression (3.2), we 9 8 9 8 dene costi (Sh ) = cost(Sh ). For dierent sets Sh and Sh we do not take into account the savings incurred if we are adding both sets to the same facility, so we simply Figure 3: Operation performed in the proof of Lemma sum the costs h costf (Sh ) (Sh ) for the partition. This 3.1. Suppose that Sh consists of clients 4 and 8, and upper bounds the resulting facility costs. For the change that node 2 is paid for at the facility f (Sh ). in connection costs, we also use an upper bound instead of the exact value. Here the triangle inequality on the may split Sh into two sets, both of which we assign to distance metric is used: the increase in connection cost the same facility f (Sh ) as Sh was assigned. The new for client j that is moved from i to i is upper-bounded solution costs no more than the old one: the connection cost is clearly the same, and since the node k(Sh ) and by dist(i, i ). We wish to nd a tree-partition {Sh } of the clients ones above it are already paid for at f (Sh ), the facility D(i) and an assignment of each set Sh to a facility f (Sh ) cost does not increase. This procedure can be repeated eliminating each set that does not satisfy the condition, so as to minimize the expression in a top-down pass through the tree. (3.2) The algorithm for nding the optimal disperse move satisfying the conditions of Lemma 3.1 is based on where F (i) is the cost of facility i which is saved when dynamic programming. clients are removed from it. This expression, which we call the value of the disperse move, is an upper bound Lemma 3.2. For a given facility i, the disperse move on the change in the solution cost when the disperse with minimum value can be found by dynamic programmove is performed. Any move with negative value is an ming on the tree TD(i) in polynomial time. Sh Sh costf (Sh ) (Sh )+ |Sh |dist(i, f (Sh ))F (i), Proof. The algorithm makes a bottom-up pass through the tree. At each node k, it considers whether or not the tree edge above k should be cut, thus dening the treepartition. If the edge above k is cut, producing a new component, then the corresponding set of clients Sh is assigned to a facility f (Sh ) minimizing costf (Sh ) (Sh )+ |Sh | dist(i, f (Sh )) and satisfying the condition of Lemma 3.1. For a given tree-partition and a client j belonging to the set Sh in it, let k(j) be the highest node in K(Sh ). Three parameters describing a solution for the subtree below node k will be sucient for proceeding to higher levels and choosing the best solutions there. We call these parameters N (k), P (k), and Y (k). We dene N (k) to be the number of clients j from ks subtree for which k(j) is strictly higher than k. If the edge above k is cut, then N (k) = 0. This is the number of clients whose connection cost is yet to be determined at a node higher in the tree. For example, for node k = 2 in Figure 2, N (2) = 1, as only client 4 satises this property. Note that our way of estimating the increase in connection cost for each client reassigned from i to i by dist(i, i ) makes sure that the value of the move only depends on the number N (k) and not the actual set of N (k) clients that are reassigned. P (k) is the sum over connected components contained entirely in ks subtree of the connection and facility costs of moving the corresponding groups of clients. More formally, for each such Sh assigned to f (Sh ), the term |Sh |dist(i, f (Sh ))+costf (Sh ) (Sh ) is included in the sum. This is the cost that the solution has already paid for this subtree. In Figure 2, P (2) would include the connection cost and the facility cost of sending clients 8 and 9 to their new facility. Now consider the N (k) clients from ks subtree that will be assigned to a facility i later on. By Lemma 3.1, all costs in these clients component will have to be paid at i . Let Y (k) be the amount of this cost that comes from ks subtree. In other words, if U is a set of nodes which lie on a path between k and some client included in N (k), then Y (k) is the total cost of nodes in U . This is the facility cost that the solution has committed to paying. In Figure 2, Y (2) = cost(4) + cost(2). The idea of the dynamic programming algorithm is that the two values N (k) and P (k)+Y (k) fully describe the quality of the solution in the part of the tree rooted at k. For each node k and integer n {0, ..., |D|}, the algorithm computes the least possible value Ak (n) of the cost P (k) + Y (k) that can be achieved by a solution with N (k) = n. The table is constructed in a bottom-up pass through TD(i) . For each node k, the algorithm considers the options of cutting or not cutting the edge above it, lling in the entries of Ak corresponding to the outcomes. If k is an internal node with children k1 and k2 , then the algorithm also loops over all entries of Ak1 and Ak2 , combining them to construct Ak . The cost of the nal solution is Ar (0) for the root r of T . 3.3 Bounding the facility cost: a specic set of disperse moves. The way we bound facility cost of LOC is by focusing on one specic disperse move for each facility and noticing that these moves (like all moves in a locally optimal solution) have non-negative values. In this section we describe these disperse moves, which consist of a tree-partition of clients at each facility and a destination facility for each set of clients in the partition. Our technique involves nding a mapping on the set of clients, as was also done by Arya et al. [1], but is dierent in other respects. The idea is to nd for each client j a partner client (j), close to j in the cost tree, such that the two are at the same facility in OPT but at dierent facilities in LOC. Then j can be sent to facility f ((j)), the current facility of (j). This is good in two ways: rst, because (j) is close to j in T , the additional facility cost that we have to pay for j at f ((j)) is not too big; second, the connection cost for reassigning j can be bounded using the connection costs of j and (j) in OPT and in LOC (as shown in Figure 4). However, because of our inexact estimate of the facility cost in expression (3.2), if we reassign each client separately, then we may be paying certain facility costs multiple times. To avoid this, the clients are grouped into sets (in particular, ones forming a treepartition), and each set is moved as a unit to the current facility f ((j)) of one of the members of that set. f(j) f *(j)=f *((j)) C*(j) C(j) j f((j)) C*((j)) C((j)) (j) Figure 4: Clients j and (j) are assigned to the same facility in OPT, but to dierent facilities in LOC (unless (j) = j). The marked distances are used in the proof of Lemma 3.4. Dening the mapping. We start by dening the mapping . We do this separately for sets D (l) of clients assigned to each facility l in OPT. The mapping : D (l) D (l) is 1-1. Note that the following hypothetical procedure is only used for the analysis, and need not (and cannot) be performed by the algorithm. Consider a facility l used in the optimal solution. We will perform a bottom-up pass through the cost tree of its clients, TD (l) , mapping each client j D (l) to another client (j) D (l). This procedure works even without our earlier simplifying assumptions of the tree being binary and of each client being at a separate leaf. First consider the special case that TD (l) consists of only one node, which contains the set of clients S = D (l). We partition the clients in S according to their facility in LOC, forming subsets D(i)S for all facilities i (see Figure 5). We aim to assign (j) S for all clients j S satisfying the condition that f (j) = f ((j)), i.e. that j and (j) are assigned to dierent facilities in LOC. If there is a facility i that has the majority of clients, i.e., |D(i) S| > |S|/2, then we cannot assign all the clients at this level, so we assign as many of them as possible, and leave the others to be assigned later. l D*(l) propagated to the parent of k (we say that these clients pass through the edge between k and its parent). See Figure 6 for an example of this process. If k is the root, then the leftover clients are assigned to themselves, that is we set (j) = j. Note that we have f (j) = f ((j)) for all j, and f (j) = f ((j)) unless j = (j). a2 a2 b1 b1 a1 a2 a1 a 2 a1 c1 a2 c1 a3 a3 Figure 6: Example of the mapping. The leaves {b1 , a1 , a2 , c1 , a3 } represent clients assigned to facility i in OPT. The dierent letters represent dierent facilities to which they are assigned in LOC. The labels on edges indicate which clients pass through them. The result is the mapping a1 b1 and c1 a3 , with a2 assigned to itself. The thick edges are included in E(a). Dening the tree-partition and the facility assignment. Consider a facility i used in LOC, and the set of clients D(i) assigned to i. We need to nd a tree-partition for this set of clients. The above process assigning (j) for each client j was performed separately for the sets of clients D (l) assigned to each facility l in OPT. To form a tree-partition we combine the information obtained from performing the above procedure on all the optimal facilities. For a particular facility i in LOC, let E(i) be the set of all edges of T that clients from D(i) pass through. For example, the thick edges in Figure 6 belong to the set E(a), where a is the facility of a1 , a2 and a3 in LOC. The set is the union of all such edges, from all the optimal facilities. E(i) induces some connected components in TD(i) , which therefore dene a tree-partition. We call i this tree-partition of clients belonging to i in LOC {Sh }. For example, if LOC=OPT, then the facility i = l is always a majority facility at all nodes of TD (l) and so E(i) contains all edges of the cost tree TD(i) = TD (i) . As a result, the tree-partition contains a single set with all of TD(i) for each i. Recall that the idea of the mapping was to nd for each client j assigned to a facility i = f (j) in LOC a partner client (j), so that we can reassign j to the facility f ((j)) when dispersing facility i. If we assign each client separately, then we may be paying certain facility costs multiple times. To avoid this, we i want to assign all clients in a set Sh to one facility (j) j partition by facility in LOC leftover clients Figure 5: Example of how is dened if the set of clients D (l) has only one level. If there are more levels, then the leftover clients of the majority facility propagate up the tree. More generally, we consider such a partition at each level of the tree. Clients that are not assigned at one level propagate up the tree to be assigned at a higher node. All clients start out at their corresponding leaves. At each node k in TD (l) , bottom-up, perform the following actions. Consider the set S of clients at this node. These clients may in general belong to dierent facilities in LOC. Let i be a majority facility, one for which |D(i) S| is the largest. In the simpler case, |D(i)S| |S|/2. Then we can assign (j) for all clients j S satisfying the condition that f (j) = f ((j)), and none of the clients are propagated up the tree. In the other case, if |D(i) S| > |S|/2, it is impossible to nd a mapping satisfying our condition among the clients at k. So we take only |S D(i)| clients from D(i) and assign the mapping between them and clients from S D(i). The leftover clients from D(i) are i i f ((j)) for some j Sh . A set of clients Sh in the tree i partition is assigned to the facility f (Sh ) = i from the i set {i : i = f ((j)) f or some j Sh } that minimizes i dist(i, i ). For example, if (j) = j for any j Sh , then we set i = i. i The tree-partition {Sh } and the facility assignment i f (Sh ) dene the desired specic disperse move for the facility i. Now consider the case that (j) = j. Then the least common ancestor of j and (j), say k, has to be i in the connected component dening Sh . Then k and nodes above it in the tree are paid for at the facility i i f (Sh ) = f ((j)). The path from a client j Sh to i one of these nodes is paid for by Bh . i Lemma 3.4. For the...

Find millions of documents on Course Hero - Study Guides, Lecture Notes, Reference Materials, Practice Exams and more. Course Hero has millions of course specific materials providing students with the best way to expand their education.

Below is a small sample set of documents:

Cornell - VIVO - 22884
Mathematical Programming 62 (1993) 461-474 North-Holland461An approximation algorithm for the generalized assignment problemDavid B. Shmoys* and Eva Tardos*School of Operations Research and Engineering. Cornell University, 232 ET&C Building, It
Cornell - VIVO - 22884
Cornell - VIVO - 22884
Min-Max Multiway Cut Zoya Svitkina and Eva TardosCornell University, Department of Computer Science, Upson Hall, Ithaca, NY 14853. {zoya, eva}@cs.cornell.eduAbstract. We propose the Min-max multiway cut problem, a variant of the traditional Multi
Cornell - ASTRO - 2008
International Journal of Modern Physics D Vol. 17, No. 10 (2008) 17231729 c World Scientic Publishing CompanyMHD SIMULATIONS OF ACCRETION ONTO A MAGNETIZED NEUTRON STAR IN THE PROPELLER REGIMEO. D. TOROPINA Space Research Institute, Profsojuznaja
Cornell - CHIN - 201
Monday 1/19 Course introduction 1/26 L-15 2/2 Test I (L-14,15) 2/9 L-17 2/16 L-18 2/23 L-19 3/2 L-20 3/9 L-21 Spring Break 3/23 L-22 3/30 L-23 4/6 L-24 4/13 L-24, 25 4/20 L-26 4/27 L-26, 27Tuesday 1/20 L-14 1/27 L-15 2/3 L-16 2/10 L-17 2/17 L-18 2/
Cornell - CHIN - 201
Chinese 2202 Course ScheduleWeek 1 & Week 2 Spring, 20091/19 Monday1/20 Tuesday1/21 Wednesday1/22 Thursday1/23 Fridayclass contentCourse introductionL-14, text and vocabularyL-14, text and grammarL-14 review & discussionL-14 Tr
Cornell - CHIN - 201
Chinese 2202 Syllabus Spring, 2009Instructors: Offices: E-mail:TENG Qiuyun LI Fangfang 360Rockefeller Hall 254-6585 qt11@cornell.edu fl223@cornell.eduDONG Hongyuan SHEN Dongming 181 Rockefeller Hall 255-0685 hd34@cornell.edu ds562@cornell.edu 1
Cornell - CHIN - 201
Chinese 2202 Course ScheduleWeek 5 & Week 6Spring, 2009 2/17 Tuesday 2/18 Wednesday 2/19 Thursday 2/20 Friday2/16 Mondayclass contentL-18, text and vocabularyL-18, text and grammarL-18 review & discussionL-18 review, exercises II and V
Cornell - CHIN - 201
Chinese 2202 Course ScheduleWeek 7 & Week 8Spring, 2009 3/3 Tuesday 3/4 Wednesday 3/5 Thursday 3/6 Friday3/2 Mondayclass contentL-20, text and vocabularyL-20, text and grammarL-20 Translation & exercisesL-21, text and vocabularyL-21,
Cornell - CHIN - 201
Chinese 2202 Course ScheduleWeek 3 & Week 4 Spring, 20092/2 Monday2/3 Tuesday2/4 Wednesday2/5 Thursday2/6 Fridayclass contentTest I (L-14, 15)L-16, text and vocabularyL-16, text and grammar, Review and discussion L-16 review, do th
Cornell - CHIN - 411
Chinese 4412 1/19 Monday 1/26 2/2 2/9 2/16 2/23 2 3/2 1 3/9 Spring Break 3/23 12 3/30 4/6 4/13 4/20 2 4/27 Course Schedule 1/21 Wednesday 1/28 2/4 2/11 2/18 2/25 3/4 3/11 Spring Break 3/25 23 4/1 4/8
Cornell - VIVO - 24289
Cornell Technical Report (Revised) cul.cis/TR2005-1980Thwarting P2P Pollution Using Object ReputationKevin Walsh and Emin G n Sirer u Department of Computer Science Cornell University, Ithaca, NY, 14850AbstractThis paper describes Credence, a d
Cornell - VIVO - 24289
Cornell Technical Report (Revised) cul.cis/TR2005-1980Thwarting P2P Pollution Using Object ReputationKevin Walsh and Emin G n Sirer u Department of Computer Science Cornell University, Ithaca, NY, 14850AbstractThis paper describes Credence, a d
Cornell - VIVO - 24289
NOTE: This is a preliminary release of an article accepted by the ACM Transactions on Modeling and Computer Simulation. The denitive version is currently in production at ACM and, when released, will supersede this version. Copyright (C) 2003 by the
Cornell - VIVO - 24289
NOTE: This is a preliminary release of an article accepted by the ACM Transactions on Modeling and Computer Simulation. The denitive version is currently in production at ACM and, when released, will supersede this version. Copyright (C) 2003 by the
Cornell - VIVO - 24289
Proceedings of the 2003 Winter Simulation Conference S. Chick, P. J. S nchez, D. Ferrin, and D. J. Morrice, eds. a STAGED SIMULATION FOR IMPROVING SCALE AND PERFORMANCE OF WIRELESS NETWORK SIMULATIONS Kevin Walsh Emin G n Sirer u Department of Comput
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT Homework Homework #1, due NEXT Tues. 1/27/09 (!): Ex. 1.1.4(c,d,e), rest optional; Ex. 1.1.8; Ex. 1.1.9. I rarely assign derivation / steps-left-as-an-exercise problems, but it seemed good here. Announcements Please
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT Homework Course questionnaire: if you didnt turn it in, please leave it by Friday in my box. Homework #1, due Tues. 1/27/09: Ex. 1.1.4(c,d,e), rest optional; Ex. 1.1.8; Ex. 1.1.9. Readings: Lec. 1.2, start 1.3 Please
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT Announcements Next week, probably Monday morning 2/2 or Weds afternoon 2/4, well have a premakeup lecture. (Ill be out of town a week, missing lectures Feb. 17 and 19.) Homework Future HW#2 (due Tues. 2/3): Ex 1.2.2,
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT for * M 2/3 * and Tu 2/4/09 Announcements (PRE) MAKEUP LECTURE: Monday morning 2/2, room 309 Clark, sometime between 10 AM - 12 noon (exact time will be sent by email after class today 1/29). Teaser question for 2/3,
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT for Tu 2/3/09 Homework HW#2 (due Tues. 2/3): Ex 1.2.2, 1.2.5, 1.3.3 (1.2.3 and 1.2.4 recommended). Ex. 1.3.3 has been corrected on 2/1/09 Additional correction: eq. (1.3.2) [sic] in the Sec. 1.3 correction handout sh
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT Homework HW#3 (due Tues. 2/10): Ex. 1.4.3. Exercise from phonon lectures undecided; in 2007, I assigned Ex. 1.5.3, and two exercises from 1.6 (2007 exercises 1.5.6 and 1.5.8). I expect to assign two of those three ph
Cornell - P - 636
YOUR NAME: P 636 DAILY ASSIGNMENT Seminars M 2/9/09 2:30 PM Clark 243: Disorder eects on quantum phase transitions, David Schwab, UCLA. (Theory talk; seems to expect a detailed knowledge of advanced stat mech, and not so deep about quantum solid stat
Cornell - P - 636
Homework 1 SolutionsPhysics 636 - Solid State Physics 2by Ravishankar SundararamanEx. 1.1.4 Operators in direct and Fourier space(a) (Optional) We want to show that the Fourier space operators dened (in 1.1.17) as c k K the anti-commutation r
Cornell - P - 636
PHYSICS 636: TERM PAPER INFORMATION 2009 Due dates: (1) Topics Tentative proposal: due Weds. 2/11/09. (i.e., soon!). (2) Draft: due Mon. 3/30/09? (1 week after spring break). (3) Peer review reports: due 2 weeks after drafts. (4) Final paper: Tuesda
Cornell - P - 636
Physics 636 term paper topics PHYSICS 636: TERM PAPER TOPIC IDEAS1Besides this list, I suggest browsing through the table of contents for the lectures which I handed out. If your topic was covered in a lecture, I can give you an old version of th
Cornell - CS - 05
A Self-Repairing Peer-to-Peer System Resilient to Dynamic Adversarial ChurnFabian Kuhn, Stefan Schmid, Roger Wattenhofer {kuhn, schmiste, wattenhofer}@tik.ee.ethz.chComputer Engineering and Networks Laboratory (TIK), ETH Zurich, 8092 Zurich, Switze
Cornell - CS - 05
A First Look at Peer-to-Peer Worms: Threats and DefensesLidong Zhou , Lintao Zhang , Frank McSherry , Nicole Immorlica, Manuel Costa , and Steve ChienResearch Silicon Valley; {lidongz,lintaoz,mcsherry,schien}@microsoft.com for Computer Science, MIT
Cornell - CS - 05
A Taxonomy of Rational AttacksSeth James Nielsonsethn@cs.rice.edu scrosby@cs.rice.edu Department of Computer Science, Rice UniversityScott A. Crosbydwallach@cs.rice.eduDan S. WallachAbstract For peer-to-peer services to be effective, partic
Cornell - CS - 05
Brushwood: Distributed Trees in Peer-to-Peer SystemsChi Zhang Arvind Krishnamurthy Randolph Y. WangAbstractThere is an increasing demand for locality-preserving distribution of complex data structures in peer-to-peer systems. Current systems eith
Cornell - CS - 05
Arpeggio: Metadata Searching and Content Sharing with ChordAustin T. Clements, Dan R. K. Ports, David R. Karger MIT Computer Science and Articial Intelligence Laboratory{aclements, drkp, karger}@mit.eduJanuary 21, 2005AbstractArpeggio is a pe
Cornell - CS - 05
OverCite: A Cooperative Digital Research LibraryJeremy Stribling Isaac G. Councill Jinyang Li , , , M. Frans Kaashoek David R. Karger Robert Morris Scott Shenker , , ,AbstractCiteSeer is a well-known online resource for the computer science resear
Cornell - CS - 05
NetProler: Proling Wide-Area Networks Using Peer CooperationVenkata N. Padmanabhan Microsoft Research Sriram Ramabhadran * UC San Diego Jitendra Padhye Microsoft ResearchAbstract Our work is motivated by two observations about the state of network
Cornell - CS - 05
A Statistical Theory of Chord under Churn Supriya Krishnamurthy1 , Sameh El-Ansary1 , Erik Aurell1,2 and Seif Haridi1,3 1 Swedish Institute of Computer Science (SICS), Sweden 2 Department of Physics, KTH-Royal Institute of Technology, Sweden 3 IMIT,
Cornell - CS - 05
Peering Peer-to-Peer ProvidersHari Balakrishnan, Scott Shenker, and Michael Walsh pppp@nms.csail.mit.edu AbstractThe early peer-to-peer applications eschewed commercial arrangements and instead established a grass-roots model in which the collectio
Cornell - CS - 05
1The Impact of Heterogeneous Bandwidth Constraints on DHT-Based Multicast ProtocolsAshwin R. Bharambe , Sanjay G. Rao , Venkata N. Padmanabhan , Srinivasan Seshan , and Hui Zhang Carnegie Mellon University Purdue University Microsoft Researc
Cornell - CS - 05
Chainsaw: Eliminating Trees from Overlay MulticastVinay Pai, Kapil Kumar, Karthik Tamilmani, Vinay Sambamurthy, Alexander E. Mohr Department of Computer Science Stony Brook University {vinay,kkumar,tamilman,vsmurthy,amohr}@cs.stonybrook.edu Abstract
Cornell - CS - 05
FeedTree: Sharing Web micronews with peer-to-peer event noticationDan Sandler Alan Mislove Ansley Post Peter Druschel Department of Computer Science Rice University, Houston (TX) {dsandler,amislove,abpost,druschel}@cs.rice.eduAbstractSyndication
Cornell - CS - 05
Hybrid Overlay Structure Based on Random WalksRuixiong Tian, Yongqiang Xiong, Qian Zhang, Bo Li, Ben Y. Zhao, Xing LiAbstract Application-level multicast on structured overlays often suer several drawbacks: 1) The regularity of the architecture mak
Cornell - CS - 05
Quickly routing searches without having to move contentBrian F. CooperCenter for Experimental Research in Computer Systems College of Computing, Georgia Institute of Technology cooperb@cc.gatech.eduAbstractA great deal of work has been done to i
Cornell - CS - 05
Practical Locality-Awareness for Large Scale Information SharingIttai Abraham Ankur Badola Danny Bickson Dahlia Malkhi Sharad Maloo Saar RonAbstractTulip is an overlay for routing, searching and publish-lookup information sharing. It offers a un
Cornell - CS - 05
An Empirical Study of Free-Riding Behavior in the Maze P2P File-Sharing SystemMao Yang Beijing University ym@net.pku.edu.cn Zheng Zhang Microsoft Research Asia zzhang@microsoft.com Xiaoming Li Beijing University lxm@net.pku.edu.cn Yafei Dai Beijing
Cornell - CS - 05
THE BITTORRENT P2P FILE-SHARING SYSTEM: MEASUREMENTS AND ANALYSIS J.A. Pouwelse, P. Garbacki, D.H.J. Epema, H.J. Sips Department of Computer Science, Delft University of Technology, the Netherlands j.a.pouwelse@ewi.tudelft.nlABSTRACT Of the many P2
Cornell - CS - 05
Dynamic Load Balancing in Distributed Hash TablesMarcin Bienkowski Miroslaw KorzeniowskiFriedhelm Meyer auf der HeideAbstractIn Peer-to-Peer networks based on consistent hashing and ring topology each server is responsible for an interval c
Cornell - CS - 05
High Availability in DHTs: Erasure Coding vs. ReplicationRodrigo Rodrigues and Barbara Liskov MIT AbstractHigh availability in peer-to-peer DHTs requires data redundancy. This paper compares two popular redundancy schemes: replication and erasure c
Cornell - CS - 05
Conservation vs. Consensus in Peer-to-Peer Preservation SystemsPrashanth P. Bungale, Geoffrey Goodell, Mema Roussopoulos Division of Engineering and Applied Sciences, Harvard University {prash, goodell, mema}@eecs.harvard.edu1Abstract The proble
Cornell - CS - 05
Locality Prediction for Oblivious ClientsKevin P. Shanahan, Michael J. Freedman New York University www.coralcdn.org Abstracthowever, cannot easily produce aggregated static topology maps nor specify host deployments [4]. To improve performance, l
Cornell - CS - 05
Impact of Neighbor Selection on Performance and Resilience of Structured P2P NetworksByung-Gon Chun , Ben Y. Zhao , and John D. KubiatowiczComputer Science Division, U. C. Berkeley Department of Computer Science, U. C. Santa Barbara bgchun, kubitro
Cornell - CS - 05
Evaluating DHT-Based Service Placement for Stream-Based OverlaysPeter Pietzuch, Jeffrey Shneidman, Jonathan Ledlie, Matt Welsh, Margo Seltzer, Mema RoussopoulosHarvard University hourglass@eecs.harvard.eduAbstractStream-based overlay networks (S
Cornell - ASIAN - 450
PALI 445 0 Rockefeller 346 Mon. & Wed. 10.45-12 Spring Semester 2009Prof. Anne M. Blackburn Office: Rockefeller 346 Tel.: 254.6501 amb242@cornell.edu Office Hours: Tues. and Thurs. 3.30-4.30 Readings in Pa liTexts We will finish the last two less
Cornell - VIVO - 10193
BEE 6870 Seminar SeriesThe Science and Engineering Challenges to the Development of Sustainable Biobased IndustriesFall 2008 Speaker Schedule Seminar: 1:25-2:15 PM Room 125 Riley-Robb Hall8/28 9/4 9/11 9/18 Dr. Stephane Corgie, Research Associate
Cornell - PAGES - 34
Thresholds LEGISLATING KITSCHThe Plastic Lawn Flamingo: Portrait of a CommodityBYMEDINA LASANSKYDesigned by Don Featherstone in 1957 to grace the front lawns of suburban America, the pink plastic lawn flamingoquickly became a familiar featu
Cornell - PAGES - 248
LMTO-ASA basic package (v6.11)This file documents the basic LMTO and TBE program packages.Written by M. van Schilfgaarde, A.T.Paxton, J. Klepeis and M. Methfessel email mvansch@ca.sandia.gov Documentation for Version 6.11, July 20011. Purpose of
Cornell - PAGES - 248
ASA tutorial (v6.11)This tutorial uses the Si input file ctrl.si found in directory `doc/ASAsamples.' (Output files are also in this directory.) It assumes you have read the ASA documentation. Other useful illustrations of program features not found
Cornell - PAGES - 248
FP tutorial (v6.11)This tutorial uses the Al input file ctrl.al found in directory `doc/fp/samples.' (Output files are also in this directory.) It assumes you have read the FP documentation and the ASA documentation. Other useful illustrations of pr
Cornell - PAGES - 248
ASA Green's function package (v6.11)This package implements the ASA local spin-density approximation using Green's functions. It adds a program `lmgf' to the ASA suite, which plays approximately the same role as the LMTO-ASA band program `lm'. Struc
Cornell - PAGES - 248
Cornell - PAGES - 248
Free Electron Tutorial for LMPGDerek Stewart Cornell Nanoscale Facility Ithaca, NY stewart@cnf.cornell.edu December 14, 20051Transmission BasicsIn the lmpg code, transport is calculated based on a layered Greens function approach which describ
Cornell - PAGES - 34
Cornell - PAGES - 248
- ASA Green's function package (v6.11) -This package implements the ASA local spin-density approximation using Green's functions. It adds a program `lmgf' to the ASA suite, which plays approximately the same role as the LMTO-ASA band program `lm'. -
Cornell - PAGES - 248
- Noncollinear package (v6.12) -This package extends the ASA local spin-density approximation to the noncollinear case, in the rigid spin approximation. Also the forces on the magnetic spin orientations is computed, and programs lm and lmgf can use t