public void resetCentroid() {
		
		int size= this.songMap.size();
		
		// if there are no songs, there can be no centroid
		if(size == 0)
			return;
		
		// if there's only one song, the centroid will be in the same position as that song
		if(size == 1) {			
			Iterator<Song> iterm= this.songMap.values().iterator();
			this.centroid= iterm.next().getPosition();
			return;
		}
		
		for(int i= 0; i< this.dimensions; ++i) 
			this.centroid[i]= 0.0;
		
		Iterator<Song> iter= this.songMap.values().iterator();
		while(iter.hasNext()) {
			double[] currSong= iter.next().getPosition();
			for (int i= 0; i< this.dimensions; ++i) {
				this.centroid[i] += currSong[i]; 
			}	
		}

		for(int i= 0; i< this.dimensions; ++i)
			this.centroid[i] = this.centroid[i] / (double) this.songMap.size();

		return;
	}