Vous êtes sur la page 1sur 17

Rio de Janeiro, v.4, n.3, p.

339-355, setembro a dezembro de 2012

MODELOS DE SIMULAO A EVENTOS DISCRETOS COM ASPECTOS DE


DECISO HUMANA: UMA APLICAO COM O URURAU

David Vasconcelos Corra da Silva


Instituto Federal Fluminense (IFF)
davidcefet@yahoo.com.br

Joo Jose de Assis Rangel


Universidade Candido Mendes (UCAM-Campos)
joao@ucam-campos.br

talo de Oliveira Matias


Universidade Candido Mendes (UCAM-Campos)
italo@ucam-campos.br

Dalessandro Soares Vianna


Universidade Federal Fluminense (UFF)
dalessandro@ucam-campos.br

Tlio Almeida Peixoto


Universidade Candido Mendes (UCAM-Campos)
tulioap@gmail.com

Resumo

Este trabalho tem como objetivo empregar redes neurais artificiais para representar de modo mais
realstico aes provenientes de pessoas em modelos de simulao. Para isto, um mdulo com uma rede
neural artificial treinada (chamado de mdulo inteligente) substituiu uma tpica operao lgica de
deciso tradicionalmente utilizada nos modelos de simulao discreta. A respectiva deciso foi avaliada
em uma parte de um modelo de simulao hipottico onde ocorreria uma interveno proveniente da
ao de uma pessoa em uma situao normalmente tpica em sistemas a eventos discretos. Para
implementar o modelo de simulao com o mdulo inteligente, foram usados o ambiente de
desenvolvimento de modelos de simulao a eventos discretos Ururau e o software de criao e
treinamento de redes neurais artificiais JAVANNS. Os resultados obtidos demonstraram a possibilidade
do uso da abordagem proposta para representar certos aspectos de decises humanas de forma mais
realstica. Tal afirmativa pde ser avaliada com a similaridade dos resultados dos experimentos que
compararam diferentes maneiras utilizadas para realizar decises nos modelos de simulao discreta
construdos.
Palavras-chave: Simulao a eventos discretos, redes neurais artificiais, Ururau, deciso.

Abstract

This work aims to employ artificial neural networks in order to represent more realistic actions from
people in simulation models. For this, a module with a trained artificial neural network (called intelligent
module) replaced a typical logic operation of decision traditionally used in discrete simulation models.
The decision was evaluated in a part of a hypothetical simulation model which would occur an
intervention from the action of a person in a situation usually typical in systems discrete event. To
implement the simulation model with the intelligent module, we used the development environment of
discrete event simulation models Ururau and the software of creation and training of artificial neural
networks JAVANNS. The results showed the possibility of using the proposed approach to represent
certain aspects of human decisions more realistically. Such statement could be evaluated by the similarity
of the results of experiments comparing different ways used to make decisions in discrete simulation
models built.
Key words: Discrete event simulation, artificial neural networks, Ururau, decision.

Verso inicial submetida em 29/11/2011. Verso final recebida em 22/06/2012.


PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

1 INTRODUO

A simulao a eventos discretos comumente empregada para analisar sistemas


envolvendo aplicaes em manufatura e logstica. Isto ocorre, pois os ambientes de
desenvolvimento de modelos de simulao permitem uma modelagem rpida e com alto grau
de detalhes de aspectos relacionados natureza dinmica e estocstica de tais sistemas. Assim,
muitas empresas vm buscando implantar melhorias em seus processos produtivos, atravs da
experimentao computacional em modelos de simulao cada vez mais realsticos (BANKS et
al, 2010).
Na busca pelo desenvolvimento de modelos de simulao mais prximos realidade
dos sistemas representados, alguns pesquisadores vm buscando formas de melhorar a
modelagem com esta abordagem, ressalta Zlch (2006). Ou seja, gradativamente, aumenta-se o
interesse pela modelagem de decises humanas de modo mais detalhado e realstico. Contudo,
grande parte dos modelos de simulao ainda representa apenas os aspectos mais lgicos e
simples das aes provenientes de decises humanas (ROBINSON et al, 2001).
Nos casos onde somente os aspectos lgicos das decises so modelados, normalmente
so utilizados os tradicionais operadores lgicos, como: <, >, ==, AND, OR, XOR
e suas derivaes. Alm disso, em outros casos, utilizam-se apenas probabilidades obtidas em
dados histricos para representar as decises humanas. Essas formas de representao so
muitas vezes simplistas e pouco realistas (ZLCH, 2006).
Criar modelos de simulao com representaes realsticas das decises humanas
uma tarefa extremamente difcil segundo Zhao et al (2005). Para Robinson et al (1998), a
dificuldade de programar modelos de simulao com representao de decises humanas se
deve basicamente a dois fatores: Complexidade do pensamento humano e necessidade de
utilizao de recursos no triviais nos softwares de simulao.
Segundo Robinson et al (2001), a maioria dos softwares de simulao no fornecem
um conjunto necessrio de funes que seriam teis para modelar o comportamento humano.
Alm disso, na maioria dos softwares comerciais de simulao, o desenvolvimento de novos
recursos no trivial ou no permitido. Sendo assim, o uso de softwares de simulao que
permitam a insero de novos algoritmos e criao de novos recursos podem viabilizar a
construo de modelos de simulao que considerem aspectos mais realsticos das tomadas de
decises provenientes da ao de uma pessoa.
Diante deste contexto, este trabalho prope a utilizao de redes neurais artificiais para
representar o comportamento de aes de pessoas em modelos de simulao a eventos
discretos, nos casos onde normalmente no possvel determinar os aspectos lgicos da tomada
de deciso. Esta proposta foi implementada atravs da criao de um mdulo com aspectos de
inteligncia humana, capaz de representar, de forma mais realstica, as decises realizadas por
pessoas, acopladas a um ambiente de simulao a eventos discretos.

