com.brownsoft.ag.fitnessScaler
Class FitnessScalerPositive
java.lang.Object
|
+--com.brownsoft.ag.fitnessScaler.FitnessScaler
|
+--com.brownsoft.ag.fitnessScaler.FitnessScalerPositive
- All Implemented Interfaces:
- IFitnessScaler
- public class FitnessScalerPositive
- extends FitnessScaler
Este scaler se asegura que al momento de iniciar una iteración, se ajusten los parametros
para que todos los fitness de la poblacion actual sean positivos.
En el caso de que en el medio de una iteracion (por ejemplo al realizar la mutacion el fitness
escalado fuese a dar negativo, se retorna 0).
Mediante este scaler se puede utilizar sin problemas los operadores de seleccion como el de la Ruleta
que tienen como precondicion que los fitnesses NO sean negativos
- Version:
- 1.0
- Author:
- Gustavo Brown
Method Summary |
void |
inicioIteracion()
Avisa que se inicia una nueva iteración
Aqui es donde calculo la cantidad a sumar de acuerdo a
la poblacion actual |
protected double |
scaleFitness(double fitness)
Este metodo debe ser definido por las subclases de FitnessScaler |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
FitnessScalerPositive
public FitnessScalerPositive(IFitnessScaler parent)
- Constructor
- Parameters:
parent
- El parent de este fitness scaler (o FitnessScalerSink)
scaleFitness
protected double scaleFitness(double fitness)
- Este metodo debe ser definido por las subclases de FitnessScaler
- Overrides:
scaleFitness
in class FitnessScaler
- Returns:
- fitness escalado para que sea siempre positivo en este punto de la cadena
inicioIteracion
public void inicioIteracion()
- Avisa que se inicia una nueva iteración
Aqui es donde calculo la cantidad a sumar de acuerdo a
la poblacion actual
- Specified by:
inicioIteracion
in interface IFitnessScaler
- Overrides:
inicioIteracion
in class FitnessScaler