es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.real_code
Class BLXCrossOver

java.lang.Object
  extended by es.udc.gii.common.eaf.algorithm.operator.reproduction.ReproductionOperator
      extended by es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.CrossOverOperator
          extended by es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.real_code.BLXCrossOver
All Implemented Interfaces:
Operator, Configurable

public class BLXCrossOver
extends CrossOverOperator

An offspring is generated: H = (h1...hi..hn), where hi is a randomly (uniformly) chosen number of the interval [cmin-I*α,cmax+I*&alpah;], cmax = max(c1i ,c2i), cmin = min(c1i, c2i), I = cmax - cmin. The BLX-0.0 crossover is equal to the �at crossover.

The xml code to config this operator is:

 <Operator>
      <Class>es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.real_code.DoubleBLXCrossOver</Class>
      <Alfa>value</Alfa>
      <Probability>value</Probability>
 </Operator>
 
 
Where the tag Alfa represents the value of the parameter with the same name and probability is double value in the range [0, 100] which represents the probability of crossover. If these two tags do not appear in the configuration, the parameters are set to the default values.

Default values:

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

Field Summary
private  double alfa
           
 
Constructor Summary
BLXCrossOver()
          Creates a new instance of FloatBLXCrossOver
 
Method Summary
 void configure(org.apache.commons.configuration.Configuration conf)
          Configures the specific element that implements this method.
protected  java.util.List<Individual> crossOver(EvolutionaryAlgorithm ea, java.util.List<Individual> individuals)
           
 
Methods inherited from class es.udc.gii.common.eaf.algorithm.operator.reproduction.crossover.CrossOverOperator
getCrossPoints, getProbability, operate, setProbability, toString
 
Methods inherited from class es.udc.gii.common.eaf.algorithm.operator.reproduction.ReproductionOperator
checkBounds
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

alfa

private double alfa
Constructor Detail

BLXCrossOver

public BLXCrossOver()
Creates a new instance of FloatBLXCrossOver

Method Detail

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
Overrides:
configure in class CrossOverOperator
Parameters:
conf - a Configuration object.
See Also:
Configuration

crossOver

protected java.util.List<Individual> crossOver(EvolutionaryAlgorithm ea,
                                               java.util.List<Individual> individuals)
Specified by:
crossOver in class CrossOverOperator