es.udc.gii.common.eaf.algorithm.operator.reproduction.mutation.de.crossover
Class CrossOverScheme

java.lang.Object
  extended by es.udc.gii.common.eaf.algorithm.operator.reproduction.mutation.de.crossover.CrossOverScheme
All Implemented Interfaces:
Configurable
Direct Known Subclasses:
BinCrossOverScheme, ExpCrossOverScheme

public abstract class CrossOverScheme
extends java.lang.Object
implements Configurable

In order to increase the diveristy of the population, the DE algorithm uses a crossover operator. After the generation of the mutated individual, a crossover operator is execute to the mutated vector and the target vector.

This operator is applied over these two vectors and it generates a new vector, the trial one. This trial vector has some genes from the mutated vector and other from the target vector.

As this is an abstract class, it could not be instanciate, but when we use a subclass that inherit from it, its xml configuration code should have at least a configuration for the CR parameter, among other specific configuration parameters of the subclass. So the xml code should be like this:

 <CrossOverScheme>
      <Class>value</Class>
      <CR>value</CR>
      ...
 <CrossOverScheme>
 
 
where the tag lt;Class> indicates a subclass of this abstract class and CR indicates the plugin used. If some of the parameters do not appear in the configuration, they are set to their default values.

Default values:

Since:
1.0
Author:
Grupo Integrado de IngenierĂ­a (www.gii.udc.es)

Field Summary
private  Parameter CR_plugin
           
 
Constructor Summary
CrossOverScheme()
           
CrossOverScheme(Parameter CR_plugin)
           
 
Method Summary
 void configure(org.apache.commons.configuration.Configuration conf)
          Configures the specific element that implements this method.
abstract  Individual crossOver(EvolutionaryAlgorithm ea, Individual target, Individual v)
           
 Parameter getCRPlugin()
           
 void setCRPlugin(Parameter CR_plugin)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CR_plugin

private Parameter CR_plugin
Constructor Detail

CrossOverScheme

public CrossOverScheme()

CrossOverScheme

public CrossOverScheme(Parameter CR_plugin)
Method Detail

getCRPlugin

public Parameter getCRPlugin()

setCRPlugin

public void setCRPlugin(Parameter CR_plugin)

configure

public void configure(org.apache.commons.configuration.Configuration conf)
Description copied from interface: Configurable
Configures the specific element that implements this method.

Specified by:
configure in interface Configurable
Parameters:
conf - a Configuration object.
See Also:
Configuration

crossOver

public abstract Individual crossOver(EvolutionaryAlgorithm ea,
                                     Individual target,
                                     Individual v)