Escolar Documentos
Profissional Documentos
Cultura Documentos
10 - Teoria da filas 28
11 - Simulação de Sistemas 37
1
1 - Origens da pesquisa operacional
A pesquisa operacional (P.O.) surgiu durante a Segunda Grande Guerra com o objetivo de
resolver problemas de operações militares. Grupos de pesquisadores trabalhavam na
determinação da melhor forma de utilização de recursos limitados.
A partir de então, a pesquisa operacional se difundiu, saindo da área militar e indo para a
área civil, sendo hoje um ramo da ciência administrativa. Um fator que acelerou substancialmente
a generalização de seu uso foi o desenvolvimento dos computadores, que vem tornando cálculos
e manipulação de dados cada vez mais velozes. A chegada dos computadores pessoais ajudou
ainda mais a difusão de técnicas de pesquisa operacional.
Aplicações de pesquisa operacional na mineração começaram a surgir no final da década
de 50 e início da década de 60. Apesar disso, as aplicações na mineração, são ainda hoje,
relativamente tímidas se comparadas a outros tipos de indústria. Enquanto o mundo tem mostrado
um crescente interesse na aplicação de pesquisa operacional, na área mineral este crescimento
ainda pode ser considerado um tanto quanto tímido.
Em um trabalho de pesquisa sobre aplicações de técnicas de P.O. na mineração, Topuz e
Duan (1989), constataram que aplicações envolvendo técnicas de otimização predominavam se
comparadas às aplicações envolvendo programação e processos estocásticos. como pode ser
verificado pelo gráfico apresentado na figura 1. Apesar desse estudo ter mais de 12 anos ainda
hoje o uso de técnicas determinísticas predomina sobre as técnicas estocásticas. Porém, o uso de
técnicas como a simulação tem aumentado significativamente na última década.
25
PNL - Programação não linear
PL - Programação linear
20 GF- Grafos e redes
PD - Programação dinâmica
15 PI - Programação inteira
PIM - Programação inteira mista
10 PM - Programação de metas
PE - Programação estocástica
5 TF - Teoria das filas
PS - Processos estocásticos
TD - Teoria da decisão
0
PNL PL GF PD PI PIM PM PE TF PS TD
2
Pinto (1999) e Merschmann (2002) realizaram uma extensa revisão bibliográfica sobre
aplicações de P.O. na mineração. O enfoque central deste curso será a respeito do uso das
seguintes técnicas de pesquisa operacional: programação linear, programação inteira mista, teoria
das filas e simulação.
Uma decisão pode ser considerada como uma seqüência de ações a serem tomadas
visando a solução de um problema.
Segundo Andrade (1999), todo processo decisório pode ser considerado como sendo um
processo seqüencial, complexo, que envolve valores subjetivos e que segue regras definidas. A
complexidade dos processos decisórios pode variar de acordo com o tamanho do grupo que toma
a decisão, com os tipos de sistemas de informação gerencial, com os tipos de decisão a serem
tomadas, com o estilo de liderança que predomina na empresa e com o nível da decisão.
Em relação ao nível, as decisões podem ser classificadas segundo seu nível estratégico e
seu grau de estruturação, conforme mostrado a seguir.
3
Algumas técnicas de P.O. utilizadas para auxílio à tomada das decisões mostradas na
figura 2:
(1) - Programação linear, programação inteira mista, programação dinâmica, teoria das
filas, etc.
(2) - Simulação, análise de risco, teoria de jogos, etc.
Pode-se dizer que uma decisão racional garante o alcance dos objetivos preestabelecidos.
O que impede, então, que decisões racionais sempre sejam tomadas? Talvez esta resposta seja
dividida em duas partes: a primeira diz respeito à escolha do problema a se resolver e a segunda
ao grau de conhecimento das ferramentas adequadas à resolução do problema. Grande parte das
vezes, existe dificuldades em se encontrar qual a questão certa a ser respondida. As pessoas, e
por conseqüência os tomadores de decisão, às vezes se preocupam muito mais em encontrar
respostas certas para problemas errados, do que encontrarem efetivamente o problema certo a
ser resolvido. O pouco domínio de ferramentas adequadas também se torna um obstáculo no
alcance de decisões racionais. A P.O. fornece ferramentas que auxiliam a busca de decisões
racionais. Assim, a P.O. pode ser vista por dois enfoques distintos:
Enfoque quantitativo: visa aplicar métodos matemáticos e estatísticos para resolver
problemas de tomada de decisão. É este o enfoque mais tradicional.
Enfoque qualitativo: se preocupa com a metodologia de formulação dos problemas. “Na
abordagem qualitativa, o enfoque central é deslocado do método de solução (geralmente um
algoritmo matemático complexo) para a formulação e modelagem, ou seja, para o diagnóstico do
problema. [ Andrade (1999)].
1 - Aspecto multidisciplinar
2 - Uso de modelos
4
1 - Definição detalhada do problema a ser resolvido;
2 - Construção do modelo representativo do sistema;
3 - Solução do modelo;
4 - Verificação e validação do modelo;
5 - Implementação dos resultados obtidos.
Como pode ser observado através das etapas de um estudo de P.O., a base do estudo se
concentra num modelo que representa o sistema a ser estudado. Por isso, o conhecimento de
modelagem de sistemas é fundamental.
3 - Um modelo é uma representação da realidade que é planejado para ser usada por alguém
responsável pelo gerenciamento ou entendimento da realidade.
De acordo com esta definição o modelo só seria usado por pessoas do alto escalão da empresa.
4 - Um modelo é uma representação da realidade que é planejado para ser usado por alguém no
entendimento, mudança, gerenciamento e controle desta realidade.
Esta definição esbarra com a “visão do mundo” de cada pessoa. Se um modelo reflete a visão de
mundo do analista, então, podem existir diferentes modelos para representar uma mesma
realidade. Além disso, nenhum modelo é completo, pois se o fosse, seria a própria realidade.
5 - Um modelo é a representação de parte da realidade vista pelas pessoas que desejam usá-lo
para entender, mudar, gerenciar e controlar aquela parte da realidade.
5
Esta definição esbarra ainda, na subjetividade humana relativa aos seus arranjos mentais
implícitos e internos.
Redução
Realidade Modelo
das var
Figura 3 - Modelo X Realidade
Enquanto nos modelos de otimização a análise é feita por métodos analíticos nos modelos de
simulação a análise é feita por métodos numéricos. Os modelos de otimização são solucionados,
enquanto os de simulação são rodados visando a análise de um determinado cenário. Sempre
que possível, deve-se usar modelos de otimização, já que eles apresentam soluções ótimas.
Porém, grande parte dos sistemas encontrados no dia a dia apresentam variáveis estocásticas e
não apresentam soluções analíticas. Neste caso, fornecerão soluções exatas mas os modelos
6
serão aproximados, enquanto os modelos de simulação fornecerão soluções aproximadas mas os
modelos serão mais próximos da realidade.
5.1 - Características
- Existência de um objetivo que pode ser explicitado em termos das variáveis de decisão
do problema;
- Existência de restrições quanto à aplicação destes recursos (em relação à quantidade e
forma de emprego).
Programação Linear:
- Proporcionalidade;
7
- Aditividade;
- Variáveis Contínuas;
- Parâmetros Constantes.
Forma de um P.P.L.:
n
Max ou Min Z = CjX j ( Função Objetivo )
j1
1 - Definição do problema;
2 - Identificação das variáveis relevantes;
3 - Formulação da Função Objetivo;
4 - Formulação das restrições;
5 - Escolha do método matemático de solução;
6 - Aplicação do modelo para análise.
7 - Avaliação da solução.
Exemplo: Uma companhia siderúrgica possui 2 minas e 3 fábricas sendo que o custo de
transporte do minério de cada mina a cada fábrica é variável conforme a distância. As minas têm
limitações nas capacidades de produção e as fábricas têm requisições mínimas de minério para
8
manter suas produções. Deseja-se construir um modelo que descreva o transporte de minério
para as fábricas de modo a minimizar o custo total de transporte.
Este é um problema linear. As fases para a construção deste modelo serão vistas adiante.
Dado os custos por tonelada transportada, capacidades de produção das minas e as quantidades
mínimas de minério requeridas em cada usina, determinar a programação de transporte, ou seja,
a quantidade de minério a ser transportada de cada mina para cada usina, que tenha o menor
custo possível, atendendo as diversas restrições que se apresentam.
9
Estas etapas serão discutidas um pouco mais adiante. Por enquanto, vamos nos prender
apenas nas etapas 1 a 4 da construção dos modelos, que são as mais complexas, apesar de
parecerem simples.
Seja o seguinte exemplo: uma indústria produz produtos do tipo 1 e produtos do tipo 2. O
lucro gerado por cada unidade dos produtos dos tipos 1 e 2 é de $2,00 e $3,00, respectivamente.
A indústria possui restrições em suas linhas de produção e o número máximo de unidades
produzidas diariamente dos produtos 1 e 2 é igual a 60 e 80, respectivamente. Além disso, a
indústria possui uma capacidade máxima de produção dos dois produtos de 100 unidades/dia.
Sendo assim, deseja-se desenvolver um modelo que maximize o lucro da empresa obedecendo
todas as restrições de produção.
Dadas as capacidades máximas de produção total e individual de cada produto e o lucro obtido
por cada um deles, determinar a quantidade a ser produzida de cada um visando a maximização
do lucro da empresa.
10
Este problema pode se resolvido graficamente. Para tanto, basta lançar em um gráfico as
retas representantes das funções objetivo e restrições e determinar o ponto da área de soluções
viáveis que maximiza a função objetivo. Este ponto, como pode ser visto na figura 6, é o vértice
(X1=20, X2=80).
Como pode ser observado na figura 6, caso o coeficiente angular da família de retas que
representam a função objetivo seja igual ao coeficiente angular de uma das restrições, o problema
apresentaria infinitas soluções. Também pode acontecer problemas sem solução.
Um P.P.L. pode ser resolvido por métodos de resolução de sistemas de equações lineares.
Bastaria neste caso transformar as inequações que representam as restrições em equações pela
introdução das chamadas variáveis de folga. Conforme visto, as restrições de um P.P.L. tratam da
utilização de recursos que apresentam disponibilidades conhecidas, ou seja, o uso do recurso
deve ser menor ou igual a sua disponibilidade. Assim,
UTILIZAÇÃO DISPONIBIDADE
ou
UTILIZAÇÃO + FOLGA = DISPONIBIDADE
Em outras palavras:
11
O problema anterior poderia ser transformado no problema abaixo, após a introdução das
variáveis de folga:
Iteração 1:
Base X1 X2 X3 X4 X5 b
X3 1 0 1 0 0 60
X4 0 1 0 1 0 80
X5 1 1 0 0 1 100
L -2 -3 0 0 0 0
12
A coluna B representa o lado direito das equações do sistema.
A solução inicial obtida para X1 = 0 e X2 = 0 é:
X3 = 60
X4 = 80
X5 = 100
L=0
Obviamente esta solução inicial pode ser melhorada, já que as variáveis originais estão
zeradas, fazendo com que o lucro seja nulo. Assim, parte-se para a segunda iteração, que
consiste em mover a solução para o próximo vértice do polígono de soluções viáveis.
Deve-se determinar qual a variável não-básica da primeira solução que deve se tornar
positiva e qual variável básica deve ser zerada, ou seja, deve-se determinar qual variável deve
sair da base e qual deve substituí-la.
A variável que deve se tornar positiva e entrar na base, é aquela que apresenta a maior
contribuição unitária para o “lucro” da função objetivo, que é de maximização. Em outras palavras
é aquela que apresenta o maior coeficiente negativo na função objetivo. Neste caso é a variável
X2. Se nenhuma apresentasse coeficiente negativo, a solução encontrada seria ótima.
Para se determinar qual variável deve ser zerada e sair da base, basta analisar a segunda
e terceira equações, para calcular o valor máximo que X2 pode assumir:
O maior valor que X2 pode assumir é 80, pois qualquer valor acima deste, obrigaria X 4 a
ser negativo, o que não é permitido. Como X 2 deve assumir o maior valor possível, de forma a
contribuir ao máximo com o “lucro” da função objetivo, X4 deve ser zerada e sair da base.
A mesma conclusão pode ser obtida dividindo os elementos da coluna b pelos coeficientes
positivos de X2. Logo, o menor coeficiente obtido indica a variável básica a ser substituída. Caso
não existam valores positivos nesta coluna o processo deve ser interrompido, pois a solução seria
ilimitada. Neste caso, teria para a variável X4: 80/1 = 80 e para a variável X5: 100/1 = 100.
A seguir, deve-se fazer uma transformação na matriz, de forma que a coluna que contém a
nova variável básica se torne um vetor identidade (todos valores iguais a zero, com exceção do
valor relativo a X2). Para tanto, são necessárias duas operações. A primeira é a substituição da
linha 3 pela soma da linha 3 anterior mais a linha 2 multiplicada por (–1). Assim tem-se o segundo
quadro, mostrado abaixo:
Base X1 X2 X3 X4 X5 b
X3 1 0 1 0 0 60
13
X2 0 1 0 1 0 80
X5 1 0 0 -1 1 20
L -2 -3 0 0 0 0
A seguir, substituir a linha 4 pela soma da linha 4 anterior mais a linha 2 multiplicada por
(3). O resultado desta operação fornece o quadro 3 abaixo:
Base X1 X2 X3 X4 X5 b
X3 1 0 1 0 0 60
X2 0 1 0 1 0 80
X5 1 0 0 -1 1 20
L -2 0 0 3 0 240
Iteração 2:
A nova variável a entrar na base é X 1, já que todas as demais não apresentam coeficiente
negativo. A variável a sair da base seria X5, já que 60/1 > 20/1.
Transformação da matriz: substituir a linha 1 pela soma da linha 1 anterior mais a linha 3
multiplicada por (-1).
Base X1 X2 X3 X4 X5 b
X3 0 0 1 1 -1 40
X2 0 1 0 1 0 80
X1 1 0 0 -1 1 20
L -2 0 0 3 0 240
Transformação da matriz: substituir a linha 4 pela soma da linha 4 anterior mais a linha 3
multiplicada por (2).
Base X1 X2 X3 X4 X5 b
X3 0 0 1 1 -1 40
X2 0 1 0 1 0 80
14
X1 1 0 0 -1 1 20
L 0 0 0 1 2 280
Esta solução é ótima pois não existem mais coeficientes negativos na linha 4.
Obviamente, problemas envolvendo grande número de restrições e variáveis tornam
trabalhosa sua resolução manual. Para resolução de problemas de programação inteira e
programação não-linear existem algoritmos específicos, que não serão tratados aqui.
2 – What’s Best! da Lindo Systems Inc.: Software de otimização que trabalha em conjunto com
o Microsoft Excel e funciona como um suplemento do Excel. Este software resolve problemas de
programação linear, não-linear e inteira. Trabalha de forma semelhante ao solver do Excel, porém
é bem mais robusto e em suas versões de topo não apresenta limitações relativas ao número de
restrições, nem variáveis ou inteiros.
3 – LINDO da Lindo Systems Inc.: Apresenta um ambiente completo para programação linear,
inteira e quadrática. É bastante veloz e é comercializado em diversas versões, sendo que na
versão de topo não apresenta limitações relativas ao número de restrições, inteiros ou variáveis.
Pode ser utilizado em conjunto com aplicativos desenvolvidos em diversas linguagens de
programação tais como Delphi, C ou Visual Basic.
15
4 – LINGO da Lindo Systems Inc.: Apresenta um ambiente completo para programação linear,
não-linear e inteira. Como o LINDO, é bastante veloz e é comercializado em diversas versões,
sendo que na versão de topo não apresenta limitações relativas ao número de restrições, inteiros
ou variáveis. Também pode ser utilizado em conjunto com aplicativos desenvolvidos em diversas
linguagens de programação tais como Delphi, C ou Visual Basic.
Maiores informações sobre esses softwares podem ser obtidas no “site” da Lindo Systems:
www.lindo.com
Todos esses softwares serão utilizados durante as aulas práticas do curso.
Seja:
Qi a quantidade disponível em cada pilha i;
qi a quantidade a ser retirada em cada pilha i;
Ni o número de caçambadas a serem retiradas de cada pilha i;
tvi o teor da variável v na pilha i(%);
linfv o teor mínimo admissível para a variável v(%);
lsupv o teor máximo admissível para a variável v(%);
16
C a capacidade da caçamba das carregadeiras que farão a mistura;
G o conjunto de pilhas com a granulometria igual à requerida.
Restrições de Qualidade:
(2)
Restrições de Quantidade:
qi < Qi i , i G (3)
Restrições de não-negatividade:
9.2 – Modelo de determinação do ritmo de lavra das frentes com equipamentos de carga
idênticos e sem alocação de caminhões:
Max
Sujeito às restrições:
Restrições de produção:
(1) p/ todo i
(2) p/ todo i
(3) p/ todo i
(4) p/ todo i
Pmax é a produção máxima possível por frente (função da capacidade dos equipamentos
de carga);
Pmin é a produção mínima viável por frente (função de restrições econômicas);
bi é uma variável de decisão (bi=1 se Pi>0 e bi=0 se Pi=0);
18
Restrições de limites de teores:
(5) p/ todo k
(5.1) p/ todo k;
(5.2) p/ todo k;
(6)
Onde:
19
TCi = tempo médio de ciclo para a frente i em minutos;
Nmaxi = o número máximo de caminhões, obtido pela divisão do tempo de ciclo total pelo tempo
de carga, para cada frente i.
Ncam =
P .TC (8)
Σ ________
iєM
i i
60.Cap
_______
iєE
9.3 – Modelo de determinação do ritmo de lavra das frentes com equipamentos diferentes e
sem alocação de caminhões:
20
a produção total de minério. Nesse modelo, a alocação de equipamentos fica restrita a
carregadeiras e/ou escavadeiras.
Seja uma mina a céu aberto operando com sistema de alocação dinâmica de caminhões
onde, durante a lavra, exista um controle dos teores das diversas variáveis envolvidas. Neste
trabalho, considerou-se o controle dos teores das variáveis químicas, mas o mesmo poderia ser
feito para o controle das variáveis físicas, como a granulometria, por exemplo.
A cada plano de lavra de curto prazo elaborado, existem n frentes disponíveis, onde a
lavra pode acontecer simultaneamente em m (m n) dessas frentes, dependendo da
disponibilidade de equipamentos de carga (carregadeiras e/ou escavadeiras).
Caso entre em operação, por razões técnicas e econômicas, cada equipamento de carga
deve trabalhar entre limites preestabelecidos de produção. O material alimentado na usina deve
atender os limites de qualidade impostos para cada variável. Além disso, uma relação
estéril/minério mínima preestabelecida deve ser cumprida.
O modelo matemático para o problema descrito anteriormente está desenvolvido abaixo.
Seja:
M o conjunto das frentes de minério;
E o conjunto das frentes de estéril;
Pi o ritmo de lavra da frente i (t/h);
Função Objetivo:
21
Maximizar
Restrições de Qualidade:
Restrições de Alocação:
Restrições de Produção:
Ncam =
P .TC
Σ ________
iєM
i i (9)
60.Cap
_______
iєE
22
As restrições de qualidade (1) garantem que o produto resultante da mistura dos minérios
das diversas frentes esteja dentro dos limites de qualidade exigidos pela usina de tratamento.
As restrições de alocação (2) e (3) fazem com que cada frente possua somente um
equipamento de carga - restrições de alocação (2) - e que cada equipamento de carga atenda
somente uma frente - restrições de alocação (3).
Já as restrições de produção estão divididas em quatro grupos: as restrições (4) garantem
que os equipamentos de carga trabalhem entre os limites de produção preestabelecidos; a
restrição (5) é opcional, caso se deseje impor uma produção mínima; (6) é a restrição que garante
a relação estéril/minério preestabelecida e (7) é a restrição que garante produção positiva em
todas as frentes. A restrição (8) garante que a frente produzirá no máximo a quantidade imposta
pela frota de caminhões.
9.4 – Modelo de determinação do ritmo de lavra das frentes com equipamentos diferentes e
com alocação de caminhões:
23
0, se o equipamento de carga j não puder trabalhar com o caminhão k
yjk=
1, se o equipamento de carga j puder trabalhar com o caminhão k
Função Objetivo:
Maximizar
Restrições de Qualidade:
Restrições de Alocação:
24
(5a)
Restrições de Produção:
Com relação ao primeiro modelo (alocação dinâmica) três grupos de restrições foram
acrescentados, cujas funções são:
Restrições de alocação (4): garantem que cada caminhão atenderá somente uma frente.
Restrições de alocação (5): permitem que somente modelos compatíveis de equipamentos de
carga e de caminhões trabalhem numa mesma frente e a (5a) garante que somente serão
alocados caminhões para uma determinada frente se existir um equipamento de carga naquela
frente.
Restrições de produção (7): garantem que a produção de cada frente fique limitada a
produtividade dos caminhões que a ela estão alocados. A produtividade dos caminhões é
calculada dividindo-se a sua capacidade de carga pelo tempo de ciclo total. Entende-se por tempo
de ciclo total o somatório dos tempos de carga, deslocamento carregado, descarga e
deslocamento vazio.
25
9.5 – Exercícios:
1 - Uma mineração faz o seu planejamento semanal, colocando um total de 10 frentes de minério
e 4 de estéril disponíveis para a lavra, informando, para as frentes de minério, os teores de ferro,
fósforo, alumina e sílica, bem como a distância de transporte dessas frentes até o britador
primário. Desenvolva um modelo para determinar qual deve ser a produção de cada frente,
levando-se em consideração que:
Deve ser entregue um disquete contendo o arquivo texto de entrada do modelo. Também deve ser
entregue um arquivo contendo a documentação sobre o modelo desenvolvido.
Para teste do modelo devem ser usados os dados abaixo:
26
2 – Uma empresa de mineração disponibiliza para a lavra 9 frentes de minério e 2 de estéril a
cada plano de lavra de curto prazo de sua mina. Para a realização dos trabalhos de lavra, a
empresa conta com 4 carregadeiras de diferentes capacidades. Por razões técnicas e
econômicas, cada carregadeira trabalha dentro de limites mínimos e máximos de produtividade.
Esses limites são mostrados na tabela 1. A mina deve produzir um mínimo de 3500 t/h de minério
e a relação estéril / minério mínima deve ser de 0.4. A empresa controla teores de Fe, P, SiO 2,
Al2O3 e P.P.C. (perda ao fogo). Os teores das variáveis em cada frente bem como a distância de
transporte, são mostrados na tabela 2 e os limites exigidos para as variáveis no R.O.M. ("run of
mine") estão mostrados na tabela 3. Construir uma planilha de cálculo, utilizando o MS Excel e
Lindo Systems WB, que determine a produção de cada frente e qual carregadeira deverá operar
em cada uma delas de forma a atender todas as restrições e minimizar a distância média de
transporte.
27
Tabela 3 - Limites requeridos no R.O.M.
Frente Fe SiO2 Al2O3 P P.P.C.
Teor Min 54 5 0 0 0
Teor Max 67 9 3.5 0.045 2.5
10 - Teoria da filas
A teoria das filas é um dos tópicos da pesquisa operacional, que trata do problema de
congestionamento de sistemas, onde clientes solicitam serviços a servidores. Neste tópico será
feita uma rápida apresentação desta teoria visando um embasamento para o estudo da simulação
de sistemas. Maiores detalhes sobre este tópico podem ser encontrados em Prado (1999) e
Andrade (1999).
Servidores
1
Clientes
2
Fila
População 3
Atendimento
28
10.2.2 – Processo de chegadas:
Não basta fornecer valores médios, é necessário também mostrar como os valores se
distribuem em torno da média, ou seja, qual distribuição de probabilidades rege o processo.
= Ritmo de chegada
IC = Intervalo entre chegadas
Obs: Intervalos regulares => processos altamente automatizados.
= Ritmo de atendimento
TA = Tempo de atendimento
FIFO = First in, first out (primeiro que chega é o primeiro a sair da fila)
LIFO = Last in, first out (primeiro que chega é o último a sair da fila)
Prioridade = Uma característica do cliente define sua prioridade de atendimento.
Randômico = Atendimento aleatório.
Se e são constantes => o tamanho da fila oscila em torno de um valor médio. Se <
a fila aumentará indefinidamente.
Os clientes devem aguardar em uma área de espera que deve ser dimensionada de
acordo com o tamanho máximo esperado para a fila.
TF = f (, )
29
10.3 – Variáveis aleatórias:
O comportamento de uma variável aleatória pode ser expresso pelo seu valor médio e a
forma como os valores se distribuem em torno desta média.
Exemplo de um banco:
Intervalo entre chegadas (minutos):
Cliente 1 2 3 4 5 6 7 8 9 10 11 12
Intervalo 2 3 3 3 5 0 1 5 1 4 1 2 Média=2.5
Momento 2 5 8 11 16 16 17 22 23 27 28 30 = 24 / h
Cliente 1 2 3 4 5 6 7 8 9 10 11 12
Momento 2 5 8 11 16 16 17 22 23 27 28 30
Duração 1 2 1 1 3 2 1 4 2 3 1 3
Liberação 3 7 9 12 19 21 22 26 28 31 32 35
Espera 0 0 0 0 0 3 4 0 3 1 3 2
Um estudo sobre um sistema estável, apresentará sempre os mesmos resultados desde que
adequadamente analisado. Vale ressaltar que o tamanho da amostra é fundamental.
30
10.7 – Tipos de filas:
a – 1 fila e 1 servidor
b – 1 fila e n servidores
c – m filas e n servidores
d – filas especiais (ex: caixas expressos de supermercados)
e – filas que seguem uma alteração dinâmica do sistema de atendimento
31
10.8.6 - Taxa de utilização dos atendentes:
para 1 fila e 1 servidor: = /
para 1 fila e M servidores: = /(M)
Assim, representa a fração média de tempo em que cada servidor está ocupado.
Para sistemas estáveis, tem-se que : < 1
NF = . TF
NS = . TS
1 - Em qualquer sistema estável, o fluxo que entra é igual ao fluxo que sai.
2 - Em um sistema estável, o fluxo de entrada se mantém nas diversas seções do sistema.
3 - Em um sistema estável, a junção de fluxos equivale às suas somas.
4 - Em um sistema estável, o fluxo se desdobra aritmeticamente.
32
10.9 - Processos de chegada e atendimento:
33
10.10 - Distribuição de Poisson:
Onde:
p(x) é a probabilidade ( freqüência relativa) de ocorrerem x chegadas na unidade de tempo, sendo
que representa o ritmo médio de chegadas. Por exemplo: para x = 2 tem-se: f(2) = 0.271.
Quando um processo de chegada possui um ritmo que segue Poisson, o intervalo entre chegadas
segue uma distribuição exponencial negativa.
34
10.11 - Notação de Kendall (David Kendall):
Fila A/B/c/K/m/Z
A anotação condensada A/B/c é muito usada e se supõe que não há limite para o tamanho da fila,
a população é infinita e a disciplina é FIFO. Para A e B, quando a distribuição for exponencial
negativa, usa-se M (Marcoviana).
Modelo de fila que tanto as chegadas quanto o atendimento são marcovianos, ou seja, seguem a
distribuição de Poisson para ritmos ou exponencial negativa para intervalos e durações. Além
disso, existe apenas um único servidor.
2
NF
( )
NS
( )
1
TS
( ) 35
5 – Probabilidade de existirem n clientes no sistema:
Pn (1 / )( / ) n
6 - Taxa de utilização:
2 2
NF
( ) 1
NF
0 1 ρ
Figura 8 - Variação do tamanho da fila com a taxa de utilização
( )
NF K .(1 P0 )
( )
NS K .(1 P0 )
3 – Tempo médio que o cliente fica na fila:
K ( ).(1 P0 )
TF 36
2
4 – Tempo médio que o cliente fica no sistema:
K ( ).(1 P0 ) 1
TS 2
5 – Probabilidade de existirem n clientes no sistema:
K n
( )
Pn
j
k ( )
(k n)!.
j 0 j!
10.14 - Exercícios:
1 - Em uma agência bancária com apenas um atendente, o intervalo médio entre chegadas dos
clientes é de 5 minutos e o atendimento leva em média 4 minutos. Posto isto, determinar o tempo
médio de espera dos clientes, o tamanho médio da fila e o tempo médio de permanência dos
clientes na agência.
37
de uma cabina não prejudique o funcionamento da anterior e que o espaço antes da primeira
cabina seja adequado à espera. Assuma que cheguem em média 16 carros por hora, que a
cabina de pedidos consiga atender em média 20 carros por hora e que a cabina de pagamentos e
entrega consigam atender, cada uma, uma média de 19 carros por hora. Calcular também o
tempo médio de permanência dos clientes no sistema.
4 - A prefeitura de uma cidade deseja colocar um pedágio na entrada de uma ponte. Ruas de mão
única (sentido unidirecional) convergem para esta ponte como mostrado na figura abaixo. O
pedágio será colocado no ponto P. Os carros passam pelo ponto A uma taxa 40 carros / hora.
Chegando ao ponto B há uma divisão do fluxo de carros, sendo que 25% se dirigem na direção do
ponto E e 75% na direção do ponto F. O intervalo médio entre passagens de dois carros
consecutivos pelo ponto D é de 4,7 minutos e pelo ponto C é de 3,5 minutos. Sabendo-se que o
tempo médio gasto para o pagamento e liberação do pedágio é de 38 segundos, qual será o
tempo médio de espera dos carros no ponto P e qual será o tamanho médio da fila naquele ponto,
se considerarmos a existência de um único caixa de atendimento. Calcule também a taxa de
ocupação do caixa. Suponha que os processos de chegadas e atendimento sejam Markovianos.
A B
75% 25% E
D P
F
C Esquema de ruas
11 - Simulação de Sistemas
38
para problemas mais realistas do que soluções exatas para problemas aproximados. Além disso,
ele ainda aponta como sucesso da simulação diversos outros fatores, entre eles o processo de
modelagem evolutivo, a facilidade com a qual podemos responder via simulação perguntas do tipo
"E se mudássemos tal cenário qual seria o efeito sobre o modelo?", a facilidade de comunicação
devido a não existência de equações matemáticas complicadas nos modelos, etc.
Em qualquer processo de simulação existem três etapas chaves: a construção do modelo
de simulação, a programação computacional do modelo concebido e a sua experimentação e
validação. Na primeira fase a modelagem pode ser feita seguindo-se basicamente quatro
métodos: a abordagem por eventos, por atividade, por processo e pelo método das três fases.
Este último, foi primeiramente descrito por Tocher (1963) e segundo Pidd (1998) teve um grande
sucesso por combinar a simplicidade da abordagem por atividades com a eficiência da abordagem
por eventos. A abordagem por processo tem tido uma crescente aceitação e sotwares comerciais
tem usado com freqüência este tipo de abordagem. A programação computacional do modelo é,
atualmente, uma tarefa pouco complexa em função dos vários pacotes computacionais
disponíveis no mercado. A experimentação e validação do modelo, apesar de parecer uma tarefa
simples, tem suas surpresas, pois o modelo é um espelho fiel das premissas em que foi baseado.
Se tais premissas forem representativas da realidade e caso não existam erros na parte
computacional, certamente o modelo dará bons resultados, ou seja, será capaz de representar
com fidelidade o sistema a ser simulado. Por isso, uma coleta de dados bem feita e uma
observação minuciosa da realidade do sistema são fundamentais no processo de simulação, pois
pode-se perder todo o trabalho realizado devido a falta de aderência do modelo à realidade.
Na mineração, particularmente nas operações de lavra, a simulação talvez seja a única
ferramenta que nos dê respostas confiáveis para uma série de questionamentos. Isto ocorre
porque os sistemas a representar são extremamente complexos e apresentam um grande número
de variáveis aleatórias, o que muitas vezes inviabiliza os modelos determinísticos.
Diversas perguntas podem surgir quando falamos em simular as operações de lavra,
sendo a primeira delas "Por que simular tais operações?". A resposta é simples: se temos
condições de simular as operações, podemos gerenciá-las buscando a otimização do
planejamento da lavra. Muitas vezes existe um assincronismo entre aquilo que foi planejado e as
operações necessárias à sua execução. Por isso, sempre temos relatórios de "planejado versus
executado". Otimizar, neste caso, significa reduzir as diferenças entre um e outro. Através da
simulação podemos saber, com um certo grau de certeza, como se comportaria a mina frente às
alterações de cenários propostas. Com o uso da simulação pode-se, por exemplo, responder de
antemão qual seria o acréscimo possível de produção sem o aumento da frota de caminhões, ou
avaliar o impacto na produtividade devido a uma possível implantação de um sistema de
despacho automático, ou ainda verificar a viabilidade de execução de uma determinada
campanha de lavra ou fazer uma análise de sensibilidade de uma determinada operação em
relação a uma ou mais variáveis, etc. Em outras palavras, a simulação funciona como um
39
fornecedor de subsídios para uma tomada de decisão mais consistente. As aplicações de
simulação na mineração começaram no início da década de 60 e ganharam mais popularidade a
partir da década de 80, com o avanço dos computadores pessoais.
Entradas Saídas
Modelo de simulação
Políticas Respostas
Interação e experimentação
1 - Definição do problema
2 - Identificação das variáveis relevantes
3 - Coleta de dados
4 - Formulação do modelo lógico-matemático
5 - Construção do modelo computacional
6 - Verificação e validação do modelo
7 - Experimentação
40
Etapas :
1 - Definição do problema:
Nesta etapa deve-se caracterizar, da forma mais realista possível, o sistema, no caso o
carregamento/transporte/descarga de minério e estéril da mina, identificando todas as atividades
que o constituem, as entidades que dele participam e a forma como cada uma das atividades é
realizada.
3 – Coleta de dados:
Nesta fase se processa a coleta de dados relativos às variáveis relevantes.
41
7 - Experimentação:
Se o modelo estiver verificado e validado, a etapa seguinte é a sua aplicação. Nesta etapa
são simulados os cenários de análise fazendo a comparação entre eles através da observação do
comportamento de suas variáveis principais. No caso em questão, haveria, basicamente, dois
cenários a serem analisados:
a - Sistema de carregamento/transporte/descarga com alocação fixa de caminhões;
b - Sistema de carregamento/transporte/descarga com alocação dinâmica de caminhões;
Após a simulação dos dois casos, podem ser comparados por exemplo, a qualidade do
minério alimentado (média e variância das variáveis de controle), tempo médio de fila dos
caminhões, produtividade da frota, etc.
Feitas as comparações, pode-se então avaliar, com base estatística, quais as vantagens
de se investir na compra do sistema proposto.
A - Manipulação do tempo
B - Durações determinísticas ou estocásticas
C - Trocas de estado discretas ou contínuas
A- Manipulação do tempo:
42
estado do sistema são modeladas através do tempo. Assim, é importante considerar como o fluxo
de tempo deve ser manuseado ao longo da simulação.
1 - Estáticos ou dinâmicos
2 - Determinísticos ou estocásticos
3 - Discretos ou contínuos
Neste curso será abordada somente a simulação a eventos discretos.
43
11.5 - Generalidades sobre simulação a eventos discretos
Terminologia:
Objetos do sistema:
Entidades: Elementos individuais do sistema cujo comportamento se deseja analisar.
Recursos: Elementos individuais do sistema que não são modelados separadamente. Um
recurso consiste em itens idênticos e o programa mantém um controle sobre quantos itens estão
disponíveis a cada momento.
Tipos de entidades:
Permanentes: permanecem no sistema durante toda a simulação.
Temporárias: permanecem no sistema apenas parte da simulação.
Ativas: trabalham em conjunto com outras entidades e as “retêm” durante algumas
operações do sistema.
Passivas: trabalham em conjunto com outras entidades e são “retidas” por elas durante
algumas operações do sistema.
44
Relógio da simulação: representa o instante corrente da simulação.
45
disponibilizam entidades para o início das atividades a elas subsequentes. Devido a esta
característica estes elementos são utilizados na representação de chegadas externas ao sistema.
Outros elementos podem ser também referenciados em um DCA. Trata-se da
representação de disciplinas de filas, desvios condicionais que ocorrem ao término de atividades,
priorização de início de atividades, priorização de entidades, filas paralelas, bloqueio de recursos,
duração de atividades, etc.
11.8 - Exercícios:
46
telefônicas que, graças a um sofisticado sistema eletrônico, são colocadas numa fila e atendidas
na ordem de chegada. O público é educado e muito paciente, nunca indo embora ou desligando o
telefone sem que tenha sido atendido. O intervalo entre a chegada de duas consultas pessoais
consecutivas segue uma distribuição exponencial com média de 12 unidades de tempo. O
intervalo entre a chegada de duas chamadas telefônicas consecutivas também é
exponencialmente distribuído com média 10 unidades de tempo. Um atendimento pessoal leva em
média 6 unidades de tempo, seguindo uma distribuição exponencial. Uma chamada telefônica
leva em média 5 unidades de tempo, distribuindo-se também segundo uma exponencial. Deseja-
se simular este problema para estimar a taxa de ocupação do bilheteiro e o tempo de espera das
pessoas. Refazer o problema supondo que a central telefônica não retenha chamadas ( uma
chamada encontrando o sistema ocupado ou não sendo atendida – bilheteiro ocupado – é
perdida). Construir o DCA representativo do sistema.
2 - Num bar, os clientes chegam da rua para tomar chope, numa quantidade que varia
aleatoriamente em função da sede de cada um. Os intervalos entre chegadas consecutivas são
exponencialmente distribuídos com média de 10 minutos. A quantidade de copos que cada cliente
toma é definida quando da sua chegada, através do atributo SEDE. A SEDE de um cliente varia
de acordo com uma distribuição inteira uniforme com um mínimo de 1 e um máximo de 4 copos.
Chegando ao bar, um cliente aguardará sua vez de ser servido. Uma vez servido, atividade cuja
duração segue uma distribuição normal com média de 6 minutos e desvio padrão de 1 minuto, o
cliente beberá seu copo a seguir. O tempo para beber um copo distribui-se uniformemente com
valores inteiros entre 5 e 8 minutos. Este ciclo irá se repetir até que o cliente tenha sua sede
saciada. Dois garçons são responsáveis pelo atendimento dos clientes e pela lavagem dos copos
usados. O atendimento, além do cliente, exige também que um copo limpo esteja disponível. A
lavagem dos copos tem duração constante e igual a 2 minutos. Supõe-se ainda que o bar dispõe
de 70 copos. Pede-se construir o DCA representativo deste sistema
Variante 1:
Suponha que, por razões trabalhistas, o garçon do bar tenha direito a um intervalo para
descanso de 10 minutos a cada hora trabalhada. Desta forma, "DESCANSAR" seria uma nova
atividade do garçon. O início da atividade "DESCANSAR" ocorre assim que o garçon ficar ocioso
pela primeira vez, após chegar a hora do descanso. Refaça o sistema considerando esta nova
atividade.
3 – Uma empresa usa matérias primas do tipo A e B. Ambas são transportadas por caminhões, de
mesma capacidade, que chegam à empresa segundo uma distribuição exponencial negativa de
média de 25 minutos. Sabe-se que 30% desses caminhões trazem matéria prima do tipo A e o
restante do tipo B. Ao chegarem à empresa os caminhões têm sua carga checada por um
47
funcionário da portaria, que preenche um formulário e encaminha o caminhão para uma das docas
de descarga, atividade que possui duração exponencialmente distribuída com média de 5 minutos.
Existe uma doca (Doca A) para descarga de caminhões que transportam mercadorias do tipo A e
duas docas para aqueles que transportam mercadorias do tipo B (Doca B1 e Doca B2). O tempo
de descarga dos caminhões que transportam mercadoria do tipo A segue uma distribuição normal
com média de 30 minutos e desvio padrão de 6 minutos. O tempo de descarga dos caminhões
que transportam mercadoria do tipo B segue uma distribuição triangular com moda de 38, mínimo
de 30 e máximo de 50 minutos. Os caminhões com mercadorias do tipo B são encaminhados para
a doca que tiver menor fila (B1 ou B2). Após a descarga, os caminhões seguem para outro setor
da empresa onde entregam as notas fiscais e os recibos de descarga. Neste setor, os caminhões
são atendidos por um funcionário, que preenche um formulário de liberação do veículo. O tempo
gasto pelo funcionário para realização deste serviço segue uma distribuição normal com média de
7 minutos e desvio padrão de 2 minutos. Após receberem o formulário de liberação, os caminhões
se dirigem à portaria da empresa, onde o mesmo funcionário que os recebeu faz uma vistoria de
segurança nos caminhões, para certificar se eles não estão saindo com nada da empresa, e os
libera em seguida. O tempo gasto nesta atividade é exponencialmente distribuído com média de 4
minutos. O funcionário da portaria prioriza o atendimento de chegada de caminhões em relação à
vistoria de saída. Posto isto, construir o diagrama de ciclo de atividades representativo deste
sistema.
48
11.9 - Formas de estruturação de um programa de simulação
Ferramentas:
Programa executivo: entrada/saída
programação amostragem
seqüenciamento depuração
etc.
Modelo:
programação específica
feito pelo analista
Um evento pode ser entendido como uma mudança no estado do sistema em processo de
simulação. Toda atividade está delimitada por dois eventos, o primeiro que caracteriza seu início e
o segundo seu término.
O relógio da simulação corresponde ao instante corrente da mesma. O relógio sempre avança
para o instante em que ocorrerá o evento mais próximo, o que implica em um avanço a intervalos
quase sempre variáveis. Sendo assim, o programa de simulação deve dispor de recursos para
descobrir quando ocorrerá o próximo evento e avançar o relógio da simulação até ele.
49
Tipos de eventos
Existem dois tipos de eventos associados ao método das três fases: os eventos que caracterizam
o início e aqueles que caracterizam o fim da atividade. Tais eventos são conhecidos como eventos
do tipo C (início da atividade) e eventos do tipo B (fim da atividade). Todo evento C é tido como
condicional, pois para uma atividade ter início uma ou mais condições sempre devem ser
satisfeitas. A cada atividade está associado um único evento C, que está condicionado à
existência de entidades nas filas e/ou fontes que precedem a atividade. Como a duração de cada
atividade é determinada antes de seu início, através de amostragem ou deterministicamente, os
eventos B têm seus inícios ou ocorrências predeterminados. Para cada entidade participante da
atividade é definido um evento B distinto. Assim, a cada atividade está associado um único evento
C e tantos eventos B quantas forem as entidades que dela participam. O evento B libera as
entidades que participaram da atividade a ele relacionada para as filas subsequentes àquela
atividade.
As fases A, B e C
Fase A:
Corresponde ao avanço do relógio da simulação. Nesta fase o relógio é avançado para o instante
quando se dará o término da próxima atividade. Para tanto, o programa consulta a lista de eventos
B e encontra aquele que ocorrerá em primeiro lugar.
Fase B:
Termina a atividade e executa todos eventos B programados para aquele momento, liberando as
entidades para as filas subsequentes.
Fase C:
Executa a verificação das condições de início de todas as atividades do sistema. Inicia as
atividades cujas condições foram satisfeitas, calculando sua duração e programa os eventos B a
elas associados. O início de cada atividade é caracterizado pela saída das entidades das filas que
a precedem. Uma atividade é iniciada quantas vezes sua condição de início for satisfeita. A ordem
de checagem das condições de início das atividades segue a ordem suas prioridades
predefinidas. Quando todas as atividades passíveis são iniciadas termina a fase C e retorna-se à
fase A até a interrupção do programa e/ou seu término.
50
Como pode ser notado no início da simulação, ou seja, quando o relógio está no instante zero,
nenhum evento B acontece, pois não existe nenhuma atividade em andamento. Sendo assim, o
sistema deve ser modelado de tal forma que no instante zero possa ocorrer o início de pelo menos
uma atividade. Por isto as entidades permanentes são colocadas em filas adequadas antes do
início da simulação. Para as entidades temporárias não existe esta preocupação.
Uma última e importante consideração sobre a estruturação dos programas diz respeito ao tempo
de aquecimento. Grande parte dos sistemas simulados necessitam de um tempo de simulação
inicial, onde não se coletam dados estatísticos, para saírem do regime transiente e entrarem no
regime estável de execução. Este intervalo de tempo é denominado tempo de aquecimento do
sistema. Isto é alcançado com uso de atividades especiais que geram eventos B programados
com esta finalidade. Após o aquecimento, dados estatísticos começam a ser coletados até o fim
da simulação. Normalmente a simulação é replicada diversas vezes com o objetivo de se alcançar
resultados mais próximos da realidade. Essas replicações são denominadas de corridas de
simulação. A figura 12 mostra o esquema de estruturação de um programa pelo método das três
fases.
Teste e execução
INÍCIO
dos eventos C Fase C
Inicialização Relatórios
Avanço do
Fim
Fase A relógio
Execução dos
Fase B eventos B
51
11.9.2 - Abordagem por processo
Retardos incondicionais: retardos cujos tempos são determinados a priori, normalmente por
amostragem. Este tipo de retardo acontece quando uma entidade participa de uma atividade.
Retardos condicionais: retardos cujos tempos não são determinados a priori. Isto ocorre quando
as entidades tem seu movimento suspenso devido à espera de atendimento de condições para
prosseguir seu processo (espera em filas).
1 – Lista de eventos futuros: lista contendo uma seqüência cronológica de registros daquelas
entidades cujo progresso está suspenso incondicionalmente.
2 – Lista de eventos correntes: a qualquer instante da simulação, esta lista contém registros de
dois tipos de entidades. Primeiro aquelas cujo progresso está suspenso incondicionalmente e
cujas reativações devem ocorrer no instante corrente da simulação. Segundo aquelas entidades
cujo progresso está suspenso condicionalmente.
52
O programa executivo a cada instante realiza as seguintes fases:
1 – Varre a lista de eventos futuros para determinar o tempo do próximo evento. Avança o relógio
da simulação até este instante.
2 – Move as entidades, cujo tempo de reativação é igual ao tempo corrente, da lista de eventos
futuros para a lista de eventos correntes.
3 – Varre a lista de eventos correntes e move as entidades que apresentarem condições, ao longo
de seu processo, até o mesmo ser completado ou ser suspenso por retardos condicionais ou
incondicionais. Se o retardo for incondicional, a entidade terá seus registros movidos para a lista
de eventos futuros. O programa registra seu próximo ponto de reativação.
Este ciclo é repetido até a simulação terminar. As mesmas colocações feitas a respeito de
aquecimento e replicações também são válidas nesta abordagem, obviamente.
Como todo simulador utiliza técnicas de amostragem para gerar valores de variáveis
aleatórias, é importante ter um conhecimento, pelo menos básico, da forma como acontece esta
amostragem. Este tópico tem por objetivo apresentar de uma forma bastante sucinta como é feita
a amostragem aleatória simples. Para tanto, se faz necessário uma rápida informação sobre
geração de números aleatórios.
53
11.11.1 – Números verdadeiramente aleatórios
54
c, a e m são constantes, onde a é chamado de multiplicador, c de incremento ou constante aditiva
e m de módulo.
X0 é o valor inicial da seqüência, também chamado de semente.
mod m é o resto da divisão por m. No caso, o resto da divisão de (Xi + c) por m.
i Xi
0 4
1 2
2 1
3 3
4 4
5 2
Assim, caso se queira produzir valores no intervalo (0,1) deve-se dividir o resultado obtido
para Xi por m.
55
11.11.4 – Geradores congruenciais multiplicativos
Para garantir um período completo dentro do intervalo (0, m –1), o valor da semente X0 e
do módulo m devem ser primos entre si. A melhor maneira de garantir esta condição é encontrar o
maior número primo possível para o módulo. Um gerador muito utilizado que tem boa aceitação
estatística usa a=16.807 e m=231-1=2.147.483.647. Fishman (1978) sugeriu a=630.360.016 e
m=2.147.483.647. Groenendaal (1992) sugeriu a=397.204.094 e m=950.706.376. Ambos tiveram
boas características estatísticas.
A – Teste gráfico
B – Teste de freqüência
C – Teste de Kolmogorov-Smirnov , etc.
Se y=F(x), então y tem uma distribuição uniforme sobre o intervalo fechado (0,1). Assim, como a
função cumulativa de probabilidades representa as características aleatórias da variável em
questão, a função y=F(x) é uma relação entre duas variáveis:
56
O método de Monte Carlo consiste nos seguintes passos:
Assim, pode-se definir o Método de Monte Carlo como sendo uma forma de transformar um
conjunto de números aleatórios (distribuição original) em outro conjunto de números (variáveis
aleatórias), com a mesma distribuição da variável considerada.
A simulação de sistemas tem se tornado cada dia mais popular devido ao desenvolvimento
acelerado dos computadores pessoais e, principalmente, ao sofisticação das linguagens de
simulação e simuladores. Atualmente, existem no mercado diversos softwares de simulação, entre
eles podem ser citados o ARENA, PROMODEL, GPSS, TAYLOR, SIMSCRIPT, etc. Neste curso o
software a ser usado nas aulas práticas será o ARENA. Todos esses softwares possuem recursos
que facilitam o processo de modelagem, a análise de dados de entrada e a animação dos
modelos. O preço de cada um varia, obviamente, com seu grau de sofisticação.
Existem também pacotes de rotinas especiais para execução de programas de simulação,
como é o caso do SIMIN, desenvolvido por Pinto (1999). Neste pacote, Pinto desenvolveu um
conjunto de rotinas para simulação de operações de lavra em minas a céu aberto. Este pacote
funciona dentro do ambiente de programação do Borland Delphi e facilita em muito a programação
de modelos de simulação de operações de lavra em minas a céu aberto. Este pacote, no entanto,
requer do usuário algum conhecimento da linguagem de programação Borland Delphi.
Recentes pesquisas na Univesidade Federal de Ouro Preto, visam o desenvolvimento das
chamadas “templates” de mineração para o ARENA. Essas “templates” nada mais são do que o
desenvolvimento de blocos de programação para desenvolvimento rápido de modelos de um
determinado tipo de sistema (por exemplo: hospitais, fábricas de automóveis, indústria siderúrgica,
etc). As “templates” são como modelos de simulação preconcebidos onde o usuário simplesmente
faz pequenas alterações para adequá-lo à realidade de seu sistema. Com o uso de “templates” a
fase de desenvolvimento de modelos fica extremamente simples e rápida. A “template” para
simulação de operações de lavra de mina a céu aberto está em sua fase final de desenvolvimento
e deve ser apresentada à comunidade científica ainda este ano.
57
11.13 – Exercícios
1 - Uma empresa possui uma oficina de manutenção de 5 máquinas que são utilizadas para
operação dentro de sua área industrial. Dentro da oficina existem duas estações de reparo,
estação A e B. Em cada uma destas estações, existe apenas 1 operador disponível para
execução dos trabalhos. A probabilidade de uma máquina necessitar de reparos na estação A é
de 75% e na estação B de 25%. Uma máquina, após reparada vai para uma inspeção final, onde
existe um único operador que realiza o trabalho. Após a inspeção, 90% das máquinas são
liberadas para operação e 10% retornam para nova manutenção. Esta nova manutenção sempre
ocorre na mesma estação onde a máquina foi reparada inicialmente.
Além da manutenção das máquinas da empresa, esta oficina também está estudando a
possibilidade de realizar serviços para terceiros, isto é, manutenção em máquinas de outras
empresas. As máquinas externas sempre seriam reparadas na estação B e, após o reparo,
também seriam inspecionadas pelo mesmo operador que inspeciona as máquinas internas e
seriam liberadas (neste caso a taxa é de 82% dos casos) ou retidas para nova manutenção (18%
dos casos). A nova manutenção, neste caso, sempre aconteceria na estação B. Os tempos
relacionados a este sistema foram levantados e seguem as seguintes distribuições:
De posse dos dados acima, construir os DCA's representativos dos sistemas ( somente c/
máquinas internas e com máquinas internas e externas). Executar sua simulação e avaliar o
impacto da realização de serviços externos. Este impacto deve ser analisado com base nas taxas
de ocupação dos diversos operadores e no tempo médio de espera por manutenção das
máquinas internas e externas.
Também executar simulações visando análise de redução do quadro de funcionários de 3 para 2.
Suponha que cada funcionário possa executar uma ou mais funções dentro da oficina. Neste caso
determinar como deveria ficar as funções dos 2 funcionários remanescentes, isto é, quem deveria
trabalhar em cada posição, de forma que as taxas de ocupação de cada um deles sejam as mais
adequadas.
2 - Uma empresa de mineração está operando com 3 frentes de minério e 1 frente de estéril. Para
atender às especificações de qualidade da usina de tratamento, a produção de minério deve ser
58
dividida em 40%, 35% e 25% para as frentes 1, 2 e 3, respectivamente. A usina deve ser
abastecida com no mínimo 2200 t/h de R.O.M.. Para atender ao planejamento de lavra, a relação
estéril/minério deve ser de 0.30. O minério proveniente das frentes é descarregado em um único
britador primário, que permite a descarga de apenas 1 caminhão por vez, enquanto o estéril é
descarregado em uma única pilha de deposição, que permite a descarga de até 2 caminhões
simultaneamente.
Deseja-se dimensionar, via simulação, a frota mínima de caminhões necessária para atender as
demandas citadas e também avaliar outros cenários de produção. Para tanto, foi feita uma coleta
de dados relativos aos tempos envolvidos nas diversas operações dessa mina. Esses dados estão
nos seguintes arquivos que serão fornecidos pelo professor do curso:
59
Para ajustar as distribuições de probabilidade, usar o sistema Best Fit e escolher o ranqueamento
das distribuições baseado no método “Chi-Quadrado”.
O tempo de simulação deve ser igual a 1 semana, com aquecimento de 2 horas e a simulação
deve ser replicada 3 vezes ( 3 corridas). O sistema deve ser inicializado uma única vez e as
estatísticas inicializadas a cada corrida.
60
Referências bibliográficas:
Andrade, E. L., Introdução à Pesquisa Operacional, 2ª edição, Rio de Janeiro, Editora LTC, 1998.
Fischman, G. S. Principles of discrete event digital simulation, New York, Wiley Interscience, 1978.
Hillier, F. S. e Lieberman, G. J., Introdução à Pesquisa Operacional, 3ª edição, São Paulo, Editora
Campus e Editora Universidade de São Paulo, 1988.
Lehmer, D. E. Mathematical methods in large-scale computing units. Ann. Comp. Lab. Harvard
University, 26, 141-146. 1951.
Prado, D. Teoria das filas e da simulação, Belo Horizonte, Editora DG, 1999.
Pidd, M., Computer Simulation in Management Science, 4ª edição, Chichester, John Wiley &
Sons, 1998.
Pinto, L. R., Saliby, E. SIMIN – Sistema de simulação a eventos discretos. V Inftel – Congresso
Petrobrás de Informática e Telecomunicações. Rio de Janeiro, 1999.
Rand Corporation A million random digits with 100,000 normal deviates,Glencoe, The Free Press,
1955.
61
Saliby, E., Repensando a Simulação - A amostragem descritiva, 1ª edição, Rio de Janeiro, Editora
Atlas, 1988.
Tocher, K. D., The Art of Simulation, London, English Universities Press, 1963.
Topuz, E., Duan, C., "A survey of operations research applications in the mining industry", CIM
Bulletin, v.82, n. 925, pp. 48-50, May, 1989.
62