Presentamos una calculadora interactiva para visualizar la convergencia del algoritmo de
descenso por gradiente aplicado a una función de dos variables \( f(x,y) \).
El algoritmo de descenso por gradiente ajusta iterativamente los valores de \( x \) y \( y \) para encontrar el mínimo de la función \( f(x, y) \). Comenzando con valores iniciales \( x_0 \) y \( y_0 \), utiliza las derivadas parciales de la función para hacer pasos hacia el mínimo, controlado por la tasa de aprendizaje \( r \). El proceso continúa hasta que los cambios en los valores sean lo suficientemente pequeños o se cumpla otro criterio de detención.
A continuación se describe paso a paso el proceso de descenso por gradiente para una función \( f(x, y) \) con valores iniciales \( x_0 \) y \( y_0 \), y una tasa de aprendizaje \( r \):
Descripción del Descenso por Gradiente
1. Inicialización:
- Comienza con una estimación inicial para las variables \( x \) y \( y \). Dejemos que estos valores iniciales sean \( x_0 \) y \( y_0 \).
- Elige una tasa de aprendizaje \( r \), que controla el tamaño de los pasos que se dan hacia el mínimo.
2. Calcular Derivadas Parciales:
- Para la función \( f(x, y) \), calcula las derivadas parciales con respecto a \( x \) y \( y \):
\[
\dfrac{\partial f}{\partial x} \quad \text{y} \quad \dfrac{\partial f}{\partial y}
\]
- Evalúa estas derivadas parciales en los valores actuales de \( x \) y \( y \). Denotamos estas derivadas como \( \dfrac{\partial f}{\partial x}(x_k, y_k) \) y \( \dfrac{\partial f}{\partial y}(x_k, y_k) \), donde \( k \) es el índice de la iteración actual.
3. Reglas de Actualización:
- Ajusta los valores de \( x \) y \( y \) moviéndolos en la dirección opuesta a las derivadas (ya que estamos minimizando la función):
\[
x_{k+1} = x_k - r \dfrac{\partial f}{\partial x}(x_k, y_k)
\]
\[
y_{k+1} = y_k - r \dfrac{\partial f}{\partial y}(x_k, y_k)
\]
- Aquí, \( x_{k+1} \) y \( y_{k+1} \) son los valores actualizados de \( x \) y \( y \) después de una iteración.
4. Iteración:
- Repite el proceso de calcular las derivadas parciales y actualizar los valores de \( x \) y \( y \) hasta que se cumpla un criterio de detención. El criterio de detención puede ser:
- Un número máximo de iteraciones.
- El cambio en los valores de \( x \) y \( y \) entre iteraciones es menor que un umbral predefinido.
- Las magnitudes de las derivadas \( \dfrac{\partial f}{\partial x}(x_k, y_k) \) y \( \dfrac{\partial f}{\partial y}(x_k, y_k) \) son menores que un umbral predefinido.
5. Convergencia:
- Una vez que se cumple el criterio de detención, los valores de \( x \) y \( y \) deberían estar cerca de los valores que minimizan la función \( f(x, y) \).
Otra Calculadora de Descenso por Gradiente para investigar la convergencia también está incluida.
Uso de la Calculadora
Esta calculadora se utiliza únicamente con fines educativos para visualizar el algoritmo de descenso por gradiente. Sería una buena idea que las funciones ingresadas en la calculadora tengan un valor mínimo y que los valores iniciales se encuentren gráficamente, por ejemplo.
Ingrese la función \( f(x,y) \), los valores iniciales \( x_0 \) y \( y_0 \) de \( x \) y \( y \) y la tasa de aprendizaje \( r \).
Las salidas son:
1) Las derivadas parciales \(
\dfrac{\partial f}{\partial x} \; \text{y} \; \dfrac{\partial f}{\partial y}
\) de \( f(x,y) \)
2) El número de paso, así como los valores actualizados de \( x \) y \( y \),
3) Se muestran los valores de las derivadas parciales en los valores actualizados de \( x \) y \( y \).
4) Un gráfico de todos los valores actualizados de \( x \) y \( y \).
5) Una tabla con los valores de \( x \) y \( y \), los valores de las derivadas parciales, así como el valor de \( f(x,y) \), se presentan como salida.
Nota de la tabla de valores a continuación que cuando hay convergencia, las derivadas parciales \(
\dfrac{\partial f}{\partial x} \; \text{y} \; \dfrac{\partial f}{\partial y}
\) se aproximan a cero y \( f(x,y) \) se aproxima a su valor mínimo local.