*2.2. Opposition-Based Learning*

In the continuous domain, OBL is employed to evaluate the current solutions and their opposite solutions. Among these solutions, optimal ones are selected to boost the searchability [46]. Relative definitions are given as follows.

**Definition 1.** *Let x* ∈ *R be a real number defined on a specific interval x* ∈ [*a*, *b*]. *The opposite number x*˜ *is defined according to the following formula*

$$
\tilde{\mathbf{x}} = \mathbf{a} + \mathbf{b} - \mathbf{x} \tag{4}
$$

**Definition 2.** *Let Xi* = (*xi*1, *xi*2, ··· , *xiD*) *be a point in D dimensional space, xij* ∈ *aij*, *bij*, *j* = 1, 2, ··· , *D. The opposite point X* ˜ *i* = (*x*˜*i*1, *<sup>x</sup>*˜*i*2, ··· , *<sup>x</sup>*˜*iD*) *is defined by*

$$\mathfrak{x}\_{ij} = a\_{ij} + b\_{ij} - \mathfrak{x}\_{ij} \tag{5}$$

Experiments show that, if there is no prior knowledge of optimization problem, the probability that the opposite solution can reach the global optimum is higher than that of the random solution [47].Based on the OBL, quasi-opposition based learning [48] and quasi-reflective based learning [49] are proposed later. In this paper, we only consider OBL.

Taking TSP as an example, its solution is a sequence of numbers as the indices of cities. In addition, according to the opposite solutions for a continuous domain, it is challenging to construct opposite solutions for TSP due to the features of a discrete domain. Therefore, only a few scholars have made contributions towards this topic, and Ergeze is one of them. In [43], Ergeze addresses the definition of opposite paths according to the moving direction. For example, the initial path for *n* cities is given by

$$P = [1, 2, \cdots, n] \tag{6}$$

where the entries stand for the order of the cities that a salesman travels through. Then, the corresponding opposite path in a clockwise (CW) direction could be given by

$$P^{\rm CW} = \left[1, 1 + \frac{n}{2}, 2, 2 + \frac{n}{2}, \dots, \frac{n}{2} - 1, n - 1, \frac{n}{2}, n\right] \tag{7}$$

where *n* is even.

In the case when *n* is odd, append an auxiliary city and make *n* even. In the end, find opposite solutions according to Equation (7) and then remove this city. Since different moving directions may lead to different opposite paths or solutions, moving in a counterclockwise (CCW) will result in different opposite solutions compared with *P*CW.

When the number of cities is odd, one way of implementing CW opposition is to add an auxiliary city to the end of the path. After the opposite path is found, remove the auxiliary city.
