XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 Comparando a Performance de Redes Neurais Artificiais como Metamodelos de Simulação Adelmo Luis Cechin, Ph.D. (UNISINOS) [email protected] Klaus Stertz (UNISINOS) [email protected] Resumo Este artigo compara Redes Neurais como metamodelos de simulação com modelos clássicos lineares e quadráticos, com e sem interação. Estes últimos são fáceis de compreender mas sua performance deixa a desejar, se comparados com Redes Neurais, em termos de erro de aproximação. Por outro lado, os metamodelos com Redes Neurais são chamados modelos caixa-preta, e são, portanto, difíceis de interpretar e comparar com outros modelos clássicos (exceto pelo erro de aproximação). Para a validação do método na área da simulação, uma aplicação é mostrada, a simulação de um sistema de armazenamento e seu metamodelo com redes neurais e metamodelos clássicos. Uma comparação entre todos estes metamodelos em termos de erro e eficiência temporal é apresentada. Palavras chave: Redes Neurais Artificiais, Metamodelagem, Sistema de Armazenamento. 1. Introdução As Redes Neurais Artificiais (RNAs), como modelos não-lineares livres adaptáveis, podem ser usadas como metamodelos na área da simulação. Do ponto de vista teórico, uma RNA é aproximador universal multidimensional de uma função (HORNIK (1989)). Podem ser usadas para implementar uma estimativa dos valores médios da saída de um modelo de simulação, como por exemplo, de sistemas de armazenamento (KILMER (1993)), como metamodelos de departamentos de emergência em hospitais (ROBERT (1995)), como metamodelos de depósitos de carvão (HURRION (1992)), como metamodelos na análise econômica de projetos de risco (BADIRU (1993)), na computação de intervalos da confiança em simulações discretas (SHUMAN (1998), PIERREVAL (1992), FISHWICK (1989)), etc. Um modelo de simulação pode ser pensado como de um mecanismo que transforma parâmetros de entrada em medidas de desempenho na saída (LAW (1991)). Nós podemos conseqüentemente imaginar o sistema de simulação como uma função que transforma os parâmetros reais da entrada em valores de saída. A forma desta função depende do sistema em particular que nós estamos modelando. Metamodelos são aproximações dos resultados de uma simulação que transforma parâmetros da entrada em parâmetros de saída. Os parâmetros da entrada definem a simulação e são classificados em parâmetros do modelo (parâmetros internos) e em parâmetros das distribuições da entrada (parâmetros externos). Os parâmetros do modelo são normalmente características estáticas do sistema real, como o número das máquinas em cada estação de trabalho de um modelo de job-shop, ou o número de trabalhadores, número das ferramentas, etc.. Os parâmetros das distribuições de entrada são relacionados aos fatores externos que influenciam os resultados da simulação, como o consumo e o preço de um determinado produto, a demanda para um serviço, etc.. Ambos os tipos de parâmetros podem ser modelados deterministicamente ou por uma distribuição de probabilidade. Metamodelos são usados para obter uma visão geral abstrata dos resultados. Metamodelos ENEGEP 2003 ABEPRO 1 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 filtram os resultados da simulação reduzindo-os a valores médios e aos efeitos principais. Pequenas perturbações em determinadas regiões do espaço do parâmetro de entrada são normalmente filtradas pelo modelo. Uma área correlacionada onde RNAs também são usadas, é a área de controle não-linear multidimensional (BARTO (1983)). Neste contexto, RNAs são usadas como modelos de sistemas dinâmicas (JARMULAK (1997), FRIJNS (2000), AL-NASSAR-NASSAR (2000)) em MRACs (Model Reference Adaptive Control) ou para calcular diretamente os sinais de controle a partir do estado de um sistema. Veja também (NARENDRA (1991)) para as várias maneiras como uma RNA pode ser usada na área de controle como um controlador ou como um modelo. O objetivo principal do uso de RNAs na área de controle é obter um bom modelo do processo e assim predizer o comportamento do processo real ou como um controlador a ser introduzido na malha de controle. Os dois motivos principais para o uso de RNAs na área da simulação são: primeiro, o ganho na performance computacional, que permite simulações mais complexas serem computadas e, conseqüentemente, gerando os dados necessários para as RNAs e segundo, o desenvolvimento de algoritmos de treinamento eficientes para a computação dos pesos da RNA. Um terceiro critério é o entendimento de um metamodelo. A quantificação deste critério é um assunto da pesquisa e não será tratada aqui. Outros fatores são: RNAs filtram os resultados das replicações necessárias quando de um experimento de simulação e também possuem baixa sensibilidade em regiões extensas de variação dos parâmetros de entrada e alta sensibilidade em outras regiões. Uma vez que se opte por substituir uma simulação por um metamodelo, é necessário considerar não somente o desempenho nos termos do tempo do metamodelo, mas também sua precisão. Conseqüentemente, ambos os critérios são investigados neste artigo. Com relação aos metamodelos analisados, foram comparadas diversas topologias da rede, um metamodelo linear, um metamodelo quadrático clássico (com e sem interações) e a simulação sem nenhum metamodelo. Este artigo apresenta as RNAs como modelos não-lineares multidimensionais. Esta visão permite uma comparação dos metamodelos da rede neural com os metamodelos lineares e quadráticos (multinômios) clássicos. Como este artigo não tratará sobre a interpretação das RNAs, a comparação será realizada somente pela análise do erro de cada metamodelo com relação ao sistema da simulação e por sua rapidez em termos de processamento. O artigo mostra estes resultados baseados em uma aplicação da modelagem através de RNAs sobre um sistema de armazenamento. Resultados para um modelo linear, quadrático e modelo de RNAs com diversas topologias são mostrados e comparados. 2. Redes Neurais Artificiais como Metamodelos A RNA discutida neste artigo pertence à classe Multilayer Perceptron (MLP). As funções base são logísticas (sigmoid ou tangente hiperbólica). 1/(1+e-(Σwxi+b)) (1) onde Σ wji xi é o resultado de uma soma ponderada da entrada i do neurônio j e b é uma constante. Uma MLP com uma camada escondida pode ser representada pela seguinte equação, substituindo-se o somatório acima por uma multiplicação de matrizes e a soma pela constante por uma adição vetorial: z=A2 tanh(A1x+B1)+B2 ENEGEP 2003 (2) ABEPRO 2 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 ou, se os neurônios da saída tiverem funções não-lineares z= tanh(A2 tanh(A1x+B1)+B2) (3) onde a tanh deve ser aplicada em cada elemento do vetor e dos resultados em um outro vetor com o mesmo tamanho. A1 é a matriz dos pesos da camada escondida e B1 é o vetor dos valores diagonais (bi) para cada neurônio i. Notamos que (A1x+ B1) é uma transformação linear dos dados a um outro espaço (do espaço da entrada ao espaço escondido da camada). O espaço da camada escondida pode ter muito mais dimensões (exatamente igual ao número dos neurônios escondidos) do que o espaço da entrada. Como apontado na introdução, há muitas vantagens no uso de RNAs como modelos nãolineares livres. Entretanto, os problemas principais com RNAs são o erro de aproximação com relação à resposta do processo real e a compreensibilidade do modelo por um ser humano. Muitos autores apontaram este inconveniente chamado o problema da caixa preta (ANDREWS (1995), KOSKO (1992)). Hoje, o principal problema do uso de RNAs é a falta dos métodos de análise para modelar o comportamento de RNAs. Isto é em parte devido à complexidade da análise da função da RNA, desde que é um modelo não-linear multivariante composto de funções bases não-ortogonais (a análise de Fourier, por exemplo, usa funções bases ortogonais). Com relação ao uso de RNAs como metamodelos, pode-se observar que as respostas de muitos sistemas industriais são sensíveis somente a determinadas variáveis da entrada e somente em uma determinada região do espaço. Sendo a função base de uma RNA, funções logísticas que contêm também regiões de sensibilidade diferentes, espera-se que sejam um bom metamodelo, refletindo as características de processos industriais. Por exemplo: se o usuário percebe que o processo subjacente a ser modelado é repetitivo, uma boa escolha seria representar os sinais como coeficientes de Fourier, pois uma combinação destas resultará em um bom modelo do processo; da mesma forma, um modelo de RNAs é adequado tanto quanto o processo subjacente tiver um comportamento semelhante às funções base da RNA. A escolha das funções base depende da aplicação e deve refletir os dados subjacentes. Por outro lado, modelos lineares e quadráticos são mais fáceis de interpretar, mas devem ser usados somente se o processo for linear ou levemente não-linear. Se a ordem do modelo for aumentada para obter uma sensibilidade mais elevada com relação às entradas, a interpretação do modelo fica diminuída. Os polinômios ou os multinômios têm também como desvantagem um comportamento “selvagem” fora dos dados do intervalo. As RNAs usadas como os metamodelos, geralmente pertencem à classe das RNAs supervisionadas. Para serem treinadas, redes supervisionadas necessitam valores de saída ou de resposta do sistema. Isso significa que o usuário precisa primeiro executar simulações com parâmetros típicos da entrada, e utilizar os valores de entrada e saída como padrões de treinamento para a rede. Esta pode ser uma limitação séria em seu uso, já que para cada parâmetro diferente da entrada da simulação, é necessário que se inclua uma nova entrada na rede. Infelizmente, para cada nova entrada, para um mesmo número de padrões, a generalização cai. A fim evitar isto, mais dados têm que ser gerados. Ou seja, o número de padrões necessários é da ordem de O(enúmero de entradas). A inclusão de uma entrada nova deve assim ser considerada com cuidado. 3. Aplicação em um Sistema de Armazenamento O sistema de armazenamento simulado (LAW (1991)) é definido basicamente por dois parâmetros internos: o nível máximo S do inventário e o nível mínimo s. O nível do inventário é avaliado todo início de mês, quando é feito o pedido ao fornecedor. O tamanho do pedido é a diferença entre S e o nível no momento da compra, se o nível for menor que s, caso ENEGEP 2003 ABEPRO 3 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 contrário não é feito pedido de compra. Ao final do mês, portanto, o nível pode ser negativo, indicando uma falta do produto. O tempo de chegada é distribuído uniformemente entre 15 e 30 dias. A distribuição da demanda é exponencial com média de 3 dias. O tamanho da demanda varia de 1 até 4 com as probabilidades {1/6,1/3,1/3,1/6}. Os custos são os seguintes: custo de compra: custo fixo de R$32,00+número de unidades x R$3,00; custo de armazenamento: R$1,00/item mês; custo por falta do produto: R$5,00/item mês. O tempo total de simulação é 120 meses. Os parâmetros externos do modelo não serão investigados neste artigo. A geração dos dados foi realizada para todas as 35 combinações sxS, para os valores s={20,30,40,50,60} e S={40,50,60,70,80,90,100}. Os parâmetros de saída medidos foram: (1) custo total médio durante os 120 meses; (2) custo médio dos pedidos; (3) custo médio de armazenamento; (4) custo médio devido à falta do produto. Foram executadas 10 replicações para cada um dos experimentos para obter uma significância estatística nas respostas da simulação, resultando em um total de 350 simulações. Neste artigo, resultados serão apresentados somente para o custo total médio (1) e para o custo médio devido à falta do produto (4), pois estes apresentam resultados qualitativamente distintos. Os resultados absolutos da simulação são mostrados na figura 1. Cada ponto simulado é representado por uma determinada combinação de S e de s (eixos x e y) e do custo médio total (eixo z). Dez replicações são mostradas para fornecer uma impressão da variação nos resultados dependendo das características estatísticas das distribuições da entrada. Esta variação representa também um limite do erro de qualquer metamodelo. Ou seja, nenhum metamodelo possível apresentará um erro menor que o desvio-padrão dos dados em torno da resposta a uma certa condição de entrada. Este valor é usado para quantificar o quão próximo cada metamodelo está do melhor valor possível. Figura 1: Resultados da Simulação: custo médio total em função de s (nível mínimo) e S (nível máximo). Resultados padronizados; média e desvio-padrão indicados em cada eixo. 4. Metamodelagem com Redes Neurais Os parâmetros da entrada para a rede MLP são os níveis máximo e mínimo desejados para o inventário. Isto é, as redes têm 2 neurônios na camada de entrada. Seis estruturas de rede MLP foram treinadas (veja tabela 1): uma rede linear (nenhum neurônio na camada escondida) e cinco redes não-lineares, com 2, 4, 5, 8 e 16 neurônios na camada escondida respectivamente. Os neurônios da saída de todas as estruturas são lineares. Para uma visualização qualitativa da dispersão dos resultados em torno da resposta da RNA, a figura 2 (esquerda) mostra a resposta da rede 2-5-1 em comparação com a simulação. A RNA, diferentemente da simulação, produz sempre a mesma resposta para uma mesma entrada. Na simulação obtém-se respostas diferentes devido às propriedades estatísticas das ENEGEP 2003 ABEPRO 4 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 condições da simulação. Uma variação da simulação pode ser observada para cada resposta da rede. A variação dos pontos no eixo x reflete esta variação nos resultados da simulação. Na figura 3 (direita) são apresentados exemplos de redes neurais com suas respectivas ligações. (a) (b) Figura 3: Estruturas da rede: estrutura linear (não há camada escondida) (a); MLP com os 5 neurônios na camada escondida (b). Figura 2: Simulação X RNA (resultados padronizados). Em relação à validação de cada topologia, utilizou-se 10-fold cross validation, um método já tradicional na área. Dividem-se os dados em dados de treinamento (90%) e dados de teste (10%) compondo 10 grupos mutuamente exclusivos e calcula-se para cada grupo o erro RMS (Root Mean Square). Finalmente, calcula-se a média dos erros dos grupos. Estando as saídas padronizadas, este erro é uma medida percentual do desvio-padrão da saída, o que permite uma comparação aproximada em termos de erro com outros metamodelos. A resposta da RNA 2-5-1 em comparação com a média das 10 replicações para cada combinação de (s, S) é mostrada na figura 4. Linhas pontilhadas representam a resposta da RNA e as linhas sólidas o resultado médio da simulação (média das replicações). Como pode ser visto, a RNA se adapta muito bem aos resultados da simulação. Figura 4: Simulação X RNA. A superfície sólida representa os resultados médios da simulação e a superfície tracejada representa os resultados da rede nn2-5-1 (resultados padronizados). Sobre o plano estão representadas curvas de nível indicando uma boa aproximação da resposta da RNA. 5. Metamodelagem linear e quadrática Como modelos alternativos, os metamodelos linear e quadráticos, com e sem interação foram computados. O resultado da análise da regressão linear dos dados padronizados com intervalo de confiança de 95% é: Av.total cost = [0.558, 0.658]s + [0.378, 0.478]S + [-0.041, 0.041] ENEGEP 2003 ABEPRO 5 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 Abaixo é mostrado o modelo quadrático sem interações: Av.total cost = [0.573, 0.643]s + [0.393, 0.463]S + [0.133, 0.204]s2 + [0.158, 0.210]S2 + [-0.399, -0,304] O modelo quadrático com interações resultou em: Av.total cost = [0.574, 0.641]s + [0.394, 0.461]S + [0.190, 0.273]s2 + [0.244, 0.339]S2+ [-0.235, -0.106]sS + [-0,304, 0.399] 6. Resultados e Comparações entre os Metamodelos A tabela 1 abaixo apresenta os resultados completos para os diferentes metamodelos. O tempo de processamento foi calculado para cada um dos diferentes metamodelos e para a simulação (2011µs ou ~2ms). Estes tempos foram calculados a partir da saída do comando UNIX time, que separa os tempos de usuário dos tempos de sistema, não havendo interferência do sistema operacional, sobre um processador Pentium II, 400MHz. Em cada coluna estão indicados: tempo de processamento, o erro em termos de percentual do desvio-padrão dos dados para o custo médio total e para o custo médio da falta do produto. Para a simulação, estes erros foram calculados pela média dos Desvios-padrão em cada ponto; para as regressões, este é o erro do modelo (raiz da média da soma dos erros quadráticos); para as RNAs este é o erro resultante do método 10-fold-cross-validation. Para o custo médio total, observa-se que o erro mínimo de uma regressão quadrática com interações é equivalente ao de uma rede nn2-4-1, ou seja, ambas ~26%. Redes maiores apresentam um erro menor. Ambos modelos alcançam resultados próximos do limite máximo de 21,37%, ainda que as redes sejam um pouco melhores (24,68% comparado com 26,07%). Estes resultados já eram esperados. Para o custo médio da falta de produto, porém, verificou-se que a regressão apresenta maiores dificuldades que as RNAs (21,67% comparado com 26,58%). Levando-se em conta que o limite é de 14,55%, a RNA atingiu um resultado significativamente melhor que a regressão. Metamodelo Clássico Simulação Regressão Linear Regressão Quadrática (s/ interações) Regressão Quadrática (c/ interações) Tempo de Processamento (µs) 2.011,00 0,075 0,109 0,128 Erro – Custo médio total (% σ) 21,37 38,87 27,03 26,07 Erro – Custo méd. falta (% σ) 14,55 54,24 28,04 26,58 Topologia da Rede 2-0-1 2-2-1 2-4-1 2-5-1 2-8-1 2-16-1 Tempo de Processamento (µs) 0,30 0,86 3,74 4,68 6,90 14,64 Erro – Custo médio total (% σ) 38,92 33,63 26,15 24,68 25,16 24,76 Erro – Custo méd. falta (% σ) 54,50 28,17 22,82 22,69 22,05 21,67 Tabela 1: Comparação entre os metamodelos investigados. Os resultados para o custo médio total estão resumidos na figura 5 (esquerda), que apresenta os resultados do desempenho de cada metamodelo. Cada X representa um metamodelo. O tempo de processamento necessário para o metamodelo processar os parâmetros da entrada e responder o custo médio total é indicado no eixo x em microsegundos. ENEGEP 2003 ABEPRO 6 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 O erro RMS do modelo em termos de porcentagem do desvio-padrão dos dados é indicado no eixo y. Deve-se sempre comparar os resultados com a média dos desvios-padrões em cada ponto, ou seja, 21,37% do desvio-padrão dos dados, que representa o limite de um metamodelo para estes dados. A curva exponencial é uma aproximação do comportamento da rede neural aproximada para mostrar as RNAs que apresentaram um rendimento acima da média. RNAs sob a curva têm um desempenho melhor do que acima dele, ou seja, onde a relação entre o tempo de processamento e o erro é melhor. Obviamente, isto depende do objetivo do estudo: tempo de processamento baixo ou erro pequeno, porém globalmente, abaixo da curva exponencial significa “melhor que a média das RNAs”. Como pode ser observado, os resultados das regressões por multinômios mostram um tempo de processamento menor que as RNAs, porém o modelo que apresenta o menor erro é a rede nn2-5-1, uma rede com os 5 neurônios na camada escondida. Por fim, para explicar a não adequação do modelo de regressão como metamodelo do custo médio da falta de produto, observando-se a figura 6 (direita), que apresenta este custo dependente das variáveis s e S, nota-se duas regiões: uma de baixa sensibilidade para valores altos de s e S e uma de alta sensibilidade para valores baixos. Tais planos combinados com regiões de alta sensibilidade não são adquados para serem modelados por multinômios, pois as funções não-lineares base destes não contém tais planos. Por outro lado, para as RNAs, cujas funções base são tangentes hiperbólicas, que contém regiões de baixa sensibilidade e regiões de alta sensibilidade, este tipo de superfície é facilmente modelada. Figura 5: Tempo de processamento X erro para cada metamodelo. Figura 6: Resultados da simulação para o custo médio da falta de produto. 6. Conclusão Ambos modelos clássicos e neurais apresentam vantagens e desvantagens. Enquanto os modelos clássicos, devido à simplicidade em termos de cálculo, são rápidos, apresentam erros superiores aos dos modelos neurais. O usuário deve assim optar por um ou por outro de acordo com suas necessidades. Importante para a exatidão do modelo são as características dos dados que estão sendo modelados. Dois critérios não quantificados neste artigo, a interpretabilidade dos modelos (incluindo o tamanho do modelo) e o tempo necessário para a aquisição do modelo, podem, dependendo da aplicação, serem importantes. A interpretabilidade dos modelos clássicos, considerando-se os modelos até segunda ordem, é relativamente trivial. Modelos mais complexos, como modelos de terceira ordem, porém, apresentam as mesmas dificuldades de interpretação que RNAs. Modelos clássicos podem ser obtidos a partir dos dados em menos de um segundo enquanto o treinamento de uma RNA demora da ordem de minutos. Aconselha-se assim que o usuário calcule em um primeiro momento os metamodelos clássicos para obter um modelo facilmente interpretável de seu processo e em seguida treine as RNAs para obter exatidão. ENEGEP 2003 ABEPRO 7 XXIII Encontro Nac. de Eng. de Produção - Ouro Preto, MG, Brasil, 21 a 24 de out de 2003 7. Agradecimentos Os autores gostariam de agradecer a UNISINOS, ao CNPq (projeto 3700011/01-0) e o Programa de Pós-Graduação em Computação Aplicada, Centro de Ciências Exatas e Tecnológicas pela sustentação financeira. 8. Referências ANDREWS, R., DIEDERICH, J., TICKLE, A. B. (1995), A Survey and Critique of Techniques for Extracting Rules from Trained Artificial Neural Networks. Technical report, Neurocomputing Research Centre, Queensland University of Technology, Box 2434 GPO Brisbane 4001, Queensland, Australia. AL-NASSAR, Y.N., SIDDIQUI, M., AL-GARNI, A.Z. (2000), Artificial neural networks in vibration control of rotor-bearing systems. Simulation Practice and Theory, 7:729–740. BADIRU, A., SIEGER, D. (1993), Neural network as a simulation metamodel in economic analysis of risky projects. Technical report, Department of Industrial Engineering, University of Oklahoma. BARTO, A.G., SUTTON, R.S., ANDERSON, C.W. (1983), Neuronlike adaptive elements that can solve difficulty learning control problems. IEEE Transactions on Systems, Man, and Cybernetics, 13:834–846. FRIJNS, J.H.M., BRIAIRE, J.J., SCHOONHOVEN, R. (2000), Integrated use of volume conduction and neural models to simulate the response to cochlear implants. Simulation Practice and Theory, 8:75–97. FISHWICK, P. (1989), Neural network models in simulation: a comparison with traditional modeling approaches. In Proceedings of the 1989 Winter Simulation Conference, pages 702–710. HORNIK, K., STINCHCOMBE, M., WHITE, H. (1989), Multilayer feedforward networks are universal approximators. Neural Networks, 2(5):359–366. HURRION, R.D. (1992), Using a neural network to enhance the decision making quality of a visual interactive simulation model. Journal of Operations Research Society, 4(43):333–341. JARMULAK, J., KERCKHOFFS, E.J.H. (1997), An experimentation environment for neural control of simulated systems. Simulation Practice and Theory, 5:639–651. KOSKO, B. (1992), Neural Networks and Fuzzy Systems : a Dynamical Systems Approach to Machine Intelligence. Prentice Hall, Inc., Englewood Cliffs. KILMER, R., SMITH, A. (1993), Using artificial neural networks to approximate a discrete event stochastic simulation model. LAW, A. M., KELTON, W. D. (1991), Simulation Modeling and Analysis. McGraw-Hill, Inc., New York, Lisbon, Singapore, Caracas. NARENDRA, K., PARTHASARATHY, K. (1991), Gradient Methods for the Optimization or Dynamical Systems Containing Neural Networks. IEEE Transactions on Neural Networks, 2(2):252–262. PIERREVAL, H., HUNTSINGER, R. (1992), An investigation on neural network capabilities as simulation metamodels. In Proceedings of the 1992 Summer Computer Simulation Conference, pages 413–417. SHUMAN, L.J., KILMER, R.A., SMITH, A.E. (1998), Computing confidence intervals for stochastic simulation using neural network metamodelos. submitted to Computers and Industrial Engineering, Special Issue on Computational Intelligence. ROBERT, L. C. (1995), An emergency department simulation and a neural network metamodel. Journal of the Society for Health Systems, Special Issue on Simulation. ENEGEP 2003 ABEPRO 8