Enfoque guía: Técnicas de optimización
Maximizar recuperación con restricciones — del grid search al descenso por gradiente
Ver concepto general MathPlay · Gradiente y optimización (MathPlay) →Técnicas de optimización
Función objetivo, pérdida y gradiente — cómo “aprende” el modelo y cómo buscar mejores condiciones
Idea central
Optimizar en flotación (educativo): elegir pH, aire y espumante para maximizar recuperación sin violar límites de planta ni empeorar espuma. En ML: minimizar pérdida L ajustando β.
Conecta todo el curso: datos → f(x) → ∇f → paso de mejora.
1. Problema de optimización
max f(x) sujeto a xmin ≤ x ≤ xmax
Demo lineal (soft sensor unidad 8): f(x) = Xβ. Si solo movieras espumante (otros fijos en medias), el máximo lineal sin restricciones empujaría espumante al mínimo técnico — por eso en planta real hay restricciones y modelos no lineales.
| Método | Idea | En demo flotación |
|---|---|---|
| Grid search | Probar grilla de valores | espumante 28–40, aire 100–140 |
| Descenso por gradiente | x ← x + α∇f (max) o −∇L (min) | Ajuste de β al entrenar regresión |
| Restricciones | pH, dosificación máx. | No automatizar sin metalurgia |
2. Pérdida del soft sensor (regresión)
L(β) = (1/n) Σ (yi − Xiβ)²
Entrenar = encontrar β que minimiza L. Solución cerrada (OLS) coincide con LinearRegression del Paso 8. R² ≈ 0,79, MAE ≈ 1,26 %.
Gradiente de L respecto a β: ∇βL = −(2/n) XT(y − Xβ) — base del descenso por gradiente en redes profundas.
3. Caso operativo — grid educativo
Con otras variables en medias, evaluar espumante en [28, 46]: recuperación estimada cae ~0,27 pp por cada +1 mL/min espumante. Combinar con P(evento) (unidad 4/8): optimización multi-objetivo (recuperación vs riesgo espuma).
Cierre curso (Módulos 1–3): estabilidad → sospechosos → riesgo → geometría → estimación → sensibilidad → dinámica → optimización. Mismo CSV, mismo caso sobre-espumación. Prototipo educativo.
4. Excel — Solver (conceptual)
- Define celda objetivo: recuperación estimada = f(pH, esp, aire, …).
- Variables cambiantes: pH, espumante (límites operativos).
- Restricción: espumante ≤ 36 (ej. umbral histórico de riesgo).
- Solver → máximo (validar con sentido metalúrgico).
5. Python — grid + gradiente 1 paso
import pandas as pd
import numpy as np
from sklearn.linear_model import LinearRegression
features = ["ph","p80_um","flujo_aire","dosif_espumante_ml_min",
"nivel_celda_pct","ley_cabeza_cu_pct"]
df = pd.read_csv("datos_flotacion_demo.csv")
X, y = df[features].values, df["recuperacion_cu_pct"].values
reg = LinearRegression().fit(X, y)
# Grid espumante
base = df[features].mean().values.copy()
best = (-1e9, None)
for esp in np.arange(28, 46.5, 0.5):
x = base.copy()
x[3] = esp
pred = reg.predict(x.reshape(1,-1))[0]
if pred > best[0]: best = (pred, esp)
print("Mejor esp (solo grid, otros fijos):", best)
# Un paso gradiente en beta (ilustrativo)
# beta_new = beta - lr * grad_L
6. Investigación sugerida
Define objetivo: max recuperación con espumante ≤ 34. Compara grid vs recomendación del operador en 1 hora con evento. ¿Coinciden?
Regístrate al boletín MathPlay
Datos, simulación, visualización, IA y tecnología aplicada a problemas reales de industria y minería.
Sin calendario fijo. Sin spam.
Listo. Te escribo cuando haya algo nuevo.
