Biogeography-based optimization

Dan Simon

Biogeography is the study of the geographical distribution of biological organisms. The mindset of the engineer is that we can learn from nature. This motivates the application of biogeography to optimization problems. The paper listed below discusses biogeography and how it can be generalized to obtain an algorithm called biogeography-based optimization (BBO). The reference discusses the performance of BBO on a set of 14 standard benchmarks and compares it with seven other population-based optimization algorithms: ant colony optimization (ACO), differential evolution (DE), evolutionary strategy (ES), genetic algorithm (GA), particle swarm optimization (PSO), probability based incremental learning (PBIL), and stud genetic algorithm (SGA). The paper also looks at the performance of BBO on a real-world sensor selection problem for aircraft health estimation.

The software that was used to create the results in the reference can be downloaded in a zip file. The software contains general ACO, BBO, DE, ES, GA, PSO, PBIL, and SGA software, and is written in m-files that can be run in the MATLAB environment. M-files are written in a very high-level language that can be easily read, almost like pseudo code. The data files and m-files are contained in the following zip file. - 27 kilobytes
In the original paper and MATLAB code, I think I put too much emphasis on the use of species probabilities: the m-file calculates probabilities, and then uses those probabilities to compute mutation rates. But this is unnecessarily complicated. The distinctive feature of BBO is its implemention of migration. A simpler and more straightforward implementation of BBO for both continuous and discrete objective functions can be downloaded from

However, I am leaving on this web page so that the results of the original paper can be more easily reproduced. If you download to your hard drive by clicking on the above link, then unzip the file (using, for example, WinZip), you can run computer intelligence experiments and reproduce the results in the paper. When you unzip the file on your hard drive, look at the readme.txt file for more detailed information. If you don't have software to unzip the file, you can download a free evaluation version of WinZip from


  1. D. Simon, “Biogeography-Based Optimization,” IEEE Transactions on Evolutionary Computation, vol. 12, no. 6, pp. 702-713, December 2008 - pdf, 745 KB - Note there is a typo in Equation 8 - the fraction should read n! / ((n+1-i)! (i-1)!); that is, n-choose-(i-1). There is also a typo in Equation 14 - the right side of the equation should read mmax * (1 - Ps/Pmax).
  2. PowerPoint Presentation - pdf, 331 KB

Professor Simon’s Home Page

Department of Electrical and Computer Engineering

Cleveland State University

Last Revised: May 8, 2009