You are on page 1of 12

Theoretical Computer Science 702 (2017) 4859

Contents lists available at ScienceDirect

Theoretical Computer Science


www.elsevier.com/locate/tcs

-Concave hull, a generalization of convex hull


Saeed Asaeedi, Farzad Didehvar , Ali Mohades
Department of Mathematics and Computer Science, Amirkabir University of Technology, Tehran, Iran

a r t i c l e i n f o a b s t r a c t

Article history: Bounding hulls such as convex hull, -shape, -hull, concave hull, crust, etc. offer a
Received 3 May 2017 wide variety of useful applications. In this paper, we explore another bounding hull,
Received in revised form 14 August 2017 namely -concave hull, as a generalization of convex hull. The parameter determines
Accepted 19 August 2017
the smoothness level of the constructed hull on a set of points. We show that it is NP-
Available online 24 August 2017
Communicated by P.G. Spirakis
hard to compute -concave hull on a set of points for any 0 < < . This leads us to a
generalization of Fekete work (when = ). We also introduce M AC P as an NP-hard
Keywords: problem similar to the problem of computing -concave hull and present an approximation
Convex hull algorithm for M AC P . The paper ends by implementing the proposed algorithm and
-Shape comparing the experimental results against those of convex hull and -shape models.
-Concave hull 2017 Elsevier B.V. All rights reserved.
Minimum area polygon
NP-complete
Approximation algorithm

1. Introduction

The convex hull of a set of points S in the plane, is the smallest convex polygon containing S. Many algorithms have been
introduced for computing the convex hull of points [18]. Convex hull is used in many elds such as pattern recognition,
image processing, GIS, sensor networks, path planning, etc. [915]. Computing the convex hull of S has an optimal O (n log n)
algorithm [3].
The Minimum Area Polygon (M A P ) of a set of points S in the plane, is the problem of computing the smallest simple
polygon containing S. The Maximum Area Polygon (M A X P ) of a set of points S in the plane, is the problem of comput-
ing the simple polygon with maximum area that passes through all points of S. Fekete in [16] considered M A P for the
grid points and denoted this problem by G A P . He demonstrated that G A P and M A X P are NP-complete [16,17]. He also
presented a 12 -approximation algorithm for M X A P [18] and proved that there does not exist any ( 23 + )-approximation
algorithm for this problem for 0 < < 13 , unless P = N P .
Here, we consider convex and concave hulls on the set of points in the plane. We introduce a generalization of convex
hull and M A P called -concave hull such that the parameter limits the internal angles of the constructed hull. We then
show that it is NP-hard to compute -concave hull on a set of points for any 0 < < .
Bae et al. [19] used convex hull to cover a set of points with convex sets of minimum total area or perimeter size.
In [20], Jin-Seo Park and Se-Jong Oh showed that for identifying the exact area occupied by a set of points, concave hull
region was more useful than convex hull. The concept of Concave Hull was rst introduced as (non-convex footprint) by
A. Galton and M. Duckham in [21] and then it was expanded in [22]. In [20] an algorithm was presented to compute

* Corresponding author.
E-mail address: didehvar@aut.ac.ir (F. Didehvar).

http://dx.doi.org/10.1016/j.tcs.2017.08.014
0304-3975/ 2017 Elsevier B.V. All rights reserved.
S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859 49

Concave Hull in d dimensions. Concave Hull has an effective applicability in the elds of shape reconstruction [23,24],
material computation [24], GIS [25], dataset classication [26], etc.
The -shape is another generalization of convex hull which was introduced by Edelsbrunner in [27]. The -shape has
expanded applicability in shape reconstruction [28], space decomposition [29], sensor networks [30], bioinformatics [31],
feature detection [32], 3D visualization (of brain tumor) [33], etc.
-hull and Crust are another non-convex hulls to cover a set of points. The Crust concept was developed as a graph on
the set of points in R 2 [34] and R 3 [35] and -hull was introduced in [36] as a simple subpolygon of Delaunay triangulation
of the set of points.
The -concave hull on a set of points in the plane is a non-convex hull with angular constraints under the minimum
area condition. For = 0, computing -concave hull is equivalent to that of computing convex hull with O (n log n) optimal
algorithm. For = , this problem converts to M A P as it is proved to be NP-complete.
In this paper, we put forward an NP-hard problem called Maximum Area Clustering Problem ( M AC P ) on a set of
points which produces the same results as the -concave hull. We also present a 14 -approximation algorithm for M AC P .
The structure of the paper is as follows. In section 2 we unveil the concept of -polygon and -concave hull and prove
that computing an -polygon with a given area on a set of points is an NP-complete problem. Likewise, we demonstrate
that it is NP-hard to compute -concave hull on a set of points for any 0 < < . In section 3 we introduce M AC P as
a problem equivalent to that of computing -concave hull and an approximation algorithm is presented to deal with it. This
is then followed by a discussion on the factor of the approximation algorithms for -concave hull. Section 4 is devoted to
experimental work and implementing our proposed approximation algorithm. We then compare the results achieved by this
solution against known methods that employ convex hull and -shape to verify its outperformance. Section 5 concludes the
paper.

2. -Concave hull

As was mentioned in the previous section, many concepts have been studied as concave hull of a set of points. Previous
studies on concave hull did not consider any limitation on angles nor area of the constructed polygons. In this section we
disclose the concept of -concave hull as a concave hull with angular constraint under the minimum area condition. Let us
rst dene the concept of -polygon as follows:

Denition 2.1. Let A be a simple polygon. A is called -polygon if all internal angles of A are equal or less than + .

Denition 2.2. -Concave hull on a set of points S is an -polygon containing S with minimum area such that all the
vertices of the polygon are a subset of S.

