  Univariate polynomial root-finding is a classical subject, still important
for modern computing. Frequently one seeks just the real roots of a real
coefficient polynomial. They can be approximated at a low computational cost if
the polynomial has no nonreal roots, but for high degree polynomials, nonreal
roots are typically much more numerous than the real ones. The challenge is
known for long time, and the subject has been intensively studied. The Boolean
cost bounds for the refinement of the simple and isolated real roots have been
decreased to nearly optimal, but the success has been more limited at the stage
of the isolation of real roots. We obtain substantial progress by applying the
algorithm of of 1982 by Schoenhage for the approximation of the root radii,
that is, the distances of the roots to the origin. Namely we isolate the simple
and well-conditioned real roots of a polynomial at the Boolean cost dominated
by the nearly optimal bounds for the refinement of such roots. We also extend
our algorithm to the isolation of complex, possibly multiple, roots and root
clusters staying within the same (nearly optimal) asymptotic Boolean cost
bound. Our numerical tests with benchmark polynomials performed with the IEEE
standard double precision show that our nearly optimal real root-finder is
practically promising. Our techniques are simple, and their power and
application range may increase in combination with the known efficient methods.
