Class DateMeasure

  • All Implemented Interfaces:
    Serializable, Cloneable, Comparable, org.jgap.gp.IMutateable, org.jgap.util.ICloneable

    public class DateMeasure
    extends org.jgap.gp.CommandGene
    implements org.jgap.gp.IMutateable, org.jgap.util.ICloneable
    Basic Measure for dates as of now we only support the yearmeasure which basically calculates the the similarity yearsim(years1, year2) of two years within a decade. Whereas if the difference <= 1 year yearsim = 1; iff the difference is greater then 10 years yearsim = 0.

    Please note that in order to work revistit the PropertyMapping supllied/computed to the learner AND make sure the ExpressionProblem.java is adjusted accordingly to add the measure and DatePropertyPair nodes.

    Version:
    Jul 21, 2016
    Author:
    Klaus Lyko, Mohamed Sherif (sherif@informatik.uni-leipzig.de)
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class org.jgap.gp.CommandGene

        org.jgap.gp.CommandGene.COMMAND_TYPE
    • Field Summary

      • Fields inherited from class org.jgap.gp.CommandGene

        BooleanClass, CharacterClass, DELTA, DoubleClass, FloatClass, IntegerClass, LongClass, nodeIndex, VoidClass
      • Fields inherited from interface org.jgap.util.ICloneable

        CVS_REVISION
      • Fields inherited from interface org.jgap.gp.IMutateable

        CVS_REVISION
    • Constructor Summary

      Constructors 
      Constructor Description
      DateMeasure​(String opName, org.jgap.gp.impl.GPConfiguration a_conf)
      Basic constructor for an atomic similarity measure.
      DateMeasure​(String opName, org.jgap.gp.impl.GPConfiguration a_conf, Class<?> a_returnType, boolean a_mutateable)
      Constructor for atomic similarity measures.
      DateMeasure​(String opName, org.jgap.gp.impl.GPConfiguration a_conf, Class<?> a_returnType, int a_subReturnType, boolean a_mutateable)
      Constructor for similarity measures bound by a threshold.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      org.jgap.gp.CommandGene applyMutation()
      Mutates this CommandGene.
      org.jgap.gp.CommandGene applyMutation​(int a_index, double a_percentage)  
      Object clone()
      Clones the object.
      Object execute_object​(org.jgap.gp.impl.ProgramChromosome a_chrom, int a_n, Object[] args)
      Executes this CommandGene as object.
      void execute_void​(org.jgap.gp.impl.ProgramChromosome a_chrom, int a_n, Object[] args)  
      Class<?> getChildType​(org.jgap.gp.IGPProgram a_ind, int a_chromNum)
      We expect the first 2 parameters to be resource identifier, the third to be an (optional) double value as the threshold for this Similarity command.
      String getName()  
      String getOperationName()  
      boolean isValid​(org.jgap.gp.impl.ProgramChromosome a_program)  
      boolean isValid​(org.jgap.gp.impl.ProgramChromosome a_program, int a_index)  
      String toString()  
      • Methods inherited from class org.jgap.gp.CommandGene

        check, check, cleanup, compareTo, dynamizeArity, ensureUniqueness, ensureUniqueness, ensureUniqueness2, equals, execute, execute_boolean, execute_double, execute_float, execute_int, execute_long, getAllele, getApplicationData, getArity, getArityMax, getArityMin, getCommandType, getEnergy, getGPConfiguration, getInternalValue, getPersistentRepresentation, getPersistentRepresentationExt, getReturnType, getSubChildType, getSubChildTypes, getSubReturnType, hashCode, init, isAffectGlobalState, isCompareApplicationData, isFloatType, isIntegerType, setAllele, setApplicationData, setArity, setArityMax, setArityMin, setCompareApplicationData, setEnergy, setNoValidation, setReturnType, setToRandomValue, setValueFromPersistentRepresentation, setValueFromString, size
    • Constructor Detail

      • DateMeasure

        public DateMeasure​(String opName,
                           org.jgap.gp.impl.GPConfiguration a_conf,
                           Class<?> a_returnType,
                           int a_subReturnType,
                           boolean a_mutateable)
                    throws org.jgap.InvalidConfigurationException
        Constructor for similarity measures bound by a threshold.
        Parameters:
        opName - Name of the LIMES similarity measure operation (e.g. "trigram").
        a_conf - JGAP GPConfiguration.
        a_returnType - The return type of this command.
        a_subReturnType - Specifies the SubReturnType.
        a_mutateable - true: this Commandgene is mutateable, viz. the LIMES similarity measure might be changed to another one out of the allowed operations.
        Throws:
        org.jgap.InvalidConfigurationException - when an invalid value has been passed to a Configuration object
      • DateMeasure

        public DateMeasure​(String opName,
                           org.jgap.gp.impl.GPConfiguration a_conf,
                           Class<?> a_returnType,
                           boolean a_mutateable)
                    throws org.jgap.InvalidConfigurationException
        Constructor for atomic similarity measures. @FIXME antiquated and not actually used.
        Parameters:
        opName - Name of the LIMES similarity measure operation (e.g. "trigram").
        a_conf - JGAP GPConfiguration.
        a_returnType - The return type of this command.
        a_mutateable - true: this Commandgene is mutateable, viz. the LIMES similarity measure might be changed to another one out of the allowed operations.
        Throws:
        org.jgap.InvalidConfigurationException - when an invalid value has been passed to a Configuration object
      • DateMeasure

        public DateMeasure​(String opName,
                           org.jgap.gp.impl.GPConfiguration a_conf)
                    throws org.jgap.InvalidConfigurationException
        Basic constructor for an atomic similarity measure. Return Type will be set to String.class and this gene more precisely the similarity measure command will not be mutateable. @FIXME antiquated and not actually used
        Parameters:
        opName - name of the LIMES similarity measure operation (e.g. "trigram").
        a_conf - JGAP GPConfiguration.
        Throws:
        org.jgap.InvalidConfigurationException - when an invalid value has been passed to a Configuration object
    • Method Detail

      • toString

        public String toString()
        Specified by:
        toString in class org.jgap.gp.CommandGene
      • getChildType

        public Class<?> getChildType​(org.jgap.gp.IGPProgram a_ind,
                                     int a_chromNum)
        We expect the first 2 parameters to be resource identifier, the third to be an (optional) double value as the threshold for this Similarity command.
        Overrides:
        getChildType in class org.jgap.gp.CommandGene
        Parameters:
        a_ind - A GPProgram
        a_chromNum - The number of the chromosome.
        Returns:
        Class type of the child.
      • getName

        public String getName()
        Overrides:
        getName in class org.jgap.gp.CommandGene
      • getOperationName

        public String getOperationName()
      • execute_object

        public Object execute_object​(org.jgap.gp.impl.ProgramChromosome a_chrom,
                                     int a_n,
                                     Object[] args)
        Executes this CommandGene as object. Is called if the return type is set to String.class. Thereby returning the atomic LIMES expression "sim(a.resource, b.resource)|threshold".
        Overrides:
        execute_object in class org.jgap.gp.CommandGene
      • execute_void

        public void execute_void​(org.jgap.gp.impl.ProgramChromosome a_chrom,
                                 int a_n,
                                 Object[] args)
        Overrides:
        execute_void in class org.jgap.gp.CommandGene
      • applyMutation

        public org.jgap.gp.CommandGene applyMutation​(int a_index,
                                                     double a_percentage)
                                              throws org.jgap.InvalidConfigurationException
        Specified by:
        applyMutation in interface org.jgap.gp.IMutateable
        Throws:
        org.jgap.InvalidConfigurationException
      • applyMutation

        public org.jgap.gp.CommandGene applyMutation()
                                              throws org.jgap.InvalidConfigurationException
        Mutates this CommandGene. A random command out of the set of allowed similarity measures is picked.
        Returns:
        A random command out of the set of the allowed similarity measures
        Throws:
        org.jgap.InvalidConfigurationException - when an invalid value has been passed to a Configuration object
      • clone

        public Object clone()
        Clones the object.
        Specified by:
        clone in interface org.jgap.util.ICloneable
        Overrides:
        clone in class Object
        Returns:
        cloned instance of this object
      • isValid

        public boolean isValid​(org.jgap.gp.impl.ProgramChromosome a_program,
                               int a_index)
        Overrides:
        isValid in class org.jgap.gp.CommandGene
      • isValid

        public boolean isValid​(org.jgap.gp.impl.ProgramChromosome a_program)
        Overrides:
        isValid in class org.jgap.gp.CommandGene