Caso aplicado · Enfoque clase

Enfoque clase: Covarianza y correlacion

¿Que variables se mueven junto con la sobre-espumacion?

Mate MathPlay · Flotación Cu · Material revisado

Flotación CuExcelPython
Ver concepto general MathPlay →
Inteligencia artificial aplicada a minería · Módulo 1

Covarianza y correlación en flotación de cobre

Cómo detectar qué variables se mueven juntas cuando la planta empieza a perder estabilidad.

Idea Central

En la clase anterior preguntamos si la planta estaba estable. Ahora preguntamos algo más fino:

¿Qué variables se mueven juntas cuando aparece el problema?

La covarianza y la correlación nos ayudan a encontrar relaciones entre variables. No demuestran causa, pero sí ayudan a priorizar sospechosos.

1. Matemática Simple

Covarianza positiva

Suben juntas

Si sube el flujo de aire y también sube el nivel de celda: covarianza positiva.
Covarianza negativa

Una sube y otra baja

Si sube la ley de relave y baja la recuperación: covarianza negativa.
Cerca de cero

No hay patrón claro

Si una variable cambia y la otra no sigue un patrón: relación débil o nula.

¿Por qué usamos correlación?

La covarianza depende de la escala. El P80 se mide en micras, la recuperación en porcentaje y los reactivos en otras unidades. La correlación estandariza la relación y siempre queda entre -1 y +1.

+1 = relación positiva perfecta 0 = sin relación lineal clara -1 = relación negativa perfecta
0.00 a 0.20Muy débil
0.20 a 0.40Débil
0.40 a 0.60Moderada
0.60 a 0.80Fuerte
0.80 a 1.00Muy fuerte

2. Aplicación Al Caso De Sobre-Espumación

Problema: en una planta concentradora de cobre ocurre sobre-espumación en celdas de flotación. Esto desestabiliza nivel de pulpa, espuma, arrastre, ley de concentrado y recuperación.

Pregunta operativa: ¿podemos detectar condiciones que anticipan la sobre-espumación y estimar su impacto sobre la recuperación?

Con covarianza y correlación, la pregunta se vuelve: ¿qué variables se mueven junto con la sobre-espumación, la pérdida de recuperación o el aumento de ley de relave?

3. Relaciones Que Vale La Pena Buscar

Relación Pregunta de planta Interpretación esperada
flujo_aire vs nivel_celda Si sube el aire, se altera el nivel? Relación positiva puede indicar inestabilidad por aireación
dosificacion_espumante vs evento_sobre_espumacion Más espumante coincide con más eventos? Posible señal temprana o causa operacional
nivel_celda vs evento_sobre_espumacion Nivel alto coincide con eventos? Señal directa de pérdida de control
p80 vs recuperacion_cu Mineral más grueso reduce recuperación? Relación negativa esperada
ley_relave_cu vs recuperacion_cu Más cobre en relave reduce recuperación? Relación negativa fuerte esperada
ley_concentrado_cu vs recuperacion_cu Mayor calidad reduce recuperación? Puede aparecer el trade-off metalúrgico
Advertencia: la correlación no sentencia culpables; ordena sospechosos.

4. Ejercicio En Clase

La pregunta de trabajo será:

¿Qué variable deberíamos priorizar para investigar la sobre-espumación?

Compararemos cada variable contra evento_sobre_espumacion y contra recuperacion_cu.

Variable X Variable Y Correlación Lectura
flujo_aire evento_sobre_espumacion fórmula Señal candidata
nivel_celda evento_sobre_espumacion fórmula Señal directa
dosificacion_espumante evento_sobre_espumacion fórmula Posible causa
p80 recuperacion_cu fórmula Condición de molienda
ley_relave_cu recuperacion_cu fórmula Pérdida metalúrgica

Lectura esperada: si nivel, espumante y aire tienen correlación alta con el evento, son candidatas a variables de alerta. La recuperación suele ser más una consecuencia.

5. Excel: Fórmulas Básicas

Archivo de trabajo: Abre o descargue flotacion_cobre.xlsx

flotacion_cobre.xlsx

Hoja: Datos

Covarianza

Espumante vs evento: =COVAR.M(Datos!L2:L241,Datos!N2:N241) Según versión de Excel: =COVARIANZA.M(Datos!L2:L241,Datos!N2:N241)

Correlación

Flujo de aire vs evento: =COEF.DE.CORREL(Datos!I2:I241,Datos!N2:N241) Nivel de celda vs evento: =COEF.DE.CORREL(Datos!J2:J241,Datos!N2:N241) Espumante vs evento: =COEF.DE.CORREL(Datos!L2:L241,Datos!N2:N241) P80 vs recuperación: =COEF.DE.CORREL(Datos!H2:H241,Datos!F2:F241) Ley de relave vs recuperación: =COEF.DE.CORREL(Datos!E2:E241,Datos!F2:F241)

Matriz de correlación

Crear una tabla con recuperación, ley de relave, P80, flujo de aire, nivel, espumante y evento. Luego calcular correlaciones cruzadas y aplicar formato condicional.

6. Python: Mismo Cálculo, Más Automatizado

Archivo de trabajo: Abre o descargue flotacion_cobre.xlsx

import pandas as pd

df = pd.read_excel(
    "flotacion_cobre.xlsx",
    sheet_name="Datos"
)

variables = [
    "recuperacion_cu",
    "ley_relave_cu",
    "p80",
    "flujo_aire",
    "nivel_celda",
    "ph",
    "dosificacion_espumante",
    "evento_sobre_espumacion"
]

df[variables].corr()

Correlación con el evento

correlacion_evento = (
    df[variables]
    .corr()["evento_sobre_espumacion"]
    .sort_values(ascending=False)
)

correlacion_evento

Correlación con recuperación

correlacion_recuperacion = (
    df[variables]
    .corr()["recuperacion_cu"]
    .sort_values()
)

correlacion_recuperacion
Ver funcionando código python

7. Puente Hacia Machine Learning

Archivo de trabajo: Abre o descargue flotacion_cobre.xlsx

La correlación ayuda a escoger las primeras variables, revisar redundancias y validar si el modelo aprende algo razonable.

Si nivel, aire y espumante se mueven con la sobre-espumación, esas variables son candidatas para el primer clasificador.

Preparar variables para un modelo básico

features_ml = [
    "flujo_aire",
    "nivel_celda",
    "dosificacion_espumante",
    "p80",
    "densidad_pulpa",
    "ph"
]

X = df[features_ml]
y = df["evento_sobre_espumacion"]

Clasificador simple

from sklearn.model_selection import train_test_split
from sklearn.linear_model import LogisticRegression
from sklearn.metrics import classification_report

X_train, X_test, y_train, y_test = train_test_split(
    X, y, test_size=0.2, random_state=42, stratify=y
)

modelo = LogisticRegression(max_iter=1000)
modelo.fit(X_train, y_train)

pred = modelo.predict(X_test)
print(classification_report(y_test, pred))
Ver funcionando código python

8. Cierre Conceptual

La covarianza y la correlación permiten pasar de esta pregunta:

¿Qué variables se mueven?

A esta otra:

¿Qué variables se mueven juntas cuando aparece el problema?
Mensaje final: la correlación no descubre causas definitivas, pero ayuda a priorizar sospechosos. En flotación, si nivel, aire y espumante se mueven junto con la sobre-espumación, esas variables merecen entrar al análisis y posiblemente al primer soft sensor educativo.

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.

← Volver al caso