# A Single-Machine Two-Agent Scheduling Problem by a Branch-and-Bound and Three Simulated Annealing Algorithms

Authors: Shangchia Liu; Wen-Hsiang Wu; Chao-Chung Kang; Win-Chin Lin; Zhenmin Cheng
Journal: Discrete Dynamics in Nature and Society
 (2015)

---

## Abstract

In the field of distributed decision making, different agents share a common processing resource, and each agent wants to minimize a cost function depending on its jobs only. These issues arise in different application contexts, including real-time systems, integrated service networks, industrial districts, and telecommunication systems. Motivated by its importance on practical applications, we consider two-agent scheduling on a single machine where the objective is to minimize the total completion time of the jobs of the first agent with the restriction that an upper bound is allowed the total completion time of the jobs for the second agent. For solving the proposed problem, a branch-and-bound and three simulated annealing algorithms are developed for the optimal solution, respectively. In addition, the extensive computational experiments are also conducted to test the performance of the algorithms.


---

## Body

## 1. Introduction

Multiagent simulation is a branch of artificial intelligence that offers a promising approach to dealing with multistakeholder management systems, such as common pool resources. It provides a framework which allows analysis of stakeholders’ (or agents’) interactions and decision making. For example, in forest plantation comanagement, Purnomo and Guizol [1] further pointed out “Comanagement of forest resources is a process of governance that enables all relevant stakeholders to participate in the decision-making processes. Illegal logging and forest degradation are currently increasing, and logging bans are ineffective in reducing forest degradation. At the same time interest in forest plantations and concern about poverty problems of neighboring people whose livelihoods depend on forest services and products continue to increase rapidly. Governments have identified the development of small forest plantations as an opportunity to provide wood supplies to forest industries and to reduce poverty. However, the development of small plantations is very slow due to an imbalance of power and suspicion between communities and large companies.” In blood cell population dynamics, Bessonov et al. [2] gave some possible explanations of the mechanism for recovery of the system under important blood loss or blood diseases such as anemia. Agnetis et al. [3] also indicated that multiple agents compete on the usage of a common processing resource in different application environments and different methodological fields, such as artificial intelligence, decision theory, operations research, and so forth.Scheduling with multiple agents has received growing attention in recently years. Agnetis et al. [4] and Baker and Smith [5] were among the pioneers to introduce the concept of multiagent into scheduling problems. Yuan et al. [6] discussed two dynamic programming recursions in Baker and Smith [5] and proposed a polynomial-time algorithm for the same problem. Cheng et al. [7] addressed the feasibility model of multiagent scheduling on a single machine where each agent’s objective function is to minimize the total weighted number of tardy jobs. Ng et al. [8] proposed a two-agent scheduling problem on a single machine, where the objective is to minimize the total completion time of the first agent with the restriction that the number of tardy jobs of the second agent cannot exceed a given number. Agnetis et al. [3] discussed the complexity some single-machine scheduling problems with several agents. Cheng et al. [9] studied multiagent scheduling on a single machine where the objective functions of the agents are of the max-form. Agnetis et al. [10] used a branch-and-bound method to solve several two-agent scheduling problems on a single machine. Lee et al. [11] considered a multiagent scheduling problem on a single machine in which each agent is responsible for his own set of jobs and wishes to minimize the total weighted completion time of his own set of jobs. Recently, Leung et al. [12] generalized the single machine problems proposed by Agnetis et al. [4] to the environment with multiple identical machines in parallel. Yin et al. [13] considered several two-agent scheduling problems with assignable due dates on a single machine, where the goal was to assign a due date from a given set of due dates and a position in the sequence to each job so that the weighted sum of the objectives of both agents is minimized. For different combinations of the objectives, which include the maximum lateness, total (weighted) tardiness, and total (weighted) number of tardy jobs, they provided the complexity results and solve the corresponding problems, if possible. Yin et al. [14] investigated a scheduling environment with two agents and a linear nonincreasing deterioration with the objective of scheduling the jobs such that the combined schedule performs well with respect to the measures of both agents. Three different objective functions were considered for one agent, including the maximum earliness cost, total earliness cost, and total weighted earliness cost, while keeping the maximum earliness cost of the other agent below or at a fixed level U. They proposed the optimal (nondominated) properties and present the complexity results for the problems. Yin et al. [15] addressed 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 Q. A mixed-integer programming (MIP) model was first formulated to find the optimal solution which is useful for small-size problem instances and then a branch-and-bound algorithm incorporating with several dominance properties, a lower bound and a simulated annealing heuristic algorithm were provided to derive the optimal solution for medium- to large-size problem instances. For more recent works with two-agent issues, readers can refer to Nong et al. [16], Wan et al. [17], Luo et al. [18], Yin et al. [19], and so forth. In addition, for more multiple-agent works with time-dependent, readers can refer to Liu and Tang [20], Liu et al. [21], Cheng et al. [22, 23], Wu et al. [24], Li and Hsu [25], Yin et al. [26–28], Wu [29], and Li et al. [30], and so forth.For the importance of multiple agents competing on the usage of a common processing resource in different application environments and different methodological fields, we considered two-agent scheduling on a single machine. The objective is to minimize the total completion time of the jobs of the first agent with the restriction that an upper bound is allowed the total completion time of the jobs for the second agent which has been shown binary NP-hard by Agnetis et al. [4]. The problem is described as follows. There are n jobs which belong to one of the agents AG
0 or AG
1. For each job j, there is a normal processing time p
j and an agent code I
j, where I
j
=
0 if J
j
∈
AG
0 or I
j
=
1 if J
j
∈
AG
1. All the jobs are available at time zero. Under a schedule S, let C
j
(
S
) be the completion time of job j. The objective of this paper is to find an optimal schedule to minimize ∑
j
=
1
n
C
j
(
S
)
(
1
-
I
j
) subject to ∑
j
=
1
n
C
j
(
S
)
I
j
<
U, where U is a control upper bound.The remainder of this paper is organized as follows. In Section2 we present some dominance properties and develop a lower bound to speed up the search for the optimal solution, followed by discussions of a branch-and-bound and three simulated annealing (SA) algorithms. We present the results of extensive computational experiments to assess the performance of all of the proposed algorithms under different experimental conditions in Section 3. We conclude the paper and suggest topics for further research in the last section.


## 2. Dominance Properties

We will develop some adjacent dominance rules by using the pairwise interchange method. Assume thatS
1 and S
2 denote two given job schedules in which the difference between S
1 and S
2 is a pairwise interchange of two adjacent jobs i and j. That is, S
1
=
(
σ
,
i
,
j
,
σ
′
) and S
2
=
(
σ
,
j
,
i
,
σ
′
), where σ and σ
′ each denote a partial sequence. In addition, let t be the starting time of the last job in σ.Property 1.
If jobsi, j
∈
AG
0, and p
i
<
p
j, then S
1 dominates S
2.Property 2.
If jobsi
,
j
∈
AG
1, ∑
i
∈
σ
∩
AG
1
C
i
+
2
t
+
2
p
i
+
p
j
<
U, and p
i
<
p
j, then S
1 dominates S
2.Next, we give a proposition to determine the feasibility of the partial schedule. Let (π
,
π
c) be a sequence of jobs where π is the scheduled part with k jobs and σ
c is the unscheduled part with (n
-
k) jobs. Among the unscheduled jobs, let p
(
1
)
=
min
⁡
J
j
∈
π
c
∩
AG
1
⁡
{
p
j
}. Moreover, let C
k be the completion times of the last job in π. Also, let π
′ and π
′′ denote the unscheduled jobs in AG
0 and AG
1 arranged in the smallest processing times (SPT) order, respectively.Property 3.
If there is a jobi
∈
AG
1 such that ∑
i
∈
π
∩
AG
1
C
i
+
C
k
+
p
(
1
)
>
U, then (π
,
π
c) is not a feasible sequence.Property 4.
If all unscheduled jobs are belonging toAG
0, then (π
,
π
′) dominates (π
,
π
c).Property 5.
If all unscheduled jobs are belonging toAG
1, then (π
,
π
c) can be determined by (π
,
π
′′). That is, (π
,
π
′′) either is feasible solution or can be deleted.


### 2.1. Lower Bound

Assume that PS is a partial schedule in which the order of the firstk jobs is determined and let US be the unscheduled part with (n
-
k) jobs. Among the unscheduled jobs, there are n
0 jobs from agent AG
0 and n
1 jobs from agent AG
1. Moreover, let C
[
k
] denote the completion times of the kth job in PS. The completion time for the (k
+
j)th job is(1)
C
[
k
+
j
]
≥
C
k
+
∑
i
=
1
j
p
k
+
i
,
for
1
≤
j
≤
n
0
.Then a lower bound can be obtained as follows:(2)
∑
j
=
1
n
C
j
S
1
-
I
j
≥
∑
j
=
1
k
C
j
S
1
-
I
j
+
∑
j
=
1
n
0
C
^
j
S
,where C
^
(
j
)
=
C
[
k
]
+
∑
i
=
1
j
p
(
k
+
i
).


### 2.2. Simulated Annealing Algorithms

Simulated annealing has become one of the most popular metaheuristic methods to solve combinatorial optimization problems since it was proposed by Kirkpatrick et al. [31]. For example, Kim et al. [32] applied the method in scheduling of raw-material unloading from ships at a steelworks. Sun et al. [33] used the technique for allocating product lots to customer orders in semiconductor manufacturing supply chains. Moreover, the method has the advantage of avoiding getting trapped in a local optimum because of its hill climbing moves, which are governed by a control parameter. Thus, we will use SA to derive near-optimal solutions for our problem. The steps of SA algorithms are summarized as follows.


#### 2.2.1. Initial Sequence

Three initial sequences for the three SA algorithms are adopted for our problem. For the first initial sequence inSA
1, the sequence of jobs of AG
1 is arranged according to the smallest processing times (SPT) order, followed by arranging the sequence of jobs of AG0 in the shortest processing time (SPT) order. In order to get a good initial one, two more initial sequences are considered. For the second initial sequence in SA
2, the pairwise interchange is used to the initial sequence produce by SA
1. For the third initial sequence in SA
3, the NEH method [34] is applied to the initial sequence produce by SA
1.


#### 2.2.2. Neighborhood Generation

The pairwise interchange (PI) neighborhood generation method is adopted in the algorithms.


#### 2.2.3. Acceptance Probability

When a new feasible sequence is generated, it is accepted if its objective value is smaller than that of the original sequence; otherwise, it is accepted with a probability that decreases as the process evolves. The probability of acceptance is generated from an exponential distribution:(3)
P
accept
=
exp
⁡
-
α
×
Δ
TC
,where α is a control parameter and Δ
TC is the change in the objective value. In addition, we use the method suggested by Ben-Arieh and Maimon [35] to change α in the kth iteration as follows:(4)
α
=
k
δ
,where δ is an experimental constant. After preliminary trials, δ
=
6 is used in our experiments.If the total completion time of jobs from agentAG
0 increases as a result of a random pairwise interchange, the new sequence is accepted when P
(
accept
)
>
r, where r is randomly sampled from the uniform distribution U
(
0,1
).


#### 2.2.4. Stopping Rule

All three proposed SAs are stopped after100
n iterations, where n is the number of jobs.


## 2.1. Lower Bound

