Clustering with a distance matrix
I have a set of data which I wish to cluster.
I have computed a distance measure between each pair of data, but I am limited in that I am unable to compute a measure between each data point and an 'arbitrary' point in space. In addition, the distance measures do not necessarily satisfy the triangle inequality.
I would like to set as a clustering parameter something like a 'minimum distance for two points to be in the same cluster'. I can then find all the edges that satisfy this similarity measure, and treat each remaining subgraph as one cluster.
However, this means that if point A is similar to point B, and B is similar to C, and C is similar to D, point A will end up in the same cluster as point D, even if A and D are very different.
Does anyone have any suggestions as to how I could use this clustering method, but prevent this 'daisy-chaining' of pairwise-similar vectors?