|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object net.sourceforge.cilib.problem.OptimisationProblemAdapter net.sourceforge.cilib.problem.mappingproblem.MappingProblem net.sourceforge.cilib.problem.mappingproblem.LinearMappingProblem
public class LinearMappingProblem
This class provides an adapter for implementation of NonlinearMapping evaluation functions. The class was written in order to make it easier to write new ways of evaluating how effective a non-linear mapping is, this allows for comparing different methods of evaluation. The reason the mapping is non-linear because it is not reverseable.
Field Summary |
---|
Fields inherited from class net.sourceforge.cilib.problem.OptimisationProblemAdapter |
---|
dataSetBuilder, fitnessEvaluations |
Constructor Summary | |
---|---|
LinearMappingProblem()
|
|
LinearMappingProblem(LinearMappingProblem copy)
|
Method Summary | |
---|---|
DomainRegistry |
getBehaviouralDomain()
Returns the domain component that describes the search space of the needed behavioral characteristics of the problem. |
LinearMappingProblem |
getClone()
Create a cloned copy of the current object and return it. |
DomainRegistry |
getDomain()
Returns the domain component that describes the search space for this problem. |
int |
getMatrixSize()
Returns the dimension as required above. |
protected void |
performMapping(Matrix<Double> input,
Vector matrix,
Matrix<Double> output)
This function performs the actual mapping. |
Methods inherited from class net.sourceforge.cilib.problem.mappingproblem.MappingProblem |
---|
calculateFitness, getDistanceInputVect, getInputDim, getNumInputVectors, getOutputDim, setDataSetBuilder, setEvaluator |
Methods inherited from class net.sourceforge.cilib.problem.OptimisationProblemAdapter |
---|
accept, changeEnvironment, getChangeStrategy, getDataSetBuilder, getFitness, getFitnessEvaluations, setChangeStrategy |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public LinearMappingProblem()
public LinearMappingProblem(LinearMappingProblem copy)
Method Detail |
---|
public LinearMappingProblem getClone()
OptimisationProblem
getClone
in interface OptimisationProblem
getClone
in interface Problem
getClone
in interface Cloneable
getClone
in class OptimisationProblemAdapter
Object.clone()
protected final void performMapping(Matrix<Double> input, Vector matrix, Matrix<Double> output)
evaluateMapping
function.
The dimension of the input vector (M) must always be greater than the
dimension of the output vector (D). This is not checked for as the
function will not break should this not hold - it just doesn't make
sense.
The structure of the matrix is a typical "C" convention, how the data
is stored depends on whether you look at the input and output vectors
as row or column vectors. In the case of column vectors the indexes
into the matrix would go accross with 0 at the top left, (M-1) top-right,
M*(D-1) at the bottom left and (M*D-1) at the bottom right. In the
case where you are working with row-vectors simply this whole scheme
just transposes. In the case of row-vectors this is rowvector * matrix,
in the case of column vectors this is matrix * columnvector.
performMapping
in class MappingProblem
input
- The input vector.matrix
- The matrix to be used for the mapping.output
- The vector into which the output should be placed.public final int getMatrixSize()
getMatrixSize
in class MappingProblem
public DomainRegistry getDomain()
OptimisationProblem
DomainRegistry
object representing the search space.public DomainRegistry getBehaviouralDomain()
OptimisationProblem
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |