The default settings for clustering seems to work fine- specifically the EuclideanDistanceFunction. However, I want to run the clustering with spatial data in the form of lng/lat and when I change the distance function elki crashes on me:
Running: -dbc.in /tmp/test_data_lnglat-test.dat -db.index tree.spatial.rstarvariants.deliclu.DeLiCluTreeFactory -algorithm clustering.DeLiClu -algorithm.distancefunction geo.LngLatDistanceFunction -deliclu.minpts 4
Task failed
java.lang.UnsupportedOperationException: MBR to MBR mindist is not yet implemented.
at de.lmu.ifi.dbs.elki.distance.distancefunction.geo.LngLatDistanceFunction.doubleMinDist(Unknown Source)
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.processDataPagesDouble(Unknown Source)
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.processDataPagesOptimize(Unknown Source)
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.initHeaps(Unknown Source)
at de.lmu.ifi.dbs.elki.algorithm.KNNJoin.run(Unknown Source)
at de.lmu.ifi.dbs.elki.algorithm.clustering.DeLiClu.run(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at de.lmu.ifi.dbs.elki.algorithm.AbstractAlgorithm.run(Unknown Source)
at de.lmu.ifi.dbs.elki.workflow.AlgorithmStep.runAlgorithms(Unknown Source)
at […]
Its not clear (to me) what this error means. Is it possible the clustering functions do not work with geo spatial data?
Is there a simple workaround for this? Would it be difficult to implement the required function (mindset)?