# Slime Mould Algorithm

Slime mould algorithm (SMA) is a population-based optimization technique [1], which is proposed based on the oscillation style of slime mould in nature [2]. The SMA has a unique mathematical model that simulates positive and negative feedbacks of the propagation wave of slime mould. It has a dynamic structure with a stable balance between global and local search drifts.

## Logic of search

Without having any brain or neurons, slime moulds, w:Physarum_polycephalum#Situational_behavior, are extraordinarily intelligent, capable of solving difficult computational problems with extreme efficiency [3]. This single-celled amoeba is able to memorize, make some motion decisions and contribute to changes, and all these can impact on our thinking to intelligent behaviour [4]. This organism can optimize the form of its network by more time as it takes in info [5].

## Mathematical model

### Approach food

To model the approaching manner of slime mould in the mathematical model of SMA, as a mathematical equation, the next rule is developed to make the start to contraction mode:

${\displaystyle X_{t+1}=\left\{{\begin{matrix}X_{b}(t)+v_{b}.\left(W.X_{A}(t)-X_{B}(t)\right)&r (1)

where ${\displaystyle v_{b}}$ is a parameter with a interval of ${\displaystyle [-a,a]}$, ${\displaystyle v_{c}}$ decreases linearly from one to zero. ${\displaystyle t}$ denotes the current iteration, ${\displaystyle X_{b}}$ shows the individual position with the highest odor concentration currently explored, ${\displaystyle X}$ is the location vector of slime mould, ${\displaystyle X_{A}}$ and ${\displaystyle X_{B}}$ are two individuals, that we randomly selected from the current population, ${\displaystyle W}$ is the weight of slime mould. The equation of ${\displaystyle p}$ is as follows:

${\displaystyle p=\tanh \left|S(i)-DF|\right.}$ (2)

where ${\displaystyle \in {1,2,\cdots ,n}}$, ${\displaystyle S(i)}$ is the fitness of ${\displaystyle X}$ , ${\displaystyle {DF}}$ is the best fitness attained in all iterations.

The formula of ${\displaystyle v_{b}}$ can be expressed as follows:

${\displaystyle v_{b}=[-a,a]}$ (3)

${\displaystyle a=\arctan h\left(-\left({\frac {t}{max_{t}}}\right)+1\right)}$ (4)

The formula of ${\displaystyle W}$ can be expressed as follows:

${\displaystyle W(SmellIndex(i))=\left\{{\begin{matrix}1+r\log((b_{F}-S(i))/(b_{F}-w_{F})+1)&condition\\1-r\log((b_{F}-S(i))/(b_{F}-w_{F})+1)&others\end{matrix}}\right.}$ (5)

${\displaystyle SmellIndex=sort(S)}$ (6)

where ${\displaystyle condition}$ show that ${\displaystyle S(i)}$ ranks first half of the swarm, ${\displaystyle r}$ is the random value in the limit of [0,1], ${\displaystyle b_{F}}$ is the best fitness attained in the current loop, ${\displaystyle w_{F}}$ is the worst fitness value attained in the iterative procedure, ${\displaystyle SmellIndex}$ is the sequence of fitness values sorted (ascends in the minimum value case).

### Wrap food

The mathematical rule for the update on the location of slime mould is as follows:

${\displaystyle X^{*}=\left\{{\begin{matrix}rand(UB-LB)+LB&rand (7)

where ${\displaystyle LB}$ and ${\displaystyle UB}$ denote the lower and upper limits of the feature range, rand and ${\displaystyle r}$ is the random value in [0. 1].

### Oscillation

The value of ${\displaystyle v_{b}}$ oscillates in a random manner between ${\displaystyle [-a,a]}$ and gradually approaches zero with more iterations. The value of ${\displaystyle v_{c}}$ oscillates among [-1, 1] and converges to zero eventually.

## The SMA algorithm

• Inputs: The population size ${\displaystyle N}$ and maximum number of iterations${\displaystyle max_{t}}$
• Outputs: The best solution Initialize the the positions of slime mould ${\displaystyle X_{i}(i=1,2,\ldots ,n)}$
• Calculate the fitness of all slime mould Calculate the ${\displaystyle W}$ by Eq. (5)
• Update ${\displaystyle p}$, ${\displaystyle v_{b}}$, ${\displaystyle v_{c}}$;
• Update positions by Eq. (7)
• Return bestFitness and ${\displaystyle X_{b}}$

## Application areas

Until now, the SMA has solved several real-world optimization problems in science and industry better than many competitive algorithms.

• The SMA has been used to optimize the Artificial Neural Network Model for Prediction of Urban Stochastic Water Demand [6]
• The SMA has been employed to estimate the solar photovoltaic cell parameters [7]
• The SMA integrated with other population-based solver to overcome ISP for COVID-19 chest X-ray images [8]
• In another experiment, results show that SMA can solve some problems in optimal model parameters of solar PV panels [9].
• In a study, SMA integrated with chaos solved an SVR-based prediction approach that is presented based on the the K-means clustering [10].

## References

1. Li, Shimin; Chen, Huiling; Wang, Mingjing; Heidari, Ali Asghar; Mirjalili, Seyedali (2020-10-01). "Slime mould algorithm: A new method for stochastic optimization". Future Generation Computer Systems 111: 300–323. doi:10.1016/j.future.2020.03.055. ISSN 0167-739X.
2. Patino-Ramirez, Fernando; Boussard, Aurèle; Arson, Chloé; Dussutour, Audrey (2019-10-28). "Substrate composition directs slime molds behavior". Scientific Reports 9 (1): 15444. doi:10.1038/s41598-019-50872-z. ISSN 2045-2322.
3. Adamatzky, Andrew (2011-05-31). "On attraction of slime mould Physarum polycephalum to plants with sedative properties". Nature Precedings: 1–1. doi:10.1038/npre.2011.5985.1. ISSN 1756-0357.
4. "Slime mould algorithm: A new method for stochastic optimization". metatags.io. Retrieved 2020-12-04.
5. Zubaidi, Salah L.; Abdulkareem, Iqbal H.; Hashim, Khalid S.; Al-Bugharbee, Hussein; Ridha, Hussein Mohammed; Gharghan, Sadik Kamel; Al-Qaim, Fuod F.; Muradov, Magomed et al. (2020/10). "Hybridised Artificial Neural Network Model with Slime Mould Algorithm: A Novel Methodology for Prediction of Urban Stochastic Water Demand". Water 12 (10): 2692. doi:10.3390/w12102692.
6. Kumar, C.; Raj, T. Dharma; Premkumar, M.; Raj, T. Dhanesh (2020-12-01). "A new stochastic slime mould optimization algorithm for the estimation of solar photovoltaic cell parameters". Optik 223: 165277. doi:10.1016/j.ijleo.2020.165277. ISSN 0030-4026.
7.
8. Mostafa, Manar; Rezk, Hegazy; Aly, Mokhtar; Ahmed, Emad M. (2020-12-01). "A new strategy based on slime mould algorithm to extract the optimal model parameters of solar PV panel". Sustainable Energy Technologies and Assessments 42: 100849. doi:10.1016/j.seta.2020.100849. ISSN 2213-1388.
9. Chen, Z.; Liu, W. (2020). "An Efficient Parameter Adaptive Support Vector Regression Using K-Means Clustering and Chaotic Slime Mould Algorithm". IEEE Access 8: 156851–156862. doi:10.1109/ACCESS.2020.3018866. ISSN 2169-3536.