43
Accepted Manuscript A honey-bees optimization algorithm for a two-agent single-machine schedul- ing problem with ready times Yunqiang Yin, Wen-Hung Wu, T.C.E. Cheng, Chin-Chia Wu, Wen-Hsiang Wu PII: S0307-904X(14)00538-1 DOI: http://dx.doi.org/10.1016/j.apm.2014.10.044 Reference: APM 10200 To appear in: Appl. Math. Modelling Received Date: 28 February 2013 Revised Date: 5 July 2014 Accepted Date: 23 October 2014 Please cite this article as: Y. Yin, W-H. Wu, T.C.E. Cheng, C-C. Wu, W-H. Wu, A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times, Appl. Math. Modelling (2014), doi: http://dx.doi.org/10.1016/j.apm.2014.10.044 This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customers we are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, and review of the resulting proof before it is published in its final form. Please note that during the production process errors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

Embed Size (px)

Citation preview

Page 1: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

Accepted Manuscript

A honey-bees optimization algorithm for a two-agent single-machine schedul-ing problem with ready times

Yunqiang Yin, Wen-Hung Wu, T.C.E. Cheng, Chin-Chia Wu, Wen-Hsiang Wu

PII: S0307-904X(14)00538-1DOI: http://dx.doi.org/10.1016/j.apm.2014.10.044Reference: APM 10200

To appear in: Appl. Math. Modelling

Received Date: 28 February 2013Revised Date: 5 July 2014Accepted Date: 23 October 2014

Please cite this article as: Y. Yin, W-H. Wu, T.C.E. Cheng, C-C. Wu, W-H. Wu, A honey-bees optimizationalgorithm for a two-agent single-machine scheduling problem with ready times, Appl. Math. Modelling (2014), doi:http://dx.doi.org/10.1016/j.apm.2014.10.044

This is a PDF file of an unedited manuscript that has been accepted for publication. As a service to our customerswe are providing this early version of the manuscript. The manuscript will undergo copyediting, typesetting, andreview of the resulting proof before it is published in its final form. Please note that during the production processerrors may be discovered which could affect the content, and all legal disclaimers that apply to the journal pertain.

Page 2: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

1

A honey-bees optimization algorithm for a two-agent

single-machine scheduling problem with ready times

Yunqiang Yina, Wen-Hung Wu

b ,T.C.E. Cheng

c,

Chin-Chia Wud, and Wen-Hsiang Wu

e*

aFaculty of Science, Kunming University of Science and Technology,

Kunming, 650093, China

bDepartment of Business Administration, Kang-Ning Junior College,

Taipei, Taiwan

cDepartment of Logistics and Maritime Studies,

The Hong Kong Polytechnic University, Hung Hom, Kowloon, Hong Kong

dDepartment of Statistics, Feng Chia University,

Taichung, Taiwan

eDepartment of Healthcare Management, Yuanpei University,

Hsinchu, Taiwan

28 February 2013

1st revision 2 January 2014

2nd revision 11 April 2014

3rd revision 04 July 2014

_______________

*Corresponding author. E-mail: [email protected]

Page 3: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

2

Abstract: In this paper we consider two agents that compete on the use of a common

processor. Each of the agents has a set of jobs that have to be processed on the same

machine without preemption. Each of the agents wants to minimize an objective

function that depends on the completion time of its own jobs. In addition, each job has

different release dates. In the presence of unequal release dates, it is sometimes

advantageous to form a non-full batch, while in other situations it is a better strategy

to wait for future job arrivals in order to increase the fullness of the batch. The

objective is to find a schedule that performs well with respect to the objectives of both

agents. To solve this difficulty problem, we construct a branch-and-bound solution

scheme incorporating these bounds and some dominance rules for the optimal solution.

In view of the advantage of combining local and global searches in the honey-bees

optimization algorithm, we attempt to use a marriage in honey-bees optimization

algorithm (MBO) to find near-optimal solutions. We conduct extensive computational

experiments to evaluate the performance of the algorithms.

Keywords: scheduling; two agents; MBO algorithm

Page 4: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

3

1. Introduction

A branch of artificial intelligence, multi-agent simulation provides a promising

approach to deal with multi-stakeholder management systems such as allocation of a

common pool of resources to multiple stakeholders. It provides a framework in which

stakeholders’ (or agents’) interactions and decision-making behaviours can be

analyzed. Examples of such a system are given by Purnomo and Guizol (2006) in the

context of forest plantation co-management, and by Bessonov et al. (2009) concerning

blood cell population dynamics. More examples in different application environments

and different methodological fields, such as artificial intelligence, decision theory, and

operations research, can be found in Agnetis et al. (2007).

Scheduling with multiple agents has received considerable research attention

recently. Baker and Smith (2003) and Agnetis et al. (2004) pioneer multi-agent

scheduling research. Baker and Smith (2003) investigate a linear combination of the

objectives of the two agents. Agnetis et al. (2004) study the complexity of several

two-agent single-machine problems in which one agent seeks to optimize its objective,

given that the objective of the other agent cannot exceed a certain value. Cheng et al.

(2004) consider a feasibility model of multi-agent single-machine scheduling where

each agent’s objective is to minimize its total weighted number of tardy jobs. Cheng

et al. (2006) study multi-agent single-machine scheduling where the objectives of the

agents are of the max-form. Ng et al. (2006) consider two-agent single-machine

scheduling where the objective is to minimize the total completion time of the first

agent, subject to the number of tardy jobs of the second agent cannot exceed a given

number. Agnetis et al. (2007) analyze the complexity of some multi-agent

single-machine scheduling problems and propose solution algorithms. Studying

multi-agent single-machine scheduling to minimize the total weighted completion

Page 5: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

4

time, Lee et al. (2009) provide fully polynomial-time approximation schemes and an

efficient approximation algorithm with a reasonable worst-case bound. Leung et al.

(2010) generalize the single-machine problems proposed by Agnetis et al. (2004) to

the environment with multiple identical machines in parallel and different release

dates. Wan et al. (2010) consider several two-agent scheduling problems with

controllable job processing times, where two agents share either a single machine or

two identical machines in parallel for processing their jobs. Mor and Mosheiov (2010)

deal with a scheduling problem with two competing agents to minimize the minmax

and minsum earliness objectives. Nong et al. (2011) consider two-agent

single-machine scheduling to minimize the total cost, which comprises the maximum

weighted completion time of one agent and the total weighted completion time of the

other agent. They present a 2-approximation approximation algorithm for the problem,

show that the case where the number of jobs of the first agent is fixed is NP-hard, and

devise a polynomial-time approximation scheme for this case. Cheng et al. (2011a)

consider two-agent single-machine scheduling involving deteriorating jobs and

learning effects simultaneously. In the proposed model, given a schedule, they assume

that the actual processing time of any job of the first agent is a function of

position-based learning, while the actual processing time of any job of the second

agent is a function of position-based deterioration. Cheng et al. (2011b) investigate

two-agent single-machine scheduling in which the actual processing time of a job in a

schedule is a function of sum-of-processing-times-based learning and a control

parameter of the learning function. The objective is to minimize the total weighted

completion time of the jobs of the first agent, subject to no tardy job for the second

agent. Wu et al. (2012) study two-agent single-machine scheduling in which sum-of-

processing-times-based learning and job deteriorating co-exist. Luo et al. (2011)

consider two-agent two-machine flow shop scheduling. They investigate two models

Page 6: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

5

where one is a weighted-sum optimization model and the other is a constrained

optimization model.

Despite the popularity of studies of multi-agent scheduling, research on multi-agent

scheduling with job release dates is relatively uninvestigated. Yin et al. (2012)

address a two-agent single-machine scheduling problem with different ready times.

Their objective function is to minimize the tardiness of one agent, subject to the

constraint that the lateness of the other agent is less than upper bound. They use a

mixed integer programming model and branch-and-bound algorithm to solve the

problem. In addition, they propose a honey-bees optimization algorithm to obtain

approximate solutions. Yin et al. (2013b) address a two-agent scheduling problem on

a single machine where the objective is to minimize the total weighted earliness cost

of all jobs, while keeping the earliness cost of one agent below or at a fixed level. An

application of multi-agent scheduling with job release dates arises in the shipping

industry (Lun et al. 2011; Zhang et al. 2011; Wu et al. 2013, Yin et al. 2013a).

Specifically, ships belonging to different shipping companies (multiple agents) call at

a port, which needs to determine the sequence to serve the ships that arrive at different

times. In this case, the single machine is the port that processes jobs with ready times,

which are the ships that arrive at different times. Motivated by this observation, we

consider a two-agent single-machine scheduling problem with job release dates,

where the goal is to minimize the weighted sum of the completion times of the jobs of

