Vous êtes sur la page 1sur 7

IMPLEMENTAO DE REDES NEURAIS ARTIFICIAIS UTILIZANDO A LINGUAGEM DE PROGRAMAO JAVA

Jos R. Campos1, Anna D. P. Lotufo1, Carlos R. Minussi1, Mara L. M. Lopes1


1

UNESP, Ilha Solteira, Brasil, jrcampos82@gmail.com, annadiva@dee.feis.unesp.br, minussi@dee.feis.unesp.br, mara@mat.feis.unesp.br

Abstract: This work develops a feedforward neural network by backpropagation algorithm emphasizing the JAVA language. To illustrate the proposed methodology is used an example with data from a Multi Machine Electrical Power System Transient Stability Analysis aiming to provide an efficient diagnosis. Keywords: JAVA, Object Oriented Programming, Artificial Neural Networks. 1. INTRODUO As Redes Neurais Artificiais (RNA) so concepes em hardware e / ou software que exibem capacidade de aprender com a experincia. Para se conseguir os resultados desejados, ou seja, que a rede apresente condies de efetuar diagnsticos complexos como caso do reconhecimento de padro, previso, etc, tais redes devero apresentar configuraes formadas por vrias unidades de "neurnios", dispostas em fileiras, compondo um arranjo complexo de interligaes [1]. As interligaes so formadas por pesos (sinapses) que devem ser ajustados em funo de um conjunto de padres que produzam sadas desejadas. Esta atividade definida como sendo Treinamento ou Aprendizado, sendo elaborado em off-line. Uma vez ajustada a rede dever ser capaz de emitir, para padres no constantes no conjunto de treinamento, um diagnstico com preciso satisfatria. Este diagnstico pode ser efetuado sem custo computacional. Isto, a princpio, pode ser visto como uma possibilidade de viabilizao da anlise em tempo real. A maioria das redes neurais feedforward supervisionadas encontradas na literatura treinada utilizando o algoritmo retropropagao (backpropagation) [2], [3], o qual considerado um benchmark em termos de preciso. O objetivo deste artigo desenvolver uma programao orientada a objeto, especificamente a linguagem JAVA, envolvendo a rede neural artificial feedforward com algoritmo retropropagao. A Programao Orientada a Objeto (OOP Object Oriented Programming) pressupe uma organizao de software em termos de coleo de objetos discretos incorporando estrutura e comportamento prprios. Deste modo, essa organizao se difere fundamentalmente das estruturas dos softwares tradicionais [4]. O desenvolvimento de softwares se tornou cada vez mais complexo durante os anos, e assim, foram surgindo grandes necessidades para resoluo de problemas cada vez mais

complexos que no poderiam ser solucionados com antigas tcnicas de programao, neste artigo sero abordados os principais conceitos da OOP como, classes, polimorfismo, encapsulamento, abstrao e herana, aplicando-a no sistema neural retropropagao. A linguagem de programao JAVA foi desenvolvida pela Sun Microsystems para automao no desenvolvimento de uma rede neural. A escolha dessa linguagem se deve ao fato dela proporcionar uma extensa reduo na complexidade no desenvolvimento de software e aumentar a produtividade. A anlise, projeto e programao orientada a objetos so as respostas para o aumento da complexidade dos ambientes computacionais que se caracterizam por sistemas heterogneos, distribudos em redes, em camadas e baseados em interfaces grficas. A OOP fundamenta-se na modelagem e design do cdigo-fonte em unidades funcionais independentes, reduzindo a complexidade do problema e viabilizando o desenvolvimento. Alm disso, foram desenvolvidos mdulos para os modelos estabelecidos para a simulao/soluo do problema real e no de acordo com a lgica de programao de computadores [5]. Portanto, a superioridade dessa metodologia consiste no design do cdigo-fonte abstraindo-se os modelos fsicos de acordo com o pensamento humano (classes, hierarquias e polimorfismo). No caso de um software de modelagem de um sistema eltrico, as barras, circuitos, impedncias mtuas, faltas, etc. podem ser modelados segundo as especificaes dos prprios componentes, ao contrrio da mera modelagem matemtica atravs de matrizes, que so comuns em softwares legados. A engenharia de software, por sua vez, consiste na gesto das prticas utilizadas no desenvolvimento de um aplicativo: especificaes, projetos, controle de qualidade do cdigo-fonte, organizao, testes, etc. [5]. Assim, o artigo mostra uma aplicao simples de diagnstico de dados efetuados para analise de estabilidade de um sistema eltrico de 3 mquinas [6]. 2. REDES NEURAIS ARTIFICIAIS 2.1. Estrutura da Rede Neural Uma rede neural artificial, [1], [7], [8] corresponde a um conjunto de neurnios artificiais separados em camadas (entrada, intermediria e sada).

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

391

Implementao De Redes Neurais Artificiais Utilizando A Linguagem De Programao Java Jos R. Campos, Anna D. P. Lotufo, Carlos R. Minussi, Mara L. M. Lopes

O processamento de um neurnio artificial resume-se em [9]: 1. Um conjunto de entradas (sinais) X, x1, x2, ..., xn, so apresentados rede; 2. Cada sinal ponderado por um peso associado V, w1, w2, ..., wn, que indica sua influncia na sada da unidade; 3. As entradas ponderadas so aplicadas ao bloco somatrio, , onde se adiciona tambm uma entrada independente, x0 = 1, denominada bias; 4. A sada intermediria do neurnio , ento, dada por [3]:
si =

sendo: i (h) h i (h) Vi

Vi (h + 1) = Vi (h) i (h)

(3)

= = = =

[i (h)]; taxa de treinamento; ndice da iterao; gradiente do erro quadrtico com relao aos pesos do neurnio i avaliado em h; = vetor contendo os pesos do neurnio i = [ w0i w1i w2i . . . wni ]T.

wi j x j
j

(1)

5. A sada , ento, convertida em no-linearidade atravs das funes de ativao (rel ou sigmide). 2.1. Treinamento da Rede Neural A rede neural possui a capacidade de aprender, para tanto, ela deve ser treinada, ajustando assim os seus pesos. Para tal, necessita-se de algoritmo de treinamento, neste caso, utiliza-se o algoritmo retropropagao. O algoritmo retropropagao um procedimento sistemtico de adaptao de pesos de redes neurais, baseado no mtodo do gradiente descendente, que consiste em adaptar os pesos de tal forma, que o erro quadrtico da rede seja minimizado. realizado da seguinte forma [3], [9]: 1. Apresentao de um padro X rede, o qual fornece uma sada Y; 2. Clculo do erro (diferena entre o valor desejado e a sada) para cada sada; 3. Determinao do erro retropropagado pela rede associado derivada parcial do erro quadrtico; 4. Ajuste dos pesos de cada elemento; 5. Por fim, um novo padro apresentado rede e o processo repetido at que ocorra a convergncia, ou seja, (erro < tolerncia preestabelecida) ou o nmero de iteraes corresponda a um valor mximo previamente estabelecido O algoritmo retropropagao consiste na adaptao de pesos, tal que, o erro quadrtico da rede minimizado. A soma do erro quadrtico instantneo de cada neurnio alocado na ltima camada dada por [3]:

O parmetro serve como controle de estabilidade do processo iterativo. Na Equao (3), a direo adotada para minimizar a funo objetivo do erro quadrtico corresponde direo contrria ao gradiente. O gradiente i (h) pode ser expresso por [3], [7]:
i ( h) = i i2 = 2 i Vi (h) Vi (h)

(4)

A funo de ativao utilizada na aplicao abordada (neste caso, analise de estabilidade cuja varivel analisada margem de segurana do sistema) a funo sigmide definida por [3], [7], [9]:
yi = 1 + e( si ) 1

(5)

sendo: = constante que determina a inclinao da curva yi Diferenciando a Equao (2) com relao ao vetor Vi, obtm-se:
yi yi si i = = Vi Vi si Vi

(6)

Da Equao (6), resulta-se:


i si = sgm' ( si ) Vi Vi

(7)

em que:
sgm' ( si ) =

2 = i2
i =1

ns

(2)

yi = yi ( 1 yi ) , derivada parcial de yi si com relao a si.


si = Xi Vi

Observa-se que:

sendo: i = d i - yi ; di = sada desejada do i-simo elemento da ltima camada da rede; y i = sada do i-simo elemento da ltima camada da rede; ns = nmero de neurnios da ltima camada da rede. Considerando-se o neurnio de ndice i da rede, e utilizando-se o mtodo do gradiente descendente [3], [9], o ajuste de pesos pode ser formulado como:

(8)

sendo: Xi vetor padro; = [ x 0 i x1i x 2 i K x n i ] T.

Substituindo a Equao (8) na Equao (7), tem-se:


i = sgm' ( s i ) X i Vi

(9)

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

392

Inserindo-se a Equao (9) na Equao (4), resulta em:


i (h) = 2 i sgm' ( s i ) X i

(10)

Utilizando (10) estimado no mtodo do gradiente descendente, obtm-se o seguinte algoritmo [3], [7]:
Vi (h + 1) = Vi (h) + 2 i ( yi ( 1 yi ) ) X i

(11)

Os pesos iniciais so normalmente adotados como nmeros randmicos, visto que a iniciao nula quase sempre proporciona baixa convergncia [3]. Uma formulao bastante interessante o algoritmo retropropagao com momento que faz com que o algoritmo se torne mais rpido. O processo de aprendizagem exige com que a mudana nos pesos seja proporcional a i / Vi . O gradiente descendente requer que uma infinidade de passos sejam tomados. Considera-se, por exemplo, uma taxa de treinamento grande o possvel para que haja oscilao sem direo. Assim, um meio de evitar a oscilao para grande, tomar uma variao no peso dependente da variao do peso passado acrescentando o termo momento. Este procedimento se constitui no algoritmo retropropagao com momento [11]. A adaptao dos pesos, neste caso, pode ser formulada da seguinte forma [3]: sendo: vij (h) = = vij vij (h+1) = vij (h) + vij (h) (12)

Nesta seo sero abordados os principais conceitos que permeiam o uso das tcnicas de OOP utilizando a linguagem de programao JAVA. Um dos grandes diferenciais desta tcnica em relao a outros paradigmas de programao o conceito de herana, mecanismo no qual permite a extenso de definies j existentes. importante enfatizar tambm juntamente com o conceito de herana a importncia do polimorfismo, que a capacidade de invocar mtodos que tem a mesma identificao (assinaturas), porm comportamentos distintos [12]. Para considerar-se um sistema OOP, necessrio levar em conta pelo menos 4 caractersticas: Classificao; Herana; Polimorfismo; Encapsulamento.

3.1. Classe A definio de classes e seus inter-relacionamentos so conhecidos como o gabarito para a definio de seus objetos, apresentando-se quais propriedades, atributos o objeto ter. Classe, no descreve somente os atributos, mas tambm o comportamento dos objetos, ou seja, quais funcionalidades podero ser aplicadas aos objetos, essas funcionalidades so descritas atravs de mtodos. Um mtodo nada mais que o anlogo a uma funo ou procedimento, diferindo-se somente que ele manipula os atributos da classe e variveis locais definidos [13]. Um exemplo de classe utilizando a linguagem JAVA descrito na Figura 1.

= =

2 (1 - ) j xi + vij (h-1); (13) peso correspondente interligao entre o isimo e j-simo neurnio; taxa de treinamento; constante momento (0 < 1).

Se o elemento j encontrar-se na ltima camada ento:

j = j j (14) em que: j = derivada da funo sigmide com relao a sj.


se: Se o elemento j encontrar-se nas demais camadas tem-

Figura 1. Exemplo de classe.

j = j

k R ( j)

w j k k

(15)

sendo: R(j) = conjunto dos ndices dos elementos que se encontram na fileira seguinte fileira do elemento j e que esto interligados ao elemento j. 3. ORIENTAO A OBJETO A orientao a objeto (OOP) no tem a inteno de substituir a programao estrutural tradicional, desta forma ela uma evoluo das tcnicas que vem sendo muito empregadas nos ltimos tempos, porm no formalizadas, como visibilidade, escopo e utilizao de variveis locais [12].

A Figura 1 apresenta uma classe MLP (Multi Layer Perceptron) que compe o pequeno projeto de redes neurais artificiais cujo algoritmo de treinamento utilizado o algoritmo retropropagao. 3.2. Objeto No contexto de OOP, um objeto uma entidade capaz de guardar estados (informaes) e de realizar operaes (comportamento) que podem se utilizar dos estados, bem como modific-los, um objeto tambm conhecido como instncia quando pertencer a uma classe. As declaraes de um objeto so denominadas mtodos e suas informaes atributos [13]. 3.3. Herana O conceito de herana organiza as classes para reuso, isto , faz-se o uso da herana para resolver o problema de

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

393

Implementao De Redes Neurais Artificiais Utilizando A Linguagem De Programao Java Jos R. Campos, Anna D. P. Lotufo, Carlos R. Minussi, Mara L. M. Lopes

classes que compartilham caractersticas iguais. Tomando como exemplo a classe Neurnio, Neurnio Intermedirio, Neurnio de Sada, ambos so variaes da classe Neurnio, ou seja, todos eles tm caractersticas iguais, porm comportamentos diferentes ao longo do programa. Neurnio, seja de entrada, intermedirio ou de sada, pode conter pesos, dados de entradas, dados de sadas, porm o clculo do erro para cada um se difere [13].

especfico, h alguns passos necessrios para a o sucesso do aprendizado da rede. So eles: 4.1.1. Coleta dos dados e configurao Os dois primeiros passos para o desenvolvimento da rede a abstrao dos dados relativos ao problema e a sua separao em conjuntos, treinamento e diagnstico. Esta tarefa requer uma minuciosa anlise para que no haja problemas como ambigidade e erros nos dados. Alm disso, os dados devem ser significativos e cobrir amplamente o problema em questo. Normalmente os dados coletados so separados em duas categorias, dados de treinamento que sero utilizados para o treinamento da rede e diagnstico, que sero utilizados para verificao da performance (desempenho) sob condies reais de utilizao. 4.1.2. Configurao da rede O terceiro passo quem denomina o comportamento da rede conforme os padres de entrada e diagnsticos apresentados no passo um e dois. Determinao dos parmetros da rede como: a) b) c) d) e) Taxa de Treinamento - ; Inclinao da funo de ativao - ; Bias; Taxa do momento - ; Escolha da funo de ativao.

Figura 2. Exemplo de classe com herana.

A Figura 2 ilustra um exemplo de classe utilizando herana, em Java pode-se observar o uso da palavra extends, isto indica que a classe Neurnio Intermedirio herda as caractersticas da classe Neurnio, deste modo, notrio o reuso da classe poupando assim a sobrecarga de cdigos repetitivos. Herana a principal caracterstica de um sistema OOP. Como citado em [14], um sistema que no faz o uso de herana no considerado um sistema totalmente OOP. Desta forma, a principal vantagem da herana evitar a duplicidade, podendo unicamente herdar caractersticas de uma classe-pai e especializar mtodos e atributos. 3.4. Polimorfismo A caracterstica de polimorfismo a capacidade de modificar e interagir com os objetos sem a necessidade do conhecimento prvio de sua classe, atravs de comportamento dinmico [15]. Em outras palavras, esses comportamentos podem possuir mtodos homnimos, porm com resultados distintos e comportamentos distintos. Assim o polimorfismo, junto com o encapsulamento, que ser abordado a seguir, proporciona um cdigo mais inteligvel e aumenta o nvel da dinmica proposta pela OOP [15]. 3.5. Encapsulamento Segundo Jacobson [15], a capacidade de definir restrio a visibilidade, de acesso e modificao dos atributos e mtodos, assim possvel encapsular mtodos e atributos para que exista uniformidade de acesso durante e depois do acesso, sem que haja a necessidade da modificao dos objetos dependentes de tais operaes. 4. APLICAO DA REDE NEURAL EM JAVA 4.1. Desenvolvimento da Aplicao Para este trabalho foi desenvolvido na linguagem JAVA uma interface grfica para que o usurio entre com as configuraes e os dados de entrada por um arquivo

Estes passos tem um grande impacto na performance (desempenho) da rede neural, pois, uma boa escolha desses parmetros a rede ter grande sucesso em sua convergncia, embora a definio dessas configuraes seja de forma emprica. 4.2. Integrao Finalmente, com a rede j configurada e treinada, ela j pode ser introduzida no ambiente da aplicao na qual ela foi projetada. Para maior facilidade da operao, foi desenvolvido uma interface grfica para os passos um, dois e trs visando um grande aumento de produtividade e minimizando a complexidade da integrao. 4.3. Idealizao da Rede Neural O sistema desenvolvido traz consigo uma interface bem intuitiva para o usurio, pois ela permite a configurao da rede de forma rpida e bem customizada em trs etapas. Na primeira, apresentado ao usurio um sistema de procura de arquivo em que se encontram os dados inerentes ao treinamento em questo. Neste arquivo, constam os padres de entradas e sadas. O prximo passo requer a configurao das camadas da rede. O sistema automaticamente arbitra os melhores dados de acordo com os dados fornecidos na primeira etapa, porm, tambm possvel a seleo do nmero de neurnios em cada camada atravs do boto Customizar. Nesta fase, ento apresentado um preview do arquivo na janela do programa, conforme visto na Figura 5.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

394

Na terceira e ltima etapa, o usurio entrar com os dados referentes ao treinamento, tais como: taxa de treinamento, erro mnimo tolervel, quantidade de pocas, valor do bias, inclinao da funo de ativao, momento, tipo de funo de ativao e as configuraes iniciais dos pesos. Nestas duas ltimas, o sistema permite ao usurio selecionar atravs de caixa de seleo outros comportamentos a seguir: a) Seleo do tipo da funo de ativao: Sigmide Logstica, Tangente Hiperblica, Rel, etc. mostrada na Figura 3;

Aps ter concludo as trs etapas, inicia-se o treinamento clicando no boto Iniciar o processo de treinamento. Caso a rede tenha convergido, apresentado um grfico (Figura 6) contendo a mdia do erro quadrtico da rede, e ao mesmo tempo, sugere-se ao usurio diagnosticar a rede para a conferncia do treinamento, o grfico do diagnstico ilustrado na Figura 7. 4.4. Aplicao na anlise de sensibilidade Neste artigo considera-se um exemplo para aplicao na Anlise de Estabilidade Transitria de um Sistema de Energia Eltrica composto por 3 mquinas sncronas, 7 linhas de transmisso e 9 barras [16]. Na anlise de estabilidade transitria adotado o modelo clssico [6] e ela corresponde obteno da margem de segurana para contingncias de curto-circuito com sada de linha de transmisso sob defeito. O objetivo do trabalho evidenciar a aplicabilidade e simplicidade da rede neural feedforward com algoritmo retropropagao atravs da linguagem de programao JAVA. Neste artigo ser mostrada a aplicao da rede neural para o diagnstico da margem de segurana para o sistema de 3 mquinas [6].
Tabela 1. Parmetros utilizados na rede neural. Item Nmero de vetores padres Nmero de camadas Nmero de neurnios por camadas Tolerncia Taxa de treinamento - Momento - Inclinao da funo sigmide - Sistema Anderson & Fouad 40 3 5-10-1 0,0001 0,3 0,8 0,3

Figura 3. Escolha da funo de ativao.

b) Seleo do tipo de sementes iniciais para os pesos: Pesos com valor entre -1 e 1, com valores entre 0 e 1 ou pesos aleatrios como ilustra a Figura 4.

Na Tabela 1 so apresentados os parmetros que foram utilizados no treinamento e diagnostico da rede neural.

Figura 4. Escolha dos pesos.

Figura 5. Interface da rede neural na linguagem JAVA.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

395

Implementao De Redes Neurais Artificiais Utilizando A Linguagem De Programao Java Jos R. Campos, Anna D. P. Lotufo, Carlos R. Minussi, Mara L. M. Lopes

A Figura 5 mostra a interface do programa JAVA para a rede neural feedforward com algoritmo retropropagao. Pode-se observar que a interface proporciona ao usurio a disponibilizao de todos os parmetros que so utilizados no processamento da rede neural. Nota-se tambm, que os dados de entrada da rede neural utilizados na aplicao tanto para o treinamento quanto para o diagnostico da rede neural, que neste caso analise de sensibilidade, so indexados ao processo como um arquivo de dados. A interface proporciona ao mesmo tempo uma conexo da entrada de dados, que sero utilizados na rede neural, e da sada de dados que fornecem os resultados pertinentes a cada aplicao. A sada do nmero de iteraes obtida pela rede neural e o tempo de processamento esto indicados na parte inferior da interface. Durante o processamento do treinamento da rede neural criada uma interface grfica aps a convergncia da rede como mostra a Figura 6. Esta interface representa a evoluo do erro obtido no treinamento da rede neural at a convergncia.

Tabela 2. Resultados reais e obtidos pela rede neural. Sada Real 0.510 0.420 0.225 0.225 0.585 0.665 0.470 0.310 0.415 0.270 Sada Obtida 0.519 0.434 0.221 0.220 0.598 0.675 0.478 0.321 0.421 0.262 Sada Real 0.345 0.355 0.155 0.155 0.445 0.575 0.370 0.240 0.330 0.195 Sada Obtida 0.349 0.353 0.139 0.131 0.431 0.582 0.378 0.236 0.339 0.197 Sada Real 0.215 0.300 0.090 0.100 0.265 0.505 0.295 0.180 0.265 0.135 Sada Obtida 0.214 0.279 0.091 0.082 0.269 0.482 0.292 0.176 0.261 0.148 Sada Real 0.100 0.225 0.035 0.040 0.105 0.370 0.255 0.125 0.210 0.090 Sada Obtida 0.128 0.218 0.063 0.056 0.150 0.386 0.219 0.132 0.195 0.112

Na Tabela 2 observam-se os resultados obtidos, via mtodo PEBS (sada real) [16] e pela rede neural feedforward com treinamento retropropagao (sada obtida). Observa-se que a RNA gerar diagnsticos prximos dos dados fornecidos via PEBS. 5. CONCLUSO Este artigo apresenta uma metodologia para treinamento de redes neurais feedforward baseado no algoritmo retropropagao executada atravs de uma programao orientada a objeto. Para demonstrar a facilidade da analise e do desenvolvimento da rede neural feedforward com algoritmo retropropagao foi desenvolvido um sistema de anlise de estabilidade transitria de um Sistema de Energia Eltrica Multimquinas (Sistema Anderson & Fouad) [6]. O enfoque principal do artigo a implementao da rede neural de tal forma que ela tivesse uma linguagem mais acessvel para vrios profissionais de diversas reas podendo ser aplicada em inmeras situaes. A dificuldade de implementao do algoritmo faz com que os pesquisadores procurem programas mais dinmicos como por exemplo o MATLAB. Porm, nem todos os programas oferecem o suporte tcnico necessrio para a anlise total da aplicao. Uma tcnica inovadora que est sendo muito difundida no ambiente de desenvolvimento de aplicativos a programao orientada ao objeto. A grande vantagem de utilizar a tcnica de programao orientada a objeto que ela proporciona maior facilidade na programao, uma maior reutilizao de cdigo e independncia no desenvolvimento de mdulos. Dentre as linguagens de programao orientada a objeto existentes foi escolhida a linguagem de programao JAVA, por ser totalmente orientada a objeto, por ter grande facilidade na construo de interfaces grficas atravs do aplicativo NetBeans IDE 6.8. Desta forma, foram desenvolvidas interfaces para a interao com o usurio a fim de estabelecer simplicidade na customizao da rede. O presente trabalho no enfatiza somente o desenvolvimento da rede neural para a anlise de estabilidade, mas sim na utilizao da tcnica da OOP. Foram apresentadas no decorrer do trabalho, vrias vantagens na utilizao e aplicao da mesma, dessa forma, os resultados esperados foram muito satisfatrios. AGRADECIMENTOS Agradeo a Universidade Estadual Paulista - Jlio de Mesquita Filho (UNESP) Campus de Ilha Solteira por ter

Figura 6. Interface grfica do erro obtido pela rede neural.

Aps a execuo do treinamento torna-se ativo o cone de diagnostico o qual realizado seguidamente gerando a interface grfica ilustrada pela Figura 7. Este grfico mostra os resultados reais da aplicao e os resultados obtidos pela rede neural.

Figura 7. Comparao entre os resultados reais e resultados obtidos.

No caso da aplicao na anlise de estabilidade transitria o objetivo, neste artigo, utilizar a rede neural para diagnosticar as margens de segurana para um conjunto de potncias.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

396

proporcionado uma estrutura adequada para o trmino deste trabalho. REFERENCIAS


[1] [2] T. L. Fine, Feedforward Neural Network Methodology, Springer-Verlag, USA, 1999. P. J. Werbos, Beyond Regression: New Tools for Prediction and Analysis in the Behavioral Sciences, Master Thesis, Harvard University, 1974. B. Widrow, M. A. Lehr, 30 Years of Adaptive Neural Networks: Perceptron, Madaline, and Backpropagation, in Proceedings of the IEEE, Vol. 78, No. 9, pp. 1415-1442, 1990. A. Boente, Livro Aprendendo a Programar em Java 2 Orientado a Objetos, ed. 1, Brasport, So Paulo, 2003. G. Voss, M. G. Hill, Object-Oriented Programming: An Introduction, Addison Wesley, New York, 1991. P. M. Anderson, A. A. Fouad, Power System Control and Stability, IEEE Series on Power Engineering, USA, ed. 2, 2003. S. Haykin, Neural Networks: A Comprehensive Foundation, Prentice-Hall, Upper Saddle River, New Jersey, USA, 1999. P. K. Simpson, Artificial Neural Systems: Foundations, Paradigms, Applications and Implementations, Pergamon Press, New York, 1989. M. L. M. Lopes, Desenvolvimento de um Sistema Previsor de Cargas Eltricas via Redes Neurais, Dissertao de Mestrado, Programa de Ps-graduao em Engenharia Eltrica - Faculdade de Engenharia de Ilha Solteira - UNESP, 2000.

[3]

[4] [5] [6] [7] [8]

[9]

[10] C. R. Minussi, M. C. G. Silveira, Electric Power System Transient Stability by Neural Networks, 38 Th Midwest Symposium On Circuits And System, Rio de Janeiro-RJ, pp. 1305-1308, 1995. [11] B. Krose, P. V. Smagt, An Introduction to Neural Networks, University of Amsterdam, November 1996. [12] A. A. Melo, M. G. F. Nascimento, Aprenda a Desenvolver Sistemas Profissionais Orientados a Objetos com Padres de Projeto, ed. 1, Novatec, So Paulo, 2007. [13] C. Cardoso, Orientao a Objetos na Prtica, ed. 1, Cincia Moderna, So Paulo, 2006. [14] A. Leite, FJ-11 - Java e Orientao a Objetos, Apostila do Curso FJ11 CAELUM Ensino e Inovao, 2009. [15] I. Jacobson, Object Oriented Software Engineering: A Use Case Driven Approach (Hardcover), Addison-Wesley, 1992. [16] A. D. P. Lotufo, Anlise de Sensibilidade por Redes Neurais para Estudos de Estabilidade Transitria de Sistemas Eltricos de Potncia, Tese de Doutorado, Programa de Ps-Graduao em Engenharia Eltrica, UNESP, Campus de Ilha Solteira, 2004.

Proceedings of the 9th Brazilian Conference on Dynamics Control and their Applications Serra Negra, SP - ISSN 2178-3667

397

Vous aimerez peut-être aussi