2 LINGUAGENS, AMBIENTES E BIBLIOTECAS USADAS EM SIMULAES A


EVENTOS DISCRETOS

Modelos de simulao a eventos discretos podem ser construdos usando linguagens de


programao de propsito geral (LPPG), como FORTRAN, C ou Java. Podem, ainda, ser
construdos usando as linguagens especficas de simulao, como SIMAN ou GPSS (LAW,
2007; BANKS et al 2010). Por outro lado, os modelos podem tambm serem construdos
usando os ambientes de desenvolvimento de modelos de simulao, como Arena, Promodel,
Simul8 ou tantos outros (LAW, 2007; BANKS et al 2010; CHWIF & MEDINA, 2010).
Segundo Sargent (2011), a construo de modelos de simulao usando linguagens de
simulao resulta em menos erros e na reduo do tempo de construo do modelo, contudo, as
LPPG oferecem maior flexibilidade ao modelador. Quanto aos modelos implementados em
ambientes de simulao, Law (2007) afirma que possuem um custo menor, so mais fceis de
modificar e de detectar erros quando comparados com modelos construdos em LPPG ou

340
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

linguagens de simulao.
Pode-se dizer que os ambientes de simulao e as linguagens de simulao possuem
diversas vantagens sobre as LPPG na construo de modelos de simulao. Contudo, h
situaes onde as LPPG so preferveis. Em alguns projetos de simulao, elas so adotadas,
principalmente, devido maior flexibilidade e ao menor tempo de execuo computacional do
modelo. Atualmente, diversos modelos de simulao ainda so implementados com LPPG,
principalmente em aplicaes militares (LAW, 2007).
As LPPG podem ainda ser potencializadas por bibliotecas de simulao, como DSOL,
JSL ou JAVASIM, que diminuem o tempo gasto na criao de modelos e reduzem o nmero de
erros. As bibliotecas de simulao so um conjunto de rotinas que oferecem recursos
especficos de simulao para as LPPG, tornando-as equivalentes s linguagens de simulao,
mas sem a interface grfica e as facilidades existentes nos ambientes de simulao (JACOBS et
al 2002; ROSSETTI, 2008; UCHA JNIOR, 2006).
Criar um modelo de simulao capaz de associar as facilidades de uso dos ambientes de
simulao com a flexibilidade das LPPG e tambm com as linguagens especficas de simulao
e, ainda, possibilitar a insero de novos algoritmos no uma tarefa trivial. Assim, diante da
necessidade de entender o funcionamento interno dos ambientes de simulao e de explorar
novos algoritmos, pesquisadores tm sido motivados a desenvolverem um ambiente de
simulao a eventos discretos com recursos grficos, cdigo aberto e alta flexibilidade, como o
Ururau (PEIXOTO et al, 2011).

3 O AMBIENTE URURAU

O Ururau um ambiente de desenvolvimento de modelos de simulao a eventos


discretos construdo com cdigo aberto e distribudo sob licena de software livre, o que
permite o uso acadmico, a explorao de algoritmos internos e a criao de novas
funcionalidades. Este ambiente utiliza recursos grficos para a criao de modelos de
simulao inspirados na simbologia da linguagem de modelagem IDEF-SIM, proposta por
Montevechi et al (2010). A Figura 1 apresenta a interface grfica do Ururau e seus recursos
bsicos: Menu principal; barra de ferramentas; elementos de modelagem; e navegador.

Figura 1: Interface grfica do Ururau

341
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

O Ururau livremente acessado em: https://bitbucket.org/tulioap/Ururau/downloads.


A Figura 1 tambm apresenta um pequeno modelo construdo na rea de trabalho e uma
janela aberta para configurar um dos elementos do modelo. Devido facilidade do usurio criar
e configurar elementos do modelo de modo grfico, o Ururau permite a criao de modelos de
modo simples, no sendo necessrio conhecimento de um LPPG ou linguagem de simulao.
Apesar dos modelos serem construdos graficamente pelos usurios, internamente ao
ambiente de desenvolvimento, os modelos grficos so convertidos em linhas de cdigos, e
estes so executados pelo ncleo do Ururau quando a simulao acionada pelo usurio. Na
Figura 2, que apresenta a estrutura do software, podem-se observar o ncleo e as demais partes
deste software.

Figura 2: Estrutura do Ururau

Como pode ser visto na Figura 2, o Ururau utiliza como base a linguagem de
programao Java e uma biblioteca de simulao chamada Java Simulation Library (JSL). Esta
biblioteca oferece diversos recursos essenciais de simulao que tornam o desenvolvimento de
modelos de simulao na linguagem Java mais rpidos (ROSSETTI, 2008). SILVA et al (2011)
comparam a biblioteca JSL com um ambiente de simulao amplamente utilizado e concluram
que o JSL possui resultados de simulao e desempenho computacional compatveis com
outros softwares de simulao comercial.
O Ururau utiliza o JSL internamente para executar simulaes a partir de um modelo
construdo graficamente, mas tambm permite que o usurio utilize a sintaxe desta biblioteca e
do ncleo do ambiente para construir ou editar modelos de simulao usando diretamente
linhas de cdigo. Neste caso, a modelagem pode ser feita com o apoio de uma ferramenta de
desenvolvimento Java, como NetBeans. A Figura 3 mostra o mesmo modelo do exemplo da
Figura 1 sendo construdo diretamente usando linhas de cdigo em Java.

Figura 3: Criao de modelo no Ururau usando linhas de cdigo

Como pode ser visto na Figura 4, a flexibilidade de criar e modificar modelos usando a
interface grfica ou linhas de cdigo ocorre em trs nveis diferentes:

342
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

Nvel alto: recursos de ambientes de simulao (Ururau GUI);


nvel intermedirio: recursos similares a linguagens de simulao (Ururau ncleo e
JSL); e
nvel baixo: recursos de LPPG (JAVA).

Figura 4: Possibilidades do Ururau

Por permitir a implementao nos trs nveis citados, pode-se dizer que o Ururau
possibilita a unio, em uma nica ferramenta, das vantagens dos ambientes de simulao,
linguagens de simulao e LPPG.

4 MODELOS DE SIMULAO COM REPRESENTAES DE DECISO


HUMANA

De acordo com Zlch (2006), a simulao de processos industriais se concentra


principalmente na modelagem de recursos (mquinas) e no fluxo de material, mas a incluso de
aspectos humanos no modelo de simulao vem ganhando importncia gradativamente.
Geralmente, quando os recursos humanos so modelados, apenas as tarefas operacionais esto
representadas. No entanto, como resultado de conceitos modernos de produo, as decises do
trabalhador em um nvel de cho de fbrica esto se tornando cada vez mais importantes.
Angeloni (2003) afirma que para o decisor fazer uma escolha adequada necessrio
dotar de significado dados, informaes e conhecimentos prvios. Para Francini (2002), a
principal vantagem competitiva das empresas se baseia no capital humano, fundamentalmente,
no conhecimento que os funcionrios possuem. Como o conhecimento a base para tomadas
de deciso, a criao de modelos de simulao, que incluem aspectos da deciso humana
baseadas em conhecimento, pode permitir uma anlise mais realstica do sistema em estudo.
Segundo Robinson et al (1998), muitos modelos de simulao incluem elementos de
tomada de deciso humana que apresentam dificuldades para o modelador de simulao. Essas
dificuldades so ocasionadas principalmente pela dificuldade natural de modelar decises
humanas baseadas em conhecimento e pela ausncia de recursos para modelagem de decises
humanas nos ambientes de simulao de eventos discretos.
Para Robinson et al (2001), a maioria das ferramentas de simulao no fornecem um
conjunto completo de funes que seriam teis para modelar o comportamento humano. Alm
disso, de um modo geral, os recursos disponveis nos ambientes de simulao para representar
tomadas de deciso so baseadas em condies. Tais condies so includas no modelo usando
as construes da linguagem de simulao ou simulador. Essa tarefa normalmente requer o uso
de uma srie de declaraes 'se', 'ento' e 'seno'.
A literatura trs alguns trabalhos contendo alternativas para a representao de tomadas
de deciso humana em modelos de simulao:
Robinson et al (1998) propem uma abordagem utilizando um sistema especialista
integrado com o modelo de simulao, onde um sistema especialista criado para
representar o tomador de deciso;
Zlch (2006) prope uma forma de modelagem e simulao de tomadas de
decises humanas em sistemas de manufaturas baseado em regras globais e
tambm locais;
Lee & Son (2008) descrevem um framework criado para representar o

343
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

comportamento de multides.
Sabe-se que o homem toma suas decises no somente pela lgica racional, mas
tambm pela intuio, conhecimento prvio e pode ainda ser influenciado pelo seu estado
emocional (QUELOPANA, 2003). As estratgias de representao de decises humanas em
simulaes geralmente esto ligadas identificao de regras lgicas (ROBINSON et al, 2001).
Tal abordagem privilegia bastante o aspecto lgico racional das decises, mas d pouca ou
nenhuma nfase intuio e ao conhecimento prvio.
Como o conhecimento dos funcionrios de uma empresa pode ser considerado um dos
maiores diferenciais competitivos da mesma, as abordagens de representao de decises
humanas em simulaes computacionais que privilegiem o conhecimento merecem uma
ateno especial (FRANCINI, 2002). Mas, como representar as decises humanas em
simulaes computacionais favorecendo o aspecto do conhecimento humano? Para responder
esse questionamento pode-se recorrer inteligncia artificial, mais especificamente a rede
neural artificial.

5 REDE NEURAL ARTIFICIAL (RNA)

Segundo Novais et al. (2008), a RNA busca a resoluo de problemas imitando o


comportamento interno do crebro humano. Dessa forma, a RNA representa de maneira
artificial os neurnios biolgicos e suas ligaes, formando uma rede de neurnios artificiais.
Assim com uma rede neural biolgica, uma rede neural artificial capaz de guardar
conhecimento. No caso das RNAs, esse conhecimento se d atravs da ponderao dos pesos
das conexes entre os neurnios de diferentes camadas (NOVAIS et al., 2008). A Figura 5
apresenta um exemplo de RNA.

Figura 5: Exemplo de rede neural artificial (adaptado de TAFNER et al, 1995)

Para guardar conhecimento, a RNA necessita ser treinada. Um das formas de


treinamento de RNA o aprendizado supervisionado. No aprendizado supervisionado, como o
prprio nome sugere, um instrutor confere o quanto a rede est prxima de uma soluo
aceitvel, adaptando, na concepo do treinamento, os pesos entre os neurnios, de modo a
prover uma menor diferena entre as sadas desejadas e a obtida (FREITAS et al, 2011).
Segundo Zuben (2003), uma RNA pode ser utilizada para representar decises humanas
privilegiando o conhecimento. Isso possvel devido ao modo como as RNA so treinadas
(aprendizado supervisionado), onde se utilizam amostras de entradas e sadas, nas quais o vetor
de entrada contm um conjunto conhecido de informaes usadas como insumo para as
decises e o vetor de sada contm as respectivas decises de uma pessoa.

6 MDULO COM INTELIGNCIA ARTIFICIAL

O mdulo para executar a RNA onde a deciso proveniente da ao de uma pessoa


pudesse ser representada durante uma simulao foi chamado de mdulo inteligente. A Figura 6
ilustra a abordagem proposta, onde pode ser visto que o modelo de simulao funciona de
forma acoplada ao mdulo inteligente. O modelo de simulao, no caso, desenvolvido e

344
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

executado no prprio ambiente do Ururau. Dessa forma, quando o modelo de simulao


executado, o Ururau envia os dados relacionados ao processo decisrio para o mdulo
inteligente. Ao receber os dados, o mdulo inteligente utiliza uma RNA previamente treinada
para retornar a deciso.

Figura 6: Abordagem proposta para simulao com representao de decises humanas

A abordagem proposta assemelha-se ao trabalho de Robinson et al (1998) por


demandar a criao de um sistema externo, mas diferencia-se pela estrutura e forma de
comunicao entre os modelos. A abordagem proposta por Robinson et al (1998) prev a
criao de um controlador de modelo responsvel por fazer o intermdio entre o modelo de
simulao e o sistema especialista, como pode ser visto na Figura 7.

Controlador de modelo
(Visual Basic)

Sistema especialista Modelo de simulao


(XpertRule) (Witness)

Figura 7: Comunicao entre o sistema especialista e modelo de simulao. Adaptado de ROBINSON et


al (1998)

Devido principalmente flexibilidade do Ururau, neste trabalho, a comunicao entre o


modelo de simulao e o mdulo inteligente acontece sem intermedirios. Espera-se, com isso,
que a construo de modelos seja mais fcil do que na abordagem proposta por Robinson et al
(1998). Alm disso, a ausncia de softwares intermedirios pode resultar em melhor
performance computacional durante a execuo da simulao. Esta questo pode ser de
interesse quando se realiza uma simulao de sistemas complexos e com muitas variveis.

7 AMBIENTE PARA EXECUO DO MDULO INTELIGENTE

O ambiente para desenvolvimento e execuo do mdulo inteligente foi composto pelo


modelo de simulao desenvolvido em Ururau e pelo software de criao e treinamento de
RNA denominado JAVANNS (FISCHER et al, 2001).
Optou-se pelo Ururau pela sua flexibilidade, comum aos softwares livres. Isto permitiu
realizar as adaptaes necessrias para que fossem implementadas diretamente no ncleo do
ambiente de simulao.
O JAVANNS, desenvolvido pela Universidade de Stuttgart, foi utilizado pela sua
facilidade de uso e pela possibilidade de gerao de cdigo fonte da RNA em C/C++ ou JAVA.
Tal caracterstica do JAVANNS explica, em parte, a escolha da linguagem C na programao do
mdulo inteligente. Alm disso, sabe-se que algoritmos implementados em C/C++ possuem
bom desempenho computacional.
Durante a implementao do mdulo inteligente, foram seguidas as seguintes etapas:

345
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

Adaptao do Ururau;
criao do modelo de simulao;
criao e treinamento da rede neural artificial; e
criao do mdulo de deciso com inteligncia artificial (mdulo inteligente).

As etapas esto detalhadas a seguir.

7.1 ETAPA 1: ADAPTAO DO URURAU

A adaptao no Ururau foi desenvolvida de modo a fornecer ao modelador a


possibilidade de interligar modelos de simulao com o mdulo inteligente de modo prtico e
transparente. Para isso, preciso chamar uma funo e passar os parmetros adequados. Como
mostra a Figura 8, a interligao do modelo de simulao e o mdulo inteligente esto
disponveis no nvel intermedirio (Ururau ncleo e JSL).

Figura 8: Interligao entre o Ururau e o mdulo inteligente

Para viabilizar esta interligao, fez-se necessrio adaptar o ncleo do Ururau. Foram
criadas rotinas internas de comunicao, baseadas em sockets TCP, que possibilitaram a
comunicao com o mdulo inteligente, como apresentado na Figura 9. Esta implementao
permite que o Ururau e o mdulo inteligente sejam executados em computadores diferentes,
interligados via rede ethernet.

Figura 9: Adaptao do Ururau

7.2 ETAPA 2: CRIAO DO MODELO DE SIMULAO

Para a elaborao do modelo de simulao, foi seguida a metodologia apresentada por


Banks et al (2010), com os seguintes passos especficos neste trabalho: Formulao e anlise
do problema hipottico; construo do modelo conceitual; verificao e validao;
experimentao; e interpretao e anlise dos resultados.
A partir da tcnica IDEF-SIM (MONTEVECHI et al, 2010), foi possvel construir o
modelo conceitual do processo com um aspecto visual de fcil entendimento e lgica
semelhante utilizada na programao do modelo computacional. O modelo conceitual foi
traduzido para o software Ururau para a realizao das simulaes computacionais.
Adicionalmente, utilizou-se a metodologia de trabalho proposta por Sargent (2011)
para a verificao e validao do modelo. A validao foi realizada atravs do uso de dados
determinsticos no modelo de teste, variaes sobre os dados de entrada e uso de rotinas de

346
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

rastreamento.
Convm ressaltar que o modelo computacional foi construdo aps o modelo conceitual
estar pronto, verificado e validado por completo. Para descrever a dinmica dos processos,
foram utilizadas funes de distribuio do tipo Normal. A funo Normal pode ser utilizada
sempre que a aleatoriedade for causada por vrias fontes independentes, agindo de forma
aditiva em torno de um ponto mdio (FREITAS FILHO, 2008). Assim, a funo Normal foi
empregada em processos que representaram aes repetitivas, com um ponto mdio bem
definido, no comprometendo assim a aleatoriedade do modelo de simulao.
A Figura 10 apresenta o modelo conceitual do sistema hipottico proposto. Observe os
trs elementos descritos nos quadrados com X. Estes so os pontos de deciso do modelo
onde ocorrem os desvios no fluxo das entidades. O primeiro elemento X (Deciso 1), mais
esquerda, representa uma deciso baseada em porcentagem, normalmente oriunda de dados
histricos de um processo. O segundo elemento X (Deciso 2) representa uma deciso com
controle oriundo de uma operao lgica tradicional para a tomada de deciso. J o terceiro e
ltimo X (Deciso 3), mais direita, o elemento com uma deciso proveniente da RNA que
busca representar melhor a ao de uma pessoa agindo no processo.

