Cómo hacer líneas de base energética con R

Líneas de base energéticas con R

Líneas de base energética con R

Hace un tiempo hablamos de los pasos que debían seguirse para realizar una línea de base energética. Vamos a dar un paso más. Construiremos líneas de base energética con R.

R es un programa de libre utilización extremadamente flexible, para cálculos matemáticos y, sobre todo, estadísticos.

La utilización de líneas de base permite un cálculo racional de los ahorros generados tras la implantación de una medida de eficiencia energética.

Una de las principales objeciones que se ponen en la elaboración de líneas de base energética es que no son suficientemente descriptivas.

Incluso en procesos muy complejos, se ha observado que es posible establecer ajustes con coeficientes de regresión muy similares. Cuando en una línea de producción hay consumos importantes puede resultar conveniente establecer varias líneas de base energéticas. El tratamiento es idéntico y no supone una mayor complejidad.

Lo normal es construir las líneas de base energéticas mediante regresión por mínimos cuadrados a partir de los datos disponibles.

En muchos casos se puede suponer que la relación entre producción y eficiencia se aproxima a una curva cuadrática de tipo y=ax2+bx+c. El problema consiste en hallar los coeficientes a, b y c que hacen mínimos los cuadrados de la diferencia de los valores de la curva con los valores reales:

min ∑(axi2+bxi+c-yi)2

En este problema, las mediciones reales son las xi e yi y las incógnitas son los coeficientes a, b y c.

Ejemplo

Tenemos dos columnas de datos en un fichero de excel, correspondientes a consumo eléctrico (kWh) y producción (litros) en una fábrica durante un período de tiempo (un mes). La condición es que los intervalos en que se miden consumo y producción sean iguales.

A partir de estos datos se calcula el consumo específico por unidad en kWh/l.

Esta variable (kWh/l) mide la eficiencia energética de la empresa para una producción dada. A mayor producción, el coste unitario suele disminuir. Se aprovechan con más eficacia los recursos de la fábrica.

Vamos a resolver la construcción de una línea de base energética con estos datos con Excel y con R.

Líneas de base energética con Excel

Mediante Excel, basta con seleccionar las columnas que tienen los datos de producción y eficiencia. Elegimos el gráfico apropiado y aplicamos las opciones de línea de tendencia con polinomio de grado 2.

El resultado, para el ejemplo que hemos definido es:

Líneas de base energéticas con R

Para obtener los valores numéricos de la regresión se puede utilizar la función (en Excel):

estimacion.lineal(eficiencia;producción;1;1) (teclear CRTL+ALT+ENTER), donde:

– eficiencia es la columna del eje y de la gráfica

– producción es el bloque de datos que contiene la producción y el cuadrado de la producción. Hay que elaborar, por lo tanto, una columna con el cuadrado de la producción.

– no olvidar la combinación de teclas de entrada (ctrl+alt+enter)

El resultado aparece en forma de tabla (los rótulos y sombreados son míos):

Líneas de base energéticas con R

La hoja de datos de Libreoffice, suite informática gratuita, tiene una función similar, si bien no cuenta con unas funciones gráficas tan depuradas como EXCEL. A la hora de hacer los cálculos hay que tener mucho cuidado con números tan bajos para evitar errores de redondeo.

Líneas de base energética con R

R es un programa gratuito de enorme potencia para cálculos matemáticos y estadísticos. La curva de aprendizaje inicial es un poco laboriosa. Cuenta con un escritorio denominado RStudio que facilita su uso.

La flexibilidad de este programa, a diferencia de EXCEL, es absoluta. Puede seleccionarse cualquier parámetro de representación de una curva. Esta ventaja es, en aplicaciones sencillas, un inconveniente. Mejor utilizar EXCEL que asigna escalas de manera automática.

Para utilizar los datos en RStudio, hay que cargarlos previamente. El procedimiento es simple: copiar la tabla de excel y pegarla al bloc de notas u otro editor que permita guardar en modo texto. Aparecerán dos columnas encabezadas por “kWh” y “l”. Es importante copiar también el encabezado:

Líneas de base energéticas con R

Una vez leídos los datos (primera línea del código que adjunto) se procede al cálculo y representación de la línea de base energética.

El código genera una columna de eficiencia (divide kWh entre l) y, cuando se requiere, el cuadrado de la producción (l2 en el código).

# Generación de líneas de base energéticas
# carga de los datos
linea=read.table("C:/ruta_completa_de_acceso_archivo/datos.txt",sep="",header=TRUE)
#añadimos una columna con la eficiencia
linea$eficiencia=linea$kWh/linea$l
#Regresión polinómica, usando funciones de R
#Buscamos un ajuste cuadrático
l2=linea$l^2 #el valor de la producción al cuadrado
reg=lm(linea$eficiencia~linea$l+l2)
summary(reg)$r.squared
a=reg$coefficients[3]
b=reg$coefficients[2]
c=reg$coefficients[1]
#función de la curva estimada

f=function(x){a*x^2+b*x+c}

#graficando
plot(linea$l,linea$eficiencia,xlim=c(min(linea$l),max(linea$l)),xaxp=c(300000,800000,20),pch=16,cex=.5,col="darkblue",main="Línea de base energética 2015",xlab="litros",ylab="kWh/l")
curve(f,xlim = c(min(linea$l),max(linea$l)),add=TRUE,col="green",lwd=2)

text(580000,0.23,expression(a*x^2+b*x+c),pos=3)
text(550000,0.2,"a= ",pos=3)
text(650000,0.2,a,pos=3)
text(550000,0.18,"b= ",pos=3)
text(650000,0.18,b,pos=3)
text(550000,0.16,"c= ",pos=3)
text(590000,0.16,round(c,5),pos=3)

#los puntos calculados según la ecuación de regresión
points(linea$l,sapply(linea$l,f))

El resultado gráfico del código aparece en la siguiente imagen:

Líneas de base energéticas con R

Hay que tener en cuenta, para validar nuestro modelo, que el coeficiente de correlación, R2 sea próximo a la unidad. Esto nos permitirá prever consumos en función de la producción con gran fiabilidad.

De la misma manera, resulta sencillo ampliar la regresión a más variables. Es decir, si sospechamos que la eficiencia puede depender, además de la producción, de otras variables (temperatura, humedad, otros parámetros de proceso)

 

 

2 comentarios en “Cómo hacer líneas de base energética con R

  • R es una herramienta que tiene un gran potencial en la ingenieria. Merece la pena invertir un poco de tiempo en superar esa pequeña barrera inicial.

    • Así es, Juan Carlos, vale la pena conocer todo su potencial, muy grande cuando se tienen muchos datos y de diferentes tipos. He dedicado bastantes horas a aprender a manejarlo en un curso de formación en la plataforma de MiriadaX. Me habría ahorrado mucho trabajo hace un par de años.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.plugin cookies

ACEPTAR
Aviso de cookies