the first agent, subject to the maximum lateness of the jobs of the second agent cannot

exceed a given limit. We present a branch-and-bound (BAB) solution scheme and a

marriage in honey-bees optimization (MBO) algorithm to solve the problem optimally

and approximately, respectively. The contributions of this study are that we first

discuss a polynomially solvable case of the proposed problem, then we develop nine

dominance properties and a lower bound for the optimal solution in the theoretical

Page 7: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

6

part and propose an MBO algorithm to find near-optimal solutions in the technical

part.

The rest of the paper is organized as follows: In Section 2 we introduce and

formulate the problem. In Section 3 we discuss the complexity and solvability of the

problem. In Section 4 we present a BAB solution scheme and an MBO algorithm to

solve the problem. We discuss the results of computational experiments conducted to

evaluate the performance of the algorithms in Section 5. We conclude the paper and

suggest some topics for future research in the last section.

2. Optimization problem formulation

In this section we first introduce the notations used throughout the paper and then give the

formulation of the problem.

n denotes the number of jobs;

S denotes a sequence of jobs;

X denotes the set of agents, say A and B;

XJ denotes the job set of agent X;

X

jJ denotes the job code of job j of agent X;

X

jp denotes the job processing time of job X

jJ of agent X;

X

jr denotes the release date of job X

jJ of agent X;

X

jw denotes the weight of job X

jJ of agent X;

X

jd denotes the due date of job X

jJ of agent X;

( )X

jC S denotes the completion time of job X

jJ of agent X in S;

( )X

jL S denotes the lateness of of job X

jJ of agent X in S, i.e.,

Page 8: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

7

( ) ( )X X X

j j jL S C S d= − ;

We formulate the problem under study as follows. There are two competing agents,

called agents A and B, respectively. Each of the agents has a set of non-preemptive

jobs to be processed on a common machine. Agent A has the job set

{ }1 2, , ,A

A A A A

nJ J J J= K , whereas agent B has the job set { }1 2, , ,B

B B B B

nJ J J J= K . Let

{ , }X A B∈ . The jobs of agent X are called X -jobs. Each job X

jJ in the set X

becomes available for processing at time 0X

jr ≥ , requires a non-negative processing

time X

jp , has a weight 0X

jw > , and a due date 0X

jd ≥ . We assume that all the data

are integers. Let S be a feasible schedule for the A B

n n n= + jobs, i.e., a feasible

assignment of the starting times to the jobs of both agents. We denote the completion

time of job X

jJ by ( )X

jC S and the lateness of job

X

jJ by ( ) ( )X X X

j j jL S C S d= − .

We write X

jC and

X

jL for ( )X

jC S and ( )X

jL S , respectively, whenever this does not

cause confusion. For a given schedule (or sequence), we use the subscript [i] to denote

the job in the ith position of the schedule. The problem is to find a feasible schedule

that minimizes the weighted sum of the completion times of agent A, subject to the

maximum lateness of the jobs of agent B does not exceed a given limit Q i.e.,

max1 :A A B

j j jr w C L Q≤∑ , where { }max max |B B B B

j jL L J J= ∈ (see Agnetis et al. 2004).

Cheng et al. (2008) show that the problem is strongly NP-hard when the release dates

are zero, and Agnetis et al. (2009) present a Lagrangian relaxation and an algorithm to

solve the problem.

3. Solution procedure

Page 9: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

8

3.1 A polynomially solvable case of max1 :A A B

j j jr w C L Q≤∑

Agnetis et al. (2007) show that the problem max1 :A A B

j j jr w C L Q≤∑ is strongly

NP-hard even if all the jobs are available at time zero. In this section we consider an

important special case, for which we are able to give a polynomial-time solution

algorithm. We say that the A -jobs have reversely agreeable weights if A A

i jp p≤

implies A A

i jw w≥ for all jobs A

iJ and A

jJ .

Lemma 1 Given a feasible instance of max1 :A A B

j j jr w C L Q≤∑ , if the A -jobs have

reversely agreeable weights and 0A

jr = for all 1, , Aj n= K , then an optimal schedule

exists in which the A -jobs are scheduled in the weighted shortest processing time

(WSPT) order, i.e., in non-decreasing order of A

j

A

j

p

w.

Proof Consider an optimal schedule S in which the A -jobs are not in the WSPT

order. Let A

iJ and A

jJ be the first pair of jobs such that AAji

A A

i j

pp

w w> . Then A A

i jp p≥

and A A

i jw w≤ because the A -jobs have reversely agreeable weights. Assume that in

schedule S , job A

iJ starts at time t , followed by a set of consecutively scheduled

B -jobs (with a total load of, say, π ), and then by job A

jJ . We generate a new schedule

'S from schedule S by swapping jobs A

iJ and A

jJ , leaving the other jobs in their

