
814 Chapter 13 Computational Geometry Topics
containing the four points. The problem is to construct the one with minimum area.
The area as a function of c is
Area(c) =
πc(1 −b + c)
(4c − b
2
)
3/2
The minimum area occurs when c makes the derivative of area with respect to c
zero, Area
(c) = 0. This leads to a cubic polynomial equation in c
P(c; u, v) = S(v)c
3
+ T(u, v)c
2
− T(v, u)c − S(u) = 0
where S(v) =v
3
(v −1)
2
and T(u, v) = uv
2
(2v
2
+uv + u −3v +1). The maximum
root for P provides the correct value of c. The minimum area occurs at c = 1 when
P(1; u, v) = 0. This occurs when u = v or u
2
+ uv +v
2
− u − v = 0(oru + v = 1
or u =−v). These curves decompose the valid (u, v) region into subregions where
c>1orc<1. Numerically, the largest root can be found in regions where c<1
by applying Newton’s method to P(c)= 0 with an initial guess of c =1.Inregions
where c>1, Newton’s method can be applied to the inverted polynomial equation
P(1/c) = 0 with an initial guess of 1/c = 1.
Minimum-Area Ellipse for Fixed Center and Orientation
A special case of the minimum-area ellipse problem is to choose a center and orien-
tation, then compute the ellipse axis lengths that produce the minimum-area ellipse
with that center and orientation. Since the input points can be written in the coor-
dinate system with the specified center as the origin and the specified orientation for
the axes, we can analyze the problem when the center is the origin and the orientation
is the identity matrix. The ellipse equation is (x/a)
2
+(y/b)
2
=1, and the ellipse has
area πab, which we want to minimize for the input set of points.
The constraints on the axis lengths are a>0 and b>0. Additional constraints
come from requiring that each point (x
i
, y
i
) is inside the ellipse, (x
i
/a)
2
+ (y
i
/b)
2
≤ 1. The problem is to minimize the quadratic function ab subject to all the in-
equality constraints. Let u = 1/a
2
and v = 1/b
2
. The equivalent problem is to max-
imize f(u, v) = uv subject to the linear inequality constraints u ≥ 0, v ≥ 0, and
x
2
i
u + y
2
i
v ≤ 1 for all i. This is a quadratic programming problem, so the general
methods for such problems can be applied here (Pierre 1986). This type of program-
ming arises in other computational geometry applications and is being investigated
by various researchers (for example, Gaertner and Schoenherr 2000).
Although the general quadratic progamming methods apply here, the problem
may be solved in a more geometric way. The domain of f(u, v) is bounded by
a convex polygon with edges u = 0, v = 0, and other edges in the first quadrant
determined by the point-in-ellipse containment constraints. Not all the constraints
necessarily contribute to the domain. The maximum of f must occur on the convex