One off-the-cuff idea: treat this as an image-processing
- Segment your world into a grid of "pixels", with
the intensity of each pixel being the number of problems
- Blur the "image" a bit, to group complaints that are
relatively close, but not in adjacent pixels. How much
you blur is probably a matter of experimentation.
- Run an edge detection algorithm over the
image. You now have borders defining clumps of
The major problem that I can see is that you might get
several closely-spaced groups blurring into each other,
creating a single super-large group.
Update: "Segment the world, find local maxima,
then calculate the voronoi diagram of the point
set described by the maxima" might work, too.
The hell with paco, vote for Erudil!