Aunque hace ya años que no forma parte del currículo, el algoritmo para el cálculo de la raíz cuadrada ha sido un elemento habitual en los últimos años de primaria y en los primeros de secundaria. Hoy vamos a ver un método para aproximar el valor de la raíz cuadrada de un entero positivo (aunque es válido para cualquier real positivo) que, posiblemente, no sea muy conocido por el público en general: hoy presentamos el método de Herón.
Antes de dar directamente la expresión del método de Herón (que, por cierto, es el Herón de la fórmula de Herón), vamos a explicar un poco la idea del mismo, esto es, de dónde sale esto, por decirlo de alguna forma.
Imaginemos que queremos calcular la raíz cuadrada de, por ejemplo, 753. Como el área de un cuadrado de lado se calcula con
, podemos decir que el valor de
es la medida del lado de un cuadrado de área 753.
Vamos a buscar una aproximación de esa raíz cuadrada de 753 un poco «a ojo». Como , vamos a tomar el valor 29 como aproximación de ella. Por tanto, el lado de ese supuesto cuadrado de área 753 sería 29. Calculemos otro lado, para confirmarlo (o no):
Como los dos lados tienen valores distintos, en realidad no tenemos un cuadrado, sino un rectángulo de lados 29 y 25,97.
Tenemos, por tanto, que afinar un poco más con nuestra aproximación, y lo vamos a hacer tomando la media aritmética de esos dos valores como aproximación de la raíz cuadrada buscada:
Esto significa que estaríamos diciendo que , lo cual no está del todo mal, ya que
. Podríamos quedarnos aquí, pero la cosa quedaría un poco coja. ¿Por qué no seguir con la misma dinámica? Tomamos este
como supuesto lado del cuadrado y calculamos el otro lado:
Sigue sin ser un cuadrado, pero vemos ahora que los lados del rectángulo, y
, están mucho más cerca entre sí que los que salieron en el paso anterior. Tomamos, de nuevo, la media aritmética de ellos como aproximación de la raíz cuadrada que buscamos:
Podemos ver que este valor se aproxima mucho más a que el anterior, ya que
. Esto se ve mucho mejor si calculamos el valor exacto de esta raíz cuadrada:
Vamos, que en dos pasos del método hemos conseguido una aproximación del valor real de con dos decimales exactos. Evidentemente, si la aproximación que tomamos inicialmente es más cercana al valor real, si tomamos más decimales en cada paso y si realizamos más pasos del método, llegaremos a una mucho mejor aproximación de la raíz cuadrada que se busca.
Descrito el método a través de este ejemplo, ya podemos escribirlo de forma un poco más matemática:
Veamos otro ejemplo con un número más grande: . Tomamos, por ejemplo, el valor 200 como aproximación de
, ya que
(esto es,
). Sí, está lejos de nuestro número, pero vamos a ver que en nada tenemos una muy buena aproximación de su raíz cuadrada.:
- Con
, tenemos que
. La media de esos dos números, que será
, es:
Si calculamos su cuadrado, vemos que
, por lo que no está nada mal como aproximación (sobre todo, habiendo comenzado con el valor 200).
- Realicemos otro paso. Como
, tenemos que
. La media aritmética de ellos, que será
, es:
Calculando su cuadrado, vemos que
, por lo que
es una magnífica aproximación de
.
En sólo dos pasos, hemos conseguido una aproximación buenísima, y además comenzando con un número cuyo cuadrado estaba bastante alejado de nuestro número inicial.
En definitiva, tenemos un método iterativo mediante el cual nos acercamos cada vez más al valor de conforme realizamos iteraciones del mismo. Y, además, sabemos de dónde sale, por qué funciona. ¿Qué más queremos? Vale, sí, en la práctica pierde utilidad, ya que casi siempre tendremos un dispositivo que nos ayudará a calcular la raíz cuadrada buscada con bastante precisión. Ahora, matemáticamente hablando a mí me parece un método magnífico. Espero que a vosotros también os guste.
Vamos ahora con la parte más matemática del tema. ¿Cómo podemos demostrar que este método iterativo de verdad nos lleva a la raíz cuadrada de nuestro número K inicial? Vamos a verlo.
Es conocido el resultado que dice que toda sucesión monótona y acotada es convergente. En nuestro caso, vamos a demostrar que es monótona decreciente y que está acotada inferiormente. Comencemos viendo que
:
Como la última desigualdad es cierta, yendo hacia atrás llegamos a que, efectivamente, (en particular, tenemos también que
). Por tanto, nuestra sucesión está acotada inferiormente.
Por otro lado, veamos ahora que la sucesión es decreciente:
donde la última doble implicación es cierta al ser . Como la última desigualdad es cierta (la hemos demostrado anteriormente), yendo de nuevo hacia atrás tenemos que nuestra sucesión es decreciente.
Con esto, tenemos que es monótona decreciente y está acotada inferiormente, por lo que seguro que es convergente. Es decir, nuestra sucesión tiene límite, y vamos a calcularlo ahora.
Suponiendo que dicho límite es , tomamos límites en la expresión recurrente de la sucesión, quedando así:
Ahora, para despejar tenemos que realizar, básicamente, las mismas operaciones que en la demostración de que la sucesión es decreciente, por lo que es sencillo llegar a
que es el resultado buscado.
¿Conocéis algún método para aproximar valores de raíces cuadradas (o cualquier otro número) que merezca la pena mencionar? Si es así, podéis hablarnos de él en los comentarios.
Por cierto, la idea de escribir esta entrada me vino tras ver que Microsiervos hablaba de este método y después de que José Manuel hablara sobre él en el grupo de Telegram Retos Matemáticos.
La imagen principal ha sido generada por IA con la herramienta Stable Doddle.
¿Te ha gustado la entrada? Puedes invitarme a un café, Gauss te lo agradecerá 😉
Creo que es necesario considerar cuando x0 está muy próximo a 0, la sucesión xn es decreciente a partir de x1.Para salvar ese error, se debe considerar que el valor de n debe empezar en 1.
Un saludo.
Es interesante lo que comentas, pero creo que no hace falta, ya que la monotonía se analiza conforme
crece indefinidamente. Por tanto, no importa en exceso lo que ocurre en el primer o los primeros términos.
Sólo era un detalle. Creo que no estaría demás, hacer una pequeña aclaración sobre los dos primeros términos y el crecimiento. Para evitar que nos puedan tachar de poco rigurosos.
En respuesta a «¿conocéis algún método … que merezca la pena mencionar?»: En el mundo de la programación 3D o de juegos hay un algoritmo para la inversa de la raíz cuadrada muy conocido ser poco obvio a primera vista pero increíblemente eficiente, y que además no se conoce el autor original. Tiene una base matemática en el método de newton-raphson, se aprovecha de detalles de cómo se representa un real en una pc (punto flotante) para reinterpretarlo y hacer las operaciones con instrucciones de la cpu más rápidas, y hasta incluye una constante muy mágica para inicializar la búsqueda.… Lee más »
Muy interesante lo que comentas, lo miraré en detalle. Gracias por el aporte :-).
El método de Herón coincide con el de Newton-Raphson aplicado a la obtención de la solución de la ecuación \(x^2-K=0\): si \(f\left(x\right)=x^2-K\), entonces \(x_{n+1}=x_n-\frac{f\left(x_n\right)}{f^\prime\left(x_n\right)}=x_n-\frac{x_n^2-K}{2x_n}=\frac{1}{2}\left(x_n+\frac{K}{x_n}\right)\)
El método de Herón coincide con el de Newton-Raphson aplicado a la obtención de la solución de la ecuación $x^2-K=0$: si $f\left(x\right)=x^2-K$, entonces $x_{n+1}=x_n-\frac{f\left(x_n\right)}{f^\prime\left(x_n\right)}=x_n-\frac{x_n^2-K}{2x_n}=\frac{1}{2}\left(x_n+\frac{K}{x_n}\right)$
El método que voy a comentar a continuación está sacado del canal de Youtube MatesMike y es bastante ingenieril: consiste en suponer que el resultado de la raíz cuadrada es igual a un número natural ,a, más un número Irracional entre 0 y 1,b . A partir de ahí ya está la magia hecha porque cuando metas la expresion de la raíz tendrás que el término b² es muy pequeño en comparación con los demás y lo eliminas tal que así: √x=a+b ; √(a+b)²= a+b = √a²+2ab+b² √a²+2ab=√x →b =(x-a²)/2a Tanteando a con la raíz cuadrada exacta más próxima al… Lee más »