Assume that PS is a partial schedule in which the order of the firstk jobs is determined and let US be the unscheduled part with (n
-
k) jobs. Among the unscheduled jobs, there are n
0 jobs from agent AG
0 and n
1 jobs from agent AG
1. Moreover, let C
[
k
] denote the completion times of the kth job in PS. The completion time for the (k
+
j)th job is(1)
C
[
k
+
j
]
≥
C
k
+
∑
i
=
1
j
p
k
+
i
,
for
1
≤
j
≤
n
0
.Then a lower bound can be obtained as follows:(2)
∑
j
=
1
n
C
j
S
1
-
I
j
≥
∑
j
=
1
k
C
j
S
1
-
I
j
+
∑
j
=
1
n
0
C
^
j
S
,where C
^
(
j
)
=
C
[
k
]
+
∑
i
=
1
j
p
(
k
+
i
).


## 2.2. Simulated Annealing Algorithms

Simulated annealing has become one of the most popular metaheuristic methods to solve combinatorial optimization problems since it was proposed by Kirkpatrick et al. [31]. For example, Kim et al. [32] applied the method in scheduling of raw-material unloading from ships at a steelworks. Sun et al. [33] used the technique for allocating product lots to customer orders in semiconductor manufacturing supply chains. Moreover, the method has the advantage of avoiding getting trapped in a local optimum because of its hill climbing moves, which are governed by a control parameter. Thus, we will use SA to derive near-optimal solutions for our problem. The steps of SA algorithms are summarized as follows.


### 2.2.1. Initial Sequence

Three initial sequences for the three SA algorithms are adopted for our problem. For the first initial sequence inSA
1, the sequence of jobs of AG
1 is arranged according to the smallest processing times (SPT) order, followed by arranging the sequence of jobs of AG0 in the shortest processing time (SPT) order. In order to get a good initial one, two more initial sequences are considered. For the second initial sequence in SA
2, the pairwise interchange is used to the initial sequence produce by SA
1. For the third initial sequence in SA
3, the NEH method [34] is applied to the initial sequence produce by SA
1.


### 2.2.2. Neighborhood Generation

The pairwise interchange (PI) neighborhood generation method is adopted in the algorithms.


### 2.2.3. Acceptance Probability

When a new feasible sequence is generated, it is accepted if its objective value is smaller than that of the original sequence; otherwise, it is accepted with a probability that decreases as the process evolves. The probability of acceptance is generated from an exponential distribution:(3)
P
accept
=
exp
⁡
-
α
×
Δ
TC
,where α is a control parameter and Δ
TC is the change in the objective value. In addition, we use the method suggested by Ben-Arieh and Maimon [35] to change α in the kth iteration as follows:(4)
α
=
k
δ
,where δ is an experimental constant. After preliminary trials, δ
=
6 is used in our experiments.If the total completion time of jobs from agentAG
0 increases as a result of a random pairwise interchange, the new sequence is accepted when P
(
accept
)
>
r, where r is randomly sampled from the uniform distribution U
(
0,1
).


### 2.2.4. Stopping Rule

All three proposed SAs are stopped after100
n iterations, where n is the number of jobs.


## 2.2.1. Initial Sequence

Three initial sequences for the three SA algorithms are adopted for our problem. For the first initial sequence inSA
1, the sequence of jobs of AG
1 is arranged according to the smallest processing times (SPT) order, followed by arranging the sequence of jobs of AG0 in the shortest processing time (SPT) order. In order to get a good initial one, two more initial sequences are considered. For the second initial sequence in SA
2, the pairwise interchange is used to the initial sequence produce by SA
1. For the third initial sequence in SA
3, the NEH method [34] is applied to the initial sequence produce by SA
1.


## 2.2.2. Neighborhood Generation

The pairwise interchange (PI) neighborhood generation method is adopted in the algorithms.


## 2.2.3. Acceptance Probability

