Package com.actelion.research.calc
Class SelfOrganizedMap
- java.lang.Object
-
- com.actelion.research.calc.DataProcessor
-
- com.actelion.research.calc.SelfOrganizedMap
-
public abstract class SelfOrganizedMap extends DataProcessor
-
-
Field Summary
Fields Modifier and Type Field Description static intcModeFastBestMatchFindingstatic intcModeGrowDuringOptimizationstatic intcModeNeighbourhoodGausseanstatic intcModeNeighbourhoodLinearstatic intcModeNeighbourhoodMexicanHatstatic intcModeTopologyUnlimitedprotected SOMControllermControllerprotected double[][]mInfluenceprotected intmModeprotected intmNXprotected intmNYprotected java.lang.Object[][]mReferenceVector
-
Constructor Summary
Constructors Constructor Description SelfOrganizedMap()Constructor to be used if SOM interna are read from a SOM file with read()SelfOrganizedMap(int nx, int ny, int mode)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description protected voidapplyInfluences(java.lang.Object inputVector, java.awt.Point location)protected voidapplyInfluencesSMP(java.lang.Object inputVector, java.awt.Point location)protected voidcalculateInfluences(double time)static java.lang.StringextractValue(java.lang.String theLine)java.awt.PointfindBestMatchLocation(java.lang.Object inputVector)java.awt.PointfindBestMatchLocationQuickly(java.lang.Object inputVector)java.awt.PointfindBestMatchLocationSMP(java.lang.Object inputVector)double[]findExactMatchLocation(java.lang.Object inputVector)doublegetChaos()intgetCreationMode()abstract doublegetDissimilarity(java.lang.Object vector1, java.lang.Object vector2)intgetHeight()double[][]getInfluence()doublegetMatchScore()protected abstract java.lang.ObjectgetMeanVector(java.lang.Object vector1, java.lang.Object vector2)protected doublegetNeighbourInfluence(int dx, int dy, double time)protected abstract java.lang.ObjectgetRandomVector()java.lang.ObjectgetReferenceVector(int x, int y)protected doublegetTimeInfluence(double time)intgetWidth()protected abstract voidinitializeNormalization()voidinitializeReferenceVectors(int nx, int ny, int mode)abstract java.lang.ObjectnormalizeVector(java.lang.Object vector)voidorganize()voidread(java.io.BufferedReader reader)protected abstract java.lang.StringreferenceVectorToString(int x, int y)voidsetController(SOMController sc)protected abstract voidsetReferenceVector(int x, int y, java.lang.String ref)protected abstract voidupdateReference(java.lang.Object inputVector, java.lang.Object referenceVector, double influence)voidwrite(java.io.BufferedWriter writer)-
Methods inherited from class com.actelion.research.calc.DataProcessor
addProgressListener, removeProgressListener, setThreadMaster, setVerbose, startProgress, stopProgress, threadMustDie, updateProgress
-
-
-
-
Field Detail
-
cModeNeighbourhoodGaussean
public static final int cModeNeighbourhoodGaussean
- See Also:
- Constant Field Values
-
cModeNeighbourhoodMexicanHat
public static final int cModeNeighbourhoodMexicanHat
- See Also:
- Constant Field Values
-
cModeNeighbourhoodLinear
public static final int cModeNeighbourhoodLinear
- See Also:
- Constant Field Values
-
cModeTopologyUnlimited
public static final int cModeTopologyUnlimited
- See Also:
- Constant Field Values
-
cModeGrowDuringOptimization
public static final int cModeGrowDuringOptimization
- See Also:
- Constant Field Values
-
cModeFastBestMatchFinding
public static final int cModeFastBestMatchFinding
- See Also:
- Constant Field Values
-
mController
protected SOMController mController
-
mReferenceVector
protected java.lang.Object[][] mReferenceVector
-
mNX
protected int mNX
-
mNY
protected int mNY
-
mMode
protected int mMode
-
mInfluence
protected double[][] mInfluence
-
-
Method Detail
-
initializeReferenceVectors
public void initializeReferenceVectors(int nx, int ny, int mode)
-
setController
public void setController(SOMController sc)
-
getWidth
public int getWidth()
-
getHeight
public int getHeight()
-
getCreationMode
public int getCreationMode()
-
organize
public void organize()
-
getReferenceVector
public java.lang.Object getReferenceVector(int x, int y)
-
getInfluence
public double[][] getInfluence()
-
getChaos
public double getChaos()
-
getMatchScore
public double getMatchScore()
-
getTimeInfluence
protected double getTimeInfluence(double time)
-
getNeighbourInfluence
protected double getNeighbourInfluence(int dx, int dy, double time)
-
applyInfluences
protected void applyInfluences(java.lang.Object inputVector, java.awt.Point location)
-
applyInfluencesSMP
protected void applyInfluencesSMP(java.lang.Object inputVector, java.awt.Point location)
-
findBestMatchLocation
public java.awt.Point findBestMatchLocation(java.lang.Object inputVector)
-
findBestMatchLocationSMP
public java.awt.Point findBestMatchLocationSMP(java.lang.Object inputVector)
-
findBestMatchLocationQuickly
public java.awt.Point findBestMatchLocationQuickly(java.lang.Object inputVector)
-
findExactMatchLocation
public double[] findExactMatchLocation(java.lang.Object inputVector)
-
calculateInfluences
protected void calculateInfluences(double time)
-
write
public void write(java.io.BufferedWriter writer) throws java.io.IOException- Throws:
java.io.IOException
-
read
public void read(java.io.BufferedReader reader) throws java.lang.Exception- Throws:
java.lang.Exception
-
extractValue
public static java.lang.String extractValue(java.lang.String theLine)
-
referenceVectorToString
protected abstract java.lang.String referenceVectorToString(int x, int y)
-
setReferenceVector
protected abstract void setReferenceVector(int x, int y, java.lang.String ref) throws java.lang.Exception- Throws:
java.lang.Exception
-
initializeNormalization
protected abstract void initializeNormalization()
-
updateReference
protected abstract void updateReference(java.lang.Object inputVector, java.lang.Object referenceVector, double influence)
-
getMeanVector
protected abstract java.lang.Object getMeanVector(java.lang.Object vector1, java.lang.Object vector2)
-
getRandomVector
protected abstract java.lang.Object getRandomVector()
-
normalizeVector
public abstract java.lang.Object normalizeVector(java.lang.Object vector)
-
getDissimilarity
public abstract double getDissimilarity(java.lang.Object vector1, java.lang.Object vector2)
-
-