Alexandre Hideki Deguchi Martani
Dalton Vinicius Teixiera Pinto
Este laboratório tem como objetivo o estudo e compreensão de modelos de simulação. Foram escolhidos os modelos de abordagem por eventos e por atividades.
Os detalhes de cada implementação e os resultados obtidos estão devidamente comentados nos itens a seguir.
A descrição do problema apresentada no roteiro pode ser expressa segundo os diagramas de ciclos apresentados a seguir:
Diagrama de Ciclos de Cliente
Diagrama de Ciclos de Ligação
Diagrama de Ciclos de Caixa Eletrônico
Diagrama de Ciclos de Gerente
Diagrama de Ciclos de Operador de Caixa
Diagrama de Ciclos Integrado
Usando a modelagem por eventos, foram implementadas as classes CClient e CCall.
Cada objeto da classe CClient representa um cliente presencial que entrou no banco. Cada objeto da classe CCall representa uma ligação para o gerente.
As classes básicas não foram alteradas a partir do exemplo dado em classe. As classes CCall e CClient implementam a abordagem por eventos, sendo cada método representando um evento, ou uma subrotina de um evento. Os eventos são agendados e executados pela classe básica CEventExecutive.
Classe CCall:
-
ArriveCall: Trata a chegada de uma ligação; Se o gerente está livre, inicia o serviço e agenda o fim do serviço, caso contrário, coloca a ligação na fila de ligações. Também agenda a chegada da próxima ligação.
-
ScheduleEndCall: Verifica que o tempo que o cliente esperou é maior que o limite. Se for, termina a ligação imediatamente e registra um não atendimento; caso contrário, agenda o final do serviço.
-
EndCallService: Trata o final do serviço da ligação, coletando estatísticas.
-
EndCall: Encerra a ligação. Verifica se há outra ligação ou outro cliente na fila para o gerente, se houver, inicia o serviço do mesmo; caso contrário, coloca o gerente em estado livre.
-
ExecuteEvent: Classe de ajuda para roteamento dos eventos.
Classe CClient:
-
ScheduleEndATMService: Agenda o final do serviço no ATM.
-
ScheduleEndManagerService: Agenda o final do serviço no gerente.
-
ScheduleEndTellerService: Agenda o final do serviço no caixa.
-
ArriveClient: Trata a chegada de um cliente. Basicamente, decide para onde o cliente deseja ir e chama uma das funções GoTo*. Também agenda a chegada do próximo cliente.
-
GoToATM: Trata a ida do cliente ao ATM. Se o ATM estiver livre e sem fila, ele vai no ATM, caso contrário, ele entra no fim da fila.
-
GoToManager: Trata a ida do cliente ao gerente. Se o gerente estiver livre e sem fila e não tiver nenhuma ligação na fila, ele vai no gerente, caso contrário, ele entra no fim da fila.
-
GoToTeller: Trata a ida do cliente ao caixa. Se o caixa estiver livre e sem fila, ele vai no caixa, caso contrário, ele entra no fim da fila.
-
GoOut: Trata a saída do cliente, gerando estatística de tempo de permanência do cliente no sistema.
-
EndATMService: Trata o fim do serviço de ATM, onde o cliente pode decidir sair ou ir para o caixa ou ir para o gerente. Verifica a fila do ATM para a presença de outros clientes e processa o próximo, ou marca o ATM como livre.
-
EndManagerService: Trata o fim do serviço de gerente, depois do qual o cliente sai da agência. Verifica a fila de ligações e a de clientes no gerente e processa o próximo, ou marca o gerente como livre.
-
EndTellerService: Trata o fim do serviço de caixa, depois do qual o cliente sai da agência. Verifica a fila do caixa para a presença de outros clientes e processa o próximo, ou marca o caixa como livre.
-
ExecuteEvent: Classe de ajuda para roteamento dos eventos.
Os arquivos da modelagem por atividades estão em anexo, no arquivo .zip no qual este relatório foi entregue, a descrição de cada arquivo segue a seguir:
- EventApproach.cpp: Programa principal, no qual estão descritas as rotinas e classes especificas para a solução do problema na abordagem de eventos.
- Event.h: Biblioteca oferecida pelo professor para a realização do laboratório, tal biblioteca possui as classes básicas para a modelagem por eventos.
- Statistics.h: Biblioteca oferecida pelo professor que contém rotinas para o tratamento estatístico dos dados. Tal biblioteca foi ligeiramente modificada para facilitar a realização do laboratório.
- CLista: Biblioteca oferecida pelo professor, que contém a representação de listas usadas nos outros arquivos.
Observação: Para compilar e executar o laboratório, é necessário que exista a pasta output para que as saídas de debug sejam devidamente geradas sem que o programa pare de funcionar.
Usando a modelagem por atividades, foi implementada a classe CBank em C++.
Tal classe trata de todas as atividades realizadas para a simulação do funcionamento de um banco.
Tal classe CBank possui uma entidade CEntity, que pode ser um cliente ou uma chamada, a ser tratada adequadamente por cada atividade.
Assim, foi criado o executor CBankExecutor para gerenciar as atividades CBank.
Basicamente, o executor CBankExecutor possui as rotinas básicas para gerenciar a execução da atividades que ele possui. Assim sendo, ele executa o time scan e para cada periodo de tempo dado, as atividades são obtidas e executadas.
A execução de cada atividade ocorre através da rotina ExecuteActivity, que executa todas as atividades após, onde cada uma checa se deve realizar algo, ou não. Estas atividades são: ArriveClient, ArriveCall, StartManager, EndManager, StartCall, EndCall, StartTeller, EndTeller, StartATM e EndATM.
-
ArriveClient: Trata de enfileirar a chegada de um cliente, e agendar a chegada do próximo.
-
ArriveCall: Trata de enfileirar a chegada de uma chamada telefônica, e agendar a chegada da próxima.
-
StartManager: Trata de iniciar a execução do atendimento de um cliente pelo Gerente, agendando o termino do atendimento, se este estiver livre e não houver nenhuma chamada telefônica pendente.
-
EndManager: Trata de terminar execução do atendimento de clientes pelo Gerente, deixando o Gerente livre para realizar outras tarefas.
-
StartCall: Trata de iniciar a execução do atendimento de chamada telefônica pelo Gerente, agendando o termino do atendimento, se este estiver livre.
-
EndCall: Trata de terminar execução do atendimento de chamadas telefônicas pelo Gerente, deixando-o livre para realizar outras tarefas.
-
StartTeller: Trata de iniciar a execução do atendimento de um cliente pelo Operador de Caixa, agendando o termino do atendimento, se este estiver livre.
-
EndTeller: Trata de terminar execução do atendimento de cliente pelo Operador de Caixa, deixando-o livre para atender um novo cliente.
-
StartATM: Trata de iniciar a execução do atendimento de um cliente pelo Caixa Eletrônico, agendando o termino do atendimento, se este estiver livre.
-
EndATM: Trata de terminar execução do atendimento de cliente pelo Caixa Eletrônico, deixando-o livre para atender um novo cliente. Tal atividade também reencaminha o cliente para próximo atendimento, se necessário (Gerente ou Operador d Caixa).
Os arquivos da modelagem por atividades estão em anexo, no arquivo .zip no qual este relatório foi entregue, a descrição de cada arquivo segue a seguir:
- ActivityApproach.cpp: Programa principal, no qual estão descritas as rotinas e classes especificas para a solução do problema na abordagem de atividades.
- Activity.h: Biblioteca oferecida pelo professor para a realização do laboratório, tal biblioteca possui as classes necessárias para a implementação das classes específicas do executor, atividade além de conter a classe CEntity, usda para modelar os clientes e chamadas.
- Statistics.h: Biblioteca oferecida pelo professor que contém rotinas para o tratamento estatístico dos dados. Tal biblioteca foi ligeiramente modificada para facilitar a realização do laboratório.
- CLista: Biblioteca oferecida pelo professor, que contém a representação de listas usadas pela biblioteca Activity.h.
Observação: Para compilar e executar o laboratório, é necessário que exista a pasta output para que as saídas de debug sejam devidamente geradas sem que o programa pare de funcionar.
A execução desta modelagem para foi feita para os períodos de 6 meses, 1 ano, 2 anos, 5 anos e 10 anos.
Os resultados resumidos de cada período são dados pelas tabelas a seguir:
Abordagem de eventos
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
ATM Duration | 8639 | 4.139626 | 1.856091 | 0.201708 | 11.671191 |
ATM Wait | 8640 | 3.615144 | 5.233116 | 0.000000 | 45.755213 |
Call Duration | 4856 | 5.491084 | 2.604546 | 1.000275 | 9.997803 |
Call Wait | 6000 | 5.770160 | 4.418497 | 0.000000 | 22.094143 |
Call in System | 5999 | 9.746281 | 3.714657 | 1.047243 | 19.759047 |
Calls Attended | 6000 | 0.809500 | 0.392728 | 0.000000 | 1.000000 |
Client Wait | 14855 | 10.317207 | 29.185992 | 0.000000 | 361.870354 |
Client in System | 12290 | 19.607746 | 33.984445 | 0.205717 | 393.747934 |
Manager Duration | 2582 | 10.115257 | 3.970364 | 0.250733 | 24.764223 |
Manager Wait | 2582 | 42.971469 | 58.970911 | 0.000000 | 361.870354 |
Teller Duration | 3633 | 7.114611 | 2.876479 | 0.205717 | 16.965734 |
Teller Wait | 3633 | 3.048428 | 5.441702 | 0.000000 | 51.844464 |
Abordagem de atividades
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
atm duration | 8568 | 4.165867 | 1.882081 | 0.202444 | 11.403990 |
atm wait | 8569 | 3.630753 | 5.361806 | 0.000000 | 42.128952 |
call duration | 4683 | 5.509418 | 2.597591 | 1.000407 | 9.995993 |
call in system | 4683 | 9.647131 | 4.116738 | 1.004345 | 19.684191 |
call wait | 5993 | 6.071159 | 4.734937 | 0.000000 | 30.133119 |
calls attended | 5993 | 0.781579 | 0.413209 | 0.000000 | 1.000000 |
client in system | 12207 | 18.914280 | 27.463958 | 0.202444 | 304.283557 |
client wait | 14789 | 9.751271 | 22.949312 | 0.000000 | 270.117981 |
manager duration | 2485 | 9.966270 | 3.869498 | 0.250387 | 25.282985 |
manager wait | 2485 | 40.866090 | 42.751382 | 0.000000 | 270.117981 |
teller duration | 3735 | 7.020002 | 2.941426 | 0.209480 | 18.358931 |
teller wait | 3735 | 3.091672 | 5.419531 | 0.000000 | 44.117299 |
Abordagem de eventos
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
ATM Duration | 17039 | 4.136116 | 1.866040 | 0.201708 | 11.671191 |
ATM Wait | 17039 | 3.572752 | 5.250746 | 0.000000 | 45.755213 |
Call Duration | 9797 | 5.451216 | 2.584267 | 1.000000 | 9.998627 |
Call Wait | 12068 | 5.701660 | 4.406541 | 0.000000 | 22.094143 |
Call in System | 12068 | 9.671804 | 3.686608 | 1.001099 | 19.830034 |
Calls Attended | 12068 | 0.811816 | 0.390875 | 0.000000 | 1.000000 |
Client Wait | 29203 | 8.837090 | 23.547547 | 0.000000 | 361.870354 |
Client in System | 24218 | 17.747999 | 27.856636 | 0.202919 | 393.747934 |
Manager Duration | 5007 | 10.133043 | 3.914927 | 0.210398 | 24.764223 |
Manager Wait | 5008 | 35.389655 | 47.470118 | 0.000000 | 361.870354 |
Teller Duration | 7156 | 7.062615 | 2.881191 | 0.205174 | 18.595667 |
Teller Wait | 7156 | 2.789549 | 4.942664 | 0.000000 | 51.844464 |
Abordagem de atividades
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
atm duration | 16972 | 4.139690 | 1.868442 | 0.201759 | 11.420893 |
atm wait | 16973 | 3.575153 | 5.288062 | 0.000000 | 42.662593 |
call duration | 9442 | 5.481248 | 2.582245 | 1.000407 | 9.998804 |
call in system | 9442 | 9.752509 | 4.087556 | 1.004345 | 19.684191 |
call wait | 12261 | 6.281415 | 4.776826 | 0.000000 | 31.315765 |
calls attended | 12261 | 0.770084 | 0.420796 | 0.000000 | 1.000000 |
client in system | 24342 | 19.636214 | 30.489836 | 0.202444 | 331.357688 |
client wait | 29422 | 10.358609 | 25.812424 | 0.000000 | 310.274037 |
manager duration | 4938 | 10.127063 | 3.809828 | 0.215727 | 26.741799 |
manager wait | 4939 | 44.560014 | 49.211696 | 0.000000 | 310.274037 |
teller duration | 7509 | 7.052402 | 2.916333 | 0.209480 | 18.358931 |
teller wait | 7510 | 3.196804 | 5.482631 | 0.000000 | 44.117299 |
Abordagem de eventos
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
ATM Duration | 34260 | 4.141231 | 1.862733 | 0.200389 | 12.275606 |
ATM Wait | 34261 | 3.495694 | 5.013987 | 0.000000 | 45.755213 |
Call Duration | 19637 | 5.474041 | 2.586310 | 1.000000 | 9.998627 |
Call Wait | 24171 | 5.719821 | 4.406592 | 0.000000 | 22.094143 |
Call in System | 24170 | 9.706560 | 3.687666 | 1.001099 | 19.883716 |
Calls Attended | 24171 | 0.812461 | 0.390352 | 0.000000 | 1.000000 |
Client Wait | 58706 | 8.600135 | 21.522326 | 0.000000 | 361.870354 |
Client in System | 48570 | 17.498326 | 25.728048 | 0.202919 | 393.747934 |
Manager Duration | 9940 | 10.118849 | 3.878482 | 0.210398 | 24.764223 |
Manager Wait | 9940 | 34.525703 | 42.464225 | 0.000000 | 361.870354 |
Teller Duration | 14504 | 7.071964 | 2.878086 | 0.205174 | 18.595667 |
Teller Wait | 14505 | 2.890594 | 5.001483 | 0.000000 | 51.844464 |
Abordagem de atividades
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
atm duration | 33922 | 4.137965 | 1.864010 | 0.201759 | 12.181896 |
atm wait | 33923 | 3.465512 | 5.026479 | 0.000000 | 42.662593 |
call duration | 18740 | 5.483480 | 2.590704 | 1.000407 | 9.998804 |
call in system | 18740 | 9.696642 | 4.124551 | 1.003388 | 19.755275 |
call wait | 24255 | 6.208387 | 4.777759 | 0.000000 | 34.377662 |
calls attended | 24255 | 0.772665 | 0.419119 | 0.000000 | 1.000000 |
client in system | 48581 | 18.613225 | 28.206896 | 0.202444 | 331.357688 |
client wait | 58698 | 9.529119 | 23.746118 | 0.000000 | 310.274037 |
manager duration | 9808 | 10.100937 | 3.877793 | 0.203189 | 26.832446 |
manager wait | 9808 | 40.306494 | 45.905201 | 0.000000 | 310.274037 |
teller duration | 14966 | 7.049603 | 2.899892 | 0.209480 | 19.112613 |
teller wait | 14967 | 3.103734 | 5.290912 | 0.000000 | 44.117299 |
Abordagem de eventos
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
ATM Duration | 84895 | 4.138439 | 1.861361 | 0.200389 | 12.275606 |
ATM Wait | 84895 | 3.479821 | 5.075014 | 0.000000 | 62.147405 |
Call Duration | 48670 | 5.492334 | 2.588744 | 1.000000 | 9.999725 |
Call Wait | 60075 | 5.745037 | 4.419408 | 0.000000 | 22.706387 |
Call in System | 60075 | 9.726180 | 3.680051 | 1.001099 | 19.957843 |
Calls Attended | 60075 | 0.810154 | 0.392182 | 0.000000 | 1.000000 |
Client Wait | 146342 | 8.647497 | 21.369220 | 0.000000 | 361.870354 |
Client in System | 121008 | 17.575396 | 25.599604 | 0.200585 | 393.747934 |
Manager Duration | 24935 | 10.091036 | 3.882068 | 0.203520 | 26.212716 |
Manager Wait | 24936 | 34.698061 | 41.688126 | 0.000000 | 361.870354 |
Teller Duration | 36510 | 7.075288 | 2.882096 | 0.201974 | 18.609883 |
Teller Wait | 36511 | 2.871510 | 4.956885 | 0.000000 | 51.844464 |
Abordagem de atividades
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
atm duration | 84436 | 4.140969 | 1.862674 | 0.200681 | 12.181896 |
atm wait | 84436 | 3.464934 | 5.021251 | 0.000000 | 50.108404 |
call duration | 46633 | 5.499744 | 2.585519 | 1.000033 | 9.999463 |
call in system | 46633 | 9.738059 | 4.099945 | 1.000368 | 19.975167 |
call wait | 60367 | 6.236943 | 4.785335 | 0.000000 | 48.987263 |
calls attended | 60367 | 0.772492 | 0.419227 | 0.000000 | 1.000000 |
client in system | 121104 | 18.726493 | 28.595492 | 0.200681 | 346.831674 |
client wait | 146340 | 9.609135 | 24.112179 | 0.000000 | 342.918013 |
manager duration | 24622 | 10.103307 | 3.863379 | 0.203189 | 26.832446 |
manager wait | 24623 | 40.511503 | 46.656190 | 0.000000 | 342.918013 |
teller duration | 37281 | 7.061668 | 2.895419 | 0.209480 | 21.990956 |
teller wait | 37281 | 3.114749 | 5.385363 | 0.000000 | 53.848460 |
Abordagem de eventos
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
ATM Duration | 170000 | 4.139222 | 1.861857 | 0.200389 | 12.275606 |
ATM Wait | 170001 | 3.463017 | 5.041185 | 0.000000 | 62.147405 |
Call Duration | 97745 | 5.499256 | 2.595543 | 1.000000 | 9.999725 |
Call Wait | 120626 | 5.742840 | 4.414164 | 0.000000 | 25.362012 |
Call in System | 120626 | 9.731761 | 3.687520 | 1.001099 | 19.957843 |
Calls Attended | 120626 | 0.810315 | 0.392054 | 0.000000 | 1.000000 |
Client Wait | 293180 | 8.812452 | 21.723697 | 0.000000 | 361.870354 |
Client in System | 242159 | 17.800709 | 26.021631 | 0.200585 | 393.747934 |
Manager Duration | 49855 | 10.097285 | 3.876240 | 0.203520 | 27.549700 |
Manager Wait | 49856 | 35.653974 | 42.199434 | 0.000000 | 361.870354 |
Teller Duration | 73322 | 7.091266 | 2.879944 | 0.201974 | 19.403691 |
Teller Wait | 73323 | 2.964331 | 5.174088 | 0.000000 | 59.846575 |
Abordagem de atividades
Grandeza | Total | Média | Desvio Padrão | Valor Mínimo | Valor Máximo |
---|---|---|---|---|---|
atm duration | 169735 | 4.140539 | 1.865045 | 0.200062 | 13.267173 |
atm wait | 169736 | 3.494541 | 5.040700 | 0.000000 | 53.240260 |
call duration | 93191 | 5.493792 | 2.592358 | 1.000033 | 9.999874 |
call in system | 93191 | 9.732696 | 4.105017 | 1.000119 | 19.975167 |
call wait | 120471 | 6.232930 | 4.790617 | 0.000000 | 48.987263 |
calls attended | 120471 | 0.773564 | 0.418526 | 0.000000 | 1.000000 |
client in system | 242512 | 18.733024 | 28.397076 | 0.200681 | 434.647716 |
client wait | 293238 | 9.608537 | 23.912859 | 0.000000 | 406.266082 |
manager duration | 49413 | 10.099489 | 3.879874 | 0.203189 | 26.832446 |
manager wait | 49413 | 40.455321 | 46.037706 | 0.000000 | 406.266082 |
teller duration | 74089 | 7.066864 | 2.895610 | 0.200799 | 21.990956 |
teller wait | 74089 | 3.042558 | 5.303020 | 0.000000 | 53.848460 |
- call wait: Tempo de espera de chamadas
- call in system: Tempo que as chamadas ficam no sistema
- call duration: Duração do atendimento de cada chamada
- call attended: Atendimentos de chamada (valor 1 para chamada atendida, valor 0 para chamada não atendida, sendo que o total é o numero de chamadas)
- client wait: Tempo de espera do cliente, para cada atendimento, independente de qual
- client in system: Tempo que cada cliente fica no sistema
- manager wait: Tempo de espera do cliente aguardando o gerente
- manager duration: Duração do atendimento do cliente pelo gerente
- teller wait: Tempo de espera do cliente aguardando o operador de caixa
- teller duration: Duração do atendimento do cliente pelo operador de caixa
- atm wait: Tempo de espera do cliente aguardando o caixa eletrônico
- atm duration: Duração do atendimento do cliente pelo caixa eletrônico
Pode-se perceber que em todos os dados, tem-se uma convergência rápida, sendo que eles diferem pouco. Isso pode denotar que a aproximação obtida é boa.
Ainda assim, alguns dos dados apresentam comportamento estranho, como os valores de manager wait (Espera do cliente para atendimento com gerente). Porém este tipo de resultado é facilmente entendido ao olharmos os valores máximos, que são extremamente altos. Isso significa que apesar da grande maioria dos valores estarem concentrados perto de valores relativamente baixos, existem valores extremos muito grandes, que fazem com que o desvio padrão seja bem elevado.
A dificuldade da abordagem de eventos é a grande quantidade de casos que precisam ser tratados em cada evento. Adicionar mais uma condição, por exemplo, mais um tipo de cliente que visita o gerente, requer alterações em diversos pontos do código.
Já na abordagem por atividades tem-se grande facilidade em adicionar novas atividades, basta adicionar uma rotina simples a mais para que cada uma seja tratada adequadamente, com o devido cuidado de fazer as checagens de tipo de atividade e tempo. A desvantagem é a grande quantidade de verificações de tipo de atividade e de tempo, presente em praticamente todos os métodos. Nesta abordagem, há uma quantidade muito maior de chamadas de métodos, que são descartados nessa verificação. Porém, tais chamadas consomem tempo de programação e de processamento.
Em ambos os métodos, nota-se a existência do acoplamento entre as classes, pois por exemplo, ao fazer com que o gerente atenda prioritariamente chamadas telefônicas, é preciso que a rotina de atendimento ao cliente esteja programada adequadamente, fazendo com que o atendimento não seja realizado se houver chamada telefônica em espera. Este tipo de raciocínio é sutil, mas causa grandes problemas e é difícil de ser notado.
Assim como o esperado, ambas implementações trouxeram valores muito próximos, como exemplo temos a espera por atendimento no caixa eletrônico para o período de 10 anos: por atividade obteve-se 3.49 mins com desvio padrão de 5.04 mins, já na abordagem por eventos obteve-se 3.46 mins com desvio padrão de 5.04 mins.
Alguns poucos valores apresentaram uma diferença um pouco maior, como a espera por atendimento do gerente no período de 10 anos: por atividade obteve-se 40.45 mins com desvio padrão de 46.04 mins, já para eventos, obteve-se 35.65 mins com desvio padrão de 42.20 mins. A primeira vista, estes dados parecem ruins pela distância da ordem de 10%, porém nota-se que o desvio padrão é muito grande, tornando-os compatíveis ainda assim. Esse grande desvio padrão é devido a presença de alguns poucos valores muito altos no conjunto de amostras, no caso de atividades, obteve-se um valor máximo de 406.26 mins e no de eventos um valor máximo de 361.87, assim variações nesses campos são totalmente compreensíveis e esperadas.
Com a realização deste laboratório, pode-se compreender melhor as possíveis implementações de modelos de simulações.
Os resultados obtidos foram coerentes com o esperado, uma vez que, para abordagens diferentes, foi possível obter valores bem próximos para cada grandeza estudada. Em algumas grandezas, o valores não foram tão próximos quanto o esperado, porém tal resultado é facilmente compreendido quando se observa que estes estão dentro da faixa determinada pelo desvio padrão.
Além disso, foi possível comparar as vantagens e desvantagens de cada um dos modelos de simulações utilizado, tornando possível uma escolha mais consciente do modelo que será adotado em trabalhos futuros.