# Slime Mould Algorithm

Slime mould algorithm (SMA) is a population-based optimization technique , which is proposed based on the oscillation style of slime mould in nature . 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 . 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 . This organism can optimize the form of its network by more time as it takes in info .

## 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:

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

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

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

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

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

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

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

The formula of $W$ can be expressed as follows:

$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)

$SmellIndex=sort(S)$ (6)

where $condition$ show that $S(i)$ ranks first half of the swarm, $r$ is the random value in the limit of [0,1], $b_{F}$ is the best fitness attained in the current loop, $w_{F}$ is the worst fitness value attained in the iterative procedure, $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:

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

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

### Oscillation

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

## The SMA algorithm

• Inputs: The population size $N$ and maximum number of iterations$max_{t}$ • Outputs: The best solution Initialize the the positions of slime mould $X_{i}(i=1,2,\ldots ,n)$ • Calculate the fitness of all slime mould Calculate the $W$ by Eq. (5)
• Update $p$ , $v_{b}$ , $v_{c}$ ;
• Update positions by Eq. (7)
• Return bestFitness and $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 
• The SMA has been employed to estimate the solar photovoltaic cell parameters 
• The SMA integrated with other population-based solver to overcome ISP for COVID-19 chest X-ray images 
• In another experiment, results show that SMA can solve some problems in optimal model parameters of solar PV panels .
• In a study, SMA integrated with chaos solved an SVR-based prediction approach that is presented based on the the K-means clustering .