**Wenhua Li \*, Weina Zhai and Xing Chai**

School of Mathematics and Statistics, Zhengzhou University, Zhengzhou 450001, China; zhaiweinalucky@163.com (W.Z.); chaixingstudy@163.com (X.C.)

**\*** Correspondence: liwenhua@zzu.edu.cn

Received: 26 August 2019; Accepted: 8 October 2019; Published: 13 October 2019

**Abstract:** We consider online scheduling with bi-criteria on parallel batch machines, where the batch capacity is unbounded. In this paper, online means that jobs' arrival is over time. The objective is to minimize the maximum machine cost subject to the makespan being at its minimum. In unbounded parallel batch scheduling, a machine can process several jobs simultaneously as a batch. The processing time of a job and a batch is equal to 1. When job *Jj* is processed on machine *Mi*, it results cost *cij*. We only consider two types of cost functions: *cij* = *a* + *cj* and *cij* = *a* · *cj*, where *a* is the fixed cost of machines and *cj* is the cost of job *Jj*. The number of jobs is *n* and the number of machines is *m*. For this problem, we provide two online algorithms, which are showed to be the best possible with a competitive ratio of (<sup>1</sup> <sup>+</sup> *<sup>β</sup>m*, *<sup>n</sup> <sup>m</sup>* ), where *<sup>β</sup><sup>m</sup>* is the positive root of the equation (<sup>1</sup> <sup>+</sup> *<sup>β</sup>m*)*m*+<sup>1</sup> <sup>=</sup> *<sup>β</sup><sup>m</sup>* <sup>+</sup> 2.

**Keywords:** bi-criteria scheduling; online algorithm; makespan; maximum machine cost; competitive ratio

#### **1. Introduction**

In this article, we consider an online bi-criteria scheduling problem to minimize the maximum machine cost subject to the makespan achieving its minimum. Online means that jobs' arrival is over time. It means, until when a job arrives, all information about it, including its arrival time, processing time and processing cost, is not known by us. For a minimization problem that is relevant to a single objective function, the competitive ratio of an online algorithm *A* is defined to be

$$\rho\_A = \sup \{ \frac{f(A, I)}{OPT(A, I)} : \text{ } I \text{ is any job instance and } OPT(A, I) > 0 \}. $$

Here, *f*(*A*, *I*) is the objective value in algorithm *A* for any input instance *I*, OPT(*A*, *I*) is the optimal objective value in the offline circumstance, respectively. We say algorithm *A* is the best possible if there doesn't exist any algorithm *A* such that *ρA* < *ρA*.

Parallel-batch was first studied by Uzsoy et al. [1,2]. There are two classes of parallel-batch models that have been widely considered in the literature, the unbounded version *b* = ∞ and the bounded version *b* < ∞, where *b* is the batch capacity. That is, at most *b* jobs can be processed simultaneously in one batch. The processing time of one batch is defined as the longest job in it. Since in this paper we consider that the jobs are with identical processing time, the processing time of the batches is 1.

In traditional scheduling theory, most problems are concerned with the minimization of one certain function. There have been many achievements such as, for minimizing maximum completion time when jobs have the same processing times, Zhang et al. [3] provided two best possible online algorithmss with 1 + *β<sup>m</sup>* and 1 + *α*-competitive ratio for the unbounded model *b* = ∞ and bounded model *b* < ∞, respectively, and *β<sup>m</sup>* satisfies (1 + *βm*)*m*+<sup>1</sup> = *β<sup>m</sup>* + 2, *α* = <sup>√</sup>5−<sup>1</sup> <sup>2</sup> . When jobs have diverse processing times, Tian et al. [4] and Liu et al. [5] independently gave two best possible online algorithms with competitive ratio of 1 + *αm*, and *α<sup>m</sup>* is the positive solution of the equation

