com.brownsoft.ag.individuo
Class FuncionExpresion

java.lang.Object
  |
  +--com.brownsoft.ag.individuo.IndividuoBitStreamSimple
        |
        +--com.brownsoft.ag.individuo.FuncionPuntoFijo
              |
              +--com.brownsoft.ag.individuo.FuncionExpresion
All Implemented Interfaces:
java.lang.Cloneable, IFuncion, IIndividuo

public class FuncionExpresion
extends FuncionPuntoFijo

Esta clase implementa un individuo del tipo funcion de punto fijo de una sola variable que evalua una funncion pasada en el constructor.

Version:
1.0
Author:
Gustavo Brown

Field Summary
 
Fields inherited from class com.brownsoft.ag.individuo.FuncionPuntoFijo
from, isDiscrete, to, varName, width
 
Fields inherited from class com.brownsoft.ag.individuo.IndividuoBitStreamSimple
bitWidth, maxValue, parents, value
 
Constructor Summary
FuncionExpresion(java.lang.String expresion, double from, double to, int bitWidth)
          Constructor
FuncionExpresion(java.lang.String expresion, double from, double to, int bitWidth, java.lang.String varName)
          Constructor
 
Method Summary
 IIndividuo getCopy()
          Crea una copia con el mismo material genético que este individuo
 EvaluaExpresion getEvaluator()
          Obtiene el evaluador de la expresion de este individuo
 double getFitness()
          Evalua y retorna el fitness de este individuo
protected  void setIsPartOfComplexIndividual(int parentIndex, IndividuoMultipleFuncionExpresion complexParent)
          Indica que este individuo es una de las variables de una funcion de varias variables Esta funcion es llamada por el constructor de IndividuoMultipleFuncionExpresion para cada una de las variables que componen a la funcion compleja
 
Methods inherited from class com.brownsoft.ag.individuo.FuncionPuntoFijo
getFenotipo, toString, value
 
Methods inherited from class com.brownsoft.ag.individuo.IndividuoBitStreamSimple
equals, getBitWidth, getParents, getValue, hashCode, setParents, setRandom, setValue
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FuncionExpresion

public FuncionExpresion(java.lang.String expresion,
                        double from,
                        double to,
                        int bitWidth)
Constructor

Parameters:
from - limite izquierdo del dominio de la funcion (inclusive)
to - limite derecho del dominio de la funcion (inclusive)
bitWidth - cantidad de bits en la representacion del individuo. Los distintos puntos del espacio de búsqueda estan igualmente distanciados

FuncionExpresion

public FuncionExpresion(java.lang.String expresion,
                        double from,
                        double to,
                        int bitWidth,
                        java.lang.String varName)
Constructor

Parameters:
from - limite izquierdo del dominio de la funcion (inclusive)
to - limite derecho del dominio de la funcion (inclusive)
bitWidth - cantidad de bits en la representacion del individuo. Los distintos puntos del espacio de búsqueda estan igualmente distanciados
varName - nombre de la variable de la función
Method Detail

getFitness

public double getFitness()
Evalua y retorna el fitness de este individuo

Specified by:
getFitness in interface IIndividuo
Specified by:
getFitness in class FuncionPuntoFijo
Returns:
retorna el fitness de este individuo

getEvaluator

public EvaluaExpresion getEvaluator()
Obtiene el evaluador de la expresion de este individuo

Returns:
EvaluaExpresion evaluador de la expresion de este individuo

setIsPartOfComplexIndividual

protected void setIsPartOfComplexIndividual(int parentIndex,
                                            IndividuoMultipleFuncionExpresion complexParent)
Indica que este individuo es una de las variables de una funcion de varias variables Esta funcion es llamada por el constructor de IndividuoMultipleFuncionExpresion para cada una de las variables que componen a la funcion compleja

Parameters:
complexParent - el IndividuoMultipleFuncionExpresion del cual es parte este individuo

getCopy

public IIndividuo getCopy()
Crea una copia con el mismo material genético que este individuo

Specified by:
getCopy in interface IIndividuo
Overrides:
getCopy in class IndividuoBitStreamSimple
Returns:
Nuevo individuo