Based on those denitions, when = 0, -polygon is equal to a convex polygon, hence, the -concave hull of S for = 0
is equal to convex hull of S. In the case of = , -polygon is equal to a simple polygon, hence, computing -concave
hull of S for = converts to M A P for S. Consequently, -concave hull denition is a generalization of the convex hull
concept and computing -concave hull, is a generalization of M A P . The computing convex hull problem has O (n log n)
optimal algorithm while M A P is NP-complete.
Fig. 1 illustrates -concave hulls on a set of points where we consider various values for the parameter . As stated
above, when = 0, -concave hull is equal to convex hull of the points. For = 12 , concave angles would be constructed
in -concave hull. When > 120 , the boundary of -concave hull would pass through all of the points. When = 180 ,
-concave hull is a simple polygon with minimum area that passes through the points which is a solution of M A P for this
set of points.

Remark 1. -Concave hull on a set of points is not unique for a xed value of . Fig. 2 shows an example of two different
-concave hulls on a set of points.

Based on the Remark 1, -concave hull on a set of points is not unique for a xed value of . The following theorem,
however, expresses that the set of boundary points on various -concave hulls with a xed value of is unique on the set
of points.

Theorem 2.1. For a set of points S and a xed value of , if A 1 and A 2 are two -concave hulls on S, then boundary points of A 1 and
A 2 will be equal.

Proof. Let B 1 , B 2 and C H be the boundary points of A 1 , A 2 and convex hull of S, respectively. By reductio ad absurdum,
suppose B 1 and B 2 are not equal. Without loss of generality, we have a point called z in which z / B 2 and z B 1 . So, the
polygonal chain C 1 = ax1 x2 . . . z . . . xn b from a to b is on B 1 such that a, b C H are two adjacent vertices in C H . As a, b B 2 ,
so the polygonal chain C 2 = ay 1 y 2 . . . ym b is also placed on B 2 . Fig. 3 shows the chains. Since the beginning and ending
vertices of the chains C 1 and C 2 are equal and z C 1 but z / C 2 , C 1 and C 2 cross each other at least once at a point c. As
50 S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859

Fig. 1. Various values of for -concave hull on a set of points.

Fig. 2. Images a and c display two -concave hulls, image b shows both of them having the same area.

Fig. 3. The edges ax1 x2 ...b and ay 1 y 2 ...b show the chain related to A 1 and A 2 , respectively.

far as A 1 and A 2 contain all of the points of S, the cross point c will be located on the rst and last edges. In other words,
c xn b and c ay 1 . If the cross point locates on another point of C 1 such as c  xi x j , then all of the boundary points of C 1
which are succeeded by x j i.e. x j +1 , x j +2 , . . . , xn will be located outside of the polygon A 2 which contradicts the denition
of -concave hull.
Let i denote the internal angle of xi in A 1 and i denote the internal angle of y i in A 2 . We construct polygon A 3 by
eliminating xn b and ay 1 edges and connecting the two xn and y 1 vertices to each other. The area of polygon A 3 is less than
polygons A 1 and A 2 . Since the points a and b are on the boundary of convex hull, the internal angle of xn in A 3 is smaller
than n and the internal angle of y 1 in A 3 is smaller than 1 . Hence, all internal angles of A 3 will be smaller than +
and A 3 will be an -polygon with smaller area than A 1 and A 2 which contradicts the denition of -concave hull. 2

Computing an -polygon on a set of points is a P problem (it is enough to construct a polygon that contains the points
and its internal angles are less than + ). The convex hull of the set of points has these features for any value of . But,
we show that computing an -polygon with a given area on a set of points is an NP-complete problem.

Theorem 2.2. Computing an -polygon with a given area on a set of points is NP-complete for any 0 < < .
S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859 51

Fig. 4. Regular 6-gon with the area of A R = 6416 cot( 6 ) and 1416
2
-concave hull with the area of x = A R 2
.

Proof. We compute and analyze the internal angles and the area of polygon in polynomial time. Checking the points which
are inside or outside of a polygon is also executable in polynomial time. Hence, computing an -polygon with a given area
on a set of points is in NP.
Consider S as a set of points, x as a real number and as a given angle. The goal is to nd an -polygon containing
S with the area of x. We reduce the subset sum problem to this problem. The subset sum problem is a well-known
set recognition problem which is NP-complete [37]. Let M = {m1 , m2 , . . . , mn } be a set of natural numbers and k be a given
natural number. The subset sum problem is to determine whether or not there exists a subset of M whose sum is equal to k.
The following steps reduce the subset sum problem to that of computing -polygon with a given area for any 0 < < :

1. set r = max {mi },


1i n
2. set t = 2r cot( /2),
3. let R be a regular n-gon such that the length of each edge is t,
4. let E = {e 1 , e 2 , . . . , en } be the set of all edges of R,
5. insert n points Q = {q1 , q2 , . . . , qn } within the R such that each point q i places on the perpendicular bisector of e i at
the distance of mi . Any point q i corresponds to mi ,
 2
6. set x = A R kt
2
and P = Q V R such that A R = nt4 cot( n ) refers to the area of R and V R refers to the all vertices
of R,
7. compute -polygon on S with area of x,
8. let M  M be the answer of subset sum problem. Any q i on the boundary of computed -polygon corresponds to
mi M  .

Fig. 4 illustrates further the reduction steps. 2

Fig. 4 shows a solution for the subset sum problem using -polygon when = /2 in which M = {2, 3, 4, 6, 7, 8} and
k = 14. -polygon with area x passes through the points that correspond to the numbers 2, 4 and 8. So M  = {2, 4, 8} is an
answer to the given subset sum problem.
In [16], Fekete demonstrated that the grid avoiding polygon problem (G A P ) is NP-complete. G A P is the problem of
computing a simple polygon on a set of points on a grid that avoids any grid points inside or on the boundary. He argued
that such polygon is equivalent to a polygon with minimum area of n2 1 on its set of points. As far as Theorem 2.2 is
concerned, computing an -polygon with an area of n2 1 on a set of points on a grid, is still an NP-complete problem.

Corollary 2.2.1. Let S be a set of points on a grid and 0 < < , the problem of nding a simple polygon on S which avoids any grid
points in the boundary or inside of it such that all of the internal angles are less than or equal to + is a generalization of G A P .
Based on Theorem 2.2, this extended version of problem is NP-complete.

Theorem 2.2 shows that computing -polygon with a given area on a set of points is NP-complete. An -concave hull
on a set of points is an -polygon with minimum area on these points. In sequel, we reduce the clustering problem to that
of computing -concave hull on a set of points. The clustering problem is presented as follows:

Denition 2.3. [37] Let d : S S Z 0+ be a distance function such that S is a nite set of points. For two integers k, B N,
the decision whether or not a partition of S into k disjoint subsets C 1 , C 2 , ..., C k exists such that for all 1 i k and all
x, y C i , d(x, y ) B, is called a clustering problem.

A Clustering Problem remains NP-complete even for xed k = 3 [37]. In [38] a global optimization algorithm is presented
to solve the hard clustering problem. We now introduce the triangle clustering problem as an example of a clustering
problem, but rst let us dene -path as below:
52 S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859

Denition 2.4. Let a1 a2 a3 be a triangle and S be a set of points inside the triangle. For p 1 , p 2 , . . . , p r S and i
= j
{1, 2, 3}, we call the chain L = ai , p 1 , p 2 , ..., pr , a j an -path, if the polygon ai p 1 p 2 . . . pr a j ai is a simple empty polygon
such that all internal angles of p i in polygon is greater than .

Denition 2.5. Let S be a set of points inside the triangle a1 a2 a3 . Triangle clustering problem is a decision problem that
asks whether or not there exists a clustering of S into 3 partitions C 1 , C 2 and C 3 such that for all 1 i 3 and all x, y C i ,
d (x, y ) 1 in which the distance function d : S S {0, 1, 2} is dened as follows:

0 if x = y
d (x, y ) = 1 if path = ai , . . . , x, . . . , y , . . . , a j (1)

2 o.w.

Based on [39] and [37], a triangle clustering problem is NP-complete. In sequel, by applying Lemma 2.3, we reduce this
problem to that of computing -concave hull.

Lemma 2.3. Let S be a set of points inside the triangle a1a2 a3 and A be an -concave hull on S {a1 , a2 , a3 }. A passes through all
points of S if and only if the triangle clustering problem with distance function d : S S {0, 1, 2} (which = ) clustered S
into 3 partitions.

Proof. To prove the if part, let us assume A = a1 C 1 a2 C 2 a3 C 3 a1 passes through all points of S. Based on the denition
of -concave hull, a1 C 1 a2 , a2 C 2 a3 and a3 C 3 a1 are all -paths. Hence, C 1 , C 2 and C 3 are partitions of S using distance
function d .
In order to prove the only if part, without loss of generality, assume that points of S are on the grid. Based on the
Picks theorem [40], the area of a polygon on S is equal to b2 + m 1 as b is the number of grid points on the boundary of
polygon and m is the number of grid points which are inside the polygon.
Now let us suppose that S is clustered into 3 partitions C 1 , C 2 and C 3 . Since d (x, y ) = 1 for any x, y C 1 ,
ai C 1 a j is a -path. Similarly, a j C 2 ak and ak C 3 ai are -paths such that i
= j
= k {1, 2, 3}. As = , the polygon
A = ai C 1 a j C 2 ak C 3 ai , is an -polygon which passes through all points of S. By reductio ad absurdum, suppose that there is
an -concave hull as A 2 which does not pass through all points of S. Based on the Picks theorem, and the fact that the
number of internal points of A 2 is more than that of A and the number of boundary points of A 2 are less than that of A,
the area of A is less than that of A 2 . This contradicts the denition of -concave hull. 2

Theorem 2.4. Computing -concave hull on a set of points is an NP-complete problem for any 0 < < .

Proof. The following steps reduce the triangle clustering problem to that of computing -concave hull:

1. set S 2 = S {a1 , a2 , a3 } and = ,


2. compute -concave hull on S 2 and let A = a1 , C 1 , a2 , C 2 , a3 , C 3 , a1 be the computed hull such that C 1 , C 2 and C 3 are
disjoint subsets of S,
3. if A passes through all points of S, the partitions C 1 , C 2 and C 3 cluster S as an answer to the triangle clustering
problem. Otherwise, S cannot be clustered into 3 partitions using d .

Based on Lemma 2.3, S clusters into C 1 , C 2 and C 3 if and only if A passes through all points of S. 2

Fekete showed that M A P is an NP-complete problem. As long as = , computing -concave hull converts to M A P ,
and Theorem 2.4 showed that the generalization of this problem is NP-hard for any 0 < < .

3. Approximation algorithm

Let S be a set of points in the plane. To construct a polygon containing S we employ two methods, called incremental
and decremental methods. In the decremental method, rst we compute the convex hull of S and then by eliminating the
subpolygons in a decremental manner, we obtain the desired polygon. But in the incremental method, rst by nding small
polygons on the points of subsets of S and gathering them, we obtain the desired polygon in an incremental manner. So,
these methods enable us to construct a polygon with minimum area on a set of points: First by eliminating the subpolygons
with maximum area from convex hull and second by gathering the triangles with minimum area on the points.
In this section we investigate -M AC P as an NP-hard problem to compute -concave hull in a decremental manner.
We also present an approximation algorithm for -M AC P and discuss the factor of incremental approximation algorithms
(if it exists) for M A P on a set of points. In order to compute an approximated polygon with minimum area, triangles
with minimum area are gathered consecutively. Considering the area of smallest triangle on a set of points leads us to a
well-known problem in the eld of discrete geometry and discrepancy theory [41], called the Heilbronns triangle problem.
S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859 53

Table 1
Works on Heilbronns triangle problem.

Year Author Comment Bound


1950 Heilbronn Conjecture of the upper bound n = O (1/n2 )
1951 P. Erdos (Appendix of [45]) The Heilbronns conjecture is tight if it is true n = (1/n 2
)
1951 K.F. Roth [45] The rst nontrivial upper bound n = O (1/nlog log n)
1972 W.M. Schmidt [46] Improving the upper bound n = O (1/n log n)
1972 K.F. Roth [47] Improving the upper bound n = O (1/n1.105 )
1972 K.F. Roth [43] Improving the upper bound n = O (1/n1.117 )
1981 Komls, Pintz, Szemerdi [44] Improving the upper bound n = O (1/n8/7 )
1982 Komls, Pintz, Szemerdi [42] Presenting a lower bound and disproving the Heilbronns conjecture n = (log n/n2 )
1999 T. Jiang, M. Li, P. Vitnyi [48] The expected size of Heilbronns triangles Exp ( n ) = (1/n3 )
2001 Barequet [49] Presenting a lower bound in R d nd = (1/nd )
2003 Lefmann [50] Improving lower bound in R d nd = (log n/nd )
2d+1
2005 Brass [51] Presenting an upper bound in R d nd = O (1/n 2d )
20042016 Online case and approximation in R 2 and R d [5255]

Fig. 5. A a simple polygon. CH the convex hull.

Let us consider S as a set of n points in a unit square and ( S ) as the area of the smallest triangle determined by
points of S. Let also Q n be the set of all point sets with cardinality n in a unit square. Thus, n = Sup { ( S )| S Q n }.
Heilbronns triangle problem is the problem of analyzing the value of n . This problem was rst raised by Heilbronn
in 1950, who expressed n = O ( n1 ) as a trivial upper bound and claimed that n = O ( n12 ). In 1982, Komls, Pintz and
log n
Szemerdi disproved the Heilbronns conjecture and expressed n = ( n2
) [42]. Also in 1972, Roth showed that by any
1
> 0 we could have n = O ( n1.117 ) [43]. In 1981, Komls, Pintz and Szemerdi improved the upper bound and obtained
n = O ( n8/17 ) [44]. Table 1 displays some of the studies on this problem.
In what follows next, we explore -M AC P as a decremental method and then use the bound Szemerdi, et al. achieved
in [44] to investigate the approximation factor for M A P by employing the incremental methods.
Consider S as a set of points, C H as the convex hull of S with m edges and E i as the ith edge of C H . As depicted in
the Fig. 5, any polygon A on S, clusters the internal points of C H into m + 1 partitions C 1 , C 2 , . . . , C m+1 . For 1 i m, any
partition C i corresponds to the edge E i and C m+1 corresponds to the internal points of A. The corresponding region to E i ,
which is denoted by R i , is equal to the region between E i and edges of A which passes through C i . Hence, the area of A is
computed as:

Area( A ) = Area(C H ) im=1 Area( R i ) (2)


According to equation (2), the area of polygon A is minimum if and only if the value of im=1 Area( R i )
is maximum.
Hence, M A P for a set of points is equal to the clustering problem of points in a way that the sum of areas of corresponding
regions of convex hull edges should be maximum. In the following, we dene -M AC P .

Denition 3.1. Let S be a set of points, C H be the convex hull of S with m edges and E i be the ith edge of C H . The
-M AC P on S is the problem of clustering the internal points of C H into m + 1 partitions C 1 , C 2 , . . . , C m+1 such that the
sum of the area of all corresponding regions of E i is maximum and all internal angles of the constructed polygon are less
than + .

Suppose S is a set of points on a grid and A is a simple polygon on S which clusters the points of S into m + 1
partitions C 1 , C 2 , . . . , C m+1 . Based on the Picks theorem, the area of R i is equal to |b i |/2 + |mi | 1 such that b
i is the
m
set of grid points on the boundary of R i and mi is the set of grid points contained in the interior of R i . If R = i =1 R i ,
m m m
M = i =1 |mi | and B = i =1 |b i |, then Area( R ) = i =1 Area( R i ) = B /2 + M m. Let polygon A be the optimal answer to
54 S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859

Algorithm 1.

1. let F = S { boundary points of C H } as available points,


2. for i = 1 to i = m
(a) construct R i with maximum area using available points F ,
(b) let B = boundary points of R i ,
(c) set F = F B,
3. set R = im=1 R i .

-M AC P on S. Hence, Area( R ) = im=1 Area( R i ) = B /2 + M m will be maximum. In the following, we present a greedy
algorithm as an approximation algorithm for -M AC P by maximizing the area of each region R i :
M X A P for a set of points is the problem of nding a polygon on points with maximum area that passes through all
points. Fekete in [16] proved that M X A P is an NP-complete problem. In the following lemma, we nd the approximation
factor of Algorithm 1 based on the factor for M X A P .

Lemma 3.1. If there exists any -approximation algorithm for M X A P , then Algorithm 1 yields a 2 -approximation algorithm for
-M AC P .

Proof. Let S be a set of points on a grid and suppose that C H is the convex hull and A is the -concave hull on S. Suppose
also that E X is an exact algorithm and A P X is a -approximation algorithm for M X A P on S. The computed polygons
which have used the E X and A P X in the second step of Algorithm 1 are denoted by A and A p , respectively. The union of
constructed regions in the optimal solution for -M AC P is denoted by R and the computed regions which have used the
E X and A P X are denoted by R and R p , respectively. Now we have Area( R ) = im=1 Area( R i ), Area( R ) = im=1 Area( R i ) and
|b |
p
|b | |b |
Area( R p ) = im=1 Area( R i ) such that Area( R i ) = 2i + |mi | 1, Area( R i ) = 2i + |mi | 1 and Area( R i ) = 2i + |mi | 1.
p p p

(b denotes the set of boundary grid points, m denotes the set of internal grid points and | S | denotes the cardinality of the
set S.)
We denote the cardinality of the set of internal, external and boundary grid points of polygon A ( A ) by M (M ), O (O )
and B (B ), respectively. In other words, B = im=1 |b i |, B = im=1 |bi |, M = im=1 |mi | and M = im=1 |mi |. If mci is the set of
common internal grid points of R i and R i , and moi is the set of internal grid points of R i R i , then moi = mi mci . Similarly,
boi = bi bci . Considering M o = im=1 |moi |, M c = im=1 |mci |, B o = im=1 |boi | and B c = im=1 |bci |, we have:

B Bc Bo
Area( R ) = + M m = + + Mc + Mo m
2 2 2

B Bo Bo
+ + M + M o m = Area( R ) + + Mo (3)
2 2 2
Bo
In inequality (3), we have Area( R ) Area( R ) + M o + 2
. So, to prove Area( R ) 2 Area( R ), it is enough to show
o
Bo |boi |
that M + B2 o
Area( R ). By reductio ad absurdum, suppose that M o + 2
> Area( R ). Consequently, im=1 |moi | + 2
>
m
i =1 Area( R i ) and there exists a j such that:

|boj |
|moj | + > Area( R j ) (4)
2
Since the moj and boj belong to the available points F of Algorithm 1, inequality (4) contradicts step 2.a of Algorithm 1 in
which the region R j constructs the largest polygon using the available points F . Hence,

1
Area( R ) 2 Area( R ) Area( R ) Area( R ) Area( R ) Area( R ) (5)
2 2
p
Since R i and R i are the ith constructed regions by the exact and -approximation algorithms, respectively, then we
have:
p
1 i m Area( R i ) Area( R i ) Area( R ) Area( R p ) (6)
By inequalities (5) and (6), we have: 2 Area( R ) Area( R p ) Area( R ). 2

1
Remark 2. Fekete presented a 2
-approximation algorithm for M X A P [18]. If 0 < < 13 , he proved that there was
no ( 23
+ )-approximation algorithm for this problem unless P = N P . Hence, Based on Lemma 3.1, Algorithm 1 is a
1
4
-approximation algorithm for -M AC P and this problem has no -approximation algorithm for > 23 unless P = N P .
Since the time complexity of the presented algorithm in [18] is O (n log n), then the time complexity of Algorithm 1 is
O (nm log n) such that n is the number of points and m is the number of convex hull edges.
S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859 55

Remark 3. If A is an optimal solution for -M AC P on S and C H is the convex hull of S, then B = C H A is an optimal
solution for M A P . Based on Lemma 3.1, a better approximation for M X A P leads us to a better approximation for -M AC P .
Likewise, a better approximation for -M AC P yields us a better approximation for M A P .

The presented algorithm in this section is a decremental approximation algorithm for -M AC P . It is notable that this
algorithm does not give us any approximation factor for M A P . The next theorem discusses the factor of incremental ap-
proximation algorithms (if it exists) for M A P .

Denition 3.2. M A P n is the problem of nding a minimum area polygon on a set of n points on a grid in a unit square.

Theorem 3.2. Let S be a set of n points on a grid. If M A P n on S has a n -approximation algorithm, then for any > 0 we have
n 2 n1/C7 such that C is a positive constant.

Proof. Let u be the area of grid cells, O P T be the polygon with minimum area A on S and A P X be the constructed
polygon by the n -approximation algorithm on S with area A. Hence, we have:

A A n A (7)

Based on the Picks theorem, the minimum possible value for the area of polygon with n points is equal to ( n
2
2
)u.
Suppose that this optimal polygon G A P exists on S. Hence, by inequality (7) we have:

n2
A n u ( ) (8)
2
We dene A as the area of smallest triangle in triangulation of A P X polygon. The number of A P X triangles is equal
to n 2, so, we have:

A (n 2) A (9)

Based on the inequality (8) and (9):


n u
A (10)
2
Clearly A n . So, by inequality (10):

n u 2
2 A n + n (2 A n ) (11)
2 u
Based on [42,44], there are positive constants C and c such that for any > 0, we have:
log n C
c < n < (12)
n2 n
8
7

inequalities (11) and (12) yield:

2 C
n (2 A 8
) (13)
u n 7

Obviously, A u /2. Hence, by inequality (13) we have:

2C
n 2 8
(14)
un 7
Let Q be the set of all grid points in the unit square. Since S is the set of n points on Q , the value of n is maximum
when S = Q . Clearly, in this conguration we have u = 1/n. The inequality (14) yields:

2C
n 2 1
2 (15)
n 7

Corollary 3.2.1. If M A P for a set of points has a -approximation algorithm, we have = supnN {n }. By inequality (15), we conclude
2.

Corollary 3.2.2. Let be the factor of approximation algorithm for the problem of computing an -concave hull on a set of points.
Since this problem is a generalization of M A P , we conclude from Theorem 3.2 that 2.
56 S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859

Fig. 6. Approximation errors (Er) using convex hull (CH), -shape (AS) and -concave hull (AH).

4. Implementation, application and experimental results

Often in path planning, approximated simple shapes are used instead of complex obstacles [56,57]. In [56,57] convex
hull is used to decompose a complex object to simpler pieces. In spite of above, Ghosh and Amato showed that convex hull
approximation might extremely wastes the free space [58]. -shape is a more suitable concept to reconstruct shapes and
surfaces. Edelsbrunner used -shape for reconstruction of a shape and surface [28]. Shape representations and description
techniques were examined in [59] and found to be applicable for searching images from remote database. In [60] polygonal
shapes were reconstructed in the real plane using Fourier samples.
In this section, we will compare the results obtained from Algorithm 1, dealt with in the previous section, with those
from reported methods of polygon approximation such as convex hull and -shape. 10 test samples were considered for
this operation. Each sample contained 100 random scaled polygons with xed cardinality. Since computing -concave hull
is NP-hard, we used Algorithm 1 to construct approximated -concave hull.

Denition 4.1. Let S be a set of points. An -shape on S which constructs a simple polygon is called -shape approxi-
mated polygon of S and the constructed polygon on S by using Algorithm 1 is called -concave hull approximated polygon
of S.

In the approximation of any random polygon using -shape, the value of has been computed in a way that the
-shape approximated polygon of vertices constructs the smallest polygon containing the random polygon. Likewise, in the
approximation of any random polygon using Algorithm 1, the value of has been computed in a way that the -concave
hull approximated polygon of vertices constructs the smallest polygon containing the random polygon.
Fig. 6 compares -shape and -concave hull approximation methods based on the approximation error. The x-axis
indicates vertices cardinality for each of the samples and the y-axis indicates approximation errors of each of the methods.
Here, the approximation error of a method is equal to the area difference between constructed random polygon and the
approximated polygon which is developed by the same method.
Fig. 7 compares accuracy of the two methods based on the number of desired results in each case. As an example,
considering 100 random examples with 30 vertices, in 64 cases -concave hull approximated polygon is more accurate than
its -shape and in the other hand, in 23 cases -shape approximated polygon is more accurate than its -concave hull
counterpart and in 12 cases the same results are obtained.
Theorem 4.2 expresses that for any polygon, by adding another vertex to the polygon at a far enough distance from the
other vertices, the approximation error of -concave hull would be less than that of -shape. By employing Theorem 4.2,
we have theoretical justication for the results.

Lemma 4.1. Let S be a set of points, x, y S and R be the largest radius of the empty circle which passes through the points x, y. R is
innite if and only if x and y are neighboring boundary points of the convex hull of S.

Proof. Based on the features of Voronoi diagram, both x and y points are neighboring boundary points of the convex hull,
if and only if their Voronoi cells are innite and the shared Voronoi edge between cells is innite segment. This innite
segment is the locus of the center of empty circles which passes through x and y. Hence, if we consider these circles radius
as R, it is innite if and only if x and y are neighboring boundary points of the convex hull of S. 2
S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859 57

Fig. 7. Number of superiority in approximation methods.

Fig. 8. On the left an -concave hull and an -shape have constructed the same polygon. The upper right shows the -shape polygon after adding x and
the lower right shows the -concave hull after adding x.

Fig. 9. Right side is a convex hull and the left side is an -concave hull of points.

Theorem 4.2. Let S be a set of points and C H be the boundary points of the convex hull of S and I S = S C H be the internal points
of the convex hull of S. There is a point x such that -shape approximated polygon of P {x} passes through no points of I S .

Proof. Let R S be the largest radius of the empty circle which passes through the points of I S . Let the distance between the
point x and the set S be more than d = 2R S . No -shape approximated polygon of S can pass through any point of I S to
cover point x. By Lemma 4.1 we conclude that R S is nite. 2

Based on Theorem 4.2, by adding a point x to a set of points S, if x is located at a far enough distance from S, it
causes global changes (changes which are not only in adjacent edges of x) in the -shape approximated polygon. But in the
approximated polygon constructed by -concave hull, these changes would be local (changing just the adjacent edges of x).
Fig. 8 shows these changes in an -shape approximated polygon and -concave hull approximated polygon. Theorem 4.2
and Fig. 8 justify that -concave hull is more desirable for polygon approximation in comparison to -shape. Theorem 4.2
and the similarity of -M AC P to -concave hull computation, conrm the results of Fig. 6 and 7.
Igrashi et al. in [61] used the convex hull on obtained mesh from 3D scanning of an object to design a cover. Lucieer et
al. used the -shape to decompose a shape into visually meaningful parts in [62]. In [63] a mesh reconstruction Delaunay-
based method is presented and the quality of mesh reconstruction is considered. Fig. 9 sketches tness of -concave hull
in comparison with that of convex hull in shape detection.
There are many suitable algorithms such as [34,64,65] for shape detection and curve reconstruction but in this paper
our goal is not to compete with these algorithms in general, but rather, to make a comparison among the three concepts
-concave hull, convex hull and alpha shape in the eld setting of shape detection.
58 S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859

5. Conclusion

We introduced a generalization of the concept of convex hull named -concave hull. Here, the parameter shows the
smoothness level of the constructed hull on the set of points. It is noteworthy to mention that the -concave hull concept
is equal to that of convex hull when = 0. When = , the problem of computing -concave hull converts to M A P .
We demonstrated that computing an -concave hull on a set of points was an NP-hard problem for any 0 < < . We
also discussed the approximation factor for M A P and -M AC P . At the end, by using the concept of -concave hull and
implementing Algorithm 1 for polygon approximation, in comparison to the convex hull and -shape, better results were
obtained.

References

[1] G.T. Toussaint, A historical note on convex hull nding algorithms, Pattern Recognit. Lett. 3 (1) (1985) 2128.
[2] J. oRourke, Computational Geometry in C, Cambridge University Press, 1998.
[3] R.L. Graham, An ecient algorithm for determining the convex hull of a nite planar set, Inform. Process. Lett. 1 (4) (1972) 132133.
[4] D.R. Chand, S.S. Kapur, An algorithm for convex polytopes, J. ACM 17 (1) (1970) 7886.
[5] R.A. Jarvis, On the identication of the convex hull of a nite set of points in the plane, Inform. Process. Lett. 2 (1) (1973) 1821.
[6] W.F. Eddy, A new convex hull algorithm for planar sets, ACM Trans. Math. Software 3 (4) (1977) 398403.
[7] F.P. Preparata, S.J. Hong, Convex hulls of nite sets of points in two and three dimensions, Commun. ACM 20 (2) (1977) 8793.
[8] M. Kallay, The complexity of incremental convex hull algorithms in R d , Inform. Process. Lett. 19 (4) (1984) 197.
[9] J. Corney, H. Rea, D. Clark, J. Pritchard, M. Breaks, R. MacLeod, Coarse lters for shape matching, IEEE Comput. Graph. Appl. 22 (3) (2002) 6574.
[10] L.-H. Zhang, W.-L. Xu, Convex hull based point pattern matching under perspective transformation, Acta Automat. Sinica 28 (2) (2002) 306309.
[11] Z. Yang, F.S. Cohen, Image registration and object recognition using ane invariants and convex hulls, IEEE Trans. Image Process. 8 (7) (1999) 934946.
[12] C. Wen, T. Guo, An ecient algorithm for ngerprint matching based on convex hulls, in: International Conference on Computational Intelligence and
Natural Computing, vol. 1, 2009, CINC09, IEEE, 2009, pp. 6669.
[13] J. Liu, X. Wang, D. Zhuang, Application of convex hull in identifying the types of urban land expansion, Acta Geogr. Sin. 58 (6) (2003) 885892.
[14] R.-C. Peng, J.-Y. Wang, Z. Tian, L.-X. Guo, Z.-P. Chen, A research for selecting baseline point of the territorial sea based on technique of the convex hull
construction, Cehui Xuebao/Acta Geodaet. Cartograph. Sin. 34 (1) (2005) 5357.
[15] S. Meeran, A. Share, Optimum path planning using convex hull and local search heuristic algorithms, Mechatronics 7 (8) (1997) 737756.
[16] S.P. Fekete, W.R. Pulleyblank, Area optimization of simple polygons, in: Proceedings of the Ninth Annual Symposium on Computational Geometry, ACM,
1993, pp. 173182.
[17] S.P. Fekete, On simple polygonalizations with optimal area, Discrete Comput. Geom. 23 (1) (2000) 73110.
[18] S.P. Fekete, Geometry and the Travelling Salesman Problem, University of Waterloo, 1992.
[19] S.W. Bae, H.-G. Cho, W. Evans, N. Saeedi, C.-S. Shin, Covering points with convex sets of minimum size, Theor. Comput. Sci. (2016), https://doi.org/
10.1016/j.tcs.2016.11.014, in press.
[20] J.-S. Park, S.-J. Oh, A new concave hull algorithm and concaveness measure for n-dimensional datasets, JISE J. Inf. Sci. Eng. 29 (2) (2013) 379392.
[21] A. Galton, M. Duckham, What is the region occupied by a set of points? in: Geographic Information Science, Springer, 2006, pp. 8198.
[22] A. Moreira, M.Y. Santos, Concave hull: A k-nearest neighbours approach for the computation of the region occupied by a set of points, INSTICC Press
(Institute for Systems and Technologies of Information, Control and Communication), 2007.
[23] A. Vishwanath, M. Ramanathan, Concave hull of a set of freeform closed surfaces in R 3 , Comput-Aided Des. Appl. 9 (6) (2012) 857868.
[24] J. Jones, Multi-agent slime mould computing: mechanisms, applications and advances, in: Advances in Physarum Machines, Springer, 2016,
pp. 423463.
[25] D.N. Siriba, S.M. Matara, S.M. Musyoka, Improvement of volume estimation of stockpile of earthworks using a concave hull-footprint, International Sci.
J. Micro Macro Mezzo Geoinf. 5 (2015) 1125.
[26] A.L. Chau, X. Li, W. Yu, Large data sets classication using convexconcave hull and support vector machine, Soft Comput. 17 (5) (2013) 793804.
[27] H. Edelsbrunner, D. Kirkpatrick, R. Seidel, On the shape of a set of points in the plane, IEEE Trans. Inform. Theory 29 (4) (1983) 551559.
[28] H. Edelsbrunner, Shape reconstruction with Delaunay complex, in: Latin American Symposium on Theoretical Informatics, Springer, 1998, pp. 119132.
[29] H. Ganapathy, P. Ramu, R. Muthuganapathy, Alpha shape based design space decomposition for island failure regions in reliability based design, Struct.
Multidiscip. Optim. 52 (1) (2015) 121136.
[30] M. Fayed, H.T. Mouftah, Localised alpha-shape computations for boundary recognition in sensor networks, Ad Hoc Netw. 7 (6) (2009) 12591269.
[31] J. Ryu, D.-S. Kim, Protein structure optimization by side-chain positioning via beta-complex, J. Global Optim. 57 (1) (2013) 217250.
[32] C. Varytimidis, K. Rapantzikos, Y. Avrithis, S. Kollias, -Shapes for local feature detection, Pattern Recognit. 50 (2016) 5673.
[33] M.S.H. Al-Tamimi, G. Sulong, I.L. Shuaib, Alpha shape theory for 3d visualization and volumetric measurement of brain tumor progression using
magnetic resonance images, Magn. Reson. Imaging 33 (6) (2015) 787803.
[34] N. Amenta, M. Bern, D. Eppstein, The crust and the -skeleton: combinatorial curve reconstruction, Graph. Models Image Process. 60 (2) (1998)
125135.
[35] N. Amenta, M. Bern, M. Kamvysselis, A new Voronoi-based surface reconstruction algorithm, in: Proceedings of the 25th Annual Conference on Com-
puter Graphics and Interactive Techniques, ACM, 1998, pp. 415421.
[36] M. Duckham, L. Kulik, M. Worboys, A. Galton, Ecient generation of simple polygons for characterizing the shape of a set of points in the plane,
Pattern Recognit. 41 (10) (2008) 32243236.
[37] R.G. Michael, S.J. David, Computers and Intractability: A Guide to the Theory of NP-Completeness, W.H. Freeman & Co., San Francisco.
[38] H.D. Sherali, J. Desai, A global optimization rlt-based approach for solving the hard clustering problem, J. Global Optim. 32 (2) (2005) 281306.
[39] P. Brucker, On the complexity of clustering problems, in: Optimization and Operations Research, Springer, 1978, pp. 4554.
[40] G. Pick, Geometrisches zur zahlenlehre, Sitzenber. Lotos (Prague) 19 (1899) 311319.
[41] I. Brny, Applications of graph and hypergraph theory in geometry, Combin. Comput. Geom. 52 (2005) 3150.
[42] J. Komls, J. Pintz, E. Szemerdi, A lower bound for Heilbronns problem, J. Lond. Math. Soc. (2) 25 (1) (1982) 1324.
[43] K. Roth, On a problem of Heilbronn, III, Proc. Lond. Math. Soc. (3) 3 (3) (1972) 543549.
[44] J. Komls, J. Pintz, E. Szemerdi, On Heilbronns triangle problem, J. Lond. Math. Soc. (2) 24 (2) (1981) 385396.
[45] K.F. Roth, On a problem of Heilbronn, J. Lond. Math. Soc. (2) 1 (3) (1951) 198204.
[46] W.M. Schmidt, On a problem of Heilbronn, J. Lond. Math. Soc. (2) 2 (3) (1972) 545550.
[47] K. Roth, On a problem of Heilbronn, II, Proc. Lond. Math. Soc. (3) 3 (2) (1972) 193212.
S. Asaeedi et al. / Theoretical Computer Science 702 (2017) 4859 59

[48] T. Jiang, M. Li, P. Vitnyi, The expected size of Heilbronns triangles, in: Proceedings of Fourteenth Annual IEEE Conference on Computational Complex-
ity, IEEE, 1999, pp. 105113.
[49] G. Barequet, A lower bound for Heilbronns triangle problem in d dimensions, SIAM J. Discrete Math. 14 (2) (2001) 230236.
[50] H. Lefmann, On Heilbronns problem in higher dimension, Combinatorica 23 (4) (2003) 669680.
[51] P. Brass, An upper bound for the d-dimensional analogue of Heilbronns triangle problem, SIAM J. Discrete Math. 19 (1) (2005) 192195.
[52] H. Lefmann, Large triangles in the d-dimensional unit cube, Theoret. Comput. Sci. 363 (1) (2006) 8598.
[53] G. Barequet, A. Shaikhet, The on-line Heilbronns triangle problem in d dimensions, Discrete Comput. Geom. 38 (1) (2007) 5160.
[54] A. Shaikhet, The On-line Heilbronns Triangle Problem in d Dimensions, Technion Israel Institute of Technology, Faculty of Computer Science, 2007.
[55] L. Chen, Y. Xu, Z. Zeng, Searching approximate global optimal Heilbronn congurations of nine points in the unit square via GPGPU computing, J. Global
Optim. (2016) 121.
[56] J.-M. Lien, Approximate Convex Decomposition and Its Applications, Ph.D. thesis, Texas A&M University, 2006.
[57] R. Liu, H. Zhang, J. Busby, Convex hull covering of polygonal scenes for accurate collision detection in games, in: Proceedings of Graphics Interface
2008, Canadian Information Processing Society, 2008, pp. 203210.
[58] M. Ghosh, N.M. Amato, Hierarchical distance-based aggregation, Tech. rep., Technical Report TR1 4-006, Texas A&M University, 2014.
[59] D. Zhang, G. Lu, Review of shape representation and description techniques, Pattern Recognit. 37 (1) (2004) 119.
[60] M. Wischerhoff, G. Plonka, Reconstruction of polygonal shapes from sparse Fourier samples, J. Comput. Appl. Math. 297 (2016) 117131.
[61] Y. Igarashi, H. Suzuki, Cover geometry design using multiple convex hulls, Comput.-Aided Des. 43 (9) (2011) 11541162.
[62] A. Lucieer, M.-J. Kraak, Alpha-shapes for visualizing irregular-shaped class clusters in 3d feature space for classication of remotely sensed imagery, in:
Electronic Imaging 2004, International Society for Optics and Photonics, 2004, pp. 201211.
[63] W. Gong, Y.-J. Liu, K. Tang, T. Wu, Approximate Delaunay mesh reconstruction and quality estimation from point samples, J. Comput. Appl. Math. 274
(2015) 2334.
[64] T.K. Dey, K. Mehlhorn, E.A. Ramos, Curve reconstruction: connecting dots with good reason, in: Proceedings of the Fifteenth Annual Symposium on
Computational Geometry, ACM, 1999, pp. 197206.
[65] E. Althaus, K. Mehlhorn, Tsp-based curve reconstruction in polynomial time, in: Proc. ACMSIAM Sympos. Discrete Algorithms, 2000, Citeseer.

You might also like