Clustering with maximum weight and distance conditions
I have a set of weighted 2D points (coordinates x, y and weight w for each sample).
I want to cluster these samples using minimum number of clusters, with the following conditions:
- Use the least number of clusters
- The sum of weighted distances (distance to the centroid * weight) for each point inside the cluster should not exceed a certain value w_max
- The maximum distance between any point in the cluster and the cluster centroid should not exceed a certain distance d_max
- Clusters should be circular
I tried using K-Means++, iterating k until the conditions are met, but I think there is a better solution to that.
What kind of algorithms should I look for? I would appreciate any help, thank you.
Topic clustering
Category Data Science