Figura 10: Modelo conceitual em IDEF-SIM com deciso 3 usando RNA

Da forma como foi idealizado o modelo da Figura 10, podem-se executar, em um


simples modelo de simulao a eventos discretos, as trs possibilidades para a tomada de
deciso. Assim, o modelo proposto permite a realizao de experimentos com o objetivo de
testar o mecanismo proposto com uma deciso mais realstica utilizando RNA. Ou seja, o
modelo hipottico permite confrontar o mecanismo proposto com os outros que so
normalmente utilizados em decises e normalmente parte integrante dos softwares de
desenvolvimento de modelos de simulao a eventos discretos.
Como pode ser observado na Figura 10, o fluxo inicia-se com a chegada das entidades
E1, sendo em seguida desprezadas vinte e cinco por cento. As demais entidades que seguem no
processo so encaminhadas para o processamento P1 ou para o estoque 1, de acordo com um
controle lgico. Em seguida, as entidades que continuam seguindo o fluxo so encaminhadas
para o processamento P2 ou para o estoque 2, de acordo com a deciso de um especialista. O
Quadro 1 apresenta o detalhamento do modelo proposto, e deve ser analisado em conjunto com
a Figura 10.
Ao trmino da criao do modelo conceitual, o mesmo foi implementado no Ururau,
como pode ser visto na Figura 11. Nesta tarefa, recursos dos trs nveis de interface do software
foram usados (ver Figura 4), o que facilitou e acelerou o desenvolvimento do modelo, mesmo
este tendo caractersticas especiais de representao de deciso humana.

7.3 ETAPA 3: CRIAO E TREINAMENTO DA REDE NEURAL ARTIFICIAL

No modelo idealizado, definiu-se que o operador tomaria suas decises com base nos
trs parmetros: Tamanho da fila P2, tempo de vida da entidade E1 e turno. Desta forma, criou-
se no JAVANNS uma RNA com trs neurnios na primeira camada, um para cada parmetro de

347
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

entrada, trs neurnios na camada oculta e um neurnio na camada de sada. A estrutura da


RNA pode ser vista na Figura 12.
Quadro 1: Detalhamento do Modelo conceitual

Cdigo Significado Descrio/Distribuio/Capacidade


E1 Entidade Distribuio: Exponencial(5) minutos;
Atributo: Tempo de vida Normal(6, 3) em horas.
Este atributo representa o tempo entre a criao da entidade
e sua entrada no sistema. Tal atributo pode ajudar a
controlar, por exemplo, a validade de um insumo perecvel;
P1 Processamento 1 Distribuio: Constante(50) minutos;
P2 Processamento 2 Distribuio: Normal(60; 0.2) minutos;
Recurso 1 Operador 1 Capacidade: 1;
Recurso 2 Operador 2 Capacidade: 1;
Controle 1 Controle lgico Descrio: Entidades seguem para P1 Se Fila de P1 < 2;
Refugo Descarte de Descrio: Sada do sistema;
insumo
Estoque 1 Armazenagem de Descrio: Sada do sistema;
no processados
Estoque 2 Armazenagem de Descrio: Sada do sistema;
pr processados
Produto Armazenagem de Descrio: Sada do sistema;
Pronto produtos prontos
Deciso Representao da Descrio: Para tomar essa deciso, o especialista baseia-se
humana deciso de um em trs informaes:
especialista, Tamanho da fila em P2;
baseada em RNA tempo de vida; e
Turno {manh, tarde ou noite}
manh: 05:00 s 12:59;
tarde: 13:00 s 20:59;
noite: 21:00 s 04:59;

Figura 11: Modelo em Ururau

348
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

Figura 12: RNA em JAVANNS

Para realizar o treinamento da RNA, criou-se um conjunto de dados contendo diversos


vetores com possveis valores de entrada para Fila, Tempo de vida e Turno e as
respectivas decises esperadas.
Para elaborar os experimentos, utilizou-se o algoritmo backpropagation para
treinamento da RNA. Foram testados alguns valores para os parmetros taxa de aprendizado
() e diferena mxima tolerada entre o valor de sada e valor desejado (dmax).
O parmetro taxa de aprendizado foi testado variando de 0,1 a 0,3, pois segundo Vieira
& Roisenberg (1998) deve ficar geralmente entre 0,1 0,3. Valores muito grandes para este
parmetro podem fazer o vetor gradiente ficar saltando de um lado para o outro na superfcie
de erros.
Para Diniz et al (2002), o valor tpico de dmax 0,1, e por esse motivo esse valor foi
utilizado. Testou-se tambm dmax igual a 0,5, pois no problema em questo a sada booleana,
logo aceitvel que valores menores que 0,5 sejam considerados com 0 e valores maiores que
0,5, considerados com 1. Os testes foram efetuados buscando um erro mdio quadrtico menor
que 0,01. A Tabela 1 apresenta o resultado dos testes.
Tabela 1: Testando parmetros do algoritmo backpropagation

dmax N mximo de ciclos


0,1 0,1 2300
0,2 0,1 1360
0,3 0,1 1200
0,1 0,5 2100
0,2 0,5 1240
0,3 0,5 1180

Com base nos testes, optou-se por utilizar o algoritmo backpropagation com os parmetros
= 0,3 e dmax = 0,1. A escolha da taxa de aprendizado fixada em 0,3 se deve aos melhores
resultados em relao aos outros valores testados. Fixou-se a distncia mxima tolerada em 0,1
para obter-se uma maior margem de confiabilidade nos experimentos, uma vez que valores
prximos a 0,5 poderiam levar a RNA a atuar de modo indesejado em alguns casos.

349
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