*α*2 *<sup>m</sup>* + *m* · *α<sup>m</sup>* − 1 = 0. Fang et al. [6] presented a best possible online algorithm with a competitive ratio of 1 + *φ* for a set of processing time scheduling problems, where *φ* = <sup>√</sup>5−<sup>1</sup> <sup>2</sup> . For minimizing a maximum weighted completion time problem, Li et al. [7] established a best possible online algorithm with a competitive ratio of <sup>√</sup>5+<sup>1</sup> <sup>2</sup> . For minimizing total weighted completion time problem, Cao et al. [8] gave a best possible online algorithm with a competitive ratio of *ρm*, where *ρ<sup>m</sup>* is the positive solution of *<sup>ρ</sup>m*+<sup>1</sup> *<sup>m</sup>* <sup>−</sup> *<sup>ρ</sup><sup>m</sup>* <sup>−</sup> <sup>1</sup> <sup>=</sup> 0. Some reviews for parallel-batch scheduling research can be found in [9–14].

Today, with the rapid development of science and technology, minimization of one certain function doesn't satisfy the needs of things. In addition, jobs' objective functions may have certain kinds of aspects to minimize. In recent years, there have been some results about minimizing bi-criteria objective functions such as Ma et al. [15], who considered an online trade-off scheduling problem that minimize makespan and total weighted completion time on a single machine, presenting a nondominated (1 + *α*, 1 + <sup>1</sup> *<sup>α</sup>* )−competitive online algorithm for each *α* with 0 < *α* ≤ 1. Liu et al. [16] considered the single machine online trade-off scheduling problem, which minimizes the makespan and maximum lateness. They established a nondominated (*ρ*, 1 + <sup>1</sup> *<sup>ρ</sup>* )−competitive online algorithm with 1 ≤ *ρ* ≤ <sup>√</sup>5+<sup>1</sup> <sup>2</sup> . Here, a (*ρ*1, *ρ*2)-competitive online algorithm is called nondominated if there is no other (*ρ* <sup>1</sup>, *ρ* <sup>2</sup>)-competitive online algorithm *A* such that (*ρ* <sup>1</sup>, *ρ* <sup>2</sup>) ≤ (*ρ*1, *ρ*2) and either *ρ* <sup>1</sup> < *ρ*<sup>1</sup> or *ρ* <sup>2</sup> < *ρ*2. In addition, Lee et al. [17] considered two bi-criteria scheduling problems: one is minimizing the maximum machine cost subject to the total completion time achieving its minimum, another is minimizing the total machine cost subject to the makespan achieves its minimum. As these two problems are strongly NP-hard, they proposed fast heuristics and found their worst-case performance bounds.

Another class of scheduling problems with bi-criteria is to minimize a secondary objective function *f*<sup>2</sup> subject to a primary objective function *f*<sup>1</sup> being at its minimum, and the objective is denoted by *Lex*(*f*1, *f*2). In practical production, the producer wants to reduce the cost of the machine as soon as it is finished. Given *m* parallel batch machines *Mi*, 1 ≤ *i* ≤ *m*, and *n* jobs *Jj*, 1 ≤ *j* ≤ *n*. Every machine has a fixed cost *ai*, job *Jj* has cost *cj*, and 1 ≤ *j* ≤ *n*. When job *Jj* is processed on machine *Mi*, this will result in different costs *cij*, 1 ≤ *i* ≤ *m*, 1 ≤ *j* ≤ *n*. Suppose that *xij* = 1 if job *j* is processed on machine *i*, otherwise *xij* = 0. Thus, the total machine cost, is named *TMC*, and *TMC* = ∑*<sup>m</sup> <sup>i</sup>*=<sup>1</sup> <sup>∑</sup>*<sup>n</sup> <sup>j</sup>*=<sup>1</sup> *cijxij*, and the maximum machine cost is named *MMC*, and *MMC* = max*<sup>m</sup> i*=1{∑*<sup>n</sup> <sup>j</sup>*=<sup>1</sup> *cijxij*}. In Lee et al. [17], they studied the offline bi-criteria scheduling problems, for which the objective functions are minimizing *MMC* subject to the constraint that ∑ *Cj* is minimized and minimizing *TMC* subject to the constraint that *C*max is minimized, where *Cj* is the completion time of job *Jj*, ∑ *Cj* is total completion time of jobs, and *C*max is the maximum completion time of jobs. They considered three kinds of cost functions: *cij* = *cj*, *cij* = *ai* + *cj*, and *cij* = *ai* · *cj*. In our article, we consider online algorithms to minimize the maximum machine cost subject to the makespan achieving its minimum, and the objective function is denoted as *Lex*(*C*max, *MMC*). Here, we assume that all machines have the same fixed cost *a*, and we consider two kinds of costs: *cij* = *a* + *cj* and *cij* = *a* · *cj*, 1 ≤ *i* ≤ *m*, 1 ≤ *j* ≤ *n*. Since the jobs are processed in batches in our model, the cost of a batch processed on some machine is defined as the maximum cost of the jobs in it. Then, the cost of one machine is the total cost of the batches on it. This problem can be written in the three-field notation as *P*m|online, *p* − batch, *b* = ∞, *pj* = 1|*Lex*(*C*max, *MMC*), when *cij* = *a* + *cj* or *cij* = *a* · *cj*, 1 ≤ *i* ≤ *m*, 1 ≤ *j* ≤ *n*.

