¿Qué es?
Los símbolos de Landau comparan funciones salvo factores constantes: (no crece más deprisa), (no más despacio), (al mismo ritmo), (estrictamente más despacio). Nacieron en teoría de números, la informática los adoptó para clasificar algoritmos y el análisis numérico para medir errores.
¿Por qué existe?
Los tiempos exactos dependen de la máquina, el compilador y la entrada. Lo que sobrevive a cualquier cambio de hardware es la forma del crecimiento: duplicar la entrada cuadruplica el tiempo de un algoritmo en cualquier ordenador. La notación asintótica captura justo eso y tira el resto.
Intuición
: a partir de cierto punto, la gráfica de se queda por debajo de una copia estirada . O es una cota superior, Ω una cota inferior y Θ un sándwich. La o pequeña dice que el cociente tiende a cero: en análisis numérico, significa «el error se anula más deprisa que el paso».
Definición formal
Cuando (o ):
- para
- y
Fórmulas
- merge sort, por el teorema maestro
- el mismo símbolo para magnitudes pequeñas
Ejemplo
¿Es ? Sí: , así que incluso es . Pero el punto de cruce es enorme: hacia . La asintótica dice quién gana al final, no cuándo.
¿Por qué importa?
Es el vocabulario del diseño de algoritmos («esto es »), de los métodos numéricos («Runge–Kutta 4 tiene error »), de Monte Carlo («error ») y de la teoría del aprendizaje (cotas de generalización). Una notación, tres comunidades.
Aplicaciones en informática
El lenguaje estándar de tiempo y memoria: , , cotas inferiores .
Los errores de discretización se expresan como : dividir el paso por dos divide el error por .
El error de Monte Carlo es en cualquier dimensión: 100 veces más muestras por cada cifra más.
¿Dónde se utiliza?
Temas de informática a los que se llega desde aquí, con la cadena de ideas que lleva a ellos:
ℒ IA y machine learning
- Orden y velocidad de convergencia→Descenso de gradiente★★★★★
- Orden y velocidad de convergencia→Descenso de gradiente→Learning rate (tasa de aprendizaje)★★★★★
- Orden y velocidad de convergencia→Descenso de gradiente→Retropropagación (backpropagation)★★★★★
- Orden y velocidad de convergencia→Descenso de gradiente→Descenso de gradiente estocástico (SGD)★★★★★
- Orden y velocidad de convergencia→Descenso de gradiente→Paisaje de la pérdida (loss landscape)★★★★★
- Orden y velocidad de convergencia→Descenso de gradiente→Aprendizaje por refuerzo★★★★★
- +6
Qué depende de él
Ejercicios
Ordena por crecimiento: , , , , .
Solución
(compara logaritmos: , , , , ).
Un algoritmo tarda 1 s con . Estima el tiempo para si es y si es .
Solución
: factor → unos 11,6 días. : factor → unos 33 minutos.