7.4 ETAPA 4: CRIAO DO MDULO DE DECISO COM INTELIGNCIA


ARTIFICIAL

Aps a criao e treinamento da RNA, o aplicativo SNNS2C (ZELL et al, 1996) foi
usado para gerar automaticamente o cdigo fonte em linguagem C da RNA treinada. O cdigo
gerado foi em seguida inserido em uma estrutura criada em linguagem C para controlar a
comunicao com o Ururau, usando sockets TCP. A Figura 13 apresenta a estrutura do mdulo
inteligente.

Figura 13: Estrutura do mdulo inteligente

8 EXPERIMENTOS E ANLISE DOS RESULTADOS

Todos os experimentos realizados foram executados com 10 replicaes com tamanho


de 2880 minutos cada, em um computador com processador Dual Core 1.8 Ghz e 2GB de
memria RAM.
Os experimentos foram divididos em dois grupos, de acordo com a seguinte finalidade:
grupo 1: verificao da viabilidade da RNA em representar decises humanas em modelos de
simulao; e grupo 2: verificao da eficcia da RNA em representar, mais realisticamente,
aes provenientes de decises humanas em modelos de simulao.

8.1 EXPERIMENTOS GRUPO 1

Foram construdos trs modelos de simulao, derivados do modelo hipottico da


Figura 10, para verificar a viabilidade do uso de RNA na representao de decises proveniente
da ao de uma pessoa. Tais modelos so semelhantes ao modelo hipottico, mas diferem na
estratgia de representao de decises humanas.
Como o uso de condies atualmente a forma mais usada para representar as decises
de pessoas (ZLCH, 2006), optou-se por criar um conjunto de regras para representar as
decises de uma pessoa fictcia em um processo industrial.
Desta forma, criou-se um conjunto de regras que poderiam representar as decises de
um operador fictcio:
Regra 1: Se o tamanho da fila F2 for menor que 4 ento a entidade E1 dever
seguir para o PROCESSAMENTO P2;
Regra 2: Se o tempo de vida da entidade E1 for maior ou igual a 3 ento a entidade
E1 dever seguir para o PROCESSAMENTO P2; e
Regra 3: Se o turno for manh ou tarde ento a entidade E1 dever seguir para o
PROCESSAMENTO P2;
Usando o conjunto de regras descritas acima, criou-se um modelo conceitual capaz de
representar as decises humanas usando condies, identificado como EXPERIMENTO 1,
mostrado na Figura 14. Tal modelo foi implementado e executado no Ururau. Os resultados da
simulao foram registrados e tambm foram coletados vetores com os valores de fila F2,
tempo de vida E1, turno e a respectiva deciso tomada durante a simulao.

350
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

Figura 14: "Deciso 3" usando condies EXPERIMENTO1

Utilizando-se dos resultados do EXPERIMENTO 1, calculou-se os percentuais de


entidades que seguiram para P2 e Estoque 2. Em seguida, implementou-se o EXPERIMENTO2
mostrado na Figura 15, que utiliza percentuais para representar as decises (62,1% para P2 e
37,9% para Estoque2). O EXPERIMENTO2 foi executado no Ururau e os resultados da
simulao foram registrados.

Figura 15: "Deciso 3" por percentual -EXPERIMENTO2

Finalmente, o EXPERIMENTO3 implementou o modelo conceitual apresentado na


Figura 10 utilizando os vetores de deciso, coletados durante a execuo do EXPERIMENTO1,
contendo os dados da fila F2, tempo de vida E1, turno e a respectiva deciso para treinar
a RNA. Usando o JAVANNS, treinou-se a RNA e utilizou-se o SNNStoC para gerar o cdigo
fonte na RNA treinada em linguagem C. Tal cdigo fonte foi inserido na estrutura do mdulo
inteligente e, finalmente, o EXPERIMENTO3 foi executado no Ururau em conjunto com o
mdulo inteligente.
Os resultados dos trs experimentos podem ser vistos no Quadro 2.
Quadro 2: Comparao entre experimentos 1, 2 e 3

Experimento1 Experimento2 Experimento3


Representao da deciso humana por: Condies Percentual RNA
Tempo mdio das entidades na fila P2 63,8767 min 13,2576 min 63,8762 min
Quantidade mdia de entidades na fila P2 0,793 unidades 0,157 unidades 0,793 unidades
Deciso 3: quantidade mdia de entidades
enviadas para PROCESSAMENTO P2 35,4 unidades 33,9 unidades 35,4 unidades
Deciso 3: quantidade mdia de
entidades enviadas para
ESTOQUE 2 21,6 unidades 23,1 unidades 21,6 unidades
Recurso R2 ocupado 73,73% 69,63 % 73,73%
Tempo computacional da simulao 0,722s 0,893 s 0,866 s

351
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

8.2 EXPERIMENTOS GRUPO 2

Para verificar se a RNA consegue representar mais realisticamente as tomadas de


decises, foram criados mais dois experimentos, seguindo os mesmos modelos conceituais.
Optou-se, nestes experimentos, por investigar situaes onde no possvel definir logicamente
a deciso resultante devido existncia de ambiguidades.
Para exemplificar um conjunto de regras ambguas, acrescentou-se uma nova regra
(Regra 4) ao conjunto de regras utilizado no EXPERIMENTO1:
Regra 1: Se o tamanho da fila F2 for menor que 4 ento a entidade E1 dever
seguir para o PROCESSAMENTO P2;
Regra 2: Se o tempo de vida da entidade E1 for maior ou igual a 3 ento a entidade
E1 dever seguir para o PROCESSAMENTO P2;
Regra 3: Se o turno for manh ou tarde ento a entidade E1 dever seguir para o
PROCESSAMENTO P2;
Regra 4: Se o tempo de vida da entidade E1 for menor que 3 ento a entidade E1
dever seguir para o ESTOQUE 2.
O novo conjunto de regras possui ambiguidades, pois podem ocorrer, por exemplo,
situaes onde as condies das regras 1 e 4 sejam satisfeitas simultaneamente. Contudo, as
decises resultantes das regras 1 e 4 so diferentes, logo, configura-se uma situao ambgua.
Outro exemplo so as regras 3 e 4 que tambm podem resultar em situaes ambguas.
Um voluntrio foi convidado para usar tais regras como base para decises e optar
livremente nos casos onde acontecerem ambiguidades. Dessa forma, para a criao do
EXPERIMENTO4, construiu-se um modelo de simulao no Ururau que permitia que o
voluntrio registrasse manualmente cada deciso tomada. Durante a execuo do
EXPERIMENTO4, foram coletados vetores contendo os dados da fila F2, tempo de vida
E1, turno e a respectiva deciso.
A partir dos vetores de dados coletados no EXPERIMENTO4, uma RNA foi
devidamente treinada e realizou-se o EXPERIMENTO5. Os resultados dos experimentos 4 e 5
podem ser vistos no Quadro 3.
Quadro 3: Comparao entre experimentos 4 e 5

Experimento4 Experimento5
Representao da deciso humana por: Voluntrio RNA
Tempo mdio das entidades na fila P2 88,754 min 88,754 min
Quantidade mdia de entidades na fila P2 1,189 unidades 1,189 unidades
Deciso 3: quantidade mdia de entidades enviadas
para PROCESSAMENTO P2 38,6 unidades 38,6 unidades
Deciso 3: quantidade mdia de entidades
enviadas para ESTOQUE 2 18,4 unidades 18,4 unidades
Recurso R2 ocupado 80,40% 80,40%
Tempo computacional da simulao 2200,361 s 2,428 s

Observa-se que na comparao quantitativa apresentada no Quadro 3 os valores obtidos


pelas decises do voluntrio foram realisticamente reproduzidas pela RNA.
Como os experimentos do GRUPO 2 no permitem uma abordagem usando condies,
optou-se por apresentar uma comparao qualitativa entre as trs formas de representao de
decises humanas abordadas nos cinco experimentos realizados, como pode ser visto no
Quadro 4.

352
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

Quadro 4: Comparao qualitativa entre formas de representao de decises humanas

Deciso Deciso Deciso


por Percentual por Condies por RNA
Representao de deciso humana. Pouco Realstica, mas no Realstica
realstica consegue representar
situaes ambguas ou
excessivamente complexas
Necessita compreender a lgica No Sim No
racional da tomada de deciso.
Vivel para modelar decises humanas No Sim Sim
realsticas.
Vivel para modelar decises humanas No No Sim
realsticas em problemas onde no
possvel determinar regras lgicas
usadas para a tomada de decises.

9 CONSIDERAES FINAIS

Os resultados obtidos com os experimentos possibilitaram avaliar a abordagem


proposta e demonstraram a viabilidade da aplicao de RNA para representar decises humanas
mais realsticas em modelos de simulao a eventos discretos. Ou seja, o mdulo inteligente
proposto e acoplado ao modelo de simulao pde reproduzir de maneira satisfatria as
decises idealizadas como sendo proveniente da ao de uma pessoa em um sistema tpico a
eventos discretos.
Observou-se que o tempo computacional da simulao com deciso por RNA foi
compatvel com os tempos computacionais dos demais experimentos, o que confirma a
viabilidade do uso de RNA para representar decises humanas em modelos de simulao a
eventos discretos.
Em relao ao Ururau, verificou-se sua grande flexibilidade. O fato da interface grfica
do software ser baseada na simbologia IDEF-SIM facilitou o aprendizado de seus recursos.
Alm disso, confirmou-se a utilidade do Ururau para uso acadmico, especialmente para a
experimentao de novos recursos, mdulos ou algoritmos.
A comunicao proposta entre o software Ururau e o mdulo inteligente usando sockets
TCP possibilita a execuo da RNA em mquinas remotas. Isto pode ser til em situaes que
exijam grande esforo computacional e processamento paralelo.

Agradecimentos

Os autores gostariam de agradecer ao Conselho Nacional de Desenvolvimento Cientfico e


Tecnolgico (CNPq) e Fundao de Amparo Pesquisa do Estado do Rio de Janeiro
(FAPERJ), pelo suporte financeiro para esta pesquisa.

REFERNCIAS BIBLIOGRFICAS

ANGELONI, M.T. (2003). Elementos Intervenientes na Tomada de Deciso. Cincia da Informao,


Braslia, V. 32, N. 1, 17-22.

BANKS, J.; CARSON, J.S.; NELSON, B.L.; NICOL, D.M. (2010). Discrete-Event System Simulation.
5. Ed. New Jersey: Prentice Hall, 2010.

CHWIF, L.; MEDINA, A.C. (2010). Modelagem E Simulao de Eventos Discretos, Teoria e Aplicaes.

353
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

3 Ed. So Paulo: Bravarte.

DINIZ, H.; MENDES FILHO, E.F.; CARVALHO, A.C.P.L.F. (2002). Stuttgart Neural Network
Simulator: Manual de Referncia Rpida. Laboratrio de Inteligncia Computacional da Universidade de
So Paulo, So Paulo, 57 P.

FISCHER, I.; HENNECKE, F.; BANNES, C.; ZELL, A. (2001). Janns: Java Neural Network Simulator
User Manual. University Stuttgart. Disponvel Em <Http://Www.Ra.Cs.Uni-
Tuebingen.De/Software/Javanns/Welcome_E.Html>

FRANCINI, W.S. (2002). A Gesto do Conhecimento: Conectando Estratgia e Valor Para a Empresa.
Rae-Eletrnica, Editora Fundao Getlio Vargas Escola de Administrao de Empresas de So Paulo,
V.1, N.2, Jul-Dez/2002. Disponvel em <Http://Rae.Fgv.Br/Rae-Eletronica/Vol1-Num2-2002>

FREITAS, C.S.; MARCELINO JNIOR, D.L.; TANAKA, L.C.; PIRES, D.L. (2011). Redes Neurais
Artificiais: Introduo e Estudo de Caso. Revista Eletrnica de Sistemas de Informao e de Gesto
Tecnolgica, Vol. 1, No 1.

FREITAS FILHO, P. J. (2008). Introduo Modelagem e Simulao de Sistemas: com Aplicaes em


Arena. 2 Ed. Florianpolis: Visual Books.

JACOBS, P.H.M.; LANG, N.A.; VERBRAECK, A. (2002). D-Sol: A Distributed Java Based Discrete
Event Simulation Architecture. In: Winter Simulation Conference, IEEE, San Diego, 793-800.

LAW, A. (2007). Simulation Modeling and Analysis. 4 Ed. New York: Mcgraw-Hill, 768 P.

LEE, S.; SON, Y.J. (2008). Integrated Human Decision Making Model Under Belief-Desire-Intention
Framework For Crowd Simulation. In: Winter Simulation Conference, IEEE, Miami, P. 886-894.

MONTEVECHI, J.A.B.; LEAL, F.; PINHO, A. F.; COSTA, R.F.S.; OLIVEIRA, M.M.; SILVA, A.L.F.
(2010). Conceptual Modeling in Simulation Projects by Mean Adapted Idef: An Application In A
Brazilian Tech Company. In: Winter Simulation Conference, IEEE, Baltimore, p. 1624-1635.

NOVAIS, A.; NOVAIS, F.; ARAJO, R.; NEVES, T. (2008). Redes Neurais Artificiais. Departamento de
Cincia da Computao, Instituto de Matemtica - Universidade Federal da Bahia, 15p. Disponvel:
https://Disciplinas.Dcc.Ufba.Br/Pub/Mata64/Semestrecorrente/Redes_Neurais.pdf

PEIXOTO, T. A.; RANGEL, J.J.A.; MATIAS, I.O. (2011). Ururau - Um Ambiente de Simulao a
Eventos Discretos. XLIII Simpsio Brasileiro de Pesquisa Operacional, Ubatuba - SP, P. 1-2.

QUELOPANA, E.M. (2003). Conhecimento e Deciso: Um Estudo Sobre a Relao entre o


Conhecimento e a Qualidade de Deciso. 155 F. Dissertao de Mestrado (Programa de Ps-Graduao
em Administrao) Faculdade de Economia, Administrao e Contabilidade da Universidade de So
Paulo - SP.

ROBINSON, S.; ALIFANTIS, T.; HURRION, R.; EDWARDS, J. S.; LADBROOK, J.; WALLER, T.
(2001). Modelling and Improving Human Decision Making With Simulation. In: Winter Simulation
Conference, IEEE, Arlington, P. 913-920.

ROBINSON, S.; EDWARDS, J.S.,YONGFA, W. (1998). An Expert Systems Approach to Simulating the
Human Decision Maker. In: Winter Simulation Conference, IEEE, Washington, p. 1541-1545.

ROSSETTI, M. D. (2008). Java Simulation Library (JSL): An Open-Source Object-Oriented Library for
Discrete-Event Simulation in Java. International Journal of Simulation and Process Modelling, Vol. 4, N.
1, p. 69-87.

SARGENT, R. G. (2011). Verification and Validation of Simulation Models. In : Proceedings of the 2011
Winter Simulation Conference, IEEE, Phoenix, p. 183-198.

354
PESQUISA OPERACIONAL PARA O DESENVOLVIMENTO

SILVA, D.V.C.; RANGEL, J.J.A.; PEIXOTO, T.A. (2011). Estudo Comparativo das Ferramentas JSL e
Arena para Simulao de Processos Job Shop. VII Encontro Mineiro de Engenharia de Produo, So
Joo Del Rei, p. 1-11.

TAFNER, M.; XEREZ, M.; RODRIGUES FILHO, I. (1995). Redes Neurais Artificiais : Introduo e
Princpios de Neurocomputao. Blumenau : Eko.

UCHA JNIOR, F. S. (2006). Uma Anlise Comparativa entre Ambientes de Simulao e Linguagens
de Propsito Geral para o Desenvolvimento de Simulaes. 82 F. Monografia (Programa de Graduao
em Engenharia da Computao) - Escola Politcnica de Pernambuco/Universidade de Pernambuco.

VIEIRA, R. C.; ROISENBERG, M. (1998). Redes Neurais Artificiais: Um Breve Tutorial. Laboratrio
de Conexionismo e Cincias Cognitivas da Universidade Federal de Santa Catarina (Ufsc), Florianpolis,
17 P.

ZHAO, X.; VENKATESWARAN, J.; SON, Y. (2005) Modeling Human Operator Decision-Making in
Manufacturing Systems Using BDI Agent Paradigm. In: Industrial Engineering Research Conference,
Atlanta, p. 1-6.

ZELL, A.; MAMIER, G.; VOGT, M. (1996). Snns: Stuttgart Neural Network Simulator - User Manual.
University Stuttgart. Disponvel em:
<http://Www.Ra.Cs.Uni-Tuebingen.De/Software/Snns/Welcome_E.Html

ZUBEN, F.J.V. (2003). Uma Caricatura Funcional de Redes Neurais Artificiais. Learning and Nonlinear
Models Revista da Sociedade Brasileira de Redes Neurais, Vol. 1, N 2, p. 66-76.

ZLCH, G. (2006). Modelling and Simulation of Human Decision-Making in Manufacturing Systems.


In: Winter Simulation Conference, IEEE, Monterey, P. 947-953.

355

Vous aimerez peut-être aussi