Skip to content

Conversation

@hidroksit
Copy link

@hidroksit hidroksit commented Jan 5, 2026

📑 Description

I have implemented the Dung Beetle Optimizer (DBO) algorithm for the swarm_based module, following the methodology described in the original DBO paper by Xue and Shen (2023). This implementation follows the original mathematical formulas, incorporating the ball-rolling, dancing, foraging, stealing, and reproduction behaviors.

To ensure computational efficiency and integration with the latest mealpy (v3.0+) standards, the algorithm is built using fully vectorized NumPy operations and inherits directly from the Optimizer class with the new Agent object structure.

  • Implementation of the algorithm in Python/mealpy standards [x] Completed
  • Adding DBO to the mealpy/swarm_based/__init__.py file [x] Completed
  • Verified compatibility with Mealpy v3.0+ Agent structure [x] Completed

✅ Checks

  • My pull request adheres to the code style of this project
  • My code requires changes to the documentation
  • I have updated the documentation as required
  • All the tests have passed

ℹ Additional Information

Comparison of CEC-2017 tests between original paper results & python implementation results:

The algorithm was tested on CEC-2017 benchmark functions. The "Article result" column reflects the values reported in the original paper (Table 4) with Dim=10.

Configuration: Pop = 30, Epoch = 50 (Python) vs 10000 (Paper)

Function Type Python ver. result (My Run) Article result (Mean)*
F1 Unimodal 4.15E+03 3.15E+03
F5 Simple Multimodal 5.94E+02 5.38E+02
F9 Simple Multimodal 8.97E+02 9.21E+02

*Article results source: Xue & Shen (2023), Table 4

Reference:

Paper: Xue, J., & Shen, B. (2023). Dung beetle optimizer: a new meta-heuristic algorithm for global optimization. The Journal of Supercomputing, 79(7), 7305-7336.
DOI: 10.1007/s11227-022-04959-6

@hidroksit hidroksit changed the title add DBO algorithm implementation Add DBO algorithm implementation Jan 5, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant