A Brand – New Metaheuristic Algorithm: Slime Mould Algorithm to Tackle the Optimization Problem

Join 372 other subscribers

1. Introduction

The giant single-celled slime mould Physarum polycephalum is known to approximate a number of network problems via growth and adaptation of its protoplasmic transport network and can serve as an inspiration towards unconventional, material-based computation [1].  It is clear that humans cannot live without the rhythmic patterns of signals or material flows.Therfore a brand-new metaheuristic highlighted by slime behavior to tackle the optimization problem [2]. Scientists have found that a brainless, single-celled organism is capable of solving problems and even learning [3]. An amoeboid organism to solve a computationally demanding problem and adapt to its environment, thereby proposing a nature-inspired a new stochastic optimizer, which is called slime mould algorithm (SMA).

2. Inspiration of SMA

The main inspiration of SMO is the foraging strategy of slime mould. Slime mould is a eukaryote that lives in cool and humid places and its main nutritional stage is Plasmodium, In the process of foraging food, the organic matter in slime mould seeks food, surrounds it, and secretes enzymes to digest it [4]. During the migration process, the front end extends into a fan-shaped, followed by an interconnected venous network that allows cytoplasm to flow inside. Because of their unique pattern and characteristic, they can use multiple food sources at the same time to form a venous network connecting them. If there is enough food in the environment, slime mould can even grow to more than 900 square centimeters [5].

Fig 1: Inspiration of SMA

3. Life cycle of Slime Mould

Slime molds begin life as amoeba-like cells. These unicellular amoebae are commonly haploid and feed on bacteria. These amoebae can mate if they encounter the correct mating type and form zygotes that then grow into plasmodia. These contain many nuclei without cell membranes between them, and can grow to meters in size. The species is often seen as a slimy yellow network in and on rotting logs [6]. The plasmodium grows into an interconnected network of protoplasmic strands. Migration of the plasmodium is rear areas. When the food supply wanes, the plasmodium will migrate to the surface of its substrate and transform into rigid fruiting bodies. The fruiting bodies or sporangia are what are commonly seen. They superficially look like fungi or molds but are not related to the true fungi. These sporangia will then release spores which hatch into amoebae to begin the life cycle again.

Fig 2: Lifecycle of SMA

4. Developed a new distributed network design based on foraging strategies of the slime mold 

Fungal networks demonstrate that indeterminate, decentralized systems can yield highly adaptive networks. Understanding how these relatively simple organisms have found effective transport networks through a process of natural selection may inform the design of man-made network the ability of fungal networks to dynamically modify link strengths is crucial to achieve both high transport capacity and robustness while reducing overall costs. There are many species of network-forming fungi in nature that are likely to have evolved a range of solutions to the problems of exploration, transport efficiency and robustness. The detailed characterization and modelling of such systems could be a first step in understanding how to construct efficient, robust transport networks based on local rules rather than global information, in the newly emerging field of biologistics [7].

Fig 3: Developed a new distributed network design based on foraging strategies of the slime mould 

5. Mathematical Model o of SMA

Slime mould can approach food according to the odor in the air. To express its approaching behavior in mathematical formulas, the following formulas are proposed to imitate the contraction mode:

Where  is a parameter, m represents the current iteration,  represents the individual location with the highest odor concentration currently found, S represents the location of slime mould,  and represent two individuals randomly selected from slime mould,  represents the weight of slime mould. The formula of α is as follow

Where j ∈ 1, 2… 𝑛, X (j) represents the fitness of S, Best fit represents the best fitness obtained in all iterations.

The formula of  is as follows:

where X (j) indicates the ranks first half of the population denotes the random value in the interval of 0,1.BF denotes the optimal fitness obtained in the current iterative process, WF denotes the worst fitness value obtained in the iterative process currently.

When the food concentration is content, the bigger the weight near the region is; when the food concentration is low, the weight of the region will be reduced, thus turning to explore other regions. Based on the above principle, the mathematical formula for updating the location of slime mould is as follows:

SAM mainly consists of the subsequent components: initialization, fitness evaluation, and sorting, weight update, and location update. Therefore, the total complexity of SMA is defined as

6. Advantages of SMA

Fig 4: Advantages of SMA

7. Pseudo code of SMA

Fig 5: Pseudo code of SMA

8. Flowchart of SMA

Fig 6: Flowchart of SMA

9. Application of SMA

In SMA, four classical engineering problems are utilized to estimate the efficacy of the algorithm in optimizing constrained problems and SMA is also applicable to engineering optimization problems in real life with satisfactory optimization results. They are;

  • Welded beam structure problem [8].
  • Cantilever structure problem [9].
  • Pressure vessel structure problem [10].
  • I beam structure problem [11].
Fig 7: Application of SMA


[1] A. Adamatzky, “Slime mould computes planar shapes”, International Journal of Bio-Inspired Computation, vol. 4, no. 3, p. 149, 2012. Available: 10.1504/ijbic.2012.047239.

[2] J. Jones and A. Adamatzky, “Material approximation of data smoothing and spline curves inspired by slime mould”, Bioinspiration & Biomimetics, vol. 9, no. 3, p. 036016, 2014. Available: 10.1088/1748-3182/9/3/036016.

[3] A. Adamatzky, “From reaction-diffusion to Physarum computing”, Natural Computing, vol. 8, no. 3, pp. 431-447, 2009. Available: 10.1007/s11047-009-9120-5.

[4] M. Burgin and A. Adamatzky, “Structural machines and slime mould computation”, International Journal of General Systems, vol. 46, no. 3, pp. 201-224, 2017. Available: 10.1080/03081079.2017.1300585.

[5] J. Jones and A. Adamatzky, “Material approximation of data smoothing and spline curves inspired by slime mould”, Bioinspiration & Biomimetics, vol. 9, no. 3, p. 036016, 2014. Available: 10.1088/1748-3182/9/3/036016.

[6] S. Li, H. Chen, M. Wang, A. Heidari and S. Mirjalili, “Slime mould algorithm: A new method for stochastic optimization”, Future Generation Computer Systems, vol. 111, pp. 300-323, 2020. Available: 10.1016/j.future.2020.03.055.

[7] A. Adamatzky, “Physarum wires: Self-growing self-repairing smart wires made from slime mould”, Biomedical Engineering Letters, vol. 3, no. 4, pp. 232-241, 2013. Available: 10.1007/s13534-013-0108-9.

[8] H. Faris et al., “An intelligent system for spam detection and identification of the most relevant features based on evolutionary Random Weight Networks”, Information Fusion, vol. 48, pp. 67-83, 2019. Available: 10.1016/j.inffus.2018.08.002.

[9] S. Mirjalili, S. Mirjalili and A. Hatamlou, “Multi-Verse Optimizer: a nature-inspired algorithm for global optimization”, Neural Computing and Applications, vol. 27, no. 2, pp. 495-513, 2015. Available: 10.1007/s00521-015-1870-7.

[10] E. Rashedi, H. Nezamabadi-pour and S. Saryazdi, “GSA: A Gravitational Search Algorithm”, Information Sciences, vol. 179, no. 13, pp. 2232-2248, 2009. Available: 10.1016/j.ins.2009.03.004.

[11] R. Rao, V. Savsani and D. Vakharia, “Teaching–Learning-Based Optimization: An optimization method for continuous non-linear large scale problems”, Information Sciences, vol. 183, no. 1, pp. 1-15, 2012. Available: 10.1016/j.ins.2011.08.006.

Join 372 other subscribers

Leave a Reply

%d bloggers like this: