• Nenhum resultado encontrado

6.5 Sistema Preditivo Desenvolvido

6.5.2 Predição da Ocupação de Banda

Nesta seção será descrito o projeto da RNA a ser utilizada para prever o próximo valor de ocupação percentual de banda a partir dos dados obtidos segundo a Item 6.5.1.

A predição da ocupação percentual de banda foi realizada através de uma RNA com a ar- quitetura TDNN do tipo concentrada, com ordem de predição igual a 5 (Haykin, 2001). Essa arquitetura foi escolhida devido a sua simplicidade computacional.

Ocupação Banda (%) Tempo (s) Janela n-1 Janela n+1 Janela n

Figura 6.6: Janelamento da série temporal para apresentação à RNA.

A predição obtida é de um passo à frente, ou seja, o valor da ocupação percentual de banda para o próximo instante de tempo medido será obtida. No caso desta pesquisa será fornecido o valor de banda referente ao próximo segundo.

Os padrões de treinamento e teste para a RNA foram obtidos a partir da montagem em laboratório do aparato apresentado na Figura 6.7. Esta montagem foi utilizada também para testar o funcionamento do sistema proposto. A Tabela 5.2 resume as principais características da montagem laboratorial desenvolvida. Neste esquema, foram medidos 19 patamares (N=19) de carregamento da rede com as características definidas na seção 5.2, então formatados segundo a Figura 6.8 e o Algoritmo 6.1.

Para a finalidade de análise de tráfego, a topologia em estrela é a melhor representação pois, os IEDs estão interconectados através de um único enlace de rede.

Foram utilizados 1754 (40%) padrões para treinamento e 2610 (60%) padrões para teste da RNA, os quais contém valores de ocupação de banda entre 5 e 95% do valor nominal da interface monitorada. Os dados de entrada foram normalizados segundo o teorema de Tales, o qual pode ser observado na Equação 6.6 (da Silva et al., 2010).

z = x − x min

xmax− xmin (6.6)

Gerador de Tráfego Switch Ethernet 7 4 1 8 5 2 0 9 6 3

ESC RunBlock Front Port

IED Tráfego

Cabo UTP cat. 5e Sistema Desenvolvido

Medição Banda Comercial

Figura 6.7: Esquema laboratorial utilizado.

xmin=Menor valor x; xmax=Maior valor da x.

A formação dos conjuntos de treinamento e teste representa uma etapa importante no projeto de uma RNA pois, a partir da reunião de informações representativas das situações prováveis pelas quais as variáveis necessárias a modelagem do problema podem ser submetidas, a rede será capaz de extrair o conhecimento necessário desse conjunto a generalizar as soluções, fornecendo respostas adequadas para cada novo padrão apresentado (da Silva et al., 2010).

A Figura 6.8 e o Algoritmo 6.1 apresentam a forma pela qual foram formatados os arquivos de treinamento e teste. Para cada patamar de tráfego medido, inicialmente, é verificado se os dados obtidos estão dentro de uma faixa de valores representativos. Essa ação é necessária para retirada de valores espúrios dos futuros conjuntos de treinamento e teste. Em seguida as amostras são normalizadas, através do teorema de Tales, e os valores máximos e mínimos de cada patamar de banda medido são determinados. A partir disso, é utilizado o algoritmo 6.1 para separar o conjunto de treinamento, contendo uma janela de dados com os valores máximos e mínimos de cada patamar medido do conjunto de teste correspondente. Esse algoritmo ainda trata algumas relativas a formação dos conjuntos de treinamento, conforme a Figura 6.9.

Para a Figura 6.8: N= Número de patamares de ocupação de banda utilizados no processo de treinamento e teste; Kmin= Posição da menor amostra relativa ao vetor de AmostrasK; Kmax = Posição da maior amostra relativa ao vetor de AmostrasK; K=Posição da amostra relativa ao vetor de AmostrasK; L = Tamanho do vetor de AmostrasK; P= Valor nominal do patamar de ocupação N; AmostrasK = Valor da amostra na posição K relativa ao vetor de amostras do

patamar N.

Algoritmo 6.1: Montagem Conjuntos Treinamento/Teste. Início

Dados: Vetor de AmostrasK com Tamanho L para o patamar N; se Kmax < Kmin então // 1

Ktemp = Kmax; Kmax = Kmin; Kmin = Ktemp; fim

enquanto Kmin < 0,4×L/4 faça // 2 Kmin = Kmin+1;

fim

enquanto Kmax + 0,4×L/4>L faça // 3 Kmax = Kmax - 1;

fim

enquanto Kmax - 0.4×L/4 < Kmin + 0.4×L/4 faça // 4 se Kmin - 0.4×L/4 < L - (Kmax+ 0.4×L/4) então // 5

Kmax = Kmax+1; senão

Kmin = Kmin - 1; fim

fim

Resultado: Conjunto de Treinamento = {[Kmin-0,4×L/4;

Kmin+0,4×L/4]+[Kmax-0.4×L/4 ; Kmax + 0.4×L/4] };

Resultado: Conjunto de Teste = {[1 ; Kmin - 0.4×L/4] + [Kmin + 0.4×L/4 ; Kmax - 0.4×L/4] + [Kmax + 0.4×L/4 ; L]};

Fim

Para o Algoritmo 6.1, tem-se:

1. Se Kmax < Kmin, troca-se seus valores. Para as etapas abaixo, não importa qual deles realmente é o índice da maior ou da menor amostra, apenas se deseja que ambas estejam presentes no conjunto de treinamento. Nesse caso, para não ter que executar duas vezes cada instrução (uma para Kmin< Kmaxe outra para Kmin ≥ Kmax), é forçado que Kmin < Kmax, usando uma variável temporária Ktemp para armazenar Kmax enquanto efetuamos a troca;

2. Se a faixa dos valores em torno de Kmin excede a primeira posição; 3. Se a faixa dos valores em torno de Kmax excede a última posição; 4. Se as faixas de Kmin e Kmax se sobrepõem;

Na Figura 6.9, tem-se uma representação visual dos procedimentos realizados pelo Algoritmo 6.1. Os retângulos representam os vetores que armazenam o conjunto de todas as amostras. A barra vertical à esquerda representa a posição do vetor indexada por Kmin, e a barra vertical à direita representa a posição indexada por Kmax.

1. A faixa de amostras ao redor de Kmin excede os limites inferiores do vetor, sendo necessário aumentar Kmin até que toda sua faixa de amostras esteja compreendida numa área válida do vetor.

2. A faixa de amostras ao redor de Kmaxexcede os limites superiores do vetor, sendo necessário diminuir Kmax até que toda sua faixa de amostras esteja compreendida numa área válida do vetor.

3. As duas faixas de amostras se sobrepõem. Como a distância de Kmax a L é maior que a distância de Kmin a 1, aumentamos Kmax até que não haja mais sobreposição.

4. As duas faixas de amostras se sobrepõem. Como a distância de Kmin a 1 é maior que a distância de Kmax a L, diminuímos Kmin até que não haja mais sobreposição.

5. Representação do que seria uma configuração válida do vetor de amostras para gerar o vetor de treinamento e o de teste.

Os dados de treinamento foram aplicados ao algoritmo de treinamento Resilient-Propagation (Rprop), com Momemtum (α) igual a 0,3, taxa de aprendizagem (η) igual a 0,02 e função de ativação sigmóide (β = 0, 5) para todas as camadas neurais Riedmiller (1994).

A topologia obtida possui cinco entradas na primeira camada, 10 neurônios na primeira camada escondida, 15 neurônios na segunda camada escondida e 1 neurônio na camada de saída, conforme a Figura 6.10.