Quantum-inspired cuckoo co-search algorithm... 793
presented in Section 3. To validate the convergence of the
QCCS algorithm, the convergence analysis is provided in
Section 4. Experimental results are illustrated in Section 5.
Finally, we conclude the paper and give several future
remarks in Section 6.
2 Problem formulation
In this section, we present the formal description of the
problem. The notations to be used in this paper are given in
Table 1 with explanation.
Based on the notations, we denoted the minimization
of the makespan as F
m
|nwt|C
max
, which is described as
follows. There are n jobs (J
1
,J
2
, ...,J
n
) that need to be
processed on m machines (M
1
,M
2
, ...,M
m
) in the same
order without any preemption and interruption, i.e., once a
job is started on the first machine, it has to be continuously
processed through m machines without interruption. At any
moment, job J
i
(1 ≤ i ≤ n) is being processed at most by
one machine, and machine M
k
(1 ≤ k ≤ m) can execute no
more than one job at a particular time. To satisfy the no-wait
constraint, the start of a job on the first machine must be
delayed. The objective of this problem is to find a feasible
schedule π = (π
1
,π
2
, ...,π
n
) for the n jobs such that the
makespan C
max
(π) is minimized, where C
max
(π) is also
equivalent to the finishing time of the last job on the last
machine, and is obtained using the following equation
C
max
(π) =
n
k=2
D
π
k−1
,π
k
+
m
j=1
P
π
n
,j
(1)
The no-wait constraints of the problem ensure that the
completion time distance between two adjacent jobs is
determined by the processing times of two jobs, regardless
of the other jobs in the permutation. Therefore, a completion
time distance is defined between each pair of jobs. The
completion time distance between two adjacent jobs, π
k−1
and π
k
, is calculated by
D
π
k−1
,π
k
= max
1≤i≤m
⎧
⎨
⎩
i
j=1
P
π
k−1
,j
−
i
j=2
P
π
k
,j−1
⎫
⎬
⎭
,k = 2, 3, ...,n.(2)
To provide a better understanding of the problem, we
present a Gantt chart of a no-wait flow-shop scheduling with
three machines and three jobs. It is clear that the C
max
(π)
can be easily obtained by summing up the completion time
distances (D
π
1
,π
2
,D
π
2
,π
3
) and the processing total time
3
j=1
P
π
3
,j
of these three jobs, as shown in Fig. 1.
Fig. 1 A Gantt chart of a no-wait flow shop scheduling
3 Quantum-inspired cuckoo co-search
(QCCS) algorithm
3.1 Quantum encoding based on Bloch coordinates
In quantum computation, the smallest unit of information is
expressed as a quantum bit which is also called a qubit. A
qubit can be represented by superposition of ’1’ state and
’0’ state in the Hilbert space. The state of a qubit is given by
|=cos(θ/2)|0+e
iϕ
sin(θ/2)|1 (3)
where θ and ϕ define a point P on Bloch sphere. A qubit
description on the Bloch sphere is shown in Fig. 2.
Therefore, a qubit is expressed as |=
[cos ϕ sin θ sin ϕ sin θ cos θ ]
T
by Bloch coordinates. The
Bloch coordinate encoding of the qubit is directly used
to generate cuckoo populations in QCCS algorithm. The
population q is given by
q =
⎛
⎝
cos(ϕ
1
) sin (θ
1
) cos(ϕ
2
) sin (θ
2
) ... cos(ϕ
n
) sin (θ
n
)
sin(ϕ
1
) sin(θ
1
) sin(ϕ
2
) sin(θ
2
) ... sin(ϕ
n
) sin (θ
n
)
cos(θ
1
) cos(θ
2
) ... cos(θ
n
)
⎞
⎠
(4)
Fig. 2 A qubit description on the Bloch sphere