=Paper=
{{Paper
|id=Vol-1623/papersc6
|storemode=property
|title=Optima Localization in Scheduling Multi-Processor Jobs
|pdfUrl=https://ceur-ws.org/Vol-1623/papersc6.pdf
|volume=Vol-1623
|authors=Alexander Gordeev,Alexander Kononov,Polina Kononova
|dblpUrl=https://dblp.org/rec/conf/door/GordeevKK16
}}
==Optima Localization in Scheduling Multi-Processor Jobs==
Optima Localization in Scheduling Multi-Processor Jobs Alexander Gordeev1,2 , Alexander Kononov1,2 , and Polina Kononova1,2 1 Sobolev Institute of Mathematics, 4, Akad. Koptyug avenue, 630090, Novosibirsk, Russia. 2 Novosibirsk State University, 2, Pirogova str., 630090, Novosibirsk, Russia agordeevw@gmail.com, alvenko@math.nsc.ru, polik83@gmail.com Abstract. The paper considers a multi-processor tasks scheduling problem with dedicated processors. The main target is determining the tight optima localization intervals for different sub-problems of the basic problem. Based on the ideas of a computer-aided technique developed in the paper by Sevastyanov and Chernykh [15] for shop scheduling problems, we elaborated a similar method for a different-type problem (see above). For small values of the number of pro- cessors (from 3 to 5) a computer program coped with the main target. The extremum values of the optimum (in terms of a standard lower bound taken for 1) computed for several sub-problems of the basic problem are listed in Table 1 (page 7). In parallel with those sub-problems, so called prime-versions of those problems were investigated, in which only jobs requiring more than one proces- sor are allowed. An interesting phenomenon was discovered: nearly all (but one) prime-sub-problems appeared to be polynomial-time solvable (with optima co- inciding with their lower bounds – such instances and classes of instances were called in [10, 11] normal). As a by-product of those results, a family of linear- time approximation algorithms was designed (for the sub-problems listed in Table 1) with ratio performance guarantees taken from Table 1. Keywords: multiprocessor jobs, branch-and-bound algorithm, optima local- ization 1 Introduction We consider adjacent single mode multiprocessor jobs. Set J = {J1 , ..., Jn } of jobs and M of processors are given. Each job has processing time τj and may require more than one processor at the same time. We assume that the set of processors required by a job is given and fixed. Additionally, we assume that processors are the vertices of a given graph G = (M, E) and the required set of processors must induce a connected subgraph of G. By µi ⊆ M denote the set of processors required by job Ji . Let J A Copyright ⃝ c by the paper’s authors. Copying permitted for private and academic purposes. In: A. Kononov et al. (eds.): DOOR 2016, Vladivostok, Russia, published at http://ceur-ws.org Optima Localization in Scheduling Multi-Processor Jobs 351 denote the set of jobs requiring processors in set A, i.e. J A = {Ji : µi = A}. We will say that jobs in set J A are of type A. A schedule σ is an assignment of each job Ji to an interval of length τi , such that for any two jobs Ji and Jj with µi ∩ µj ̸= ∅, their intervals do not overlap. It is required to find a schedule which minimizes the makespan. For the given graph G we denote the above problem by Π(G); OP T stands for the optimum. For any G, Π(G) is a special case of P |f ixj |Cmax [4, 7] The difference in the two problems is that an instance of P |f ixj |Cmax may contain a job of any type, while an instance of Π(G) contains only the jobs with the adjacent set of processors in G. In turn, if G is a complete graph Km with m vertices, Π(G) is the same as P |f ixj |Cmax with m processors. Restrictions on the allowable types of jobs are associated with the location of resources in space. The requirement for contiguity of resources occurs in parallel computing using certain network topologies [7], in warehouse management[5, 9], in the domain of harbor logistic [2, 12, 14] and other applications[8, 13]. We note that P |f ixj |Cmax is known more than fourty five years and was considered in many scheduling papers including a section in textbook ”Scheduling for Parallel Processing” by Drozdowski [7]. However, the problem Π has been given much less attention. Duin and van der Sluis [9] consider the problem Π when the given graph G is a path. They call this problem as ARS-R (Adjacent Resource Scheduling). Duin and van der Sluis presented a polynomial time exact algorithm for the case of three processors and proved NP- hardness for the case of four processors. They also observe that ARS-R is solvable in linear time if each job requires at most two processors. This result can be easily extended for the case when the given graph G is a circuit with even number of vertices. Indeed, let m processors are numbered consecutively. We divide the set of all jobs into three sets J1 , J2 and J3 such that J2 contains all single-processor jobs, J1 contain all jobs of type {m +1, 1} and all jobs of type {i, i+ 1}, where i is even, and J3 contain the remaining jobs. We note that jobs of different types may be executed in parallel. An optimal schedule is constructed by scheduling first all jobs in J1 in an arbitrary order, then all jobs in J2 in an arbitrary order, and, finally, all jobs in J3 in an arbitrary order. It is easy to check that the makespan is equal to the maximal processor load. In our paper we present the results on optima localization in terms of lower bounds for different classes of the problem Π. Two jobs Ji and Jj are called incompatible if µi ∩ µj ̸= ∅. Incompatibility of the jobs can be represented as an incompatibility graph. Note that in the incompatibility graphs jobs are represented as nodes. The total processing time of incompatible jobs is a lower bound on OP T. Denote this lower bound by LB(G). Notice that a calculation of LB(G) is equivalent to determining a clique in the incompatibility graph, which is a hard combinatorial problem itself. However, for some special classes of graphs a lower bound can be found in polynomial time. For example, if G is acyclic then a lower bound is easily computable and equal to the maximal processor load. For the given graph G we wish to find the minimal functional ρ(G) such that the inequality OP T ≤ ρ(G)LB(G) holds for any instance of Π(G). We say that a schedule is primitive if all jobs of the same type are scheduled consecutively. Dell’Olmo et al. [6] showed that ρ(K3 ) = 45 . Actually, they proved that the length of the best primitive 352 A. Gordeev, A. Kononov and P. Kononova schedule is bounded by 54 LB and this bound is tight. It is obvious, that there exists an instance I with at most one job of each type in which OP T (I) LB(G) attains its maximum. Since any schedule of jobs from I is primitive, we obtained that ρ(K3 ) = 54 . Our research is unusual since we use a computer to get the theoretical results. It is based on the method proposed by Sevastianov and Tchernykh in [15]. They considered the open shop scheduling problem O3||Cmax with three processors and the makespan minimization criterion. The maximum of the maximal processor load and the maximal job length is a trivial lower bound C̃ for the optimal makespan. Sevastianov and Tch- ernykh proved that the length of the optimal schedule belongs to the interval [C̃, 43 C̃] and this interval is tight. They also found the tight optima localization interval [C̃, 53 C̃] for the three-processor assembly line problem. Both above results imply linear time approximation algorithms as by-product. Our paper is organized as follows. We introduce the necessary definitions and the preliminary results in the second section. In the third section we present a branch- and-bound algorithm which calculates ρ(G) and find an instance I ∈ Π(G) for which OP T (I) LB(J) attains its maximum. In the forth section we list values of ρ(G) for different graphs G obtained by our algorithm. 2 Preliminaries Consider a graph G. Denote the set of valid job types by A(G). Remind that we wish to determine the value of ρ(G). So we need to prove that OP T (I) ≤ ρ(G)LB for any instance I of Π(G) and find an instance I ′ such that OP T (I ′ ) = ρ(G)LB. Lemma 1. For any graph G the supremum of OP T (I)/LB(G) over all instances I, I ∈ Π(G) is attained on an instance which contains at most one job of each type and does not contain jobs required all processors. Proof is straightforward. In what follows in this section, we deal with instances that satisfy Lemma 1. We call such instances reduced instances. As an example, let G be a path with four vertices, i.e. G ≡ P4 , see Fig. 1. 1 2 3 4 u u u u Fig. 1. G is a path with four vertices, G ≡ P4 We have nine non-trivial job types: A(P4 ) = {{1}, {2}, {3}, {4}, {1, 2}, {2, 3}, {3, 4}, {1, 2, 3}, {2, 3, 4}}. Thus if G ≡ P4 each reduced instance contains at most nine jobs. Without loss of generality we assume that each instance has exactly one job of each valid type. It follows that an incompatibility graph H is the same for all instances of Π(G). Let A ∈ A(G) Optima Localization in Scheduling Multi-Processor Jobs 353 J{1,2,3} J `u` u {2,3,4} H CT HH `u Q ` ` J{2,3} C TQQH# H A c #Q C T #H c A C# T Q AHc Q Hc J{1,2} #u C T u Q Hc Au HuJ{3,4} J C J{2} J{3} JC JCu u J{1} J{4} Fig. 2. The incompability graph H we denote by JA and τA the job of type A and its processing time, correspondingly. The incompatibility graph for Π(P4 ) is shown ∑ in Fig. 2. Let Q ⊆ H be a maximal clique in H, then JA ∈V (Q) τA is a lower bound on OP T, where V (Q) is the set of vertices of Q. Generally speaking the number of maximal cliques grows exponentially in the number of vertices for most graphs. However in our research we consider graphs with a few number of vertices and we can find all maximal cliques in reasonable time. We use the algorithm by Tanaka et al. [16] to generate all maximal cliques of a graph. Moreover, if G is acyclic graph on m vertices, the corresponding incompatibility graph H has exactly m maximal cliques that determine m lower bounds on OP T . For example, if G ≡ P4 we get the following lower bounds: OP T ≥ l1 = τ{1} + τ{1,2} + τ{1,2,3} , OP T ≥ l2 = τ{2} + τ{1,2} + τ{2,3} + τ{1,2,3} + τ{2,3,4} , OP T ≥ l3 = τ{3} + τ{2,3} + τ{3,4} + τ{1,2,3} + τ{2,3,4} , OP T ≥ l4 = τ{4} + τ{3,4} + τ{2,3,4} . Thus, LB(P4 ) = max{l1 , l2 , l3 , l4 }. At this point we assume that LB(G) = 1 and measure all job processing times in these units. We define the weight of each vertex JA in the incompatibility graph H as τA . This graph is called a constraint graph [1, 7]. It has been observed in [1] that any feasible schedule imposes orientation on the edges of the constraint graph. And vice versa, any acyclic orientation of the edges in the constraint graph induces a feasible schedule. Acyclic graph obtained by orientation of the edges in the constraint graph is called a network [15]. Although the number of instances is infinite the number of different networks is finite. Our goal is to show that for any instance of Π(G) there exists an orientation of the edges such that a schedule specified by this orientation meets OP T (I) ≤ ρ(G)LB, where ρ(G) does not depend on the instance. The makespan of → − the schedule specified by a network H and an instance I is equal to the length of a critical path in this directed graph, which, in turn, must be a complete path in the digraph. For example, the network shown in Fig.3 has four complete paths. It is obvious that different complete paths are critical for different instances. In the next section we propose a branch and bound algorithm to find ρ(G) by breaking up the set of instances of Π(G) into smaller subsets, in which instances have the same 354 A. Gordeev, A. Kononov and P. Kononova u J{1} X XXX z J{1,2} u : H J{2} u HHJ{2,3} Hj u J{1,2,3} - u J{2,3,4} - u u X J{3,4} J{3} X * XX z u : u J{4} Fig. 3. The network obtained for some orientation of edges in the constraint graph H of Π(P4 ), the transitive arcs are omitted critical paths in the selected set of constraint graphs. The algorithm calculates upper and lower bounds on ρ(G) over each subset of instances and use the bounds to discard certain subsets from further consideration. The algorithm starts with ρ(G) = 1 and search the worst instance for which ρ(G) has the maximal value. It terminates when each subset has either produced a solution with the same ρ(G), or has been shown to contain no better solution than the best one found so far by the algorithm. 3 Branch and bound algorithm In this section we present a branch and bound algorithm to compute ρ(G) and to find an instance in which OP T (I) LB(G) attains this value. The algorithm constructs a search tree T. Each vertex v of T contains some subset of instances of Π(G). Algorithm calculates an upper bound on ρ(G) for this subset. In the calculation of the upper bound algorithm finds the instance, in which the optimal makespan is a lower bound on ρ(G). 3.1 Branching The root v0 contains all instances of Π(G). Initialize λ = 1 and ν(v0 ) = ∞, where λ is a current lower bound on ρ(G) and ν(v) is an upper bound on ρ(G) in the vertex − → → − v. Take an arbitrary network H 0 and consider a set of complete paths of H 0 . We remove paths of length less than or equal to λ. The network on Fig.3 contains two such paths: (J{2} → J{1,2} → J{2,3} → J{1,2,3} → J{2,3,4} ) and (J{3} → J{3,4} → J{2,3} → J{1,2,3} → J{2,3,4} ). − → Let K( H 0 ) = {p1 , p2 , . . . , p − → } be the set of non-trivial paths in the network |K( H 0 )| − → − → − → H 0 . We construct |K( H 0 )| subsets, one for each path pi ∈ K( H 0 ). The i-th child of v0 − → contains instances of Π(G) that have the critical path pi in H 0 . The branching on other vertices in the search tree is similar to previous one. Let v ′ be a vertex of the search tree such that ν(v ′ ) > λ. Let V be the set of vertices in the v0 -v ′ -path in the search tree. Each vertex v in V corresponds to a critical path in some network chosen during the branching procedure of its parent. By Kv denote the − → − → set of such paths. We choose a network H v , such that the network H v doesn’t contain − → complete paths from Kv . In the next subsection we explain how to choose H v correctly. → − Finally, we use the non-trivial complete paths in H v to create children of v. Optima Localization in Scheduling Multi-Processor Jobs 355 3.2 Upper and lower bounds Let Kv = {p1 , . . . , pN }, and let ∑ δiA = 1 if a job JA ∈ pi and δiA = 0 otherwise. Then the length of pi is equal to JA ∈J δiA τA . Let η be the∑value of ρ(G) on the set of instances in the vertex v. Then for any pi ∈ Kv we have JA ∈J δiA τA ≥ η. → − We note that any clique in H forms a (not necessary complete) path ∑in H . Let KLB be a set of paths corresponding to maximal cliques in H. Then we have JA ∈J δkA τA ≤ 1 for all pk ∈ KLB . In order to obtain an upper bound ν(v) on ρ(G) in the vertex v, we solve the following linear program (LP). η → max ∑ δkA τA ≤ 1, pk ∈ KLB (1) A∈A(G) ∑ δiA τA ≥ η, pi ∈ Kv (2) A∈A(G) τA ≥ 0, JA ∈ J . The rational variables τA represent processing times of jobs. Inequalities (1) and (2) must hold for any instance I ∈ v. Thus an optimal solution of LP find an instance I ′ , such that any critical path pi ∈ Kv has a length greater than or equal to η and this value is the maximum possible. We set ν(v) = η. If ν(v) ≤ λ we terminate branching in the vertex v. Otherwise, we construct an optimal schedule σ ∗ for instance I ′ . If the number of vertices in the graph G is small we can solve an instance I ′ in reasonable time. Let λ∗ be the length of the optimal schedule to the instance I ′ . First, if λ < λ∗ we update the lower bound λ, λ := λ∗ . Second, if η = λ∗ we terminate branching in the vertex v. Finally, let η > λ∗ . Let a − → → − network H v correspond to the schedule σ ∗ . Since η > λ∗ , the network H v does not − → contain paths from the set Kv . We use the network H v to branch the vertex v. The algorithm terminates when ν(v) ≤ λ for all leaves in current search tree T . Moreover, ν(v) = λ for at least one leaf v ∈ T . Finally, we obtain ρ(G) = λ. 4 Results To present our results we introduce the following notation. We denote the complete graph on n vertices by Kn . By Pn and Cn we denote the path on n vertices and the cycle on n vertices, correspondingly. We also consider the star K1,n on n + 1 vertices and the special graphs shown in Fig. 4. r H r rH rH r R1,3 : Hr r R1,4 : Hr R3,3 : H r r r r r HHr Fig. 4. The graphs R1,3 , R1,4 , R3,3 356 A. Gordeev, A. Kononov and P. Kononova A problem Π(G) is called a prime-version and denoted by Π̄(G) if only jobs re- quiring more than one processor are allowed. Let ρ̄(G) = maxI∈Π̄(G) OP T (I) LB(G) . For each selected graph G we have considered two problems: Π(G) and Π̄(G). The results ob- tained by the branch and bound algorithm are presented in the Table 1. The rows in Table 1 have the following meaning. Row 1 lists the value of the parameter G in the problem Π(G). In rows 2 and 3 we present the values of ρ(G) and ρ̄(G), correspond- ingly. P4 P5 C3 C4 K1,3 K1,4 K4 R1,3 R1,4 R3,3 ρ(G) 8/7 1,25 1,25 1,25 4/3 4/3 4/3 4/3 1,5 4/3 ρ̄(G) 1 1 1 1 1 1 1 1 1,5 1 Table 1. Values of ρ(G) for the selected graphs In addition to the results presented in Table 1, we note that ρ̄(P6 ) = 1. A comparison of results presented in Table 1 shows that prime-version Π̄(G) is easier than the original problem Π(G). In particular, ρ̄(G) = 1 means that for any instance I of Π̄(G) we have OP T = LB(G). This observation implies a simple exact linear time algorithm for the corresponding problem. Replace all the jobs of the same type by an aggregated job. Set the processing time of the aggregated job equal to the sum of processing times of original jobs. A new instance has a constant number of jobs. We can enumerate all active schedules and choose the best one. In the same way, we obtain a ρ(G)-approximation algorithms for the corresponding problems in the case ρ(G) > 1. A naive enumeration procedure can be improved by using the search tree T con- structed by the branch and bound algorithm when this algorithm calculates ρ(G). Let h be the height of the search tree T. It is sufficient to consider at most h schedules chosen for branching in each vertex in a path from the root v0 to some leaf of T. Acknowledgements We would like to thank Sergey Sevastianov and the anonymous referees for their helpful comments on an earlier draft of this work. This research is supported by the Russian Science Foundation grant 15-11-10009. References 1. Bianco, L., Dell’Olmo, P., Speranza, M.G.: Nonpreemptive scheduling of independent tasks with prespecified processor allocations. Naval Research Logistics. 41, 959–971 (1994) 2. Bierwirth, C., Meisel, F.: A survey of berth allocation and quay crane scheduling problems in container terminals. European Journal of Operations Research. 202, 615-627 (2010) 3. Blazewicz, J., Dell’Olmo, P., Drozdowski, M., Speranza, M. G.: Scheduling multiprocessor task on three dedicated processors. Information Processing Letters. 41, 257–280 (1992) 4. Chen, Bo, Potts, C.N., Woeginger, G. J.: A Review of Machine Scheduling: Complexity, Algorithms and Approximability. In: Handbook of Combinatorial Optimization, D.-Z. Du and P. M. Pardalos(Eds), Vol. 3, P. 21–169. Kluwer Academic Publisher, Amsterdam (1998) Optima Localization in Scheduling Multi-Processor Jobs 357 5. Chun, H.N.: Scheduling as a multidimensional Placement Problem. Engineering Applica- tions of Artificial Intellegence. 9, 261-273 (1996) 6. Dell’Olmo, P., Speranza, M.G., Tuza, Z.: Efficiency and effectiveness of normal schedules on three dedicated processors. Discrete Mathematics. 164, 67–79 (1997). 7. Drozdowski, M.: Scheduling for parallel processing. Computer communications and net- works. Springer. 386 (2009) 8. Dyckhoff, H.: A topology of cutting and packing problems, European Journal of Operational Research. 44, 145–159 (1990) 9. Duin, C.W., Sluis, E.V.: On the complexity of adjacent resource scheduling, Journal of Scheduling. 9, 1, 49–62 (2006) 10. Kononov, A., Sevastianov, S., Tchernykh, I.: Polynomially solvable classes of the open shop problem on the base of different machine loads, in: The Third Workshop on Models and Algorithms for Planning and Scheduling Problems, Cambridge, U.K., April 7-11, P. 41 (1997) 11. Kononov, A., Sevastianov, S., Tchernykh, I.: When difference in machine loads leads to efficient scheduling in open shops, Annals of Operations Research, 92, 211-239 (1992) DOI:10.1023/A:1018986731638 12. Lim, A.: The berth planning problem, Operations Research Letters, 22(2-3), 105-110, (1999) 13. Lodi, A., Martello, S., Monaci, M.: Two-dimencional packing problem: A survey, European Journal of Operational Research, 141, 241–252 (2002) 14. J.J. Paulus, J. Hurink. Adjacent-Resource Scheduling. Why spatial resources are so hard to incorporate. Electronic Notes in Discrete Mathematics, 25: 113-116, 2006. 15. Sevastianov, S.V., Tchernykh, I.D.: Computer-aided Way to Prove Theorems in Schedul- ing. In: Gianfranco Bilardi, Giuseppe F. Italiano, Andrea Pietracaprina, Geppino Pucci (Eds.) ESA 1998, LNCS, Vol. 1461, pp. 502–513, Springer, Heidelberg (1998) 16. Tomita, E., Tanaka, A., Takahashi, H.: The worst-case time complexity for generating all maximal cliques and computational experiments. Theoretical Computer Science, 363 28–42 (2006)