01 · Punto de partida
El próximo valor depende del estado actual
Muchos algoritmos no calculan una respuesta mediante una fórmula directa. Comienzan con una estimación, aplican una transformación y repiten:
Este patrón aparece al aproximar raíces, simular sistemas dinámicos, ajustar parámetros, suavizar datos y buscar equilibrios.
- ¿La regla produce un término válido en cada paso?
- ¿Los valores permanecen en una región controlada?
- ¿La sucesión aumenta, disminuye u oscila?
- ¿Existe un límite y qué ecuación debe satisfacer?
- ¿Con qué rapidez disminuye el error?
- ¿Cuándo debe detenerse el programa?
02 · Definición recursiva
Condición inicial y regla de actualización
Una sucesión de primer orden queda definida mediante un valor inicial y una función de iteración:
Ambos datos son indispensables. La misma función produce órbitas diferentes según el punto inicial.
| Elemento | Función | Ejemplo |
|---|---|---|
a₀ | Estado o estimación inicial. | a₀=0 |
f | Transformación aplicada en cada paso. | f(x)=(x+3)/2 |
aₙ | Estado después de n iteraciones. | 0, 1.5, 2.25, … |
| Órbita | Sucesión completa generada. | (aₙ) |
Si f contiene raíces, logaritmos o divisiones, también debemos garantizar que cada término permanece en su dominio.
03 · Equilibrios
Qué es un punto fijo
Un número L es punto fijo de f si:
Si una iteración alcanza exactamente L, permanece allí. Si aₙ→L y f es continua en L, entonces:
Por eso todo límite convergente debe ser un punto fijo. Para f(x)=(x+3)/2:
04 · Iteración bien definida
Intervalos invariantes
Un conjunto I es invariante si f(I)⊆I. Si a₀∈I, todos los términos permanecen dentro de I.
Para f(x)=(x+3)/2, el intervalo [0,3] es invariante:
Esta propiedad cumple dos tareas: garantiza que la recurrencia sigue definida y proporciona cotas. En problemas con f(x)=√(2+x), demostrar que los términos permanecen no negativos es indispensable antes de estudiar el límite.
05 · Convergencia monótona
Probar dirección y acotación
Sea a₀=0 y aₙ₊₁=(aₙ+3)/2. Ya sabemos que 0≤aₙ≤3. Además:
La sucesión es creciente y está acotada superiormente por 3. El teorema de convergencia monótona asegura la existencia del límite. La ecuación de punto fijo lo identifica como 3.
- 1Invariancia.
Probar que los términos permanecen en un intervalo.
- 2Monotonía.
Estudiar
aₙ₊₁−aₙ. - 3Existencia.
Aplicar convergencia monótona.
- 4Identificación.
Resolver
L=f(L).
06 · Contracciones
Una transformación que reduce distancias
Supongamos que en un intervalo invariante existe 0≤q<1 tal que:
Entonces f es una contracción. Si L=f(L):
Repitiendo:
La existencia de un punto fijo único y la convergencia desde cualquier punto del intervalo se reúnen en el teorema de punto fijo de Banach. Aquí utilizamos su idea central sin desarrollar toda la teoría métrica.
07 · Estabilidad local
La derivada cerca del punto fijo
Si f es derivable y L es punto fijo, el valor |f'(L)| orienta la estabilidad:
| Valor | Comportamiento esperado cerca de L |
|---|---|
|f'(L)|<1 | Atractivo: los errores pequeños se reducen. |
|f'(L)|>1 | Repulsivo: los errores se amplifican. |
|f'(L)|=1 | El criterio no decide; hace falta otro análisis. |
Un signo negativo con magnitud menor que uno suele producir aproximación alternada; un signo positivo produce acercamiento desde un mismo lado, si la órbita permanece en la región estable.
08 · Velocidad de convergencia
Cómo evoluciona el error
Para la iteración afín aₙ₊₁=(aₙ+3)/2 y L=3:
Por lo tanto:
Cada iteración reduce el error a la mitad. Para exigir error menor que ε, buscamos n tal que qⁿ|a₀−L|<ε. Usando logaritmos:
function iteracionesNecesarias(errorInicial, razon, tolerancia) {
if (!(razon > 0 && razon < 1)) throw new RangeError("La razón debe estar entre 0 y 1");
return Math.ceil(Math.log(tolerancia / errorInicial) / Math.log(razon));
}
console.log(iteracionesNecesarias(3, 0.5, 1e-6));09 · Aproximar raíces
La iteración de Herón para √2
La recurrencia
es el método de Newton aplicado a x²−2=0. Sus puntos fijos satisfacen L²=2. Si comenzamos con a₀>0, la iteración permanece positiva y converge a √2.
function aproximarRaizDos(inicial, pasos) {
let x = inicial;
const datos = [{ paso: 0, valor: x, error: Math.abs(x - Math.SQRT2) }];
for (let n = 1; n <= pasos; n += 1) {
x = (x + 2 / x) / 2;
datos.push({ paso: n, valor: x, error: Math.abs(x - Math.SQRT2) });
}
return datos;
}
console.log(aproximarRaizDos(1, 5));Los errores caen mucho más rápido que en una contracción lineal simple. El curso de cálculo numérico estudiará esta velocidad y sus condiciones de forma sistemática.
10 · Cuando la iteración no converge
Ciclos, escape y sensibilidad
La función f(x)=1−x tiene el punto fijo 1/2, pero si a₀≠1/2, la órbita alterna entre a₀ y 1−a₀. Resolver L=f(L) no predice esa falta de convergencia.
Ciclo
La órbita repite varios valores.
Escape
Los valores abandonan toda región acotada.
Estancamiento numérico
El redondeo hace iguales dos iteraciones aunque el problema no esté resuelto.
function iterar(regla, inicial, pasos) {
const valores = [inicial];
for (let n = 0; n < pasos; n += 1) valores.push(regla(valores.at(-1)));
return valores;
}
console.log(iterar(x => 1 - x, 0.2, 8));11 · Algoritmo confiable
Criterios de parada y diagnósticos
Una implementación debe limitar iteraciones, rechazar resultados no finitos y registrar por qué terminó.
function iterarHasta(regla, inicial, tolerancia, maxIteraciones = 1000) {
let anterior = inicial;
for (let iteracion = 1; iteracion <= maxIteraciones; iteracion += 1) {
const actual = regla(anterior);
if (!Number.isFinite(actual)) return { estado: "no-finito", iteracion, valor: actual };
const cambio = Math.abs(actual - anterior);
if (cambio <= tolerancia) return { estado: "tolerancia", iteracion, valor: actual, cambio };
anterior = actual;
}
return { estado: "maximo", iteracion: maxIteraciones, valor: anterior };
}
console.log(iterarHasta(Math.cos, 1, 1e-10));El cambio entre iteraciones no siempre estima el error verdadero. Cuando sea posible, agregamos un residuo como |f(x)−x| o verificamos la ecuación original.
Aplicaciones del mismo patrón iterativo
| Área | Estado aₙ | Punto fijo |
|---|---|---|
| Resolución de ecuaciones | Aproximación de una raíz. | Solución buscada. |
| Simulación | Estado del sistema en el paso n. | Equilibrio estable. |
| Optimización | Parámetro actualizado. | Configuración estacionaria. |
| Procesamiento de datos | Señal después de un filtro. | Resultado que ya no cambia. |
| Aprendizaje automático | Pesos tras una actualización. | Punto estacionario del entrenamiento. |
Compartir la estructura no significa compartir las garantías. Cada aplicación necesita demostrar que su transformación conserva el dominio y reduce alguna medida apropiada del error.
12 · Exploración interactiva
Laboratorio: órbitas y puntos fijos
Elegí una transformación, el valor inicial y la cantidad de iteraciones. Observá convergencia, alternancia o ciclos.
Iterador de puntos fijos
aₙ₊₁=(aₙ+3)/2
Los valores se acercan al punto fijo 3.
Cada punto representa el valor después de una iteración. La línea punteada indica el punto fijo de referencia.
13 · Comprensión
Confusiones frecuentes
«Resolver L=f(L) demuestra convergencia»
Solo produce candidatos. La órbita puede divergir o entrar en un ciclo.
«Todo punto fijo atrae iteraciones»
Puede ser repulsivo; la estabilidad depende del comportamiento de f cerca de él.
«Si el cambio es pequeño, el error también»
No necesariamente. Puede haber convergencia lenta, estancamiento o un punto que casi no cambia sin resolver el problema.
«Una recurrencia siempre está bien definida»
Cada término debe permanecer en el dominio de la función.
«La derivada local controla cualquier valor inicial»
Solo describe una región cercana al punto fijo.
«Más iteraciones siempre mejoran el resultado»
Una iteración inestable puede amplificar errores o desbordarse.
14 · Práctica y síntesis
Ejercicios de comprensión
Ejercicio 1: candidato de límite
Para aₙ₊₁=√(2+aₙ), encontrá los puntos fijos reales.
Ver solución
Si converge a L≥0, entonces L=√(2+L). Al cuadrar, L²−L−2=0, con soluciones 2 y −1. La condición L≥0 descarta −1; el único candidato es 2.
Ejercicio 2: prueba monótona
Para a₀=0 y aₙ₊₁=(aₙ+5)/2, demostrá convergencia y calculá el límite.
Ver solución
Por inducción, 0≤aₙ<5. Además aₙ₊₁−aₙ=(5−aₙ)/2>0. Es creciente y acotada por 5; converge y L=(L+5)/2 da L=5.
Ejercicio 3: punto fijo inestable
Analizá aₙ₊₁=2aₙ. ¿Qué punto fijo tiene y qué sucede si a₀≠0?
Ver solución
El único punto fijo es 0. Si a₀≠0, aₙ=2ⁿa₀ y su magnitud crece sin cota. Como |f'(0)|=2>1, el punto fijo es repulsivo.
Ejercicio 4: implementar y diagnosticar
Generá diez iteraciones de cos(x) desde x₀=1 e imprimí valores y cambios.
Ver solución
let anterior = 1;
const datos = [];
for (let n = 1; n <= 10; n += 1) {
const actual = Math.cos(anterior);
datos.push({ n, valor: actual, cambio: Math.abs(actual - anterior) });
anterior = actual;
}
console.log(datos);Ideas para recordar
- Una recurrencia necesita condición inicial y regla de actualización.
- Todo límite debe ser punto fijo, pero no todo punto fijo es atractivo.
- Los intervalos invariantes garantizan dominio y aportan cotas.
- Monotonía y acotación permiten probar existencia.
- Una contracción reduce errores al menos geométricamente.
|f'(L)|orienta la estabilidad local.- Un algoritmo debe combinar tolerancia, máximo de iteraciones y validaciones.
En el próximo tema estudiaremos sucesiones de Cauchy, que permiten detectar convergencia comparando términos sin conocer previamente el límite.