Research article

Scheduling uniform machines with restricted assignment


  • Received: 27 February 2022 Revised: 26 May 2022 Accepted: 13 June 2022 Published: 04 July 2022
  • The problem of minimizing makespan (maximum completion time) on uniform machines with restricted assignment is considered. The machines differ in their speeds and functionalities. Each job has a set of machines to which it can be assigned, called its processing set. The goal is to finish the jobs as soon as possible. There exist 4/3-approximation algorithms for the cases of inclusive and tree-hierarchical assignment restrictions, under an assumption that machines with higher capabilities also run at higher speeds. We eliminate the assumption and present algorithms with approximation ratios 2 and 4/3 for both cases.

    Citation: Shuguang Li, Zhimeng Liu. Scheduling uniform machines with restricted assignment[J]. Mathematical Biosciences and Engineering, 2022, 19(9): 9697-9708. doi: 10.3934/mbe.2022450

    Related Papers:

    [1] Shuguang Li . Efficient algorithms for scheduling equal-length jobs with processing set restrictions on uniform parallel batch machines. Mathematical Biosciences and Engineering, 2022, 19(11): 10731-10740. doi: 10.3934/mbe.2022502
    [2] Dan Yang, Zhiqiang Xie, Chunting Zhang . Multi-flexible integrated scheduling algorithm for multi-flexible integrated scheduling problem with setup times. Mathematical Biosciences and Engineering, 2023, 20(6): 9781-9817. doi: 10.3934/mbe.2023429
    [3] Weiguo Liu, Xuyin Wang, Lu Li, Peizhen Zhao . A maintenance activity scheduling with time-and-position dependent deteriorating effects. Mathematical Biosciences and Engineering, 2022, 19(11): 11756-11767. doi: 10.3934/mbe.2022547
    [4] Bin Deng, Ran Ding, Jingfeng Li, Junfeng Huang, Kaiyi Tang, Weidong Li . Hybrid multi-objective metaheuristic algorithms for solving airline crew rostering problem with qualification and language. Mathematical Biosciences and Engineering, 2023, 20(1): 1460-1487. doi: 10.3934/mbe.2023066
    [5] Vitaliy Yakovyna, Natalya Shakhovska . Modelling and predicting the spread of COVID-19 cases depending on restriction policy based on mined recommendation rules. Mathematical Biosciences and Engineering, 2021, 18(3): 2789-2812. doi: 10.3934/mbe.2021142
    [6] Xue Jia, Jing Xue, Shi-Yun Wang, Ji-Bo Wang . Polynomial time algorithm for minmax scheduling with common due-window and proportional-linear shortening processing times. Mathematical Biosciences and Engineering, 2022, 19(9): 8923-8934. doi: 10.3934/mbe.2022414
    [7] Xuyin Wang, Weiguo Liu, Lu Li, Peizhen Zhao, Ruifeng Zhang . Resource dependent scheduling with truncated learning effects. Mathematical Biosciences and Engineering, 2022, 19(6): 5957-5967. doi: 10.3934/mbe.2022278
    [8] Chunlai Liu, Chuanhui Xiong . Single machine resource allocation scheduling problems with deterioration effect and general positional effect. Mathematical Biosciences and Engineering, 2021, 18(3): 2562-2578. doi: 10.3934/mbe.2021130
    [9] Lingling Li, Congbo Li, Li Li, Ying Tang, Qingshan Yang . An integrated approach for remanufacturing job shop scheduling with routing alternatives. Mathematical Biosciences and Engineering, 2019, 16(4): 2063-2085. doi: 10.3934/mbe.2019101
    [10] Shaofeng Yan, Guohui Zhang, Jinghe Sun, Wenqiang Zhang . An improved ant colony optimization for solving the flexible job shop scheduling problem with multiple time constraints. Mathematical Biosciences and Engineering, 2023, 20(4): 7519-7547. doi: 10.3934/mbe.2023325
  • The problem of minimizing makespan (maximum completion time) on uniform machines with restricted assignment is considered. The machines differ in their speeds and functionalities. Each job has a set of machines to which it can be assigned, called its processing set. The goal is to finish the jobs as soon as possible. There exist 4/3-approximation algorithms for the cases of inclusive and tree-hierarchical assignment restrictions, under an assumption that machines with higher capabilities also run at higher speeds. We eliminate the assumption and present algorithms with approximation ratios 2 and 4/3 for both cases.



    Scheduling jobs on (identical, uniform, or unrelated) parallel machines is one of the fundamental problems in deterministic scheduling theory [1,2,3]. In this paper, the problem of scheduling uniform machines with restricted assignment is studied, which generalizes the problem of scheduling jobs with unrestricted assignment on parallel machines.

    Formally, there is a set of jobs J={1,2,,n}, and there is a set of uniform machines M={M1,M2,,Mm}. Job jJ has a length pj0 and a subset of machines MjM to which it can be assigned, called its processing set. Machine MiM has a speed si. Without loss of generality, we assume that all si1. If job j is processed on machine Mi, then its processing time is pj/si. A (non-preemptive) schedule is an m-tuple (S1,S2,,Sm), where Si denotes the set of the jobs processed on machine Mi, i=1,2,,m. The sets S1,S2,,Sm are disjoint, and mi=1Si=J, i.e., each job in J appears in exactly one Si. The completion time C(Si) of machine Mi in this schedule is given by jSipj/si. The goal is to find a schedule to minimize the makespan, Cmax=maxiC(Si). Using the notations proposed in [4,5], the problem is denoted as Q|Mj|Cmax.

    As stated in the survey paper by Leung and Li [6], there are five types of assignment restrictions studied by the researchers: inclusive, nested, interval, tree-hierarchical and arbitrary. In this paper, we focus on the inclusive and tree-hierarchical restrictions, i.e., we study Q|Mj(inclusive)|Cmax and Q|Mj(tree)|Cmax. The assignment restriction is inclusive, if for any job j, Mj={Maj,Maj+1,,Mm}, where aj (1ajm) is called the machine index associated with job j. The assignment restriction is tree-hierarchical, if there is a tree whose nodes represent the machines, and each job j is associated with a tree node Maj, such that Mj consists of the machines on the path from Maj to the root of the tree. Clearly, the inclusive restriction is a special case of the tree-hierarchical restriction.

    Leung and Ng [7] studied the problems Q|Mj(inclusive)|Cmax and Q|Mj(tree)|Cmax under a reasonable assumption that machines with higher capabilities also run at higher speeds. (It is called the speed hierarchical model in [8]). Precisely, for the case of inclusive restriction, they assumed that s1s2sm. For the case of tree-hierarchical restriction, they assumed that the speed of each node is not less than that of its predecessor. Under the assumption, they presented 4/3-approximation algorithms running in time O(mnlog(nj=1pj)) for both cases. They remarked that the algorithms may not work if the assumption is not valid. For clarity, we denote their problems as Q(Inc)|Mj(inclusive)|Cmax and Q(Inc)|Mj(tree)|Cmax, respectively, where "Inc" means "increasing order of the speeds".

    In this paper, we generalize the results in [7] by eliminating the speed hierarchical assumption. We present fast algorithms with approximation ratios 2 and 4/3 for both Q|Mj(inclusive)|Cmax and Q|Mj(tree)|Cmax.

    Scheduling with restricted assignment has been extensively studied in the literature [6]. Here, we review the results which are related to inclusive or tree-hierarchical restrictions. Ou et al. [9] gave a PTAS (polynomial time approximation scheme) for P|Mj(inclusive)|Cmax (the special case of Q|Mj(inclusive)|Cmax where all si=1). Li and Wang [10] extended their work to include job release times (any job cannot be scheduled before its release time). There are also fast approximation algorithms for this problem: a (21/(m1)) -approximation algorithm [11,12], a 3/2-approximation algorithm [13], and a 4/3-approximation algorithm [9]. Bar-Noy et al. [14] presented an online (over list) algorithm for P|Mj(inclusive)|Cmax whose competitive ratio is e+1. They also gave an online algorithm for P|Mj(tree)|Cmax (the special case of Q|Mj(tree)|Cmax where all si=1) whose competitive ratio is 5. Huo and Leung [15] gave a 4/3-approximation algorithm for P|Mj(tree)|Cmax. Later, Epstein and Levin [8] presented PTASs for P|Mj(tree)|Cmax and Q(Inc)|Mj(inclusive)|Cmax. However, the running times of their PTASs are rather high. Leung and Ng [7] presented fast 4/3-approximation algorithms for Q(Inc)|Mj(inclusive)|Cmax and Q(Inc)|Mj(tree)|Cmax. There are also several papers which studied the problems of scheduling jobs with equal lengths and restricted assignment on uniform machines [16,17,18,19,20].

    The rest of the paper is organized as follows. In Section 2, we present 2-approximation algorithms for Q|Mj(inclusive)|Cmax and Q|Mj(tree)|Cmax. In Section 3, we present 4/3-approximation algorithms for Q|Mj(inclusive)|Cmax and Q|Mj(tree)|Cmax. In Section 4, we conclude this paper and discuss future research directions.

    In this section we will get a 2-approximation algorithm for Q|Mj(inclusive)|Cmax and then extend it to solve Q|Mj(tree)|Cmax. Note that Leung and Ng [7] only presented algorithms for Q(Inc)|Mj(inclusive)|Cmax and Q(Inc)|Mj(tree)|Cmax.

    For solving Q|Mj(inclusive)|Cmax, we set up some notations. Let Ji denote the set of the jobs whose processing set is {Mi,Mi+1,,Mm}, i=1,2,,m. The jobs in Ji are eligible for machines Mi,Mi+1,,Mm, and vice versa. It is possible that Ji= for some i. We have: mi=1Ji=J. Sort all the jobs in Ji in non-increasing order of their lengths, and let Ji denote the obtained ordered set, i=1,2,,m.

    Let OPT denote the makespan of an optimal schedule for Q|Mj(inclusive)|Cmax. Let ALi=jJiJi+1Jmpjml=isl denote the average load on machines Mi,Mi+1,,Mm, i=1,2,,m. Let LB=maxiALi, where "LB" means "lower bound". Since all jobs in JiJi+1Jm must be processed on machines Mi,Mi+1,,Mm (i=1,2,,m) in any feasible schedule, we get: LBOPT. On the other hand, let UB=nj=1pjsm, where "UB" means "upper bound". Since a feasible schedule can be obtained easily by scheduling all the jobs on machine Mm, we get OPTUB.

    To determine OPT, we do a binary search in time interval [LB,UB]. For each value C selected, the following procedure, AssignA1, tells us whether it is possible to assign the jobs in J to the machines in M such that the total length of the jobs assigned to machine Mi is no more than 2siC, i=1,2,,m. If AssignA1 fails, we search the upper half of the interval; otherwise, we search the lower half.

    If job j is eligible for machine Mi and pjsiC, then job j is feasible for machine Mi, and vice versa. In AssignA1, Ui represents the set of unassigned jobs which are eligible for machine Mi and sorted in non-increasing order of their lengths, and Li denotes the total length of the jobs assigned to machine Mi, i=1,2,,m. Informally speaking, AssignA1 tries to put as many as possible of the largest, not yet assigned feasible jobs on the smaller-indexed machines such that each machine completes no later than 2C.

    AssignA1 (C):

    Step 1. Let U0=, Li=0, i=1,2,,m.

    Step 2. For i=1,2,,m (this ordering is used crucially), do:

    (i) Merge Ui1 into Ji to get Ui. (Ui1 and Ji are ordered sets, and thus Ui is also an ordered set.)

    (ii) Find the first job jUi such that pjsiC. Assign job j and the jobs after it in Ui to machine Mi until Li>siC or the jobs after j in Ui are used up (i.e., each unassigned job in Ui has length larger than siC). Delete the newly assigned jobs from Ui.

    Lemma 2.1. If OPTC, then AssignA1 will generate a feasible schedule for Q|Mj(inclusive)|Cmax with makespan at most 2C in O(mn) time.

    Proof. Let Π be an optimal schedule. Let Π be the schedule generated by AssignA1. Since OPTC, any job of length larger than siC cannot be assigned on machine Mi in Π, i=1,2,,m. Therefore, in Π, we let Mi process only the jobs whose lengths are no more than siC. We have Li2siC, and thus Ci2C, where Ci denotes the completion time of machine Mi in Π, i=1,2,,m.

    We prove the following claim by contradiction: If OPTC, then Um= when AssignA1 terminates. Suppose that when AssignA1 terminates, some job j cannot be assigned and has to be left over. Let aj=i denote the machine index associated with job j. Let FMj{Mi,Mi+1,,Mm} denote the set of the feasible machines for job j, i.e., for any machine MlFMj, pjslC. It must be true that Ll>slC for any machine MlFMj. Let D denote the set of the jobs processed on the machines in FMj. In Π, all the jobs in D have lengths not less than pj and hence cannot be assigned to the machines in {Mi,Mi+1,,Mm}FMj. We consider the following two different cases:

    Case 1. The machine indices associated with the jobs in D are not less than aj=i.

    In this case, in any optimal schedule and particularly in Π, all the jobs in D have to be processed on the machines in FMj. However, since Ll>slC for any machine MlFMj, Π cannot complete all the jobs in D by time COPT, a contradiction.

    Case 2. Some jobs in D have machine indices less than aj=i.

    Some jobs in D may be associated with machine indices less than i, but they may be not feasible for machines M1,M2,,Mi1, or their feasible machines among M1,M2,,Mi1 have not enough space left to accommodate them when they are assigned. Since AssignA1 assigns the largest feasible jobs on the smaller-indexed machines greedily such that each machine completes later than C whenever possible (i.e., unless there is no unassigned feasible job for the machine), an optimal schedule cannot schedule the jobs any better than this on the smaller-indexed machines. Therefore, the total length of the jobs processed on the machines in FMj in Π is a lower bound on the total length of the jobs processed on the machines in FMj in Π. As in Case 1, since Ll>slC for any machine MlFMj, Π cannot complete all the jobs in D by time COPT, a contradiction.

    Step 1 can be executed in O(m) time. Step 2 will be executed m iterations, and each iteration can be done in O(n) time. Hence, the running time of AssignA1 is O(mn).

    To obtain a faster algorithm, we can use the following AssignA2 procedure instead of AssignA1. AssignA2 handles the machines in increasing order of their indices. When Mi is handled, the unassigned jobs eligible for Mi are stored in a balanced binary search tree T [21], using their lengths as the keys. The technique is similar to that used in [20].

    AssignA2 (C):

    Step 1. Let T be a balanced binary search tree and τ be the length of the smallest job in T. Initially, T is empty, and τ=. Let Li denote the total length of the jobs assigned to machine Mi. Initially, Li=0, i=1,2,,m.

    Step 2. For i=1,2,,m (this ordering is used crucially), do:

    (i). Insert the jobs in Ji into T. Update τ accordingly.

    (ii) If LisiC and τsiC, then find the largest job j in T such that pjsiC. Assign job j on machine Mi and then delete it from T. Let Li=Li+pj. If pj=τ, then check τ and update it if necessary.

    (iii) Repeat Step 2(ii) until Li>siC or τ>siC (the latter case indicates that each job in T has length larger than siC).

    Lemma 2.2. If OPTC, then AssignA2 will generate a feasible schedule for Q|Mj(inclusive)|Cmax with makespan at most 2C in O(m+nlogn) time.

    Proof. The correctness of AssignA2 follows that of AssignA1, and its proof is omitted. Step 1 can be executed in O(m) time. In Step 2, each job will be inserted into and deleted from T at most once. Inserting or deleting a job can be done in O(logn) time. Thus, it takes O(nlogn) time to construct and maintain T and τ. In Step 2(ii), it takes O(logn) time to find the largest job j in T such that pjsiC. Hence, the running time of AssignA2 is O(m+nlogn).

    AssignA1 or AssignA2 will be called at most logUB times in the binary search. Since UB=nj=1pjsmnj=1pj (we assumed that all si1), we get the following:

    Theorem 2.3. There is a 2-approximation algorithm for Q|Mj(inclusive)|Cmax that runs in O(min{mn,m+nlogn}log(nj=1pj)) time.

    Next, we extend the algorithm to solve Q|Mj(tree)|Cmax. For the rooted tree RT whose nodes are the m machines, we define the depths of the nodes as follows. If the node is the root, then its depth is zero; otherwise, its depth is equal to the depth of its parent plus 1. Index the nodes (machines) of the tree in non-increasing order of their depths, ties broken in favor of the leftmost node. The root of the tree is Mm.

    Let Ji denote the set of the jobs associated with machine Mi, i=1,2,,m. The jobs in Ji are eligible for the machines on the path from Mi to the root of the tree, and vice versa. We have: mi=1Ji=J. Sort all the jobs in Ji in non-increasing order of their lengths, and let Ji denote the obtained ordered set, i=1,2,,m.

    Let OPT denote the makespan of an optimal schedule for Q|Mj(tree)|Cmax. For machine Mi (which represents a node of RT), let Ii denote the set of the indices of the machines on the path from Mi to the root of the tree. Let ALi=lIijJlpjlIisl denote the average load on the machines whose indices are in Ii, i=1,2,,m. Let LB=maxiALi. We have: LBOPT. Let UB=nj=1pjsm. We have: OPTUB.

    To determine OPT, we do a binary search in interval [LB,UB]. For each value C selected, the following procedure, AssignB, tells us whether it is possible to assign the n jobs to the m machines such that the total length of the jobs assigned to machine Mi is no more than 2siC, i=1,2,,m. If AssignB fails, we search the upper half of the interval; otherwise, we search the lower half.

    If job j is eligible for machine Mi and pjsiC, then job j is feasible for machine Mi, and vice versa. In AssignB, Ui represents the set of unassigned jobs which are eligible for machine Mi and sorted in non-increasing order of their lengths, and Li denotes the total length of the jobs assigned to machine Mi, i=1,2,,m. Informally speaking, AssignB tries to put as many as possible of the largest, not yet assigned feasible jobs on the deeper machines such that each machine completes no later than 2C.

    AssignB (C):

    Step 1. Let Li=0, Ui=Ji, i=1,2,,m. Let h be equal to the maximum depth of the machines in tree RT.

    Step 2. While (h>0), do:

    (i) For each machine Mi whose depth is h, do:

    Find the first job jUi such that pjsiC. Assign job j and the jobs after it in Ui to machine Mi until Li>siC or the jobs after j in Ui are used up. Delete the newly assigned jobs from Ui. Merge Ui into Uk, where Mk is the parent of Mi. (Ui and Uk are ordered sets before merging, and thus after merging Uk is still an ordered set.)

    (ii) Let h=h1.

    Step 3. If the total length of the jobs in Um is no more than 2smC, then process all the jobs in Um on machine Mm (whose depth is zero), and the procedure succeeds and terminates. Otherwise, the procedure fails and terminates.

    Lemma 2.4. If OPTC, then AssignB will generate a feasible schedule for Q|Mj(tree)|Cmax with makespan at most 2C in O(mn) time.

    Proof. Let Π and Π denote an optimal schedule and the schedule generated by AssignB, respectively. Since OPTC, in Π, machine Mi cannot process any job of length larger than siC. Hence, in Π, we let Mi process only the jobs whose lengths are no more than siC. We have Li2siC, and thus Ci2C, i=1,2,,m.

    If OPTC, when AssignB terminates, it must be true that Um=. We prove this claim by contradiction. Suppose that some job j cannot be assigned when AssignB terminates. Let j be associated with the tree node Maj, such that its processing set Mj consists of the machines on the path from Maj to the root of the tree. Let FMjMj denote the set of the feasible machines for job j, i.e., for any machine MlFMj, pjslC. We have Ll>slC for any machine MlFMj. Let D denote the set of the jobs processed on the machines in FMj in Π. All the jobs in D have lengths at least pj and hence cannot be assigned to the machines in MjFMj. We consider the following two different cases:

    Case 1. There are no eligible machines outside Mj for the jobs in D.

    In this case, all the jobs in D have to be processed on the machines in FMj in any optimal schedule. However, since Ll>slC for any machine MlFMj, Π cannot complete all the jobs in D by time COPT, a contradiction.

    Case 2. Some jobs in D have eligible machines in MMj.

    Some jobs in D may have eligible machines in MMj, but they may be not feasible for these machines, or their feasible machines in MMj have not enough space left to accommodate them when they are assigned. Since AssignB assigns the largest feasible jobs on the machines in MMj greedily such that each machine completes later than C whenever possible, an optimal schedule cannot schedule the jobs any better than this on the machines in MMj. Therefore, the total length of the jobs processed on the machines in FMj in Π is a lower bound on the total length of the jobs processed on the machines in FMj in Π. As in Case 1, since Ll>slC for any machine MlFMj, Π cannot complete all the jobs in D by time COPT, a contradiction.

    We use the binary search together with AssignB to solve Q|Mj(tree)|Cmax. Then, we get the following:

    Theorem 2.5. There is a 2-approximation algorithm for Q|Mj(tree)|Cmax that runs in O(mnlog(nj=1pj)) time.

    In this section we will get a 4/3-approximation algorithm for Q|Mj(inclusive)|Cmax, and then extend it to solve Q|Mj(tree)|Cmax. We continue to use the notations introduced in the previous section.

    Let OPT denote the makespan of an optimal schedule for Q|Mj(inclusive)|Cmax. We perform a binary search in [LB,UB] to determine OPT, where LB=maxiALi, ALi=jJiJi+1Jmpjml=isl, and UB=nj=1pjsm. For each value C selected, we use the following procedure, AssignC1, to test whether it is possible to schedule the jobs such that the total length of the jobs processed on machine Mi is no more than 4siC/3, i=1,2,,m.

    If job j is eligible for machine Mi and pjsiC, then job j is feasible for machine Mi, and vice versa.

    For each value C selected, we classify feasible jobs as long, median, and short with respect to the machine speeds. For a particular machine Mi (i=1,2,,m), job j is long if 2siC/3<pjsiC, or median if siC/3<pj2siC/3, or short if pjsiC/3.

    In AssignC1, Ui represents the set of unassigned jobs which are eligible for machine Mi and sorted in non-increasing order of their lengths, i=1,2,,m. In Step 2(ii) of AssignC1, we first compare the total length of the two largest median jobs in Ui with the length of the largest long job in Ui. If the former is larger, then we schedule the two largest median jobs in Ui on machine Mi. Otherwise, we schedule the largest long job in Ui on machine Mi.

    AssignC1 (C):

    Step 1. Let U0= and i=1.

    Step 2. While im, do:

    (i) Merge Ui1 into Ji to get Ui.

    (ii) If there is no long job in Ui, then add a "dummy'' long job of length zero into Ui. Similarly, if there is no median job (or only one median job) in Ui, then add two (or one) "dummy'' median job(s) of length zero into Ui. Let j1, j2 and j3 denote the largest long job and the two largest median jobs in Ui, respectively. If pj2+pj3>pj1, then let j2 and j3 be processed on Mi and remove them from Ui; else, let j1 be processed on Mi and remove it from Ui.

    (iii) If the total length of the jobs on Mi is less than or equal to siC, then we repeatedly assign the largest unassigned short jobs in Ui to Mi until the first time that the total length of the jobs on Mi is larger than siC. Remove the newly assigned jobs from Ui.

    (iv) Let i=i+1.

    Lemma 3.1. If OPTC, then AssignC1 will generate a feasible schedule for Q|Mj(inclusive)|Cmax with makespan at most 4C/3 in O(mn) time.

    Proof. Let Π be an optimal schedule. Let Π be the schedule generated by AssignC1. We will prove the lemma by modifying Π into Π.

    To do so, we handle the machines in increasing order of their indices. Suppose that machines M1,M2,,Mi1 have been handled. We illustrate how to handle machine Mi. At this point, the jobs on machines M1,M2,,Mi1 in Π (after machines M1,M2,,Mi1 have been handled) are processed in the same manner as they are processed on machines M1,M2,,Mi1 in Π. We treat these jobs as assigned jobs. All the other jobs are treated as unassigned jobs. The unassigned jobs which are eligible for machine Mi form the set Ui.

    As described in Step 2(ii) of AssignC1, if pj2+pj3>pj1, then we let j2 and j3 be processed on Mi in modified Π. To achieve this, if at least one part of j2 is on machine Ml (l>i) other than Mi, we move this part from Ml to Mi, and move a corresponding part of the same length (consisting of parts of the jobs which are on Mi in Π but not on Mi in Π, cutting some job if necessary) from Mi to Ml. If the total length of the jobs which are on Mi in Π but not on Mi in Π is less than the length of this part of j2, then we exchange this part of j2 and all the jobs which are on Mi in Π but not on Mi in Π. Repeat this process until the entire j2 appears on Mi in modified Π. Perform a similar exchange process until the entire j3 appears on Mi in modified Π. Note that pj2+pj34siC/3. If pj2+pj3pj1, then we let j1 be processed on Mi in modified Π, by performing a similar exchange process. Note that pj1siC.

    Next, we assign some short jobs in Ui on machine Mi as described in Step 2(iii) of AssignC1, by performing a similar exchange process. When we finish handling of Mi, the jobs processed on Mi in modified Π are those processed on Mi in Π. Moreover, the total length of the jobs on Mi is no more than 4siC/3. Hence, Mi completes no later than 4C/3.

    Although some jobs have to be cut during the modification, when we finish handling of Mm, no cut job exists in modified Π (i.e., Π). It is easy to check that the total length of the jobs processed on machines M1,M2,,Mi in Π is an upper bound on the total length of the jobs processed on machines M1,M2,,Mi in unmodified Π, i=1,2,,m.

    We can give an alternative implementation of AssignC1, called AssignC2, which runs in O((m+n)logn) time. The idea is to store the jobs in Ui in a balanced binary search tree T, using their lengths as the keys. Before we perform Step 2(ii) of AssignC1, we do the following. First, find the largest job of length no more than siC in T. If the job does not exist, then let i=i+1 and move on to the next iteration. If the job is a long job, then let it be j1. Otherwise, let j1 denote a "dummy" long job of length zero. Next, find the largest job of length no more than 2siC/3 in T. If the job does not exist or is a short job, then let j2 and j3 denote two "dummy" median jobs of length zero. Otherwise (i.e., the job is a median job), let it be j2, and continue to find another largest job of length no more than this job in T. If the job does not exist or is a short job, then let j3 denote a "dummy" median job of length zero. Otherwise, let it be j3. After j1, j2 and j3 are determined, we perform Step 2(ii) of AssignC1. To perform Step 2(iii) of AssignC1, we need to find the currently largest job of length no more than siC/3 (i.e., the largest short job) in T. Note that each job will be inserted into T or deleted from T at most once. The balanced binary search tree T can be constructed and maintained in O(nlogn) time. Moreover, determining j1, j2 and j3 for each machine can be done in O(logn) time. Determining the currently largest short job in T can also be done in O(logn) time. Therefore, the overall running time of AssignC2 is O((m+n)logn).

    Lemma 3.2. If OPTC, then AssignC2 will generate a feasible schedule for Q|Mj(inclusive)|Cmax with makespan at most 4C/3 in O((m+n)logn) time.

    Theorem 3.3. There is a 4/3-approximation algorithm for Q|Mj(inclusive)|Cmax that runs in O(min{mn,(m+n)logn}log(nj=1pj)) time.

    Next, we extend the algorithm to solve Q|Mj(tree)|Cmax. Given the rooted tree RT whose nodes are the m machines, we index the nodes of RT in non-increasing order of their depths, ties broken in favor of the leftmost node. The root of RT is Mm.

    Let OPT denote the optimal makespan for Q|Mj(tree)|Cmax. For machine Mi (which represents a node of RT), let Ii denote the set of the indices of the machines on the path from Mi to the root of the tree. Let ALi=lIijJlpjlIisl denote the average load on the machines whose indices are in Ii, i=1,2,,m. Let LB=maxiALi. We have: LBOPT. Let UB=nj=1pjsm. We have: OPTUB.

    We perform a binary search in [LB,UB] to determine OPT. For each value C selected, we use the following procedure, AssignD, to test whether it is possible to schedule the jobs such that the total length of the jobs processed on machine Mi is no more than 4siC/3, i=1,2,,m. We continue to use the related definitions for Q|Mj(inclusive)|Cmax, such as feasible, long, median and short jobs.

    In AssignD, Ui represents the set of unassigned jobs which are eligible for machine Mi and sorted in non-increasing order of their lengths, i=1,2,,m. In Step 2(i)(1) of AssignD, we first compare the total length of the two largest median jobs in Ui with the length of the largest long job in Ui. If the former is larger, then we schedule the two largest median jobs in Ui on machine Mi. Otherwise, we schedule the largest long job in Ui on machine Mi, i=1,2,,m.

    AssignD (C):

    Step 1. Let Ui=Ji, i=1,2,,m. Let h be equal to the maximum depth of the machines in tree RT.

    Step 2. While (h>0), do:

    (i) For each machine Mi whose depth is h, do:

    (1) If there is no long job in Ui, then add a "dummy'' long job of length zero into Ui. Similarly, if there is no median job (or only one median job) in Ui, then add two (or one) "dummy'' median job(s) of length zero into Ui. Let j1, j2 and j3 denote the largest long job and the two largest median jobs in Ui, respectively. If pj2+pj3>pj1, then let j2 and j3 be processed on Mi and remove them from Ui; else, let j1 be processed on Mi and remove it from Ui.

    (2) If the total length of the jobs on Mi is less than or equal to siC, then we repeatedly assign the largest unassigned short jobs in Ui to Mi until the first time that the total length of the jobs on Mi is larger than siC. Remove the newly assigned jobs from Ui.

    (3) Merge Ui into Uk, where Mk is the parent of Mi.

    (ii) Let h=h1.

    Step 3. If the total length of the jobs in Um is no more than 4smC/3, then process all the jobs in Um on machine Mm, and the procedure succeeds and terminates. Otherwise, the procedure fails and terminates.

    Similarly to the proof of Lemma 3.1, we can prove the following lemma.

    Lemma 3.4. If OPTC, then AssignD will generate a feasible schedule for Q|Mj(tree)|Cmax with makespan at most 4C/3 in O(mn) time.

    Theorem 3.5. There is a 4/3-approximation algorithm for Q|Mj(tree)|Cmax that runs in O(mnlog(nj=1pj)) time.

    In this paper we investigated the problem of minimizing makespan on uniform machines with restricted assignment. We presented algorithms with approximation ratios 2 and 4/3 for the cases of inclusive and tree-hierarchical restrictions. Since the algorithms do not rely on the speed hierarchical assumption, they generalize the results presented in [7]. The running times of the algorithms contain a factor of log(nj=1pj), and in consequence they are not strongly polynomial time. To get strongly polynomial time algorithms, we use the technique described in [9] to modify the above algorithms slightly. The approximation ratios then become 2+ε and 4/3+ε, where ε>0 can be made arbitrarily small. In addition, as pointed out in [7], since the algorithms are based on the binary search, they produce schedules with makespans 2OPT or 4OPT/3, where OPT denotes the optimal makespan.

    It would be interesting to study the problem of minimizing makespan on uniform machines with other objective functions, or with other special types of assignment restrictions, such as nested, or interval restrictions. For further research, some learning strategies may be introduced, such as Probably Approximately Correct (PAC) learning with importance reweighting [22], dynamic feature weight selection [23], robust learning, granular-ball learning [24] or Complete Random Forest (CRF) based class noise filtering learning [25].

    We thank the editor and reviewers for their helpful suggestions. This work is supported by the Natural Science Foundation of Shandong Province, China (No. ZR2020MA030).

    The authors declare there is no conflict of interest.



    [1] B. Chen, C. N. Potts, G. J. Woeginger, A review of machine scheduling: Complexity, algorithms and approximability, in Handbook of combinatorial optimization, Springer, (1998), 1493–1641. https://doi.org/10.1007/978-1-4613-0303-9_25
    [2] J. Y. Leung, Handbook of scheduling: algorithms, models, and performance analysis, CRC Press, 2004.
    [3] M. Drozdowski, Classic scheduling theory, in Scheduling for Parallel Processing, Springer, (2009), 55–86.
    [4] R. L. Graham, E. L. Lawler, J. K. Lenstra, A. R. Kan, Optimization and approximation in deterministic sequencing and scheduling: a survey, Ann. Discrete Math., 5 (1979), 287–326. https://doi.org/10.1016/S0167-5060(08)70356-X doi: 10.1016/S0167-5060(08)70356-X
    [5] P. Brucker, Scheduling Algorithms, fifth edition, Springer, 2007.
    [6] J. Y. Leung, C. L. Li, Scheduling with processing set restrictions: A literature update, Int.J. Prod. Econ., 175 (2016), 1–11. https://doi.org/10.1016/j.ijpe.2014.09.038 doi: 10.1016/j.ijpe.2014.09.038
    [7] J. Y. Leung, Ng C, Fast approximation algorithms for uniform machine scheduling with processing set restrictions, Eur. J. Oper. Res., 260 (2017), 507–513. https://doi.org/10.1016/j.ejor.2017.01.013 doi: 10.1016/j.ejor.2017.01.013
    [8] L. Epstein, A. Levin, Scheduling with processing set restrictions: PTAS results for several variants, Int.J. Prod. Econ., 133 (2011), 586–595. https://doi.org/10.1016/j.ijpe.2011.04.024 doi: 10.1016/j.ijpe.2011.04.024
    [9] J. Ou, J. Y. Leung, C. L. Li, Scheduling parallel machines with inclusive processing set restrictions, Nav. Res. Log., 55 (2008), 328–338.
    [10] C. L. Li, X. Wang, Scheduling parallel machines with inclusive processing set restrictions and job release times, Eur. J. Oper. Res., 200 (2010), 702–710. https://doi.org/10.1016/j.ejor.2009.02.011 doi: 10.1016/j.ejor.2009.02.011
    [11] D. G. Kafura, V. Y. Shen, Task scheduling on a multiprocessor system with independent memories, SIAM J. Comput., 6 (1977), 167–187. https://doi.org/10.1137/0206014 doi: 10.1137/0206014
    [12] H. C. Hwang, S. Y. Chang, K. Lee, Parallel machine scheduling under a grade of service provision, Comput. Opera. Res., 31 (2004), 2055–2061. https://doi.org/10.1016/S0305-0548(03)00164-3 doi: 10.1016/S0305-0548(03)00164-3
    [13] C. A. Glass, H. Kellerer, Parallel machine scheduling with job assignment restrictions, Nav. Res. Log., 54 (2007), 250–257. https://doi.org/10.1002/nav.20202 doi: 10.1002/nav.20202
    [14] A. Bar-Noy, A. Freund, J. Naor, On-line load balancing in a hierarchical server topology, SIAM J. Comput., 31 (2001), 527–549. https://doi.org/10.1137/S0097539798346135 doi: 10.1137/S0097539798346135
    [15] Y. Huo, J. T. Leung, Fast approximation algorithms for job scheduling with processing set restrictions, Theor. Comput. Sci., 411 (2010), 3947–3955. https://doi.org/10.1016/j.tcs.2010.08.008 doi: 10.1016/j.tcs.2010.08.008
    [16] Y. Lin, W. Li, Parallel machine scheduling of machine-dependent jobs with unit-length, Eur. J. Oper. Res., 156 (2004), 261–266. https://doi.org/10.1016/S0377-2217(02)00914-1 doi: 10.1016/S0377-2217(02)00914-1
    [17] C. L. Li, Scheduling unit-length jobs with machine eligibility restrictions, Eur. J. Oper. Res., 174 (2006), 1325–1328. https://doi.org/10.1016/j.ejor.2005.03.023 doi: 10.1016/j.ejor.2005.03.023
    [18] K. Lee, J. Y. Leung, M. L. Pinedo, Scheduling jobs with equal processing times subject to machine eligibility constraints, J. Scheduling, 14 (2011), 27–38. https://doi.org/10.1007/s10951-010-0190-0 doi: 10.1007/s10951-010-0190-0
    [19] C. L. Li, Q. Li, Scheduling jobs with release dates, equal processing times, and inclusive processing set restrictions, J. Oper. Res. Soc., 66 (2015), 516–523. https://doi.org/10.1057/jors.2014.22 doi: 10.1057/jors.2014.22
    [20] C. L. Li, K. Lee, A note on scheduling jobs with equal processing times and inclusive processing set restrictions, J. Oper. Res. Soc., 67 (2016), 83–86. https://doi.org/10.1057/jors.2015.56 doi: 10.1057/jors.2015.56
    [21] T. H. Cormen, C. E. Leiserson, R. L. Rivest, C. Stein, Introduction to Algorithms, third edition, MIT press, 2009.
    [22] T. Liu, D. Tao, Classification with noisy labels by importance reweighting, IEEE Trans. Pattern Anal. Mach. Intell., 38 (2015), 447–461. https://doi.org/10.1109/TPAMI.2015.2456899 doi: 10.1109/TPAMI.2015.2456899
    [23] Z. An, X. Wang, B. Li, Z. Xiang, B. Zhang, Robust visual tracking for UAVs with dynamic feature weight selection, Appl. Intell., 2022 (2022), 1–14. https://doi.org/10.1007/s10489-022-03719-6 doi: 10.1007/s10489-022-03719-6
    [24] S. Xia, Y. Liu, X. Ding, G. Wang, H. Yu, Y. Luo, Granular ball computing classifiers for efficient, scalable and robust learning, Infor. Sci., 483 (2019), 136–152. https://doi.org/10.1016/j.ins.2019.01.010 doi: 10.1016/j.ins.2019.01.010
    [25] S. Xia, G. Wang, Z. Chen, Y. Duan, Complete random forest based class noise filtering learning for improving the generalizability of classifiers, IEEE. Trans. Knowl. Data Eng., 31 (2018), 2063–2078. https://doi.org/10.1109/TKDE.2018.2873791 doi: 10.1109/TKDE.2018.2873791
  • This article has been cited by:

    1. Asame Sharf Aldeen, Ali Abdi Kordani, Afshin Fallah, Seyed Mohsen Hosseinian, Maria Castro, Safety Comparison of Simple and Spiral Horizontal Curves Based on Side Friction Factor Dynamic Modeling, 2023, 2023, 2042-3195, 1, 10.1155/2023/7954346
    2. E. Mohammad-Rezaei Bidgoli, Mohammad Arefi, Nonlinear vibration analysis of sandwich plates with honeycomb core and graphene nanoplatelet-reinforced face-sheets, 2023, 23, 1644-9665, 10.1007/s43452-022-00589-0
    3. Muhammad Shakeel, Nehad Ali Shah, Jae Dong Chung, Modified Exp-Function Method to Find Exact Solutions of Microtubules Nonlinear Dynamics Models, 2023, 15, 2073-8994, 360, 10.3390/sym15020360
    4. Azzh Saad Alshehry, Roman Ullah, Nehad Ali Shah, Rasool Shah, Kamsing Nonlaopon, Implementation of Yang residual power series method to solve fractional non-linear systems, 2023, 8, 2473-6988, 8294, 10.3934/math.2023418
    5. Behzad Ghanbari, Dumitru Baleanu, Applications of two novel techniques in finding optical soliton solutions of modified nonlinear Schrödinger equations, 2023, 44, 22113797, 106171, 10.1016/j.rinp.2022.106171
    6. Z. Y. Chen, Y. H. Meng, Ruei-Yuan Wang, Timothy Chen, Neural Based Grey Nonlinear Control for Real-World Example of Mechanical Systems, 2023, 1370-4621, 10.1007/s11063-022-11109-9
    7. Ruyi Dong, Junjie Du, Yanan Liu, Ali Asghar Heidari, Huiling Chen, An enhanced deep deterministic policy gradient algorithm for intelligent control of robotic arms, 2023, 17, 1662-5196, 10.3389/fninf.2023.1096053
    8. Boyang Xu, Ali Asghar Heidari, Zhennao Cai, Huiling Chen, Dimensional decision covariance colony predation algorithm: global optimization and high−dimensional feature selection, 2023, 0269-2821, 10.1007/s10462-023-10412-8
    9. Yanyue Liang, Lihong Zhang, Shuguang Li, 2024, Fast approximation algorithms for scheduling uniform parallel batch machines with inclusive processing set restriction, 979-8-3503-6144-5, 70, 10.1109/ICAACE61206.2024.10548968
    10. Dingying Yang, Xi Jiang, Alireza Arabameri, M. Santosh, Johnbosco C. Egbueri, Landslide risk assessment and management using hybrid machine learning‐based empirical models, 2024, 59, 0072-1050, 885, 10.1002/gj.4897
    11. Sana Shahab, Mohd Anjum, Ashit Kumar Dutta, Shabir Ahmad, Gamified approach towards optimizing supplier selection through Pythagorean Fuzzy soft-max aggregation operators for healthcare applications, 2024, 9, 2473-6988, 6738, 10.3934/math.2024329
    12. Jixiang Liao, Dawei Yang, Noreen Izza Arshad, K. Venkatachalam, Ali Ahmadian, MEMS: An automated multi-energy management system for smart residences using the DD-LSTM approach, 2023, 98, 22106707, 104850, 10.1016/j.scs.2023.104850
    13. Bin Sheng, Yanmeng Gao, Ahmad Almadhor, Nan Zhang, Mohamed Abbas, A theoretical approach for thermomechanical shock analysis of doubly curved panel with respect to geometrical and physical parameters using machine-leaning-based algorithm, 2023, 1537-6494, 1, 10.1080/15376494.2023.2288239
    14. Lihua Chen, Harry Far, Mina Mortazavi, Adham E. Ragab, Comparative Study in Design of Fiber-Reinforced Concrete at Elevated Temperatures by Numerical Evaluation through Developed Hybrid Metaheuristic Algorithms, 2023, 13, 2075-5309, 2045, 10.3390/buildings13082045
    15. Satish Kumar Saini, Susanta Mahato, Deep Narayan Pandey, Pawan Kumar Joshi, Modeling flood susceptibility zones using hybrid machine learning models of an agricultural dominant landscape of India, 2023, 30, 1614-7499, 97463, 10.1007/s11356-023-29049-9
    16. B. Günay, Shami A.M. Alsallami, S. Rezapour, Stanford Shateyi, Analytical soliton solutions for the generalized Schrödinger’s equation in optical fiber communication systems, 2023, 52, 22113797, 106792, 10.1016/j.rinp.2023.106792
    17. Ting Xu, Mohammad Hosein Sabzalian, Ahmad Hammoud, Hamed Tahami, Ali Gholami, Sangkeum Lee, An innovative machine learning based on feed-forward artificial neural network and equilibrium optimization for predicting solar irradiance, 2024, 14, 2045-2322, 10.1038/s41598-024-52462-0
    18. Yili Feng, Ruisen Fu, Hao Sun, Xue Wang, Yang Yang, Chuanqi Wen, Yaodong Hao, Yutong Sun, Bao Li, Na Li, Haisheng Yang, Quansheng Feng, Jian Liu, Zhuo Liu, Liyuan Zhang, Youjun Liu, Non-invasive fractional flow reserve derived from reduced-order coronary model and machine learning prediction of stenosis flow resistance, 2024, 147, 09333657, 102744, 10.1016/j.artmed.2023.102744
    19. Mazyar Ghadiri Nejad, Reza Vatankhah Barenji, Güldal Güleryüz, Seyed Mahdi Shavarani, Energy consumption optimization for sustainable flexible robotic cells: Proposing exact and metaheuristic methods, 2023, 0958-305X, 10.1177/0958305X231193868
    20. Tao Hai, A.S. El-Shafay, Raid D. Thanoon, Kamal Sharma, Fahad Mohammed Alhomayani, Ahmed Sayed Mohammed Metwally, Development of machine learning techniques in corrosion inhibition evaluation of 5-methyl-1 H-benzotriazole on N80 steel in acidic media, 2023, 36, 23524928, 106778, 10.1016/j.mtcomm.2023.106778
    21. Wei Tang, Shuili Yang, Mohammad Khishe, Profit prediction optimization using financial accounting information system by optimized DLSTM, 2023, 9, 24058440, e19431, 10.1016/j.heliyon.2023.e19431
    22. Shaik. Rafikiran, G. Devadasu, P. Rajendhar, R. Likhitha, CH Hussaian Basha, Design and implementation of hybrid MPPT controller for FC based EV system with boost DC-DC converter, 2023, 45, 10641246, 6303, 10.3233/JIFS-224007
    23. Ifeyinwa Jacinta Onu, Abiodun Esther Omolara, Moatsum Alawida, Oludare Isaac Abiodun, Abdulatif Alabdultif, Detection of Ponzi scheme on Ethereum using machine learning algorithms, 2023, 13, 2045-2322, 10.1038/s41598-023-45275-0
    24. Wei Shao, Yihang Ding, Jinghao Wen, Pengxu Zhu, Lisong Ou, Optimal decision-making in the water, land and food nexus using artificial intelligence and extreme machine learning, 2023, 23, 1606-9749, 4166, 10.2166/ws.2023.201
  • Reader Comments
  • © 2022 the Author(s), licensee AIMS Press. This is an open access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0)
通讯作者: 陈斌, bchen63@163.com
  • 1. 

    沈阳化工大学材料科学与工程学院 沈阳 110142

  1. 本站搜索
  2. 百度学术搜索
  3. 万方数据库搜索
  4. CNKI搜索

Metrics

Article views(2105) PDF downloads(59) Cited by(24)

Other Articles By Authors

/

DownLoad:  Full-Size Img  PowerPoint
Return
Return

Catalog