The GA Procedure

SetMut Call

sets the mutation operator

call SetMut( type<, seg><, pname, pvalue><, pname, pvalue>... );

The inputs to the SetMut subroutine are as follows:

type        is the name of the mutation operator to be applied.
segis optional, and specifies a segment of the solution to which the operator should be applied. If seg is not specified, then it defaults to a value of 1. seg needs to be specified only if multisegment encoding is used.
pnameis optional, and specifies the name of a particular property to be set for the mutation operator.
pvaluespecifies the value to be assigned to the corresponding property name.

The SetMut routine is used to assign a standard mutation operator. For multisegment encoding, the operator can be assigned to a particular solution segment with the seg parameter; otherwise a default segment of 1 is assumed. You can set different mutation operators for different segments with multiple SetMut calls. When a mutation event occurs, all the operators will applied to the same solution. If more than one SetMut call is made for the same segment, then the last call nullifies any previous call for that segment. Also, a SetMutRoutine call nullifies all previous SetMut calls, and a SetMut call nullifies a previous SetMutRoutine call. Properties for the chosen mutation operator can be set with optional pname-pvalue pairs. It is also possible to set or reset operator properties with a SetProperty call.

The accepted values for type and the corresponding properties are summarized in Table 1.5. See the section "Mutation Operators" for a full description of the available operators.

Table 1.5: Mutation Operator Types and Properties
type encodings properties
'delta'real, integer'delta'
  'nchange'
'invert'sequence 
'null'all encodings 
'swap'sequence'nswap'
'uniform'real, integer, Boolean'nchange'
  'pchange'

Previous Page | Next Page | Top of Page