This paper proposes a fast algorithm for computing the real roots of univariate polynomials given in the Bernstein basis . Traditionally the polynomial is subdivided until a root can be isolated . In contrast herein we aim to find a root only to subdivide the polynomial at the root . This subdivision based algorithm exploits the property that the B zier curves interpolate the end points of their control polygons . Upon subdivision at the root both resulting curves contain the root at one of their end points and hence contain a vanishing coefficient that is factored out . The algorithm then recurses on the new sub curves now of lower degree yielding a computational efficiency . In addition the proposed algorithm has the ability to efficiently count the multiplicities of the roots . Comparison of running times against the state of the art on thousands of polynomials shows an improvement of about an order of magnitude . The problem of numerically finding zeros of univariate polynomials is ubiquitous in computer aided design and engineering . Many geometric problems can be cast into that of finding zeros of polynomials for instance computing intersections of curves and surfaces contact analysis of shapes kinematic analysis etc . There have been many approaches to the problem of computing zeros of univariate polynomials in the past such as based on Newton s method using Descartes rule of signs based on subdivision to name a few . In this work we use the Bernstein representation for polynomials . Bernstein polynomials have several useful properties such as the variation diminishing property the convex hull property and numerical stability with respect to perturbation of coefficients which makes such a representation especially amenable for numerical applications . One of the earliest methods to exploit the variation diminishing property of B zier curves in order to isolate the roots of polynomials was given by Lane and Riesenfeld . In 1990 Sederberg and Nishita proposed the technique of B zier clipping for identifying regions of the domain which contain roots . This was done by intersecting the convex hull of the control polygon with the zero axis . In 2007 Barto and J ttler improved the technique of B zier clipping using degree reduction to generate a strip bounded by two quadratic polynomials which encloses the graph of the input polynomial . This strip when intersected with the zero axis gives the new interval potentially containing the roots . This approach that is also known as quadratic clipping was shown to have quadratic convergence by Schulz . In 2009 Liu et al . improved quadratic clipping by using cubic polynomials yielding faster rates of convergence . In 2007 M rken and Reimers utilized the close relationship between the spline and its control polygon for computing zeros of polynomials . They use the zeros of the control polygon as an initial guess for tracing the zeros of the polynomial . The control polygon is iteratively refined until the roots are found . 


Summary: A fast algorithm for computing roots of univariate scalar B ziers is proposed. A speed up of about an order of magnitude is gained compared to previous methods. The proposed algorithm has the ability to count multiplicities of roots.