Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[pyclustering.container.kdtree][ccore.kdtree] Reduce amount of Euclidean distance calculation #379

Closed
annoviko opened this issue Oct 25, 2017 · 2 comments
Assignees
Labels
Enhancement Tasks related to enhancement and development Investigation Tasks related to investigation of found issues

Comments

@annoviko
Copy link
Owner

annoviko commented Oct 25, 2017

Introduction
Refer to #369 looks like amount of lack calculation during search can be significantly reduced. Investigation is required.

Resources

  1. Presentation about KD-searching - http://andrewd.ces.clemson.edu/courses/cpsc805/references/nearest_search.pdf.
  2. Book - M.Samet. The Design And Analysis Of Spatial Data Structures. 1994.

Description
Use DBSCAN algorithm to test results.

@annoviko annoviko added the Investigation Tasks related to investigation of found issues label Oct 25, 2017
@annoviko annoviko added this to the 0.7 (release point) milestone Oct 25, 2017
@annoviko annoviko self-assigned this Oct 25, 2017
@annoviko annoviko moved this from To Do to In Progress in 0.7.x Feature Development Oct 25, 2017
@annoviko annoviko removed this from the 0.7 (release point) milestone Jan 14, 2018
@annoviko annoviko added this to To Do in 0.8.0 Optimization Jan 14, 2018
@annoviko annoviko moved this from To Do to In Progress in 0.8.0 Optimization Feb 13, 2018
@annoviko annoviko added the Enhancement Tasks related to enhancement and development label Feb 15, 2018
@annoviko
Copy link
Owner Author

Implementation of optimized, balanced KD-tree is required, current implementation is original KD-tree. Optimized KD-tree should be implemented for python and CCORE.

@annoviko annoviko added this to To Do in 0.8.1 Feature Development via automation Feb 15, 2018
@annoviko annoviko removed this from In Progress in 0.8.0 Optimization Feb 15, 2018
@annoviko annoviko removed this from In Progress in 0.7.x Feature Development May 14, 2018
@annoviko annoviko removed this from To Do in 0.8.1 Feature Development May 27, 2018
@annoviko
Copy link
Owner Author

Current implementation is optimized and suitable for dynamical insertion and removing nodes, for example, for CURE. But in case DBSCAN and OPTICS there is no need to add new or remove old one nodes, static KD-tree is more suitable because it is balanced and ensure fast search procedure. Therefore new KD-tree should be introduced kdtree_static that will be used by OPTICS and DBSCAN.

@annoviko annoviko added this to To do in 0.10.0 Feature Development via automation Feb 10, 2020
@annoviko annoviko moved this from To do to In progress in 0.10.0 Feature Development Feb 11, 2020
annoviko added a commit that referenced this issue Feb 14, 2020
…n). #586 KD-tree visualizer. #379 Balanced KD-tree to reduce complexity of search procedure.
annoviko added a commit that referenced this issue Feb 18, 2020
annoviko added a commit that referenced this issue Feb 18, 2020
annoviko added a commit that referenced this issue Feb 21, 2020
0.10.0 Feature Development automation moved this from In progress to Done Feb 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Enhancement Tasks related to enhancement and development Investigation Tasks related to investigation of found issues
Projects
No open projects
Development

No branches or pull requests

1 participant