File Exchange

image thumbnail

Backtracking Search Optimization Algorithm

version 1.0 (51.5 KB) by

A new swarm-based global optimization algorithm for real valued numerical optimization problems.



View License

This paper introduces the backtracking search optimization algorithm (BSA), a new evolutionary algorithm (EA) for solving real-valued numerical optimization problems. EAs are popular stochastic search algorithms that are widely used to solve non-linear, non-differentiable and complex numerical optimization problems. Current research aims at mitigating the effects of problems that are frequently encountered in EAs, such as excessive sensitivity to control parameters, premature convergence and slow computation. In this vein, development of BSA was motivated by studies that attempt to develop simpler and more effective search algorithms.

Unlike many search algorithms, BSA has a single control parameter. Moreover, BSA's problem-solving performance is not over sensitive to the initial value of this parameter. BSA has a simple structure that is effective, fast and capable of solving multimodal problems and that enables it to easily adapt to different numerical optimization problems.

BSA's strategy for generating a trial population includes two new crossover and mutation operators. BSA's strategies for generating trial populations and controlling the amplitude of the search-direction matrix and search-space boundaries give it very powerful exploration and exploitation capabilities.

In particular, BSA possesses a memory in which it stores a population from a randomly chosen previous generation for use in generating the search-direction matrix. Thus, BSA's memory allows it to take advantage of experiences gained from previous generations when it generates a trial preparation. This paper uses the Wilcoxon Signed-Rank Test to statistically compare BSA's effectiveness in solving numerical optimization problems with the performances of six widely used EA algorithms: PSO, CMAES, ABC, JDE, CLPSO and SADE.

The comparison, which uses 75 boundary-constrained benchmark problems and three constrained real-world benchmark problems, shows that in general, BSA can solve the benchmark problems more successfully than the comparison algorithms.

P. Civicioglu, "Backtracking Search Optimization Algorithm for numerical optimization problems", Applied Mathematics and Computation, 219, 8121–8144, 2013.

please visit the
for more detail about the algorithm and updated versions of BSA.

Related references

1. P. Civicioglu, "Transforming Geocentric Cartesian Coordinates to Geodetic Coordinates by Using Differential Search Algorithm", Computers and Geosciences, 46, 229-247, 2012.

    see for software code of Differential Search Algorithm (DSA).

    see for more information about DSA updates.

2. P. Civicioglu, "Artificial cooperative search algorithm for numerical optimization problems",Information Sciences, 229, 58–76, 2013.

3. P. Civicioglu, E. Besdok, "A conceptual comparison of the cuckoo-search, particle swarm optimization, differential evolution and artificial bee colony algorithms", Artificial Intelligence Review, 39 (4), 315-346, 2013.

4. P. Civicioglu, "Circular Antenna Array Design by Using Evolutionary Search Algorithms", Progress In Electromagnetics Research B, Vol. 54, 265-284, 2013.

Comments and Ratings (5)

Beate Sommer


simple and clear code, high performance and extremely robust, native parallel; nonrecursive search.



excellent, simple, and effective


Excellent code and algorithm

MATLAB Release
MATLAB 7.13 (R2011b)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video