## 4 Methodology
**Remove Many:** It performs the **Remove** operation \(\vartheta\) times since this value is chosen at random between \(1\) and the remainder of \(\varpi_{l}\) to \(\varpi\), \(\theta\sim\mathcal{U}\{1,\varpi-\varpi_{l}\}\), where \(\varpi_{l}\) is the minimal cardinality. After doing so, the cardinality of the candidate solution will be \(\#\vec{y}=\varpi-\vartheta\). **Shift:** It selects a random position \(i\sim\mathcal{U}\{1,\varpi\}\) and changes the corresponding element \(x_{i}\in\vec{x}(t)\) with another chosen at random from the feasible domain \(\mathfrak{S}\), say \(y_{j}\in\mathfrak{S}\). Therefore, the candidate sequence will be \(\vec{y}=(x_{1},\ldots,x_{i-1},y_{j},x_{i+1},\ldots,x_{\varpi})^{\intercal}\) with \(\#\vec{y}=\varpi\). **Shift Locally:** It is similar to the Shift action, but the element \(y_{j}\in\mathfrak{S}\) is chosen, also in the feasible domain \(\mathfrak{S}\), but around the original one \(x_{i}\in\vec{x}(t)\), i.e., \(y_{j}\in\{\forall\,y_{k}\in\mathfrak{S}|\mathcal{D}(x_{i},y_{k})<\!\varepsilon\}\) where \(\mathcal{D}:\mathfrak{S}\times\mathfrak{S}\mapsto\mathbb{R}_{+}\) is a closeness metric and \(\varepsilon\in\mathbb{R}_{+}\) is a small value. **Swap:** It interchanges elements \(x_{i},x_{j}\in\vec{x}(t)\) at two randomly selected locations, \(i,j\sim\mathcal{U}\{1,\varpi\}\). Hence, the candidate sequence is given by \(\vec{y}=(x_{1},\ldots,x_{i-1},x_{j},\ldots,x_{j-1},x_{i},\ldots,\allowbreak x _{\varpi})^{\intercal}\) with \(\#\vec{y}=\varpi\). **Restart:** It ignores the current sequence \(\vec{x}(t)\) and randomly selects a new one \(\vec{y}\) with the same cardinality \(\varpi=\#\vec{x}(t)=\#\vec{y}\). This action is a particular case of the **Random sample** initialiser, but utilised as a perturbator. **Mirror:** It reorganises \(\vec{x}(t)\) in reverse order. Thus, the new sequence will be \(\vec{y}=(x_{\varpi},x_{\varpi-1},\ldots,x_{1})^{\intercal}\), also preserving the cardinality. **Roll:** It moves all the elements in \(\vec{x}(t)\) one position back or forward at random (i.e., Bernoulli trial with \(p=0.5\)) and with cyclic indexing. Thus, the candidate sequence will be \(\vec{y}=(x_{1\pm 1},x_{2\pm 1},\ldots,x_{\varpi\pm 1})^{\intercal}\), since \(x_{0}\triangleq x_{\varpi}\) and \(x_{\varpi+1}\triangleq x_{1}\). **Roll Many:** It is similar to the **Roll** action but \(k\geq 1\) positions are randomly chosen to displace, i.e., \(k\sim\mathcal{U}\{1,\varpi-1\}\). It is worth mentioning that \(\vec{x}(t)\) and \(\vec{y}\) could be expressed as sets (\(\vec{x}\) and \(\vec{y}\)), but the vector notation is preferred for notation standardisation. Besides, notice that we use \(\varpi\) instead of \(D\) to make the distinction between a heuristic sequence and a position within a continuous problem domain, respectively. This clarification is useful to avoid misunderstandings in Section 3. #### 1.2.2 Population-Based Fixed-Dimension Perturbators

These simple heuristics correspond to those procedures that can deal with multiple search points but in a problem domain with fixed dimensionality. In our particular interest, these perturbators are closely liaised to the population-based metaheuristics widely utilised in continuous optimisation problems. Thus, they are described mostly in terms an arbitrary domain \(\mathfrak{S}\), but without loss of generality some expressions are written assuming \(\mathfrak{S}=\mathbb{R}^{D}\), which is the domain we used for them. We then consider that the feasible domain \(\mathfrak{X}\) is given by a hyper-cube with boundaries from \(-1\) to \(1\) per dimension, \(\mathfrak{X}=[-1,1]^{D}\). Bearing this in mind, the collected perturbators are presented for determining the \(n\)-th candidate solution \(\vec{y}_{n}\in\mathfrak{X}\) in the problem domain \(\mathfrak{X}\in\mathfrak{S}\) (cf. Section 2.1). Because operators are expressed in vector form, some of them require the (element-wise) [PERSON]'s product \(\odot\) and the element-wise Heaviside step function \(H:\mathbb{R}^{D}\rightarrow\mathbb{Z}_{2}^{D}\) with \(H(0)=1\).