Ejemplo de una función continua que es difícil de aproximar con polinomios.

16

Para fines de enseñanza, necesitaría una función continua de una sola variable que sea "difícil" de aproximar con polinomios, es decir, uno necesitaría potencias muy altas en una serie de potencias para "ajustar" bien esta función. Tengo la intención de mostrarles a mis alumnos los "límites" de lo que se puede lograr con las series de poder.

Pensé en inventar algo "ruidoso", pero en lugar de rodar el mío, me pregunto si hay una especie de "función difícil" estándar que la gente usa para probar algoritmos de aproximación / interpolación, algo similar a las funciones de prueba de optimización que tienen numerosas mínimos locales donde los algoritmos ingenuos se atascan fácilmente.

Disculpas si esta pregunta no está bien formada; ten piedad de un no matemático.

Laryx Decidua
fuente

Respuestas:

14

¿Por qué no simplemente mostrar la función de valor absoluto?

La aproximación con, por ejemplo, la expansión Legendre-polinomial funciona, pero bastante mal :

Aproximación secuencial de la función de valor absoluto por polinomios

La expansión de Taylor es, por supuesto, completamente inútil aquí, siempre da solo una función lineal, ya sea siempre disminuyendo o siempre aumentando (dependiendo de si el punto por el que se expande es negativo o positivo).

a la izquierda
fuente
Puedes interpolar | x | usando la interpolación de Chebyshev, vea nbviewer.jupyter.org/github/cpraveen/na/blob/master/… que converge bastante rápido. Por ejemplo, puede cambiar N = 2 * i en el código a N = 15 + i y probar un grado mayor. No es un método de expansión, pero aún se basa en polinomios.
cpraveen
@PraveenChandrashekar Chebyshev funciona "mejor" porque pone más peso en las partes externas del intervalo, donde la función es suave. Por lo tanto, se evita la oscilación excesiva, pero decir que se aproxima mejor a la función es dudoso, en particular captura el giro brusco en incluso peor que los puntos discretos uniformes o la minimización de L 2 . Si su objetivo es evitar componentes de alta frecuencia, utilice mejor una transformación integral que amortigüe adecuadamente estos componentes. X=0 0L2
Leftaroundabout
Está perfectamente bien tener puntos no uniformes como en la interpolación de Chebyshev. Con un grado de aproximadamente 20, ofrece una aproximación mucho más precisa que Legendre que muestra en su publicación. Mida los errores para que sean más cuantitativos. También puede hacer la aproximación de la serie Chebyshev de | x | que es más preciso que la expansión Legendre.
cpraveen
@PraveenChandrashekar el punto es que los polinomios en principio no pueden aproximar una función como correctamente. Existen diferentes métodos, cada uno de los cuales falla un poco más o menos espectacularmente, pero ninguno de ellos funciona bien en el sentido de "solo unos pocos términos dan algo que podría confundirse con la función original". Si debe usar polinomios, debe considerar qué tipos de error son más problemáticos, Legendre y Chebyshev tienen sus casos de uso, pero no hay una bala de plata. En última instancia, un enfoque con, por ejemplo, splines suele ser más efectivo. XEl |XEl |
Leftaroundabout
Sabemos que no hay un método perfecto. La pregunta es qué funciones son difíciles de aproximar para los polinomios. Entonces uno tiene que ver todos los métodos posibles que involucran polinomios para concluir que ninguno de ellos hace un buen trabajo. Legendre no es la mejor manera de aproximar | x | y por lo tanto da una impresión bastante falsa de que los polinomios son demasiado malos para | x |. Con Chebyshev tiene convergencia y aproximaciones mucho mejores que Legendre, no oscilan tan mal como Legendre, aunque convergen lentamente cerca de x = 0, donde la función no es lo suficientemente suave.
cpraveen
10

El |XEl |

Wolfgang Bangerth
fuente
Gracias, esto es exactamente lo que quise decir con "Pensé en algo 'ruidoso'". Muy buen ejemplo de la OMI.
Laryx Decidua
6

La aproximación no solo se dificulta por la función que se va a aproximar, sino por el intervalo en el que la aproximación debe ser un "buen ajuste". Y debe definir la medida para un "buen ajuste", es decir, ¿cuál es el error máximo (absoluto o relativo) que desea tolerar?

Exp(X)[0 0,10]pecado(X)[0 0,2π]ingrese la descripción de la imagen aquíingrese la descripción de la imagen aquí

GertVdE
fuente
Muestro estos ejemplos en mi curso para señalar que la expansión de Taylor no es un buen método para aproximar funciones.
cpraveen
6

Los polinomios son sorprendentemente efectivos en la aproximación de funciones [1]. Si tiene al menos la continuidad de Lipschitz, entonces las aproximaciones de Chebyshev convergerán. Por supuesto, la convergencia puede ser lenta, y ese es el precio que pagamos por lidiar con una función no uniforme.

Hoy en día, las computadoras son mucho más rápidas que los días en que se escribieron muchos libros de análisis numérico, y los algoritmos inteligentes han aumentado aún más la velocidad, por lo que tener que usar más términos puede no ser tan malo como solía ser.

Los ejemplos patológicos como la función de monstruo de Weierstrass son interesantes desde un punto de vista teórico, pero no son representativos de la mayoría de los contextos de aplicación reales.

El |XEl |X=0 0

Es importante enseñar las dificultades en la aproximación con polinomios, pero también es importante decirles a los estudiantes que podemos construir estimaciones de error y algoritmos adaptativos que puedan abordar estos problemas.

[1] https://people.maths.ox.ac.uk/trefethen/mythspaper.pdf

[2] http://www.chebfun.org

cpraveen
fuente
+1 por vincular el "documento del mito" de Lloyd Trefethen, una muy buena encuesta sobre el tema de la OMI, gracias.
Laryx Decidua
2

F(X)=1X2+1

1X2+1=1-X2+X4 4-X6 6+X8-X10+X12-...

-1<X<1X=0 0X=2

Christopher Wells
fuente
0

y=syonorte(X)

Aniruddha Acharya
fuente
y=pecado(1X)