Skilgannon's kd-tree
They're pretty much tied. Mine might be a little faster on systems where the data in the Kd-Tree is frequently pushed out of cache.
No, as I said above, they are mostly the same except for cache conditions.
3rd gen is the fastest of Rednaxela's trees. There's also a k-NN algorithm benchmark if you want to run some tests.
Voidious can you make a version of knn.jar with Julian Kent's tree and give instructions on how to use knn.jar on ubuntu 13.04
I've never used it, sorry.
Why not just pick Skilgannon's or Rednaxela's and go with it? The speed difference will be negligible. Unless you're locked into some insane batch job on a supercomputer upon choosing, I reckon you'll spend more time trying to evaluate them than you'll save by using one over the other.
No difference between them.
3.0.0 had a small bug in the precise prediction code. Nothing to do with the Kd-Tree.
Try using this knn.jar, it has both trees as an option. Although that one isn't using my latest tree, you should be able to figure out how to change which tree it is using.
Seriously, the different in performance between RedGen3 and Skil are pretty negligible. You'd be better off putting the time into figuring out how to reduce a dimension of the data you're storing, or something like that, which will actually provide a speedup.
You'll need to extract the .jar file, and make a new wrapper class in net/robowiki/knn/implementations directory, similar to the other ones there. Then at the top of net/robowiki/knn/implementations/KNNBenchmark.java you'll need to add a reference to the tree you want to test, like the others are referenced.
You don't need to. Just run the KNNBenchmark by java KNNBenchmark.class
You need to navigate to the base directory where you extracted the files. Then try java net.robowiki.knn.KNNBenchmark
Just curious, what are you using the tree for?
This should be a good place to start [1]
i mean when i put drussgt 3.1.0's tree in the base directory where i extracted the files it doesn't work
There were some minor changes in the tree, so the adapter might need to be changed from new KDTree(...
to new KDTree.Euclidean(...
, but after that you're on your own. You haven't given any indication of what is wrong, why it isn't working or even exactly what you did.
I already explained that here and in the post above.