viernes, 16 de febrero de 2024

(953) - Polinomios de Bernstein

El teorema de aproximación polinómica de Weierstrass indica que toda función continua en un intervalo cerrado se puede aproximar uniformememte por una sucesión de polinomios. Por ejemplo, podemos usar los polinomios de Bernsteins para aproximar $f(x)$ en $[a,b]$. $$ B_N(x) = \sum_{k=0}^N f\left(a+\frac{b-a}{N}k\right)\binom{N}{k} \frac{(x-a)^k(b-x)^{N-k}}{(b-a)^N} \qquad B_N(x) = \sum_{k=0}^N \beta_k B_{N,k}(x) ;$$
Como se puede ver, se ha aproximado por un polinomio como una combinación lineal de los elementos de una base polinómica (los polinomios de Bernstein), con $(N+1)$ polinomios de grado $N$ , $\Big\{ B_{N,k}(x)\Big\}_{k=0}^N$ vienen dados por: $$ B_{N,k}(x) = \binom{N}{k} \frac{(x-a)^k(b-x)^{N-k}}{(b-a)^N} \qquad \beta_k = f\left(a+\frac{b-a}{N}k\right) $$ Donde $\beta_k$ son los coeficientes de Bernstein-Bézier

Tras una normalización donde se define la nueva variable $t=\displaystyle \frac{x-a}{b-a}$, ahora $t\in[0,1]$, por lo que se simplifican las expresiones: $$ B_N(t) = \sum_{k=0}^N f\left(\frac{k}{N}\right)\binom{N}{k} t^k(1-t)^{N-k} $$

Los polinomios satisfacen estas relaciones $$ \binom{N}{k} \left(\frac{k}{N}\right)^k\left(1-\frac{k}{N}\right)^{N-k} = \binom{N}{k}\frac{k^k (N-k)^{N-k}}{N^N} \geqslant B_{N,k}(t) \geqslant 0 \implies \frac{N!}{2^N \displaystyle \left(\frac{N}{2}\right)!^2} \geqslant B_{N,\frac{N}{2}}(t) \geqslant 0 $$ Nótese que los polinomios tienen cierta simetría: $$ B_{N,k}(t)=B_{N,N-k}(1-t) $$
En particular se satisface: $$ 0 \leqslant t \leqslant 1 \implies \sum_{k=0}^N B_{N,k}(t) = 1 $$ Veamos algunos ejemplos:



Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.

viernes, 2 de febrero de 2024

(941) - Cómo calcular rápidamente la raíz cuadrada de cualquier número

Supongamos que tenemos un número $a$ positivo, $a>0$, del que queremos calcular su raíz cuadrada, $\sqrt{a\;}$. De alguna forma nos damos cuenta que existe otro número $n$ tal que $a\approx n^2$, es decir, $n\approx \sqrt{a\;}$.

Al aproximar $\sqrt{a\;}$ por $n$, estaremos cometiendo un error $\varepsilon$, que es de la forma $\varepsilon=\sqrt{a\;}-n$. Escrito de otra forma, $\sqrt{a\;}=n+\varepsilon$, por lo que $a=(n+\varepsilon)^2$. Si pudiésemos calcular de forma exacta el error $\varepsilon$, por ejemplo a través de una fórmula, podríamos calcular la raíz cuadrada de este forma. Si desarrollamos la última expresión, se llega a $\varepsilon^2 + 2n\,\varepsilon + (n^2-a)=0$, que es una ecuación polinómica de segundo grado en $\varepsilon$, por lo que: $$ \varepsilon = \frac{-2n\pm\sqrt{(2n)^2-4(n^2-a)\;}}{2} = -n\pm\sqrt{a\;}$$ O sea, que para no tener que calcular una raíz cuadrada, hay que calcular una raíz cuadrada... Hemos llegado otra vez al problema que queríamos evitar. Sin embargo, esto tiene fácil solución: Si nuestra aproximación $n$ es suficientemente buena a la raíz cuadrada $\sqrt{a\;}$, esto implicará que el error será pequeño, $\varepsilon\ll 1$, y en especial su cuadrado más, $\varepsilon^2\approx0$. Ahora sustituyendo esta aproximación para el error en la fórmula anterior: $$ 2n\,\varepsilon + (n^2-a) \approx 0 \implies \varepsilon \approx \frac{a-n^2}{2n} $$ Entonces la fórmula que buscamos es $$ \boxed{ \sqrt{a\;} \approx n + \frac{a-n^2}{2n} } $$ Por ejemplo si queremos calcular la raíz de $a=15$, tomamos $n=4$, ya que $4^2=16\approx 15$ y al usar la fórmula anterior, $$ \boldsymbol{3\mathrm{'}87}29833\dots = \sqrt{15\;} \approx 4 + \frac{15-4^2}{2\cdot 4} = 3\frac{7}{8} = \boldsymbol{3\mathrm{'}87}5 $$ Lo bueno de esta fórmula es que se puede usar de forma recursiva para ir encontrando sucesivas aproximaciones que tienden a la raíz: Ahora $n=3\mathrm{'}875$ y $n^2=15\mathrm{'}015625$ $$ \boldsymbol{3\mathrm{'}872983}3\dots = \sqrt{15\;} \approx 4 + \frac{15-3\mathrm{'}875^2}{2\cdot 3\mathrm{'}875} = 3\frac{433}{496} = \boldsymbol{3\mathrm{'}872983}8\dots $$
Otro ejemplo si queremos calcular la raíz de $a=2$, tomamos $n=1$, ya que $1^2=1\approx 2$ y al usar la fórmula anterior, $$ \boldsymbol{1}\mathrm{'}4142135\dots = \sqrt{2\;} \approx 1 + \frac{2-1^2}{2\cdot 1} = 3\frac{1}{2} = \boldsymbol{1}\mathrm{'}5 $$ Y en la siguiente iteración $n=1\mathrm{'}5$ y $n^2=2\mathrm{'}25$ $$ \boldsymbol{1\mathrm{'}41}42135\dots = \sqrt{2\;} \approx 4 + \frac{2-1\mathrm{'}5^2}{2\cdot 1\mathrm{'}5} = 1\frac{5}{12} = \boldsymbol{1\mathrm{'}41}\bar{6}\dots $$ Y en la siguiente iteración $n=1\mathrm{'}41\bar{6}$ y $n^2=2\mathrm{'}0069\bar{4}$ $$ \boldsymbol{1\mathrm{'}41421}35\dots = \sqrt{2\;} \approx 1\mathrm{'}41\bar{6} + \frac{2-1\mathrm{'}41\bar{6}^2}{2\cdot 1\mathrm{'}41\bar{6}} = 1\frac{169}{408} = \boldsymbol{1\mathrm{'}41421}56\dots $$ En general si queremos hallarla raíz $p-$ésima de un número $a$, $\sqrt[p]{a\;}$, tal que $a\approx n^p \iff n\approx\sqrt[p]{a\;}$ se puede hallar de forma similar con: $$ \boxed{ \sqrt[p]{a\;} \approx n + \frac{a-n^p}{p n^{p-1}} } $$


Autor: Đɑvɪẟ Ƒernández-De la Cruʒ.