12 votos

¿Por qué esta función empieza a oscilar hacia arriba y hacia abajo de forma tan extraña

Por favor, eche un vistazo a la función: $$f(x) = \left(x + \frac{1}{x^x}\right)^x - x^x$$

Puede ver la trama en Wolfram Alpha .

¿Por qué tiene un comportamiento tan extraño de $x = 13$ ? Comienza a oscilar hacia arriba y hacia abajo de forma muy extraña.

6voto

Anthony Shaw Puntos 858

Utilizando el teorema del binomio, obtenemos $$ \begin{align} \left(x+\frac1{x^x}\right)^x-x^x &=x^x\left[\left(1+\frac1{x^{x+1}}\right)^x-1\right]\\ &=x^x\left[\frac1{x^x}+\frac{x-1}2\frac1{x^{2x+1}}+O\left(\frac1{x^{3x}}\right)\right]\\ &=1+\frac1{2x^x}+O\left(\frac1{x^{x+1}}\right) \end{align} $$ Si obtiene oscilaciones salvajes o una salida cuantificada, probablemente se deba a un error de truncamiento.

El cuello de botella parece estar en el cálculo de $x+\frac1{x^x}$ desde Aritmética de doble precisión IEEE sólo tiene un $53$ mantisa de bits. $13$ tiene $4$ bits y $13^{-13}$ tiene $48$ ceros después del punto binario antes del primer bit distinto de cero. Por lo tanto, la precisión es apenas suficiente para notar que hay una diferencia entre $x+\frac1{x^x}$ y $x$ . Cualquier imprecisión en el cálculo anularía por completo esta diferencia y causaría problemas extremos en el cálculo final.

3voto

HappyEngineer Puntos 111

Sí, casi seguro que es un error de punto flotante.

$$f(x)= x^x\left(\left(1+\frac{1}{x^{x+1}}\right)^x-1\right)$$

Para $x$ grande, $\left(1+\frac{1}{x^{x+1}}\right)^x = 1+\frac{1}{x^x}+O(x^{-2x})$

Así que $f(x)=1+ O(x^{-x})$ .

3voto

Brad Puntos 3729

Como han dicho otros, se trata de un error de punto flotante. Si lo trazo en mathematica encuentro:

enter image description here

Que se parece claramente a la salida de WolframAlpha (aunque no son iguales). Si aumento la precisión de los cálculos y vuelvo a trazar la misma ecuación me encuentro con lo siguiente:

enter image description here

Observe el cambio de escala.

Incluso con este aumento de la precisión, seguirá encontrando comportamientos extraños erróneos después de algún tiempo y tendrá que volver a aumentar la precisión de trabajo (ad infinitum).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X