iteración de punto fijo

La iteración de punto fijo es un método iterativo para determinar los posibles puntos fijos de una función. Dada una función \(g\colon J\subseteq\mathbb{R} \to \mathbb{R}\) y un punto inicial \(x_0\in J\), se define recursivamente la sucesión

\[ x_{k+1} \mathrel {\mathop \colon } \mathrel {\mkern -1.2mu}= g(x_k),\quad k=0,1,2,\dots \]

Supongamos por un momento que \(g\) es continua y que, además, dicha sucesión converge, entonces lo hace a un punto fijo.

\[ x^* \mathrel {\mathop \colon } \mathrel {\mkern -1.2mu}= \lim_{k\to\infty}x_k = \lim_{k\to\infty}g(x_{k-1}) = g\Big(\lim_{k\to\infty}x_{k-1}\Big) = g(x^*) \]

La convergencia de \(\{x_k\}_{k=0}^\infty\) a un punto fijo específico no siempre está garantizada.

Convergencia

  • Se dice que \(x^*\) es un punto fijo estable o atractor si existe \(\epsilon>0\) tal que, para todo \(x_0\in{}]x^*-\epsilon,x^*+\epsilon[{}\), \(\lim_{k\to\infty}x_k=x^*\).
  • Se dice que \(x^*\) es un punto fijo inestable o repulsor si existe \(\epsilon>0\) tal que, para todo \(x_0\in{}]x^*-\epsilon,x^*+\epsilon[{}\) con \(x_0\neq x^*\), \(\lim_{k\to\infty}x_k\neq x^*\).

Se dice que \(g\) es una función lipschitziana si existe una constante \(K>0\), llamada constante de Lipschitz, tal que \(|g(x)-g(y)|\leq K|x-y|\) para todo \(x,y\in J\). La constante de Lipschitz no es única.

  • Se dice que \(g\) es una contracción si existe \(0\leq\delta<1\) tal que \(|g(x)-g(y)|\leq\delta|x-y|\) para todo \(x,y\in J\).
  • Se dice que \(g\) es una dilatación si existe \(\delta>1\) tal que \(|g(x)-g(y)|\geq\delta|x-y|\) para todo \(x,y\in J\).

Una contracción es una función lipschitziana con constante de Lipschitz estrictamente menor a 1. En contrapartida, una dilatación no es, en general, una función lipschitziana. Cuando sí lo es, toda constante de Lipschitz asociada es necesariamente estrictamente mayor a 1.

Supongamos que \(g\in\mathcal{C}^1([a,b])\), se tiene que:

  • si \(\delta\mathrel {\mathop \colon } \mathrel {\mkern -1.2mu}=\max_{[a,b]}|g'(x)|<1\), entonces \(g\) es contractiva en \([a,b]\);
  • si \(\delta\mathrel {\mathop \colon } \mathrel {\mkern -1.2mu}=\min_{[a,b]}|g'(x)|>1\), entonces \(g\) es dilatativa en \([a,b]\).

Teorema de Brouwer (1911). Si \(g([a,b])\subseteq[a,b]\) y \(g\) es continua, entonces existe al menos un punto fijo de \(g\) en \([a,b]\).

Teorema de Banach (1922). Si \(g([a,b])\subseteq[a,b]\) y \(g\) es contractiva, entonces existe un único punto fijo de \(g\) en \([a,b]\). Además, \(x^*\) es estable y se dan las siguientes desigualdades (equivalentes entre ellas) relativas a la velocidad de convergencia:

  • \(|x^*-x_n|\leq\delta|x^*-x_{n-1}|\)
  • \(|x^*-x_n|\leq\tfrac\delta{1-\delta}|x_n-x_{n-1}|\)
  • \(|x^*-x_n|\leq\tfrac{\delta^n}{1-\delta}|x_1-x_0|\)

La iteración de punto fijo no sólo se restringe a funciones escalares de una variable real, sino también se puede aplicar con más generalidad a transformaciones de espacios métricos completos. En particular, en la resolución de sistemas de ecuaciones lineales, se conoce bajo el nombre de método de Gauss-Seidel.

Ficha resumen

  • Tipo: punto fijo / abierto
  • Iteraciones: \(x_{k+1} = g(x_k)\)
  • Orden: lineal, \(q=1\)
  • Coste: \(N\)

Enlaces externos
  1. Fixed-point iteration @ Wikipedia
  2. Brouwer fixed-point theorem @ Wikipedia
  3. Banach fixed-point theorem @ Wikipedia
  4. Gauss-Seidel method @ Wikipedia