Título: Predicción de la Velocidad del Viento para la ...
Transcript of Título: Predicción de la Velocidad del Viento para la ...
Título: Predicción de la Velocidad del Viento para la Generación Eólica
mediante Redes Neuronales Artificiales
Autor: Daniel Pérez Rodríguez
Tutor: M.Sc. Alberto A. Limonte Ruiz
Julio 2019
Departamento de Electroenergética
Title: Prediction of Wind Speed for Wind Generation by Artificial
Neural Networks
Author: Daniel Pérez Rodríguez
Thesis Director: M.Sc. Alberto A. Limonte Ruiz
Electroenergetic Department
July 2019
Este documento es Propiedad Patrimonial de la Universidad Central “Marta Abreu” de
Las Villas, y se encuentra depositado en los fondos de la Biblioteca Universitaria
“Chiqui Gómez Lubián” subordinada a la Dirección de Información Científico Técnica
de la mencionada casa de altos estudios.
Se autoriza su utilización bajo la licencia siguiente:
Atribución- No Comercial- Compartir Igual
Para cualquier información contacte con:
Dirección de Información Científico Técnica. Universidad Central “Marta Abreu” de
Las Villas. Carretera a Camajuaní. Km 5½. Santa Clara. Villa Clara. Cuba. CP. 54 830
Teléfonos.: +53 01 42281503-1419
A mi novia Chabelys,
quien estuvo a mi lado a cada instante
y pudo soportar en todo momento mi estrés.
AGRADECIMIENTOS
Al M.Sc. Alberto A. Limonte Ruiz, mi tutor, por haberme propuesto el tema y por su
comprensión, oportunas sugerencias y recomendaciones.
Al profesor Reinier por toda la ayuda brindada, apoyo e ideas compartidas.
Al profesor Lugones por sus recomendaciones e invitaciones al Fórum de la Empresa
Eléctrica y la UNAICC, las cuales fueron experiencias muy valiosas para la confección y
realización de este trabajo.
A mi amigo Alex Estrada, por su apoyo y recordarme que no todo en esta vida puede ser
trabajo y trabajo.
A mi familia, por creer en mí en todo momento y darme siempre su apoyo incondicional.
A Meme y Membrides (Papi) por todo el cariño y apoyo brindado.
A mi hermano Fernando, que a cada segundo, cada minuto, CADA INSTANTE, siempre
estuvo preguntándome sobre la tesis y diciéndome que la hiciera rápido para que no me
atrasara.
RESUMEN
La presente investigación surge ante la necesidad de predicción de la velocidad del viento en
instalaciones eólicas, cuya constante intermitencia afecta negativamente la calidad de la
electricidad que se entrega a la red, así como el desempeño de los operadores de la
instalación, quienes deben contar con las reservas que aseguren un buen funcionamiento del
sistema. En consecuencia, se ofrece una herramienta basada en Redes Neuronales
Artificiales (RNA), capaz de predecir la velocidad del viento en un horizonte de pronóstico de
corto plazo, más específicamente de una hora en el futuro. El tipo de RNA que se emplea es
la Feedforward Backpropagation, utilizada por diversos autores debido a las precisas
soluciones que ofrece en problemas de predicción y aproximación. Mediante el Neural
Network Toolbox de Matlab se conforman cuatro modelos, diferenciándose entre sí por
cambios en su arquitectura y parámetros internos, con el objetivo de identificar la mejor
topología para este tipo de aplicaciones. Como resultado del proceso investigativo se ofrece
una herramienta capaz de predecir con gran precisión la velocidad del viento a corto plazo,
con valores de Error Medio Absoluto (MAE) y Error Medio Cuadrático (MSE) por debajo de
las 0.231 y 0.086 unidades respectivamente, lo que comparado con otras publicaciones es
un resultado muy favorable. El trabajo podrá ser utilizado con fines docentes en la formación
profesional de ingenieros eléctricos, así como, ser utilizado en cualquier industria o servicio
que requiera predecir la velocidad del viento.
Palabras Clave: RNA, predicción, velocidad del viento.
ÍNDICE
INTRODUCCIÓN .................................................................................................................... 1
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA) ............ 6
1.1 Energía eólica ........................................................................................................... 6
1.1.1 Necesidad de predicción.................................................................................... 8
1.1.2 Horizontes de predicción ................................................................................... 8
1.1.3 Modelos de predicción ....................................................................................... 9
1.1.4 Principales modelos utilizados en la predicción ............................................... 10
1.1.5 Selección del modelo a emplear ...................................................................... 11
1.2 Redes Neuronales Artificiales (RNA) ...................................................................... 12
1.2.1 Neurona biológica ............................................................................................ 12
1.2.2 Neurona artificial .............................................................................................. 13
1.2.3 Definición de RNA ........................................................................................... 14
1.2.4 Funciones de activación de una RNA .............................................................. 15
1.2.5 Arquitectura de una RNA ................................................................................. 16
1.2.6 Entrenamiento, aprendizaje y ejecución .......................................................... 17
1.2.7 Clasificación de las RNA.................................................................................. 18
1.2.8 El algoritmo backpropagation .......................................................................... 19
1.2.9 Algoritmos de entrenamiento ........................................................................... 20
1.2.10 Tipos de RNA .................................................................................................. 21
1.2.11 Red Feedforward Backpropagation ................................................................. 21
1.3 Aspectos esenciales en el diseño de una RNA ....................................................... 22
1.3.1 Tratamiento de los datos ................................................................................. 22
1.3.1.1 Normalización de los datos .......................................................................... 22
1.3.1.2 Concepciones básicas ................................................................................. 23
1.3.2 Número de neuronas en la capa oculta ........................................................... 24
1.3.3 Validación y criterios de evaluación ................................................................. 24
_____________________ ÍNDICE
1.4 Conclusiones del capítulo ....................................................................................... 25
CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION
PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO ............................................... 27
2.1 Neural Network Toolbox ......................................................................................... 27
2.2 Implementación de redes feedforward backpropagation en el Neural Network
Toolbox ............................................................................................................................. 28
2.2.1 Creación, configuración e inicialización de la red ............................................. 28
2.2.2 Ajustes adicionales en la arquitectura de la red ............................................... 29
2.2.3 Procesado y división de los datos .................................................................... 30
2.2.4 Función de desempeño y algoritmo de entrenamiento ..................................... 32
2.2.5 Entrenamiento de la red neuronal .................................................................... 34
2.2.5.1 Criterios de parada ....................................................................................... 35
2.2.5.2 Gráficas para el análisis del entrenamiento .................................................. 35
2.2.6 Uso de la RNA ................................................................................................. 37
2.3 Modelos para la predicción a corto plazo de la velocidad del viento ....................... 37
2.3.1 Datos utilizados ............................................................................................... 38
2.3.2 Modelo 1 .......................................................................................................... 42
2.3.3 Modelo 2 .......................................................................................................... 43
2.3.4 Modelo 3 .......................................................................................................... 44
2.3.5 Modelo 4 .......................................................................................................... 45
2.4 Conclusiones del capítulo ....................................................................................... 46
CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE
LOS RESULTADOS ............................................................................................................. 47
3.1 Entrenamiento y validación de los modelos ............................................................ 47
3.1.1 Modelo 1 .......................................................................................................... 47
3.1.2 Modelo 2 .......................................................................................................... 49
3.1.3 Modelo 3 .......................................................................................................... 51
3.1.4 Modelo 4 .......................................................................................................... 53
3.2 Análisis de los resultados obtenidos del proceso de entrenamiento ........................ 55
3.3 Comparación con resultados publicados................................................................. 56
3.4 Conclusiones del capítulo ....................................................................................... 58
_____________________ ÍNDICE
CONCLUSIONES ................................................................................................................. 59
RECOMENDACIONES ......................................................................................................... 60
BIBLIOGRAFÍA .................................................................................................................... 61
ANEXOS .............................................................................................................................. 64
1
INTRODUCCIÓN
En los últimos años la demanda mundial de energía ha alcanzado un incremento
significativo, llegando a superar en seis veces los valores registrados en 1950. El informe
estadístico del 2018 de la BP México [1], reporta que en 2017 la demanda mundial de
energía se incrementó en un 2.2%, valor que superó en un 0.5% al promedio de los últimos
10 años y en un 1% al valor registrado en 2016. Pero eso no es todo, según [2], predicciones
de la Agencia Internacional de la Energía (AIE) avisan que la demanda energética podría
elevarse en un 30% para el año 2040, valor equivalente a añadir otra China e India a la
demanda global.
La creciente demanda presupone un gran conflicto para la humanidad, pues la mayor parte
de la energía que se produce proviene del uso de fuentes no renovables de energía, entre
ellas el carbón, el gas natural y el petróleo. Estas fuentes no renovables presentan dos
desventajas fundamentales:
1. No son renovables y en algún momento concreto del tiempo se agotarán.
2. Su uso hace que se liberen a la atmósfera altos niveles de dióxido de carbono (CO2).
Esta última desventaja es uno de los principales factores que ha conllevado a un creciente
cambio climático en los últimos años, que se caracteriza por un marcado aumento de las
temperaturas, además de otras modificaciones en el clima de la tierra. Según [2] y [3]
representa uno de los desafíos más grandes para las sociedades contemporáneas debido a
los efectos negativos que provoca. Los estudios señalan como principales consecuencias
vinculadas al cambio climático:
Mayor frecuencia de fenómenos meteorológicos extremos.
Subidas en el nivel del mar.
Pérdida de tierra útil para el cultivo y por ello mayor escasez de alimentos.
Muertes prematuras, derivadas de la contaminación producida por el uso de
combustibles fósiles.
Redistribución de los recursos hídricos.
Pérdidas de biodiversidad e intensificación de flujos migratorios.
Con el fin de mitigar estas consecuencias se firma en 2015 el Acuerdo de París, el cual
pretende lograr que el calentamiento global permanezca dentro rangos manejables por el
INTRODUCCIÓN
2
hombre, estableciéndose como objetivo que para finales del siglo XXI el aumento medio de
las temperaturas no exceda los 2 °C respecto a los niveles preindustriales. Sin embargo, [2]
y [3] afirman que el mundo se encuentra muy distante del cumplimiento de dicho acuerdo y la
AIE pronostica que el aumento de las temperaturas oscilará entre 2,7 y 3,5 °C para finales
del siglo, siendo así, que para lograr cumplir el acuerdo, las emisiones de CO2 deben
reducirse a la mitad de su valor actual, las cuales según [1] sufrieron en 2017 un aumento
del 1,6% luego de permanecer prácticamente invariables desde el 2014.
Todas las razones anteriores son muestra de la imperante necesidad mundial por reforzar el
ahorro energético y apoyar el uso de tecnologías con poca o nula emisión de CO2. De esta
manera, juegan un papel fundamental las energías renovables, las cuales han alcanzado
mayor aplicación y un extenso perfeccionamiento tecnológico en la actualidad. Según [1], en
2017 la energía renovable aumentó en un 17% y su participación en la generación eléctrica
se elevó de 7,4% a 8,4%, lo que representó el mayor incremento jamás registrado y donde
lideró fuertemente la energía eólica, que proporcionó más de la mitad del crecimiento de las
energías renovables. Según [4] el total de potencia eólica instalada en 2018 fue de 51.3 GW,
para un total mundial de 591 GW, ocupando los primeros lugares China, Estados Unidos y
Alemania con 211, 96 y 59 GW respectivamente. Además, es relevante mencionar que ya
son más de 30 los países con más de 1 GW de potencia eólica instalada.
La energía eólica ha sido aprovechada durante muchos siglos por el ser humano,
destacándose entre sus primeras aplicaciones las velas en la navegación y los molinos para
triturar granos, sin embargo, no fue hasta recién el siglo pasado en que comenzó su
desarrollo en la generación eléctrica [5], [6]. Los programas de investigación y desarrollo
llevados a cabo en los últimos años han resultado en sistemas eólicos modernos con costos
cada vez menores y marcados avances en la tecnología de trabajo e identificación de ricas
fuentes de viento, convirtiéndose así, en uno de los mercados de más rápido crecimiento y
que ofrece oportunidades limpias y baratas para la futura generación de energía, razón por la
cual muchos países alrededor del mundo han invertido y establecido ambiciosas metas para
su desarrollo [4], [6]–[8].
Cuba, según exponen [9] y [10], cuenta con 20 aerogeneradores y una potencia instalada en
su conjunto de 11.7 MW, lo que la hace ocupar a nivel mundial el puesto 69 en el uso de
energía eólica. Estos aerogeneradores se encuentran distribuidos en cuatro parques eólicos:
Turigüanó en Ciego de Ávila, Los Canarreos en la Isla de la Juventud, Gibara 1 y Gibara 2
en Holguín.
INTRODUCCIÓN
3
Añade [11] que actualmente en el municipio Jesús Menéndez de Las Tunas se construyen
dos parques eólicos de tecnología completamente china, los que generarán en conjunto
alrededor de 101 MW de potencia que serán incorporados al Sistema Eléctrico Nacional
(SEN), convirtiéndoles en los mayores parques eólicos de Cuba. El primer parque, La
Herradura 1, contará con 34 máquinas de 1.5 MW del suministrador Goldwind y estará
compuesto por cinco circuitos. El segundo, La Herradura 2, contará con 20 máquinas de 2.5
MW del suministrador Dongfang Electric Corporation y también estará distribuido en cinco
circuitos. Una vez terminadas La Herradura 1 y La Herradura 2, generarán aproximadamente
155.9 y 149.7 GWh/año respectivamente, lo que posibilitará remplazar cerca de 78 000
toneladas de combustible fósil al año y reducir considerablemente la emisión de CO2 a la
atmósfera.
Es importante destacar que se prevé la construcción de otros 12 parques en distintas zonas
del país para generar un total de 633 MW, todo esto como parte del proceso de actualización
del modelo económico cubano, el cual sostiene como uno de sus objetivos principales
alcanzar para el año 2030 un 24% de energía generada a partir de fuentes renovables.
Aunque son bien marcadas las ventajas que posee la energía eólica: mínimo impacto al
medio ambiente, fuente de energía abundante, no usa combustibles y construcción en plazos
relativamente rápidos, también posee importantes desventajas, entre ellas:
Alto costo inicial.
Rentabilidad sólo en sitios con suficiente viento.
Elevado impacto en el paisaje.
Ruido indeseado.
Variabilidad del viento.
Esta última desventaja, la variabilidad del tiempo, es una de las características más
importantes a tener en cuenta en cualquier instalación eólica, pues, según mencionan [5], [6],
[12]–[16], la potencia eólica capaz de captar la turbina de un aerogenerador es proporcional
al cubo de la velocidad del viento, por lo que, pequeñas variaciones en la velocidad de este
provocan considerables variaciones en la potencia generada. Estas elevadas transiciones
afectan negativamente la calidad de la electricidad (estabilidad del voltaje y la frecuencia)
que se entrega a la red, así como el desempeño de los operadores y planificadores de la
instalación, quienes deben contar en todo momento con las reservas que aseguren un buen
funcionamiento del sistema.
INTRODUCCIÓN
4
La solución más efectiva ante este problema es el uso de modelos de predicción para
estimar a corto, mediano o largo plazo los futuros valores de potencia o velocidad del viento,
lo que permite mayor facilidad de integración de la energía eólica a la red eléctrica y alcanzar
una alta eficiencia en control, gestión, mantenimiento y planificación de la instalación [12]–
[14], [17]. Varios estudios como [18]–[20], han expuesto que los impactos negativos
provocados por la intermitencia del viento se ven reducidos al utilizar técnicas de predicción,
no obstante, han demostrado que se requiere de una técnica avanzada de pronóstico.
Existen diversos modelos (estadísticos, físicos, híbridos, etc.) para el pronóstico de la
velocidad del viento en instalaciones eólicas, no obstante, uno de los más trabajados en los
últimos años por investigadores de todo el mundo son las Redes Neuronales Artificiales
(RNA). Las RNA, debido a su constitución y fundamentos, presentan características
semejantes a las del cerebro humano y su principal ventaja es que pueden utilizarse para la
solución de problemas en donde las técnicas convencionales no funcionan, es decir, en
problemas que no tienen un algoritmo específico para su solución, o cuyo algoritmo es
demasiado complejo para ser encontrado. Por lo tanto, son de especial utilidad cuando
existen gran cantidad de datos y mucha incertidumbre en cuanto a la manera en que estos
se relacionan. Investigaciones que confirman lo anterior son [21]–[26].
Debido al aumento actual del uso de la energía eólica, la cual se ve afectada por la
variabilidad del viento, además de que no existen en Cuba estudios recientes sobre
predicciones mediante RNA en este campo, resulta de marcada importancia enriquecer el
conocimiento sobre esta temática ya que en la actualidad el país pretende aumentar el uso
de esta forma de obtención de energía. Por ello, se plantea como interrogante científica de
la presente investigación:
¿Cómo predecir a corto plazo la velocidad del viento en instalaciones eólicas mediante el
uso de Redes Neuronales Artificiales y aportar así, una herramienta útil que permita
enriquecer el conocimiento sobre esta fuente renovable de energía y su integración a la red
eléctrica nacional?
Estableciéndose como objetivo general:
Desarrollar una herramienta para la predicción a corto plazo de la velocidad del viento
en instalaciones eólicas mediante el uso de Redes Neuronales Artificiales (RNA) en
la plataforma Matlab.
Objetivos específicos:
Describir las RNA y su aplicación en el pronóstico de la velocidad del viento.
INTRODUCCIÓN
5
Describir las posibilidades del Neural Network Toolbox de Matlab en la conformación
de RNA.
Implementar modelos de RNA en Matlab para la predicción de la velocidad del viento.
Analizar los resultados alcanzados por los modelos implementados.
Tareas Técnicas:
Búsqueda y análisis de información bibliográfica relacionada con las RNA y su
aplicación en la predicción de variables vinculadas a instalaciones eólicas.
Búsqueda y análisis de información bibliográfica sobre las posibilidades que ofrece el
Neural Network Toolbox de Matlab para la conformación de RNA.
Implementación de modelos de RNA en Matlab para la predicción de la velocidad del
viento a través de la aplicación de diversas topologías.
Análisis de los resultados obtenidos mediante la comparación con resultados
publicados.
El trabajo permite profundizar en la predicción de la velocidad del viento en instalaciones
eólicas mediante RNA, lo cual puede permitir perfeccionar la impartición de estos contenidos
en el pregrado o el postgrado, además de resolver el problema de la carencia de estudios
sobre este campo en Cuba, y aportar así, una herramienta útil que permita enriquecer el
conocimiento sobre esta fuente renovable de energía. Además, la investigación puede
ayudar a:
Mejorar la preparación de futuros egresados y profesionales de la producción
vinculados a la generación eólica.
Aportar una herramienta útil en Matlab para poder analizar y predecir el
comportamiento del viento con RNA en instalaciones eólicas.
Perfeccionar el desarrollo de laboratorios virtuales.
Los resultados del trabajo pueden ser empleados en el pregrado o el posgrado, así como,
por especialistas de la producción y los servicios en el análisis de casos prácticos donde no
sea posible la experimentación real. Además, también pueden ser replicados en cualquier
industria o servicio que requiera predecir la velocidad del viento en un período determinado.
6
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES
ARTIFICIALES (RNA)
En el presente capítulo se tratan los diferentes elementos que conforman una RNA, así como
los aspectos fundamentales a tener en cuenta en el pronóstico de la velocidad del viento en
cualquier tipo de instalación eólica.
1.1 Energía eólica
Según [27] la energía eólica es aquella que aprovecha la energía cinética del viento para
generar electricidad. Para ello se utilizan los aerogeneradores, cuando el viento incide en sus
aspas, estas comienzan a girar y mueven una turbina, lo que permite transformar la energía
cinética del viento en energía mecánica y esta última en energía eléctrica. Para que este
método funcione, resulta de vital importancia que los aerogeneradores estén ubicados de
forma estratégica para aprovechar las corrientes de aire, por lo que generalmente se
agrupan en lo que se conocen como parques eólicos. Es importante destacar que es una
fuente de energía inagotable y abundante que provoca mínimo impacto al medio ambiente y
no usa combustibles.
La variable que juega un papel fundamental en este tipo de obtención de energía es el
viento, que según [22], es causa del movimiento de masas de aire debido a las diferencias
de densidad y presión originadas por las variaciones de temperatura sobre las distintas
partes del globo terrestre.
En la figura 1.1 se muestra la característica de velocidad del viento contra potencia generada
del parque eólico de Gibara 1 en la provincia de Holguín, el cual, según [28], está
conformado por 6 aerogeneradores de 850 kW de la firma Gamesa. Un aspecto importante
es que esta curva es no lineal y posee una saturación para velocidades de viento superiores
a los 20 m/s. Como se puede observar en la figura 1.1, pequeñas variaciones de la velocidad
del viento provocan considerables variaciones de la potencia generada, tal es el caso, que
una variación de 1 m/s en la velocidad de este significaría en una diferencia de hasta 500 kW
de potencia generada, valor que puede ser mayor o menor en dependencia del fabricante.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
7
Figura 1.1 Curva de Potencia del Parque Eólico de Gibara I en la provincia de Holguín [28].
Esto hace, que se haga muy difícil de mantener un nivel de generación constante o
relativamente constante en un día, pues a lo largo de este el viento experimenta grandes
variaciones, un ejemplo de esto lo muestra la Figura 1.2 donde se reflejan los datos de
velocidad del viento tomados en un mes cada 1 hora en Basilea, Suiza. Según [5], esto se
debe a que el viento es un proceso estocástico que varía según el día, hora, mes y año,
además de depender fuertemente del lugar y altura en donde se mida y de otras variables
meteorológicas tales como la presión, humedad, temperatura y densidad del aire. A su vez,
las montañas, edificios y árboles afectan también de manera importante su perfil de
velocidad.
Figura 1.2 Velocidad del viento horaria en Basilea, Suiza.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
8
1.1.1 Necesidad de predicción
Según [14], la constante intermitencia de la velocidad del viento y su repercusión en la
potencia generada, afecta negativamente la calidad de la electricidad (estabilidad del voltaje
y la frecuencia) que se entrega a la red, así como el desempeño de los operadores y
planificadores de la instalación, quienes deben contar en todo momento con las reservas y
niveles de regulación que aseguren un buen funcionamiento del sistema. Añade también
que, en la medida que los parques eólicos aumentan en capacidad, el papel que estos
juegan en las redes de transmisión se vuelve cada vez más marcado, pues las redes podrían
no estar disponibles para transmitir toda la energía generada en dichos parques, además, la
mayoría de estos se construyen en áreas remotas lo que podría conllevar a congestiones de
la transmisión.
La solución más efectiva para reducir los impactos negativos que provoca el viento, es la
aplicación de una herramienta de predicción. Diversos estudios como [18], [19] y [20],
demuestran que la energía eólica no causaría impactos significativos si se aplica una
correcta y eficiente técnica de pronóstico de la velocidad del viento y/o potencia generada, lo
que permite mayor facilidad de integración de este tipo de energía con la red eléctrica y
alcanzar una alta eficiencia en control, gestión, mantenimiento y planificación de la
instalación.
1.1.2 Horizontes de predicción
El horizonte de predicción según [29] es el período de tiempo (contabilizado desde un
instante determinado en que se realiza la predicción), que determina el momento futuro para
el que se realizan las predicciones, por lo que juega un papel primordial en el diseño de
cualquier modelo de pronóstico. Según [30] el horizonte de predicción de los sistemas de
pronóstico en un parque eólico se divide en 4 categorías, los cuales se resumen en la tabla
1.1.
En su investigación, [29] expone que la predicción a corto plazo es la de mayor interés para
poder actuar en el mercado diario eléctrico, debido a que en la mayoría la presentación de
ofertas se cierra a las 10 horas, siendo esta, la razón por la cual gran parte de los trabajos
publicados que describen modelos de pronóstico se centran en la predicción a corto plazo.
Investigaciones que confirman lo anterior son [23]–[26], [28] y [31].
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
9
Tabla 1.1 Clasificación del horizonte de predicción de los sistemas de pronóstico [30].
Horizonte de predicción Rango de tiempo
Muy corto plazo Desde pocos segundos a 30 minutos en el futuro
Corto plazo Desde 30 minutos a 48 o 72 horas en el futuro
Mediano plazo Desde 48 o 72 horas a 7 días en el futuro
Largo plazo Desde 1 semana a 1 año o más en el futuro
1.1.3 Modelos de predicción
Según [5], [13] y [32] existen cuatro tipos de modelos para la predicción del viento o potencia
generada en instalaciones eólicas:
Modelos Físicos: Utilizan variables físicas como orografía del terreno, presión y
temperatura para estimar la velocidad del viento. Las predicciones mediante este
modelo provienen de los llamados Numerical Weather Prediction (NWP) que son
pronósticos meteorológicos de áreas de gran escala. En general tienen un pobre
desempeño en plazos cortos de predicción, por lo que generalmente se combinan
con modelos estadísticos. Además, se necesita de computadores los suficientemente
potentes para manejar el gran número de ecuaciones y variables involucradas.
Modelos estadísticos: Buscan una relación entre un conjunto de variables y luego
intentan combinarlas, de manera tal, de reproducir la velocidad del viento y/o potencia
generada por la turbina en cierto horizonte de predicción. Entre los modelos más
destacados se encuentran el ARIMA (Modelo Autorregresivo Integrado de Medias
Móviles), ARMA (Modelo Autorregresivo de Medias Móviles), f-ARIMA (ARIMA
fraccionario) y filtros de Kalman. Estos modelos tienen buen comportamiento para la
predicción a corto plazo y presentan como desventaja que su error de pronóstico se
incrementa según aumenta el horizonte de predicción.
Modelos basados en inteligencia artificial: Para realizar el pronóstico utilizan técnicas
computacionales de inteligencia artificial, tales como: Redes Neuronales Artificiales
(RNA), lógica difusa, Máquinas de Soporte Vectorial (SVM) y modelos híbridos. En
estos tipos de modelos, juegan un papel fundamental las RNA pues tienen la
capacidad de aprender comportamientos no lineales y complejos. Estas suelen
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
10
combinarse con lógica difusa para obtener una mayor velocidad de cómputo y
precisión de los pronósticos. Pueden utilizarse para el pronóstico en distintos
horizontes, aunque presentan mejor desempeño en predicciones a corto plazo. Son
muy útiles cuando no se cuenta con un análisis fenomenológico del sistema en
estudio.
Modelos de correlación espacial: toman en cuenta la relación existente entre la
velocidad del viento de distintos sitios y un lugar en particular donde se desee
estimar. Suelen combinarse con otros métodos de predicción como las RNA para
obtener mejores resultados.
1.1.4 Principales modelos utilizados en la predicción
La bibliografía consultada, muestra que los modelos estadísticos y basados en inteligencia
artificial son los que con mayor frecuencia se utilizan en investigaciones relacionadas al
pronóstico de la velocidad del viento en instalaciones eólicas, por la precisión y aplicabilidad
de los resultados que se logran. A continuación, se resumen los métodos utilizados por
algunos autores.
En [17] se utiliza una red Feedforward Backpropagation para realizar la predicción de la
velocidad del viento en un horizonte de 1 y 2 horas en el parque eólico de Sotavento, Galicia.
Se emplean tres algoritmos típicos de entrenamiento: Levenberg - Marquardt, Bayesian
Regularization y Scaled Conjugate Gradient.
En [21] se emplea una Red Autorregresiva no Lineal con Entradas Externas (NARX) para
predecir a largo plazo la velocidad del viento y la potencia eléctrica en un parque eólico de
Nueva York. Se utilizan datos históricos de temperatura, dirección y velocidad del viento,
densidad del aire y potencia generada en dicha estación, tomados cada 5 cinco minutos.
En [22] se emplea una red NARX para predecir la velocidad del viento en la estación
meteorológica Chimborazo. Se utilizan datos de dirección y velocidad del viento tomados
cada 1 hora.
En [23] se analiza y compara el funcionamiento de tres modelos típicos de redes neuronales
artificiales: Feedforward Backpropagation, Radial Basis Function (RBF) y Adaptive Linear
Element (Adaline), para la predicción de la velocidad del viento en un horizonte de 1 hora en
Hannaford y Kulm, Dakota Norte. Se utilizan como entradas al sistema, retardos de la
velocidad del viento.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
11
En [24] se emplea una red Feedforward Backpropagation para predecir la velocidad del
viento en un horizonte de 48 horas y luego transformarla en potencia eólica. La red se crea
con datos históricos de velocidad del viento en el parque eólico de Kinmen, los cuales se
agrupan en 4 grupos diferentes de entrenamiento con el fin de encontrar la mejor forma de
presentar los datos a la red.
En [25] se emplea una red Feedforward Backpropagation para predecir la velocidad del
viento en un horizonte de predicción de 24 horas. Los datos utilizados son mediciones de la
velocidad del viento tomadas cada 1 hora en el mes de junio del 2016 en el Instituto de
Tecnología Asiático (AIT). La entrada a la red es un conjunto de 24 muestras y 30 variables
que representan la velocidad del viento horaria de los pasados 30 días.
En [28] se emplea un Modelo Autorregresivo de Medias Móviles (ARMA) con el fin predecir la
velocidad del viento a muy corto plazo en el parque eólico de Gibara 1 y luego combinar
dicho pronóstico con la curva de potencia del parque, para obtener así, el estimado
energético.
En [31] se realizan pronósticos de la velocidad del viento en un horizonte de predicción de 24
y 48 horas. Se utiliza el ARIMA fraccionario y se emplean como entradas retardos de la
velocidad de viento.
1.1.5 Selección del modelo a emplear
Como se puede notar en la sección anterior, las RNA del tipo Feedforward Backpropagation
son el objeto de investigación más tratado para la predicción de la velocidad del viento y la
potencia generada en cualquier tipo de instalación eólica. Según [14], esto se debe a la
elevada precisión que se obtiene en el pronóstico a corto plazo, su facilidad de modelación,
la elevada velocidad de cómputo que pueden alcanzar y su capacidad para aprender
comportamientos no lineales y complejos sin necesidad de un previo desarrollo estadístico,
además de ser, uno de los temas más tratados a nivel mundial en diferentes esferas dentro y
fuera de la ciencia.
Por las marcadas ventajas que presentan y reconocimiento que muchos autores le atribuyen,
son las RNA del tipo Feedforward Backpropagation el modelo que se estudiará en
profundidad y se utilizará para el desarrollo del presente trabajo.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
12
1.2 Redes Neuronales Artificiales (RNA)
Las RNA están concebidas para simular la capacidad de procesamiento de un sistema
neural biológico. La idea principal, consiste en desarrollar sistemas capaces de realizar
tareas de procesamiento complejo, mediante la interconexión de un alto número de
elementos de muy simple procesamiento, de forma que puedan trabajar en paralelo. Una
RNA es capaz de aprender a resolver una gran cantidad de problemas a través de una serie
de datos de entrada y el adecuado ajuste de los pesos de las interconexiones, además
puede fácilmente adaptarse a nuevos ambientes y tratar con información que se considere
inconsistente, vaga o probabilística. Estos aspectos son los que motivan el desarrollo de
extensas investigaciones a lo largo de todo el mundo.
Para tener un buen entendimiento y definir una RNA es necesario conocer a profundidad el
elemento más simple que la compone, la neurona artificial, así como compararla con su
semejante biológico para establecer las similitudes y diferencias entre ellas. A continuación,
se precisa en qué consisten las neuronas biológicas y artificiales, para luego presentar un
concepto de RNA y analizar los aspectos más esenciales en su confección.
1.2.1 Neurona biológica
Según [33] una neurona biológica es el componente estructural básico del sistema neuronal
de todo ser vivo. En la figura 1.3 se muestra una representación simplificada de una neurona
biológica, donde se aprecian tres unidades funcionales fundamentales:
El cuerpo celular (soma): Contiene el núcleo rodeado por el citoplasma, donde se
hallan diferentes tipos de orgánelos como los cuerpos de Nissl, el retículo
endoplasmático liso, el citoesqueleto y el aparato de Golgi.
Las dendritas: Son terminales de las neuronas y sirven como receptores de impulsos
nerviosos provenientes desde un axón perteneciente a otra neurona y tienen como
función principal recibir dichos impulsos y transmitirlos hasta el cuerpo celular de la
neurona.
El axón: es una prolongación de las neuronas y se encarga de conducir el impulso
nervioso desde el cuerpo celular hacia otra neurona u órgano diana.
En una neurona, según [33], el impulso primario tiene forma de una señal eléctrica que viaja
a través de una dendrita y luego de alcanzar el cuerpo celular, viaja a través de una pequeña
capa llamada sinapsis, la cual está llena de sustancias que actúan como neurotransmisores,
acelerando o desacelerando el flujo de la señal eléctrica. Cada neurona tiene un valor umbral
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
13
de señales eléctricas, por debajo del cual la señal no es transmitida y por encima del cual se
transmite a la siguiente neurona. Mediante dichos procesos, el cerebro humano recuerda,
almacena información y aprende de las varias fuentes de información de su ambiente.
Figura 1.3 Representación simplificada de una neurona biológica [33].
Resumidamente, una neurona biológica recibe entradas externas, las combina y finalmente
obtiene una salida.
1.2.2 Neurona artificial
La neurona artificial, descubierta en 1943 por McCulloch y Pitch, es una unidad de cálculo
que intenta imitar de una manera simple el comportamiento de una neurona biológica o
natural. La figura 1.4 muestra el esquema de una neurona artificial y sus principales
elementos, estos son:
Vector de entrada (X = {X1, X2, …, Xi}).
Vector de pesos (ω = {ω1, ω2, …, ωi}).
Valor umbral de activación (θ).
Función de activación (γ).
Vector de salida (Y).
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
14
Figura 1.4: Esquema de una neurona artificial.
Según [34], la actividad de una neurona artificial consiste en desarrollar la suma ponderada
entre el vector de entrada y el vector de pesos y compararla con un valor umbral de la
neurona para determinar si esta se activará o no. En caso de que se active, genera la salida
deseada a partir de la aplicación de la función de activación al resultado obtenido. La
ecuación 1.1 refleja matemáticamente el funcionamiento de una neurona artificial.
Una pequeña apreciación demuestra que el elemento clave en una neurona artificial consiste
en ajustar correctamente los pesos ω para lograr el valor de salida más cercano al esperado.
Para que esto ocurra, se lleva a cabo un proceso iterativo de cálculo donde se le expone a la
neurona datos conocidos de entrada y salida, con el fin de alcanzar los valores de pesos que
proporcionen un error mínimo en la predicción de valores de salida no conocidos, proceso
que se conoce como aprendizaje o entrenamiento de la neurona [35].
1.2.3 Definición de RNA
No existe una definición general sobre una RNA, existiendo diferencias según el texto o
artículo consultado, encontrándose entre las más completas, las siguientes definiciones:
“Es un sistema dinámico autoadaptativo que imita el sistema nervioso humano.
Adaptable debido a la capacidad de autoajustarse de los elementos procesales que
componen el sistema y es dinámica por ser capaz de estar constantemente
cambiando para adaptarse a las nuevas condiciones”. [22 p. 15]
Es un conjunto de neuronas artificiales interconectadas entre sí, que conforman una
herramienta computacional capaz de procesar grandes cantidades de datos,
desarrollar cálculos en paralelo, asignar los pesos apropiados a los datos más
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
15
importantes, descubrir relaciones de linealidad del fenómeno en estudio, reconocer
patrones de operación y proveer predicciones precisas y confiables [33].
Es un esquema de computación distribuida inspirada en la estructura del sistema
nervioso humano, cuya arquitectura se forma conectando múltiples procesadores
elementales. Es un sistema adaptativo que posee un algoritmo para ajustar sus
parámetros libres y alcanzar así los requerimientos de desempeño del problema
basado en muestras representativas [36].
“Emulan las Redes Neuronales Biológicas y se han utilizado para aprender
estrategias de solución basadas en ejemplos de comportamiento típico de patrones;
estos sistemas no requieren que la tarea a ejecutar se programe, ellos generalizan y
aprenden de la experiencia”. [37 p. 22]
Una vez analizados los diferentes criterios entre autores, se puede concluir en que una Red
Neuronal Artificial (RNA) es una potente herramienta computacional inspirada en el sistema
nervioso de todo ser vivo, formada por un conjunto de neuronas artificiales interconectadas
entre sí y capaz de procesar grandes cantidades de información a su entrada con el
propósito de brindar las respuestas de salida más precisas posibles en una aplicación
determinada.
1.2.4 Funciones de activación de una RNA
Cualquiera sea la vía de cómputo, la combinación de los vectores de entrada con el de
pesos se aplica a la función de transferencia o activación. Esta determina si las entradas se
tomaran en cuenta o no para llevar a cabo la activación de la neurona, y proporcionar así, la
respuesta de la red. Entre las funciones de activación más comunes, tal y como se muestra
en la figura 1.5, se encuentran [33]:
Función lineal:
-
Función de paso binario:
-
-
Función sigmoide:
-
Función gaussiana:
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
16
-
Función tangente hiperbólica:
-
Dentro de estas, la función sigmoide es una de las más utilizadas en las capas ocultas de
una red, caracterizada por tomar valores de entrada comprendidos entre infinito negativo e
infinito positivo y reducirlos a valores de salida en el rango de 0 a 1. Por otro lado, la función
lineal es la que más comúnmente se utiliza en la capa de salida [35].
Figura 1.5 Funciones de activación más comunes [33].
1.2.5 Arquitectura de una RNA
La arquitectura de una red neuronal consiste en la interconexión entre las distintas neuronas.
Estas se agrupan en capas, cada una de ellas con un conjunto de neuronas de número
variable y comportamiento similar. Dentro del esquema de la red, tal y como se muestra en la
figura 1.6, se distinguen tres tipos de capas [22]:
Capa de entrada: Recibe los datos o señales de entrada y los distribuye a las
neuronas de la capa oculta, realiza las funciones de recepción de datos. El número y
tipo de neuronas de esta capa depende de la caracterización y datos del fenómeno
en estudio.
Capas ocultas: A través de los pesos y umbrales, estas capas consiguen la
extracción de características y generalidades de los patrones de ingreso. El número
de capas ocultas y neuronas va a depender del problema a resolver, cuestión que
generalmente se resuelve por métodos de prueba y error.
Capa de salida: Sus neuronas proporcionan la respuesta de la red neuronal a partir
de un estímulo de la capa oculta. El número de neuronas de esta capa depende de la
salida de la red, por lo general se asigna una neurona por cada variable o señal de
salida.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
17
Figura 1.6 Arquitectura de una RNA [33].
1.2.6 Entrenamiento, aprendizaje y ejecución
Una de las principales características de una RNA es su capacidad de aprendizaje, ya que
de acuerdo al porcentaje de aprendizaje la red modifica sus pesos, adaptándolos hasta
conseguir la salida deseada. El entrenamiento, según [22], es el proceso mediante el cual la
red aprende, mediante la utilización de diversos algoritmos de entrenamiento con el fin de
garantizar su aprendizaje más óptimo. El proceso de entrenamiento es normalmente
iterativo, actualizándose los pesos una y otra vez hasta que se alcanza el objetivo deseado.
Una vez que la red ha sido entrenada se pasa al modo de ejecución o recuerdo, que consiste
en mantener fijos los pesos de la red y procesar o simular los datos, es decir, la red es capaz
de replicar o predecir la salida ante entradas desconocidas por ella.
Se pueden distinguir los siguientes tipos de aprendizaje [22]:
Aprendizaje supervisado: La red aprende a través de ejemplos de entrenamiento. Es
capaz de captar la relación entre la entrada y la salida sin necesidad de disponer de
una forma funcional de partida, de esta manera ajusta los pesos mediante la
información del error que se comete en cada paso.
Aprendizaje no supervisado: El conjunto de entrenamiento está constituido sólo por la
entrada, sin salida esperada para estos elementos. El aprendizaje se realiza a través
de la asociación de la información recibida con la almacenada y como consecuencia
se reconocen regularidades en el conjunto de datos, es decir, la red es capaz de
extraer las características y establece una clasificación o categorización.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
18
Aprendizaje híbrido: Es una mezcla de los anteriores, donde se toma la regla de
aprendizaje supervisado para casos maestros, conocidos y generales. Normalmente
el aprendizaje supervisado y no supervisado tienen lugar en capas distintas.
Aprendizaje reforzado: Está a medio camino entre el supervisado y no supervisado, la
información del error es sólo global (bien, mal) y no se suministra la salida deseada.
1.2.7 Clasificación de las RNA
Según el método de supervisión del aprendizaje, las RNA se pueden clasificar en dos
categorías [33]:
Supervisadas: El medio externo ofrece las salidas deseadas para cada una de las
entradas recibidas y la red tiene, durante iteraciones sucesivas, una metodología que
permite a la salida converger al valor deseado. Entre las redes supervisadas se
encuentran las que tienen reglas de aprendizaje basadas en la corrección del error,
como la regla de backpropagation (retroalimentación del error), muy utilizado en
problemas de clasificación y predicción.
No Supervisadas: El medio externo no ofrece ni los valores de salida, ni información
sobre como deber ser tratada la misma, se basa solo en los datos de entrada y la
actualización de los pesos se lleva a cabo internamente en la red. La red por sí
misma buscará su comportamiento más adecuado de acuerdo a cierto criterio y
encontrará estructuras o prototipos en el conjunto de patrones de entrenamiento.
En dependencia del número de capas (entrada, ocultas, y de salida), se pueden clasificar en
los siguientes tipos fundamentales [22]:
Redes monocapa: La red, Figura 1.6a, tiene una capa de neuronas que proyectan las
entradas a una capa de neuronas de salida en la que se realizan diferentes cálculos.
La capa de entrada, por no realizar ningún cálculo, no se cuenta, de ahí el nombre de
redes neuronales de una sola capa. Son muy utilizadas como memorias asociativas.
Redes multicapa: Es una generalización de la anterior. Existen un conjunto de capas
ocultas intermedias entre las capas de entrada y salida. La figura 1.6b ejemplifica una
red multicapa.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
19
Figura 1.7: a) Ejemplo de red neuronal monocapa b) Ejemplo de red neuronal multicapa [38].
Por otro lado, en dependencia del tipo de conexiones, es decir la circulación de información
entre las distintas capas, se pueden clasificar en [34]:
Feedforward: En las redes feedforward (con alimentación hacia delante o
unidireccionales), la información circula en un único sentido, de la capa de entrada a
la capa de salida. Implementan un mapeo no lineal entre un espacio de entrada y
salida mediante el uso de aproximadores de funciones no lineales. Entre las redes
más conocidas de este tipo se encuentran el Perceptrón Multicapa (MLP) o también
conocido como Feedforward Backpropagation y las Máquinas de Soporte Vectorial
(SVM).
Recurrentes: En estas redes la información puede circular entre capas en cualquier
sentido, incluido el de salida a entrada. Se caracterizan por ser no lineales, ser
sistemas completamente interconectados y conformar memorias asociativas. La red
más popular de este tipo es la Hopfield.
1.2.8 El algoritmo backpropagation
El backpropagation (también conocido como algoritmo de propagación inversa o
retroalimentación del error) es un algoritmo popular para el ajuste de los pesos en una red
neuronal, debido a que el error se propaga de manera inversa al funcionamiento normal de la
red. De esta forma, el algoritmo encuentra el error en el proceso de aprendizaje desde las
capas más internas hasta llegar a la entrada; con base en el cálculo de este error se
actualizan los pesos y ganancias de cada capa [33].
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
20
Según [37], una de las grandes ventajas del uso del backpropagation es que la red
aprovecha el trabajo en paralelo de las neuronas para reducir el tiempo requerido por un
procesador secuencial, y así, determinar la correspondencia entre unos patrones dados.
Además, el tiempo de desarrollo de cualquier sistema que se esté tratando de analizar se
puede reducir como consecuencia de que la red puede aprender el algoritmo correcto sin
que alguien tenga que deducirlo por anticipado.
1.2.9 Algoritmos de entrenamiento
Existen numerosos algoritmos de entrenamiento disponibles para los modelos de redes
neuronales, la mayoría de ellos puede ser vista como una aplicación directa de la
optimización y la estimación estadística. Para ilustrar cómo funcionan estos algoritmos, basta
considerar el mecanismo de optimización más simple, el gradiente descendente, el cual
actualiza los pesos de la red en la dirección en que el rendimiento de la función decrece más
rápidamente, el gradiente negativo, de esta manera una iteración de este algoritmo puede
escribirse como [35]:
Donde es el vector actual de pesos y umbrales, es el gradiente actual y es el
coeficiente de aprendizaje. Esta ecuación se itera hasta que la red converja.
Entre los algoritmos de entrenamiento más destacados que utilizan gradientes o métodos
jacobianos, se encuentran:
Levenberg - Marquardt.
Regularización bayesiana.
Gradiente de escala conjugada (SCG).
Gradiente descendente con momento (GDM).
Regla de Hebb.
El algoritmo Levenberg - Marquardt tiene un excelente desarrollo en problemas de ajuste de
funciones (regresión no lineal) y reconocimiento de patrones, además de ser generalmente el
algoritmo más rápido, con la única desventaja de ser menos eficiente en redes muy grandes
(con miles de pesos), por lo que requieren más memoria y tiempo de cómputo. Para el caso
en que se desee entrenar redes muy grandes es más conveniente el uso del SCG por tener
requerimientos de memoria menores y ser mucho más rápido que los algoritmos estándar de
gradiente descendente [35]. Otro algoritmo muy utilizado es la Regularización Bayesiana, la
cual es muy similar al Levenberg - Marquardt, con la diferencia de que para el
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
21
establecimiento y ajuste de los pesos utiliza diferentes técnicas de regularización, lo que la
hace depender de un alto número de iteraciones y procesos internos para poder alcanzar la
generalización de la red.
1.2.10 Tipos de RNA
Existen muchos tipos de RNA, cada una con sus propias características. En la Tabla 1.2 se
recogen los modelos de redes neuronales más utilizados por la bibliografía consultada, de
acuerdo al tipo de aprendizaje (supervisado, no supervisado e híbrido) y la arquitectura de la
red (unidireccional y recurrentes).
Tabla 1.2 Modelos más utilizados de redes neuronales artificiales.
Aprendizaje
supervisado
Aprendizaje no
supervisado
Aprendizaje híbrido
Unidireccionales Perceptrón
Adaline
Perceptrón multicapa
(MLP)
Máquina de Boltzmann
Neocognitrón
Mapas
autoorganizados
Radial Basis
Function (RBF)
Contrapropagación
Recurrentes Red recurrente con
backpropagation
Red NARX
Red de Jordan
Red Hopfield
Memorias asociativas
bidireccionales
1.2.11 Red Feedforward Backpropagation
El Perceptrón Multicapa (MLP), también conocido como Feedforward Backpropagation,
corresponde a la clase de RNA más estudiada por el ámbito científico y la más utilizada en
los diversos campos de aplicación. Es un tipo de red de aprendizaje supervisado, cuya
arquitectura se corresponde con la Figura 1.7b y consiste en un conjunto de neuronas
organizadas en una capa de entrada, una o varias capas ocultas y una capa de salida.
En estas redes, una vez que se aplica un patrón a la entrada como estímulo, este se
propaga desde la primera capa a las capas superiores hasta generar una salida, la cual, se
compara con la salida deseada y se calcula un valor de error que se propaga hacia atrás,
siempre partiendo de la capa de salida hacia todas las neuronas de la capa oculta que
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
22
contribuyen directamente a ella. Este proceso se repite, capa por capa, hasta que todas las
neuronas de la red hayan recibido una señal de error que describa su contribución relativa al
mismo, y, basándose en estas señales se actualizan los pesos de conexión de cada neurona
[37].
Una de las mayores ventajas de la red Feedforward Backpropagation, es que puede
aproximar cualquier función si se escoge una adecuada configuración para la red y un
adecuado número de neuronas en la capa oculta, lo que depende de la experiencia del
desarrollador de la red. Este tipo de red es un excelente aproximador de funciones, aunque
es imposible determinar una configuración exacta de la misma para cada aplicación.
1.3 Aspectos esenciales en el diseño de una RNA
A pesar del desarrollo tecnológico existente en el área de matemática aplicada y métodos de
predicción, no se ha llegado a un consenso generalizado sobre cuál es la mejor manera de
escoger la topología de la red, es decir, el número de capas y el número de neuronas por
capas. Basados en esto, el método de “ensayo y error” es la herramienta más útil al
momento de seleccionarla.
Es necesario, para el correcto y eficiente diseño de una red neuronal, relacionarse con
algunos términos y heurísticas, tales como: la forma de presentar los datos de
entrenamiento, número de neuronas que se debe implementar en cada capa, criterios de
evaluación que se deben utilizar para la validación de la red, entre otras. A continuación, se
presenta de forma breve, una descripción sobre estos aspectos fundamentales que se deben
tener en cuenta a la hora de conformar una RNA.
1.3.1 Tratamiento de los datos
El tratamiento de los datos es un aspecto básico para el adecuado funcionamiento de una
red neuronal, ya que la forma de presentar estos, influirá en el nivel de generalización que
pueda alcanzar la misma, además de reducir su tiempo de entrenamiento, el cual en algunos
casos suele extenderse innecesariamente sin aportar resultados precisos.
1.3.1.1 Normalización de los datos
En primer lugar, hay que considerar la normalización de los datos de entrada a la red, ya que
los mismos pueden tener diferencias de valores de varios órdenes de magnitud, y, como el
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
23
incremento de los pesos de una neurona es proporcional a su entrada, se terminaría por
afectar el proceso de aprendizaje [38]. Existen varias posibilidades de normalización:
Donde:
- es un elemento k del vector de entrada x.
- es el valor normalizado del elemento k del vector de entrada x.
- es el valor medio del vector de entrada x.
- es la desviación estándar del vector de entrada x.
Esta normalización presenta valor medio cero y varianza unitaria, por lo que evita tendencias
de la entrada fuera de los rangos considerados como normales [38]. Otra posible
normalización de los datos de entrada es:
En este método entran en juego el valor máximo ( ) y mínimo ( ) del vector de
entrada y posee como ventaja que mantiene las relaciones existentes entre los patrones de
entrenamiento originales [38]. También existe una normalización no lineal que hace uso de
las funciones sigmoide o tangente hiperbólica, la cual está dada por la siguiente expresión:
Con esta normalización, los valores cercanos al valor medio se transformarán en la zona
lineal mientras que los alejados lo harán en la zona plana, por lo que es especialmente útil
cuando alguna de las entradas presenta un rango de variación muy grande [38].
1.3.1.2 Concepciones básicas
En ocasiones, cuando se implementa una red neuronal, pueden surgir una serie de
problemas, entre estos: la carencia de información de los patrones por falta de componentes
de los datos de entrada, la necesidad de extraer las características que seleccionen las
entradas realmente necesarias y las inconsistencias en los datos por fallas humanas o
imprecisiones en los instrumentos de medida. Algunas de las soluciones que se pueden
aplicar cuando ocurre esto son [38]:
1. Eliminar los datos no completos.
2. Dar un valor a las componentes que faltan similar a la del resto de los patrones.
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
24
3. Utilizar el valor medio de esa componente sobre todos los vectores de entrada.
4. Codificar de alguna manera el hecho de que ese valor es desconocido o que falta
información.
5. Extraer las características más relevantes.
6. Eliminar las redundancias entre datos.
7. Eliminar las inconsistencias que aparezcan mediante inspección visual, histogramas o
colocación de unos umbrales de máximo y mínimo que invaliden cualquier dato fuera
de ellos.
1.3.2 Número de neuronas en la capa oculta
El número de neuronas en la capa oculta tiene un papel primordial en cualquier topología de
red. Mientras más capas ocultas y neuronas tenga una red, más complejas serán las
superficies de decisión que pueda formar, lo que permite lograr mejor precisión en la
clasificación o reconocimiento de patrones, sin embargo, si se excede en su número se
puede producir un efecto de minado de datos de prueba. Entre las reglas más conocidas
para determinar el número de neuronas en la capa oculta, destacan [22]:
a) Regla de la pirámide geométrica: Supone que el número de neuronas de la capa
oculta ha de ser inferior al total de variables de entrada, pero superior al número de
variables de salida. Se considera que el número de neuronas en cada capa sigue una
progresión geométrica, de manera que, una red con una única capa oculta, debe
tener neuronas, donde N es el número de variables de entrada y M el número
de variables de salida.
b) Regla de la capa oculta - capa de entrada: Plantea que el número de neuronas
ocultas está relacionado con el número de neuronas de entradas. En particular suele
aplicarse la regla 2x1, de forma que el número de neuronas ocultas no puede ser
superior al número de variables de entrada.
c) Regla de la capa oculta - número de patrones: Relaciona el número de neuronas de
la capa oculta con el número de patrones presentados al sistema. La relación más
habitual es 1/30 (una neurona oculta por cada 30 patrones).
1.3.3 Validación y criterios de evaluación
Una vez entrenada una red neuronal es necesario realizar una validación de la misma, es
decir, analizar qué tan precisa es la red en el reconocimiento de patrones desconocidos para
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
25
ella. Para esto, se utilizan datos de entrada y salida conocidos y que no fueron utilizados en
el proceso de entrenamiento, seguido de la aplicación de algún criterio de evaluación que
permita calificar cuantitativamente que tan cercana es la respuesta predicha con respecto a
la esperada o real. Los criterios de evaluación más comunes para la evaluación de una red
neuronal son [23]:
a) Error Medio Absoluto (MAE):
Donde:
- es la cantidad de datos utilizados para la evaluación y comparación.
- representa las observaciones reales, es la salida esperada o real.
- representa las observaciones o salidas predichas por la red.
b) Error Porcentual Medio Absoluto (MAPE):
c) Error Medio Cuadrático (MSE):
d) Raíz del Error Medio Cuadrático (RMSE):
1.4 Conclusiones del capítulo
Las RNA son potentes herramientas computacionales formadas por un conjunto de neuronas
artificiales interconectadas entre sí, capaces de procesar grandes cantidades de información,
con el propósito de brindar respuestas precisas a diversos problemas de reconocimiento de
patrones, predicción y ajuste de funciones. De esta manera, es que en los últimos años se
han convertido en uno de los temas más tratados por los investigadores vinculados a la
predicción de la velocidad del viento y la potencia generada en una instalación eólica.
Las RNA se pueden clasificar en monocapa o multicapa, supervisadas o no supervisadas y
unidireccionales o recurrentes. La red MLP o Feedforward Backpropagation es una de las
CAPÍTULO 1. ENERGÍA EÓLICA Y REDES NEURONALES ARTIFICIALES (RNA)
26
más estudiada por el ámbito científico, la cual es multicapa, supervisada y unidireccional y
posee como ventaja la capacidad de aproximar cualquier función siempre que se aplique una
adecuada configuración.
Una de las principales características de una RNA es su capacidad de aprendizaje, ya que
de acuerdo a este la red modifica sus pesos, adaptándolos hasta conseguir la salida
deseada. Existen numerosos algoritmos de entrenamiento entre ellos: Regla de Hebb,
Levenberg - Marquardt, Regularización bayesiana, entre otros. Un algoritmo con un
excelente desarrollo en problemas de ajuste de funciones y reconocimiento de patrones,
además de ser uno de los más rápidos, es el Levenberg - Marquardt, con solo la desventaja
de ser menos eficiente en redes muy grandes.
El tratamiento de los datos es un elemento muy importante a tener en cuenta a la hora de
conformar una red neuronal, pues la forma de presentar los datos influirá en el nivel de
generalización que pueda alcanzar la misma. Otros aspectos importantes son la correcta
selección del número de neuronas de las capas ocultas para evitar el minado de datos de
prueba y la aplicación de criterios de evaluación en el proceso de validación.
27
CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD
BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD
DEL VIENTO
El presente capítulo trata sobre la confección de redes Feedforward Backpropagation para la
predicción del viento a corto plazo mediante el empleo del Neural Network Toolbox de
Matlab. Para ello, se explican los elementos básicos que permiten el trabajo con la
herramienta y se proponen, además, cuatro modelos con diferentes arquitecturas que serán
analizados a profundidad en el Capítulo 3.
2.1 Neural Network Toolbox
El Neural Network Toolbox, implementado en Matlab desde el año 1992, es una herramienta
que permite la creación de RNA y proporciona los elementos necesarios para su confección
y configuración, para lograr así, el desarrollo de sistemas básicos o avanzados en
dependencia de la experiencia del diseñador.
Existen tres formas fundamentales de utilizar el Neural Network Toolbox. La primera, es a
través de las interfaces gráficas de usuario (GUIs), las cuales, proveen una rápida y sencilla
manera de acceder a todo el potencial del toolbox en tareas de aproximación, clustering,
análisis de series de tiempo y reconocimiento de patrones. La segunda vía consiste en la
aplicación de operaciones básicas en la línea de comandos, lo que ofrece más flexibilidad
que las GUIs, pero añade más complejidad. Por otro lado, la tercera vía se basa en la
personalización avanzada de redes neuronales, lo que permite crear redes con conexiones
arbitrarias y variadas posibilidades de aprendizaje [35].
El toolbox ofrece soluciones sorprendentes en gran cantidad de aplicaciones y sería casi
imposible mencionarlas todas, no obstante, entre las principales áreas en la que se
desenvuelve y posee mayor desarrollo en la actualidad, se encuentran:
Robótica (control de trayectoria, sistemas de visión, automatización de máquinas y
herramientas)
Medicina (diagnóstico de enfermedades, diseño de prótesis, análisis de
electrocardiogramas)
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
28
Electrónica (predicción de secuencias de código, control de procesos, síntesis de voz,
análisis de falla en chips).
Telecomunicaciones (compresión de datos e imágenes, automatización de servicios
de información, traducción a otros idiomas en tiempo real).
Procesos industriales (predicción de procesos, análisis económicos).
Industria armamentística (manejo de armas, rastreo de objetivos, radares,
procesamiento de imágenes y supresión de ruidos).
Industria aeroespacial (simulaciones de vuelo, detección de fallas en aeronaves,
sistemas de control de aeronaves y perfeccionamiento de sistemas autopiloto).
2.2 Implementación de redes feedforward backpropagation en el Neural
Network Toolbox
En la presente sección se explica, de la formas más breve y detallada posible, la
conformación de redes Feedforward Backpropagation en el Neural Network Toolbox de
Matlab mediante operaciones básicas en la línea de comandos. Es importante destacar que
este tipo de red es el elemento más significativo del toolbox pues puede aproximar cualquier
función si se escoge una adecuada configuración para la red y un adecuado número de
neuronas en la capa oculta [35].
2.2.1 Creación, configuración e inicialización de la red
Para la confección en el Neural Network Toolbox de una red Feedforward Backpropagation,
o Perceptrón Multicapa como también se conoce, se utiliza la función feedforwardnet. Si esta
función es llamada sin argumentos, devuelve por defecto una red de dos capas con
algoritmo de entrenamiento Levenberg - Marquardt, cuya capa oculta tiene 10 neuronas y
una función de transferencia del tipo tangente hiperbólica; la capa de salida no tiene
neuronas y posee una función lineal de transferencia. Una forma más avanzada de crear una
red de este tipo es mediante la misma función, pero a través de la declaración de
argumentos, como se muestra a continuación:
feedforwardnet ([n1 n2 … nk], train_function)
En este caso, se obtiene una red con una arquitectura como la que se muestra en la figura
2.1, la cual, tiene tantas capas ocultas como elementos posee el vector del primer argumento
y la cantidad de neuronas en cada una se define por el valor n que le corresponda. El
argumento train_function define el algoritmo de entrenamiento que se utilizará para el
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
29
aprendizaje de la red. En caso de no introducirse alguno de estos parámetros, la red toma
por defecto uno de los mencionados anteriormente.
Figura 2.1: Ejemplo de red Feedforward Backpropagation.
Si se emplea el comando anterior, como puede notarse en la figura 2.1, la cantidad de
variables de salida y entrada, así como, la cantidad de neuronas de la capa oculta, no se
encuentran definidas. Una función que permite declarar estos datos es configure, la cual
toma como argumentos el vector de entrada y salida que se utiliza para el entrenamiento de
la red y extrae los datos necesarios para definir las variables faltantes en la arquitectura de la
misma. La forma de implementar dicha función es:
configure (net, inputs, targets)
Donde net representa la red que se desea configurar, inputs es la matriz de entrada a la red
y targets la matriz de salida. Es importante añadir que inputs y targets son matrices de
tamaño R x Q, donde R representa la cantidad de variables y Q la cantidad de muestras
obtenidas. Otra tarea que realiza la función configure es la de inicializar los pesos y
umbrales de la red, todo con el objetivo de dejarla preparada para su posterior
entrenamiento.
2.2.2 Ajustes adicionales en la arquitectura de la red
Existen ocasiones en que ya una vez creada una red neuronal, se desea cambiar rasgos en
su arquitectura que ya habían sido previamente establecidos, tales como: número de
neuronas y función de transferencia de las capas. Recordar que, la herramienta reconoce
como capas, tanto a las ocultas como a la de salida.
Para cambiar el número de neuronas de las capas basta con utilizar el comando
net.layers{i}.size y reemplazar el valor existente. Para sustituir la función de transferencia se
utiliza net.layers{i}.transferFcn y se establece otro parámetro que represente alguna de las
funciones existentes en la herramienta, las cuales se muestran en la tabla 2.1.
Es importante destacar que los comandos que se utilizan para cambiar o ajustar algún
parámetro de la red suelen tener la siguiente estructura:
net.element{i}.var{j}
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
30
Donde net representa la red que se desea configurar, element es el elemento dentro de ella
que recibirá los cambios y var es la variable específica del elemento cuyo parámetro será
afectado. En caso de que el elemento contenga una sola variable se elimina el último
término. Los términos i y j son valores numéricos que representan el elemento o variable a
configurar en caso de existir más de uno.
Tabla 2. 1: Funciones de transferencia y sus parámetros representativos en el toolbox.
Parámetro Función de transferencia
hardlim Paso binario.
logsig Sigmoide.
netinv Inversa.
purelin Lineal.
tansig Tangente hiperbólica
radbas Gaussiana
satlins Saturación lineal.
2.2.3 Procesado y división de los datos
Como se comentaba en el capítulo 1, en el proceso de diseño de una red neuronal, es
necesario realizar un tratamiento de los datos que se le presentan a la misma, pues estos
influirán en el nivel de generalización que pueda alcanzar. De esta manera, se hace muy
importante que los datos abarquen el rango de valores en los que luego la red será utilizada,
pues por sí misma, no tiene la capacidad de extrapolar fuera de los rangos establecidos
inicialmente. Una vez seleccionados los datos, existen dos pasos fundamentales que se
deben realizar antes de que se usen para el entrenamiento, ellos son la normalización y la
división de estos en sets.
Existen varias maneras de normalizar los datos, no obstante, tal y como se muestra en la
figura 2.2, el toolbox posee bloques de procesamiento de datos ubicados en las
inmediaciones de capa de entrada - primera capa oculta y última capa oculta - capa de
salida. Estos, asignan funciones de procesamiento o normalización a las entradas y salidas
de la red, transformándolas en valores recomendados para el entrenamiento según la
función de activación que utilicen las capas intermedias [35].
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
31
Figura 2.2: Representación de los bloques de procesamiento en el toolbox [35].
Por defecto, el toolbox aplica a las entradas y las salidas las funciones de procesamiento
removeconstantrows y mapminmax, no obstante, pueden ser cambiadas en todo momento
por los siguientes comandos, donde el primero corresponde a la entrada y el segundo a la
salida:
net.inputs{1}.processParams{i}
net.outputs{2}.processParams{i}
En la tabla 2.1, se resumen los distintos parámetros para el procesamiento de datos que
contiene el toolbox. Añadir que, aunque estos sean los parámetros que posee, el diseñador
puede utilizar los comandos para declarar mediante una matriz vacía que no se utilizará
ninguno de estos métodos y aplicar externamente alguna función que no se encuentre
implícita en la herramienta.
Tabla 2.2: Funciones de procesamiento y sus parámetros representativos en el toolbox.
Parámetros Labor que realiza
mapminmax Normaliza los datos dentro del rango de valores entre -
1 y 1.
mapstd Normaliza los datos de forma tal que tengan valor
medio igual a cero y varianza unitaria.
processpca Extrae los componentes principales del vector de
entrada.
fixunkowns Permite procesar entradas desconocidas.
removeconstantrows Elimina los vectores de datos que son constantes.
El otro paso fundamental antes de utilizar los datos para el entrenamiento, consiste en la
división de estos en tres sets. El primero para el entrenamiento, el cual es usado para
computar el gradiente y actualizar los pesos, el segundo para la validación interna de la red y
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
32
el tercero para prueba, el cual no es utilizado en el entrenamiento y permite analizar los
errores de prueba durante dicho proceso. Existen cuatro tipos de funciones en el toolbox que
permiten dividir los datos en sets de entrenamiento, validación y prueba, los mismos se
mencionan en la tabla 2.2.
Tabla 2.3: Tipos de división de los datos y sus parámetros representativos en el toolbox.
Parámetro Tipo de división de los datos
dividerand Divide los datos aleatoriamente.
divideblock Divide los datos en bloques contiguos.
divideind Divide los datos por índice.
dividetrain No divide los datos, todos se usan para
entrenamiento.
La función dividerand es la que aplica por defecto el toolbox a la hora de crear la red y es la
más utilizada por los diseñadores, pues permite evitar secuencias o repetición de patrones
cuando se desea representar modelos totalmente aleatorios. Esta función de división puede
ser accedida o cambiada mediante el comando net.divideFcn.
Por otro lado, se puede cambiar la cantidad de datos que se utilizan para entrenamiento,
validación y prueba, respectivamente, mediante los comandos:
net.divideParam.trainRatio
net.divideParam.valRatio
net.divideParam.testRatio
En caso de que el diseñador no aplique los comandos anteriores, el toolbox divide
automáticamente los datos en sets, asignando el 70% de los mismos al entrenamiento, el
15% a la validación y el resto para prueba.
2.2.4 Función de desempeño y algoritmo de entrenamiento
Una vez que se inicializan los pesos y umbrales y se realiza una correcta selección de los
datos, la red está lista para entrenarse. Este proceso involucra el ajuste de los valores de
pesos y umbrales para optimizar su rendimiento, el cual se define por la función de
desempeño y el algoritmo de entrenamiento.
La función de desempeño mide los valores de error (o desempeño) que serán utilizados para
mejorar el proceso de entrenamiento con cada iteración. Por defecto, el toolbox aplica el
MSE y puede ser cambiado mediante el comando net.performFcn a otro parámetro existente.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
33
En la tabla 2.3, se listan las diferentes funciones de desempeño disponibles en la
herramienta y los parámetros que permiten su uso mediante la línea de comandos.
Tabla 2.4: Funciones de desempeño y sus parámetros representativos en el toolbox.
Parámetro Función de desempeño
mae Error Medio Absoluto (MAE)
mse Error Medio Cuadrático (MSE)
sae Suma del Error Absoluto (SAE)
sse Suma del Error Cuadrático (SSE)
El algoritmo de entrenamiento que se aplica a la red se define en el momento de su creación
como un argumento de la función feedforwardnet, y que, en caso de no declararse toma por
defecto el parámetro trainlm, que identifica al algoritmo Levenberg - Marquardt. En caso de
que se requiera cambiar el algoritmo de entrenamiento de la red neuronal una vez creada la
misma, se puede utilizar el comando net.trainFcn. En la tabla 2.4 se muestran los parámetros
representativos de algoritmos de entrenamiento.
Tabla 2.5: Algoritmos de entrenamiento y sus parámetros representativos en el toolbox.
Parámetros Algoritmo de entrenamiento
trainlm Levenberg - Marquardt
trainbr Regularización bayesiana
trainscg Gradiente de escala conjugada
traingdm Gradiente descendente con momento
trainbfg Quasi - Newton
traingdx Gradiente descendente con coeficiente de aprendizaje variable
Al igual que como se planteaba en el capítulo 1, el algoritmo Levenberg - Marquardt posee
un excelente desarrollo en el toolbox por ser uno de los más rápidos y ofrecer excelentes
soluciones en problemas de aproximación de funciones y reconocimiento de patrones.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
34
2.2.5 Entrenamiento de la red neuronal
Con la función de desempeño y el algoritmo de entrenamiento ya seleccionados, se procede
a entrenar la red, para lo cual se utiliza la línea de código siguiente:
train (net, X, T, Xi, Ai, EW)
Donde net representa la red que se desea entrenar, X es la matriz de datos de entrada, T es
la matriz de datos de salida, Xi es la matriz de condiciones iniciales de retraso a la entrada,
Ai es la matriz de condiciones iniciales de retraso en las capas y EW es el vector de error de
los pesos. Aclarar que, para una red feedforward no son necesarios los tres últimos
parámetros (Xi, Ai, EW), pues no cuenta con retrasos intermedios de tiempo. Los vectores X
y T son matrices de tamaño R x Q en la cual R representa la cantidad de variables y Q la
cantidad de muestras obtenidas.
Con el inicio del entrenamiento surge una ventana de ayuda la cual permite conocer
aspectos y parámetros importantes sobre cómo se desarrolla este proceso a cada momento.
Esta ventana, como se muestra en la figura 2.3, se titula Neural Network Training y divide en
cuatro bloques información sobre la arquitectura de la red, división de los datos, algoritmo de
entrenamiento y función de desempeño, además de ofrecer el progreso de la red en el
entrenamiento junto a sus criterios de parada y un set de gráficas que lo describen.
Figura 2.3: Ventana de ayuda para el entrenamiento (Neural Network Training).
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
35
2.2.5.1 Criterios de parada
Los criterios de parada son aquellos que detienen el proceso de entrenamiento una vez que
se cumple cierto requisito establecido por defecto o por el usuario. Los criterios con los que
cuenta el toolbox son:
Número de iteraciones: Una vez alcanzada la cantidad de iteraciones declaradas se
detiene el entrenamiento. Se establecen 1000 iteraciones por defecto y se puede
ajustar a otro valor mediante la función net.trainParam.epochs.
Magnitud del gradiente: El valor del gradiente se vuelve muy pequeño según el
entrenamiento alcanza un valor mínimo de desempeño. Si la magnitud del gradiente
es menor que cierto valor establecido (10-5 por defecto) el entrenamiento se detiene.
Se puede ajustar este parámetro mediante la función net.trainParam.min_grad.
Número de validaciones: Representan el número de iteraciones sucesivas en las que
los valores de desempeño interno de la red dejan de decrecer. El entrenamiento se
interrumpe si dicho número alcanza 6 iteraciones (valor por defecto). Se puede
ajustar el criterio de este parámetro mediante el comando net.trainParam.max_fail.
Tiempo máximo de entrenamiento: Aunque el toolbox no establece un tiempo límite
para el proceso de entrenamiento, se puede aplicar uno mediante el comando
net.trainParam.time.
Valor de desempeño: Se detiene el entrenamiento de la red cuando se alcanza un
valor mínimo de desempeño (0 por defecto) y que puede ser sustituido por la función
net.trainParam.goal.
2.2.5.2 Gráficas para el análisis del entrenamiento
Otro aspecto importante, son las gráficas que ofrece la ventana de ayuda para el análisis y la
validación interna de la red. Por defecto la herramienta establece cuatro tipos de esquemas:
desempeño, estado del entrenamiento, histograma de error y regresión lineal; estos pueden
ser sustituidos mediante la función net.plotFcns por otro de los parámetros que se describen
en la tabla 2.5. Las gráficas más utilizadas y que ofrecen información relevante son las de
desempeño y regresión lineal.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
36
Tabla 2.6: Funciones gráficas y sus parámetros representativos en el toolbox.
Parámetro Función gráfica
plotconfusion Grafica la matriz de clasificación confusa.
ploterrcorr Grafica la autocorrelación de los errores de la serie de tiempo.
ploterrhist Grafica el histograma de errores.
plotperform Grafica el desempeño de la red.
plotregression Grafica una regresión lineal.
plottrainstate Grafica los valores de estado del entrenamiento (gradiente,
validaciones, etc).
plotwb Grafica un diagrama de Hinton de pesos y umbrales.
La gráfica de desempeño muestra cómo se comportan los valores de la función de
desempeño con cada iteración del entrenamiento. Un ejemplo, se muestra en la figura 2.4,
en donde se aprecia que la gráfica permite el análisis de posibles sobreaproximaciones, en
donde las curvas de validación interna y prueba se incrementan bruscamente según avanza
el proceso de entrenamiento.
Figura 2.4: Gráfica de desempeño para el análisis del entrenamiento de una RNA.
La gráfica de regresión lineal ofrece la relación entre las salidas de la red y las reales que se
desean obtener. Como se muestra el ejemplo de la figura 2.5 la misma cuenta con 4
subgráficas, donde, las 3 primeras representan las comparaciones para los sets de
entrenamiento, validación interna y prueba, y la última, muestra los resultados totales. En
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
37
cada subgráfica, la línea discontinua representa el resultado ideal, la línea sólida representa
la mejor aproximación que pudo lograr la red y el valor R es un indicador de relación entre
las salidas comparadas, por lo que un valor cercano a 1 indicaría que existe una buena
relación lineal entre ellas.
Figura 2.5: Gráfica de regresión lineal para el análisis del entrenamiento de una RNA.
2.2.6 Uso de la RNA
Luego de concluido el entrenamiento y el proceso de validación la red está lista para su uso
en la búsqueda de repuestas ante cualquier entrada aplicada. Para lograr esto se utiliza el
comando:
sim (net, inputs)
En donde, net representa la red creada y entrenada que se desea simular e inputs es el
vector de entrada al cual se le desea hallar la respuesta de salida. Añadir que, inputs es una
matriz de tamaño R x Q en la cual R representa la cantidad de variables y Q la cantidad de
muestras obtenidas.
2.3 Modelos para la predicción a corto plazo de la velocidad del viento
A continuación, se presentan 4 modelos de redes neuronales del tipo Feedforward
Backpropagation para la predicción de la velocidad del viento en un horizonte de pronóstico
a corto plazo, más específicamente, de una hora en el futuro. Para su confección se tienen
en cuenta algunos criterios recogidos en la bibliografía consultada, pero la mayoría de sus
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
38
elementos se escogen a criterio personal según resultados obtenidos con modelos
anteriores.
Es importante destacar que son muy variadas las formas de crear una red capaz de predecir
la velocidad del viento, y, aunque se muestren en el presente capítulo cuatro modelos, estos
son sólo una selección entre muchos intentos y fueron escogidos por los resultados que
ofrecen y sus características propias que permiten establecer una comparación directa entre
ellas, para seleccionar así, la mejor topología de red en este tipo de aplicaciones.
Todos los modelos mostrados consisten en redes Feedforward Backpropagation a las que se
le introducen datos históricos de la velocidad del viento de alguna localidad y se le realizan
cambios en su arquitectura y parámetros de entrenamiento, con el objetivo de obtener el
valor más preciso de esta misma variable en la siguiente hora en el futuro.
Es importante aclarar que a todos los modelos del capítulo se les varia el número de
neuronas de la capa oculta desde 1 hasta 10 neuronas, y se mostró gráficamente en caso de
requerirse, el ejemplo que corresponde a tres neuronas. Además, para el proceso de
validación se utilizaron los criterios de evaluación mencionados en el Capítulo 1, estos son:
MAE, MAPE, MSE y RMSE.
2.3.1 Datos utilizados
Para la confección de los modelos se usaron datos históricos de la velocidad del viento
correspondientes a las localidades de Gibara 1 y El Dorado que se encuentran en las
provincias de Holguín y Villa Clara respectivamente.
Los datos de Gibara 1 se obtuvieron a través del Laboratorio Nacional de Energía Renovable
(NREL) de los Estados Unidos por vía internet y pueden ser accedidos a través de la
dirección web https://maps.nrel.gov. Estos corresponden a mediciones de la velocidad del
viento tomadas a 10 metros de altura cada media hora en el período de enero a diciembre
del año 2015, conformando un total de 17520 muestras. Destacar que Gibara 1 se encuentra
en los 21 08’58.9’’ de latitud norte y 76 07’56.0’’ de longitud oeste, en una zona costera con
terreno predominantemente llano y con pocos obstáculos. El viento en dicha zona presenta
un comportamiento como el mostrado en la figura 2.6, donde se puede apreciar que el
mismo varía ampliamente durante el año, con valores entre casi los 0 y 9 m/s. Estos datos se
utilizan tal y como se muestran, sin pasarlos por un previo proceso de selección o filtrado.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
39
Figura 2.6: Comportamiento de la velocidad del viento en la localidad de Gibara 1.
Los datos de El Dorado fueron proporcionados por la UEB Energías Renovables de INEL por
vía correo. Estos corresponden a mediciones de la velocidad del viento tomadas a 50 metros
de altura cada diez minutos en el período de noviembre a septiembre de los años 2013 y
2014 respectivamente, no obstante, se escogen solo los datos representativos de cada
media hora para conformar vectores similares, obteniéndose así un vector de 17520
muestras. La estación anemométrica El Dorado se encuentra en los 22 53’45.86’’ de latitud
Norte y 80 5’36.96’’ de longitud Oeste, en una zona rodeada de gran cantidad de árboles y
otras irregularidades del terreno. El viento en esta zona tiene un comportamiento como el
mostrado en la figura 2.7, donde se puede apreciar que el mismo varía ampliamente durante
el año, con valores entre casi los 0 y 14 m/s. Estos datos se utilizan tal y como se muestran,
sin pasarlos por un previo proceso de selección o filtrado.
Los datos de ambas localidades se reciben en archivos Excel y se importan al ambiente de
trabajo de Matlab como vectores numéricos con sus respectivos nombres (gibara y dorado) a
través del Inspector de Archivos de Matlab. Un ejemplo de cómo se desarrolla este proceso
para los datos de Gibara 1 lo muestra la figura 2.8, el cual se repite para el caso de la
localidad de El Dorado.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
40
Figura 2.7: Comportamiento de la velocidad del viento en la localidad de Gibara 1.
Las figuras 2.9 y 2.10 muestran el código implementado en Matlab para seleccionar la
estructura y cantidad de muestras de los vectores que se utilizan para el entrenamiento y
validación de la red, la primera para el caso de Gibara 1 y la segunda para El Dorado. Puede
observarse, que para las entradas se escogen tres variables (esto se debe a que la entrada
es una matriz de 3 filas, donde cada una identifica una variable de entrada) que representan
la velocidad del viento de tres muestras consecutivas en el tiempo, mientras que para las
salidas se elige una sola variable que representa la velocidad del mismo, pero de la próxima
hora en el futuro. Esto se hace con el objetivo de ofrecerle a la red los patrones o
comportamientos de las tres horas anteriores y establecer así una precisa predicción de la
próxima hora no conocida. Se puede apreciar, además, que para el entrenamiento se utilizan
las primeras 8000 muestras de los datos, mientras que, para la validación se conforman 2
intervalos aleatorios de 168 muestras (equivalente a una semana) cada uno.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
41
Figura 2.8: Uso del Inspector de Archivos para importar los datos de Gibara 1.
Figura 2.9: Código para la extracción de los datos de entrenamiento y validación de Gibara 1.
Figura 2.10: Código para la extracción de los datos de entrenamiento y validación de El Dorado.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
42
2.3.2 Modelo 1
El código implementado en Matlab para la creación, configuración y entrenamiento del primer
modelo se muestra en la figura 2.11. Una correcta apreciación del código muestra que la red
presenta las siguientes características:
Cantidad de capas ocultas: 1
Función de transferencia de las capas ocultas: Tangente hiperbólica
Función de transferencia de la capa de salida: Lineal
Algoritmo de entrenamiento: Levenberg - Marquardt
Método para la división de los datos: División aleatoria
Función para las medidas de desempeño: MSE
Gráfica para el análisis y validación interna: Regresión lineal.
Figura 2.11: Código para la creación, configuración y entrenamiento de la red del modelo 1.
Para el proceso de validación se hallan las respuestas de salida de la red para cada una de
las entradas de validación, proceso que se muestra en la figura 2.12 y que se utiliza para
todos los modelos presentados. Recordar que estas salidas se comparan con las reales que
corresponden a cada intervalo y se les aplica los diferentes criterios de evaluación.
Figura 2.12 Código para obtener las respuestas de salida de cada intervalo de validación.
Una mejor apreciación de la arquitectura de la RNA implementada para el modelo 1 se
ofrece en la figura 2.13.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
43
Figura 2.13: Arquitectura de la red neuronal correspondiente al modelo 1.
2.3.3 Modelo 2
El código implementado en Matlab para la creación, configuración y entrenamiento del
segundo modelo se muestra en la figura 2.14. Las características que presenta dicha red son
las siguientes:
Cantidad de capas ocultas: 1
Función de transferencia de las capas ocultas: Sigmoide
Función de transferencia de la capa de salida: Sigmoide
Algoritmo de entrenamiento: Levenberg - Marquardt
Método para la división de los datos: División aleatoria
Función para las medidas de desempeño: MSE
Gráfica para el análisis y validación interna: Regresión lineal.
Figura 2.14: Código para la creación, configuración y entrenamiento de la red del modelo 2.
Una mejor apreciación de la arquitectura de la red neuronal implementada para el modelo 2
se ofrece en la figura 2.15.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
44
Figura 2.15: Arquitectura de la red neuronal correspondiente al modelo 2.
2.3.4 Modelo 3
El código implementado en Matlab para la creación, configuración y entrenamiento del tercer
modelo se muestra en la figura 2.16. Las características que presenta dicha red son las
siguientes:
Cantidad de capas ocultas: 2 (Con igual número de neuronas)
Función de transferencia de la primera capa oculta: Tangente Hiperbólica
Función de transferencia de la segunda capa oculta: Tangente Hiperbólica
Función de transferencia de la capa de salida: Lineal
Algoritmo de entrenamiento: Levenberg - Marquardt
Método para la división de los datos: División aleatoria
Función para las medidas de desempeño: MSE
Gráfica para el análisis y validación interna: Regresión lineal.
Figura 2.16: Código para la creación, configuración y entrenamiento de la red del modelo 2.
Una mejor apreciación de la arquitectura de la red neuronal implementada para el modelo 2
se ofrece en la figura 2.17.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
45
Figura 2.17: Arquitectura de la red neuronal correspondiente al modelo 3.
2.3.5 Modelo 4
El código implementado en Matlab para la creación, configuración y entrenamiento del cuarto
y último modelo se muestra en la figura 2.18. Las características que presenta dicha red son
las siguientes:
Cantidad de capas ocultas: 1
Función de transferencia de la primera capa oculta: Sigmoide
Función de transferencia de la capa de salida: Lineal
Algoritmo de entrenamiento: Regularización Bayesiana
Método para la división de los datos: Sin división de datos.
Función para las medidas de desempeño: MSE
Gráfica para el análisis y validación interna: Regresión lineal.
Figura 2.18: Código para la creación, configuración y entrenamiento de la red del modelo 2.
Una mejor apreciación de la arquitectura de la red neuronal implementada para el modelo 2
se ofrece en la figura 2.19.
___ CAPÍTULO 2. IMPLEMENTACIÓN DE REDES FEEDFORWARD BACKPROPAGATION PARA LA PREDICCIÓN DE LA VELOCIDAD DEL VIENTO
46
Figura 2.19: Arquitectura de la red neuronal correspondiente al modelo 4.
2.4 Conclusiones del capítulo
El Neural Network Toolbox de Matlab proporciona los elementos necesarios para la
confección y configuración de RNA y permite el desarrollo de sistemas básicos o avanzados
en dependencia de la experiencia del diseñador. Existen tres formas de utilizar el toolbox,
donde la aplicación de operaciones básicas en la línea de comandos es la más útil pues
ofrece más flexibilidad que las demás.
Los parámetros de la red a los que permite acceder la herramienta mediante la línea de
comandos de Matlab son: cantidad de capas ocultas, número de neuronas de las capas,
algoritmo de entrenamiento, función de transferencia de las capas, división de los datos de
entrenamiento, función de desempeño y gráficas para el análisis y validación interna.
Se presentan cuatro modelos para la predicción de la velocidad del viento a corto plazo en
las localidades de Gibara 1 y El Dorado, pertenecientes a las provincias de Holguín y Villa
Clara respectivamente. Estos se diferencian entre sí por cambios en su arquitectura, como
son la función de transferencia de sus capas y el número de capas ocultas. La entrada de
todos estos modelos son tres variables que representan la velocidad del viento de tres
muestras consecutivas en el tiempo, mientras que la salida es una sola variable que
representa la velocidad del mismo, pero de la próxima hora en el futuro.
47
CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y
COMPARACIÓN DE LOS RESULTADOS
En el presente capítulo se muestran los resultados del entrenamiento y validación de los
modelos de RNA expuestos en el Capítulo 2 para la predicción de la velocidad del viento a
corto plazo. Luego se realiza un breve análisis de estos y se comparan con resultados
publicados y disponibles en la literatura consultada.
3.1 Entrenamiento y validación de los modelos
Una vez conformados los modelos para la predicción de la velocidad del viento en el
Capítulo 2, se procede a entrenarlos. Los aspectos que se tienen en cuenta para el estudio
individual de cada uno son los valores de error aportados por los criterios de evaluación
(MAE, MAPE, MSE y RMSE) y la gráfica de regresión lineal. Destacar que todos los
resultados y parámetros mostrados a continuación se obtienen para 3 neuronas en la capa
oculta de los modelos, pues es para todos los casos, la que mejor resultados aportó. En el
Anexo 1 se muestran los valores de error obtenidos para las diferentes cantidades de
neuronas que se tuvieron en cuenta.
3.1.1 Modelo 1
Con un tiempo aproximado de cuatro segundos y 48 iteraciones, la red del modelo 1 es
capaz de generalizar para los casos de Gibara 1 y El Dorado. En la figura 3.1 se muestra la
gráfica de regresión lineal, donde se aprecia que se obtuvo un valor general de R de 0.99,
cercano a la unidad, lo que significa que las salidas reales y predichas mantienen un
comportamiento lineal.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
48
Figura 3.1: Gráficas de regresión lineal obtenidas para las localidades de Gibara 1 y El Dorado.
La comparación entre la salida real y pronosticada en el proceso de validación de las zonas
de Gibara 1 y El Dorado se ofrece en las figuras 3.2 y 3.3 respectivamente, mientras que en
la tabla 3.1 se muestran los resultados de los diferentes criterios de evaluación en dicho
proceso. Se puede notar que las curvas del valor real y predicho prácticamente se
superponen, pues los valores de error obtenidos son muy pequeños, por lo que se puede
decir que el modelo ofrece una eficiente predicción de la velocidad del viento a corto plazo.
Figura 3.2: Observaciones reales y pronóstico de la velocidad del viento en el modelo 1
correspondientes a los períodos de validación de Gibara 1.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
49
Figura 3.3: Observaciones reales y pronóstico de la velocidad del viento en el modelo 1
correspondientes a los períodos de validación de El Dorado.
Tabla 3.1: Valores de error que se obtienen en el proceso de validación del modelo 1.
Criterios de evaluación
MAE MAPE MSE RMSE
Gibara 1 0.042 - 0.047 0.011 - 0.017 0.003 - 0.004 0.057 - 0.061
El Dorado 0.179 - 0.231 0.039 - 0.079 0.054 - 0.086 0.232 - 0.294
Valores generales 0.042 - 0.231 0.011 - 0.079 0.003 - 0.086 0.57 - 0.294
3.1.2 Modelo 2
El modelo generaliza aproximadamente a los cuatro segundos y 63 iteraciones. Se aprecia
una regresión lineal muy similar a la de la figura 3.1 y presenta un valor R de 0.99, lo que
demuestra un buen comportamiento lineal entre las salidas reales y predichas por la red.
Para este modelo los valores de error se incrementan muy ligeramente con respecto al
anterior, pero tal y como se puede observar en la tabla 3.2, este no representa un aumento
significativo y puede deberse a la división de los datos que se aplica, la cual, al ser aleatoria
puede tomar patrones diferentes con respecto a los demás modelos y traer consigo
pequeñas diferencias en la generalización de la red, caso que podría ocurrir incluso para un
reentrenamiento del mismo modelo.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
50
Tabla 3.2: Valores de error que se obtienen en el proceso de validación del modelo 2.
Criterios de evaluación
MAE MAPE MSE RMSE
Gibara 1 0.045 - 0.055 0.014 - 0.017 0.004 - 0.006 0.062 - 0.075
El Dorado 0.214 - 0.282 0.048 - 0.097 0.075 - 0.125 0.274 - 0.354
Valores generales 0.045 - 0.282 0.014 - 0.097 0.004 - 0.125 0.062 - 0.354
La comparación entre la salida real y pronosticada en el proceso de validación de las zonas
de Gibara 1 y El Dorado se ofrece en las figuras 3.4 y 3.5 respectivamente. Se puede notar
que este modelo al igual que el primero ofrece resultados muy precisos de la velocidad del
viento.
Figura 3.4: Observaciones reales y pronóstico de la velocidad del viento en el modelo 2
correspondientes a los períodos de validación de Gibara 1.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
51
Figura 3.5: Observaciones reales y pronóstico de la velocidad del viento en el modelo 2
correspondientes a los períodos de validación de El Dorado.
3.1.3 Modelo 3
El tercer modelo obtiene resultados exactamente iguales a los del modelo 1, con la
excepción de que tardó aproximadamente 7 segundos y 223 iteraciones en generalizar. Esto
se debe a que posee dos capas ocultas de igual número de neuronas, lo que trae consigo un
mayor procesamiento de datos pues los pesos totales de la red se duplican.
En la tabla 3.3 se muestran los valores de error que se obtienen en el proceso de validación,
mientras que la comparación entre la salida real y pronosticada en el proceso de validación
de las zonas de Gibara 1 y El Dorado se ofrece en las figuras 3.6 y 3.7 respectivamente.
Para la regresión lineal se puede utilizar la figura 3.1 correspondiente al primer modelo.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
52
Figura 3.6: Observaciones reales y pronóstico de la velocidad del viento en el modelo 3
correspondientes a los períodos de validación de Gibara 1.
Figura 3.7: Observaciones reales y pronóstico de la velocidad del viento en el modelo 3
correspondientes a los períodos de validación de El Dorado.
Este modelo junto al primero ofrece un excelente pronóstico de la velocidad del viento, con la
desventaja de que necesita de más tiempo y de un elevado número de procesos intermedios
para la generalización y la obtención de respuestas de salida una vez entrenada.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
53
Tabla 3.3: Valores de error que se obtienen en el proceso de validación del modelo 2.
Criterios de evaluación
MAE MAPE MSE RMSE
Gibara 1 0.042 - 0.045 0.012 - 0.017 0.003 - 0.003 0.053 - 0.058
El Dorado 0.179 - 0.231 0.041 - 0.081 0.054 - 0.086 0.233 - 0.296
Valores generales 0.042 - 0.231 0.012 - 0.080 0.003 - 0.086 0.53 - 0.296
3.1.4 Modelo 4
Este modelo generaliza a los 7 segundos y 318 iteraciones y es el que peores resultados
aporta durante el proceso de entrenamiento y validación. La gráfica de regresión lineal
correspondiente a este modelo se ofrece en la figura 3.8 y puede observarse que el valor de
R disminuye a 0.98 y 0.95, pero que continúa siendo un valor cercano a 1, lo que demuestra
la existencia de una buena correlación lineal entre los datos de salida reales y los predichos
por la red. Recordar que para este modelo se emplea como algoritmo de entrenamiento la
Regularización Bayesiana y no se utiliza ningún tipo de división de datos, aportándose todos
para entrenamiento.
Figura 3.8: Gráficas de regresión lineal obtenidas para las localidades de Gibara 1 y El Dorado.
Una mejor visión acerca del comportamiento de este modelo lo ofrecen las figuras 3.9 y 3.10
que muestran la comparación entre la salida real y pronosticada en el proceso de validación
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
54
de las zonas de Gibara 1 y El Dorado respectivamente, además de la tabla 3.4, que brinda
los valores de error obtenidos de la aplicación de los criterios de evaluación a dichos
intervalos. Una simple inspección demuestra que el error aumenta considerablemente con
respecto a los modelos anteriores y que la variable predicha presenta muchos picos o
disturbios de valores, lo que demuestra que este modelo es el menos preciso y confiable en
el pronóstico de la velocidad del viento a corto plazo.
Figura 3.9: Observaciones reales y pronóstico de la velocidad del viento en el modelo 3
correspondientes a los períodos de validación de El Dorado.
Figura 3.10: Observaciones reales y pronóstico de la velocidad del viento en el modelo 3
correspondientes a los períodos de validación de El Dorado.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
55
Tabla 3.4: Valores de error que se obtienen en el proceso de validación del modelo 2.
Criterios de evaluación
MAE MAPE MSE RMSE
Gibara 1 0.080 - 0.091 0.021 - 0.034 0.011 - 0.013 0.105 - 0.115
El Dorado 0.322 - 0.418 0.072 - 0.15 0.183 - 0.295 0.427 - 0.543
Valores generales 0.080 - 0.418 0.021 - 0.034 0.011 - 0.295 0.105 -
0.543
3.2 Análisis de los resultados obtenidos del proceso de entrenamiento
Se demuestra que el algoritmo Levenberg - Marquardt (empleado para los tres primeros
modelos) ofrece los resultados más óptimos para este tipo de RNA y aplicación, a diferencia
de la Regularización Bayesiana que depende de un alto número de iteraciones. Además, se
puede observar que la división de datos aleatoria es la más efectiva, ya que evita el
aprendizaje de patrones o secuencias no representativas para la red.
Las funciones de transferencia tangente hiperbólica y sigmoide (usada únicamente en el
modelo 2) permiten la obtención de modelos precisos en la predicción de la velocidad del
viento. Aunque el modelo que utiliza la función sigmoide presenta un pequeño incremento
del error, no significa que no sea eficiente su uso, pues el aumento es insignificante y puede
estar dado por la propia división aleatoria de los datos.
En todos los casos se obtiene una buena regresión lineal, con valores de R cercanos a 1, lo
que demuestra la existencia de un comportamiento lineal entre las salidas reales que se
desean obtener y las predichas por la red. Por otro lado, los valores de error aportados en la
validación, con excepción del último modelo, son pequeños y se diferencian poco entre sí
para cada uno, lo que indica la existencia de una mínima desviación entre los valores reales
y pronosticados.
Se observa que en todos los modelos el error correspondiente a la localidad El Dorado es
mayor que el obtenido para Gibara 1, lo que indica una dificultad por parte de la red en el
pronóstico de dicha zona. Esto se debe a que el viento presenta comportamientos muy
diferentes según la localidad donde se mide, debido a las irregularidades del terreno y otros
parámetros geográficos y meteorológicos propios de la zona. La localidad de Gibara 1 se
encuentra ubicada en una franja costera con terreno predominantemente llano, por lo que el
viento presenta un comportamiento estable, lo que no es así para el caso de El Dorado,
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
56
donde las irregularidades propias del ambiente provocan picos bruscos en las mediciones.
No obstante, como se puede ver en la próxima sección, los resultados que se obtienen tanto
para Gibara 1 como para El Dorado son muy favorables, incluso a pesar del incremento que
presenta este último.
El modelo 4 es el que peores resultados aporta, con valores de error muy superiores a los
demás. Esto se debe principalmente al no empleo de algún método para la división de los
datos, asignándolos todos solamente para entrenamiento. Esto, tal y como ya se había
explicado, trae consigo el aprendizaje de patrones o secuencias no representativas para la
red.
De todos los modelos presentados, los tres primeros son los que ofrecen los pronósticos
más precisos de la velocidad del viento en un horizonte de predicción de una hora, no
obstante, queda demostrado que el más indicado para este tipo de aplicaciones es el modelo
1 debido a su simplicidad, capacidad y tiempo de generalización y rápido procesamiento de
los datos para proporcionar la respuesta de salida. Por estas razones, es que se selecciona
el modelo 1 como el mejor modelo propuesto para la predicción del viento en un horizonte de
una hora.
3.3 Comparación con resultados publicados.
A continuación, se presentan los criterios y resultados aportados por los diferentes autores
de la bibliografía consultada con el objetivo de establecer una comparación entre estos y los
resultados que se obtienen por el modelo 1, que como ya se dijo en el apartado anterior, es
el que ofrece los valores de pronóstico más precisos.
En [22] se emplea una red NARX para predecir la velocidad del viento en la estación
meteorológica de Chimborazo en Ecuador. Se utilizan datos de dirección y velocidad del
viento tomados cada 1 hora en el período de octubre 2014 - octubre 2015. Para la creación
de la red se emplea el método de “ensayo y error” y para las medidas de desempeño en el
análisis cuantitativo del modelo de predicción se utiliza el MSE. Los mejores resultados se
obtienen para una red con una sola capa oculta y 100 neuronas en la misma. Se aplica el
algoritmo de entrenamiento Levenberg-Marquardt y se utilizan como datos de entrada y
salida la dirección y velocidad del viento respectivamente. Para este caso se obtiene un MSE
entre 0.38 y 0.68 unidades.
En [23] se analiza y compara el funcionamiento de tres modelos típicos de RNA en la
predicción de la velocidad del viento en un horizonte de 1 hora: Feedforward
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
57
Backpropagation, Radial Basis Function (RBF) y Adaptive Linear Element (Adaline). Para la
realización de las redes se utilizan datos históricos de velocidad del viento en las localidades
de Hannaford y Kulm en Dakota Norte, tomados a una altura de 10 metros y cada 1 hora.
Las entradas al sistema son para todos los casos retardos de la velocidad del viento elegidas
a través de un análisis de autocorrelación. Se emplea el algoritmo de Levenberg - Marquardt
para el entrenamiento de las mismas. Para las medidas de desempeño se utiliza el MAE,
MAPE y RMSE. Los mejores resultados en la localidad de Hannaford se logran con la
Feedforward Backpropagation con valores de aproximadamente 0.951, 1.254 y 0.211 de
MAE, RMSE y MAPE respectivamente, mientras que en la localidad de Kulm se obtienen con
la RBF con errores de 1.112, 1.444 y 0.189.
En [17] se implementa una red Feedforward Backpropagation para realizar la predicción de
la velocidad del viento en un horizonte de 1 y 2 horas en el parque eólico de Sotavento,
Galicia. Se emplean tres algoritmos típicos de entrenamiento: Levenberg-Marquardt,
Regularización Bayesiana y Scaled Conjugate Gradient. Para la evaluación de los resultados
se utiliza el MAPE y se obtienen los mejores resultados para el algoritmo de Regularización
Bayesiana con valores de error comprendidos entre 0.03807 y 0.07563 para ambos
horizontes de predicción.
En [28] se emplea un Modelo Autorregresivo de Medias Móviles (ARMA) para predecir la
velocidad del viento a muy corto plazo en Gibara 1 y luego combinar dicho pronóstico con la
curva de potencia del parque y así obtener el pronóstico energético. Los datos utilizados
corresponden a observaciones de la velocidad del viento a 50 metros de altura, tomadas
cada 10 minutos en el período de julio a diciembre del 2015, en el mástil de prospección
eólica de Los Cocos, en Las Tunas, el cual se encuentra muy cercano al parque eólico de
Gibara 1. Para evaluar los pronósticos alcanzados se usa el MAE y se obtienen valores
entre 0.83 y 1.93 unidades.
La tabla 3.5 muestra resumidamente los resultados que se obtienen por las investigaciones
mencionadas anteriormente y los aportados por el modelo 1.
El modelo ofrece un pronóstico preciso de la velocidad del viento y llega a superar a la
mayoría de los sistemas que se proponen en la bibliografía consultada. Es importante
destacar el caso de [28], en donde se predice la velocidad del viento a muy corto plazo para
la localidad de Gibara 1 mediante el modelo estadístico ARIMA y se obtienen resultados
mucho mayores con respecto a la RNA implementada en el modelo 1.
_ CAPÍTULO 3. ENTRENAMIENTO DE LOS MODELOS. ANÁLISIS Y COMPARACIÓN DE LOS RESULTADOS
58
De esta manera, queda demostrado que el modelo 1, implementado para la predicción del
viento, ofrece resultados sumamente satisfactorios y brinda gran precisión en este tipo de
aplicación.
Tabla 3.5: Resultados que se obtienen por el modelo 1 y otras publicaciones.
Modelo de
predicción
Horizonte de
predicción
Resultados que se
obtienen
S. Kumar y K. B. Sahay [17]
RNA 1 y 2 horas MAPE = 0.038 - 0.075
P. F. Bolaños [22] RNA 1 hora MSE = 0.38 - 0.68
G. Li y J. Shi [23] RNA 1 hora MAE = 0.951 - 1.112
RMSE = 1.254 - 1.444
B. Martínez y A.
Roque [28]
ARIMA 30 minutos MAE = 0.85 - 1.90
Modelo 1 RNA 1 hora MAE = 0.042 - 0.231
MAPE = 0.011 - 0.079
MSE = 0.003 - 0.086
RMSE = 0.057 - 0.294
3.4 Conclusiones del capítulo
El modelo 1 es el más indicado para la predicción de la velocidad del viento en un horizonte
de pronóstico de 1 hora en el futuro debido a su simplicidad, capacidad, tiempo de
generalización y rápido procesamiento de los datos para proporcionar la respuesta de salida,
así como, gran precisión en el pronóstico.
Los peores resultados se obtienen para el modelo 4, lo que demuestra que el algoritmo de
entrenamiento de Regularización Bayesiana y la distribución no aleatoria de los datos son
poco eficientes para este tipo de aplicación. Así, queda confirmada la superioridad del
algoritmo Levenberg - Marquardt y la división aleatoria de los datos, que para todos los
casos en que se implementan proporcionan respuestas muy satisfactorias.
La comparación con datos publicados demuestra que el modelo implementado ofrece
pronósticos muy precisos y llega a superar varios casos de modelos planteados en la
bibliografía consultada. Además, se puede observar la superioridad de las RNA sobre el
modelo de predicción estadístico ARIMA.
59
CONCLUSIONES
Las RNA son herramientas capaces de brindar respuestas precisas a problemas de
reconocimiento de patrones, predicción y aproximación de funciones, por lo que muchos
autores las establecen como el mejor modelo para la predicción de la velocidad del viento.
Los elementos esenciales que definen una RNA son: la arquitectura de la red, el algoritmo de
aprendizaje, la presentación de los datos y el número de neuronas.
El Neural Network Toolbox de Matlab proporciona los elementos necesarios para la
confección y configuración de RNA y posibilita el desarrollo de modelos básicos o avanzados
en dependencia de la experiencia del diseñador. La herramienta permite ajustar los
elementos esenciales que definen una RNA.
Se implementan cuatro modelos de redes Feedforward Backpropagation para la predicción
de la velocidad del viento a corto plazo en las localidades de Gibara 1 y El Dorado,
pertenecientes a las provincias de Holguín y Villa Clara respectivamente. Estos se
diferencian entre sí por cambios en su arquitectura, como son la función de transferencia de
sus capas y el número de capas ocultas.
Se obtiene un modelo capaz de predecir eficientemente la velocidad del viento en un
horizonte de pronóstico de 1 hora en el futuro. El mismo se caracteriza por un rápido
procesamiento de los datos para proporcionar la respuesta de salida y una gran precisión en
el pronóstico. Se alcanzan valores de MAE y MSE por debajo de las 0.231 y 0.086 unidades
respectivamente.
El modelo escogido se caracteriza por tener una capa oculta de 3 neuronas con función de
transferencia tangente hiperbólica, función de transferencia lineal en la capa de salida,
algoritmo de entrenamiento Levenberg - Marquardt, función de desempeño MSE y división
aleatoria para los datos de entrada.
60
RECOMENDACIONES
Se recomienda que:
Futuras investigaciones traten este tema utilizando como variable pronosticada la
potencia generada en un parque eólico y aplicar otros modelos de predicción para la
posterior comparación.
Se impartan estos contenidos en el pregrado o el postgrado.
61
BIBLIOGRAFÍA
[1] BP México, “Informe Estadistico Mundial de energía de BP 2018”, bp.com, 12-feb-2019.
[En línea]. Disponible en: https://www.bp.com/es_mx/mexico/InformeEstadisticoMundial-BP-2018.html. [Accedido: 12-feb-2019].
[2] C. Delgado y M. Planelles, “El mundo consumirá un 30% más de energía en 2040 y se aleja de cumplir el Acuerdo de París”, El País, Madrid, 14-nov-2017.
[3] X. Labandeira, P. Linares, y K. Würzburg, “Energías renovables y cambio climático”, Cuadernos económicos de ICE, n.o 83, 2012.
[4] Global Wind Energy Council, “Global Wind Report 2018”, gwec.net, abr-2018. [En línea].
Disponible en: https://www.gwec.net. [Accedido: 21-feb-2019].
[5] I. Erbetta Mattig, “Predicción de la potencia para la operación de parques eólicos”, 2010.
[6] Biomass Users Network, “Manuales sobre energía renovable: Eólica”, San José. No1,
2002.
[7] M. Carolin Mabel y E. Fernandez, “Analysis of wind power generation and prediction using ANN: A case study”, Renewable Energy, vol. 33, n.o 5, pp. 986-992, may 2008.
[8] G. R. Kishore, V. Prema, y K. U. Rao, “Multivariate wind power forecast using artificial neural network”, en 2014 IEEE Global Humanitarian Technology Conference - South Asia Satellite (GHTC-SAS), 2014, pp. 159-163.
[9] “Mayor parque eólico de Cuba se construye con aerogeneradores chinos de Goldwind”, Revista Eólica y del Vehículo Eléctrico, 07-feb-2019. [En línea]. Disponible en:
https://www.evwind.com/. [Accedido: 07-feb-2019].
[10] A. Carralero Hernández, “Destacan potencialidades de Cuba en la generación de energía eólica”, aldia.cu Sitio Web de la Televisión en Holguín, 07-feb-2019. [En línea]. Disponible en: http://www.aldia.cu/es/noticias/holguin/1228-destacan-potencialidades-de-cuba-en-la-generacion-de-energia-eolica. [Accedido: 07-feb-2019].
[11] R. Cubahora, “Energía eólica en Cuba: lo que trae el viento (+Fotos) (+Videos)”, Cubahora, 05-jun-2018. [En línea]. Disponible en: http://www.cubahora.cu/ciencia-y-
tecnologia/lo-que-trae-el-viento. [Accedido: 07-feb-2019].
[12] P. H. Ibargüengoytia-González et al., “Predicción de potencia eólica utilizando técnicas modernas de Inteligencia Artificial”, Ingeniería, investigación y tecnología, vol. 19, n.o 4,
dic. 2018.
[13] M. Lydia y S. S. Kumar, “A comprehensive overview on wind power forecasting”, en 2010 Conference Proceedings IPEC, 2010, pp. 268-273.
[14] Y. Wu y J. Hong, “A literature review of wind forecasting technology in the world”, en 2007 IEEE Lausanne Power Tech, 2007, pp. 504-509.
[15] P. M. Fonte, G. X. Silva, y J. C. Quadrado, “Wind speed prediction using artificial neural networks.”, WSEAS Transactions on Systems, vol. 4, n.o 4, pp. 379–384, 2005.
62
[16] J. Mur Amada, “Curso de energía eólica”, Máster europeo en energías renovables y eficiencia energética, Departamento de Ingeniería Eléctrica, Universidad de Zaragoza, 2008.
[17] S. Kumar y K. B. Sahay, “Wind Speed Forecasting using Different Neural Network Algorithms”, en 2018 2nd International Conference on Electronics, Materials Engineering Nano-Technology (IEMENTech), 2018, pp. 1-4.
[18] R. Piwko, D. Osborn, R. Gramlich, G. Jordan, D. Hawkins, y K. Porter, “Wind energy delivery issues [transmission planning and competitive electricity market operation]”, IEEE Power and Energy Magazine, vol. 3, n.o 6, pp. 47-56, nov. 2005.
[19] M. R. Milligan, A. H. Miller, y F. Chapman, “Estimating the economic value of wind forecasting to utilities”, National Renewable Energy Lab., Golden, CO (United States), may 1995.
[20] G. Kariniotakis, M. Matos, y V. Miranda, “Assessment of the benefits from advanced load and wind power forecasting in autonomous power systems”, en EWEC Conference,
1999, pp. 391–394.
[21] V. Kumar, V. K. Singhal, A. Kushwaha, M. Agarwal, y A. Gupta, “Wind Speed & Power Forecasting using Artificial Neural Network (NARX) for new York Wind Energy Farm”, Journal for Research| Volume, vol. 3, n.o 09, 2017.
[22] P. F. Bolaños Logroño, “Predicción de la velocidad del viento mediante redes neuronales, para la Estación Meteorológica Chimborazo.”, Escuela Politécnica Superior de Chimborazo, mar. 2018.
[23] G. Li y J. Shi, “On comparing three artificial neural networks for wind speed forecasting”, Applied Energy, vol. 87, n.o 7, pp. 2313-2320, jul. 2010.
[24] S. Huang, K. Mu, P. Lu, C. Tsao, Y. Leu, y L. Chou, “The application of neural network in wind speed forecasting”, en 2015 IEEE 12th International Conference on Networking, Sensing and Control, 2015, pp. 366-370.
[25] H. Masrur, M. Nimol, M. Faisal, y S. M. G. Mostafa, “Short term wind speed forecasting using Artificial Neural Network: A case study”, en 2016 International Conference on Innovations in Science, Engineering and Technology (ICISET), 2016, pp. 1-5.
[26] C. Pérez Llera, M. C. Fernández Baizán, J. L. Feito, y V. G. del Valle, “Local Short-Term Prediction of Wind Speed: A Neural Network Analysis”, International Congress on Environmental Modelling and Software, jul. 2002.
[27] M. Ouanani Allachi, “Predicción de energía eólica utilizando técnicas de aprendizaje automático”, may 2016.
[28] B. Martínez Pérez y A. Roque Rodríguez, “Pronóstico energético a muy corto plazo para el Parque Eólico Gibara I utilizando un modelo autorregresivo”, Revista Cubana de Meteorología, vol. 25, n.o 2, feb. 2019.
[29] L. A. Fernández, “Modelos avanzados para la predicción a corto plazo de la producción eléctrica en parques eólicos”, Tesis Doctoral, Universidad de La Rioja, 2007.
[30] X. Zhao, S. Wang, y T. Li, “Review of evaluation criteria and main methods of wind power forecasting”, Energy Procedia, vol. 12, pp. 761-769, 2011.
[31] R. G. Kavasseri y K. Seetharaman, “Day-ahead wind speed forecasting using f-ARIMA models”, Renewable Energy, vol. 34, n.o 5, pp. 1388-1393, may 2009.
63
[32] M. Bhaskar, A. Jain, y N. V. Srinath, “Wind speed forecasting: Present status”, en 2010 International Conference on Power System Technology, 2010, pp. 1-6.
[33] V. A. Profillidis y G. N. Botzoris, “Chapter 8 - Artificial Intelligence—Neural Network Methods”, en Modeling of Transport Demand, V. A. Profillidis y G. N. Botzoris, Eds.
Elsevier, 2019, pp. 353-382.
[34] A. Meyer-Baese y V. Schmid, “Chapter 7 - Foundations of Neural Networks”, en Pattern Recognition and Signal Analysis in Medical Imaging (Second Edition), A. Meyer-Baese y
V. Schmid, Eds. Oxford: Academic Press, 2014, pp. 197-243.
[35] M. H. Beale, M. T. Hagan, y H. B. Demuth, “Neural network toolbox”, User’s Guide, MathWorks, vol. 2, pp. 77–81, 2010.
[36] R. Salas, “Redes neuronales artificiales”, Universidad de Valparaıso. Departamento de Computación, vol. 1, 2004.
[37] Y. García López, “Predicción de la demanda eléctrica empleando redes neuronales artificiales”, Thesis, Universidad Central “Marta Abreu” de Las Villas. Facultad de Ingeniería Eléctrica. Departamento de Electroenergética, 2009.
[38] A. J. Serrano, E. Soria, y J. Martín, “Redes neuronales artificiales”, Universidad de Valencia. Escuela Técnica Superior Ingeniería, Departamento de Ingeniería Electrónica,
2009.
64
ANEXOS
Anexo I
Tabla 1: Resultados que se obtienen en el proceso de entrenamiento del modelo 1.
Cantidad de
neuronas
Gibara 1 El Dorado
MAE MAPE MSE RMSE MAE MAPE MSE RMSE
1 0.043 - 0.05
0.013 - 0.018
0.003 - 0.004
0.057 - 0.063
0.182 - 0.236
0.041 - 0.085
0.056 - 0.091
0.237 - 0.301
2 0.043 - 0.049
0.013 - 0.018
0.003 - 0.004
0.056 - 0.063
0.181 - 0.234
0.041 - 0.083
0.055 - 0.089
0.235 - 0.298
3 0.045 - 0.048
0.013 - 0.018
0.003 - 0.004
0.057 - 0.061
0.179 - 0.231
0.039 - 0.079
0.054 - 0.086
0.232 - 0.294
4 0.043 - 0.047
0.013 - 0.017
0.003 - 0.004
0.056 - 0.06
0.182 - 0.235
0.042 - 0.081
0.056 - 0.092
0.236 - 0.303
5 0.043 - 0.048
0.013 - 0.017
0.003 - 0.004
0.056 - 0.062
0.184 - 0.239
0.042 - 0.086
0.058 - 0.094
0.241 - 0.306
6 0.043 - 0.046
0.012 - 0.018
0.003 - 0.004
0.054 - 0.06
0.183 - 0.235
0.042 - 0.081
0.056 - 0.091
0.236 - 0.301
7 0.043 - 0.046
0.012 - 0.018
0.003 - 0.003
0.054 - 0.058
0.183 - 0.232
0.042 - 0.08
0.056 - 0.088
0.237 - 0.296
8 0.042 - 0.043
0.011 - 0.017
0.003 - 0.003
0.053 - 0.058
0.185 - 0.235
0.042 - 0.081
0.057 - 0.091
0.239 - 0.302
9 0.044 - 0.045
0.012 - 0.018
0.003 - 0.004
0.055 - 0.059
0.182 - 0.234
0.042 - 0.079
0.055 - 0.089
0.235 - 0.299
10 0.043 - 0.045
0.012 - 0.018
0.003 - 0.003
0.055 - 0.058
0.183 - 0.233
0.042 - 0.076
0.056 - 0.089
0.237 - 0.299
Tabla 2: Resultados que se obtienen en el proceso de entrenamiento del modelo 2.
Cantidad de
neuronas
Gibara 1 El Dorado
MAE MAPE MSE RMSE MAE MAPE MSE RMSE
1 0.051 - 0.06
0.015 - 0.019
0.005 - 0.006
0.068 - 0.08
0.216 - 0.285
0.049 - 0.1
0.078 - 0.129
0.279 - 0.359
2 0.05 - 0.058
0.014 - 0.019
0.004 - 0.006
0.067 - 0.078
0.215 - 0.283
0.049 - 0.097
0.076 - 0.126
0.275 - 0.355
3 0.045 - 0.055
0.014 - 0.017
0.004 - 0.006
0.062 - 0.075
0.214 - 0.282
0.048 - 0.097
0.075 - 0.125
0.274 - 0.354
4 0.049 - 0.058
0.014 - 0.018
0.004 - 0.006
0.067 - 0.077
0.215 - 0.283
0.049 - 0.095
0.076 - 0.125
0.275 - 0.353
5 0.046 - 0.056
0.014 - 0.017
0.004 - 0.006
0.062 - 0.075
0.216 - 0.284
0.049 - 0.097
0.076 - 0.126
0.277 - 0.355
65
6 0.048 - 0.059
0.014 - 0.018
0.004 - 0.006
0.066 - 0.079
0.215 - 0.283
0.049 - 0.098
0.076 - 0.127
0.276 - 0.356
7 0.048 - 0.058
0.014 - 0.018
0.004 - 0.006
0.064 - 0.077
0.216 - 0.284
0.049 - 0.096
0.076 - 0.126
0.275 - 0.355
8 0.046 - 0.056
0.014 - 0.017
0.004 - 0.006
0.061 - 0.076
0.216 - 0.283
0.049 - 0.092
0.077 - 0.127
0.277 - 0.356
9 0.046 - 0.056
0.014 - 0.017
0.004 - 0.006
0.063 - 0.075
0.215 - 0.282
0.049 - 0.092
0.076 - 0.126
0.275 - 0.355
10 0.754 - 0.785
0.023 - 0.034
0.917 - 1.038
0.958 - 1.019
0.217 - 0.28
0.05 - 0.092
0.078 - 0.125
0.279 - 0.354
Tabla 3: Resultados que se obtienen en el proceso de entrenamiento del modelo 3.
Cantidad de
neuronas
Gibara 1 El Dorado
MAE MAPE MSE RMSE MAE MAPE MSE RMSE
1 0.043 - 0.049
0.013 - 0.018
0.003 - 0.004
0.056 - 0.063
0.182 - 0.236
0.041 - 0.087
0.056 - 0.091
0.237 - 0.302
2 0.043 - 0.048
0.013 - 0.017
0.003 - 0.004
0.056 - 0.062
0.181 - 0.231
0.041 - 0.084
0.054 - 0.085
0.232 - 0.292
3 0.042 - 0.045
0.012 - 0.017
0.003 - 0.003
0.053 - 0.058
0.179 - 0.230
0.041 - 0.081
0.054 - 0.089
0.233 - 0.298
4 0.046 - 0.047
0.013 - 0.018
0.003 - 0.004
0.057 - 0.06
0.183 - 0.235
0.042 - 0.083
0.056 - 0.092
0.237 - 0.301
5 0.043 - 0.044
0.012 - 0.017
0.003 - 0.003
0.054 - 0.057
0.182 - 0.237
0.041 - 0.081
0.055 - 0.093
0.235 - 0.306
6 0.043 - 0.046
0.011 - 0.018
0.003 - 0.003
0.053 - 0.059
0.181 - 0.231
0.042 - 0.079
0.056 - 0.088
0.236 - 0.297
7 0.043 - 0.046
0.012 - 0.018
0.003 - 0.004
0.054 - 0.059
0.182 - 0.232
0.042 - 0.081
0.057 - 0.089
0.238 - 0.298
8 0.044 - 0.045
0.012 - 0.018
0.003 - 0.003
0.055 - 0.059
0.182 - 0.232
0.042 - 0.081
0.055 - 0.087
0.235 - 0.295
9 0.043 - 0.045
0.012 - 0.017
0.003 - 0.003
0.055 - 0.058
0.183 - 0.235
0.042 - 0.081
0.056 - 0.091
0.237 - 0.302
10 0.043 - 0.047
0.012 - 0.018
0.003 - 0.004
0.055 - 0.062
0.184 - 0.233
0.042 - 0.082
0.057 - 0.089
0.239 - 0.299
Tabla 4: Resultados que se obtienen en el proceso de entrenamiento del modelo 4.
Cantidad de
neuronas
Gibara 1 El Dorado
MAE MAPE MSE RMSE MAE MAPE MSE RMSE
1 0.086 - 0.094
0.023 - 0.034
0.013 - 0.015
0.112 - 0.123
0.323 - 0.423
0.072 - 0.152
0.185 - 0.297
0.43 - 0.545
2 0.082 - 0.092
0.022 - 0.035
0.012 - 0.014
0.108 - 0.118
0.324 - 0.421
0.073 - 0.15
0.184 - 0.294
0.429 - 0.542
3 0.079 - 0.089
0.021 - 0.034
0.011 - 0.013
0.105 - 0.115
0.322 - 0.418
0.072 - 0.15
0.183 - 0.295
0.427 - 0.543
4 0.082 - 0.022 - 0.012 - 0.107 - 0.323 - 0.073 - 0.183 - 0.428 -
66
0.09 0.034 0.013 0.114 0.419 0.15 0.301 0.549
5 0.08 - 0.089
0.021 - 0.034
0.011 - 0.013
0.105 - 0.114
0.322 - 0.419
0.072 - 0.149
0.183 - 0.292
0.427 - 0.54
6 0.08 - 0.089
0.021 - 0.034
0.011 - 0.013
0.105 - 0.115
0.322 - 0.417
0.072 - 0.151
0.182 - 0.302
0.427 - 0.549
7 0.079 - 0.09
0.021 - 0.035
0.011 - 0.014
0.105 - 0.117
0.321 - 0.417
0.072 - 0.151
0.183 - 0.3
0.427 - 0.548
8 0.079 - 0.091
0.021 - 0.034
0.011 - 0.013
0.106 - 0.115
0.322 - 0.418
0.072 - 0.15
0.182 - 0.298
0.427 - 0.546
9 0.079 - 0.09
0.021 - 0.034
0.011 - 0.013
0.104 - 0.115
0.324 - 0.417
0.073 - 0.15
0.184 - 0.292
0.429 - 0.54
10 0.079 - 0.089
0.021 - 0.034
0.011 - 0.013
0.104 - 0.115
0.324 - 0.42
0.073 - 0.151
0.183 - 0.293
0.428 - 0.541