Hey Thomas, Did you actually mean to delete this?
Phil -------- Forwarded Message -------- Subject: [jira] [Deleted] (MATH-1164) Rare case for updateMembershipMatrix() in FuzzyKMeansClusterer Date: Thu, 6 Nov 2014 20:19:34 +0000 (UTC) From: Thomas Neidhart (JIRA) <j...@apache.org> Reply-To: iss...@commons.apache.org To: iss...@commons.apache.org [ https://issues.apache.org/jira/browse/MATH-1164?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Thomas Neidhart deleted MATH-1164: ---------------------------------- > Rare case for updateMembershipMatrix() in FuzzyKMeansClusterer > -------------------------------------------------------------- > > Key: MATH-1164 > URL: https://issues.apache.org/jira/browse/MATH-1164 > Project: Commons Math > Issue Type: Bug > Reporter: Pashutan Modaresi > Priority: Minor > Original Estimate: 1h > Remaining Estimate: 1h > > The function updateMembershipMatrix() in FuzzyKMeansClusterer assigns the > points to the cluster with the highest membership. Consider the following > case: > If the distance between a point and the cluster center is zero, then we will > have a cluster membership of one, and all other membership values will be > zero. > So the if condition: > if (membershipMatrix[i][j] > maxMembership) { > maxMembership = membershipMatrix[i][j]; > newCluster = j; > } > will never be true during the for loop and newCluster will remain -1. This > will throw an exception because of the line: > clusters.get(newCluster) > .addPoint(point); > Adding the following condition can solve the problem: > double d; > if (sum == 0) > d = 1; > else > d = 1.0/sum; -- This message was sent by Atlassian JIRA (v6.3.4#6332) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@commons.apache.org For additional commands, e-mail: dev-h...@commons.apache.org