**Code for Shiu Yin Yuen, Bernard K.S. Cheung,
“Bounds for Probability of Success of Classical Genetic Algorithm Based
on Hamming Distance”, IEEE Transactions on Evolutionary Computation, Vol.
10(1) (Feb. 2006) 1-18.**

The code is in MATLAB.

The main function is

GAProb.m

For the finite population model, we use pre-computation, which stores the population permutations to save computational efforts. The pre-computed files are stored in the labelx_y.dat. For example, label5_2.dat stores the data for (g, d) = (5,2). If the particular combination is not available, you need to generate it first by running

Genperindex.m

The user can also test their own functional landscape by running ArbitraryLandscape.m and then GAProb.m.

ArbitraryLandscape.m

consists of three functions:

1.
Transforms an arbitrary
landscape *Fitnessfilename* to the one with the global optimum at
(1111...1)

2.
Saves the transformed landscape
as *cvtlandscape*, the format of *cvtlandscape* is the same of *Fitnessfilename*

3.
Calculates and stores the lower
and upper bounds of all rings as *LUBound* (The values [Li, Ui] at the *i*th
row represents the lower and upper bound of R*i*)

Syntax: ArbitraryLandscape(Fitnessfilename, gamma)

1. Fitnessfilename – The filename of file the target landscape.

2. gamma – Length of chromosome

The code is available in zip format (The winzip software is available from http://www.winzip.com/)