75
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

Título: Predicción de la Velocidad del Viento para la

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 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

Page 2: Título: Predicción de la Velocidad del Viento para la

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

Page 3: Título: Predicción de la Velocidad del Viento para la

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

Page 4: Título: Predicción de la Velocidad del Viento para la

A mi novia Chabelys,

quien estuvo a mi lado a cada instante

y pudo soportar en todo momento mi estrés.

Page 5: Título: Predicción de la Velocidad del Viento para la

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.

Page 6: Título: Predicción de la Velocidad del Viento para la

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.

Page 7: Título: Predicción de la Velocidad del Viento para la

Í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

Page 8: Título: Predicción de la Velocidad del Viento para la

_____________________ Í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

Page 9: Título: Predicción de la Velocidad del Viento para la

_____________________ ÍNDICE

CONCLUSIONES ................................................................................................................. 59

RECOMENDACIONES ......................................................................................................... 60

BIBLIOGRAFÍA .................................................................................................................... 61

ANEXOS .............................................................................................................................. 64

Page 10: Título: Predicción de la Velocidad del Viento para la

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

Page 11: Título: Predicción de la Velocidad del Viento para la

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.

Page 12: Título: Predicción de la Velocidad del Viento para la

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.

Page 13: Título: Predicción de la Velocidad del Viento para la

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.

Page 14: Título: Predicción de la Velocidad del Viento para la

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.

Page 15: Título: Predicción de la Velocidad del Viento para la

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.

Page 16: Título: Predicción de la Velocidad del Viento para la

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.

Page 17: Título: Predicción de la Velocidad del Viento para la

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].

Page 18: Título: Predicción de la Velocidad del Viento para la

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

Page 19: Título: Predicción de la Velocidad del Viento para la

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.

Page 20: Título: Predicción de la Velocidad del Viento para la

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.

Page 21: Título: Predicción de la Velocidad del Viento para la

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

Page 22: Título: Predicción de la Velocidad del Viento para la

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).

Page 23: Título: Predicción de la Velocidad del Viento para la

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

Page 24: Título: Predicción de la Velocidad del Viento para la

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:

Page 25: Título: Predicción de la Velocidad del Viento para la

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.

Page 26: Título: Predicción de la Velocidad del Viento para la

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.

Page 27: Título: Predicción de la Velocidad del Viento para la

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.

Page 28: Título: Predicción de la Velocidad del Viento para la

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].

Page 29: Título: Predicción de la Velocidad del Viento para la

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

Page 30: Título: Predicción de la Velocidad del Viento para la

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

Page 31: Título: Predicción de la Velocidad del Viento para la

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

Page 32: Título: Predicción de la Velocidad del Viento para la

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.

Page 33: Título: Predicción de la Velocidad del Viento para la

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

Page 34: Título: Predicción de la Velocidad del Viento para la

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

Page 35: Título: Predicción de la Velocidad del Viento para la

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.

Page 36: Título: Predicción de la Velocidad del Viento para la

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)

Page 37: Título: Predicción de la Velocidad del Viento para la

___ 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

Page 38: Título: Predicción de la Velocidad del Viento para la

___ 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}

Page 39: Título: Predicción de la Velocidad del Viento para la

___ 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].

Page 40: Título: Predicción de la Velocidad del Viento para la

___ 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

Page 41: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 42: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 43: Título: Predicción de la Velocidad del Viento para la

___ 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).

Page 44: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 45: Título: Predicción de la Velocidad del Viento para la

___ 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

Page 46: Título: Predicción de la Velocidad del Viento para la

___ 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

Page 47: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 48: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 49: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 50: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 51: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 52: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 53: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 54: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 55: Título: Predicción de la Velocidad del Viento para la

___ 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.

Page 56: Título: Predicción de la Velocidad del Viento para la

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.

Page 57: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 58: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 59: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 60: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 61: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 62: Título: Predicción de la Velocidad del Viento para la

_ 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

Page 63: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 64: Título: Predicción de la Velocidad del Viento para la

_ 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,

Page 65: Título: Predicción de la Velocidad del Viento para la

_ 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

Page 66: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 67: Título: Predicción de la Velocidad del Viento para la

_ 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.

Page 68: Título: Predicción de la Velocidad del Viento para la

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.

Page 69: Título: Predicción de la Velocidad del Viento para la

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.

Page 70: Título: Predicción de la Velocidad del Viento para la

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.

Page 71: Título: Predicción de la Velocidad del Viento para la

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.

Page 72: Título: Predicción de la Velocidad del Viento para la

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.

Page 73: Título: Predicción de la Velocidad del Viento para la

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

Page 74: Título: Predicción de la Velocidad del Viento para la

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 -

Page 75: Título: Predicción de la Velocidad del Viento para la

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