Skip to content
All library documents

Bacterial Foraging Optimization: Search Steps, Adaptations, and Limits

Article MQL5 articles

Summary

This article explains Bacterial Foraging Optimization (BFO), a population-based method for numerical optimization inspired by bacterial chemotaxis. Candidate solutions move through a search space using swimming and tumbling, while swarming encourages candidates to gather near promising areas. Reproduction favors fitter candidates, and elimination or dispersal is intended to help the population escape stagnation. The described implementation also uses a life counter: when it expires, a bacterium changes direction rather than being replaced at a random location.

The author outlines a modified sequence of fitness evaluation, replication, movement, and direction changes, then reports tests on benchmark functions. The excerpt says results were relatively good on a ten-variable origin function and a discrete Megacity function, but weaker at higher dimensions and on Forest. It also notes strengths such as simple logic, parallelizability, and broad search, alongside slow convergence, fixed step length, and difficulty escaping local optima. These are optimization experiments, not evidence of trading profitability; the author presents this version as a starting point for further parameter adaptation and study.

Key ideas

  • BFO searches by alternating directional movement with random changes in direction based on objective fitness.
  • Swarming, reproduction, and dispersal add population-level mechanisms to the search process.
  • The described implementation changes direction after a life limit instead of restarting a candidate randomly.
  • Reported benchmark behavior varies by function and dimensionality, and does not demonstrate trading performance.
  • The method is a metaheuristic with limitations that include slow convergence and possible stagnation at local optima.

Tags

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.