En análisis numérico un algoritmo de búsqueda de raíces es un método numérico o algorítmico para encontrar las soluciones aproximadas de una ecuación dada por la expresión f(x) = 0 para una función matemática f dada. A la solución x de la ecuación se le llama raíz o cero de la función.
Igualmente, resolver la ecuación f(x) = g(x) es análogo a resolver la ecuación f − g = 0, es decir, encontrar las raíces de la función f - g.
Este artículo trata sobre cómo encontrar raíces reales o complejas, aproximadas por números de punto flotante.
Los métodos numéricos de resolución de ecuaciones no lineales suelen ser métodos iterativos que producen una sucesión de valores aproximados de la solución, que se espera, que converja a la raíz de la ecuación. Estos métodos van calculando las sucesivas aproximaciones sobre la base de los anteriores, a partir de una o varias aproximaciones iniciales.
El comportamiento de los algoritmos de búsqueda de raíces se estudia en análisis numérico. Funcionan mejor cuando se toman en cuenta las características de la función. Para saber que método debemos aplicar, hay que tener en cuenta la capacidad de separar raíces cercanas, confiabilidad en el alcance de soluciones evitando errores numéricos graves y orden de convergencia.
Los siguientes métodos son para calcular las raíces reales de una ecuación dada por f(x) = 0 donde se exige al menos que la función f sea una función continua para garantizar la existencia de solución. La mayoría de métodos se obtienen de interpolar la función, generalmente mediante un polinomio de primer grado (interpolación lineal) y después aproximar la solución mediante alguna de las raíces del polinomio.
El algoritmo más simple de búsqueda de raíces es el método de bisección. Requiere un intervalo inicial que contenga alguna raíz de la ecuación (de forma que la función tome en los extremos del mismo valores de distinto signo; véase el teorema de Bolzano). Dicho intervalo inicial se va dividiendo sucesivamente por la mitad (se bisecta) tomándose el intervalo que contiene a la raíz. A pesar de ser un método que siempre converge a una solución, converge muy lentamente.
El método de Newton asume que la función f sea continuamente derivable y que se conoce la derivada de la función. Este método puede no converger si se comienza con un valor muy alejado de la raíz. Sin embargo, si converge, lo hace mucho más rápido que el método de bisección (usualmente, de manera cuadrática), por eso el número de dígitos correctos se duplica en cada iteración. El método de Newton también es útil porque se generaliza para problemas de dimensiones más altas.
Reemplazando la derivada del método de Newton por un cociente incremental, obtenemos el método de la secante. Este método no requiere el cálculo (ni la existencia) de la derivada, pero el precio que se debe pagar es un orden de convergencia más bajo (aproximadamente 1.6).
El método de la regla falsa (o regula falsi) es un método que combina lo mejor del método de bisección y del método de la secante. El método corta el intervalo en dos partes como en el método de bisección, pero a diferencia de éste, lo corta por el valor obtenido aplicando el método de la secante a los extremos del intervalo, no siendo generalmente las partes iguales. El método converge siempre a una raíz de la ecuación, generalmente de forma más rápida que el método de bisección pero más lenta que el método de la secante.
Finalmente, hay una familia de métodos conocidos como métodos de punto fijo. Estos métodos se basan en obtener a partir de la ecuación f(x) = 0 una ecuación equivalente de la forma g(x) = x cuya solución se convierta en un punto fijo de g e iterando a partir de un valor inicial hasta que se alcance.