next up previous http://data.fas.harvard.edu/jsekhon/pics/home.gif
Next: Example Files Up: The GENetic optimization and Previous: Starting Values

   
Genetic Operator Controls

The genetic operator controls section defines the four setups used by GENBLIS to control GENOUD's EP operators. This section is not required. GENBLIS has four different control setups defined by the following keywords: control (used for the original sample); control.big (used in the original sample and when there is a convergence failure in either the jackknives or the bootstraps); control.jack (used for the jackknives); and control.boot (used for the bootstraps). Each control defines 9 different variables: the number of uses of each of 8 operators, and the gradient convergence tolerance. GENBLIS decides that it has found a minimum of $F_{\text{ML}}$ only if the absolute value of each gradient element is smaller than the gradient convergence tolerance. The default tolerance is 1.0e-9.

The syntax is control-file-keyword followed by up to 9 numbers. The first 8 numbers define the number of operators of the chosen type. The 9th number is the gradient tolerance. Obviously, the first 8 numbers must be integers. The first 8 numbers refer to the operators in the following order: uniform mutation (50); boundary mutation (0); non-uniform mutation (50); polytope crossover (50); multiple point simple crossover (50); whole non-uniform mutation (50); heuristic crossover (50); and local-minimum crossover (0). The number in brackets is the default number of operators of each type that GENBLIS uses. The GENBLIS Operator Table describes each operator in detail.

None of the control files need to described in this section. If the control file is set and another of the given files is not set, it is set equal to the control file. If only part of a control files arguments is listed (e.g., control.big is only followed by 3 numbers) the rest of the operators and the gradient tolerance are set to equal the default values listed above.


GENBLIS Operators  

1.
Uniform Mutation. At random choose $i\in\mathbf{N}$. Select a value $\tilde{x}_i \sim U(\underline{x}_i, \overline{x}_i)$. Set $X_i=\tilde{x}_i$.

2.
Boundary Mutation. At random choose $i\in\mathbf{N}$. Set either $X_i=\underline{x}_i$ or $X_i=\overline{x}_i$, with probability 1/2 of using each value.

3.
Non-uniform Mutation. At random choose $i\in\mathbf{N}$. Compute p = (1-t/T)B u, where t is the current generation number, T is the maximum number of generations, B>0 is a tuning parameter and $u \sim
U(0,1)$. Set either $X_i=(1-p)x_i + p\underline{x}_i$ or $X_i=(1-p)x_i +
p\overline{x}_i$, with probability 1/2 of using each value.

4.
Polytope Crossover. Using $m=\max(2,n)$ vectors x from the current population and m random numbers $p_j\in(0,1)$ such that $\sum_{j=1}^m p_j = 1$, set $\mathbf{X} = \sum_{j=1}^m p_j
\mathbf{x}_j$.

5.
Multiple Point Simple Crossover. Choose a random number $m\in\mathbf{N}$ of distinct integers i from N. Using two parameter vectors, x and y, for each i set Xi = p xi + (1-p) yi and Yi = p yi + (1-p) xi, where $p\in(0,1)$ is a fixed number.

6.
Whole Non-uniform Mutation. Do non-uniform mutation for all the elements of X.

7.
Heuristic Crossover. Choose $p \sim U(0,1)$. Using two parameter vectors, x and y, compute z = p(x - y) + x. If z satisfies all constraints, use it. Otherwise choose another p value and repeat. Set z equal to the better of x and y if a satisfactory mixed z is not found by a preset number of attempts. In this fashion produce two z vectors.

8.
Local-minimum Crossover. Choose $p \sim U(0,1)$. Starting with x, run BFGS optimization up to a preset number of iterations to produce $\mathbf{\tilde{x}}$. Compute $\mathbf{z} = p\mathbf{\tilde{x}} +
(1-p)\mathbf{x}$. If z satisfies boundary constraints, use it. Otherwise shrink p by setting p = p/2 and recompute z. If a satisfactory z is not found by a preset number of attempts, return x. This operators is extremely computationally intensive, use sparingly.


$\mathbf{X} =\begin{bmatrix}X_1,\dots,X_n\end{bmatrix}$ is the vector of n parameters Xi. $\underline{x}_i$ is the lower bound and $\overline{x}_i$ is the upper bound on values for Xi. xi is the current value of Xi, and x is the current value of X. $\mathbf{N}
= \{1,\dots,n\}$. $p \sim U(0,1)$ means that p is drawn from the uniform distribution on the [0,1] interval.


next up previous http://data.fas.harvard.edu/jsekhon/pics/home.gif
Next: Example Files Up: The GENetic optimization and Previous: Starting Values
Jas S. Sekhon
1998-08-25