Two-Agent-Based Single-Machine Scheduling With Switchover Time To Minimize Total Weighted Completion Time and Makespan Objectives
Two-Agent-Based Single-Machine Scheduling With Switchover Time To Minimize Total Weighted Completion Time and Makespan Objectives
DOI 10.1007/s10479-017-2515-2
RAOTA-2016
1 Introduction
A scheduling model with competing agents arises in several applications. The problem has
applications on integrated multimedia services, on telecommunication services, on railroad
tracks, on the manufacturing industry, and on maintenance planning.
B Yuvraj Gajpal
[email protected]
1 Department of Computer Science and Engineering, National Institute of Technology, Agartala,
Agartala, Tripura 799046, India
2 Asper School of Business, University of Manitoba, Winnipeg, MB R3T5V4, Canada
123
Ann Oper Res
123
Ann Oper Res
describes the particle swarm optimization. Numerical experiments are presented in Sect. 7.
Our conclusions are offered in Sect. 8.
2 Literature review
The problem of two competing agents was introduced by Baker and Smith (2003) and by
Agnetis et al. (2004). The two-agents’ problem was extended to multi-agent problem by
Agnetis et al. (2007). These authors considered a different objective function for each agent.
The initial studies provided a polynomial time algorithm and an NP-hardness proof for
different problems. A number of papers published after these first efforts went on to consider
different aspects of the scheduling problem, such as
• a release-date-related objective function (Leung et al. 2010; Yin et al. 2012b, 2013; Wang
et al. 2017);
• a batch scheduling problem (Mor and Mosheiov 2011; Li and Yuan 2012; Pei et al. 2017;
Yin et al. 2016a, b, c);
• an earliness- and tardiness-related objective function (Mor and Mosheiov 2010; Gerstl
and Mosheiov 2013);
• a varying process-time parameter (Liu et al. 2010a, b; Wan et al. 2010; Gawiejnowicz
et al. 2011; Yin et al. 2012a; Dover and Shabtay 2016);
• a learning effect on process time of jobs (Cheng et al. 2011; Li and Hsu 2012);
• a flow shop and parallel machine problem (Wan et al. 2010; Leung et al. 2010; Lee et al.
2011; Mor and Mosheiov 2014; Elvikis and T’kindt 2014),
• a due date determination problem (Yin et al. 2016a, b, c; Wang et al. 2015, 2016).
We study the problem with both total weighted completion time and makespan objectives,
a similar situation that has been previously studied by Agnetis et al. (2009), Gajpal and Sahu
(2014a) and Gajpal et al. (2014b), but without the inclusion of a switchover time. Agnetis
et al. (2009) developed a branch-and-bound-based Lagrangian approach to solve the problem,
and Gajpal and Sahu (2014a) proposed pseudo-polynomial algorithm, while Gajpal et al.
(2014b) proposed a heuristic solution. To our knowledge, there is no paper that considers
the switchover time between two-agents. In this paper, we propose an optimal algorithm, a
simple heuristic algorithm and a particle swarm optimization-based algorithm to solve the
problem.
A particle swarm optimization (PSO) algorithm is a biologically inspired computational
search and represents one of the latest evolutionary optimization techniques. The PSO is
based on the social interaction and communication of the particles that make up a swarm.
This algorithm was developed by Kennedy and Eberhart (1995) based on the social behaviors
of birds flocking and fish schooling. It has been successfully applied to solve permutation
flow shop-sequencing problems (Tasgetiren et al. 2004; Liao et al. 2007; Tasgetiren et al.
2007) and flexible job shop scheduling problems with sequence dependent setup time of jobs
(Grobler et al. 2010). Computational results show that the proposed PSO algorithm offers an
efficient and effective method to solve the problem considered in this paper.
3 Problem description
This paper considers two-agents when the objective is to minimize the total weighted com-
pletion time (TWCT) of one agent subject to the upper bound Q on the makespan of the
123
Ann Oper Res
second agent. Each agent has a set of jobs, J A and J B , to be processed by a single machine.
Agent A has n A jobs, and agent B has n B jobs. Let p Aj and p Bj denote the processing of
job J jA and J jB respectively. Let the total process time of all the jobs for agents A and B be
nA +n B
n A
denoted by PA = piA and PB = piB . We define w Aj as the weight and s jA as
n A =n A +1
i=1
the switchover time associated with job J jA . Let δiA = wiA piA denote the density of job
i ∈ J A . Let σ indicate a feasible schedule of the n = n A + n B jobs. For a given job sequence
σ , let the completion time of job J j be C j . Let σk represent the job that is scheduled to be
processed at position k in sequence σ . We must also define the binary variable to include the
switchover time on the calculation for total completion time. For a given schedule σ ,
Let
1 If job σk belongs to set A and job σk+1 belongs to set B
yk,k+1 = , and
0 other wise
Let
1 If job σk belongs to set B and job σk+1 belongs to set A
z k,k+1 =
0 other wise
k
Then, the completion time of job σk in schedule σ can be calculated as Cσk = pi +
i=1
k
si (yi−1,i + z i−1,i ). The individual objectives of agents A and B are denoted by f A (σ ) and
i=1
f B (σ ), respectively. The objective of agent A is to minimize the total weighted completion
time f A (σ ) = wiA CiA (σ ), while the objective function of agent B is to minimize the
i ∈ JA
maximum completion time f B (σ ) = Cmax
B = max {CiB (σ )}. In this paper, we minimize
j∈J B
the total weighted completion time f A (σ )
of agent A subject to an upper bound Q on the
maximum completion time f B (σ ) of agent B. The problem in our study is an NP-hard
problem because when we set the switchover time to zero, the problem reduces to a simple
two-agent-based scheduling problem, which has been proven to be NP-hard by Agnetis et al.
(2004). The problem in our study is an NP-hard problem in the ordinary sense, because a
pseudo polynomial algorithm can be developed for this problem.
4 Problem properties
We first highlight some properties of the problem that are used to construct the solution. These
properties are also used to develop an optimal algorithm. We define a few more notations
before describing the properties.
Let:
A represent the set of jobs for agent A processed before jobs of agent B
J pr e
A represent the set of jobs for agent A processed after jobs of agent B
Jsucc
JLA ⊆ J pr
A represent the last scheduled job processed before set J
e B
J F ⊆ Jsucc
A A represent the first scheduled job processed after set J
B
A /J A represent J A /J A ∈ J A except J A
J pr e L pr e L pr e L
A /J A represent J A /J A ∈ J A except J A
Jsucc F succ F succ F
123
Ann Oper Res
Schedule S’
Under the original schedule S, job J jB starts its processing at time t +slA and is followed by
Ji ; whereas, under new schedule S’, job JiA starts its processing at time t and is followed by
A
J jB . All other jobs remain in their original position. The completion time of the job processed
before jobs JiA and J jB will remain the same in schedules S and S’. The completion time
of the job processed after jobs J jB and JiA will reduce by (slA + siA ) in schedule S’, where
slA and siA represent the switchover times associated with jobs JlA and JiA , respectively.
The last job of agent B in schedule S’ will be either job JkB or some other job for which
completion time will be reduced by (slA + siA ). Schedule S is feasible with respect to the
makespan of agent B, and schedule S’ will be feasible with respect to the upper bound for
the makespan of agent B. The difference in the values of the total weighted completion time
for agent A under schedules S and S’ is due to the jobs processed after job JlA . Under S, the
weighted completion time of job JiA is (t + slA + p Bj + siA + piA )wiA ; whereas, under S’,
it is (t + piA )wiA . The completion time of other jobs of agent A processed after job JlA will
reduce by (slA + siA ) in schedule S’.
It is clear that the weighted completion time for jobs of agent A processed after job JlA
under schedule S’ is strictly less than schedule S. This result contradicts the optimality of S
and verifies the proof for scenario 1.
Scenario 2: When job J jB is scheduled after job JlB
This proof is similar to scenario 1.
As a consequence of Lemma 1, the jobs of agent B can be treated as a single job. In the
remainder of this paper, we assume that job B consists of a single job J B with process time
of PB . Lemma 1 also suggests that the structure of an optimal solution to the problem is
denoted as follows:
{J pr
A
e /J L }{J L } { J B } {J F }{ Jsucc /J F }
A A A A A
123
Ann Oper Res
Proof This lemma can be easily proved using a simple adjacent pairwise interchange scheme.
A and J A is given, then the optimal solution can be
Lemma 3 If the optimal partition J pr e succ
found by arranging J prA and J A in a non-increasing order of density δ A and by identifying
e succ i
A as a J A and each job from set J A as a job J A .
each job from set J pr e L succ F
Proof This lemma assumes that the optimal partition is already given. We know from
Lemma 2 that the optimal solution is denoted by {J pr A /J A }{J A }{J }{J A }{J A /J A }, which
e L L B F succ F
implies that the set J pr e is partitioned in two parts, {J pr
A A /J A } and {J A }. Set {J A } consists
e L L L
of only one job. Hence, identifying each job from set J pr A as a J A will consider all possible
e L
partitions of J prA into the partition of sets {J A /J A } and {J A }. From Lemma 2, we know
e pr e L L
that {J pr e /JL } is ordered in a non-increasing order of density. The property of set {Jsucc
A A A } is
the same as a property of set J pr A . Therefore, if sets J A and J A for optimal solution are
e pr e succ
given, then the optimal solution can be found by arranging J pr A and J A in a non-increasing
e succ
order of density δiA and by identifying each job from set J pr A as a J A and each from set J A
e L succ
as a job J FA .
The problem considered in this paper assumes that the switchover time is dependent on
the jobs of agent A only. A more generalized form of this problem can be the considered as
a problem, where a switchover time is dependent on a particular combination of jobs from
agent A and agent B. However, the genelized problem can be reduced to our problem (due
to Proeprty 1) by considering the switchover time for a given job of agent A as a minimium
switchover time from the combination of jobs from agent B.
In this section, we provide the solution for the current problem. The first sub-section describes
the optimal solution, while the second sub-section describes the heuristic solution.
This section provides an optimal solution for the problem using dynamic programming.
We use the optimal solution property in the form of {J pr A /J A }{J A }{J B }{J A }{J A /J A }
e L L F succ L
to obtain the optimal solution. The optimal solution property can be further represented as
{J pr
A /J A }{J L B F }{J A /J A } where J L B F = {J A U J B U J A }. For the given jobs J A and
e L succ L L F L
A
J F , the problem reduces to the two-agent scheduling problem without switchover time.
Let us call the new problem a reduced problem. If an optimal solution can be obtained for
the reduced problem, then the optimal solution of the original problem can be obtained
by exploring all possible reduced problems arising from the original problem. There can
be n1 × (n1 − 1) reduced problems for all combinations of jobs from agent A. Thus, the
maximum of n1×(n1−1) reduced problems needs to be solved to obtain the optimal solution
of the problem under consideration. The optimal solution for a reduced problem is described
in next subsection.
123
Ann Oper Res
We define the reduced problem as a problem where jobs JLA and J FA are processed
together with job J B . The optimal solution of reduced problem will follow the property
{J pr
A /J A }{J L B F }{J A /J A }.
e L succ L
Let job sets J N ew A represent the set of jobs from agent A which excludes jobs JLA and
J FA . Let Pmax
N ew A represent the maximum process time of jobs from set P N ew A . Let P L B F be
max
the total process time of jobs including switch over time from set J L B F . Then the Lemma 4
will hold for the reduced problem.
Proof This lemma can be easily proved using the job exchange scheme.
Lemma 4 suggests that if an optimal schedule for the sub problem (i.e., the sub problem
of a reduced problem) subjected to a constraint regarding the starting time of job J L B F can
be found, then the optimal solution of the reduced problem can be found by solving the sub
N ew A times. Let T F T
problem Pmax Reduced represent the objective function of reduced problem,
then we define the sub problem as follows.
Z = min{T F TReduced }
σ
st. B (σ ) ≤ Q
f max
STL B F = st L B F
The recursive formula provided by Agnetis et al. (2009) can be used to solve this sub problem.
The optimal solution of the reduced problem can, then, be obtained by solving the Pmax N ew A
PSO is a swarm intelligence algorithm in which focus is placed on the swarm (e.g., a flock
of birds) instead of simply looking for a single creature. Birds usually move in a group in
search of their food. When a bird receives information about the location of the sought-after
123
Ann Oper Res
food, it communicates this information to the other members of the flock. Using this method,
birds try to find their food. This behaviour of birds is used in PSO to solve combinatorial
optimization problems.
One of the most challenging issues in designing a PSO algorithm comes from the repre-
sentation of its solution for a particular problem. In order to construct a direct relationship
between the problem domain and the PSO particles, we present n A number of dimensions
for n A number of jobs of agent A ( j = 1, ... ,n A ). Each of the dimensions represents a job
for agent A. In addition, the particle X i0 = [xi10 , ..., x 0 ] corresponds to the position values
in
A
for n number of jobs for agent A. Each particle has a continuous set of position values. The
particle itself does not present a sequence, but the sequence can be obtained using the position
value of the particle. The complete PSO algorithm is summarized below and is followed by
detailed explanation.
xi0j = xmin + (xmax − xmin )∗ U (0, 1) , where xmin = −4, xmax = 4.0.
• Generate initial velocities of the particles randomly {Vi0 , i = 1, ...m}, where Vi0 =
[vi1
0 , ...., v 0 ]. The velocity value of the ith particle on the jth dimension is generated
im
below:
vi0j = vmin + (vmax − vmin )∗ U (0, 1) , where vmin = −4.0, vmax = 4.0.
• Apply the sequencing rule to find the sequence Si0 = [si1 0 , ....s 0 ] of the particle X 0
im i
for i = 1 . . . m.
• Calculate the objective function value of particle i in the swarm, f i0 for i = 1 . . . m.
• For each particle i in the swarm set P Bi0 = X i0 where P Bi0 = [ pbi1 0 =
pb
xi1 , ..., pbim = xim ] along its best fitness value, f i = f i for i = 1 . . . m. The
0 0 0 0
123
Ann Oper Res
• Apply the MPV or PV rule to find the sequence Sik = [si1,...., k k ] for i =
s1n A
1, . . . , m.
Step 2.6: Find and update the personal best.
• Each particle is evaluated using its sequence to see if the personal best is
pb
improved or not. If f ik < f i for i = 1 . . . m, then the personal best is updated
pb
as P Bik = X ik and f i = f ik for i = 1 . . . m.
Step 2.7: Find and update the global best.
pb
• Find the minimum value of the personal best f ik = min{ f i } for i = 1 . . . m.
gb
If f ik < f i , then the global best is updated as G B k = X ik and f gb = f ik .
Step 3: Stopping criterion
• If the number of iterations exceeds the maximum number of iterations, then
stop; otherwise, go back to step 3.
The description of the above algorithm is self-explanatory. We have introduced two new
features to the proposed PSO algorithm on the sequencing rule and on the parameter updating
rule. These new rules are explained in the next sub-sections.
One of the challenging tasks in PSO implementation is to convert the position value of a
particle into the solution of the problem. The existing PSO literature describes the rule based
on minimum-position value to generate the actual solution of the problem from the position
value of each particle. Our problem falls under the partition problem due to Lemma 1; thus,
we use a simple rule to construct the solution. If the position value is positive, then the job
is placed before J B , otherwise after J B . We start the assignment from the highest density
job J1A until the lowest density job Jn1 A , since we assume that the jobs are indexed in a non-
decreasing order of density. The procedure avoids the extra computation time of arranging
the jobs from set J pr A A A A
ec and Jsucc as per the WSPT rule. Once the sets J pr ec and Jsucc are
obtained using the position value of each job, we try to move some of the jobs from set Jsucc A
A
to set ,J pr ec provided such a move is possible.
Finally, we use the optimal solution property in the form of {J pr A /J A }{J A }{J B }{J A }
e L L F
{Jsucc /JL }as described in Lemma 3 to improve the solution. Under this scheme, each job
A A
from set J pr A is relocated to the last position and each of the jobs from J A
e succ is relocated
to the first position. Thus, we evaluate the total of J prA × J A number of solutions under
e succ
this improvement scheme. While using this scheme, the main concern is the evaluation of
the objective function under each evaluated solution. If we know the objective function of
sequence {J pr A }{J B }{J A }, then polynomial time evaluation methods can be designed to
e succ
obtain the objective function of new solutions. Let J 1 represent the last job from set J pr A
e
A . Let ct1[i] represent the completion time of ith
and J 2 represent the first job from set Jsucc
job from set J pr A and ct2[ j] represent the completion time of jth job from set J A . Let
e succ
W 1[i] represent the total weights of jobs starting from ith job to the last job from set J pr A ,
e
and W 2[ j] represent the total weights of jobs starting from the first position from set Jsucc A
till jth job. If ith job is made as a last job JLA and jth job is made as a first job JLA , then the
following expressions can be used to calculate the increase in objective functions of different
components.
123
Ann Oper Res
(J FA ) = [ct2(J FA ) + ( s JAA − s JA1 ) + ( s JAA − s JA2 ) + p JAA − p JA2 ] × w JAA ; (4)
L F F F
Finally, the increase in objective function value can be calculated as a sum of above terms.
In each iteration, all parameters associated with each particle are updated. We update velocity
value, position value, inertia personal best and global best.
Updating velocity, position and inertia
Usually in the literature, the velocity of each particle is updated using the formula given
below:
vikj = w k−1 vik−1 k−1 k−1 k−1 k−1
j + c1 r1 ( pbi j − x i j ) + c2 r2 (gbi j − x i j )
However, our problem’s specific requirement forces us to keep the position value positive
for scheduling jobs before J B . Thus, we modify the above formulation to make it specific
for our problem. We first reduce the velocity as vikj = w k−1 vik−1 j , then the value of velocity
is changed by the global sequence and the personal best sequence. If the job is sequenced
before J B in the personal best sequence, then the velocity of the job is increased by quantity
c1 r1 ; otherwise, it is decreased by c1 r1 . Similarly, if the job is sequenced before J B in the
global best sequence, then the velocity of the job is increased by quantity c2 r2 ; otherwise, it
is decreased by c2 r2 . The position of a particle is updated using the following formula:
xikj = xik−1
j + vikj
Finally, we update the inertia of the particle using the following formula:
w k = w k−1 ∗ α
Inertia can be defined as the resistance of any physical object to any change in its state
of motion, including changes to its speed and direction. The initial inertia weight is set to
w0 = 0.9. The decrement factor α is taken as 0.975.
This section presents numerical experiments to evaluate the performance of different algo-
rithms to see the effect of upper bound Q on an objective function of the first agent and to see
the effect of upper bound Q on performance of different algorithms. The proposed particle
swarm optimization algorithm is coded in C language and run on an Intel Pentium IV 2.6
GHz PC with 16 GB memory on Unix OS. We use the following notations for reporting
results:
OPT: Optimal solution for the problem
PSO: Particle swarm optimization-based algorithm
HS: Heuristic algorithm
ABS: Absolute solution value
123
Ann Oper Res
In this section, we present the experimental results to compare the effectiveness of PSO. The
results of PSO are compared with the results of the heuristic algorithm and with those of the
optimal algorithm. We use absolute percentage deviation to compare the performance of the
proposed heuristic and PSO. The absolute percentage deviation is calculated as:
AB S(ALG) − AB S(O P T )
AP D = ∗ 100
AB S(ALG)
Here, ALG represents either the heuristic algorithm or the PSO algorithm. Table 1 shows the
experimental results for small switchover time. We report the average value of 30 problem
123
Ann Oper Res
instances for each problem group. We report the average absolute value of the solution, the
average CPU time taken by the algorithm and the average APD over optimal value.
The results reported in Table 1 show that the overall average total weighted completion
time of the optimal algorithm is 312068, while it is 314990 for the heuristic algorithm and
312778 for the PSO algorithm. The results further indicate that the proposed heuristic is 1.82
% away from the optimal solution, and the consumed CPU time is less than one second. In case
of the proposed PSO algorithm, the average of relative percentage deviation is 0.58 %, but the
consumed CPU time is, on average, 1.73 seconds. These results indicate that PSO can achieve
the near optimal solution within seconds for small switchover time problem instances. The
CPU time for the optimal algorithm increases exponentially, while PSO produces solution
in seconds. In order to solve the 150 jobs problem, the optimal algorithm consumed 1936
seconds of CPU time, while the PSO consumed only 7 seconds of CPU time. The small CPU
time of PSO compared to optimal algorithm justifies the use of PSO to solve the problem.
The computational results for the large switchover time are presented in Table 2. The
results of large switchover time are similar to the results of small switchover time. The
results reported in Table 2 show that the proposed heuristic is away from the optimal solution
by 5.98%, but it consumed less than one second of CPU time. In the case of the proposed
PSO algorithm, the overall average of the relative percentage deviation is just 1.73%. The
APD for the largest problem instances with 150 jobs is 0.28. These results indicate that
PSO is able to achieve a near optimal solution for large-switch over time as well. In the
results reported in Tables 1 and 2, it seems that the performance of a heuristic/metaheuristic
deteriorates when switchover time is high. However, it should be noted that the value of the
objective function will be high for the same solution of a large switch over time problem
instance compared to the objective function of a small switch over time problem instance.
Therefore, an increase in average APD values in large switchover time problem instances
can be mainly attributed to the large value of switch over time instead of actual performance
of the heuristic/metaheuristic.
The results reported in Tables 1 and 2 do not show any trend on the performance of
heuristic/PSO with a problem size (i.e. number of jobs) increase. Usually the performance
of the heuristics/metaheuristics deteriorates with the increase of problem size because of the
increase in search space. However, for the problem considered in this paper, the performance
of the heuristic/metaheuristic seems to be consistent with the increase in problem size. This
observation indicates the robustness of heuristics/PSO to solve bigger problem instances with
only a small deviation from the optimal solution.
This paper develops the optimal algorithm as well as heuristic and PSO-based meta-
heuristic to solve the problem under consideration. The development of the heuristic and
the PSO-based metaheuristic can be justified by comparing the CPU time of the heuris-
tic/metaheuristic with the CPU time of the optimal algorithm. It is clear from Tables 1 and 2
that the heuristic and PSO can obtain the solution within 3.90 % and 1.28 % of the optimal
solution respectively. All these results are obtained in seconds compared to the CPU time
taken by optimal solution. The biggest problem SGD115/SGD130 with 150 jobs is solved
in just 6 seconds by PSO algorithm, while it took approximately 2000 seconds for optimal
algorithm. The CPU time of the heuristic and metaheuristics does not grow exponentially
with an increase in problem size, while the CPU time of the exact algorithm does grow expo-
nentially. The result justifies the use of heuristics and PSO for solving the problem under
consideration when obtaining a quick solution is important. The use of PSO can also be
useful for the case where the problem studied in this paper is considered as a sub-problem of
a master problem in which the solution of sub problems are required many times in solving
master problems. The numerical experiments further indicate that although the problem is
123
Ann Oper Res
123
123
Table 2 Computational results for large switchover time problem instances
Table 3 Average result of Upper bound Q Avg. ABS Avg. CPU % decrease in ABS
Optimal algorithm for varying from Q = Q min
value of Q
Q = Q min 930037.2 0.5 0.00
Q = 1.1Q min 707759.8 54.1 23.90
Q = 1.2Q min 594233.4 148.3 36.11
Q = 1.3Q min 507708.4 233.5 45.41
Q = 1.4Q min 433629 315.8 53.38
Q = 1.5Q min 369160.6 409.4 60.31
Q = 1.6Q min 313929.7 506.0 66.25
Q = 1.7Q min 269273.7 592.1 71.05
Q = 1.8Q min 235321.7 681.8 74.70
Q = 1.9Q min 212291.1 779.9 77.17
Q = 2.0Q min 201126.3 1190.1 78.37
NP-hard in the ordinary sense, it can be solved easily. An approximation algorithm for this
problem can also be explored in future study.
One of the important parameters considered in this paper is the restriction on the makespan
of agent B by an upper bound Q. If the upper bound Q is too tight, then the problem becomes
infeasible, and if it is too loose, then the problem becomes easy to solve. It is interesting to
see the effect of Q on an objective function of agent A as well as its effect on the performance
of the heuristic/PSO. To perform this experiment, we first determined the minimum value
of Q (let call it Q min ) and then varied the value of Q from Q min to 2* Q min . The value
of Q min can be obtained by simply scheduling all jobs of agent B at the beginning. In this
case, the value of Q min will be the summation of the process time of all jobs of agent B. We
performed the experiment with just 30 problem instances (one problem instances from each
problem group) used in previous section but with different values of Q.
The average values of 30 problem instances obtained by the optimal algorithm for different
values of Q are reported in Table 3. The results reported in Table 3 indicate that when the
upper bound Q increases, the objective function of agent A decreases. When the value of Q
increases by 100% (i.e., from Q min to 2* Q min ), the value of the objective function of agent
A decreases by 78.37 %. The analysis is useful for performing trade-off analysis between the
increase in cost caused by the increase in the value of Q and the decrease in cost caused by
the decrease in objective function of agent A. The significance of increasing the upper bound
Q can be understood as a postponing of the delivery deadline for agent B. It is a general fact
that postponing a deadline will incur come cost in terms of penalty or loss of goodwill from
the customer. The increase in upper bound Q also increases the CPU time taken by optimal
algorithm to solve the problem. Because of Lemma 4, the search space increases when upper
bound Q increases. The increase in search space increases the CPU time; thus, the increase
in upper bound Q increases the CPU time of optimal algorithm.
123
Ann Oper Res
Heuristic PSO
Avg. ABS Avg. CPU Avg. APD Avg. ABS Avg. CPU Avg. APD
The average values of 30 problem instances obtained by different algorithms for different
values of Q have been reported in Table 4. When Q is set to Q min , PSO produces an optimal
solution for all 30 problem instances, while the heuristic algorithm is able to produce solutions
within 1.2 % of optimal solution. It is clear from the Table 4 that when the value of Q increases
the performance of heuristic and PSO deteriorates. Also, the CPU time increases when value
of Q increases. This result indicates that the upper bound Q affects the complexity of the
problem and, thus, the performance of the algorithm.
8 Conclusions
This paper considers a two-agent-based scheduling problem with switchover time. The aim
of this paper is to integrate the switchover time between agents in a two-agents scheduling
problem; to introduce the problem proprieties; to design an optimal algorithm; and to propose
solution methods for solving large size problem instances. We proposed an optimal algorithm,
a heuristic algorithm and a PSO-based metaheuristic to solve the problem. We have provided
some properties of the problem that provide an optimal structure of the problem. The structure
of the optimal solution was used to design the optimal algorithm. We have used problem
specific features in the PSO to work it for the considered problem. We have added two new
features on the sequencing rule and on the parameter-updating rule in the proposed PSO. We
have evaluated the performance of the heuristic and PSO by comparing its solution with the
optimal solution.
The performance of the proposed algorithms is evaluated using randomly generated prob-
lem instances. We generated two categories of data sets: small switchover time and a large
switchover time. The numerical experiments showed that the PSO is able to produce the solu-
tion within 1.28 % of the optimal solution in seconds. On the other hand, the CPU time of an
exact algorithm grew exponentially, which justified the use of heuristics and metaheuristics
for solving the problem under consideration. In future, other metaheuristics can be developed
to improve the solution of existing PSO metaheuristics.
123
Ann Oper Res
Acknowledgements This research is partially supported by University Start-up Research Grant from Asper
School of Business. The authors are thankful to the anonymous reviewers for their comments which helped
us to improve the paper.
References
Agnetis, A., Mirchandani, P. B., Pacciarelli, D., & Pacifici, A. (2004). Scheduling problems with two competing
agents. Operations Research, 52(2), 229–242.
Agnetis, A., Pacciarelli, D., & Pacifici, A. (2007). Multi-agent single machine scheduling. Annals of Operations
Research, 150(1), 3–15.
Agnetis, A., Pascale, G., & Pacciarelli, D. (2009). A Lagrangian approach to single-machine scheduling
problems with two competing agents. Journal of Scheduling, 12(4), 401–415.
Ahmadov, Y., & Helo, P. (2016). A cloud based job sequencing with sequence-dependent setup for sheet metal
manufacturing. Annals of Operations Research. doi:10.1007/s10479-016-2304-3.
Allahverdi, A., Ng, C. T., Cheng, T. C. E., & Kovalyov, M. Y. (2008). A survey of scheduling problems with
setup times or costs. European Journal of Operational Research, 187(3), 985–1032.
Baker, K. R., & Smith, J. C. (2003). A multiple-criterion model for machine scheduling. Journal of Scheduling,
6(1), 7–16.
Cheng, T. C. E., Cheng, S.-R., Wu, W.-H., Hsu, P.-H., & Wu, C.-C. (2011). A two-agent single-machine
scheduling problem with truncated sum-of-processing-times-based learning considerations. Computers
& Industrial Engineering, 60(4), 534–541.
Dover, O., & Shabtay, D. (2016). Single machine scheduling with two competing agents, arbitrary release
dates and unit processing times. Annals of Operations Research, 238(1–2), 145–178.
Elvikis, D., & T’kindt, V. (2014). Two-agent scheduling on uniform parallel machines with min–max criteria.
Annals of Operations Research, 213(1), 79–94.
Gajpal, Y., & Sahu, S. N. (2014a). A pseudo polynomial time algorithm for a single machine scheduling
problem under competition to minimize total weighted completion time and makespan objectives. In
Paper proceedings of the 11th international conference on computational management science (CMS),
Lisbon, Portugal, May 29–31, 2014.
Gajpal, Y., Sahu, S. N., & Dua, A. (2014b). Heuristics for single machine scheduling under competition
to minimize total weighted completion time and makespan objectives. In Paper proceedings of the 6th
international conference on applied operational research (ICAOR), Vancouver, BC, Canada, July, 29–31.
Gawiejnowicz, S., Lee, W.-C., Lin, C.-L., & Wu, C.-C. (2011). Single-machine scheduling of proportionally
deteriorating jobs by two agents. Journal of the Operational Research Society, 62(11), 1983–1991.
Gerstl, E., & Mosheiov, G. (2013). Scheduling problems with two competing agents to minimize weighted
earliness–tardiness. Computers & Operations Research, 40(1), 109–116.
Grobler, J., Engelbrecht, A. P., Kok, S., & Yadavalli, S. (2010). Metaheuristics for the multi-objective FJSP
with sequence-dependent set-up times, auxiliary resources and machine down time. Annals of Operations
Research, 180(1), 165–196.
Kennedy, J., & Eberhart, R. C. (1995). Particle swarm optimization. In Proceedings of IEEE international
conference on neural networks, Vol. 4. Washington, DC: Bureau of Labor Statistics, pp. 1942–1948.
Lee, W.-C., Cheng, S.-K., Chen, C.-W., & Wu, C.-C. (2011). A two-machine flow shop problem with two
agents. Computers & Operations Research, 38(1), 98–104.
Leung, J. Y.-T., Pinedo, M., & Wan, G. (2010). Competitive two-agent scheduling and its applications. Oper-
ations Research, 58(2), 458–469.
Li, D.-C., & Hsu, P.-H. (2012). Solving a two-agent single-machine scheduling problem considering learning
effect. Computers and Operations Research, 39(7), 1644–1651.
Li, S., & Yuan, J. (2012). Unbounded parallel-batching scheduling with two competitive agents. Journal of
Scheduling, 15(5), 629–640.
Liao, C. J., Tseng, C. T., & Luarn, P. (2007). A discrete version of particle swarm optimization for flowshop
scheduling problems. Computers & Operations Research, 34(10), 3099–3111.
Liu, P., Tang, L., & Zhou, X. (2010a). Two-agent group scheduling with deteriorating jobs on a single machine.
The International Journal of Advanced Manufacturing Technology, 47(5–8), 657–664.
Liu, P., Zhou, X., & Tang, L. (2010b). Two-agent single-machine scheduling with position-dependent pro-
cessing times. The International Journal of Advanced Manufacturing Technology, 48(1–4), 325–331.
Mor, B., & Mosheiov, G. (2010). Scheduling problems with two competing agents to minimize minmax and
minsum earliness measures. European Journal of Operational Research, 206(3), 540–546.
123
Ann Oper Res
Mor, M., & Mosheiov, G. (2011). Single machine batch scheduling with two competing agents to minimize
total flowtime. European Journal of Operational Research, 215(3), 524–531.
Mor, M., & Mosheiov, G. (2014). Polynomial time solutions for scheduling problems on a proportionate
flowshop with two competing agents. Journal of the Operational Research Society, 65(1), 151–157.
Pei, J., Liu, X., Pardalos, P. M., Fan, W., & Yang, S. (2017). Scheduling deteriorating jobs on a single serial-
batching machine with multiple job types and sequence-dependent setup times. Annals of Operations
Research, 249(1), 175–195.
Tasgetiren, M. F., Sevkli, M., Liang, Y. C., & Gencyilmaz, G. (2004). Particle swarm optimization algorithm for
permutation flowshop sequencing problem. In Proceedings of the fourth international workshop on ant
colony optimization and swarm intelligence (ANTS2004). Lecture notes in computer science, Brussels,
Belgium, Vol. 3172, 2004. pp. 382–90.
Tasgetiren, M. F., Liang, Y. C., Sevkli, M., & Gencyilmaz, G. (2007). A particle swarm optimization for
makespan and total flowtime minimization in the permutation flowshop sequencing problem. European
Journal of Operational Research, 177(3), 1930–1947.
Wan, G., Vakati, S. R., Leung, J. Y.-T., & Pinedo, M. (2010). Scheduling two agents with controllable processing
times. European Journal of Operational Research, 205(3), 528–539.
Wang, D. J., Yin, Y., Xu, J., Wu, W. H., Cheng, S. R., & Wu, C. C. (2015). Some due date determination schedul-
ing problems with two agents on a single machine. International Journal of Production Economics, 168,
81–90.
Wang, D. J., Yin, Y., Cheng, S. R., Cheng, T. C. E., & Wu, C. C. (2016). Due date assignment and scheduling
on a single machine with two competing agents. International Journal of Production Research, 54(4),
1152–1169.
Wang, D. J., Kang, C. C., Shiau, Y. R., Wu, C. C., & Hsu, P. H. (2017). A two-agent single-machine scheduling
problem with late work criteria. Soft Computing, 21(8), 2015–2033.
Yin, Y., Cheng, S.-R., & Wu, C.-C. (2012a). Scheduling problems with two agents and a linear non-increasing
deterioration to minimize earliness penalties. Information Sciences, 189, 282–292.
Yin, Y., Wu, W.-H., Cheng, S.-R., & Wu, C.-C. (2012b). An investigation on a two-agent single-machine
scheduling problem with unequal release dates. Computers and Operations Research, 39(12), 3062–
3073.
Yin, Y., Cheng, S.-R., Cheng, T. C. E., Wu, W.-H., & Wu, C.-C. (2013). Two-agent single-machine scheduling
with release times and deadlines. International Journal of Shipping and Transport Logistics, 5(1), 75–94.
Yin, Y., Wang, D. J., Wu, C. C., & Cheng, T. C. E. (2016). CON/SLK due date assignment and scheduling on
a single machine with two agents. Naval Research Logistics (NRL), 63(5), 416–429.
Yin, Y., Wang, Y., Cheng, T. C. E., Wang, D. J., & Wu, C. C. (2016). Two-agent single-machine scheduling to
minimize the batch delivery cost. Computers & Industrial Engineering, 92, 16–30.
Yin, Y., Cheng, S. R., Cheng, T. C. E., Wang, D. J., & Wu, C. C. (2016). Just-in-time scheduling with two
competing agents on unrelated parallel machines. Omega, 63, 41–47.
123