Mantis - ALGLIB
Viewing Issue Advanced Details
487 Data analysis minor have not tried 2012-09-06 09:48 2012-09-25 11:18
SergeyB  
SergeyB  
normal  
resolved  
fixed  
none    
none 3.7.0  
Unspecified
0000487: FIXED: infinite loop in k-Means when called for degenerate data
From http://forum.alglib.net/viewtopic.php?f=2&t=611 by andreas:

I have a situation where kmeansgenerate seems to be stuck in an infinite loop (C# version of alglib 3.6.0). The parameters are as follows (copied from the debugger):

xy: {double[57, 1]}
 [0, 0]: 12.244689632138986
 [1, 0]: 12.244689632138982
 [2, 0]: 12.244689632138986
 [3, 0]: 12.244689632138982
 [4, 0]: 12.244689632138986
 [5, 0]: 12.244689632138986
 [6, 0]: 12.244689632138986
 [7, 0]: 12.244689632138986
 [8, 0]: 12.244689632138986
 [9, 0]: 12.244689632138986
 [10, 0]: 12.244689632138989
 [11, 0]: 12.244689632138984
 [12, 0]: 12.244689632138986
 [13, 0]: 12.244689632138986
 [14, 0]: 12.244689632138989
 [15, 0]: 12.244689632138986
 [16, 0]: 12.244689632138986
 [17, 0]: 12.244689632138986
 [18, 0]: 12.244689632138986
 [19, 0]: 12.244689632138989
 [20, 0]: 12.244689632138972
 [21, 0]: 12.244689632138986
 [22, 0]: 12.244689632138986
 [23, 0]: 12.244689632138986
 [24, 0]: 12.244689632138984
 [25, 0]: 12.244689632138982
 [26, 0]: 12.244689632138986
 [27, 0]: 12.244689632138986
 [28, 0]: 12.244689632138986
 [29, 0]: 12.244689632138986
 [30, 0]: 12.244689632138986
 [31, 0]: 12.244689632138986
 [32, 0]: 12.244689632138986
 [33, 0]: 12.244689632138986
 [34, 0]: 12.244689632138986
 [35, 0]: 12.244689632138982
 [36, 0]: 12.244689632138989
 [37, 0]: 12.244689632138986
 [38, 0]: 12.244689632138986
 [39, 0]: 12.244689632138986
 [40, 0]: 12.244689632138986
 [41, 0]: 12.244689632138986
 [42, 0]: 12.244689632138986
 [43, 0]: 12.244689632138986
 [44, 0]: 12.244689632138986
 [45, 0]: 12.244689632138986
 [46, 0]: 12.244689632138986
 [47, 0]: 12.244689632138986
 [48, 0]: 12.244689632138986
 [49, 0]: 12.244689632138986
 [50, 0]: 12.244689632138984
 [51, 0]: 12.244689632138986
 [52, 0]: 12.244689632138986
 [53, 0]: 12.244689632138986
 [54, 0]: 12.244689632138986
 [55, 0]: 12.244689632138986
 [56, 0]: 12.244689632138986

nPoints: 57
nVars: 1
k: 4
restarts: 1

Can you reproduce this situation?

I understand that this doesn't really constitute "good data", but unfortunately, I don't have a lot of control on the input values, they can be as meaningless as in this case. Currently I'm just filtering when there are less distinct values than clusters. I'm probably changing this to require some higher minimum range between the values and hope to avoid such situations.

I'm running the program in Vista 64bit and use VS2010 and .Net 4.
Issue History
2012-09-06 09:48 SergeyB New Issue
2012-09-06 09:48 SergeyB Status new => assigned
2012-09-06 09:48 SergeyB Assigned To => SergeyB
2012-09-06 09:48 SergeyB Programming language => Unspecified
2012-09-25 11:17 SergeyB Status assigned => resolved
2012-09-25 11:17 SergeyB Fixed in Version => 3.7.0
2012-09-25 11:17 SergeyB Resolution open => fixed
2012-09-25 11:18 SergeyB Summary Infinite loop in k-Means when called for degenerate data => FIXED: infinite loop in k-Means when called for degenerate data

There are no notes attached to this issue.