When a new feasible sequence is generated, it is accepted if its objective value is smaller than that of the original sequence; otherwise, it is accepted with a probability that decreases as the process evolves. The probability of acceptance is generated from an exponential distribution:(3)
P
accept
=
exp
⁡
-
α
×
Δ
TC
,where α is a control parameter and Δ
TC is the change in the objective value. In addition, we use the method suggested by Ben-Arieh and Maimon [35] to change α in the kth iteration as follows:(4)
α
=
k
δ
,where δ is an experimental constant. After preliminary trials, δ
=
6 is used in our experiments.If the total completion time of jobs from agentAG
0 increases as a result of a random pairwise interchange, the new sequence is accepted when P
(
accept
)
>
r, where r is randomly sampled from the uniform distribution U
(
0,1
).


## 2.2.4. Stopping Rule

All three proposed SAs are stopped after100
n iterations, where n is the number of jobs.


## 3. Computational Experiments

The extensive computational experiments were conducted to test the performances of the branch-and-bound algorithm and the three simulated annealing algorithms. All the algorithms were coded in Fortran using Compaq Visual Fortran version 6.6 and performed the experiments on a personal computer powered by an Intel(R) Core(TM)2 Quad CPU 2.66 GHz with 4 GB RAM operating under Windows XP. The job processing times were generated from a uniform distribution over the integers 1–100. For the control upper boundU, we arrange the jobs of AG
1 by the smallest processing times (SPT) order and compute out the total completion times of the jobs of AG
1, (recorded as TC
1). Then following the sequence of the jobs of AG
1, we arrange the sequence of jobs of AG
0 in the shortest processing time (SPT) order and compute out the total completion times of jobs of AG
1 and AG
0, (recoded as TC
1
+
2). We let U
=
(
1
-
α
)
TC
1
+
α
TC
1
+
2, where 0
<
α
<
1. Moreover, α was taken as the values of 0.25, 0.5, and 0.75, while the proportion of the jobs of agent AG
1 at pro = 0.25, 0.5, and 0.75 in the tests.For the branch-and-bound algorithm, the average and standard deviation of the numbers of nodes and the execution times (in seconds) were recorded. For the SA heuristics, the mean and standard deviation percentage errors were recorded. The percentage error of a solution obtained from a heuristic algorithm was given by(5)
V
-
V
∗
V
∗
,where V and V
∗ are denoted as the total completion time of the heuristic and the optimal solution, respectively. The computational times of the heuristic algorithms were not recorded because they all were fast in generating solutions.The computational experiments were divided into two parts. In the first part of the experiments, three number of jobs were tested atn
=
8, 12, and 16. As a result, 27 experimental situations were examined. 50 instances were randomly generated for each case. The results were summarized in Table 1 that includes the CPU time (mean and standard deviation) and the number of nodes for the branch-and-bound algorithm.Table 1
Performance of the branch-and-bound and heuristic algorithms (n = 8~16).
n
Pro
α
Branch-and-bound algorithm
SA1
SA2
SA3
SA4
Valid sample size
CPU time
Number of nodes
Error percentages
Mean
Std.
Mean
Std.
Mean
Std.
Mean
Std.
Mean
Std.
Mean
Std.
8
0.25
0.25
50
0.00
0.01
526
318
0.28
1.46
0.28
1.46
0.28
1.46
0.28
1.46
0.50
50
0.00
0.01
748
588
1.29
4.12
0.93
3.11
0.86
3.09
0.24
1.69
0.75
50
0.01
0.01
1383
923
3.42
7.29
2.83
5.73
2.27
4.80
0.62
2.46
0.50
0.25
50
0.01
0.01
2229
1371
0.01
0.06
0.01
0.06
0.00
0.00
0.00
0.00
0.50
50
0.01
0.01
2500
1412
0.50
1.78
0.14
0.56
0.20
0.86
0.04
0.20
0.75
50
0.01
0.01
3183
1139
0.92
2.03
1.27
2.26
1.48
2.76
0.26
1.02
0.75
0.25
50
0.01
0.01
1091
217
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.50
50
0.01
0.01
1091
217
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.75
50
0.01
0.01
1089
196
0.36
1.18
0.11
0.48
0.49
1.33
0.03
0.24
Average
0.01
0.01
1538
709
0.75
1.99
0.62
1.52
0.62
1.59
0.16
0.79
12
0.25
0.25
50
0.78
0.86
97087
113419
0.29
0.93
0.61
2.30
0.30
1.38
0.05
0.20
0.50
50
1.36
1.96
175858
261636
1.86
4.41
3.99
7.81
1.45
3.86
0.77
1.95
0.75
50
3.92
5.24
535992
751273
4.78
7.25
4.40
6.82
5.30
8.43
2.12
4.26
0.50
0.25
50
19.83
22.75
2278911
2794764
0.02
0.07
0.04
0.20
0.01
0.05
0.00
0.00
0.50
50
27.91
33.86
3405293
4448908
0.64
1.24
0.53
1.16
0.32
0.73
0.17
0.45
0.75
50
35.38
21.51
4692766
3096131
2.07
2.16
2.37
2.43
2.37
2.74
0.69
0.92
0.75
0.25
50
6.30
2.18
794003
304461
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.50
50
6.30
2.18
794439
304555
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.75
50
6.60
1.82
862132
262277
0.44
0.66
0.74
1.22
0.55
1.19
0.15
0.33
Average
12.04
10.26
1515165
1370825
1.12
1.86
1.41
2.44
1.14
2.04
0.44
0.90
16
0.25
0.25
48
846.82
1691.36
62738963
129480137
0.36
0.92
0.39
1.06
0.35
1.16
0.18
0.77
0.50
46
1432.63
2411.56
105554536
181805362
1.99
3.46
2.49
4.28
1.88
4.38
0.95
2.29
0.75
33
1446.76
2629.13
106507557
197947458
2.72
3.14
7.79
12.00
4.30
6.64
1.83
2.28
0.50
0.25
22
8044.31
6058.59
429572906
333869433
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.50
20
7267.99
5697.96
387550386
314387045
0.10
0.29
0.00
0.00
0.11
0.51
0.00
0.00
0.75
3
7493.01
5776.30
411927486
331822988
0.93
1.07
6.91
6.17
6.65
4.11
0.93
1.07
0.75
0.25
13
9502.54
3053.15
625205281
214788228
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.50
13
9478.74
3044.52
625205281
214788228
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.00
0.75
7
9965.98
3653.10
652692683
258677186
0.41
0.73
0.24
0.63
1.03
1.06
0.00
0.00
Average
6164.31
3779.52
378550564
241951785
0.72
1.07
1.98
2.68
1.59
1.98
0.43
0.71For the performance of the branch-and-bound algorithm, it can be observed from Table1 that the number of nodes and the mean of the CPU time increase when n becomes bigger. The difficult situations occur at n
=
16. Especially, the instances with a bigger value of α (α
=
0.75) are difficult to solve than those with a smaller one (α
=
0.25, 0.50). Moreover, the instances with a bigger value of pro (pro = 0.5, 0.75) are difficult to solve than those with a smaller one (pro = 0.25). The most difficult case is located at pro = 0.5, 0.75, and α
=
0.75 as the number of instances, which can be solved out within less 1
0
-
9 nodes, were declined to 10 or below. In addition, as shown in Figure 1 and Table 1, the instances with pro = 0.5 took more nodes or CPU time than others, and the trend became clear as the value of α got bigger.Figure 1
Performance of the branch-and-bound algorithms (n
=
12).For the performance of the proposed SAs, it can be seen in Table1 that the means of the percentage error of SA
1 (between 0.0% and 4.78%) are lower than those of SA
2 (between 0.0% and 7.79%) and those of SA
3 (between 0.0% and 6.65%.) Moreover, the trend of the standard deviations of the percentage error keeps the similar pattern. As shown in Table 1, the standard deviations of the percentage error of SA
1, SA
2, and SA
3 were between 0.0% and 7.29%, 0.0% and 12.0%, and 0.0% and 8.43%, respectively. It released that the performance of SA
1 was slightly better than the other two. Furthermore, Figure 2 and Table 1 indicated that the means of the percentage error of SA
1, SA
2, and SA
3 are slightly affected by the parameter α. For example, the means of the percentage errors of SA
1, SA
2, and SA
3 were lager than 2% at α
=
0.25. Specifically, the behavior became clear at pro = 0.25 and 0.5. It also can be observed that there is no absolutely dominance relationship among three proposed SAs. Due to get a good quality solution, we further combined three proposed SAs into one (recorded as SA4 and SA
4
=
min
⁡
{
SA
i
,
i
=
1,2
,
3
}). The means of the percentage error of SA
4 were located between 0.0% and 2.12%. Meanwhile its standard deviations of the percentage error were between 0.0% and 4.26%. Moreover, the impacts of pro and α were not present for proposed three SAs.Figure 2
Performance of the SA algorithms (n
=
12).In the second part of the experiments, the performances of the proposed SA heuristics were further tested for large numbers of jobs. Three different numbers of jobs were considered atn
=
20, 40, and 60. The proportion of the jobs of agent AG
1 at pro = 0.25, 0.5, and 0.75 in the tests. Moreover, α was taken as the values of 0.25, 0.5, and 0.75. As a result, 27 experimental situations were tested. 50 instances were randomly generated for each situation. The relative deviance percentage with respect to the best known solution was reported for each instance. The mean execution time and mean relative deviance percentage were also recorded for each SA heuristic. The relative deviation percentage RDP was given by(6)
SA
i
-
SA
∗
SA
∗
,where SA
i is the value of the objective function generated by SA
i and SA
∗
=
min
⁡
{
SA
i
,
i
=
1,2
,
3
} is the smallest value of the objective function obtained from the three SA heuristics. The results were summarized in Table 2.Table 2
RPD of heuristic algorithms (n = 20~60).
n
Pro
α
SA1
SA2
SA3
CPU time
RPD
CPU time
RPD
CPU time
RPD
Mean
Std.
Mean
Std.
Mean
Std.
Mean
Std.
Mean
Std.
Mean
Std.
20
0.25
25
0.0019
0.0051
0.45
1.44
0.0019
0.0051
0.41
1.19
0.0016
0.0047
0.51
1.75
50
0.0019
0.0051
1.39
2.67
0.0019
0.0051
1.87
5.51
0.0022
0.0055
0.89
1.88
75
0.0019
0.0051
2.86
4.81
0.0019
0.0051
4.96
6.80
0.0019
0.0051
2.01
3.66
0.5
25
0.0019
0.0051
0.02
0.07
0.0019
0.0051
0.00
0.01
0.0016
0.0047
0.01
0.06
50
0.0019
0.0051
0.51
0.81
0.0019
0.0051
0.39
0.67
0.0022
0.0055
0.51
0.78
75
0.0019
0.0051
1.05
1.52
0.0022
0.0055
1.19
2.08
0.0022
0.0055
1.30
2.03
0.75
25
0.0019
0.0051
0.00
0.00
0.0013
0.0043
0.00
0.00
0.0019
0.0051
0.00
0.00
50
0.0019
0.0051
0.00
0.00
0.0016
0.0047
0.00
0.00
0.0019
0.0051
0.00
0.00
75
0.0019
0.0051
0.50
0.58
0.0019
0.0051
0.58
0.75
0.0019
0.0051
0.34
0.55
Average
0.0019
0.0051
0.75
1.32
0.0018
0.0050
1.04
1.89
0.0019
0.0052
0.62
1.19
40
0.25
25
0.0066
0.0078
0.10
0.30
0.0072
0.0079
0.16
0.52
0.0066
0.0078
0.00
0.00
50
0.0072
0.0079
0.92
1.51
0.0078
0.0079
1.22
2.09
0.0072
0.0079
0.39
1.47
75
0.0078
0.0079
3.66
4.43
0.0084
0.0079
3.91
5.84
0.0081
0.0079
2.82
4.04
0.5
25
0.0066
0.0078
0.02
0.06
0.0066
0.0078
0.00
0.00
0.0066
0.0078
0.00
0.00
50
0.0075
0.0079
0.39
0.43
0.0078
0.0079
0.31
0.57
0.0078
0.0079
0.46
0.79
75
0.0084
0.0079
0.81
0.81
0.0091
0.0078
1.03
1.69
0.0091
0.0078
0.71
1.12
0.75
25
0.0066
0.0078
0.00
0.00
0.0063
0.0077
0.00
0.00
0.0063
0.0077
0.00
0.00
50
0.0063
0.0077
0.00
0.00
0.0063
0.0077
0.00
0.00
0.0063
0.0077
0.00
0.00
75
0.0072
0.0079
0.32
0.45
0.0078
0.0079
0.25
0.36
0.0081
0.0079
0.25
0.31
Average
0.0071
0.0078
0.69
0.89
0.0075
0.0078
0.76
1.23
0.0073
0.0078
0.51
0.86
60
0.25
25
0.0159
0.0022
0.07
0.20
0.0178
0.0055
0.09
0.23
0.0147
0.0037
0.02
0.11
50
0.0175
0.0051
1.48
2.72
0.0197
0.0069
1.20
1.88
0.0163
0.0044
0.28
0.88
75
0.0197
0.0069
2.38
2.51
0.0219
0.0077
3.74
5.10
0.0206
0.0074
2.58
4.10
0.5
25
0.0147
0.0037
0.01
0.03
0.0147
0.0037
0.00
0.00
0.0144
0.0043
0.00
0.00
50
0.0175
0.0060
0.39
0.57
0.0184
0.0061
0.27
0.35
0.0181
0.0066
0.23
0.42
75
0.0209
0.0075
0.66
1.03
0.0231
0.0079
0.62
0.73
0.0222
0.0078
0.66
0.90
0.75
25
0.0141
0.0047
0.00
0.00
0.0141
0.0047
0.00
0.00
0.0141
0.0047
0.00
0.00
50
0.0141
0.0047
0.00
0.00
0.0141
0.0047
0.00
0.00
0.0141
0.0047
0.00
0.00
75
0.0175
0.0051
0.21
0.27
0.0197
0.0069
0.22
0.28
0.0194
0.0067
0.21
0.25
Average
0.0169
0.0051
0.58
0.82
0.0182
0.0060
0.68
0.95
0.0171
0.0056
0.44
0.74As shown in Figure3 and Table 2, it can be seen that the RPD means of SA
1, SA
2, and SA
3 are getting slightly bigger as the value of α increases. In general, the RPD means of SA
3 are lower than those of SA
1 and SA
2. Furthermore, all of the RDP means of SA
1, SA
2, and SA
3 were less than 2%. Figure 2 also indicated that there is no absolutely dominance relationship among three proposed SAs.Figure 3
Performance of the SA algorithms (n
=
60).


## 4. Conclusions

This paper explored the single-machine two-agent scheduling problem where the objective is to minimize the total completion time of the jobs belonging to the first agent with the restriction that total completion time of jobs from the second agent has an upper bound. Due to the fact that the problem under study is binary NP hard, a branch-and-bound algorithm incorporating several dominance properties and a lower bound was proposed for the optimal solution. Three simulated annealing algorithms were also proposed for near-optimal solutions. The computational results show that, with the help of the proposed heuristic initial solutions, the branch-and-bound algorithm performs well in terms of number of nodes and execution time when the number of jobs is fewer than or equal to 16. Moreover, the computational experiments also show that the proposed combinedSA
4 performs well since its mean error percentage was less than 2.12% for all the tested cases. Further research lies in devising efficient and effective methods to solve the problem with significantly larger numbers of jobs.



---

*Source: 681854-2015-04-12.xml*