original positions. Then ( ) ( ')A A A A

i i j jC S t p t p C S= + ≥ + = and ( ) ( ')A A

j jC S C S= ,

implying that the B -jobs in π are earlier in 'S . Thus schedule 'S is feasible since

S is feasible. In what follows, we prove that 'S is not a worse schedule than S by

showing that

Page 10: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

9

( ) ( ) ( ') ( ').A A A A A A A A

i i j j j j i iw C S w C S w C S w C S+ ≥ +

In fact, since A A

i jw w≤ , ( ) ( ')A A

i jC S C S≥ , and ( ) ( ')A A

j jC S C S= , we have

( ) ( ) ( ( ') ( '))A A A A A A A A

i i j j j j i iw C S w C S w C S w C S+ − +

( ') ( ') ( ( ') ( '))A A A A A A A A

i j j i j j i iw C S w C S w C S w C S≥ + − +

( )( ( ') ( '))A A A A

i j j iw w C S C S= − −

0≥ ,

as required.

Thus, repeating this swapping argument for all the A-jobs not sequenced in the

WSPT order yields the result.

Now for each B -job B

jJ , let us define a deadline B

jD for it such that

B B

j jC d Q− ≤ for B B

j jC D≤ and B B

j jC d Q− > for B B

j jC D> , i.e., B B

j jD d Q− = .

Re-arrange the B -jobs in non-decreasing order of B

jD . We next define the latest start

time B

jLS of job B

jJ as the maximum value of the starting time that B

jJ can attain

in a feasible schedule such that B B

j jC D≤ for all B B

jJ J∈ . Starting from the last B

-job B

B

nJ and set B B B

B B

n n nLS D p= − , we consider the following cases.

Case 1: 1B B

B

n nLS D −> . Then set 1 1 1B B B

B B

n n nLS D p− − −= − .

Case 2: If there is only one job 1B

B

nJ − such that 1B B

B

n nLS D −≤ , then set

1 1B B B

B

n n nLS LS p− −= − .

Case 3: If there are more than one B -job whose deadlines are larger than BnLS ,

Page 11: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

10

assuming that k is the smallest index such that B

B

n kLS D≤ , then order the jobs in

{ }1, ,

B

B B

k nJ J −K in non-decreasing order of B

jr and let 1

B

j j jLS LS p+= − for all

1, ,B

j n k= − K .

Continue backwards in this way until we obtain 1LS . Clearly if job B

jJ starts

after time jLS or B

j jr LS> , then at least one B -job satisfies B B

j jC d Q− > .

Based on the above analysis, we develop the following Algorithm 1 to solve the

special case of max1 :A A B

j j jr w C L∑ where the A -jobs have reversely agreeable

weights and 0A

jr = for all 1, ,

Aj n= K .

Algorithm 1:

Step 1: Set A B

i jt p p= +∑ ∑ ,

Ak n= ,

Bh n= , and l n= ; sort the A -jobs in

non-decreasing order of A

j

A

j

p

w, i.e., 1 2

1 2

A

A

AA An

A A A

n

pp p

w w w≤ ≤ ≤L ; compute the deadline

B

jD of B -job B

jJ for all 1, , Bj n= K and sort these deadlines in

non-decreasing order, i.e., 1 2 B

B B B

nD D D≤ ≤ ≤L .

Step 2: If 1h ≥ , then

If B

ht D≤ , then

Set [ ]

B

l hJ p= , 1l l= − , 1h h= − , B

ht t p= − , and re-start Step 2;

Else

go to Step 3;

Endif

Else

Page 12: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

11

go to Step 3;

Endif

Step 3: If 1k ≥ , then

Set [ ]

A

l kJ p= , 1l l= − , 1k k= − , A

kt t p= − , and go to Step 4;

Else

If 1h ≥

Output the result that the instance is not feasible;

Else

go to Step 4;

Endif

Endif

Step 4: If 1h ≥ or 1k ≥ , then

go to Step 2.

Else

Output the sequence [1] [2] [ ]( , , , )nS J J J= K ;

Endif

Running Time: The sorting procedures for the A -jobs and B -jobs in Step 1 require

( log )A A

O n n and ( log )B B

O n n times, respectively. Steps 2 and 3 are performed in

linear time in the number of jobs. Hence the total running time of Algorithm 1 is

( log log )A A B BO n n n n+ .

3.2 Branch-and-bound scheme

In this section we provide a BAB solution scheme and develop an MBO algorithm

to solve the problem max1 :A A B

j j jr w C L Q≤∑ optimally and approximately, respectively.

Page 13: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

12

In order to reduce the search time of the BAB scheme, we establish some dominance

rules in the following subsection.

3.3 Dominance rules

Assume that schedule S has two adjacent jobs X

iJ and Y

jJ with X

iJ

immediately preceding Y

jJ , where , { , }X Y A B∈ . We create a new schedule 'S

from S by swapping jobs X

iJ and Y

jJ and leaving the other jobs unchanged in

schedule S . In addition, we assume that the starting time of processing X

iJ in S

is t .

Lemma 2 If ,X Y A

i jJ J J∈ , and { }max ,A A A

j i ir r t p≥ + , then S ′ can be dominated by S.

Proof The completion times of jobs A

iJ and A

jJ in S and 'S are, respectively,

{ }( ) max ,A A A

i i iC S r t p= +

{ }{ }( ) max max , ,A A A A A

j i i j jC S r t p r p= + +

{ }( ') max ,A A A

j j jC S r t p= +

And

{ }{ }( ') max max , ,A A A A A

i j j i iC S r t p r p= + + .

Then it follows from { }max ,A A A

j i ir r t p≥ + that

{ }( ) max , ( ')A A A A A A A

i i i j i j iC S r t p r p p C S= + < + + = and

( ') ( ') ( ')A A A A A A A A

j j j j j i j iC S r p C S r p p C S= + = < + + = ,

so ( ) ( ) ( ') ( ')A A A A A A A A

i i j j j j i iw C S w C S w C S w C S+ < + . The result follows.

Lemma 3 If ,X Y A

i jJ J J∈ , { } { }max , max ,A A

j ir t r t≥ , and

Page 14: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

13

{ }{ } { }( ) { } { }( )max max , , max , max , max ,A A A A A A A A A

j i i j j i j j iw r t p r r t w r t p r t+ − < + − , then S ′ is

dominated by S.

Proof By the proof of Lemma 2, if { } { }max , max ,A A

j ir t r t≥ , then

{ }{ } { }( ) max max , , max , ( ')A A A A A A A A A

j i i j j j j i iC S r t p r p r t p p C S= + + ≤ + + = .

On the other hand, it follows from

{ }{ } { }( ) { } { }( )max max , , max , max , max ,A A A A A A A A A

j i i j j i j j iw r t p r r t w r t p r t+ − < + −

that ( ) ( ) ( ') ( ')A A A A A A A A

i i j j j j i iw C S w C S w C S w C S+ < + . The result follows.

As a direct consequence of Lemma 3, we have the following results.

Lemma 4 If ,X Y A

i jJ J J∈ , { } { }max , max ,A A

j ir t r t≥ , and

{ } { }2max , 2max ,A A A A

i i j jr t p r t p+ ≤ + and A A

j iw w< , then S dominates 'S .

Lemma 5 If ,X Y A

i jJ J J∈ , { }max ,A A

j ir r t≤ , and A A A A

j i i jw p w p< , then S ′ is dominated

by S.

Lemma 6 If ,X Y B

i jJ J J∈ , { } { }{ }max , max max , ,B B B B B B B B

i i i j j i i ir t p d Q r t p r p d+ − ≤ < + + − ,

and { }{ }max max , ,B B B B B

i i j j jr t p r p d Q+ + − ≤ , then S ′ is dominated by S..

Proof The conditions imply that schedule 'S is infeasible, as required.

Lemma 7 If ,X A Y B

i jJ J J J∈ ∈ , { } { }max , max ,B A

j ir t r t≥ , and { }{ }max max , ,A A B

i i jr t p r+

B B

j jp d Q+ − ≤ , then S′ is dominated by S.

Next, we present two propositions to determine the feasibility of a partial sequence.

Let ( , ')π π be a sequence of the jobs, where π is the scheduled part consisting of

k jobs and 'π is the unscheduled part. Moreover, let [ ]kC be the completion time of

the last job in π .

Page 15: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

14

Lemma 8 If there is a B -job B

jJ in 'π such that { }[ ]max , B B B

k j j jC r p d Q+ − > , then

sequence ( , ')π π can be eliminated.

Lemma 9 If all the unscheduled jobs belong to AJ and there exists an A -job A

jJ

such that { }[ ]max , A A A

k j j kC r p r+ ≤ for all job { }'\A A

k jJ Jπ∈ , then job A

jJ may be

assigned to the ( 1)k + th position.

Lemma 10 If all the unscheduled jobs belong to AJ and { }'

maxAj

A

j Jr t

π∈≤ , then an

optimal sequence is obtained by processing the remaining unscheduled jobs in the

WSPT order.

3.4 A lower bound for max1 :A A B

j j jr w C L Q≤∑

The efficiency of a BAB solution scheme depends largely on the lower bounds for

fathoming the partial sequences. In this subsection we propose a lower bound for

max1 :A A B

j j jr w C L Q≤∑ . Let AS be a partial sequence in which the order of the first k

jobs is determined and US be the unscheduled part consisting of 1n A -jobs and

2n

B -jobs, where 1 2n n n k+ = − . Clearly, a lower bound for max

1 , :A A B

j j jr pmtn w C L Q≤∑

is also a lower bound for max1 :A A B

j j jr w C L Q≤∑ . Based on this, we develop an

algorithm to obtain a lower bound for max1 :A A B

j j jr w C L Q≤∑ as follows:

Algorithm 2:

Step 1: Find the latest start time B

jLS of job B

jJ in US and sort the weights of the

unscheduled A -jobs in non-increasing order, i.e., 1(1) (2) ( )

A A A

nw w w≥ ≥ ≥L .

Step 2: For each B -job B

jJ in US , start processing it at time B

jLS .

Step 3: Define block i as the i th set of contiguously processed jobs of agent B .

Page 16: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

15

Let there be 2n nβ ≤ blocks and let the starting time and finishing time of

each block i be ( )s i and ( )f i , respectively.

Step 4: Schedule the A -jobs in US in the preemptive shortest processing time

(SPT) order, skipping the time slots occupied by the jobs of agent B , i.e., at

each release date or finishing time of a job or finishing time of a time slot,

schedule an unfinished job that is available and has the smallest remaining

processing time. When a job is completed or when a time slot is finished at t ,

and there are no jobs available (letting j

r be the earliness release date of the

unscheduled A -jobs), then move some pieces of the blocks of B -jobs that

appear after t with a total length jr t− and insert them in the idle time

interval [ , ]j

t r . Specifically, let k be the first block of B -jobs that appears

after t . If ( ) ( )j

f k s k r t− ≥ − , then set ( ) ( )j

s k s k r t= + − ; if

( ) ( ) ( ) ( ) ( 1) ( 1)j

f k s k r t f k s k f k s k− < − ≤ − + + − + , then set ( ) ( )s k f k= and

( 1) ( 1) ( ( ) ( ))j

s k s k r t f k s k+ = + + − − − ; continue in this way until we obtain

some pieces of the blocks of B -jobs that appear after t with a total length

jr t− .

Step 3: Let the completion times of the A -jobs in US be 1(1) (2) ( )

A A A

nC C C≤ ≤ ≤L .

For each 11, ,j n= K , assign ( )

A

jw to the i th completed A -job .

Then a lower bound for the partial sequence PS is 1

[ ] [ ] ( ) ( )

1 1

nkX X A A

j j X j j

i j

LB w C I w C= =

= +∑ ∑ ,

where { },X A B∈ , and 1XI = if X A= and 0 otherwise.

3.5 An MBO algorithm

Page 17: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

16

In this paper we attempt to model the mating behaviour of honey-bees to develop an

optimization search algorithm to solve max1 :A A B

j j jr w C L Q≤∑ . A well-known

metaheuristic, MBO has been successfully applied to tackle many computationally

intractable problems. For example, Abbass (2001a) applies the MBO method with a

solitary colony (a single queen without a family) to rear an eusocial colony (one or

more queens with a family) to solve the propositional satisfiability problem (also

known as the 3-SAT problem). Abbass (2001b) applies the MBO algorithm with a

single queen and a single worker to deal with the 3-SAT problem. Teo and Abbass

(2001) propose an annealing function to improve one of the MBO implementations

for all the standalone SAT heuristics. Benatchba et al. (2005) use the MBO algorithm

to solve a data mining problem. Koudil et al. (2007) present an algorithm that is

inspired by natural bees to solve an integrated partitioning and scheduling problem.

For more applications of the MBO algorithm, we refer the reader to the survey paper

by Bitam et al. (2010).

It is noted that the Artificial Bee Colony (ABC) algorithm is another swarm-based

algorithm that also simulates the intelligent foraging behaviour of a honeybee swarm.

The main difference between the MBO and ABC algorithms is as follows: The

generic MBO algorithm begins with a random initialization of the queen’s genotype.

A heuristic is then applied to improve the queen’s genotype, which helps preserve the

assumption that a queen is usually a good bee, followed by the undertaking of a series

of mating-flights. In contrast, in the ABC algorithm there are three groups of bees,

namely employed bees, onlookers, and scouts. The first half of the colony consists of

the employed artificial bees and the second half includes the onlookers. For each food

source, there is only one employed bee. In other words, the number of employed bees

is equal to the number of food sources around the hive. An employed bee whose food

Page 18: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

17

source has been exhausted by the bees becomes a scout (Alatas, 2010). It is also noted

that another feature of diploid representation is not implemented in the proposed

MBO algorithm in this paper. For more details on the ABC algorithm, we refer the

reader to Bozorg Haddad et al. (2008), Karaboga and Akay (2009a), Alatas (2010),

and the survey paper by Karaboga and Akay (2009b).

The capability and applicability of the MBO and ABC algorithms, and their

advantages over the other algorithms are well documented in the literature. For

example, Karaboga and Akay (2009a) evaluate the performance of ABC in

comparison with the GA, PSO, DE and ES optimization algorithms. They conclude

that the performance of ABC is better than or similar to that of these algorithms

although it uses fewer control parameters and it is effective in treating the multimodal

and multidimensional optimization problems. Chan and Tiwari (2007) observe that

while genetic algorithms are known to have good global search ability, they lack local

search ability. On the other hand, a bee system has a low probability of being trapped

in a local optimum because it combines local and global searches, which helps

improve the local search ability of a genetic algorithm without degrading its global

search ability. In addition, Wu et al. (2013) consider a single-machine scheduling

problem with a linear deteriorating effect and unequal release times to minimize the

total tardiness. They propose a branch-and-bound algorithm and an MBO algorithm to

solve the problem. Yin et al. (2014) address a single-machine total tardiness

scheduling problem with arbitrary release dates and position-dependent learning

effects simultaneously. They use a mixed-integer programming (MIP) model and a

BAB strategy to find the optimal solution, and four MBO algorithms to derive

near-optimal solutions for the problem. Wu et al. (2013) and Yin et al. (2014) have

successfully used MBO to solve two single-machine scheduling problems with

time-dependent processing times with release times. Inspired by these observations,

Page 19: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

18

we use the MBO algorithm, which follows Abbas (2001a, 2001b), and Teo and

Abbass (2001), to find near-optimal solutions.

In nature, a bee colony is made up of one or more queens, drones (male bees),

workers, and broods. The queens are the principal reproductive individuals of the

colony as only they can lay fertilized eggs. The drones are in charge of fertilizing the

new queens. The workers have to take care of the broods. The broods are made up of

fertilized eggs and unfertilized eggs. Each queen carries out one mating-flight in her

life. During her life, the queen will mate the drones that follow it (see, e.g., Koudil et

al., 2007; Yin et al., 2012; Wu et al., 2013). These features embrace division of

labour, commutation on the individual and group levels, and cooperative behaviour.

In the solution procedure, a queen can be described as a sequence of jobs, and in

order to guarantee that the selected queen is a feasible solution, we generated the

sequence by arranging the jobs of the second agent in the earliest due date (EDD)

order, followed by arranging the jobs of the first agent in non-decreasing order of their

sums of processing time and ready time. In our pretest, we fixed the number of

spermatheca at 40. We randomly generate 20 drones (a drone is described as a

sequence of jobs) to follow the queen and mate with them in the air in our study. We

adopt three workers to improve the broods where an artificial worker represents a

heuristic. There are including the pairwise interchange, backward-shifted reinsertion,

and forward-shifted reinsertion (Della Croce et al. 1996). In each transition step, the

queen’s speed and energy are reduced according to the equations

speed(k+1) = α × speed(k)

and

energy(k+1) = energy(k) - step,

where 0 1α< < , which step denotes the amount of energy reduction after each

Page 20: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

19

transition. The description of the four parameters used in the MBO is summarized as

follows.

▶▶▶▶ The initial speed: We set two levels of initial speed of a queen at 25000 and 30000

based on our tests because if the probability of a drone mating with a queen is too low,

then the mate of a queen with a drone cannot occur.

▶▶▶▶The reduced rate of queen’s speed: We set the reduced rate of queen’s speed to

0.99 because the reduced rate of queen’s speed set at a lower value causes a lower

value of the probability of a drone mating with a queen.

▶▶▶▶The energy: We set the energy of a queen to 30. The reason is that if the new energy

of a queen is approaching to zero, then the queen returns back to her nest, and stop

adding its sperm to the queen's spermatheca.

▶▶▶▶The mutation rate: We set the shift mutation to 10% and 20%. If the value of shift

mutation is set too high, then MBO converges slowly. If it is set too low, then MBO

will easily get trapped in a local optimum.

During the flying process, a drone will mate with a queen according to the following

probability

prob(Q, D) = exp(-△ / speed ),

where ( , )prob Q D denotes the probability of adding the sperm of D to the

spermatheca of queen Q, ∆ represents the difference between the fitness of queen Q

and drone D, and speed is the speed of queen Q. A mate occurs when ( , )prob Q D is

larger than a random number q with 0 1q< < , where the drone adds its sperm to the

queen’s spermatheca. Once the best brood is better than the worst queen, then replace

the least-fit queen with the best brood and delete the best brood from the brood list. As

shown in Fig. 1, we terminate the execution of the MBO algorithm after 20

generations since the improvement of all the four MBOs becomes very slim as the

Page 21: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

20

generation approaches to 20. The steps of MBO algorithm are summarized as follows:

Step1: (i) Set the order of scheduling the jobs of the second agent in the earliest due

date (EDD) order, followed by arranging the jobs of the first agent in

non-decreasing order of their sums of processing time and ready time as

the queen.

(ii) Set three workers which are including the pairwise interchange,

backward-shifted reinsertion, and forward-shifted reinsertion

Do k=1, gsize / gsize denotes the generation of the queen

Step 2. (i) Compute the objective function of the queen and its corresponding

cumulative probability of being selected.

(ii) Generate 20 drones randomly and compute the objective function

of the queen and its corresponding cumulative probability of being

selected.

Step 3. The queen mates the drones in the flying air and add its spermatheca to

the queen’s sprmatheca.

(i) Initialize speed and energy of the queen.

Do while energy>0

(ii) Compute the probability of the queen mating a drone as

( , )prob Q D

(iii) Randomly generate a value of q, and determine if

( , )prob Q D q> , if the queen’s spermatheca<40, then add its

spermatheca to the queen’s sprmatheca.

(iv) Update energy=energy-step and speed=speed*0.99

Enddo

Step 4. Broods generation and improvements:

Do brood=1, 60

Page 22: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

21

(i) Choose a sperm from the queen’s specmatheca randomly.

(ii) Generate a brood by linear order crossover way to crossover

the queen’s genome with the selected sperm.

(iii) Choose a worker to improve the drone’s genetype.

(iv) Update the worker’s fitness.

Enddo

Step 5. New queen generation

Determine if the best brood is better than the queen, then replace the

queen by the best brood and delete the best brood from the brood list.

Enddo

3.6 The steps of the branch-and-bound method

In this subsection, we provide the working of doing the branch-and-bound

algorithm as follows. We adopt the depth-first search in the branching procedure. In

the process, we assign the jobs in a forward way and select a branch and

systematically work down the tree until we either eliminate it by virtue of the

dominance properties or the lower bounds or reach its final node, in which case this

sequence either replace the initial solution or is eliminated (see French (1982), Wu et

al. (2013), and Yin et al. (2014)). The details are summarized in the following.

Step 1: Set the final solution yielded by the MBO algorithm as an upper bound.

Step 2: Branch from (1, x, x, …, x), to (1, 2, x, …, x), …, and end at (n, n-1, …, 2, 1)

Step 3: Use Lemmas 2-7 to eliminate the dominated partial sequences. For the

non-dominated nodes, apply Lemmas 8-10 to determine whether the order of

the unscheduled jobs can be deleted.

Page 23: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

22

Step 4: Find the lower bound of total weighted completion time of the first agent for

the unfathomed partial sequences or for the completed sequences. If the lower

bound of total weighted completion time of the first agent for the unfathomed

partial sequence is larger than the initial solution, eliminate that node and all

nodes beyond it in the branch. If the value of the completed sequence is less

than the initial solution, replace it as the new solution. Otherwise, eliminate it.

Step 5: Repeat Step 2 to Step 4 until all nodes are explored.

4. Simulation study

We conducted extensive computational experiments to evaluate the performance of

the BAB and MBO algorithms. We coded all the algorithms in FORTRAN using

Compaq Visual Fortran version 6.6 and performed the experiments on a personal

computer powered by an AMD Phenom II X6 1055T CPU at 2.20GHz with 4GB

RAM operating under Windows XP. We followed Reeves (1995) to design the

experiments. We generated the processing times of the jobs from a uniform

distribution over the integers between 1 and 20, the weights of the jobs from a

uniform distribution over the integers between 1 and 50, and the release times from a

uniform distribution over the integers on (0, 20n λ ), where n is the job size and λ is

a control variable. We generated two different sets of problem instances by giving λ

the values 0.25 and 0.5. Following Fisher (1971), we generated the due dates of the

jobs from a uniform distribution over the integers between (1 / 2)T Rτ− − and

(1 / 2)T Rτ− + , where T is the sum of the normal processing times of the n jobs,

i.e., 1

n

iiT p

==∑ , τ took the values 0.25 and 0.5, while R took the values 0.50

and 0.75. This yielded a total of four combinations of ( , )Rτ values: (0.25, 0.5),

Page 24: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

23

(0.25, 0.75), (0.5, 0.5), and (0.5, 0.75). In addition, we fixed the proportion of the jobs

of the second agent at 0.5 and 0.75 in the experiments.

For the BAB algorithm, we recorded the average and maximum numbers of

nodes, and the average and maximum execution times (in seconds). For the heuristic

(i.e., the MBO) algorithms, we recorded the mean and maximum percentage errors.

The percentage error of a solution produced by a heuristic algorithm is calculated as

(V − V*)/V

*,

where V and V* are the total weighted completion time obtained by the heuristic and

by the optimal solution, respectively. We did not record the computational times of the

heuristic algorithms because they all are fast in generating solutions.

We divided the computational experiments into two parts. In the first part of the

experiments, we fixed the number of jobs at 16 and 24. As a result, we examined 32

experimental situations. We randomly generated a set of 50 instances for each

situation. We set the algorithms to switch to the next set of data if the number of nodes

exceeded 109. We denoted each instance with a number of nodes fewer than 10

9 as a

valid sample. In order to guarantee that the selected queen is a feasible solution, we

generated the sequence by arranging the jobs of the second agent in the earliest due

date (EDD) order, followed by arranging the jobs of the first agent in non-decreasing

order of their sums of processing time and ready time. For the proposed MBO

algorithm, we adopted four different parameter settings by varying the queen’s speed,

reduced rate of queen’s speed, queen’s energy, and mutation rate, resulting in four

variants of the algorithm: MBO1 (25,000, 0.99, 30, 0.1), MBO2 (25,000, 0.99, 30, 0.2),

MBO3 (30,000, 0.99, 30, 0.1), and MBO4 (30,000, 0.99, 30, 0.2). Moreover, we used

the shift mutation way for generating the new born broods and set its rate Pm at 0.1

and 0.2 based on preliminary trials. We generated a total of 60 broods. In addition, we

Page 25: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

24

also outputted the objective function of a new brood. In each MBO procedure, the

queen stops mating when her energy reduces to zero or when her spermatheca is full.

We summarize the results in Tables 1 and 2.

Concerning the performance of the BAB algorithm, Tables 1 and 2 show that the

number of nodes and CPU time increase when n becomes larger. When n = 24, 41

instances were unsolved. Specifically, the most difficult situation occurs at

( , , , )pro Rλ τ = (0.5, 0.25, 0.5, 0.5), in which up to 15 instances were unsolved.

Tables 1 and 2 also show that the BAB algorithm generates more nodes as pro, λ , or

R becomes smaller, or τ becomes bigger regardless of whether n = 16 or 24.

Regarding the impacts of the parameters, it can be observed from Table 1 that the

instances with a smaller value of pro (pro = 0.5) are more difficult than those with a

bigger one (pro = 0.75). The trend becomes significant at λ = 0.25 and 0.25τ = .

Furthermore, as shown in Table 1, when n = 16 and pro = 0.5, the instances of both

cases of ( , ) (0.25,0.25)λ τ = and ( , ) (0.5,0.25)λ τ = with a smaller value of R (say,

R = 0.5) generate more nodes than those with a larger value of R (say, R = 0.75).

As regards the performance of the MBO algorithm, the results in Table 1 show

that up to 87.5% of solutions had a mean percentage error of less than 1%; however,

less than 3% of the solutions had a mean percentage error of up to 100% for all

variants of the MBO algorithm. In order to evaluate the impacts of the parameters, we

report in Table 3 the related results from Table 1. The results in Table 3 show that

when n = 16 or 24, the performance of MBO1-4 is all good as pro, λ , or R becomes

smaller, or τ becomes bigger. The trend is clear and all the solutions have a small

mean percentage error of less than 1%. Besides, it can be observed from Fig. 2 that

when n = 16, MBO2 has a higher mean percentage error at pro = 0.5 than at pro = 0.75

and it could go up to 0.25% when pro = 0.5 and 0.25λ = . One more observation

from Fig. 3 is that when n = 16 and pro = 0.5, for the instances of the case

Page 26: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

25

( , ) (0.5,0.25)λ τ = , MBO2 has a mean percentage error of 0.05%, which increases to

0.35% as the value of R increases from 0.5 to 0.75. However, the increment, which is

less than 0.3%, is tiny. The results also show that the performance of MBO2 is not

affected by the related parameters. This suggests that the behaviour of MBO2 is very

stable and robust.

In the second part of the experiments, we further tested the performance of the

MBO algorithm in solving instances with a large number of jobs. We set the number

of jobs n at 40 and 100, and gave τ the values 0.25 and 0.5, and R the values 0.50

and 0.75. This yielded a total of four combinations of ( , )Rτ values: (0.25, 0.5),

(0.25, 0.75), (0.5, 0.5), and (0.5, 0.75). We fixed the proportion of the jobs of the

second agent at 0.5 and 0.75 in the experiments. As a result, we examined a total of 32

experimental situations. We randomly generated a set of 50 instances for each

situation.

We recorded the average and maximum relative percentages for each variant of

the MBO algorithm executed with four generations. The relative percentage with

respect to the best known solution is obtained for each instance, where the best known

solution is taken as the best one from executing each MBO variant up to 50

generations, compared with each MBOi executed with only 20 generations. We also

recorded the mean execution time and mean relative percentage deviation RPD for

each MBO variant. The RPD is given by

* *(MBO-MBO )/MBO ,

where MBO is the value of the objective function generated by an MBO variant and

MBO* is the smallest value of the objective function obtained from the four MBO

variants that were executed for up to ten generations. We report the results in Tables 4

and 5.

Page 27: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

26

As shown in Tables 4 and 5, the proportions of the RPD means of MBO1, MBO2,

MBO3, and MBO4 with less than 3% are up to 100% when n = 40, but they decline to

about 62%~75% when n = 100. These results suggest that the generation size should

be increased to improve the performance of the MBO algorithm as n increases.

Regarding the impacts of the parameters on the MBO algorithm, as shown in Tables 4

and 5, the proportions of the RPD means of the MBO variants with less than 4% occur

at a higher frequency as pro, λ , or R becomes smaller, or τ becomes bigger.

Moreover, Fig. 4 and Table 4 show that when n = 40, MBO2 has a higher RPD mean

at pro = 0.5 than at pro = 0.75 and it could go up to 0.175% when pro = 0.5 and

0.25λ = . One more observation from Fig. 5 and Table 4 is that when n = 40 and pro

= 0.5, for the instances of the case ( , ) (0.5,0.25)λ τ = , MBO2 has a RPD mean of

1.5%, which increases to 2.0% as the value of R increases from 0.5 to 0.75. However,

the increment, which is less than 1%, is small. In addition, all four variants of the

MBO algorithm maintain a stable CPU time in solving the test instances. The results

also show that MBO2 is better than the other three MBOs when the number of jobs

becomes larger. Thus, in terms of solution quality and stability, we recommend MBO2

as the preferred version of the MBO algorithm to use to generate approximate

solutions to the problem under study.

5. Conclusions

Single-machine scheduling involving multiple agents has received significant

research attention in recent years. We consider a two-agent singe-machine scheduling

problem with arbitrary job release dates. Our aim is to find an optimal schedule to

minimize the weighted sum of the completion times of the jobs of one agent with the

restriction that the maximum lateness of the jobs of the other agent cannot exceed a

Page 28: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

27

given limit. We provide a branch-and-bound solution scheme and a marriage of

honey-bees optimization algorithm to solve the problem optimally and approximately,

respectively. Computational results show that the BAB algorithm can solve problem

instances with up to 24 jobs. The results also show that the MBO algorithm performs

quite well in terms of both accuracy and stability. Future research may consider

studying the problem in the multi-machine setting or extending to the multi objective

optimization with two-agents and release dates setting.

Acknowledgements

We are grateful to the Editor, Associate Editor, and three anonymous referees for

their constructive comments on earlier versions of our paper. This paper was

supported in part by the Natural Science Foundation for Young Scholars of Jiangxi,

China (2010GQS0003); in part by the Science Foundation of Education Committee

for Young Scholars of Jiangxi, China (GJJ11143); and in part by the NSC of Taiwan

under grant numbers NSC 102-2221-E-035-070-MY3, MOST

103-2410-H-035-022-MY2, and NSC 102-2410-H-264-003.

References

1. Abbass H.A. (2001a) MBO: Marriage in honey bees optimization: A

haplometrosis polygynous swarming approach. The Congress on Evolutionary

Computation. CEC2001, Seoul, Korea, Mai 2001.

2. Abbass H.A. (2001b) A single queen single worker honey bees approach to 3-sat.

The Genetic and Evolutionary Computation Conference, GECCO2001, San

Francisco, USA Juillet, 2001.

3. Abbass H.A., Teo J. (2001) A true annealing approach to the marriage in

honey-bees optimization algorithm. The Inaugural Workshop on Artificial Life

(AL’01), 1–14, ISBN 0-7317-0508-4, Adelaide, Australia, December 2001.

Page 29: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

28

4. Alatas B. (2010) Chaotic bee colony algorithms for global numerical optimization.

Expert Systems with Applications 37(8), 5682-5687.

5. Agnetis A., De Pascale G., Pacciarelli D. (2009) A lagrangian approach to

single-machine scheduling problems with two competing agents. Journal of

Scheduling 12(4), 401- 415.

6. Agnetis A., Mirchandani P.B., Pacciarelli D., Pacifici A. (2004) Scheduling

problems with two competing agents. Operations Research 52, 229-242.

7. Agnetis A., Pacciarelli D., Pacifici A. (2007) Multi-agent single machine

scheduling. Annals of Operations Research 150, 3-15.

8. Baker K.R., Smith J.C. (2003) A multiple-criterion model for machine scheduling.

Journal of Scheduling 6, 7-16.

9. Bessonov N., Demin I., Pujo-Menjouet L., Volpert V. (2009) A multi-agent model

describing self-renewal of differentiation effects on the blood cell population.

Mathematical and Computer Modelling 49, 2116-2127.

10. Benatchb, K., Admane L., Koudil M. (2005) Using bees to solve a data-mining

problem expressed as a Max-Sat One. Artificial Intelligence and Knowledge

Engineering Applications: A Bioinspired Approach, Lecture Notes in Computer

Science 3562, 212-220.

11. Bitam S., Batouche M., Talbi E-G. (2010) A survey on bee colony algorithms.

Parallel & Distributed Processing, Workshops and PhD Forum (IPDPSW), 2010

IEEE International Symposium.

12. Bozorg Haddad O., Afshar A., Marino M.A. (2008) Honey-bee mating

optimization (HBMO) algorithm in deriving optimal operation rules for reservoirs.

Journal of Hydroinformatics 10(3), 257-264.

13. Chan F.T.S., Tiwari M.K. (2007) Swarm intelligence: Focus on ant and particle

Page 30: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

29

swarm optimization. Itech Education and Publishing, 532, ISBN

978-3-902613-09-7, Vienna, Austria.

14. Cheng T.C.E., Cheng S.R., Wu W.H. Hsu P.H., Wu C.C. (2011a) A two-agent

single-machine scheduling problem with truncated sum-of-processing-times-based

learning considerations. Computers & Industrial Engineering 60, 534-541.

15. Cheng T.C.E., Ng C.T., Yuan J.J. (2006) Multi-agent scheduling on a single

machine to minimize total weighted number of tardy jobs. Theoretical Computer

Science 362, 273-281.

16. Cheng T.C.E., Ng C.T., Yuan J.J. (2008) Multi-agent scheduling on a single

machine with max-form criteria. European Journal of Operational Research 188,

603-609.

17. Cheng T.C.E., Wu W.H., Cheng S.R., Wu C.C. (2011b) Two-agent scheduling

with position-based deteriorating jobs and learning effects. Applied Mathematics

and Computation 217, 8804-8824.

18. Della Croce F., Narayan V., Tadei R. (1996) The two-machine total completion

time flow shop problem. European Journal of Operational Research 90, 227-237.

19. Fisher M.L. (1971) A dual algorithm for the one-machine scheduling problem.

Mathematical Programming 11, 229-251.

20. French S. (1982) Sequencing and Scheduling- An Introduction to the Mathematics

of the Job-Shop, Ellis Horwood Limited, UK.

21. Karaboga D., Akay B. (2009a) A comparative study of Artificial Bee Colony

Page 31: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

30

algorithm. Applied Mathematics and Computation 214, 108-132.

22. Karaboga D., Akay B. (2009b) A survey: Algorithms simulating bee swarm

intelligence. Artificial Intelligence Review 31(1-4), 61-85.

23. Koudil M., Benatchba K., Tarabet A., Sahraoui E.B. (2007) Using artificial bees

to solve partitioning and scheduling problems in codesign. Applied Mathematics

and Computation 186, 1710-1722.

24. Lee K., Choi B.C., Leung J.Y.T., Pinedo M.L. (2009) Approximation algorithms

for multi-agent scheduling to minimize total weighted completion time.

Information Processing Letters 109, 913-917.

25. Lun Y.H.V., Lai K.H., Ng C.T., Wong C.W.Y., Cheng T.C.E. (2011) Research in

shipping and transport logistics. International Journal of Shipping and Transport

Logistics 3, 1-5.

26. Luo W., Chen L., Zhang G. (2011) Approximation schemes for two-machine flow

shop scheduling with two agents. Journal of Combinatorial Optimization, doi:

10.1007/s10878-011-9378-2.

27. Mor B., Mosheiov G. (2010) Scheduling problems with two competing agents to

minimize minmax and minsum earliness measures. European Journal of

Operational Research 206, 540-546.

28. Ng C.T., Cheng T.C.E., Yuan J.J. (2006) A note on the complexity of the problem

of two-agent scheduling on a single machine. Journal of Combinatorial

Page 32: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

31

Optimization 12, 387-394.

29. Nong Q.Q., Cheng T.C.E., Ng C.T. (2011) Two-agent scheduling to minimize the

total cost. European Journal of Operational Research 215, 39-44.

30. Purnomo H., Guizol P. (2006) Simulating forest plantation co-management with a

multi-agent system. Mathematical and Computer Modelling 44, 535–552.

31. Wan G., Vakati R.S., Leung J.Y.T., Pinedo, M. (2010) Scheduling two agents

with controllable processing times. European Journal of Operational Research

205, 528-539.

32. Wu W.-H., Cheng S.-R., Wu C.-C., Yin Y. (2012) Ant colony algorithms for

two-agent scheduling with sum-of-processing-times-based learning and

deteriorating considerations. Journal of Intelligent Manufacturing 23, 1985-1993.

33. Wu C.-C., Wu W.-H., Chen J.-C., Yin Y., Wu W.-H. (2013) A study of the

single-machine two-agent scheduling problem with release times, Applied Soft

Computing 13(2), 998-1002.

34. Wu C.-C., Cheng S.-R., Wu W.-H., Yin Y., Wu W.-H. (2013) The single-machine

total tardiness problem with unequal release times and a linear deterioration,

Applied Mathematics and Computation 219, 10401-10415.

35. Yin Y., Cheng S.-R., Cheng T.C.E., Wu W.-H., Wu C.C. (2013a) Two-agent

single-machine scheduling with release times and deadlines, International Journal

of Shipping and Transport Logistics 5(1), 75-94.

36. Yin Y., Wu W.-H., Cheng S.-R., Wu C.-C. (2012) An investigation on a

two-agent single-machine scheduling problem with unequal release dates.

Computers and Operations Research 39, 3062-3073.

37. Yin Y., Wu C.-C., Wu W.-H., Hsu C.-J., Wu W.-H. (2013b) A branch-and-bound

procedure for a single-machine earliness scheduling problem with two agents,

Page 33: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

32

Applied Soft Computing 13(2), 1042-1054.

38. Yin Y., Wu W.-H., Wu W.H., Wu C.-C. (2014) A branch-and-bound algorithm

for a single machine sequencing to minimize the total tardiness with arbitrary

release dates and position-dependent learning effects, Information Sciences 256,

91-108.

39. Zhang F., Ng C.T., Tang G., Cheng T.C.E., Lun Y.H.V. (2011) Inverse scheduling:

Applications in shipping. International Journal of Shipping and Transport

Logistics 3, 312-322.

Page 34: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

33

Figure 1 The convergence curves of MBO1-4 at n=16

0.00%

0.50%

1.00%

1.50%

2.00%

2.50%

0 5 10 15 20

Aver

age

of

erro

r per

centa

ges

g size

MBO1

MBO2

MBO3

MBO4

Page 35: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

34

0.00%

0.10%

0.20%

0.30%

0.50 0.75

Aver

age

per

centa

ge

erro

r

Pro

λ=0.25,τ=0.25

λ=0.25,τ=0.50

λ=0.50,τ=0.25

λ=0.50,τ=0.50

Figure 2. Performance of the MBO2 algorithm (n = 16)

Page 36: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

35

Figure 3. Performance of the MBO2 algorithm (n = 16, pro = 0.5)

0.00%

0.10%

0.20%

0.30%

0.40%

0.50 0.75

Aver

age

per

centa

ge

erro

r

R

λ=0.25,τ=0.25

λ=0.25,τ=0.50

λ=0.50,τ=0.25

λ=0.50,τ=0.50

Page 37: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

36

0.00%

0.50%

1.00%

1.50%

2.00%

0.50 0.75

Av

erag

e R

PD

Pro

λ=0.25,τ=0.25

λ=0.25,τ=0.50

λ=0.50,τ=0.25

λ=0.50,τ=0.50

Figure 4. Performance of the MBO2 algorithm (n = 40)

Page 38: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

37

0.00%

0.50%

1.00%

1.50%

2.00%

2.50%

0.50 0.75

Av

erag

e R

PD

R

λ=0.25,τ=0.25

λ=0.25,τ=0.50

λ=0.50,τ=0.25

λ=0.50,τ=0.50

Figure 5. Performance of the MBO2 algorithm (n = 40, pro = 0.5)

Page 39: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

38

Table 1. Performance of the BAB and MBO algorithms

n pro λ τ R

BAB algorithm MBO1 MBO2 MBO3 MBO4

valid

sample size

CPU time number of nodes error percentages

mean max mean max mean max mean max mean max mean max

16 0.50 0.25 0.25 0.50 50 2.75 28.02 164559 1695887 0.12 3.31 0.27 4.21 0.27 5.95 0.25 3.36

0.75 50 0.39 2.03 18088 108598 0.36 7.39 0.25 7.03 0.31 2.79 0.24 4.57

0.50 0.50 50 2.82 21.33 162417 1365252 0.41 7.62 0.04 1.08 0.35 9.38 0.21 4.03

0.75 50 2.62 75.16 163122 4952591 0.36 11.92 0.35 11.92 0.35 11.92 0.43 11.92

0.50 0.25 0.50 50 1.38 21.30 73526 1006881 0.36 6.42 0.24 9.41 0.20 3.72 0.19 3.87

0.75 50 0.42 7.77 25790 574835 0.32 6.69 0.31 5.06 0.14 2.07 0.25 4.78

0.50 0.50 50 0.33 3.02 18271 186757 0.13 4.24 0.12 4.24 0.30 8.68 0.30 8.68

0.75 50 0.30 2.78 14995 152159 0.16 3.56 0.14 2.99 0.22 3.10 0.19 4.01

0.75 0.25 0.25 0.50 50 0.15 1.27 4783 62326 0.10 2.93 0.08 2.93 0.09 2.91 0.14 3.31

0.75 50 0.11 0.78 3777 29395 0.01 0.22 0.08 3.78 0.00 0.11 0.01 0.22

0.50 0.50 50 0.22 1.33 8185 58639 0.09 2.05 0.04 0.74 0.05 2.50 0.12 3.05

0.75 50 0.16 1.72 5826 83537 0.02 0.44 0.06 2.42 0.03 1.01 0.01 0.44

0.50 0.25 0.50 50 0.06 0.55 1704 12818 0.04 0.82 0.02 0.82 0.06 1.79 0.04 2.08

0.75 50 0.05 0.70 1648 23594 0.05 1.81 0.03 1.40 0.03 1.19 0.01 0.50

0.50 0.50 50 0.03 0.20 958 8350 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00

0.75 50 0.03 0.14 757 5112 0.00 0.00 0.00 0.19 0.04 0.79 0.01 0.19

24 0.50 0.25 0.25 0.50 41 3568.13 33133.59 103845273 910144384 1.19 6.95 1.22 4.73 1.44 10.26 1.64 11.56

0.75 47 1177.39 32557.06 32536692 996496175 0.75 5.79 0.88 6.23 0.80 7.51 0.69 9.49

0.50 0.50 35 4492.30 37221.20 120352008 975889523 2.00 9.81 0.71 7.33 1.16 7.91 1.12 7.09

0.75 43 5909.74 33716.19 144395324 872540202 1.13 8.83 1.33 8.34 1.27 18.81 1.34 8.58

0.50 0.25 0.50 46 2839.64 25054.73 78683997 639672508 0.92 5.24 0.90 3.99 0.73 3.99 0.70 3.41

0.75 50 849.59 12958.86 17471380 214385770 0.26 3.16 0.33 3.31 0.26 2.68 0.44 6.85

0.50 0.50 48 1457.37 13020.50 37381631 354457210 1.08 10.74 0.66 4.74 0.64 6.23 1.01 6.25

0.75 49 1215.99 20602.17 30818377 523026751 0.69 8.94 0.57 4.34 0.60 4.17 0.76 4.08

0.75 0.25 0.25 0.50 50 232.49 3599.11 3840030 74442585 0.32 3.03 0.27 2.25 0.36 3.38 0.28 1.71

0.75 50 232.64 4702.81 4147056 95498160 0.25 2.40 0.24 2.88 0.35 5.51 0.24 1.34

0.50 0.50 50 993.20 11861.45 16067526 184803768 0.37 4.67 0.36 3.29 0.37 5.51 0.39 4.67

0.75 50 318.86 3535.48 4941388 52287493 0.22 1.94 0.43 3.98 0.21 1.50 0.35 3.36

0.50 0.25 0.50 50 38.12 480.88 493289 4935123 0.11 0.95 0.15 1.18 0.12 0.88 0.12 1.46

0.75 50 6.96 65.20 93628 864023 0.09 1.72 0.07 2.49 0.18 4.50 0.11 1.85

0.50 0.50 50 34.16 700.63 500955 10141835 0.19 2.83 0.16 1.79 0.09 0.96 0.15 1.65

0.75 50 26.17 797.75 362349 11396709 0.12 1.98 0.08 0.89 0.06 1.12 0.21 1.97

Average 0.38 0.32 0.35 0.37

percentage error <3 100.00% 100.00% 100.00% 100.00%

percentage error < 1 87.50% 93.75% 90.63% 87.50%

Page 40: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

39

Table 2. Performance of the BAB algorithm (n = 16, 24)

n parameter number of nodes

valid sample size mean max

16

Pro 0.50 400 80,096 4,952,591

0.75 400 3,455 83,537

λ 0.25 400 66,345 4,952,591

0.50 400 17,206 1,006,881

τ 0.25 400 36,734 1,695,887

0.50 400 46,816 4,952,591

R 0.50 400 54,300 1,695,887

0.75 400 29,250 4,952,591

24

Pro 0.50 359 66,868,110 996,496,175

0.75 400 3,805,778 184,803,768

λ 0.25 366 48,245,902 996,496,175

0.50 393 20,025,350 639,672,508

τ 0.25 384 27,887,015 996,496,175

0.50 375 39,518,264 975,889,523

R 0.50 370 40,348,240 975,889,523

0.75 389 27,247,080 996,496,175

Page 41: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

40

Table 3. Performance of the MBO algorithms (n = 16, 24)

n parameter valid sample size

MBO1 MBO2 MBO3 MBO4

percentage error

mean max mean max mean max mean max

16

pro 0.50 400 0.28 11.92 0.21 11.92 0.27 11.92 0.26 11.92

0.75 400 0.04 2.93 0.04 3.78 0.04 2.91 0.04 3.31

λ 0.25 400 0.18 11.92 0.15 11.92 0.18 11.92 0.18 11.92

0.50 400 0.13 6.69 0.11 9.41 0.12 8.68 0.12 8.68

τ 0.25 400 0.17 7.39 0.16 9.41 0.14 5.95 0.14 4.78

0.50 400 0.15 11.92 0.09 11.92 0.17 11.92 0.16 11.92

R 0.50 400 0.16 7.62 0.10 9.41 0.17 9.38 0.16 8.68

0.75 400 0.16 11.92 0.15 11.92 0.14 11.92 0.14 11.92

24

pro 0.50 359 0.96 10.74 0.81 8.34 0.83 18.81 0.94 11.56

0.75 400 0.21 4.67 0.22 3.98 0.22 5.51 0.23 4.67

λ 0.25 366 0.71 9.81 0.65 8.34 0.70 18.81 0.71 11.56

0.50 393 0.42 10.74 0.36 4.74 0.33 6.23 0.43 6.85

τ 0.25 384 0.46 6.95 0.48 6.23 0.51 10.26 0.50 11.56

0.50 375 0.66 10.74 0.52 8.34 0.51 18.81 0.63 8.58

R 0.50 370 0.71 10.74 0.53 7.33 0.57 10.26 0.63 11.56

0.75 389 0.42 8.94 0.47 8.34 0.45 18.81 0.50 9.49

Page 42: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

41

Table 4. RPD of the MBO algorithms (n = 40, 100)

n pro λ τ R MBO1 MBO2 MBO3 MBO4

CPU time RPD CPU time RPD CPU time RPD CPU time RPD

mean max mean max mean max mean max mean max mean max mean max mean max

40 0.50 0.25 0.25 0.50 1.13 1.47 1.47 7.37 1.12 1.42 1.52 12.10 1.13 1.53 1.18 6.74 1.12 1.41 1.27 7.45

0.75 1.15 1.69 1.55 12.84 1.12 1.31 2.12 21.04 1.14 1.31 1.72 13.85 1.16 1.52 1.52 7.60

0.50 0.50 1.10 1.61 1.91 7.09 1.09 1.94 1.50 10.94 1.12 1.91 1.39 6.86 1.11 1.81 1.97 8.77

0.75 1.10 1.34 1.86 8.43 1.05 1.25 2.09 7.91 1.09 1.39 1.75 14.58 1.08 1.30 2.35 8.20

0.50 0.25 0.50 1.13 1.36 1.48 9.84 1.11 1.27 1.11 10.10 1.09 1.28 1.06 6.31 1.10 1.33 0.97 3.54

0.75 1.13 1.67 0.91 7.33 1.13 1.41 0.79 7.08 1.15 1.42 1.10 11.51 1.13 1.42 1.34 12.54

0.50 0.50 1.08 1.42 1.39 10.17 1.04 1.23 1.23 4.93 1.09 1.48 1.22 8.63 1.08 1.41 1.31 6.42

0.75 1.09 1.41 1.58 7.48 1.07 1.47 2.07 13.55 1.11 1.39 1.59 5.23 1.08 1.47 2.24 16.72

0.75 0.25 0.25 0.50 1.04 1.28 0.85 9.82 1.01 1.23 0.88 5.64 1.04 1.38 1.19 7.44 1.04 1.27 1.03 7.00

0.75 1.06 1.27 0.88 7.42 1.04 1.25 0.94 7.67 1.05 1.28 0.73 5.87 1.05 1.34 0.74 3.51

0.50 0.50 1.05 1.34 1.18 4.17 1.03 1.38 1.11 4.79 1.06 1.48 0.99 5.52 1.04 1.25 1.29 6.99

0.75 1.03 1.28 0.74 5.82 1.05 1.47 0.89 4.92 1.03 1.25 1.10 5.08 1.06 1.36 0.80 4.22

0.50 0.25 0.50 1.11 1.88 0.42 2.87 1.10 2.20 0.34 2.45 1.16 2.02 0.35 2.67 1.15 2.34 0.33 2.60

0.75 1.05 1.34 0.33 2.06 1.05 1.53 0.17 1.13 1.09 1.42 0.31 2.60 1.05 1.33 0.29 2.08

0.50 0.50 1.14 1.61 0.49 5.82 1.12 1.89 0.36 3.70 1.15 1.67 0.48 2.32 1.14 2.20 0.38 2.37

0.75 1.13 1.53 0.36 2.14 1.11 1.52 0.46 2.60 1.11 2.02 0.37 2.03 1.07 1.34 0.36 1.76

Average 1.09 1.09 1.08 1.10 1.10 1.03 1.09 1.14

percentage error <3 100.00% 100.00% 100.00% 100.00%

100 0.50 0.25 0.25 0.50 14.41 21.45 2.25 12.93 14.22 22.11 1.79 7.70 14.03 29.61 2.78 20.44 13.62 18.06 2.29 17.05

0.75 14.40 20.45 2.55 24.44 14.46 25.86 3.45 29.77 14.89 25.50 2.48 14.24 15.16 21.64 1.51 10.47

0.50 0.50 13.48 22.67 6.82 44.22 13.38 21.34 6.03 45.55 13.40 21.72 4.58 30.88 13.48 20.48 3.31 16.33

0.75 13.72 20.53 3.55 15.46 13.78 21.72 5.18 34.82 14.24 20.81 4.68 16.03 13.87 20.44 4.82 28.58

0.50 0.25 0.50 13.54 22.47 2.42 11.37 13.72 22.06 3.16 20.31 14.14 22.09 3.32 15.96 14.17 29.20 2.25 11.92

0.75 14.09 26.53 1.65 13.81 13.39 18.66 2.31 19.79 14.97 26.25 1.41 11.22 14.41 26.02 1.44 16.49

0.50 0.50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

0.75 -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

0.75 0.25 0.25 0.50 12.60 15.83 1.62 13.89 12.95 16.89 1.10 3.71 12.93 20.61 1.22 6.66 12.58 15.98 1.25 9.65

0.75 13.24 20.20 1.73 10.74 13.10 18.36 1.55 6.55 12.87 19.52 1.55 7.60 13.05 19.83 1.05 3.20

0.50 0.50 12.81 17.36 2.18 14.02 12.91 19.23 1.80 10.51 13.17 21.03 1.98 10.82 12.68 16.48 1.95 13.64

0.75 12.68 16.88 1.87 12.91 12.82 16.78 2.34 28.87 12.52 15.19 1.74 11.96 12.84 19.27 1.46 8.24

0.50 0.25 0.50 12.49 16.70 0.58 5.13 12.83 19.63 0.65 8.37 12.91 20.39 0.54 3.22 12.30 17.52 0.62 5.07

0.75 12.44 15.58 0.66 4.03 12.49 19.30 0.52 3.16 12.57 19.98 0.55 6.07 12.68 18.66 0.46 3.66

0.50 0.50 13.39 21.45 0.66 3.27 13.22 17.31 0.64 2.47 13.10 19.42 0.66 3.24 12.71 18.77 0.71 2.29

0.75 12.56 23.84 1.02 14.74 12.16 14.27 0.78 2.64 12.68 18.78 0.90 5.23 12.43 18.66 1.01 5.56

Average 13.27 2.11 13.25 2.23 13.46 2.03 13.28 1.73 percentage error <3 75.00% 62.50% 68.75% 75.00%

Page 43: A honey-bees optimization algorithm for a two-agent single-machine scheduling problem with ready times

42

Table 5. Performance of the MBO algorithms (n = 40, 100)

n parameter valid sample size

MBO1 MBO2 MBO3 MBO4

RPD

mean max mean max mean max mean max

40

pro 0.50 400 1.52 12.84 1.56 21.04 1.37 14.58 1.62 16.72

0.75 400 0.66 9.82 0.64 7.67 0.69 7.44 0.65 7.00

λ 0.25 400 1.31 12.84 1.38 21.04 1.25 14.58 1.37 8.77

0.50 400 0.87 10.17 0.82 13.55 0.81 11.51 0.90 16.72

τ 0.25 400 0.99 12.84 0.98 21.04 0.95 13.85 0.94 12.54

0.50 400 1.19 10.17 1.22 13.55 1.11 14.58 1.34 16.72

R 0.50 400 1.15 10.17 1.01 12.10 0.98 8.63 1.07 8.77

0.75 400 1.03 12.84 1.19 21.04 1.08 14.58 1.21 16.72

100

pro 0.50 300 3.21 44.22 3.65 45.55 3.21 30.88 2.61 28.58

0.75 400 1.29 14.74 1.17 28.87 1.14 11.96 1.07 13.64

λ 0.25 400 2.82 44.22 2.90 45.55 2.63 30.88 2.21 28.58

0.50 300 1.16 14.74 1.34 20.31 1.23 15.96 1.08 16.49

τ 0.25 400 1.68 24.44 1.82 29.77 1.73 20.44 1.36 17.05

0.50 300 2.68 44.22 2.79 45.55 2.42 30.88 2.21 28.58

R 0.50 350 2.36 44.22 2.17 45.55 2.15 30.88 1.77 17.05

0.75 350 1.86 24.44 2.30 34.82 1.90 16.03 1.68 28.58