2

QHull (and perhaps other good implementations of QuickHull) works really well and fast in many cases. However, we know theoretically that its worst case can be O(n^2). In practice I have not seen any numerical example with many dimensions (i.e., 20 or 100) where QHull works poorly.

Do you know of a numerical example where QHull works poorly, or gives the wrong result, or whatever that shows it cannot be applied here.

Alef
  • 41
  • 1
  • 7
  • You mean "many data points", right? AFAIK quickhull is for two-dimensional data only. – According to Wikipedia, worst case is O(n²), O(n log n) is average. – A. Donda Dec 07 '13 at 17:59
  • 2
    Wikipedia: "processing usually becomes slow in cases of high symmetry or points lying on the circumference of a circle" – A. Donda Dec 07 '13 at 18:00
  • Either way, many data points, and / or many dimension. Actually that is correct that worst case is O(n^2). Thanks. I edited the question. – Alef Dec 07 '13 at 18:34

1 Answers1

3

For multidimensional cases you have to generalize what A. Donda said: Generate a set of Points P with norm(p)==1 for each Point p in P. The convex hull is P (unless two points are identical) and will result in a bad running time of ~O(n^2)

For the 2D Case this will choose points on a circle, for 3D points on a sphere.

Daniel
  • 36,610
  • 3
  • 36
  • 69