Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
REDES NEURAIS ARTIFICIAIS
Estimativa do numero de amostras (N) para a RNA
A quantidade mínima de dados/padrões a ser usada para o desenvolvimento de uma RNA não foi definida formalmente.
Contudo, com base em regras estatísticas, pode-se postular que o menor conjunto envolvido (teste ou validação) deverá possuir no mínimo 30 elementos.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado A quantidade de padrões/número de amostras (N), para uma determinada RNA com número de neurônios nas camadas internas (n), numero de variáveis de entrada (i) e numero de variáveis de saídas (s), deverá obedecer a seguinte equação para que haja aprendizado eficiente, com erro objetivado (ε) entre 0<ε<1:
Exemplo:
i= 8 n= 5 s=1 ε = 0,05 teremos N> 5*(8+1) / 0,05 N> 900 dados
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Definição Adequada do Modelo
As variáveis de entrada no modelo devem ser independentes entre si.
No caso de modelos que envolvem o cálculo de mais de uma variável dependente a partir de um mesmo conjunto de variáveis independentes, deve-se analisar duas possibilidades:
–Uma RNA para o cálculo de cada variável dependente;
–Uma única RNA para o cálculo simultâneo de todas as variáveis dependentes.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Número de Camadas Ocultas:
As RNAs só se tornaram eficazes depois que se viabilizou a inclusão de pelo menos uma camada oculta em sua topologia.
Contudo, ainda hoje não há consenso sobre o número ideal de camadas
ocultas a serem usadas numa dada aplicação de RNA
:
•Hecht-Nielsen: apenas uma camada é o suficiente para a maioria dos casos.
•Cybenko & Lippman: deve-se usar no mínimo duas camadas ocultas.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
O ideal é fazer experiências com várias topologias de RNAs.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Número Total de Neurônios nas Camadas Ocultas:
Quanto maior o número total de neurônios nas camadas ocultas, maior a capacidade de aprendizado da RNA. Ocorre também aumento de sua imunidade aos ruídos presentes nos dados.
Deve haver um balanceamento de forma que:
•Falta de Neurônios: incapacidade de aprendizado;
•Excesso de Neurônios: “memorização” dos dados e perda de capacidade de
generalização (extrapolação).
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Cálculo do Número de Neurônios nas Camadas Ocultas (n):
Hecht-Kolmogorov: n = 2 (i) + 1
i - número de variáveis de entrada, concentrados em uma única camada oculta.
Richard P. Lippmann: n = s (i) + 1, i - número de variáveis de entrada
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Blum:
s > i i > s
√
N - número de registros/tamanho da amostra usados no treinamento da RNA i - número de variáveis de entrada
s - número de variáveis de saída.
Reuter:
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Distribuição de Neurônios nas Camadas Ocultas:
Sugestões:
Kudricky: Para RNAs com duas camadas ocultas, usar relação 3:1 para o número de neurônios entre essas duas camadas.
Essa regra é particularmente adequada quando se tem grande número de variáveis de entrada.
Lippman: Para RNAs com duas camadas ocultas, adotar relação 1:2.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Função de Ativação
Praticamente todas as aplicações vistas usaram tangente hiperbólica como função de ativação, a qual se revelou superior a outras possibilidades, como função sigmoidal ou seno.
O uso da função linear é totalmente desaconselhado, uma vez que há enorme perda do poder preditivo da RNA.
O uso da tangente hiperbólica é necessária no caso de dados que apresentem sinais opostos.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado ANÁLISE DE SENSIBILIDADE
A análise da Sensibilidade é feita selecionando-se uma variável independente por vez a partir da RNA treinada que representa o modelo do sistema. Ela estima a participação da variável independente em alterações das variáveis dependentes.
A variável independente escolhida é acrescida em 5% nos seus valores que substituem o conjunto de valores anteriores usados no treinamento da rede.
Este novo conjunto padrão de entrada é então simulado na RNA já treinada. É feita a diferença aritmética entre os novos valores de saída obtidos na
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Finalmente determina-se a média dessas diferenças obtendo-se a Sensibilidade Média (SENSi) da variável independente em questão, conforme
expressão:
onde:
N: número de padrões/ quantidade de amostras;
y: valor da saída simulada na RNA com a alteração da respectiva entrada da variável independente acrescida em 5%;
d: valor original da saída do sistema, sem alteração nos padrões.
SE S ∑ yj − dj 𝐧
𝐣=
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Este processo é feito para cada variável independente do sistema.
Quanto maior é a Sensibilidade Média, maior é o efeito da variável independente considerada.
Pode-se também propor o cálculo da sensibilidade média normalizada (SENSNi) para a variável independente i, através da equação, onde se divide a sensibilidade da variável independente pela soma em módulo de todas as sensibilidades médias das variáveis (Gorni 2008):
SE S SE S / ∑ |SE S| 𝐧
𝐢=
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
A princípio a rede feedforward considerada a título de exemplo a seguinte topologia:
- 3 neurônios de entrada: igual ao número de entradas considerado
- 7 neurônios na camada intermediária: conforme método de Kolmogorov, expressão:
n1 = 2.i + 1 (7)
onde, i é o número de entradas da RNA e n1: quantidade de neurônios da
camada escondida.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Será utilizada a função não linear tangente hiperbólica (TANH) na camada intermediária, e função linear na camada de saída, caracterizada por TANH/LIN.
Para compensar o problema dos mínimos locais e global cada RNA será treinada cinco vezes na tentativa de obter um erro satisfatório (cross
-validation).
A princípio será utilizado uma expressão aritmética (y = x13 + √x2 + x32)
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Os padrões são no formato (x1, x2, x3, d), ou seja, três entradas e uma saída
desejada) em cada amostra, utilizados nas funções e caracterizados como dados sintéticos (GOMES, 2008).
A função utilizada para o treinamento da rede é:
F1: y = x13 + √x2 + x32
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado As faixas de variações destas variáveis serão estipuladas de forma a equivaler às variações possíveis encontradas em modelos práticos, e que possam proporcionar diferenciação nas análises finais:
20 ≤ x1 ≤ 30;
1300 ≤ x2 ≤ 1500;
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Os tipos de funções da RNA utilizados serão:
Função de treinamento: Levenberg-Marquardt (LM);
Função de aprendizagem: gradiente descendente com função de
aprendizado para pesos e limiares (GDM);
Função de performance: erro médio quadrático normalizado (MSE);
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado 5.3 SELEÇÃO DAS RNAs TREINADAS
A continuidade dos estudos será feita com as simulações das funções em RNAs de topologias que mapeiem estas funções, com performances que apresentem erros da ordem de 10-2 ou abaixo desta ordem (PIULEAC et al,
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado MÉTODO DE OBTENÇÃO DA ESTIMATIVA DAS SENSIBILIDADES DAS TRÊS ENTRADAS INDEPENDENTES.
1 Sensibilidade Média - SENS.
a) são apresentados os cinco primeiros padrões de amostras utilizados nos respectivos casos para a função F1: y = x13 + x20,5 + x32; em rede de 7
neurônios, com funções de ativação TANH/LIN, tratada nos procedimentos deste documento.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 1
Sensibilidade Média da variável independente "x1". São apresentados os
padrões utilizados com alterações em "x1" (1.05.x1, x2, x3), saída original (d),
saídas alteradas da rede treinada (y), os erros individuais de cada padrão (e = y - d) e o erro médio que é a própria Sensibilidade Média (SENS1), média aritmética dos erros de todos os padrões apresentados em cada análise.
1,05.x1 x2 x3 d y e SENS1
21,0 1300 88 15780 17040 1260
25,2 1500 87 21432 23611 2179
26,3 1340 83 22551 25014 2463
26,3 1360 80 22062 24525 2463
22,1 1420 83 16188 17648 1460
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 2
Sensibilidade Média da variável independente "x2". São apresentados os
padrões utilizados com alterações em "x2" (x1, 1,05.x2, x3), saída original (d),
saídas alteradas da rede treinada (y), os erros individuais de cada padrão (e = y - d) e o erro médio que é a própria Sensibilidade Média (SENS2), média aritmética dos erros de todos os padrões apresentados em cada análise.
x1 1,05.x2 x3 d y e SENS2
20 1365,0 88 15780 15781 0,8329
25 1407,0 83 22551 22552 1,0653
25 1428,0 80 22062 22063 1,2122
21 1491,0 83 16188 16189 0,9974
24 1386,0 85 21085 21086 0,8911
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 3
Sensibilidade Média da variável independente "x3". São apresentados os
padrões utilizados com alterações em "x3" (x1, x2, 1,05.x3), saída original (d),
saídas alteradas da rede treinada (y), os erros individuais de cada padrão (e = y - d) e o erro médio que é a própria Sensibilidade Média (SENS3), média aritmética dos erros de todos os padrões apresentados em cada análise.
x1 x2 1,05.x3 d y e SENS3
20 1300 92,40 15780 16573 793
24 1500 91,35 21432 22208 776
25 1340 87,15 22551 23257 706
25 1360 84,00 22062 22718 656
21 1420 87,15 16188 16894 706
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado 2 Sensibilidade Média Normalizada - SENSN.
Tabela 4
Obtenção dos valores das Sensibilidades Médias Normalizadas a partir das Sensibilidades Médias obtidas anteriormente; por meio da expressão:
SE S SE S / ∑ |SE S | n
i=1
SENS1 SENS2 SENS3 Σ |SENSi| SENSN1 SENSN2 SENSN3
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado O resumo dos valores das Sensibilidades Médias e Médias Normalizadas para cada variável independente é apresentado na Tabela 10.
Tabela 10
Valores das Sensibilidades Médias e Médias Normalizadas para cada variável independente.
VARIÁVEL SENS SENSN (%)
X1 2218 73,63
X2 0,9377 0,03
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
MÉTODO DE VERIFICAÇÃO DA INFLUÊNCIA DE CADA VARIÁVEL INDEPENDENTE "ZERADA" NA VARIÁVEL DEPENDENTE.
A título de investigação para confirmação das sensibilidades encontradas, uma nova simulação será feita com essa mesma rede treinada anteriormente, serão alterados para zero, "0", os valores das entradas, uma a cada vez, no padrão original e, juntamente com o restante do padrão de entrada será simulada nas redes treinadas e selecionadas conforme seção 5.3 afim de obter os valores das saídas sem a participação da respectiva entrada.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Pretende-se, com isso, verificar a real influência de cada variável independente na variável dependente de saída, e comparar os resultados com os de Sensibilidade Média Normalizada da variável.
Após a simulação, considerando-se "yi", o valor da saída do padrão "i" simulado com a respectiva variável "xi"=0, e "di" o valor original desta mesma
saída; um valor do Erro Médio Absoluto (MUKHERJEE, 2012) é obtido para cada padrão, por meio de:
e 1 ∑|d - y |d N
i=1
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Para os "N" padrões, este erro representa a variação da saída da rede em função da não existência (valor=0) da entrada em análise; e representa uma forma alternativa de análise desta variação da saída.
Obs.: são apresentados os cinco primeiros padrões de amostras utilizados nos respectivos casos para a função F1: y = x13 + x20,5 + x32; em rede de 7
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 1
Erro Médio das Saídas da RNA Treinada. São apresentados os padrões utilizados no treinamento da RNA (x1, x2, x3, d), saídas da rede treinada (y),
erros individuais de cada padrão (e = (d - y)/d) e o erro médio (em), média aritmética dos erros de todos os padrões apresentados em cada análise.
x1 x2 x3 d y e em
20 1300 88 15780 15779,0569 0,000060 24 1500 87 21432 21431,5278 0,000022 25 1340 83 22551 22550,7991 0,000009 25 1360 80 22062 22062,2821 -0,000013
21 1420 83 16188 16187,9565 0,000003
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 2
Erro Médio das Saídas da RNA simulada com x1=0. São apresentados os
padrões utilizados no treinamento da RNA (x1, x2, x3, d), novas saídas da rede
(y), erros individuais de cada padrão (e = (d - y)/d) e o erro médio (em), média aritmética dos erros de todos os padrões apresentados em cada análise.
x1 x2 x3 d y e em
0 1300 88 15780 6261 0,6033 0 1500 87 21432 6093 0,7157 0 1340 83 22551 5414 0,7599 0 1360 80 22062 4929 0,7766 0 1420 83 16188 5416 0,6654
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 3
Erro Médio das Saídas da RNA simulada com x2=0. São apresentados os
padrões utilizados no treinamento da RNA (x1, x2, x3, d), novas saídas da rede
(y), erros individuais de cada padrão (e = (d - y)/d) e o erro médio (em), média aritmética dos erros de todos os padrões apresentados em cada análise.
x1 x2 x3 d y e em
20 0 88 15780 15762 0,0012 24 0 87 21432 21411 0,0010 25 0 83 22551 22533 0,0008 25 0 80 22062 22045 0,0008 21 0 83 16188 16169 0,0012
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Tabela 4
Erro Médio das Saídas da RNA simulada com x3=0. São apresentados os
padrões utilizados no treinamento da RNA (x1, x2, x3, d), novas saídas da rede
(y), erros individuais de cada padrão (e = (d - y)/d) e o erro médio (em), média aritmética dos erros de todos os padrões apresentados em cada análise.
x1 x2 x3 d y e em
20 1300 0 15780 6955 0,5593 24 1500 0 21432 12784 0,4035 25 1340 0 22551 14587 0,3532 25 1360 0 22062 14587 0,3388 21 1420 0 16188 8216 0,4924
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado O resumo dos valores dos erros para o treinamento e para cada situação de não existência da variável independente no processo é apresentado na Tabela 15.
Tabela 15
Valores dos erros para o treinamento e para cada situação de não existência da variável independente no processo.
SITUAÇÃO TREINAMENTO VARIÁVEL INDEPENDENTE "ZERADA"
X1 X2 X3
ERRO (%) 0,0011 70,7 0,0892 40,7
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado Pela tabela 16 pode-se comparar os resultados da Sensibilidade Média Normalizada e dos erros obtidos com a simulação de variáveis independentes "zeradas".
Tabela 16
Valores de SENSN e ERROS de apresentados por cada Variável Independente.
VARIÁVEL SENSN ERROS
INDEPENDENTE % %
X1 73,63 70,7
X2 0,03 0,0892
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado NORMALIZAÇÃO E DESNORMALIZAÇÃO DAS VARIÁVEIS
A normalização das variáveis de entrada é uma etapa do pré-processamento. Ela possui a função igualar a ordem de grandeza das variáveis de entrada evitando problemas numéricos durante a fase de treinamento além de melhorar o desempenho do algoritmo de treinamento backpropagation [31].
A desnormalização das variáveis de saída é necessária e deverá ter variações máximas e mínimas em conformidade com os padrões de saida utilizados para treinar a RNA.
Esta normalização e desnormalização são realizadas automaticamente pelos
softwares Statistica 7, Matlab, Neurosolutions, etc. Mas deve ser feita no caso
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado A normalização ( ) dos dados de entrada é realizada segundo as equações gerais:
𝐷𝑒𝑙 𝑎 𝑎𝑥 𝑎𝑥 − −
− 𝐷𝑒𝑙 𝑎 𝐷𝑒𝑙 𝑎
𝐷𝑒𝑙 𝑎 : razão de normalização.
𝑎𝑥: desvio máximo que a variável de entrada pode assumir.
: desvio mínimo que a variável de entrada pode assumir.
𝑎𝑥 : valor máximo do conjunto de dados de uma determinada variável de entrada i.
: valor mínimo do conjunto de dados de uma determinada variável de entrada i.
: valor da variável de entrada normalizada i.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado No caso de se desejar normalizar entre 0 e 1, a equação de normalização das variáveis se resumirá a seguinte expressão:
𝑎𝑥 − −
𝑎𝑥 1: desvio máximo que a variável de entrada pode assumir.
0: desvio mínimo que a variável de entrada pode assumir.
𝑎𝑥 : valor máximo do conjunto de dados de uma determinada variável de entrada i.
: valor mínimo do conjunto de dados de uma determinada variável de entrada i.
: valor da variável de entrada normalizada i.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado No caso de se desejar normalizar entre -1 e 1, a equação de normalização das variáveis se resumirá a seguinte expressão:
[ 2 𝑎𝑥 − 𝑎𝑥 − − ]
𝑎𝑥 1: desvio máximo que a variável de entrada pode assumir.
−1: desvio mínimo que a variável de entrada pode assumir.
𝑎𝑥 : valor máximo do conjunto de dados de uma determinada variável de entrada i.
: valor mínimo do conjunto de dados de uma determinada variável de entrada i.
: valor da variável de entrada normalizada i.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado No caso de se desejar desnormalizar (𝐷𝑒 ) as variáveis de saída entre 0 e 1, a equação de desnormalização se resumirá a seguinte expressão:
De orm output [ orm output max target − m target ] m target
𝑎𝑥 1: desvio máximo que a variável de saída pode assumir.
0: desvio mínimo que a variável de saída pode assumir.
𝑎𝑥 𝑎 𝑔𝑒 : valor máximo do conjunto de dados de uma determinada variável de saída i
utilizada no treinamento.
𝑎 𝑔𝑒 : valor mínimo do conjunto de dados de uma determinada variável de saída i
utilizada no treinamento.
: valor da variável de saída normalizada i.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado No caso de se desejar desnormalizar (𝐷𝑒 ) as variáveis de saída entre -1 e 1, a equação de desnormalização se resumirá a seguinte expressão:
De orm output [ orm output max target − m target2 ] max target m target
𝑎𝑥 1: desvio máximo que a variável de saída pode assumir.
−1: desvio mínimo que a variável de saída pode assumir.
𝑎𝑥 𝑎 𝑔𝑒 : valor máximo do conjunto de dados de uma determinada variável de saída i
utilizada no treinamento (target).
𝑎 𝑔𝑒 : valor mínimo do conjunto de dados de uma determinada variável de saída i
utilizada no treinamento (target).
: valor da variável de saída normalizada i.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
REFERÊNCIAS
AGUIRRE, Luis A. Introdução à Identificação de Sistemas - técnicas lineares e não lineares aplicadas a sistemas reais. 3. ed. Belo Horizonte: Editora UFMG, 2007.
BRAGA, Antonio de P.; CARVALHO, André P. de L. F. de ; LUDERMIR, Teresa B. Fundamentos de Redes Neurais Artificiais. Rio de Janeiro: DCC/IM, COOPE/Sistemas, NCE/UFRJ, 1998.
BRAGA, Antonio de P.; CARVALHO, André P. de L. F. de ; LUDERMIR, Teresa B. Redes Neurais Artificiais - teoria e aplicações. 2. ed. Rio de Janeiro: LTC, 2007.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado CAMPOS, Mario C. M. M. de; TEIXEIRA, Herbert C. G. Controles Típicos de Equipamentos e Processos Industriais. São Paulo: Editora Blucher, 2006. GARCIA, Cláudio. Modelagem e Simulação de Processos Industriais e de Sistemas Eletromecânicos. 2. ed. São Paulo: Editora da Universidade de São Paulo, 2005.
GOMES, Gecynalda S. da S.; LUDERMIR, Teresa B. Redes Neurais
Artificiais com Funções de Ativação complemento Log-Log e Probit para
aproximar funções na presença de observações extremas. Learning and Nonlinear Models, Revista da Sociedade Brasileira de Redes Neurais (SBRN), v. 6, n. 2, p.142-153, 2008.
GORNI, Antonio A.; SILVA, Marcos R. S. da; SILVEIRA, José H. D. da.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado GORNI, A. A.; SILVA, M. R. S.; SILVEIRA, J. H. D. Aplicação de redes neurais no modelamento matemático de propriedades mecânicas de bobinas a quente. 45º Seminário de Laminação - Processos e Produtos Laminados e Revestidos, Porto de Gainhas, 21 a 24 Outubro 2008. 778-788
GRESSLER, Lori Alice. Introdução à Pesquisa: projetos e relatórios. 2.ed. São Paulo: Loyola, 2004.
HAYKIN, Simon. Redes Neurais: princípios e práticas. 2. ed. Porto Alegre: Bookman, 2001.
HECHT-NIELSEN, R. Neurocomputing. Addison-Wesley Publishing Company, Reading, 1991.
LIVINGSTONE, David. A Practical Guide to Scientic Data Analysis. Reino Unido: Wiley, 2009.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
networks developed by using Levenberg-Marquardt and Quasi-Newton
with the gradient descent algorithm for modelling a multiple response grinding process. Expert Systems with Applications, n. 39, 2012, p. 2397 -2407.
NORGAARD, M.; RAVN, O.; POULSEN, N. K.; HANSEN, L. K. Neural
Networks for Modelling and Control of Dynamic Systems: a practitioner´s handbook. Grã Bretanha: Springer-Verlag London Limited, 2000.
PIULEAC, C. G.; RODRIGO, M. A.; CAÑIZARES, P.; CURTEANU, S.; SÁEZ, C.
Ten Steps modeling of electrolysis processes by using neural networks.
Environmental Modelling & Software, n. 25, 2010, p. 74-81.
Disciplina: Controle e simulação de processos Prof. Marcelo Lucas Pereira Machado
SILVA, Ivan N. da; SPATTI, Danilo H.; FLAUZINO, Rogério A. Redes Neurais Artificiais para Engenharia e Ciências Aplicadas. São Paulo: Artliber, 2010.
TUBINO, Dalvio Ferrari. Manual de Planejamento e Controle da Produção.
2. ed. São Paulo: Atlas, 2000.