Redes Neuronales pa a identificación y predicción de series de tiempo
Adolfo Gonzá/oz Yuns · Miguel A. Avila Álvarez", Eduardo Gomez Ramírf:z· Onof Mulef!. Ferran Mazzant1 , Xavier Vílasts-Cardona·
' Laboratono de lnvest1gac1ony Desarrollo de Tecnología Avanzada Universidad La Salle
Benjamín Franklin 47 , Col . Hipódromo Condesa , México , D.F., 06170
e-mail <agonz@ci.ulsa,mx> <maavíla@hel1os./c j,ulsa.m><> <egomezr@c1 ulsa mx> Oepartament d Electromca - Enginyena La Salle Un1versilat Ramon Llu/I
Pg Bonan ova 8 08022 Barcelona - España.
e-mail: <mazzant1@sal/eURLP.du> <xv 1/as 1s@salleURLedu>.
RESUMEN
La predicción de series de tiempo es un área que ha llamado gran atención debido a la gran cantidad de aplicaciones en control. economía medicina.entre otras. En este trabajo se presenta algunos de los algo ritmos de redes neuronales artificiales que han mostrado mejores resultados en este campo. Se presenta la aplicación en la predicción de la serie de manchas solares como los datos estándar para que pueda ser comparado con otros algoritmos reportados.
Palabras clave: Redes N e uronales, predicción de series de tiempo, redes neuron ales polinom iales, per ceptrone s, mvlticapa , redes de E/man.
ABSTRACT
The Area of Forecasting Time Series has grown in the last years due to the great number of applications in control, economy, medicine, etc. In this paper we present sorne algorithms of Artificial Neural Networks that has shown good results to predict tíme series. We use like standard example the sunspots forecast ing to compare with other algorithms.
Keywords: Neura/ network s. time series prediction, polynomi a l neural networks, mu/ti/ ayer perceptron s, E/man networks.
1 INTRODUCCIÓN
La identificación de sistemas es una de las piezas fundamentales de la teoría de control. En efecto. el diseño de cualquier controlador empieza por disponer de un modelo matemático de la planta, o al menos del conocimiento del comportamiento dinámico de las variables involucradas. La calidad del controlador va a depender de la precisión del modelo. principal mente cuando se busca la convergencia de un controlador adaptable. El modelo se suele obtener a partir de las ecuaciones físicas del proceso, aunque a menudo sucede que éstas
no describen el sistema con la precisión desea da en todo su rango de funcionamiento. Tam bién puede suceder que alguno de los paráme tros del modelo sea desconocido, o incluso no existen ecuaciones conocidas para el sistema que se debe tratar. La identificación de un sis tema consiste entonces en ajustar su respuesta a un modelo funcional a partir de datos experi mentales.
Para sistemas lineales existe una amplia teoría desarrollada (1, 2). pero empiezan a aparecer dificultades al entrar en el dominio de los sistemas no lineales. En este terreno las redes neuronales artificiales (3, 4) resultan una herramienta muy útil para tales propósitos (5. 6).
Rev. Centro lnv. ( Mé '<) Vol 4 13 - 14 Enero 2000 47
básicamente por dos motivos: primero, porque se puede demostrar que las redes neuronales artificiales son aproximadores universales (7) de funciones tal como pueda serlo una serie de Fourier,por ejemplo. Segundo, porque la identi
ficación de un sistema se pueda interpretar
u(k) n•r·r
u(k-N u+ l) --.;..
|
.
ANN ·---- y(k+ 1)
como un problema de aprendizaje supervisado: se dispone de un conjunto de muestras que la red debe reproducir tan fielmente como sea posible.
El objeto de este artículo es ilustrar el uso de las redes neuronales artificiales para un caso particular de identificación de sistemas como es la predicción de series de tiempo. En particular se utilizará una de las series que más a menudo se usa como banco de pruebas: la serie del Número de Wolff que indica la actividad solar y
que se conoce comúnmente como la serie de
y(k-N y+ l ) --, _ -·
F i gura 1: Esquen 1d Ja icient1fic ac1ón entra clalsalida con und red neuronal .
Un enfoque consiste en estudiar la planta como un sistema entrada/salida, es decir, medi mos la respuesta y{t) a una entrada determina da u(t) e intentamos encontrar la dependencia funci. onal entre ellas. Para un sistema causal en tiempo discreto,se tiene ,
y ( k + /) = h( u(k), u(k -1) . u( k - n1 ) ;
manchas solares. Sobre esta serie, por un lado, se ilustrará el uso de algunos de los tipos de redes más comunes usados en identificación como son los perceptrones multicapa (8) y las
y( k ), y ( k-J ). y ( k -n2
)).
(Ec. 1)
redes de Elman modificadas (12), mientras que por otro, se prueba la eficiencia de las redes polinomiales de arquitectura adaptable (26).
Para explicar varias de las metodologías exis tentes en el área para la identificación de series de tiempo se estructuró el articulo de la si guiente forma: La sección 2 es una breve intro ducción a identificación de sistemas y la pre dicción de series de tiempo. En la sección 3 se describen los tres algoritmos de redes Neu ronales utilizados: perceptrón multícapa, redes de Elman modificadas y, red neuronal artificial polinomial (RNAP). En la sección 4 se describe lo que son las manchas solares y la serie de tiempo generada. En la siguiente sección se muestran los resultados con cada una de estas redes y por último las conclusiones de este
artículo.
2. IDENTIFICACIÓN DE SISTEMAS Y PREDIC CIÓN DE SERIES DE TIEMPO
Tal como se ha mencionado en la introducción. identificar un sistema consiste en ajustar la respuesta de éste a un modelo matemático fun cional a partir de datos experimentales. Depen diendo del enfoque es posible realizar esta ta rea de dos formas:
4 8
donde, por simplicidad se han eliminado las dependencias de variables externas que no se pueden controlar. Así formulado, el problema consiste en aproximar la función h(). En térmi nos lineales, esto es equivalente a encontrar la función de transferencia.
El segundo enfoque pretende. por otro lado, hallar la dinámica interna de la planta a través de sus variables de estado x(t) . La salida del sistema y(t) es una función de estas variables. Para un sistema causal discreto, se tiene, sim plificando las dependencias posibles para la salida ,
x(k + /) = f(x(k},x(k - 1)....,·u(k).u(k -J), ...),
y ( k) == g ( x ( k }, u ( k }).
(E c . 2)
donde se ha realizado la misma simplificación que en la Ec. 1.
En este marco, la tarea de las redes neu ronales es aproximar las funciones f(). g() o h{), dependiendo del tipo de red empleada.
Si se utilizan redes de alimentación hacia ade lante (feed forward), como son los perceptrones
Rev. C 1.mtro /'IV. ( J ) Vol.'1. 1 3 14 Enero 2000
- _ _ _
_ _ _ A11í r:ulo:
multicapa (PM) o las redes neuronales artifi ciales polinomia les (RNAP). se optará por hacer una identificación del tipo entrada/salida.Asi, se buscará ajustar una función de la forma,
y( k +l) = h(u( k),u(k + l),...,u(k - N,, + 1)
y( k) ,y( k - 1), ...,y(k - NY + l))
(éc. 3)
Se construirá una red con Nv+Ny neuronas de entrada en las cuales se dispondrá de los valo res u(k) ,...,u(k-Nu+1),y(k),.. ,y(k-Ny+1) y una neurona de salida en la cual se espera obtener y(k + 1) (ver Figura 1). Se organizarán entonces los datos obtenidos experimentalmente sobre la respuesta del sistema para construir elconjunto de entrenamiento:
{u(k ), ...,u(k - N,, + l), y( k),...,y (k - NY + l);y(k + !)}
Con estos valores se va a entrenar la red con los algoritmos apropiados.
El interés en usar redes recurrentes reside en la posibilidad de emular la dinámica del sistema con su propia dinámica interna. Se busca que la red encuentre una representación en variables de estado del sistema a partir de los estados de las neuronas ocultas. Idealmente . sólo se nece sita introducir en la red el valor de las entradas actuales u(k) para poder recuperar la salida futura y(k) en las neuronas de salida de la red. En la práctica resulta a menudo más eficiente informar a la red del valor de entradas y salidas anteriores. Del mismo modo que para las redes de alimentación hacia adelante con los da1os experimentales se construye el conjunto de en trenamiento y se entrenará la red.
En general, el entrenamiento de redes recur rentes suele ser más lento y dificil que el de las redes con alimentación hacia adelante. aunque ello se compensa por el mejor ajuste que poten cialmente pueden realizar delsistema.
Un caso particular de identificación de sis temas es la predicción de series de t iempo. Una serie de t iempo no es más que un conjunto de datos medidos a intervalos regulares. Dentro de esta amplia definición se pueden considerar los fenómenos más dispares. desde tas cotiza ciones bursátiles diarias hasta el consumo
Re '/ Centro I ! (Méx) Vol 4 1.; -1•1 En- ro "000
horario eléctrico de una ciudad, el importe que paga diaria mente un cajero automático o el número de personas por hora que cruzan una determinada calle. Vistos estos ejemplos, el interés de realizar predicciones sobre estas series es evidente. Desde el punto de vista de la identificación de sistemas, se puede interpretar una serie de tiempo como la salida de un sis tema con el que no se cuenta con su entrada (Y por ello se desconocen sus u(k)). Se dispone únicamente de los valores anteriores de la serie para predecir los valores siguientes. En algunos casos, se intenta buscar variables externas que puedan influir de forma relevante que están cor relacionadas con la salida: por ejemplo, el con sumo de gas puede depender de la temperatu ra. ya que en función de ella se encenderán o no los calefactores.
Existe abundante literatura sobre predicción de series de tiempo empleando métodos linea les, (9, 1O) aunque las redes neuronales, por su capacidad de aprendizaje se están erigiendo en útiles aliados para estas tareas. Tomando una ventana de datos, se alimenta a las redes, sean las de alimentación hacia adelante o recurren tes, y se obtiene la salida estimada:
y ( k + l ) = h(y(k),y(k - 1)....)
¡ Ec 4)
Como caso particular de identificación, se puede interpretar el valor a predecir directa mente como una función de los valores anterio res, tal como indica la Ec. 4, o como la medida del estado de un sistema :
x( k + 1) = f (x ( k),.x( k - 1),...),
y( k ) = g(x(k))
(Ec 5)
Operando de la misma manera que ha des crito para la identificación de sistemas, se pue den usar redes de alimentacíón hacia adelante o recurren1es. tal como se ilustrará en las próxi mas secciones.
3. EJEMPLOS DE REDES USADOS EN LA
IDENTIFICACION DE SISTEMAS
A continuación se de5cribirán dos de los tipos
4 9
de redes neuronales artificiales más utilizadas en la identificación de sistemas. Se eligió, para ilustrar el desarrollo de la sección 2, un tipo de red de alimentación hacia adelante como es el perceptrón multicapa, y un tipo de red recurren te, como es la red de Elman modificada.
3.1 rer ptron mlJlttcapa
Este es sin duda el tipo de red más famoso y de hecho, el responsable de la popularidad de las redes neuronales a partir de mediados de los años ochenta. Esto se debe a la simplicidad de su algoritmo de aprendizaje supervisado, el co nocido propagación hacia atrás (backpropaga tion) {11).
W,ll ro121 úf; l ro':'J
'J r " ,, , IJ ,,-..-
|
la señal que llega a una neurona y su valor de salida se establece a través de la denominada función de activación f() , que generalmente es no-lineal,
|
I
( F 6)
donde w,ll es el peso que la neurona i de la capa k con el resto de neuronas de la capa ante rior.
Tal como se ha mencionado, en este tipo de redes, se suele emplear como algoritmo de en trenamiento, es decir de adaptación de pesos, el algoritmo de propagación hacia atrás. Este consiste en minimizar el error cuadrático medio del conjunto de muestras comparando la salida esperada con la obtenida por la red
o ... -W-
, .) yin(
l
E = _l "( .(nJ.i• _ -.µ)2
2 N _¿ Y, Y ,
'"
(1\ J X (lJ X 121 X (n·l l X (nl
|
; ; 1gura 2. Perceptrón mullicapa
Como su nombre indica, el perceptrón multi capa tiene sus neuronas organizadas por ca pas, de acuerdo a la estructura que se muestra en la Figura 2. Su número es variable depen diendo de la funcionalidad de la red, pero en general se distinguen los tipos siguientes:
• una capa de entrada .donde se alimenta a los datos a la red (capa O deldibujo).
• capas ocultas, cuyo número es variable,
• una capa de salida, donde se lee el resultado del cálculo de la red (capa n de la figura) .
De acuerdo con el esquema de la figura , en general se designa x/1<1 al valor que toma la neu ronai-ésima de la capa k-ésima. mientras que y,fkl es el valor que transmite a las neuronas de la capa siguiente. Como la señal se propaga exclusivamente hacia adelante. la salida y,fkl
coincide con la entrada xP" i¡. La relación entre
50
( Ec 7)
siendo N el número de muestras, etiquetadas por el índice µ. _ ,. la salida esperada y y,InJ,µ la
y,
|
111 ¡ ¡ = -ri -;-:-:-:m
OW;¡
(Ec 8)
donde rt es el parámetro de aprendizaje. Sobre esta base, suelen aplicarse métodos de acele ración. como por ejemplo añadir un término de momento, que cecuerda la dirección escogida en la anterior actualización de los pesos:
( Ec 9)
Con esto se consigue,además de acelerar la convergencia del algoritmo de aprendizaje , evi tar algunos mínimos locales poco profundos de la función de error.
R1n C en/f(• /¡,11 (MéxJ Vol. ... ,3 - 14 E;nero 2000
Se toma en cuenta que la Ecuación 6 rela ciona el valor de las neuronas de la capa k con los de la capa k-1 , y que éstas a su vez se rela cionan con las de la capa k-2 y así sucesiva mente hasta llegar a las neuronas de la capa de
entrada. Entonces es posible expresar la fun ción de error en términos de los pesos de la
donde ahora
(E .; . 14 )
capa respecto a la que se quiere derivar. Entonces:
ol"·J).1• =4°"0¡,.i"wl"Jf (hn-1 J.1• )
|
J
y
(E c 1 'i)
tEc ._ )
A partir de esta expresión se puede derivar la regla de actualización de los pesos de la capa k empleando las ecuaciones 8 y la regla de la cadena. Para los pesos que conectan con la capa de salida, se obtiene:
X
(Ec. 11)
donde orJ,µ es una cantidad característica de las ecuaciones delalgoritmo de propagación hacia atras
(El: 181
Como puede observarse a partir de estos resultados, existe cierta recurrencia que permite obtener la expresión general de las derivadas de la función de costo respecto a los pesos de cada capa. El resultado generales que la actua lización de los pesos de la capa k-ésima se establece de acuerdo a:
(Ec 17)
donde el valor de of' <l-JJ. se halla a través de la relación
|
1 L.,¡ 1 r; l J
J
y hf "J,µ. es el campo local
(Ec . u .)
en términos de los campos locales
(E 1 E
tEc . 1 3)
Procediendo de forma análoga. la regla de actualización de los pesos de la penúltima capa resulta ser:
Rov e c'nlw /m (Mux) V"/ J. t _, 14 énoro 2000
(Fe 19)
En conclusión y tal como puede observarse, el cálculo de B,fl<J.µ requiere del uso de o/T<•it,µ., mientras que ésta a su vez se calcula partiendo
de o/M/.µ y asl hasta llegar a 5¡n1µ , que se
obtiene a partir de la salida predicha por la red,
51
|
el valor real de tal salida y el campo local en la última capa. Así pues, en este algoritmo la actualización de los pesos se realiza en sentido inverso al de propagación de la señal, es decir que primero se evalúa la variación de los pesos de la última capa, luego la variación de los pesos de la penúltima capa, y así hasta llegar a
la variación de los pesos de la capa de entrada : es por ello que el algoritmo se denomina propa gación hacia atrás.
3 2 Redes de Elman modificadas
La red de Elman modificada es un tipo de red neuronal con una topología muy particular y que puede entenderse como un modelo híbrido de red de alimentación hacia adelante y red re currente (12, 6}. Consta de una capa de entra da, una capa intermedia. una capa de salida y una capa de contexto tal como se muestra en la
Figura 3. Tanto entre la capa de entrada y la
perceptrón multicapa por ejemplo) con un numero mayor de neuronas. Sin embargo, para poder especificar la dinámica de funcionamiento de esta red es necesario introducir previamente la nomenclatura que especifique cada paráme tro de la misma. Para ello se designa ylk) al valor de la neurona i-ésíma en la capa de sahda,
x/ (k) el valor que toma la neurona j-ésima de la capa a (este índice varía entre i, o, h o e para indicar input, hidden o context), y w,/' el valor
que toma el peso que modera la interacción entre las neuronas í y j de \a capa a donde a toma los mismos valores de antes. Si adicional mente se denomina f() a la función de acti
vación de cada neurona .. el conjunto de ecua ciones que determinan los valores que toman éstas en el equilibrio es el siguiente:
y , ( k )= Jc ¿w, x;'(k))
j
oculta como entre la capa oculta y la de salida, la señal se propaga hacia adelante como en una red de alimentación hacia adelante, mientras que la conexión entre la capa oculta y la capa de contexto es bidireccional haciendo que la red sea recuffente. Por otro lado, no existe cone xión directa entre la capa de contexto y las otras capas.
-< (k)
= J<2 ú>:;x/ k ) + 2:w>;ck))
j j
( Ec 20)
---,
o o Salida O ( Y, 0<)
. xk)
Así pues. tal como puede observarse el valor
de las neuronas de salida depende del valor de las neuronas de la capa oculta, mientras que éstas últimas dependen de forma compleja de los valores de las neuronas de entrada y de las de contexto, siendo éstas a su vez dependien
( o ()
( e·:-C,011 e_Xlo :l
\.. ,¿ x(k)
a '
Oculta J
( o o En1ra<la o "
x'..(k)
tes del valor de las propias neuronas de la capa oculta. Esto último pone de manifiesto el carác ter recurrente de la red. El problema por tanto es éwtoconsistente y el valor que toma cada neurona en el equilibrio es precisamente aquel que hace que el conjunto satisfaga la Ecuación
12. Nótese que en realidad estas ecuaciones no son todo lo general posible ya que la función de activación que determina el valor de y¡(k) y de
Figura 3· Red de E/man modificada
Las redes de Elman modificadas son útiles en teorfa de control, debido a que conjugan satis factoriamente los beneficios de las redes de ali mentación hacia adelante y los de las redes recurrentes. Lo que se consigue con ello es disponer de un sistema de menores dimen siones pero con una capacidad computacional similar a la que se obtiene con otras redes (un
52
xNk) es la misma, y que la relación que determi na el valor de xF(k) es lineal.
El hecho de que el número de neuronas nece sarias para igualar las capacidades computa cionales de otras redes sea menor en la red de Elman queda compensado por una manifiesta mayor complejidad en las ecuaciones que de terminan la reglas de aprendizaje. Dichas reglas pueden hallarse procediendo de forma análoga
R ev Ce ni1 0 1nv . ( Méx ) Vo / A . 13-14 En e ro 2000
a la descrita en el apartado anterior pero aten diendo a las peculiaridades especificas que conlleva la topologia de esta red. Así pues, un poco de álgebra más o menos tediosa propor ciona, a las siguientes reglas de actualización. los pesos:
Conexiones con la capa de salida
( Ec 21)
donde:
|
1
( Ec. 22 )
Conexiones con la capa oculta
|
1:
Tal como puede observarse, el sistema de ecuaciones obtenido es complejo y por ello en la práctica deben usarse con cuidado. En térmi nos generales el proceso a seguir para entrenar una red de Elman modificada es el siguiente: partiendo de una elección inicial adecuada de los pesos (que pueden ser valores aleatorios o que por el contrario pueden estar guiados por criterios externos acerca del problema que se quiere resolver) y de un valor inicial aleatorio o nulo de las neuronas de la capa de contexto, se calcula el valor de las (o,,<> mediante la Ec. 21 y Ec. 22. De la misma forma se evalúan las varia ciones de los pesos de la capa oculta y de la capa de contexto. Una vez acabado el ciclo, se actualiza el valor de todos los pesos y se vuelve a iniciar el proceso, que acaba cuando las varia ciones de éstos es menor que un cierto error tolerado o bien cuando se ha realizado el con junto de actualizaciones un número determina do de veces.
3,3 Red neuronal artificial polinomial
donde :
1
(Ec. 2 1)
La historia de las RNA comienza con el trabajo de McCulloch y Pitts (13). planteando algunas ideas para modelar el sistema neuronal. Estos
0: (k) = )'o:(k)w f (¿w,x,,( k )+ _¿ w .<(k))x/k)
.Y n "
( Ec. 24)
Conexiones con la capa de contexto
(Ec ?. ')
donde:
ax, (k) ax, (k)
= a + .....
é!w é!w
(E 26)
R ev Centro lnv (Mex) Vol 4 1.'3 - t Enero 2000
modelos biológicos han cambiado con los nuevos avances reportados en las neurocien cias y la tecnología. Actualmente, se sabe que las conexiones sinápticas no solamente pueden ser modeladas mediante una suma de la pon deración de las entradas (14). Los resultados muestran que algunas neuronas pueden modu lar, potenciar y ponderar la respuesta de otras neuronas (15). Esto significa que el modelo por neurona pudiera considerarse como una relación de multiplicación o potenciación. En la literatura se pueden encontrar algunos modelos que aprovechan estas ideas como: Las Redes Neuronales Polinomiales (RNP). (Polynomial Neural Networks, PNN) (16),Redes Neuronales de Orden Mayor (Higher Order Neural Net works, HONN} (17) y modelos con interco nexiones no lineales. Este tipo de repre sentación no es exclusiva de las RNA y se pueden consultar modelos similares matemáti camente en otras áreas, por ejemplo: el modelo NARMAX (18)(19)(20)(21), Método de grupo para el manejo de datos (Group Method of Data Handling (GMDH)(22}(23) y Aproximaciones Polinomiales (24)(25).
"iJ. 1 : 1 f!;.i ! l fl = - - - - -- .
El modelo de RNAP propuesto puede ser <ll ,,<z..z2,....,zn) =
descrito como: (27)
|
)]'1>,......
..
cj>(z) : <!J(z) = a0 < z11 Z1,....,z,,) + ªi (zl' ;_ ,...., z" )}
{+ai( Z1 ,Z1······zn, )....... + al'( Z1 ,Z2······ Z,,, )
(Ec. 31)
"' ' 2 'f'nun
(Ec. 27)
donde Yx e9l es elestimado de una función,es decir la salida de la red. ifJ(x,y)e 9\ es una función no lineal, x,E X son las entradas, i=1,...,n¡; n,=número de entradas, Yk-/= Y son los valores anteriores de la salida. )= 1,..,n2. n1 número de retardos de la entrada, n2 número de retardos de la salida. X. Y son conjuntos compactos de 9\.
La función no lineal <f>{z) está dada por:
El subíndice p es la potencia máxima de la expresión polinomial y los términos ah:t>z2,.• •.•z... )
son palinomios homogéneos de grado total '· para i== O,...,p. Cada polinomio homogéneo puede ser definido como:
ªo (Z pZ2 , ...,z"··) = Wo
a1(Z1 ' Zi ,...,z-t.. ) = l1\1Z 1 + w1,2Z2 + ··· + w1 "" Z,,,
a2 (Zp Z2, ...,z,,_ ) = Wv Z + w2,2Z1 Z2 + W2_3Z1 Z3 + ····
|
3 2 2
<l> 111ox
[Hz)]: = <l> ( z)
{
<Pmrn
<P(z) <l>ma.'
<l> m1n < <P(z) < <l>11m.
<j>(z) <P mm
a3(Z1 .Z2 ,...,.z;,) = W3,1 Z , + W3 1Z1 Z2 + W DZ1 Z3 +
2 2
WHZ 1Z2 + W:1,sZ1Zi Z,i + w3.6Z1Z1 + ···
+ ...z; + ..z 2 z, + ..z. z2 + .... + w• ., z 3
• l .> -L 3
'-''" J n,,,
( E c. 2 8)
donde <fimax and 4'm1n son los límites máximo y
mlnimo respectivamente.
Para simplificar el manejo de la notación en las ecuaciones se va a hacer un cambio de va· riable de tal forma que:
|
( Ec 29)
donde: nv es el número total de elementos en la descripción z, es decir, el número total de en tradas, valores anteriores y valores anteriores de la salida:
( Ec 30 )
Entonces la función if¡(z)E <t>P pertenece a una familia de polinomios <Pp que pueden ser repre sentados:
5 4
ar (Z1 ,Z2····• zr.) ,.. wp.1 Zi + w,,,2z-' z2 + ...
···+ wp.N,,z"11,,
(Ec . 32)
donde W¡¡ corresponde al peso asociado a cada neurona. El término w0 corresponde al input bias de la red. Este término tiene el mismo significa
do que el coeficiente cero de la transformada de Fourier. es decir, obtiene el promedio de la señal que se quiere estimar. El polinomio ai(z) corres ponde únicamente a la ponderación lineal de las entradas. De aiz) a ap(z) se representan los tér minos de modulación entre las entradas corres pondientes y las relaciones de potenciación.
Como se puede observar los términos utiliza dos a partir de zl permiten al algoritmo resolver el problema de paridad bidimensional que tenía el perceptrón. Esto es análogo al efecto de tener varias capas en una red neuronal tradicional.
El valor N,corresponde al número de términos de cada polinomio homogéneo:
|
N 0 = I , J\11 = n,,N2 = J) .N3 =
|
(f e 33)
Re v . Centro lnv . ( Méx ) V o l 4 , 1 3 - 1 4 Enero WOO
p- 1
La dimensión Ne1> de cada familia ct>P puede ser obtenida de la siguiente forma.
(Ec 35)
donde Yn es la salida deseada , tf>(z¡JE<Pp y n es el número de puntos.
x,,.
(Ec . 341
Oef1n1c1on 4 2
El error óptimo está definido como:
oprerr,,( y' ', cp(z)) = mi nerr,, (i',cp( z))
c>E<l>r
= en;,(y'',cp;( z))
... "·2·...b1·
• ...
donde
|
(Ec Jd
>ct \. n +{ •) y
•2....
X ••
Finura 4. Esq1J0 //1 c;;s de RNAP
3 3 1 Aprendr wie de RNAP
Para introducir el aprendizaje en RNAP es necesario, primero, introducir algunos concep tos que serán utilizados en este artículo.
Oeflnrcsón 4 1
El error de aproximación de RNAP se define como:
R&'I e¡l/fO ,, V (Méx) Vol 4 f J -14 En ro 200'!
Derlnic1on 4 .3
La RNAP ip(z) E </>.aprende uniformemente la salida deseada con precisión ssi
en;,( y" , cp( z ))- err( y' ' ,cp ( z) ) > e - O e > 0
Después de describir estos conceptos ahora el problema del aprendizaje de RNAP consiste en encontrar la estructura de q¡ e <P.(z) que verifica esta desigualdad.
En la siguiente sección se aplica el uso de algoritmo genético para obtener el valor del
arreglo w' . Se presenta un algoritmo que
obtiene 1a rquitectura óptima de la red median te el uso de AG (26). Para lograr esto definase un vector de componentes M(z) utilizando la simplificación de (29):
( Ec . 37)
55
Entonces la función no lineal ipE <l>p{z) descrita en \a Ec. 31 puede ser representada como:
<j) = {W ,M ( z) ) donde W = W. * W/, \f w E{O,1}
( Ec 38 )
dond e W = {w ,w ,.....,w N.. }
=> e .( y' ',q>( z )) = err,,( /' ,(( w'),M (z) ) )
(Ec. 41)
opt en( y" ,cp( z )) = opt n;,( l' .((w·)*,M (z) ))
w · w
1 2
son los pesos de RNAP, Wb es un vector bina rio, y N se obtiene utilizando la Ec. 34.
Definición 4 4
El producto .* se define como:
* rw. 1if wb = 1
(E c . . ,2)
Utilizando la Ec. 37 y Ec. 42, el problema de aprendizaje para una estructura específica puede ser representado por un problema de optimización con los siguientes dos pasos:
min m.in err ( / ,<j>(z))I
|
Por ejemplo , para W y W 0 como:
w. ll'éll 0 \\lb
(Ec. 43)
[w,,
W = W21
W3¡
[w,,
o w.,l
es el error definido en la Ec. 35 para un valor determinado de W0.
Los valores del parámetro W pueden ser obtenidos utilizando el método de mínimos cuadrados (27):
Wl
w • * wbr = w2l
o W23
o
|
1v. = arg m i n en;,( /' ,<l>( z))I
W 3¡
y para el caso vectori a l :
' WéJl'' w,
W lw. = r N :¿" yk( Mb(<:k )) Mb( zk }= M .* W¡;
k=I
rN = ( Mb( zx )M b( z( t)
-1
La Ec. 38 representa que 1fJ solamente tiene tér minos específicos de <!>.que pueden ser selec cionados por W b de tal forma qu.e I structura
f (z) = ((w')*. M( z)) = (w.* ( w:f, M(z))
= ( w, M( z). *(i{r)
(Ec . 40)
o en su forma recurrente
(Er 44)
(El 45)
56 Rev Centro lov (Méx) Vo/,4. 13 ·14 EnMc; 2000
|
|
1n -=-o·
|
ble que no se requieran delodos los elementos de rp(z) y, como se descnbió en la sección ante rior. es posible seleccionar qué elementos se requieren para obtener una arquitectura o estructura óptima.
De esta forma. el problema de aprendizaje puede ser traducido a obtener la óptima estruc tura de RNAP utilizando AG.
3.2 Algoritmos Genet1cos
Algoritmo Genético es un modelo de conoci miento que se encuentra en función de algunos de los mecanismos de evolución que se obser van en la naturaleza. Este modelo de com putación genética puede ser implementado con el uso de arreglos de bits o caracteres que re presentan los cromosomas. Aun cuando existe mucha investigación acerca de cadenas de lon gitud variable y sobre otras estructuras, la mayoría del trabajo con Algoritmos Genéticos está enfocado hacia cadenas de longitud fija; si no es manejado de esta manera,elAlgor itmo de Evolución que se está considerando será Pro gramación Genética, la cual se enfoca hacia cadenas de longitud variable (28,29).
Cuando se implementa el Algoritmo Genético, usualmente sigue el ciclo (30, 31):
• Generación de una población inicial de forma aleatoria.
• Evaluación del más apto o alguna función objetivo de todos los individuos que per tenecen a la población.
• Creación de una nueva población debido a la ejecución de operaciones como recombina ción (crossover) y mutación sobre los indivi duos de donde el más apto o el valor mejorado fue medido.
• Eliminación de la población or iginal e iteración utilizando la nueva población hasta que el cri terio de terminación sea cumplido o se haya llegado a cierto número de generaciones sin haber completado el objetivo planeado.
Rcv , Cl-i!llt o /11v . (M.j ) Vol 4. IJ - 14 Enerr.i 2000
|
Figura 5. Etapas genéncas del Algoritmo
Gen et 1co
El distinto tipo de operaciones que se hacen sobre las cadenas o cromosomas que son manipulados dentro del AG son llamadas opera dores, en este trabajo se utiliza el operador de recombinación sexual, la mutación (32) y otros procesos especiales que son llamados agregar padres (26). Las siguientes secciones describen estos procesos en detalle.
3.3.2.1 Recornblnac16n
El operador de recombinación se caracteriza por la combinación de material genético de los individuos que son seleccionados en función a su buen desempeño (función objetivo) que tuvieron en comparación con el resto de los indi viduos o "padres• que conforman la población. Existen algunas variantes de este operador (33), que puede ser determinado por el número de puntos de recombinación que serán conside rados para la generación de una población, el número de padres involucrado para la genera ción del linaje. etc. Es obvio que si el número de puntos de recombinación se incrementa, el número de individuos que conforman el linaje, será también mayor.
0 0
1 1
0 0
|
_... .:.J...;- 1
_.... t .,_ 1 1
Figuro fi . Operador de recombmact0n en un punto
Para explicar la recombinación mullipunto empleada , considérese que e(fx,n , )E i.8"·'"•
7
es elconjunto de padres de una población dada donde nP es el número de padres de la po blación en la generación g y n.es el número de bits del arreglo (cromosoma), g=1,..,n9 ; y ng es el número total de generaciones.
|
g • 1 es el operador de recom-
binación y puede ser definido como la combi nación entre el conjunto de padres consideran do el número de intervalos n1 de cada individuo y el número de hijos n.por lo que:
la población, la cual es básica para la evolución (34,35).
Figura 7. Operador dB mutación
|
Este operador
M : l"oIY '• r nb ........;. JB"·JJI
|
Para mostrar como es que puede ser aplicado el operador de recombinación, considere que F
cambia con probabilidad Pm la población gene rada por el operador recombinación en la si guiente forma:
9
se forma con np=2 y n1=3. Esto significa que se
divide el arreglo en tres secciones y se denomi na a cada sección como a; y b, respectivamente para i=1,..,n1• Sí:
M (C'J)
= {C;, ® l
C
'J
r P, ,,
r > p
111
(Ec 47)
|
F;; = b, b2 b'J
ª1 ª1 ª3
ª1 ª2 bJ
a, b 'Z 03
c( ,3) = a, b2 b3
b , ª 2 ª.i
donde rE U(O, 1) es una variable aleatoria e,
1 = 1, .. ,ns;J=1 , . . ,nb; y $ es eloperador x-or.
El operador de mutación asegura que la pro babilidad de encontrar cualquier punto en el es pacio de búsqueda nunca sea cero y evita que se alcance un mínimo local.
3.3 2 3 Agregar Padres
|
|
al resultado del
proceso de mutación, entonces la población A9
en la generación g se puede obtener como:
Es importante notar que con este operador los
padres F9 de la población g se incluyen en el resultado de la recombinación.
Cabe hacer notar que A9
(Ec . 48)
tiene los mejores
3.3 2.2 Mulac1ón
En el operador de mutación, sólo se niegan algunos bits que son seleccionados en forma aleatoria por medio de un factor de probabilidad P m; en otras palabras, tan sólo se varían los componentes de algunos genes, es decir, se modifican los alelos. Este operador es extre madamente importante, ya que permite ase gurar que se mantenga la diversidad dentro de
5 8
individuos de A _ 1 ya que se agrega F en este
|
3 3 2.4 Pror so de seleccion
El Proceso de selección Sg calcula la función objetivo Ogque representa una función especifi ca que se quiere minimizar y se seleccionan los
1-<v. C&nlro Jnv 1/1,fox) Vol.4. 13 r4 En,,•ro 2000
mejores individuos nP de Ag tal que:
Entonces:
(Ec; . 49)
1. Para la condición inicial g=O seleccionar en forma aleatoria A0, tal que Ao Elll' _.,,"
2. Calcular F 1= S0(A0)
3. Obtener A9
4. Calcular Sg
5. Regresar al paso 3 hasta que el número máximo de generaciones sea alcanzado o uno de los individuos de Sg obtenga el míni mo valor deseado de Og ·
(E c . 50)
Note que los mejores individuos de la genera ción pueden ser obtenidos por el siguiente ope rador:
(Ec . 51 )
En resumen el Algor itmo Genético puede ser descrito por medio de los siguientes pasos:
El empleo de Algoritmo Genético es especial mente útil cuando se tiene gran cantidad de posibilidades en elespacio de búsqueda y no se posee información acerca de cómo obtener la solución óptima para un problema específico. Para este caso. la aplicación de la teoría es automática si se considera a { como el arre glo buscado. El problema de aprendizaje puede ser trasladado para obtener la estructura óptima de PA NN usando AG.
Los pasos de AG modificados pueden obser varse en la siguiente tabla:
T able 1 . Comparación entre AG tradic1onal y en Ja RNAP
A (,QRIT MO GENLTIC O
1. Para la condición inicial g=O se calcula A0 de forma aleatoria con las siguientes dimensiones:
Ao :n x n
ALGORITMO G'.::NÉT .CO EN RNAP
1. Para la condición inicial g=O se calcula A0 de forma aleatoria con las siguientes dimensiones:
: Jts X n¡,
donde cada renglón de la matriz corresponde a
1 11
2. Se obtiene la función objetivo y se selecciona al mejor individuo para la población inicial
F 1 = S 0 (A °' nP)
3. Se obtiene la nueva población Ag en la gene ración g con el operador recombinación y muta ción
4. Calcular la función objetivo y seleccionar a los mejores individuos de la generación con Sg
una propuesta para wb
2.1. Para calcular F1 primero se debe calcular
S 0 (A 0,np) donde la función objetivo 09 puede ser calculada utilizando el error definido por Ec. 41
de la siguiente forma :
O = err,'.(l.((w (.'M(z))). i= 1,..,ns
3. Se obtiene la nueva población A9 en la gene ración g con el operador recombinación y muta
_c;.ió.a.
4. Calcular S9 con la siguiente función objetivo:
o;= en;,'(/ .((W )Íiv, .M(z.))) .í = l,...11, + n,,
-
5. Regresar al paso 3 hasta que se alcance el
máximo número de generaciones o uno de los individuos de S9 obtengan el minimo valor de seado de Og
5. Regresar al paso 3 hasta que se alcance el máximo número de generaciones o uno de los individuos de Sg obtengan el minirno valor de- seado de 00
Rev. C fJ!lfro lr w . ( Mé ) V l"J I. 4 . 1 1 4 Enero 2000
- -
El error óptimo en la generación g puede ser obtenido por:
err( y,cj> .:: (z:)} = opterr( y,ip( z ) )
(Ec . ti" )
Teorema 4 1
Definiendo
(Ec 52)
( Ec . 53)
Comentario 1
Para casos prácticos el Teorema 4.1 puede escribirse utilizando la definición 4.1 como:
Si Pm>O entonces la RNAP aprende uniforme mente la salida deseada con precisión e en un número finito de generaciones n 9 si:
donde W/ es el mejor individuo en la gene ración g, es decir. la estructura óptima de la RNAP en ese momento, se puede reescribir el
lim P{err( y,cj>
g-r>t 8
(z) - opterr( y,<P( z )) > E)}= O E > O
(Ec 59)
error de aproximación como:
( Ec 54)
<1 MANCHAS SOLARES
Las manchas solares, por razones de contraste con el resto de la superficie solar, aparentan ser regiones oscuras; sin embargo, son completa mente luminosas. Su temperatura es un par de miles de grados más pequeña que la del resto
de la superficie solar. (36)
donde es la salida deseada, <Pg(z) e <!>P es la
representación óptima en la generación g, y
Si Pm>O entonces RNAP aprende uniforme mente la salida deseada de tal forma que:
|
r · •«>
( z.) - opterr( y ,<P( z)) C!: e )}= O, e > O
(Ec 55)
Figura 8. Msncha s s olares
g E <Pp puede ser descrita como:
(Ec 56)
El astrónomo norteamerícano Hale descubrió que las manchas solares contíenen campos magnéticos muy fuertes . Una mancha solar tipí ca tiene campo magnétíco con una fuerza de 2500 gauss. En comparación . el campo mag nético de la Tierra tiene una fuerza de 1 gauss.
Debido al progreso de agregar padres y el de mutación
(Ec . 57)
60
Las partículas cargadas eléctricamente tíenen tendencia a seguir la dirección del campo mag nético, descríbíendo espírales alrededor de las líneas de fuerza generadas por las manchas solares corno se muestra en la estructura de las manchas solares propuesta por Hale.
R6V Cell(f,j /m (M!.J<) Vo/ 4 1')-1A EM ú 2000
111 -o
' 1-i ::. 3... l 5
p -2
(para cada número de valores anteriores.se hace la prueba}. (potencia máxima del poli nomio).
Las pruebas se dividen en dos grupos. el modelado y predicción de la serie de tiempo de manchas solares.
Figura 9 Estructur 1 d '·:tS manchas solar,•s
Un estudio sugirió que el número de manchas varía con un período de aproximadamente once años y medio (1). Desde entonces, el número de manchas solares ha sido registrado cuida dosamente por tos astrónomos,generando así una serie de tiempo con casi trescientos dalos.
Algunos fenómenos ter restres provocados por la variación del número de fas manchas solares son:
• Crecimiento acelerado de los árboles durante los años máximos de manchas.
• Crecimiento lento del trigo durante los años pobres en manchas.
• Dependemos de las capas superiores de la atmósfera para las comunicaciones, las man chas solares varían la ionización de estas capas, por lo que la reflexión angular resulta distorsionada. causando que la comunicación radiada en elmundo falle.
• Las manchas hacen que algunas partículas energéticas alcancen la tierra, causando las auroras boreales.
5 RESULTADOS
::J: ed Neuronal Arttfictal Poltnori al.
La serie de tiempo de manchas solares fue introducida a RNAP para generar el modelo matemático.
Los parámetros con los cuales se llevaron a cabo las pruebas son:
(no se tienen entradas).
P ev C 1Jnlri 1" (Méx) Vn/ J J, 14 i:nero 2000
Los primeros 250 datos son usados para entrenar la red, mientras que los últimos 30 ayu dan a evaluarla. En las gráficas presentadas, las cruces señalan los valores reates, mientras que los trazos indican la aproximación obtenida a la serie durante el aprendizaje y la predicción de la red.
La Tabla 2 presenta el número de valores anteriores empleados para cada una de las predicciones y su respectivo error, tanto de prueba como de entrenamiento.
Figur a 10· Entrenam1t>nt o r; o 1 14 valores
(1flfr11 rr Lt ror de e111rer am1en o o 0024
61
Figura 11 Pweba cor 14 valores antenores. F-rror de prueba O 0085
El algoritmo de PANN demostró tener gran capacidad para modelar series de tiempo.
Se pudo observar que tanto el error de entre namiento como el de prueba son pequeños, por lo que se les puede considerar como acepta bles En las pruebas realizadas . se observa que cuando se utilizaron 14 valores anteriores, se obtuvo el menor error. Es importante mencionar que la serie de tiempo fue introducida a la red neuronal polinomial artificial y ésta se encargó de modelar su comportamiento. Se ha observa do que cuando se aplica un preprocesamiento a la entrada por medio de filtros multiresolución, el error disminuye considerablemente.
5.2 Perceptron Mulhcapa.
A la hora de entrenar un perceptrón multicapa, surgen una serie de preguntas, como, por ejem plo. cuáldebe ser la topología de la red: cuántas capas se ponen, cuántas neuronas debe tener cada capa, qué valores deben tomar los pará metros de entrenamiento, h y a? Lo cierto es que no existe respuesta a estas dudas más que las pruebas sistemáticas o la codificación de esta información no definida en algún tipo de algoritmo de optimización (como por ejemplo los algoritmos genéticos). Se optará en este caso por una exploración sistemática desde 3 hasta 14 neuronas de entrada y, en la capa oculta,
hiperbólica que será nuestra función de acti vación . Como conjunto de pruebas, se tomarán la predicción de la serie para los últimos 30 años. Se evaluarán los resultados a partir del cómputo del error cuadrático medio. Durante el entrenamiento, los patrones deben presentarse cambiando el orden a cada ciclo de entre namiento (este ciclo se conoce también como epoch o iteración) para evitar que la capacidad de generalización de la red quede sesgada. Además , se debe tener en cuenta que la super ficie de error que se intenta minimizar tiene una gran cantidad de mínimos locales donde las téc nicas de gradiente inverso que se utilizan pueden quedar atrapadas. Por ello el valor final de los pesos al terminar el entrenamiento dependerá del valor inicial aleatorio que tomen éstos, así como del orden en que se presenten los diferentes elementos del conjunto de entre namiento. Por este motivo. para cada topología se entrenarán 20 redes para quedarse con la mejor, esto es la que presente un menor error de prueba.
Los resultados se leen en la tabla adjunta :
|
desde 3 hasta 3 veces el número de neuronas de entrada . Se tomarán como parámetros de
entrenamiento h = 0.01 y a = 0.1 que son valo
14 23
0.003766 0.012589
res usuales. Se prepararán los elementos de la sene para crear los pares (entrada I salida) que constituirán los conjuntos de entrenamiento y de prueba. Oe entrada se esclarecerá la serie de tal manera que tome valores entre 0.9 y 0.9, para aprovechar de manera óptima el rango de valores que toma la imagen de la tangente
62
Según estos datos la mejor red corresponde a 11 neuronas de entrada y 9 en la capa oculta. En las figuras siguientes se puede observar los resultados obtenidos para esta red.
Rev Centro lnv (M..:) Vol 4. 13 14 Enero 2000
01]1 -----,.---.
0J)6
o os
!5 0.04 \
tados comparables con un número menor de neuronas. De nuevo se entrenarán 20 redes ini cializadas con pesos aleatorios y se tomará la
Jí o0.o023 -- \.._...
0.01
_
... -...-------·................ .................. ................-
mejor, según el criterio definido en el apartado
anterior. Como valores de los parámetros de entrenamiento se toman h=O 01 y g, el término
100
rime
1 $0 !00
de momento, renombrándolo para no confundir con el parámetro a de memoria de la capa de
Figura 12 : Evo l ución (te! e 1 ror de prueba (l inea com 111 !.1 a) y r le e 11trena 1ntento
(línea discontmw'I). Error d" entrenamíento en la red percentrón m111ticapa
<i mr
Figura 7 3· Comparéw:un los datos reales (cruces) con los de entrena1 ren
(linea continua) Comparac1CJn de los r atos reél/es con los obtenidos por el perceptrón multicapa en el entreoam 1e11to .
-- - --,.- --. -- -
} :: i\ + J
º"' t I \ t 1
contexto. 0.09. Para a se usa el valor 0.5. Estos valores se escogen por ser usuales.
los resultados se leen en la tabla adjunta.
Tab l a 4 . T ab l a de resu lt ados para l a red de E/man modificada Lo.s valores ele los parametros de la rea son 1¡=0 01 y y=O 09.
Neuronas ¡ de la Capa de Entrada |
Neuronas de la Capé Oculta |
Error de Entrena- miento |
Error dE Prueba |
1 |
11 |
0.008201 |
0.009513 |
2 |
11 |
0.014714 |
0.010992 |
3 |
7 |
0.005972 |
0.008425 |
4 |
11 |
0.010037 |
Seguidamente presentamos las gráficas de error y resultados para la mejor red.
! º !l.2J 6
º º·:_ V . t J .J
º \.....
' --
·--- '--·....
|
o s ¡o ) s lo ¡ 30
(Jn l C
,,,,.,._--=--""
j(I 100 1 $0
U n \C'
200
Figure 14 Compatar io n dt: los datos reales ( cruces) con los de pweba (1111P< e ontm11a) CompRrac10n de los da os re.:iles con los pred1ct10s por el ¡Jf:rCt;ptrón 1nult1capa
5.3 Redes de Etrnan modificadas
Para las redes de Elman modificadas y ante dudas parecidas a las que se plantean con el perceptrón multicapa, realizamos una explo ración sistemática del número de neuronas de entrada y de la capa oculta. Tomamos valores entre 1 y 4 para el número de neuronas de entrada y entre 3 y 11 para el número de neu ronas de la capa oculta. Estos números son claramente inferiores a los escogidos para el perceptrón multicapa para ilustrar cómo la red de Elman modificada es capaz de obtener resul-
i ev. C:enlrr;: lnv (Méx) \lo/ 4, 13 •l·1 Erri;ro 2000
Figura 15: Evol11c1ón del erro r de prueba ( línea cuntmua) y de emrenam1ento
(linea discontmua) En·or de entrenarruento e n f & red de E/man .
F 1gura16: Comparac 1on de ros datos reafPs
(cmces) con los de eotrenam1ent
{/[nea continua) Comparac1on de tos datos reales con los obtenidos por 1 • , ..,Cf de Efma1 , en el entr-snamic,nr o
63
|
6 CONCLUSIONES
A juzgar por los resultados obtenidos con los tres tipos de redes neuronales analizadas en este artículo llegamos a las siguientes conclu siones referentes al rendimiento de cada red. En principio y a partir de los datos analizados.
parece ser que el Perceptrón multicapa requiere de un mayor número total de neuronas (11 de entrada y 9 en la capa oculta) que la red neu ronal polinomial (14 valores anteriores) y que la red de Elman (3 en la capa de entrada y 7 en las capas ocultas y de contexto) para obtener los mejores resultados en el error de prueba. Por contrapartida. el Perceptrón multicapa es la red más simple de las tres, con lo que el aumento en el número de neuronas queda compensado por el menor costo computacional requerido. Asimismo los errores más bajos obtenidos con cada tipo de red son comparables, con lo que aparentemente las tres redes resuelven de forma similar el problema planteado.
Estos resultados sin embargo no pueden generalizarse fácilmente a otros problemas como los que se obtienen cambiando la serie de manchas solares por otra gobernada por una dinámica diferente. De la misma forma, es difícil
extrapolar las conclusiones referentes al número de neuronas óptimo en cada red a pro blemas en los que las redes deban ser mucho mayores, máxime teniendo en cuenta que los parámetros especificas de cada red (a, h, ...) se
han fijado a valores razonables en lugar de
realizar una amplia exploración en su espacio de valores.
64
7 REFERENCIAS BIBLIOGRAFICAS
(1) G.F.Franklin, J.D.Powell, M.Workman, Digi tal control of dynam1c systems - 3rd Ed.. Addi son-Wesley, 1998.
(2) L.Ljung, System 1dentíficatíon, Prentice-Hall, 1987.
(3) J.A.Freeman. D.M.Skapura. Redes Neu ronales. Addison-Wesley/Oíaz de San1os, 1993.
(4) Elisabet Golobardes, Eduard Pous i Manuel Román. lntroduccíó a les xarxes neuronals, pre sentacíó de les Backpropagation, INPUT 10 17- 26, 1996.
(5) K.S.Narendra, K. Parthasaranthy, ldentifíca tion and control of dynamic systems using neu ral networks, IEEE Trans. on Neural Networks. 1, 4-27, 1990.
(6) O.T.Pham, X.Liu, Neural Networks tor identi fícatíon, predictíon and control, Springer-Verlag, 1995.
(7) Hornik K.. Stinchcombe M. & White H.. Multi layer Feedforward Networks Are Universal Approximators, Neural Networks, 1989.
(8) Rosenblatt, Frank., The Perceptron: A proba bilistic model for information storage and organi zation in the brain, Psychological Review, 65, 386-408, 1958.
(9) G.E.P.Box. G.M.Jenkins Time series analy sis. Holden-Oay, 1976.
(10) R.Lewandowskí, La prévision a court terme.
Dunod, 1985.
(11) O.E.Rumelhart, J.L.M.McClelland and the POP research group, Para/le/ Dístributed Pro cessing. MIT Press, 1986.
(12) J.L.Elman Finding structure in time, Cogni tive Science 14, 179-211, 1990.
(13) McCulloch, Warren S. & Pitts, Walter. A log ical calculus of ideas immanent in nervous activ ity. Bulletin of Mathematical Biophysics 5:115- 133, 1943.
(14) MacGregor, R. J., Neural and Brain Model
ing. Academic Press, San Diego, Ca, 1987.
(15) Homik K.,Stinchcombe M. & White H.. Mul tilayer Feedforward Networks Are Universal Approximators. Neural Networks. 1989.
(16) Park, D.C. et al., "Electric Load Forecasting Using an Artificial Neural Network", IEEE Trans. Power Systems, Vol. 6, núm. 2, pp. 442-449, 1991.
(17) Chang C , Lin J.; & Cheung J., Polynomial and Standard Higher Order Neural Network. IEEE lntemational Co nference on Neural Net works. p. 989-94 vol.2. San Francisco, CA, USA, 28 Marzo-1Abril, 1993.
(18) Chen S. & Billings S., Representations of nonlinear systems: the NARMAX model, lnt. J. Control, vol. 49, núm. 3, 1989.
(19) Alippi C. & Piuri V., Experimental Neural Networks for Prediction and ldentification. IEEE Transactions on lnstrumentatíon and measure ment, vol. 45, núm. 2 Abril, 1996.
Rev C entro /n v. (Méx l V o l .4 1 3 . 14 Enero '¡urJO
.- -. • • · -- ---y--w- ,
• - --·J - -- _ 111."l lc'll f O
(20) Leontaritis Y. & Billings S., lnput-output parametric models for nonlinear systems, lnt. J. Control, vol. 41, núm. 2, 1985.
(21) Chen S. & Billings A., Recursive Prediction error parameter estimator for nonlínear models, lnt. J. Control. vol. 49, núm. 2, 1989.
(22) lvakhnenko A., Polynomíal Theory of Com plex systems, IEEE Transactíons on systems, Man and Cybemetics, vol. SMC-1, núm. 4 Octubre, 1971
(23) Ouffy J. & Franklin M.,A Learning ldentífica tíon Algorithm and lts Application to an Environ mental System. IEEE Transactions on Systems. Man and Cybemetics, vol. SMC-5, núm. 2, marzo, 1975.
(24) Shin Y. & Gosh J., Approximation of Multi vanate Functíons Using Ridge Polynomial Net works, IJCNN'92. p. 380-5 , Baltirnore, MD,USA, 7-11 Junio, 1992
(25) Shin Y. , Modified Bernestein Polynomials and Theír Connectionist lnterpretation, ICNN, p. 1433-8, vol. 3, Orlando , Florida, USA, 27 Junio- 2 Julio, 1994.
(26) E. Gómez-Ramír z. · Poznyak . A. González Yunes & M. Avila-Alvarez. Adaptive Architecture of Polynomial Artificial Neural Net work to Forecast Nonlinear Time Series. CEC99 Specíal Session on Time Series Prediction. Mayflower Hotel, Washington D.C., USA, Julio 6-9, 1999.
Rev Centro lnv (M éx) Vol.4, 13 -14 Enero '2000
(27) Gómez Ramírez E. & Poznyak A. How to Select a Number of Nodes in Artificial Neural Networks. Neural Networks App/ied to Control and lmage Processing. NNACIP'94, CINVES TAV IPN, Noviembre 7-11, México, D.F., 1994.
(28) Altenberg L., The Evolulíon of Evolvability in Genetic Programming, 1994, MIT Press.
(29) Andre D., Automatically Defined Features: The Símultaneous Evolution of 2-Dimensíona l Feature Oetectors and an Algorithm for Usíng Them, 1994, MIT Press, Kenneth E..
(30) Alander J. T., An lndexed Bibliography of Genetic Algorithms: Years 1957-1993, 1994,Art of CAD lid.
(31) Bedner l., Genetic Algorithms and Genetíc Programming at Standíord 1997. 1997,Stanford Bookstore.
(32) Andre D. and Koza J.,Advances in Genetic Programrning 2, 1996, MIT Press.
(33) Andrews M. & Prager R.. Advances in Genetic Prograrnmíng, 1994, MIT Press.
(34) Altenberg L., Genome growth and the evo lution of the genotype-phenotype map, 1995. Springer-Verlag, Berlín,Alemania.
(35) Banzhaf W., Nordin P. Keller R. & Francone F., Genetic Programming - An lntroduction On the Automatíc Evolution of Computer Programs and its Applicatíons , 1997, Morgan Kaufmann, dpunkt.verlag.
(36) George Gamow, «Una estrella llamada Sol» Ed. Espasa-Calpe, 1967.