A polynomial time 12-approximation algorithm for restricted Santa Claus problem
aa r X i v : . [ c s . D S ] A ug A polynomial time 12-approximation algorithm for the restricted Santa Clausproblem
S. Anil Kumar ∗ and N.S. Narayanaswamy † Indian Institute of Technology Madras
Abstract
The Santa Claus problem is a well known
N P -hard problem in the class of resource allocationproblems. In this problem, we are given a set J of jobs to be allocated among a set of machines M in such a way that machine i on allocating job j gets size p ij . We are required to allocate thejobs in J among the machines in M so as to maximise the minimum total size on all machines.Even though, this general case of the problem has unbounded integrality gap [1], the restrictedcase of the problem suggested by Bansal and Sviridenko [1] is known to have constant integralitygap [2] [3]. The best known polynomial time approximation algorithm for solving this restrictedcase has an approximation ratio of 13.In this paper, we consider the restricted case of the problem and improve the current bestapproximation ratio by presenting a polynomial time 12-approximation algorithm using linearprogramming and semi-definite programming. Our algorithm starts by solving the configurationLP and uses the optimum value to get a 12-gap instance. This is then followed by the well-knownclustering technique of Bansal and Sviridenko [1]. We then apply the analysis of Asadpour etal. [2,3] to show that the clustered instance has an integer solution which is at least times thebest possible value, which was computed by solving the configuration LP. To find this solution,we formulate a problem called the Extended Assignment Problem, and formulate it as an LP.We then, show that the associated polytope is integral and gives us an fractional solution ofvalue at least times the optimum. From this solution we find a solution to a new quadraticprogram that we introduce to select one machine from each cluster, and then we show thatthe resulting instance has an Assignment LP fractional solution of value at least times theoptimum. We then use the well known rounding technique due to Bezakova and Dani [4] on the12-gap instance to get our 12-approximate solution. Keywords.
Configuration LP, Fair Allocation, Approximation Algorithm
Resource Allocation problems are fundamental to computing. They provide a vast class of challengingalgorithmic questions in many computational settings. A wide class of these problems are max-minfair allocation problems, which focus on distributing the available resources to the underlyingentities in the fairest way possible. Santa Claus problem is one of such problems and was proposedby Bansal and Sviridenko [1]. A Santa Claus instance is a triplet where M is a set of m machines, J is a set of n jobs to be allocated among the machines in M and P is a table of dimension m × n indexed by a pair of machine and job such ( i, j ) th entry constraints the size p ij exerted by job j ∗ Indian Institute of Technology Madras, [email protected] † Indian Institute of Technology Madras, [email protected]
1n machine i and we are asked to find an allocation of the jobs in J among the machines in M insuch a way that min n P j ∈J p ij (cid:12)(cid:12)(cid:12) i ∈ M o is maximised.The work due to Bansal and Sviridenko [1] attempts to find the solutions to the problemby developing approximation algorithms using linear programming approach and establishes onenegative result and two positive results. The negative result is that the general version of theproblem problem has unbounded integrality gap that grows as Ω( √ m ). Hence a lot of focus hasbeen to understand the complexity of a restricted case of the problem which is known as the restricted Santa Claus problem and is given in Figure 1. Input :-
A Santa Claus instance I = hM , J , Pi where P [ i, j ] ∈ { , P j } for each i ∈ M and j ∈ J . Output:-
The allocation of the jobs in J among the machines in M in such a waythat min n P j ∈J p ij (cid:12)(cid:12)(cid:12) i ∈ M o is maximised.Figure 1: The restricted Santa Claus problem [1]A natural interpretation of the restricted case of the problem is that each job is interested inonly some machines for the allocation and has identical size on all such machines. The first positiveresult in the work due to Bansal and Sviridenko [1] gives a O (cid:16) ln n ln ln n (cid:17) randomised approximationalgorithm for solving the restricted Santa Claus problem using a machine job clustering techniqueand randomised rounding. The second positive result improves the first result by presenting a O (cid:16) ln ln m ln ln ln m (cid:17) approximation algorithm. The paper also specifies a combinatorial conjecture whichif true establishes the constant integrality gap of the restricted version.Later Asadpour et al. [2] established two positive results in connection with the restricted SantaClaus problem. They showed that restricted Santa Claus problem has a integrality gap by provingthe conjecture given by Bansal and Sviridenko using the Haxell’s condition for hypergraph perfectmatching [5]. They also established a 5-approximation algorithm for the restricted case by treatingthe problem as a matching problem in hypergraphs and finding suitable allocations by introducingthe notion of alternating tree and this algorithm was later refined to give a 4-approximate solution[3]. Even though this method provides approximate solutions nearer to the best theoretically knownoptimum, it lacks due to the exponential time complexity involved in the underlying computation.A work that is related with the original work due to Bansal and Sviridenko was due to Feige [6]which shows that the O (cid:16) ln ln m ln ln ln m (cid:17) algorithm in fact approximates the optimum value to within aconstant factor. Even though the work due to Feige established the existence of constant factorapproximation algorithms for the restricted Santa Claus problem, it does not give constructive ideasto develop such constant approximation factor approximation algorithms which run in polynomialtime. Later in 2017, Chidambaram et al. [7] formulated two approximation algorithms with constantapproximation factor and running in polynomial time for solving the restricted case. The firstresults presents a 36-approximation which uses the machine job clustering technique given in thework due to Bansal and Svridenko along with the alternating tree technique given in the work dueto Asadpour et al. . The second algorithm is a 13-approximation algorithm which is a combinatorialalgorithm. Both the algorithm uses techniques such as lazy updates and greedy choice to limit therunning time to within polynomial factor.A further related work on Santa Claus problem due to Chakrabarty et.al. [8] showed theexistence of a O ( n ǫ ) approximation algorithm for the problem which runs in time n O ( ǫ ) using2 linear program with integrality gap Ω( √ m ). They also investigated a special case of the problemwhere each job has non zero size for at most two machines and proved that even this special caseis N P -hard to approximate within a factor less than 2. Another related work due to Woeginger [9]investigated an even more restricted version namely the uniform case where the size of a job on allthe machines are the same and they derived a PTAS for this case.
In this paper, we focus on solving the restricted Santa Claus problem given in figure 1. Thiswork is motivated by the existence of large gap between the best theoretical integrality gap of 3for the restricted Santa Claus problem as evident from result due to Asadpour et al. [2, 3] and theapproximation ratio of 13 given by the best known polynomial time algorithm due to Chidambaram et al. [7]. We narrow this gap by designing a polynomial time approximation algorithm having anapproximation guarantee of 12. More precisely, we prove the following theorem.
Theorem 1.
There exists a polynomial time 12-approximation algorithm for the restricted SantaClaus problem.
Our methods are primarily based on Linear Programming with several novel techniques.1. We use the machine job clustering technique due to Bansal and Sviridenko [1] as the basicplatform to design our algorithm. We show that a certain way of machine job clusteringensures the existence an integer solution which assigns small job configurations of size T toexactly one machine in each super machine, if we start with a 12-gap instance (Theorem 2).We establish such a machine job clustering by grouping the machines in the input Santa Clausinstance into upper class machines and middle class machines. This approach of grouping themachines ensures that we can form variants of Configuration LP involving all the machinesand the small jobs in the given instance. We then show that the clustered instance has aninteger solution of size T , by applying the techniques of Asadpour et.al [2] [3]. We then showthat this integer solution is a feasible solution for a configuration LP on the clustered instancewith bundles of size T . We then show that this implies that a bilinear program which we callthe Extended Assignment Program has a fractional solution of value at least T .2. Using the fractional solution to the Extended Assignment Program, we obtain a deterministicpolynomial time algorithm to choose a single machine from each super machine, which can beassigned small job configurations. In particular, our algorithm finds an integer 12-approximatesolution that allocates small job configurations to a list of machines containing exactly onemachine from each super machine and the middle class machines. This is achieved by applyingthe rounding method due to Bezakova and Dani [4] to obtain the desired 12-approximatesolution.The following are the notable attributes and consequences of our results.1. The algorithm is conceptually simple and is yet another witness to the effectiveness of theconfiguration LP to obtained improved approximation ratios.2. The algorithm neither uses any alternating tree technique [2,3] nor apply any greedy techniquessuch as Lazy Local Search and Greedy Players [7] to find the 12-approximate solution. Weuse the alternating tree method due to Asadpour et.al [2, 3] only to prove that there existsan integer solution that allocates small jobs among the middle class machines and exactlyone machine from each super machine in such a way that each of these super machines getsa total size of at least T (Theorem 2). 3he algorithm does not however have the features of the combinatorial algorithm designed byChidambaram et.al [7]. The remainder of the paper is organised as follows. In section 2, we discuss some building blocksof linear programming techniques which are used in Santa Claus problem. This includes a briefoverview of the techniques used in the works by Bansal and Sviridenko [1] and Asadpour et al. [2,3].Section 3 starts with an outline of our algorithm and detail each step as a separate subsection. Insection 3.1, we present an outline of our algorithm. Section 3.2 explains how we can classify the setof machines in the given Santa Claus instance into upper class machines and middle class machines.Section 3.3 shows that we can compute a solution for the given instance in polynomial time, if thereare no upper class machines within the given instance. In section 3.4, we deal with the case wherethe Santa Claus instance has one or upper class machines and is this section further divided intofour sections. Section 3.4.1 explains how we can form the super machines out of the upper classmachines and the composite machines. Section 3.4.2, we define the Modified Configuration LP andthe Extended Configuration LP and prove Theorem 2. In section 3.4.3, we define the ExtendedAssignment Program and use Theorem 2 to prove that we can compute in polynomial time, a listcontaining exactly one upper class machine from each composite machine and a 7-approximateinteger solution which assigns small job configurations among the machines in the list. We usethis result in section 3.4.4 to find the 7-approximate solution for the given Santa Claus instancewithin polynomial time. We close Section 3 with section 3.5 which gives the proof of our mainresult(Theorem 1) by combining the results established in the preceding subsections. We concludethe paper in Section 4 giving some areas where the methods specified in this work can be used toderive good results.
Throughout this paper we have used terminology from the papers of Bansal and Svirideno [1],Asadpour et al. [2] [3]. In this paper, we consider the restricted Santa Claus problem and hencewe use the term Santa Claus instance to refer to a restricted Santa Claus instance unless statedotherwise. We use two linear programs namely
Assignment LP and the
Configuration LP [1]to solve the restricted Santa Claus problem. Each of the two linear programs give fractionalsolutions and these fractional solutions must be transformed to integral solutions without violatingthe constraints so as to yield a solution for the Santa Claus instance.
We denote The Assignment LP for any Santa Claus instance I = hM , J , Pi by the notation ALP ( I )and is shown in Figure 2.Here the variable y ij indicates whether job j is allocated to machine i or not.A feasible solutionof ALP ( I ) is a vector y = h y ij (cid:12)(cid:12)(cid:12) i ∈ M , j ∈ J i that satisfies the constraints. In particular, a feasible { , } solution of ALP ( I ) is a solution for the Santa Claus instance I . A fractional solution of ALP ( I ) can be turned into a feasible { , } solution by using the following rounding method dueto Bezakova and Dani [4]. 4aximize τ subject to X i ∈M y ij ≤ ∀ j ∈ M X j ∈J P [ i, j ] y ij ≥ τ ∀ i ∈ M ≤ y ij ≤ ∀ i ∈ M , ∀ j ∈ J Figure 2: Assignment LP
Lemma 2.1.
Corresponding to a Santa Claus instance I = hM , J , Pi , each fractional solution of ALP ( I ) with objective function value T can be converted to a feasible { , } solution with objectivefunction value T − max( {P [ i, j ] | i ∈ M , j ∈ J } ) within polynomial time. In order to describe the Configuration LP, we first introduce the concept of
Configuration or Bundle which is nothing other than a set of jobs. Let τ be the value of the objective function whichwe want to achieve. We call a configuration C to be a minimal configuration of size τ if and onlyif the removal of any job from C makes the resulting configuration to have a size strictly less than τ . Let C ( i, τ ) denote the set of all minimal configurations of size τ for machine i .We denote the Configuration LP for the instance I = hM , J , Pi with minimal configurationsof size τ by the notation CLP ( I, τ ) and is shown in Figure 3.maximize 0subject to X C ∈C ( i, τ ) x iC ≥ ∀ i ∈ M X i ∈M (cid:18) X C : C ∈C ( i, τ ) j ∈ C x iC (cid:19) ≤ ∀ j ∈ J ≤ x iC ≤ ∀ i ∈ M , ∀ C ∈ C ( i, τ )Figure 3: Configuration LPHere the variable x iC is denotes whether configuration C is allocated to machine i or not.The first set of constraints specifies that each machine must be allocated with at least one unitof configuration whereas the second set of constraints specifies that each job must be allocated toat most one machine. A feasible solution of this LP is a vector x = h x iC (cid:12)(cid:12)(cid:12) i ∈ M , C ∈ C ( i, τ ) i that satisfies the constraints. For any feasible solution x of CLP ( I, τ ), we call the parameter P C : C ∈C ( i, τ ) x iC to be the total fractional weight of machine i with respect to the solution x .We see that the Configuration LP has exponentially many decision variables and polynomiallymany constraints. Bansal and Sviridenko proposed a method to solve this LP in polynomial time [1].In this method, we treat the Configuration LP as the primal program and obtain the correspondingdual program which has exponentially many constraints, corresponding to the Configuration LPdecision variables and polynomially many decision variables corresponding to the Configuration5P constraints. The separation algorithm for the dual is the minimum knapsack problem whichcan be solved in polynomial time using dynamic programming technique [10, 11]. Hence the dualprogram can be solved in polynomial time using the ellipsoid method and a feasible solution of thecorresponding primal program which is the Configuration LP, by considering the set of decisionvariables corresponding to the dual constraints considered by the ellipsoid method and then solvingthe Configuration LP on those set of decision variables in polynomial time.We easily see that if CLP ( I, τ ) is feasible, then CLP ( I, τ ) is feasible for any τ such that τ ≤ τ .The following Lemma shows that a fractional feasible solution can be turned to a fractional feasiblesolution of the Assignment LP. Lemma 2.2.
Given Santa Claus instance I = hM , J , P i . Each feasible solution of the CLP ( I, τ ) induces a feasible solution for ALP ( I ) with objective function at least τ .Proof. Let x be a feasible solution of CLP ( I, τ ) for a given Santa Claus instance I = hM , J , P i .Therefore x allocates the jobs in J to the machines in M in such a way that each machine receivesjob configurations with total size at least τ . Now we form a vector y = [ y ij | i ∈ M , j ∈ J ] where y ij is defined as y ij = P C : C ∈ C ( i, τ ) (cid:16) P j ∈ C x iC (cid:17) . Since x is a feasible solution of the ConfigurationLP, each machine i ∈ M is assigned at least one unit of configurations with total size of at least τ , we see that P j ∈J y ij P [ i, j ] ≥ τ , thereby satisfying the first set of constraints of the AssignmentLP with τ = τ . Furthermore x assigns each job j to at most one machine and hence P i ∈M y ij = P i ∈M (cid:18) P C : C ∈ C ( i, τ ) (cid:16) P j ∈ C x iC (cid:17)(cid:19) ≤
1, thereby satisfying the second set of constraints of the AssignmentLP. Hence we see that y is a feasible solution of ALP ( I ) with objective function value τ . Hencethe Lemma. α -gap Instance, Big jobs and Small jobs Let I = hM , J , Pi be a Santa Claus instance and τ be a positive real number such that CLP ( I, τ )is feasible. Let α be a positive real number. Now we define a new Santa Claus instance namely α - gap instance as follows. Definition 2.1.
The alpha -gap instance corresponding to the given instance I is defined as theSanta Claus instance I α = hM , J , P α i where ( i, j ) th entry of P α is given by P α [ i, j ] = (cid:26) P [ i, j ] if P [ i, j ] < τ α τ otherwise Hence we see that each job j that has size at least τ α on a subset of machines in instance I hassize τ on the corresponding set of machines in the α -gap instance I α . Now the following Lemmaeasily follows. Lemma 2.3.
A feasible solution of
CLP ( I α , τ ) is a feasible solution for CLP ( I, τ ) as well. We call each job in I as big job or small job with respect to the pair of parameters h τ , α i as perthe following definition. Definition 2.2.
A job j in I is said to be a big job with respect to the pair of parameters h τ , α i ifand only if P α [ i, j ] ∈ { , τ } for all machines i ∈ M . A job is said to be a small job if and only ifit is not a big job.
6e use the notation J big and J small to denote the set of big jobs and the set of small jobs in J respectively. We also use the notation C small ( i, τ ) to denote the subset of C ( i, τ ) containing onlysmall job configurations. Since each big job has size τ , we see that | C big ( i, τ ) |≤ |J big | . We now convert any feasible solution of the configuration LP on an α -gap instance I α to anotherfeasible solution for instance I α itself with good structural properties as follows.Let x be a feasible solution of CLP ( I α , τ ) and let G = (( L, R ) , E ) be a weighted bipartite graphdefined as L = M , R = J big , E = n { i, j } (cid:12)(cid:12)(cid:12) x i { j } > , i ∈ M and j ∈ J big o andeach edge { i, j } ∈ E is given the weight x i { j } It is easy to see that the graph G can be constructed in polynomial time. The following Lemma isdue to Bansal and Sviridenko [1] that transforms the feasible solution x to another feasible solutionby modifying the graph G . Lemma 2.4.
The feasible solution x of CLP ( I α , τ ) can be transformed to another feasible solution x ∗ of CLP ( I α , τ ) in polynomial time by modifying the graph G to a forest G ∗ using a cycleelimination procedure in such a way that x ∗ iC = x iC for each i ∈ M and C ∈ C small ( i, τ ) . The following is another Lemma due to Bansal and Sviridenko [1] that can be used to obtain acluster of machines and jobs from the solution x ∗ Lemma 2.5 ( The Clustering Lemma [1]) . Using the forest G ∗ and the solution x ∗ , it ispossible in polynomial time to cluster the machines and big jobs into groups M , M , M , · · · , M r and J , J , J , · · · , J r respectively with the following properties.1. For each k = 1 , , · · · , r , | J k | = | M k | − .2. For each k = 1 , , · · · , r , the big jobs in J k may be placed feasibly on any of the | M i | − machines in M k .3. For each k = 1 , , · · · , r , P i ∈ M k (cid:18) P C ∈C small ( i,T )) x ∗ iC (cid:19) ≥ . This lemma provides completely flexible way of allocating big jobs to the machines in a cluster.Hence we can find a feasible solution of the Configuration LP in such a way that correspondingto each k = 1 , , , · · · , p , the big jobs in J k are allocated to all the machines in M k except onemachine which is satisfied by allocating one unit of small configurations. From now onwards, wecall each set of machines M k as a Super Machine and each set of jobs in J k as a Super Job . A combinatorial superpolynomial time algorithm due to Asadpour et al. [2, 3] solves the restrictedSanta Claus problem and obtains a δ − approximate solution for any δ ≥
4. This method presentsthe problem as a Hypergraph matching problem in a bipartite hypergraph H = (( U, V ) , F ) createdusing a feasible solution x of CLP ( I, τ ) as per the following rules. The vertices in U are labeledby the machines, the vertices in V are labelled by the jobs in V . The set of hyperedges in F areformed as per the following rules. This Lemma is a modified version of the original Lemma presented in Bansal and Sviridenko [1], but themodification follows from the proof presented in the paper. For each machine i and for each big configuration C containing big job j such that x iC > i and j . • For each machine i and for each small job configuration C such that x iC >
0, then for eachminimal configuration C ′ ⊂ C of size Tδ , we add a hyperedge containing exactly i and C ′ .We form the desired solution of the problem by finding a perfect matching that matches all thevertices in U . The method of formation of the matching is iterative and it uses an alternating treewhich consists of two types of edges namely Add edges which we would like to add to our currentmatching and
Blocking edges which are the edges in the current matching which block the insertionof add edges into the matching. The method starts with an empty matching and iteratively extendsthe current partial matching to an additional machine until all the machines get matched as perthe following Lemma.
Lemma 2.6.
In each step for extending the current matching, we can either match an additionalmachine by adding an edge which is not blocked by the edges in the current matching, or augmentthe alternating tree with an edge e in H such that e intersects with some machine vertex in thealternating tree and e does not intersect with any job vertex in the alternating tree. Even though this method can find an integer solution whose integrality gap is close to the bestknown theoretical value, it takes superpolynomial local search moves to find the perfect matching[2, 3].
Our first step is to start with the super machines obtained by clustering method due to Bansal andSviridenko [1]. We first give the Algorithm outline.
Let I = hM , J , Pi be a Santa Claus instance. Now our algorithm on input I proceeds as per thefollowing outline.1. Using binary search over the range of possible values of τ , we solve CLP ( I, τ ) to find thehighest value T such that CLP ( I, T ) is feasible [1].2. Form the 12-gap instance I = hM , J , P i for the given instance I as per Definition 2.1given in section 2.2.3. Classify the set of jobs J into two categories - J big and J small containing the big jobs and thesmall jobs with respect to the parameters h T, i as per Definition 2.2 given in section 2.2.4. Solve CLP ( I , T ) resulting in feasible solution x . We then classify the machines in M intotwo categories, upper class machines and middle class machines. Each upper class machine i places at least of its total fractional weight from the solution x on big job configurationswhere as each middle class machine i places at least of its total fractional weight from x onsmall job configurations. This step is detailed in section 3.2.5. If I has no upper class machines, then each machine in the given instance I places at leasthalf of its total fractional weight on small jobs. Hence we find the 12-approximate solutionwhich allocates only small job configurations to all the machines by solving the corresponding8ssignment LP and then rounding the resulting fractional solution using Lemma 2.1 due toBezakova and Dani [4]. We detail this step in section 3.3.6. If I has one or more upper class machines, then we do the following.(a) Form the set of super machines SM out of the upper class machines and the set ofcomposite machines CM using the machine job clustering technique due to Bansal andSviridenko [1] satisfying the conditions in Lemma 2.5 given in section 2.3. The detailsof this step is given in section 3.4.1.(b) Form the Extended Configuration LP( ECLP ) given in section 3.4.2 which is an extensionof the Configuration LP over composite machines. We observe that this configurationLP can be solved in polynomial time using the now well-known technique in [1]. Weuse this solution to find a pair h L, u i where L is a list containing all the middle classmachines and exactly one upper class machine from each super machine in SM and u is an fractional feasible solution that allocate small job configurations of size at least T among the machines in L . We detail this step in section 3.4.3. The existence of sucha solution is guaranteed by Theorem 2 by proving the existence of an integer solutionusing the alternating tree technique due to Asadpour et al. [2] [3] given in section 2.4.The details of Theorem 2 is given in section 3.4.2.(c) A particularly interesting result that we present is the conversion of a feasible solutionto the ECLP to a feasible solution h u i of a bilinear program which we call the ExtendedAssignment Problem (EAP). The solution to the EAP plays a crucial role in obtainingan integer solution of size T for the machines in the list L . This ensures that we canassign small jobs among the machines in the list L in such a way that each machine getsa total size of at least T . This is presented in section 3.4.3.(d) Finally, the upper class machines in each super machine which are not in list L areassigned single big job from the corresponding super job. The resulting solution ensuresthat each machine in the given instance I is assigned job configurations of size at least T . This step is detailed in section 3.4.4.In the following sections we prove properties of the correctness of all the steps in the outlinepresented above, and put them all together in the main theorem. With reference to the solution x , we now classify the set of machines M into two categories- M upper and M middle containing the upper class machines and middle class machines respectively as perthe following definition. Definition 3.1.
A machine i in M is said to be an Upper Class Machine if P C : C ∈C big ( i,T ) x iC ≥ .A machine i ∈ M is said to be a Middle Class machine if it is not an upper class machine. That isa machine i in M is said to be upper class machine or middle class machine according to whetherthe cumulative weight of the big gift configurations allocated to i wth respect to the solution x is atleast or not. Therefore, for every middle class machine i ∈ M , P C : C ∈C small ( i,T ) x iC ≥ .9 .3 Dealing with instances having no Upper Class machines We now show that if the given Santa Claus instance has no upper class machines with respect to T , then each machine in I can be assigned small job configurations of size at least T . Lemma 3.1.
If there is no upper class machine, then a solution for the given Santa Claus instance I that assigns small job configurations of size at least T can be found in polynomial time.Proof. Let the given Santa Claus I be such that there is no upper class machine in instance I with reference to the CLP ( I , T ) solution x . This implies that P C : C ∈C small ( i,T ) x iC ≥ for eachmachine i in I . Hence by Lemma 2.2, there exists fractional feasible solution y for ALP ( I )that fractionally allocates small jobs to each machine in I such that each machine gets size atleast T . Now applying Lemma 2.1, we can convert the fractional solution y to a solution y ′ for I that allocates small jobs to each machine in I such that every machine gets size at least T − T = T ≥ T . Since the small jobs in both I and I are the same and have the same size, wesee that y ′ is a solution for instance I as well. Hence we claim that there exists a solution for thegiven instance I such that each machine in I is assigned small job configurations of size at least T .Clearly the solution y ′ can be obtained by solving the Assignment LP on the subinstance I ′ of I that consists of all the machines and only the smal jobs in I . Since solving ALP ( I ′ ) and findingthe integer solution mentioned in Lemma 2.1 can be found in polynomial time, the solution y ′ canbe found in polynomial time. Hence the proof. We now consider the case where there are one or more upper class machines in M with respect to x . Let I ′ be the instance obtained by I such that I ′ consists of the upper class machines in M andthe big jobs which are fractionally allocated to the upper class machines by the fractional solution x .Let x ′ be the restriction of x with respect to the instance I ′ . Now we form the graph G mentionedin section 2.3 and apply the Lemma 2.4 on G to get the fractional feasible solution x ∗ mentioned inthe Lemma. We then apply Lemma 2.5 on x ∗ , to form the set of super machines denoted by SM .In the remainder of this paper, we use the notation CM to denote the set SM ∪ n { i } (cid:12)(cid:12)(cid:12) i ∈ M middle o and call each member of the set CM to be a Composite Machine . We note that each compositemachine is either a super machine or a singleton set consisting of a middle class machine. Withthis convention we unambiguously reason about machines inside a composite machine. T size integer solution for the Composite machines We now show that there exists an integer solution that allocates small job configurations amongthe composite machines in such a way that at least one machine from each composite machine in CM gets a total size of at least T .Now we define the Modified Configuration LP which is a modification of the Configuration LPin two respects.1. It is specifically written for composite machines rather than single machines.2. All the jobs considered in it are small jobs.10. The first set of constraints in it requires that every composite machine should have a totalweight of at least from small job configurations. This means that each of the super machinesin SM and each middle class machine in M middle must have a total fractional weight of atleast from small jobs.maximize 0subject to X i ∈ D (cid:18) X C ∈C small ( i,T ) z iC (cid:19) ≥ ∀ D ∈ CM X i ∈M (cid:18) X C : C ∈C small ( i,T ) j ∈ C z iC (cid:19) ≤ ∀ j ∈ J small ≤ z iC ≤ ∀ i ∈ M , ∀ C ∈ C small ( i, T )Figure 4: Modified Configuration LPNow we prove the following Lemma. Lemma 3.2.
The Modified Configuration LP is feasible.Proof.
Consider the fractional solution x ∗ computed above as a result of applying Lemma 2.4.From the construction of the feasible solution x ∗ of CLP ( I , T ) computed above and Lemma 2.4,it is clear by definition that corresponding to each middle class machine i and C ∈ C small ( i, T ), P C ∈C small x ∗ iC ≥ . This implies that corresponding to each composite machine D representing amiddle class machine i , we must have P C ∈C small x ∗ iC ≥ . Furthermore it follows from Lemma 2.5 thatcorresponding to each composite machine representing some super machine M , P i ∈ M (cid:18) P C ∈C small ) x ∗ iC (cid:19) ≥ . Hence we see that P i ∈ D (cid:18) P C ∈C small ) x ∗ iC (cid:19) ≥ for each composite machine D ∈ CM , therebysatisfying the first set of constraints of the Modified Configuration LP. It also follows from theconstruction of the solution x ∗ and Lemma 2.4 that the fractional allocation of a small jobconfiguration C to a machine i in x ∗ is not more than the same in the initial feasible solution x which we used to classify the set of machines into upper class machines and middle class machines.Hence it becomes clear that X i ∈M (cid:18) X C : C ∈C small ( i,T ) j ∈ C x ∗ iC (cid:19) ≤ X i ∈M (cid:18) X C : C ∈C small ( i,T ) j ∈ C x iC (cid:19) ≤ j ∈ J small . Hence x ∗ satisfies the second set of constraints of the Modified Configuration LP. Hence we seethat the solution x ∗ satisfies all the constraints of the Modified Configuration LP and is thereforea feasible solution of this LP. Hence the proof.Now in order to prove the existence of a { , } solution that allocate small job configurationsof size at least T among the composite machines, we use the alternating tree method [2], where we11ose the problem as a hypergraph matching problem in a suitably defined bipartite hypergraph H using the solution x ∗ mentioned in Lemma 3.2 and then find a perfect matching in H by formingthe alternating tree and growing it as stated in Lemma 2.6.We define the bipartite hypergraph H = (( U, V ) , F ) with some differences. Here the vertices in U are labelled by the composite machines in CM , the vertices in V are labelled by small jobs andthe hyperedges in F are formed as per the following rules. • For each composite machine D representing a middle class machine i and for each smallconfiguration C , if x ∗ iC >
0, then for each minimal configuration C ′ of size T such that C ′ ⊂ C , we add a hyperedge connecting D and C ′ . • For each composite machine representing a super machine M and for each small configuration C , if there exists an upper class machine i within the super machine M such that x ∗ iC > C ′ of size T such that C ′ ⊂ C , we add a hyperedgecontaining i and C ′ .By the way of formation of the hyperedges within H , we see that the size of the jobs present in eachhyperedge is strictly less than T + T . We now show that the bipartite hypergraph H constructedabove has a perfect matching. Further, note that unlike in Asadpour et.al [2] [3], we do not have anybig job in the hypergraph. They have all been taken care of in Bansal and Sviridenko’s clusteringstep. Lemma 3.3.
The bipartite hypergraph H constructed above has a perfect matching that matcheseach composite machine with a small job configuration having size at least T .Proof. We prove the Lemma using the method of contradiction. In particular, we prove that agiven partial matching that does not match all the composite machines in CM can be extended tomatch an additional machine which in turn implies that H has a perfect matching. The way wedo this is to use an argument identical to the one in Asadpour et al. [2, 3] which we have presentedin Lemma 2.6. They show that if the alternating tree can be augmented with a hyperedge, thatis a new hyperedge can be added to the tree which out intersecting any hyperedge already in thetree, then the constructive procedure will eventually match one additional machine. Therefore, weprove that the alternating tree can be augmented with one hyperedge from H . In the remainderof this proof, for a set W of edges in the graph H we use the notation W U and W V to denote theset of vertices of U which are incident at some edge in W and the set of vertices of V which areincident at some edge in W , respectively.Assume that, at some step in growing the alternating tree, a new hyperedge from H cannotbe added to alternating tree without intersecting a hyperedge that is already in the alternatingtree. Let A, B and CM ′ respectively denote the set of Add edges in the alternating tree, the set ofBlocking edges in the alternating tree, and the set of vertices of U matched by the current matchingat this step. Let X denote the total size of the jobs present in the edges within the edges in thealternating tree and γ = P D ∈CM ′ (cid:18) P i ∈ D (cid:16) P C : C ∈ C small ( i,T ) x ∗ iC × size of C (cid:17)(cid:19) . together with the factthat the alternating tree cannot be grown further, we see that it is not possible to find an edge e in H such that e is incident at some machine vertex in ( A ∪ B ) U and does not intersect with any ofthe job vertices in ( A ∪ B ) V . This further implies that the quantity X representing the total sizeof the jobs appearing in the edges of the alternating tree satisfies the condition X = X D ∈CM ′ X i ∈ D (cid:18) X C : C ∈C small ( i,T ) x ∗ iC (cid:16) X j : j ∈ C ∩ ( A ∪ B ) V P α [ i, j ] (cid:17)(cid:19)! > γ (1)12nother way of accounting for the X is obtained by taking the sum of the size of the jobs withinthe edges in A , and in each blocking hyperedge e in B , we take the size of the jobs which are notpresent in the Add edge in A that is blocked by e . Due to the minimality of the hyperedges in H , we also see that each hyperedge within A contains as many jobs as to give a maximum size of T + T and for each blocking hyperedge e in B , the total size of the jobs which are present in e andnot present in the Add edge in A that is blocked e is at most T . In other words, each hyperedge in A contributes at most T + T and each hyperedge in B contributes at most T to X . Thus we have X ≤ | A | (cid:16) T T (cid:17) + T | B | Since every Add edge in A is blocked by at least one hyperedge edge in B and all these blockinghyperedges are different, we must have | A |≤ | B | . This implies that X ≤ T | B | . Using this relationin (1), we get T | B | > γ . Hence we have T | B | > X D ∈CM ′ (cid:18) X i ∈ D (cid:16) X C : C ∈ C small ( i,T ) x ∗ iC × size of C (cid:17)(cid:19) Since the size of each configuration in C small is at least T , we see that T | B | > T X D ∈CM ′ (cid:18) X i ∈ D (cid:16) X C : C ∈ C small ( i,T ) x ∗ iC (cid:17)(cid:19) which in turn implies that12 | B | > X D ∈CM ′ (cid:18) X i ∈ D (cid:16) X C : C ∈ C small ( i,T ) x ∗ iC (cid:17)(cid:19) (2)Since the number of composite machines in CM ′ is at least | B | +1, it is evident from relation (2)that there exists a composite machine D ′ ∈ CM ′ such that P i ∈ D ′ (cid:16) P C : C ∈ C small ( i,T ) x ∗ iC (cid:17) < . Butthis contradicts the fact that x ∗ is a feasible solution of the Modified Configuration LP and hence itsatisfies the constraint P i ∈ D ′ (cid:16) P C : C ∈ C small ( i,T ) x ∗ iC (cid:17) ≥ . Hence we have proved that the alternatingtree can be augmented at any step if it cannot increase the size of the matching. Thus, usingLemma 2.6 it follows that we can find a perfect matching in H . Hence the proof.Using Lemma 3.3, we now prove the existence of the integer solution mentioned in the beginningof this section. Next we define a new linear program namely Extended Configuration LP which isgiven in Figure 5.
Theorem 2.
There exists a { , } feasible solution for ECLP.Proof. It follows from Lemma 3.3 that there exists a perfect matching in the graph H constructed asspecified above such that the matching matches every composite machine with a small configurationof size at least T . Let M be this perfect matching. For each composite machine D ∈ CM , let C D denote the small job configuration such that the matching M matches the composite machine D with configuration C D . Now we define the vector z ′ as follows. • For each middle class machine i represented by the composite machine D ∈ CM , we set z ′ iC D = 1 and z ′ iC = 0 for each C ∈ C small ( i, T ) such that C = C D .13aximize 0subject to X i ∈ D (cid:18) X C ∈C small ( i, T ) z iC (cid:19) = 1 ∀ D ∈ CM X i ∈M (cid:18) X C : C ∈C small ( i, T ) j ∈ C z iC (cid:19) ≤ ∀ j ∈ J small ≤ z iC ≤ ∀ i ∈ M , ∀ C ∈ C small ( i, T • For each super machine M represented by the composite machine D ∈ CM , let i ′ ∈ M be theupper class machine that is matched in the perfect matching M . Then we set z ′ i ′ C D = 1 and z ′ i ′ C = 0 for each C ∈ C small ( i, T ) such that C = C D . Furthermore, for each machine i ∈ M such that i = i ′ , we set z ′ iC = 0 for all C ∈ C small ( i, T ). Claim 3.3.1. z ′ is a { , } feasible solution of ECLP.Proof. From the construction of z ′ , we note the following. • Corresponding to each composite machine D there is exactly one machine i ′ such that z ′ i ′ C D = 1 and z ′ iC = 0 for each C ∈ C small ( i, T ) such that C = C D . Furthermore, foreach i ∈ M such that i = i ′ , we have z ′ iC = 0 for each C ∈ C small ( i, T ). This implies that P i ∈ D (cid:18) P C ∈C small ( i, T ) z iC (cid:19) = 1. Hence z ′ satisfies the first set of constraints of ECLP . • No small job is allocated to more than one machine and hence z ′ satisfies the second set ofconstraints of ECLP . • z ′ iC ∈ { , } for each i ∈ M and C ∈ C small ( i, T ).Hence the claim.Now by Claim 3.3.1, the Lemma immediately follows.We see that similar to Configuration LP, ECLP has exponentially many decision variables andpolynomially many constraints. Therefore we can use the technique due to Bansal and Sviridenko [1]which is mentioned in section 2.1 for solving the Configuration LP to solve
ECLP as well inpolynomial time. We easily see that the seperation oracle for the dual program corresponding to
ECLP is also the minimum knapsack problem. Hence
ECLP can also be solved in polynomial timeexactly in the same way as Configuration LP is solved in polynomial time. T size fractional solution for the composite machines By Theorem 2, it is clear that there exists an integer solution that assigns small job configurationsto the composite machines in such a way that at least one of the machines in each composite14achine gets a total size of at least T . We propose a method for using the existence of such aninteger solution in a polynomial time algorithm. Towards this end, we define a new mathematicalprogram namely Extended Assignment Program ( EAP ) and is given in Figure 6. This mathematicalminimize 0subject to X i ∈ D (cid:16) s i X j ∈J small u ij P [ i, j ] (cid:17) ≥ T ∀ D ∈ CM (3) X i ∈ D s i = 1 ∀ D ∈ CM (4) X i ∈M u ij ≤ ∀ j ∈ J small (5)0 ≤ u ij ≤ ∀ i ∈ M , ∀ j ∈ J small (6)0 ≤ s i ≤ ∀ i ∈ M (7)Figure 6: Extended Assignment Programprogram consists of a decision variable u ij ∈ [0 ,
1] which indicates whether small job j is allocated tomachine i or not. In addition, EAP consists of a decision variable s i ∈ [0 ,
1] for each machine i ∈ M which further controls the allocation of small jobs within machine i . The first set of constraintsof the program states that the sum of the total size received by the machines in each compositemachine in CM from small gifts must be at least T . Similarly the second set of constraints statesthat no small job is allocated to more than one machine. We first show that the integer solutionguaranteed by Theorem 2 gives an integer assignment to EAP in Figure 6.
Lemma 3.4.
EAP in Figure 6 and the vector program in Figure 7 both have an integer solution.Proof.
Let z be an integer solution to ECLP as guaranteed by Theorem 2. We define the integervalues to the variables in h u , s i corresoponding to each composite machine as follows: For acomposite machine D , let i ∈ D be such that z iC = 1 for a C ∈ C small ( i, T ). Define s i = 1and s i ′ = 0 for all i ′ ∈ D such that i ′ = i . For each j ∈ C define u ij = 1 and for all other i ′ ∈ D and j ∈ J small , define u i ′ j = 0. Since the value of the jobs in configuration C is at least T , it followsthat h u , s i is feasible for EAP in Figure 6.We define the feasible solution for the vector program in Figure 7 using the above solutiondefined for
EAP as follows: all the vectors are n -dimensional vectors. p is the vector in whicheach coordinate is 1, and q , . . . , q n is the standard basis e , . . . , e n } of the n -dimensional Euclideanspace. If s i = 1, a i is e , a vector in the standard basis. If u ij = 1, then b ij = e . All other vectorsare zero vectors. Since this assignment is defined from an integer solution for EAP , it is a feasiblesolution for the vector program in Figure 7. Hence the lemma.
Lemma 3.5.
A fractional solution for
EAP can be found in polynomial time.Proof.
We show that a solution to the
EAP can be obtained from the vector program in Figure 7. Inthe vector program each variable is a n -dimensional column vector. Recall, n is the number of jobs.From Equation 12 it follows that in a solution to the vector program, the vectors q . . . q n formsan orthonormal basis of unit vectors of the n -dimensional Euclidean space. In other words q . . . q n can be considered to define the axes of a coordinate system. Using standard techniques from linear15inimize 0subject to X i ∈ D (cid:16) X j ∈J small ( a Ti · b ij ) P [ i, j ] (cid:17) ≥ T ∀ D ∈ CM (8) X i ∈ D p T · a i = 1 ∀ D ∈ CM (9) X i ∈M p T · b ij = 1 ∀ j ∈ J small (10) a Ti · q l ≥ , b Tij · q l ≥ ∀ l ∈ [ n ] , ∀ i ∈ M , ∀ j ∈ J small (11) p T · p = n, p T · q l = 1 , q Tl · q l = 1 , q Tl · q l ′ = 0 ∀ l = l ′ ∈ [ n ] (12)Figure 7: A Vector Program for the Extended Assignment Programalgebra, in polynomial we can transform this coordinate system to a coordinate system in whichthe axes are defined by the standard basis vectors e , . . . , e n . Clearly, all pairwise relationshipsbetween two vectors in the original solution will be preserved in the transformed solution. Thus, p will be transformed to the vector in which all coordinates are 1 (denoted by ). Further, all theinequalities will be satisfied by the transformed solution. Consequently, in the analysis below weconsider a feasible solution in which p is the vector and q , . . . , q n are the vectors e , . . . , e n ofthe standard basis, respectively.From Lemma 3.4 we know that the vector program as a feasible solution. Let h a , b i denote afeasible solution for the vector program. We show that from h a , b i we can get a feasible solution h u , s i for EAP . The feasible solution is defined as follows for each composite machine D ∈ CM , i ∈ D, j ∈ J small : s i = T · a i , u ij = T · b ij Let θ ij denote the angle between a i and b ij . To see that h u , s i is feasible for EAP , we firstobserve that 0 ≤ s i , u ij ≤
1. Secondly, we know that for a vector v , k v k ≤ k v k . In other words,the Euclidean norm of v is at most the rectilinear norm of v . Further, all the coordinates of thevectors a i and b ij are non-negative. Thus, k a i k ≤ k a i k = T · a i and k b ij k ≤ k b ij k = T · b ij .Therefore, it follows that a Ti · b ij = k a i k · k b ij k · cos ( θ ij ) ≤ ( T · a i ) · ( T · b ij ) = s i · u ij . This ensuresthat Equation 3 is satisfied. Since s i is defined to be T · a i , clearly Equation 4 is satisfied. Further, u ij = T · b ij , and this ensures that Equation 5 is satisfied.Finally, it is well-known that the vector program in Figure 7 matches the definition of a standardsemi-definite program and a solution to the vector program can be found standard semi-definiteprogramming techniques. Hence the lemma.Next we show the following lemma which shows that from the feasible solution h u , s i to the EAP we can extract an Assignment LP instance which is feasible for the value of T . Lemma 3.6.
Corresponding to the feasible solution h u , s i of the EAP described above, there is apolynomial time computable feasible solution h u ′ , s ′ i for EAP such that s ′ ∈ { , } |M| .Proof. The first and second constraints of
EAP together with a simple averaging argument impliesthat, corresponding to each D ∈ CM , there exists machine i D such that P j ∈J u i D j P [ i D , j ] ≥ T .We form the pair of vectors h u ′ , s ′ i as follows. 16 We set s ′ i D = 1 and u ′ i D j = u i D j for each j ∈ J . • We set s ′ i = 0 and u ′ ij = 0 for each i ∈ D such that i = i D and j ∈ J .Now we note the following. • s ′ ∈ { , } |M| and hence satisfies the set of constraints (7) of EAP . • For each i ∈ M and j ∈ J , we see that 0 ≤ u ′ ij ≤ u ij ≤
1. Hence u satisfies the set ofconstraints (6) of EAP . • For each D ∈ CM , we see that there exists exactly one machine i D such that s ′ i D = 1 and foreach machine i ∈ D such that i = i D , we have s ′ i = 0. Hence P i ∈ D s ′ i = 1. Hence s ′ satisfies theset of constraints (4) of EAP . • For each j ∈ J , we see that X i ∈M u ′ ij = X D ∈CM X i ∈ D u ′ ij ≤ X D ∈CM X i ∈ D u ij ≤ h u , s i satisfies the set of constraints (5) of EAP . This proof follows from Lemma ?? . • For each D ∈ CM , by the choice of i D we see that X i ∈ D s ′ i X j ∈J u ′ ij P [ i, j ] = X j ∈J u ′ i D j P [ i D , j ] = X j ∈J u i D j P [ i D , j ] ≥ T h u ′ , s ′ i easily follows from the construction. Hence the lemmais proved. T solution for clustered instance We now show that I has a polynomial time computable solution that allocates jobs among themachines in I in such a way that each machine gets a total size of at least T . Lemma 3.7.
If the given Santa Claus instance I has one or more upper class machines with respectto the solution x of CLP ( I , T ) , then a solution which allocates job configurations of size at least T to each machine in I can be found in polynomial time.Proof. Let the given Santa Claus instance I has one or more upper class machines with respectto the parameter T . We now form the composite machines and solve the corresponding ECLP to obtain a feasible solution z . Then we compute the pair h u , s i representing the solution of thecorresponding EAP using the approach given in Section 3.4.3. Then obtain the
EAP solution h u ′ , s ′ i as described in Lemma 3.6. Now consider the instance I ′ consisting of machines in the set n i D (cid:12)(cid:12)(cid:12) D ∈ CM o and the small jobs in J small . Clearly the solution v = h u ′ i D j (cid:12)(cid:12)(cid:12) j ∈ J small i is a feasiblesolution for ALP ( I ′ ) with objective function at least T . Now applying Lemma 2.1 on v , we get a { , } solution v ′ that ensures that each machine gets small job configurations with size of at least T − T = T . Now we form the solution for I as follows. • For each composite machine D ∈ CM , 17 If D corresponds to a middle class machine i , then clearly i D = i and we allocate to i ,all the small jobs j such that v ′ i D j = 1. – If D corresponds to a super machine M , then we choose the machine i D from M andallocate to i D , all the small jobs j such that v ′ i D j = 1. For each machine i ∈ M suchthat i = i D , assign a single big gift from the corresponding super job J .By the way of construction of this solution, we see that corresponding to each composite machine,there is exactly one machine which is allocated a small job configuration of size at least T andeach of the remaining machines is assigned a single big job which has size at least T in I . Hencewe see that the solution ensures that each machine in I gets job configurations of size at least T .The polynomial time computability of the solution follows from the facts that • ECLP can be solved in polynomial time. • The vectors h u , s i and h u ′ , s ′ i can be found in polynomial time as evident from Lemma 3.5andLemma 3.6. • The integer solution v ′ can be obtained from the fractional solution v in polynomial time asevident from Lemma 2.1.Hence the proof. We now restate Theorem 1 and give a proof of the same.
Theorem 1.
There exists a polynomial time 12-approximation algorithm for the restricted SantaClaus problem.Proof.
The algorithm follows that outline given in Section 3.1. If the given Santa Claus instance I has no upper class machines with respect to solution x of CLP ( I , T ), then by Lemma 3.1, we seethat there exists a polynomial time computable solution with minimum total size of at least T . Onthe other hand, if I has one or more upper class machines with respect to x , then by Lemma 3.7,there exists a polynomial time computable solution with minimum total size T . Hence in eithercase, we can compute a solution for I with minimum total size T in polynomial time. Hence theproof. We have given a linear programming based polynomial time algorithm for the restricted Santa Clausproblem with approximation ratio of 12. We believe that our technique along with the techniqueof Chidambaram et.al [7] can be used improve the approximation ratio further.
References [1] Nikhil Bansal and Maxim Sviridenko. The santa claus problem. In
Proceedings of theThirty-eighth Annual ACM Symposium on Theory of Computing , STOC ’06, pages 31–40,New York, NY, USA, 2006. ACM.[2] Arash Asadpour, Uriel Feige, and Amin Saberi. Santa claus meets hypergraph matchings.
ACM Trans. Algorithms , 8(3):24:1–24:9, July 2012.183] Arash Asadpour, Uriel Feige, and Amin Saberi. Santa claus meets hypergraph matchings.pages 10–20, 2008.[4] Ivona Bez´akov´a and Varsha Dani. Allocating indivisible goods.
SIGecom Exch. , 5(3):11–18,April 2005.[5] Penny E Haxell. A condition for matchability in hypergraphs.
Graphs and Combinatorics ,11(3):245–248, 1995.[6] Uriel Feige. On allocations that maximize fairness. In
Proceedings of the nineteenth annualACM-SIAM symposium on Discrete algorithms , pages 287–293. Society for Industrial andApplied Mathematics, 2008.[7] Annamalai Chidambaram, Christos Kalaitzis, and Ola Svensson.
ACM Trans. Algorithms ,13(3):37:1–37:28, May 2017.[8] Deeparnab Chakrabarty, Julia Chuzhoy, and Sanjeev Khanna. On allocating goods tomaximize fairness. In , pages 107–116. IEEE, 2009.[9] Gerhard J Woeginger. A polynomial-time approximation scheme for maximizing the minimummachine completion time.
Operations Research Letters , 20(4):149–154, 1997.[10] Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein.
Introductionto Algorithms, Third Edition . The MIT Press, 3rd edition, 2009.[11] Fabio Furini, Ivana Ljubic, and Markus Sinnl. An effective dynamic programming algorithmfor the minimum-cost maximal knapsack packing.[12] M. Gr¨otschel, L. Lov´asz, and A. Schrijver. The ellipsoid method and its consequences incombinatorial optimization.
Combinatorica , 1(2):169–197, June 1981.[13] Jan Karel Lenstra, David B. Shmoys, and ´Eva Tardos. Approximation algorithms forscheduling unrelated parallel machines.
Mathematical Programming , 46(1):259–271, Jan 1990.[14] Lukas Polacek.
Efficient Use of Exponential Size Linear Programs . PhD thesis, KungligaTekniska h¨ogskolan, 2015.[15] Klaus Jansen and Lars Rohwedder. On the configuration-lp of the restricted assignmentproblem. In