For the online scheduling problem to minimize a primary objective function *f*<sup>1</sup> and a secondary objective function *f*2, we say that an online algorithm *A* is (*ρA*,1, *ρA*,2)-competitive if it is *ρA*,1-competitive when minimizing *f*<sup>1</sup> and *ρA*,2-competitive when minimizing *f*2. In the case that *ρA*,1 is the competitive ratio of *A* for minimizing *f*<sup>1</sup> and *ρA*,2 is the competitive ratio of *A* for minimizing *f*2, we also say that the online algorithm *A* has a competitive ratio of (*ρA*,1, *ρA*,2). Suppose that the best possible competitive ratio is *ρ* when minimizing *f*1. We say that the online algorithm *A* is the best possible, if *ρA*,1 = *ρ* and there is no other online algorithm *A* such that *ρA*,1 = *ρ* and *ρA*,2 < *ρA*,2.

This paper is organized as four sections as follows. In Section 2, the parameters and notations are introduced. In Section 3, the lower bounds of the competitive ratio are presented. In Section 4, two best possible online algorithms with a competitive ratio of (<sup>1</sup> <sup>+</sup> *<sup>β</sup>m*, *<sup>n</sup> <sup>m</sup>* ) are showed, where *β<sup>m</sup>* is the positive root of the equation (1 + *βm*)*m*+<sup>1</sup> = *β<sup>m</sup>* + 2.

The objective considered in this paper is to minimize the maximum machine cost subject to the makespan being at its minimum. In addition, the algorithms studied in this paper are extensions of the results about makespan in the literature.

#### **2. Preliminaries and Notations**

Some preliminaries and notations that will be used in the paper are shown in the following:


For minimizing a single criterion, there have been many results about minimizing makespan. For example, the following lemma shows one result to minimize *C*max. From Theorem 3 of Zhang et al. [3], we have

**Lemma 1.** *For problem Pm*|*online*, *p* − *batch*, *b* = ∞, *pj* = 1|*C*max*, the competitive ratio of the best possible online algorithm is* 1 + *βm, where β<sup>m</sup> is the positive root of the equation* (1 + *βm*)*m*+<sup>1</sup> = *β<sup>m</sup>* + 2*.*

#### **3. The Lower Bound**

**Theorem 1.** *For problem Pm*|*online*, *p* − *batch*, *b* = ∞, *pj* = 1|*Lex*(*C*max, *MMC*)*, when cij* = *a* + *cj or cij* = *a* · *cj,* 1 ≤ *i* ≤ *m,* 1 ≤ *j* ≤ *n, there exists no online algorithm with a competitive ratio less than* (<sup>1</sup> <sup>+</sup> *<sup>β</sup>m*, *<sup>n</sup> <sup>m</sup>* )*.*

