Obliczanie wypukłej koperty

W algorytmów geometrycznych The obliczeniowy obwiedni wypukłej jest algorytmiczne problemem . Polega ona na obliczeniu ich wypukłej obwiedni , biorąc pod uwagę zestaw punktów .

Definicja

Wypukła część zbioru punktów jest najmniejszym zbiorem wypukłym, który zawiera je wszystkie. Jest to wielościan, którego wierzchołki są punktami zbioru. Obliczenie obwiedni wypukłej polega na obliczeniu zwartej reprezentacji obwiedni, najczęściej jej wierzchołków.

Jest to problem, który ma wiele zastosowań, na przykład w rozpoznawaniu wzorców, i który ma zasadnicze znaczenie dla geometrii obliczeniowej .

Algorytmy dla przypadku planarnego

Przypadek planarny to przypadek, w którym punkty są rozmieszczone na płaszczyźnie. Złożoność w czasie jest mierzona jako funkcja liczby punktów wejścia n i liczby punktów na obwiedni h . Istnieje wiele algorytmów dla tego przypadku.

Jarvis Walk

Idea spaceru Jarvisa (lub algorytmu pakowania prezentów ) polega na „zawinięciu” zestawu punktów w „opakowanie na prezent”: wieszamy ten papier w jednym z punktów, rozciągamy go, a następnie obracamy wokół punktu Chmura. Złożoność algorytmu wynosi O (nh) .

Podróż Grahama

Oczywiście Graham (aka Algorytm Grahama ) jest znalezienie punktu najmniejszego osi x, sortować wszystkie inne punkty z kąta robią z niego (a oś x), a następnie rozważyć Trio z kolejnych punktów, aby ustalić, które z nich są w kopercie. Jego złożoność polega na sortowaniu , to znaczy O (n.log (n)) .

Algorytm Chana

Algorytm Chan , przebiega w kilku etapach. Najpierw podzielenie punktów na kilka grup, następnie obliczenie wypukłych obwiedni tych grup za pomocą algorytmu w O (n.log (n)) (jak spacer Grahama ), a na koniec spacer Jarvisa przy użyciu tych już obliczonych obwiedni . Jego złożoność jest w O (n.log (h)) .

Quickhull

Quickhull to algorytm dziel i zwyciężaj . Jego średnia złożoność wynosi O (n.log (n)). Jego najgorsza złożoność wynosi O (n²).

Algorytm Shamosa

Algorytm Shamosa to algorytm dziel i zwyciężaj. Jego złożoność to O (n.log (n)).

Algorytm Kirkpatricka i Seidla

Algorytm Kirkpatrick i Seidel  (w) ma złożoność O (n.log (H)) .

Inne algorytmy

Istnieją inne algorytmy, takie jak algorytm Andrew.

Algorytmy dla większych wymiarów

Algorytm Preparata-Hong pracuje wymiarach 2 i 3.

Dla wymiarów większych niż 2 działa algorytm quickhull i algorytm Chana.

Przybliżenie

Istnieją również algorytmy przybliżające wypukły kadłub.

Uwagi i odniesienia

  1. Franco P. Preparata i Michael Ian Shamos, „Convex hulls: Basicgorithms , w: Computational Geometry , Sringer, 1985( prezentacja online )
  2. Arnaud Jehanne, „  Calculer une wrapper convexe  ” , na Uniwersytecie w Bordeaux .

Linki zewnętrzne