SDA Pseudocode Step 0: Preparation Select the number of search points $m\ge 2$ , parameters $0\le \theta <2\pi ,\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}\text{\hspace{0.17em}}0 of ${S}_{n}\left(r,\theta \right)$ , and maximum number of iterations ${k}_{max}$ Set $k=0$ . Step 1: Initialization Set initial points ${x}_{i}\left(0\right)\in {R}^{n},i=1,2,\cdots m$ in the feasible region at random and centre ${x}^{\ast }$ as ${x}^{\ast }={x}_{{i}_{g}}\left(0\right)$ , ${i}_{g}=\mathrm{arg}{\mathrm{min}}_{i}f\left({x}_{i}\left(0\right)\right),i=1,2,\cdots ,m$ . Step 2: Updating xi ${x}_{i}\left(k+1\right)={S}_{n}\left(r,\theta \right){x}_{i}\left(k\right)-\left({S}_{n}\left(r,\theta \right)-{I}_{n}\right){x}^{\ast }$ $i=1,2,\cdots m$ . Step 3: Updating ${x}^{\ast }$ ${x}^{\ast }={x}_{{i}_{g}}\left(k+1\right)$ , ${i}_{g}=\mathrm{arg}{\mathrm{min}}_{i}f\left({x}_{i}\left(k+1\right)\right),i=1,2,\cdots ,m$ . Step 4: Checking termination criterion If $k={k}_{\mathrm{max}}$ then terminate. Otherwise set $k=k+1$ , and return to step 2