**Proof.** Supposing that the fixed cost of each machine is *a*, the cost of each job is 1, which means *c*max = 1. Let *ψ* be the set of the best possible solutions of the objective function *C*max. Then, for ∀*σ* ∈ *ψ*, we prove that there exists no online algorithm that satisfies *MMC*(*σ*) *MMC*(*π*) <sup>&</sup>lt; *<sup>n</sup> <sup>m</sup>* , subjected to the constraint

$$\frac{\mathcal{C}\_{\text{max}}(\sigma)}{\mathcal{C}\_{\text{max}}(\pi)} \le 1 + \beta\_m. \tag{1}$$

We use adversary strategy to prove this conclusion. Let A be an arbitrary online algorithm, and is an arbitrarily small positive number. Suppose the first job *J*<sup>1</sup> arrives at 0 and starts at *s*1. From (1), we can know that *s*<sup>1</sup> ≤ *βm*. Otherwise, we have

$$\frac{\mathcal{C}\_{\text{max}}(\sigma)}{\mathcal{C}\_{\text{max}}(\pi)} = \frac{s\_1 + 1}{r\_1 + 1} > 1 + \beta\_{m\_{\text{max}}}$$

a contradiction. Job *Ji*+<sup>1</sup> arrives at *si* + and starts at *si*+1, 1 ≤ *i* ≤ *n* − 1. We claim that *si* ≤ (1 + *βm*)*ri* + *βm*. Otherwise,

$$\frac{C\_{\text{max}}(\sigma)}{C\_{\text{max}}(\pi)} = \frac{s\_i + 1}{r\_i + 1} > \frac{(1 + \beta\_m)r\_i + \beta\_m + 1}{r\_i + 1} = 1 + \beta\_m r\_i$$

Then, *C*max(*σ*) > (1 + *βm*)*C*max(*π*), a contradiction.

Hence, *n* jobs are processed as *n* batches on *m* machines.

When *cij* <sup>=</sup> *<sup>a</sup>* <sup>+</sup> *cj*, after *<sup>n</sup>* jobs are processed, there must be not less than *<sup>n</sup> <sup>m</sup>* jobs on one machine. Because the cost of each job is 1, the maximum machine cost is *MMC*(*σ*) ≥ *<sup>n</sup> <sup>m</sup>* × (*a* + 1). In *π*, all jobs can form one batch starting at the last time when the job arrives, so *MMC*(*π*) = *a* + 1. Then, we get *MMC*(*σ*) *MMC*(*π*) ≥ *<sup>n</sup> <sup>m</sup>* .

When *cij* = *a* · *cj*, similarly after *n* jobs are finished, there must be one machine that does not have less than *<sup>n</sup> <sup>m</sup>* jobs. Since each job's cost is 1, the maximum machine cost is *MMC*(*σ*) ≥ *<sup>n</sup> <sup>m</sup>* × (*a* · 1). In *π*, all jobs can form one batch starting at the time which the last job arrives, so *MMC*(*π*) = *a* · 1. Then, we get *MMC*(*σ*) *MMC*(*π*) ≥ *<sup>n</sup> <sup>m</sup>* .

Therefore, for problem *P*m|online, *p* − batch, *b* = ∞, *pj* = 1|.*Lex*(*C*max, *MMC*), when *cij* = *a* + *cj* or *cij* = *a* · *cj*, 1 ≤ *i* ≤ *m*, 1 ≤ *j* ≤ *n*, and there exists no online algorithm in which the competitive ratio is less than (<sup>1</sup> <sup>+</sup> *<sup>β</sup>m*, *<sup>n</sup> <sup>m</sup>* ).

#### **4. Best Possible Online Algorithms**

Here, there are two online algorithms for this problem.
