class KohonenSet{ float learningRate= .5; int numNodes, numWeights; int vNodes, hNodes; float MAX_ITERATIONS = 500; int iterationCounter = 0; float neighborDist; float weightArray[][]; //an array of 'node' by 'weight' dimensions float kset[][]; //values to be sorted Integer ksetRandomOrder[]; final float mapHeight= 730; void KohonenSet(){ } void initWeights(int hNodes, int vNodes, int numWeights){ weightArray = new float[vNodes*hNodes][numWeights]; numNodes = vNodes*hNodes; this.hNodes = hNodes; this.vNodes = vNodes; this.numWeights = numWeights; for (int i=0; i MAX[weight]) MAX[weight] = kset[item][weight]; if (kset[item][weight] < MIN[weight]) MIN[weight] = kset[item][weight]; } } for (int weight=0; weight