
On Sun, 3 Jul 2005 15:07:49 +0000 (UTC), Thorsten Ottosen wrote
D. Kevin McGrath <dmcgrath <at> cs.indiana.edu> writes:
I'm interested in adding support for arbitrary metrics (euclidean distance, taxi-cab, etc) to boost so that I can make use it, as well as some alternate tree structures, such as kd-trees. I can't quite figure out where they would be most appropriately placed, and it doesn't seem as if there is enough (or enough similarity) to have a totally separate library. Anyone have any thoughts?
It might make sense to put it Boost.Stat, ie, a statistics package for boost.
There are some basic stuff in the sandbox in the "stat" directory, but I have stalled development currently (for several reasons, most notably lack of time). My next step would have been to add generic matrix algorithms to implement stuff like inversion. Anyway, I feel kd-trees and metrics would fit nicely into this lib.
The statistics algorithms fit into a the general concept of algorithms. We haven't done this consistently yet, but we've started putting these things into groups under 'algorithms'. For example, 'boost/algorithm/string' and 'libs/algorithm/string' for string algorithms. Also, as I recall Tom Brinkman had some proposals for statistics around...which I don't think have gone anywhere yet.... kd-trees seem like they should be a separate library to me. They have uses outside statistics. There are also a couple other 'tree library' proposals floating around somewhere. It's an interesting question if we should consider refactoring the boost tree to have something like 'libs/containers' for the plethora of container types in boost... Jeff