Você está na página 1de 63

Curso de Pesquisa Operacional Aplicada à Mineração

(Programação matemática, teoria das filas e simulação)

Prof. Dr. Luiz Ricardo Pinto


DEMIN / EM/ UFOP
Setembro / 2002
Sumário:

1 - Origens da pesquisa operacional 2

2 - A teoria da decisão e os enfoques da pesquisa operacional 3

3 - Fases de um estudo de pesquisa operacional 4

4 - Modelagem em pesquisa operacional 5

5 - Modelos e forma padrão de problemas de programação matemática 7

6 - Resolução gráfica de um Problema de Programação Linear (P.P.L.) 10


7 – Resolução algébrica de um P.P.L. – Método SIMPLEX 11

8 - Softwares de resolução de problemas de otimização 15

9 – Alguns modelos de otimização para resolução de problemas de lavra 16

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

Figura 1 – Aplicações de P.O. na mineração

No Brasil, o uso de P.O. na mineração é ainda muito pequeno se comparado ao potencial


que essas técnicas têm a oferecer. Mesmo nas grandes empresas problemas de tomada de
decisão ainda são solucionados com base no bom senso e em experiências passadas. As
decisões tomadas dessa forma, apesar de serem consideradas viáveis, não garantem uma
decisão ótima sob determinado aspecto.

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.

2 - A teoria da decisão e os enfoques da pesquisa operacional

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.

2.1 - Classificação das decisões

Nível estratégico: refere-se à importância e abrangência da decisão.

Grau de estruturação: refere-se a forma como o processo está organizado estruturalmente.


Quanto mais estruturado, mais intimamente o processo pode ser acompanhado ou repetido.

A figura 2 dá alguns exemplos de decisões e suas classificações.

Grau Est. / Nível Est. Operacional Gerencial Corporativo


Alto (1) Administração de Programação da Localização de uma
estoque produção nova fábrica
Médio (2) Financiamento de Programação Diversificação por
capital de giro orçamentária aquisição de nova
empresa
Baixo Escolha de um slogan Contratação de Definição de
para a empresa pessoal programas de P & D

Figura 2 - Exemplos de níveis de decisões

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)].

2.2 - Características importantes da pesquisa operacional:

A P.O. apresenta duas características fundamentais:

1 - Aspecto multidisciplinar
2 - Uso de modelos

As ciências fundamentais relacionadas a P.O. são a matemática, a estatística, a economia


e a computação. Através dessas ciências é possível desenvolver e solucionar modelos
representativos da realidade.

3 - Fases de um estudo de pesquisa operacional

Um estudo de pesquisa operacional engloba, basicamente, as seguintes etapas:

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.

4 - Modelagem em pesquisa operacional

4.1 - Conceito de modelo

Um modelo nada mais é que um conjunto de suposições sobre a operação de um sistema.


Em outras palavras, um modelo pode ser visto como uma imitação da realidade. Pidd (1998)
apresenta as seguintes evoluções das definições de modelo:

1 - Um modelo é uma representação da realidade.


Esta definição ignora o motivo pelo qual o modelo está sendo construído.

2 - Um modelo é uma representação da realidade projetado para algum propósito definido.


Esta definição ignora o fato de o modelo ser uma ferramenta útil para o auxílio à tomada de
decisão.

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.

6 - Um modelo é a representação externa e explícita de parte da realidade vista pelas pessoas


que desejam usá-lo para entender, mudar, gerenciar e controlar aquela parte da realidade.

A figura 3 mostra esquematicamente o que seria um modelo:

Redução
Realidade Modelo
das var
Figura 3 - Modelo X Realidade

4.2 - Tipos de modelos

Em pesquisa operacional os modelos podem ser divididos em modelos de otimização e


modelos de simulação.
Os modelos de otimização apresentam as seguintes características:
 São adequados quando todas as variáveis do modelo são determinísticas;
 Seleção de uma única alternativa via análise matemática;
 A alternativa selecionada é considerada ótima sob um determinado aspecto.

Já os modelos de simulação apresentam as seguintes características:


 São adequados quando o modelo apresenta variáveis estocásticas;
 Alto grau de liberdade / flexibilidade;
 Permitem a criação e análise de cenários futuros (respostas a perguntas "E se?").

4.3 - Comparação entre modelos de otimização e simulação

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 - Modelos e forma padrão de problemas de programação matemática

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).

Caso mais trivial : Maximização ou Minimização de uma função.

Figura 4 - Área das soluções viáveis e função objetivo

Figura 5 - Área das soluções viáveis e função objetivo (Linear e Não-linear)

Programação Linear:

Suposições necessárias a um P.L.:

- 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 )
j1

Sujeito a gi (X1, X 2, X 3 ...)  bi i= 1,2, ...m ( Restrições )

Xi  0 (não negatividade das variáveis)

Solução viável : Conjunto de valores de Xi que satisfazem todas restrições

Conjunto viável : Conjunto de todas as soluções viáveis (poliedro sempre convexo)

Solução ótima: Solução viável que otimiza a função objetivo.

Programação inteira : Problemas discretos ( variáveis inteiras )

Programação não linear: Funções e/ou restrições não lineares

5.2 - Etapas a serem seguidas na construção de um modelo de otimização:

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.

NOTA: Pode-se buscar uma solução ótima ou boas soluções viáveis.

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.

Fase 1 - Definição do problema:

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.

Usina 1 Usina 2 Usina 3 Cap. max (t/mês)


Mina 1 9 16 28 10300
Mina 2 14 29 19 19700
Qmin (t/mês) 7100 13300 9600

Fase 2 - Identificação das variáveis relevantes:

Xij - quantidade de minério transportada da mina i para a usina j no período de um mês.


i = {1,2} j = {1,2,3}

Fase 3 - Formulação da Função Objetivo:

Min Z = 9X11 + 16X12 + 28X13 + 14X21 + 29X22 + 19X23

Fase 4 - Formulação das restrições:

Restrições de capacidade das minas: X11 + X12 + X13 ≤ 10300


X21 + X22 + X23 ≤ 19700
Restrições de requisição das usinas: X11 + X21 ≥ 7100
X12 + X22 ≥ 13300
X13 + X23 ≥ 9600
Restrições de não negatividade: Xij ≥ 0  i,j

Fase 5 a 7 - Escolha do método matemático de solução, aplicação do modelo e avaliação da


solução:

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.

6 - Resolução gráfica de um Problema de Programação Linear (P.P.L.)

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.

Fase 1 - Definição do problema:

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.

Fase 2 - Identificação das variáveis relevantes:

Xi = quantidade a ser produzida do produto i = {1,2}

Fase 3 - Formulação da Função Objetivo:

Max Lucro = 2X1 + 3X2

Fase 4 - Formulação das restrições:

Restrições da linha de produção 1: X1  60


Restrições da linha de produção 2: X2  80
Restrições globais de produções: X1 + X2  100
Restrições de não negatividade: Xij ≥ 0 i

Resolução gráfica do problema:

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).

Figura 6 - Resolução gráfica de um Problema de Programação Linear

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.

7 – Resolução algébrica de um P.P.L. – Método SIMPLEX

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:

Se UTILIZAÇÃO < DISPONIBILDADE => FOLGA > 0 e


se UTILIZAÇÃO = DISPONIBILIDADE => FOLGA = 0

11
O problema anterior poderia ser transformado no problema abaixo, após a introdução das
variáveis de folga:

Maximizar L = 2X1 + 3X2 + 0X3 + 0X4 + 0X5


Sujeito às restrições: 1X1 + 0X2 + 1X3 + 0X4 + 0X5 = 60
0X1 + X2 + 0X3 + 1X4 + 0X5 = 80
X1 + X2 + 0X3 + 0X4 +1X5 = 100
Xij ≥ 0 i
Assim, o problema consiste em resolver um sistema de equações lineares que maximiza o
lucro dado pela função objetivo. Porém, o sistema possui 3 equações com 5 incógnitas, ou seja,
um sistema indeterminado, com infinitas soluções. Mas, como todas as variáveis devem ser nulas
ou positivas, se forem atribuídos valores nulos para duas delas, pode-se achar a solução para o
sistema resultante. Se forem feitas todas as combinações possíveis (atribuindo zero para duas
variáveis e calculando os valores das outras três), basta comparar as soluções encontradas e
escolher aquela que maximiza o lucro. As variáveis cujo valor foi arbitrado em zero são chamadas
de variáveis não-básicas e as variáveis cujos valores foram calculados são chamadas de variáveis
básicas. O conjunto de variáveis básicas é chamado de base.
A resolução de um P.P.L. dessa forma pode-se tornar impraticável quando o número de
equações e variáveis crescer um pouco mais, pois o número de sistemas a serem resolvidos
cresceria muito. O algoritmo SIMPLEX de Dantzig é um algoritmo iterativo que resolve o problema
informando, inicialmente, o sistema de equações a ser resolvido e quais os próximos sistemas que
deverão ser resolvidos para melhorar a solução até se alcançar a solução considerada ótima. A
fundamentação teórica do método não será aqui discutida mas o problema acima será resolvido
utilizando essa técnica de forma a exemplificar a aplicação do SIMPLEX.
Primeiramente, faz-se uma transformação da função objetivo:

de L = 2X1 + 3X2 para L - 2X1 - 3X2 - 0X3 - 0X4 - 0X5

Iteração 1:

É construído o primeiro quadro do SIMPLEX, que representa o sistema com as variáveis


originais igualadas a zero. O quadro é mostrado abaixo:

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:

0X1 + X2 + 0X3 + 1X4 + 0X5 = 80


X1 + X2 + 0X3 + 0X4 +1X5 = 100

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

A nova solução obtida para X1 = 0 e X4 = 0 é:


X3 = 60
X2 = 80
X5 = 20
L = 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

A nova solução obtida para X4 = 0 e X5 = 0 é:


X3 = 40
X2 = 80
X1 = 20
L = 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.

8 - Softwares de resolução de problemas de otimização

Existem no mercado um número razoável de softwares de resolução de problemas de


otimização. Aqui serão apresentados apenas de 4 deles:

1- Solver do Microsoft Excel: Software de otimização que acompanha o Microsoft Excel.


Resolve problemas de programação linear, não-linear e inteira. Apresenta fortes limitações
relativas ao número de variáveis, inteiros e restrições. As células da planilha são usadas para
armazenar as variáveis, as restrições e a função objetivo do problema.

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.

9 – Alguns modelos de otimização para resolução de problemas de lavra

Neste tópico serão apresentados alguns modelos de otimização de operações de lavra.


Exemplos de uso dos modelos e suas resoluções serão feitas usando um dos softwares citados
anteriormente.

9.1 – Modelo da mistura de minérios:

Este modelo foi transcrito parcialmente do trabalho de Pinto (1995).


O modelo trata da retirada de minério de diversas pilhas, de modo que seja possível fornecer para
usina de tratamento ou um cliente externo, um produto que esteja de acordo com as
especificações técnicas relativas à qualidade e quantidade. Dessa forma, é preciso conhecer a
quantidade de minério disponível em cada pilha bem como sua composição química e sua
granulometria que, no modelo proposto, pode ser classificada como fino, médio ou granulado.
Assim, surgem questões do tipo:
Com quais pilhas deve-se trabalhar para atender as especificações de qualidade e
quantidade?
Conhecendo a quantidade de minério disponível em cada pilha e as especificações
requeridas, qual quantidade máxima de mistura pode ser obtida? E qual a quantidade de minério
que deve ser retirada de cada pilha, considerando que este número deve ser múltiplo da
capacidade da caçamba dos equipamentos de carga que farão a retomada das pilhas?

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.

Função Objetivo: Maximizar (1)

Restrições de Qualidade:

(2)

Restrições de Quantidade:

qi < Qi i , i  G (3)

Restrições de número não fracionário de caçambadas:

qi = C.Ni (4) e Ni inteiro (5) i , i  G

Restrições de não-negatividade:

qi > 0 i (6) Ni > 0 i (7)

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:

Este modelo foi transcrito em parte do trabalho de Pinto (1995).


Como sabemos, em qualquer mina a lavra normalmente é feita em diversas frentes de
forma a alimentar a usina de tratamento com um minério que atenda as especificações químicas e
físicas requeridas. Sendo assim, faz-se necessária a determinação da taxa de produção de cada
uma dessas frentes de forma a atender as restrições quantitativas e qualitativas da usina. Tais
restrições não são necessariamente fixas e podem mudar de tempos em tempos em função de
diversos fatores. Além dessas restrições, existem também restrições relativas à capacidade
máxima dos equipamentos de carga e transporte e a produção mínima que eles devem ter de
forma a atender às especificações econômicas, pois seria inviável colocar um equipamento de
carga em uma frente produzindo quantidades muito pequenas.
17
Muitas vezes é necessário responder a perguntas do tipo: "Qual produção máxima de
minério pode ser alcançada com as frentes disponíveis?" Perguntas desse tipo correspondem a
uma função objetivo que deve ser otimizada variando-se as taxas de produção de cada uma das
frentes disponíveis, atendendo todas as restrições do problema tais como capacidade de
produção, teores limites, número e qualidade das frentes, etc.
Suponhamos uma mina de ferro a céu aberto onde sejam controlados, durante a lavra, os
teores de diversas variáveis. Neste trabalho consideraremos somente o controle das variáveis
químicas pois o acréscimo de outras não passa de um simples exercício matemático.
A cada plano de curto prazo elaborado, existem n frentes disponíveis, sendo que a lavra
pode acontecer simultaneamente em m dessas frentes (m£n), dependendo da disponibilidade de
equipamentos de carregamento e transporte. Deseja-se então determinar qual seria a melhor
combinação dessas frentes para que seja atendida a produção requerida, qualitativa e
quantitativamente.
Matematicamente, podemos expressar o problema acima descrito como:

Max

onde M é o conjunto de frentes de minério

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

onde: Pi é a produção de cada frente 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);

m é o número máximo de frentes operadas simultaneamente, que não pode ultrapassar o


número de equipamentos de carga disponíveis;

18
Restrições de limites de teores:

(5) p/ todo k

onde: TIk é o teor mínimo admissível para a variável k;

TSk é o teor máximo admissível para a variável k;

tki é o teor da variável k na frente i;

A inequação (5) equivale a:

(5.1) p/ todo k;

(5.2) p/ todo k;

Restrições relativas à relação estéril /minério:

(6)

onde: R = relação estéril /minério mínima requerida


M é o conjunto de frentes de minério e
E é o conjunto de frentes de estéril.

Restrição de número de caminhões por frente:

Pi < (60.Cap.Nmaxi)/TCi  i є M, i є E (7)

Onde:

Cap = capacidade dos caminhões;

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.

O número total de caminhões é dado por:

Ncam =
P .TC (8)
Σ ________
iєM
i i

60.Cap
_______
iєE

Ncam deve ser menor ou igual ao número de caminhões disponíveis.

9.3 – Modelo de determinação do ritmo de lavra das frentes com equipamentos diferentes e
sem alocação de caminhões:

Este modelo foi parcialmente transcrito do trabalho de Pinto e Merschmann (2001).


A lavra de uma mina geralmente é feita em diversas frentes de modo que, realizando a
mistura dos minérios retirados das frentes, seja possível fornecer para a usina de tratamento um
minério que esteja de acordo com as especificações de qualidade necessárias. Deste modo,
precisa-se conhecer qual o ritmo de lavra a ser implementado em cada frente, que atende as
especificações quantitativas e qualitativas da usina. Entende-se por ritmo de lavra a produção
horária da frente (t/h).
Uma mina convencional, possui equipamentos como caminhões, carregadeiras e
escavadeiras que viabilizam a lavra nas diversas frentes. Mesmo mantendo uma frota com um
número fixo de equipamentos, a quantidade disponível em condições de operar pode variar ao
longo do tempo. Isso pode acontecer por motivo de quebra desses equipamentos, manutenção
preventiva, atrasos operacionais, etc. Sendo assim, o cumprimento do ritmo de lavra com objetivo
de atender as especificações da usina depende, entre outros fatores, da disponibilidade dos
equipamentos na mina.
Diante deste cenário, diversas questões podem surgir, tais como:
Com quais frentes deve-se trabalhar para atender as especificações de qualidade da usina
de tratamento de minério?
Com a frota de equipamentos disponíveis, será possível atender um ritmo de lavra que
possibilite o atendimento das especificações da usina?
A partir de uma determinada frota de equipamentos e das especificações impostas pela
usina, qual é a máxima produção que pode ser obtida? E qual é o ritmo de lavra de cada frente?
Cada uma das questões apresentadas anteriormente pode ser respondida mediante a
construção de modelos distintos de programação matemática.
A seguir, será apresentado um modelo que tem como objetivo determinar o ritmo de lavra
de cada frente disponível e alocar os equipamentos existentes às mesmas, de forma a maximizar

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);

0, se o equipamento de carga j não trabalha na frente i


xji=
1, se o equipamento de carga j trabalha na frente i

tvi o teor da variável v na frente 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 (%);
Pminj a produção mínima admissível para o equipamento de carga j (t/h);
Pmaxj a produção máxima admissível para o equipamento de carga j (t/h);
R a relação estéril minério mínima requerida;
Preq a produção mínima requerida (t/h);
Cap = capacidade dos caminhões (t);

TCi = tempo médio de ciclo para a frente i;


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.

Função Objetivo:

21
Maximizar

Restrições de Qualidade:

Restrições de Alocação:

Restrições de Produção:

Restrição de número de caminhões por frente:

Pi < (60.Cap.Nmaxi)/TCi  i є M, i є E (8)

O número total de caminhões é dado por:

Ncam =
P .TC
Σ ________
iєM
i i (9)
60.Cap
_______
iєE

Ncam deve ser menor ou igual ao número de caminhões disponíveis.

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:

Inicialmente, será considerada a mesma situação apresentada no caso do modelo anterior.


A diferença é que no caso de alocação de caminhões tem-se também que realizar a alocação de
caminhões às frentes de lavra (modelo de alocação estática). Para isso, deve-se levar em
consideração dois fatos:
Cada caminhão deve atender uma única frente de lavra, sendo que, uma frente pode ter
mais de um caminhão alocado a ela.
Um caminhão somente poderá trabalhar numa determinada frente se o seu modelo for
compatível com o modelo do equipamento de carga que foi alocado àquela frente.
O modelo matemático é apresentado 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);

0, se o equipamento de carga j não trabalha na frente i


xji=
1, se o equipamento de carga j trabalha na frente i

0, se o caminhão k não trabalha na frente i


dki=
1, se o caminhão k trabalha na frente i

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

tvi o teor da variável v na frente 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 (%);
Cki a produtividade do caminhão k quando ele trabalha na frente i (t/h) - valor que depende da
capacidade do caminhão e dos tempos médios de ciclo relacionados à frente i;
Pminj a produção mínima admissível para o equipamento de carga j (t/h);
Pmaxj a produção máxima admissível para o equipamento de carga j (t/h);
R a relação estéril/minério mínima requerida;
Preq a produção mínima requerida (t/h).

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:

1 – A produção horária máxima de cada carregadeira é de 900 t/h;


2 – Cada frente em operação deve produzir, no mínimo, 300 t/h.
3 – O número de carregadeiras é igual a 4, ou seja, este deve ser o número máximo de frentes em
operação simultaneamente;
4 – A produção mínima da mina deve ser de 1700 t/h (ROM);
5 – A relação estéril/minério deve ser >=0.5
5 – A produção deve atender às especificações de qualidade, expressas por teores mínimos e
máximos de cada uma das variáveis de controle;
6 – O modelo deve ser desenvolvido de forma que se possa escolher entre dois objetivos:
maximizar a produção de minério e minimizar a distância média de transporte do minério (média
ponderada da distância com a produção de cada frente);
7 - Os teores de cada frente devem ser considerados como dados de entrada, assim como as
especificações dos teores da blendagem e todos os dados parametrizáveis do problema em
questão.

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:

Frentes 11 a 14 são de estéril.

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.

Tabela 1 - Limites de produção das carregadeiras


Carregadeira Produtividade Min (t/h) Produtividade Max (t/h)
1 800 1500
2 750 1300
3 650 1300
4 600 1000

Tabela 2 - Teores das frentes


Frente Fe SiO2 Al2O3 P P.P.C. Dist. (m)
1 56.70 1.35 1.89 0.061 2.47 1000
2 52.08 12.34 2.89 0.034 7.98 1500
3 56.53 3.56 2.78 0.030 3.45 1200
4 47.04 17.98 1.62 0.027 1.50 1100
5 53.17 7.89 4.45 0.045 4.91 2000
6 52.08 18.69 2.34 0.022 1.05 2500
7 54.26 8.78 1.37 0.036 1.50 1700
8 55.10 8.76 3.78 0.034 1.25 1000
9 55.02 15.93 1.25 0.056 1.94 800
10 (Estéril) 0 0 0 0 0 1700
11 (Estéril) 0 0 0 0 0 2300

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).

10.1 - Elementos de uma fila:

Servidores

1
Clientes
2
Fila

População 3
Atendimento

Figura 7 - Elementos de uma fila

10.2 - Características de uma fila:

10.2.1 – Clientes e tamanho da população

População infinita => Chegadas independentes


População finita => Chegadas interdependentes

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.

10.2.3 – Processo de atendimento:

 = Ritmo de atendimento
TA = Tempo de atendimento

10.2.4 – Número de servidores:

É a quantidade de servidores que atendem aos clientes.

10.2.5 – Disciplinas das filas:

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.

10.2. 6 – Tamanho médio da fila:

Se  e  são constantes => o tamanho da fila oscila em torno de um valor médio. Se  < 
a fila aumentará indefinidamente.

10.2.7 – Tamanho máximo da fila:

Os clientes devem aguardar em uma área de espera que deve ser dimensionada de
acordo com o tamanho máximo esperado para a fila.

10.2.8 – Tempo médio de espera:


O tempo médio de espera depende dos processos de chegada e atendimento.

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.

10.4 – Dinâmica de uma fila:

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

Duração do atendimento (minutos):


Cliente 1 2 3 4 5 6 7 8 9 10 11 12 Média=2.0
Duração 1 2 1 1 3 2 1 4 2 3 1 3  = 30 / h

Tempo de espera de cada cliente:

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

TF = (3+4+3+1+3+2)/12 = 16/12 = 1.33 min


NF = (3+4+3+1+3+2)/35 = 16/35 = 0.46 clientes

10.5 - Sistemas estáveis:

Sistema estável é aquele em que  e  se mantêm constantes ao longo do tempo. Se  e  não


são estáveis, a análise do comportamento do sistema pela teoria das filas só é possível se
retalharmos o período de tempo, o que torna a análise muito mais complexa.

10.6 – Tamanho da amostra:

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

10.8 - Variáveis aleatórias fundamentais:

10.8.1 - Variáveis referentes ao sistema:


TS = tempo médio de permanência no sistema
NS = nr. médio de clientes no sistema

10.8.2 - Variáveis referentes ao processo de chegada:


 = ritmo médio de chegada
IC = intervalo entre chegadas
por definição: IC = 1/ 

10.8.3 - Variáveis referentes à fila:


TF = tempo médio de permanência na fila
NF = nr. médio de clientes na fila

10.8.4 - Variáveis referentes ao processo de atendimento:


TA = tempo médio de atendimento ou serviço
M = quantidade de atendentes ou servidores
NA = nr. médio de clientes que estão sendo atendidos
= ritmo médio de atendimento de cada atendente
por definição: TA = 1/ 

10.8.5 - Relações básicas:


NS = NF + NA
TS = TF + TA
Pode-se demonstrar também que:
NS = NF + / = NF + TA/IC

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

10.8.7 - Intensidade de tráfego ou número mínimo de atendentes:


i = | /| = |TA/IC|
i é o próximo valor inteiro que se obtém pela divisão / . Assim, i representa o número mínimo de
atendentes necessário para atender a um dado fluxo de tráfego.
Unidade de i = erlangs ( em homenagem A. K. Erlang)

10.8.8 - Fórmulas de Little (J. D. C. Little):

NF =  . TF
NS =  . TS

10.8.9 - Postulados básicos:

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:

Exemplo de chegadas de veículos a um pedágio: foram anotados o número de veículos que


chegaram a cada intervalo de 1 min. Entre 7 e 8 horas chegaram 120 veículos.

Ritmo Freq. Absoluta Freq. Relativa Dist. Poisson (=2)


0 9 0.150 0.135
1 17 0.283 0.271
2 17 0.283 0.271
3 9 0.150 0.180
4 4 0.066 0.090
5 1 0.017 0.036
6 1 0.017 0.012
7 1 0.017 0.003
8 1 0.017 0.001
9 0 0.000 0.000
10 0 0.000 0.000

 = 120 veículos / 60 min = 2 veículos / min.

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.

10.11 - Distribuição Exponencial Negativa:

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

onde: A = distribuição dos intervalos entre chegadas


B = distribuição dos tempo de serviço
c = quantidade de servidores (atendentes)
K = capacidade max. Do sistema
m = tamanho da população
Z = disciplina da fila

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).

10.12 - Filas Modelo M/M/1 - Fórmulas usuais:

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.

População infinita - fórmulas usuais

1 – Número médio de clientes na fila:

2
NF 
 (   )

2 – Número médio de clientes no sistema:


NS 
(   )

3 – Tempo médio que o cliente fica na fila:



TF 
 (   )

4 – Tempo médio que o cliente fica no sistema:

1
TS 
(   ) 35
5 – Probabilidade de existirem n clientes no sistema:

Pn  (1   /  )( /  ) n

6 - Taxa de utilização:

2 2
NF  
 (   ) 1  

Quando  tende para 1 a fila tende a aumentar infinitamente:

NF

0 1 ρ
Figura 8 - Variação do tamanho da fila com a taxa de utilização

10.13 - Filas Modelo M/M/1/K - Fórmulas usuais:

1 – Número médio de clientes na fila:

(   )
NF  K  .(1  P0 )

2 – Número médio de clientes no sistema:

(   ) 
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.

2 - Em uma pedreira, caminhões chegam para descarregar em um britador, provenientes de 2


minas diferentes. O tempo médio para descarregar um caminhão é de 2 minutos. Os caminhões
chegam da mina 1 a intervalos médios de 3 minutos e da mina 2 a intervalos médios de 12
minutos. Supondo que os processos de chegada e atendimento sejam marcovianos (modelo
M/M/1), determinar qual espaço deverá ser disponibilizado na praça do britador (quantos
caminhões a praça deve comportar) para que as operações sejam realizadas satisfatoriamente.

3 – Uma lanchonete está estudando a possibilidade de oferecimento de serviço de atendimento


expresso a motoristas de forma a otimizar o atendimento a clientes que querem levar seus
lanches para casa. Neste serviço, os clientes fazem seus pedidos, pagam e recebem suas
mercadorias sem a necessidade de sair do carro. Ao chegarem a lanchonete os carros entram
num corredor que possui três cabinas espaçadas umas das outras. Ao passar pela primeira
cabina um funcionário anota o pedido do cliente num terminal de computador e o encaminha para
o setor de produção. O carro segue em frente e ao passar pela segunda cabina, o cliente efetua o
pagamento do pedido. Após o pagamento, o carro segue até a terceira cabina onde recebe o
pedido devidamente empacotado. Assumindo que os processos de chegada e atendimentos nas
diversas cabinas sejam Marcovianos, determinar qual seria o espaço a ser reservado antes de
cada cabina (suponha que cada carro ocupe um espaço médio de 5 metros) de forma que o fluxo

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

Como mostrado anteriormente a programação matemática presta-se à resolução de um


grande número de problemas corriqueiros de uma mina. Porém, à medida que tais problemas
crescem, muitas vezes surgem variáveis cujo comportamento não é determinístico e sim aleatório.
Nestes casos a simulação apresenta-se como uma ferramenta poderosa no estudo destes
sistemas e na resolução dos problemas de interesse.
A simulação teve sua origem como uma extensão do método de Monte Carlo que foi
proposto por von Neumann e Ulam durante a 2ª Guerra Mundial, para o estudo da difusão de
neutrons, estudo este que resultou na construção da bomba atômica.
Atualmente, com a evolução fantástica dos computadores, a simulação tornou-se uma
ferramenta bastante popular e seu uso tem crescido substancialmente nos últimos anos. Uma das
causas desse crescimento reside no fato de que com o uso da simulação podemos criar modelos
mais realistas, o que compensa a sua menor precisão quando comparada aos métodos
determinísticos. Sobre este aspecto Saliby (1988) diz que é preferível ter soluções aproximadas

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.

11. 1 - A idéia básica da simulação


Simular a realidade significa operar o modelo que a representa, visando analisar o sistema
para tornar possível responder perguntas do tipo: E se o sistema operasse desta ou daquela
forma o que aconteceria? A figura 9 esquematiza o uso de um modelo de simulação.

Entradas Saídas
Modelo de simulação
Políticas Respostas

Interação e experimentação

Figura 9 - Esquema de uso de um modelo de simulação

O uso da simulação em relação à experimentação direta traz as seguintes vantagens:


menor custo, menor tempo de análise, possibilidade de replicação dos resultados, maior
segurança, possibilidade de testar alternativas consideradas ilegais no momento.
Já o uso da simulação em relação à modelagem matemática apresenta maiores vantagens
na modelagem mais simples de problemas complexos.

11.2 - Fases de um estudo de simulaçã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

Exemplo: Estudo da viabilidade de implantação de um sistema automático de alocação de


caminhões em uma mina a céu aberto.

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.

2 - Identificação das variáveis relevantes:


Deve-se verificar as principais variáveis que influenciam o sistema e aquelas cujo
comportamento se quer analisar. Neste caso, podem ser citadas o tempo de fila dos caminhões,
tempo ocioso dos equipamentos de carga, qualidade do R.O.M., produtividade da frota, etc.

3 – Coleta de dados:
Nesta fase se processa a coleta de dados relativos às variáveis relevantes.

4 - Formulação do modelo lógico-matemático:


Aqui deve-se estabelecer as regras matemáticas implícitas na execução das diversas
atividades componentes do sistema. Como exemplo podem ser citadas: o tempo de deslocamento
cheio e vazio dos caminhões, distribuições estatísticas de tempos de quebra e manutenção dos
equipamentos, blendagem do minério proveniente das frentes, restrições de capacidade dos
equipamentos, equacionar regras de alocação fixa e dinâmica dos caminhões, etc.

5 - Construção do modelo computacional:


Após a completa definição do modelo, deve ser desenvolvido o programa de computador
para sua simulação. Isto pode ser feito utilizando-se uma linguagem de programação de propósito
geral (caminho mais difícil e demorado) ou uma linguagem específica de simulação (caminho
recomendado).

6 - Verificação e validação do modelo:


Com o programa pronto devem ser executados testes para verificação de erros de
programação, consistência e conceituação. Muitas vezes o programa não tem erros de
programação, mas o modelo programado não é uma representação adequada da realidade que
ele se dispõe a representar. Para a validação do modelo podem ser simuladas, por exemplo,
situações simples cujos resultados sejam passíveis de acompanhamento, ou simular cenários
passados e compará-los com seus registros.

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.

11.3 - Algumas áreas de aplicação / exemplos:

1 - Manufatura: Testes de novas alternativas ou políticas de controle


2 - Saúde: Estudo de sistemas de triagem em grandes hospitais. Análise de alternativas
operacionais de setores de emergência.
3 - Reengenharia dos processos de negócios: Produção em lotes para produção em fluxo
contínuo.
4 - Sistemas de transporte: Operação de ferrovias, rodovias, aeroportos, portos, etc.
5 - Área militar: simulação de operações de guerra.
6 - Mineração : Análise da operacionalidade de planos de lavra de curto prazo, análise de cenários
alternativos de produção, etc.

11.4 - Considerações a respeito de um estudo de simulação

Os pontos a serem considerados são:

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:

Uma das vantagens da simulação é a possibilidade de controlar a velocidade com que as


alterações no estado do modelo se processam. A essência da simulação é que as trocas de

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.

Formas de manipulação do tempo:

1 - Divisão do tempo em intervalos regulares (“time-slicing”)

O modelo é atualizado a cada intervalo constante de tempo.

2 - Técnica do próximo evento:

O modelo é atualizado a intervalos variáveis de tempo. Assim, o modelo só é atualizado


quando se tem certeza que alguma mudança ocorrerá. Estas trocas de estado são chamadas de
eventos.

B - Durações determinísticas ou estocásticas:

Um sistema é dito determinístico, quando seu comportamento pode ser perfeitamente


previsível (analisado analiticamente) e estocástico quando as variáveis que o constituem têm seu
comportamento descrito por distribuições de probabilidade.

C - Trocas de estado discretas ou contínuas:

As variáveis incluídas em um modelo de simulação podem trocar seus valores de 4 formas


distintas:

1 - Continuamente a qualquer ponto do tempo;


2 - Continuamente em pontos discretos do tempo;
3 - Discretamente a qualquer ponto do tempo;
4 - Discretamente em pontos discretos do tempo.

Baseado nas colocações acima, podemos classificar os modelos de simulação em:

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

Emprega a técnica do próximo evento para controlar o comportamento do modelo.


Aplicada a sistemas fortemente estruturados em filas (óbvias ou não).

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.

Organização das entidades:


Classes: grupos permanentes de entidades idênticas ou similares.
Conjuntos: grupos temporários de entidades idênticas ou similares. São usados para
representar, por exemplo, um grupo de entidades em fila.
Atributos: são itens que informam determinadas características de uma entidade. Servem
para 2 propósitos:
Distinguir membros de uma mesma classe de entidades
Controlar o comportamento das entidades.

Operações relacionadas às entidades:

Evento: é o instante do tempo no qual alguma troca significativa de estado ocorre no


sistema.
Atividade: são as operações e procedimentos que são iniciados em cada evento.
Processo: às vezes, é usual agrupar uma seqüência de eventos na ordem cronológica que
eles acontecem. Tal seqüência é conhecida como processo, e é utilizada para representar parte
ou toda a “vida” de uma entidade dentro do sistema.

44
Relógio da simulação: representa o instante corrente da simulação.

11.6 - Modelagem para simulação - Diagrama de Ciclo de Atividades (DCA):

Pinto e Saliby (1999) descrevem da seguinte maneira o Diagrama de Ciclo de Atividades -


DCA e seus elementos:
O Diagrama de Ciclo de Atividade - DCA, como sendo uma forma de representação gráfica
do sistema a ser modelado e constitui-se de um conjunto de elementos interligados. São três
elementos básicos: as entidades, as atividades e as filas. As entidades constituem-se no elemento
primário do modelo e representam as classes de entidades físicas do sistema.
Existem entidades permanentes e temporárias. As primeiras permanecem no sistema
durante todo o período simulado, enquanto as últimas permanecem no sistema somente parte
desse período. O primeiro passo na construção do DCA é a definição das entidades do sistema e
no caso das permanentes, também as suas respectivas quantidades. A cada entidade podem ser
associados atributos que servem para registrar determinados dados da simulação. Como as
entidades estão agrupadas em classe, cada entidade da classe possui o conjunto de atributos
definido para a classe.
As atividades representam estados de atividade do sistema. Cada atividade pode ter a
participação de uma ou mais entidades. A duração de cada atividade pode ser constante ou seguir
uma distribuição de probabilidades predefinida. Durante a execução de uma atividade, as
entidades nela envolvidas ficam indisponíveis.
A representação gráfica de uma atividade dentro de um DCA é feita por um retângulo.
Cada entidade que participa da atividade define uma entrada e uma saída do retângulo.
As filas representam estados passivos de entidades que aguardam o atendimento das
condições de início de uma atividade, para dela participarem. Posto isto, pode-se deduzir a
obrigatoriedade de alternância entre filas e atividades num DCA. Outra conseqüência desta
alternância é que o tempo de permanência numa fila não é predeterminado, variando de acordo
com o andamento da simulação. Esta obrigatoriedade de alternância entre filas e atividades,
muitas vezes torna necessária a definição de filas artificiais, onde a espera nunca acontece. As
filas são representadas graficamente por um círculo.
Um DCA é composto de um conjunto de subdiagramas que constituem os ciclos de vida de
cada entidade. O ciclo de vida de cada entidade, por sua vez, é o conjunto de atividades e filas
percorridos pela entidade ao longo do sistema.
Além dos três elementos básicos no DCA também pode ser mencionado o elemento
fonte/sumidouro, que é o elemento utilizado para representar a entrada e saída de entidades
temporárias do sistema. Este elemento é representado por dois círculos sobrepostos. As
fontes/sumidouros podem ser consideradas como filas de capacidade infinita que sempre

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.

Exemplo: Uma empresa de mineração opera 7 escavadeiras. As escavadeiras trabalham em


operação contínua, interrompendo seu funcionamento apenas para manutenção corretiva. O
tempo entre falhas é descrito por uma distribuição exponencial negativa com média 7 dias. A
manutenção é feita por uma única equipe e sua duração é também é exponencialmente
distribuída com média de 1 dia. Deseja-se simular este problema para avaliar o tempo que as
escavadeiras ficam paradas por falta de manutenção. Também deseja-se estimar a ocupação
média da equipe de manutenção e avaliar o impacto do aumento no número de equipes para
duas.

Figura 10 - DCA representativo do exemplo da manutenção das escavadeiras

11.8 - Exercícios:

Estes exercícios serão resolvidos em sala de aula.


1 - Durante o dia o bilheteiro de um teatro se encarrega da venda de ingressos e do atendimento a
consultas por parte do público. As consultas pessoais têm prioridade sobre as chamadas

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.

4 - Um porto de embarque de minério opera da seguinte forma:


Os navios chegam ao porto em intervalos de tempo que seguem uma distribuição exponencial
negativa com média de 6 dias. A capacidade dos navios varia da seguinte forma: 75% são de
100.000 t, 15% são de 200.000 t e 10% de 150.000 t. Chegando ao porto, os navios encontrando
o pier vago ( o porto só possui 1 pier) e desde que haja minério no estoque, começam a ser
carregados a uma taxa de 1200 t/h. Caso o estoque de minério termine antes do navio ser
completamente carregado, o navio aguardará no pier a chegada de minério, ou seja, ele só deixa
o pier quando estiver completamente carregado. O minério chega ao porto por via ferroviaria,
sendo que cada trem é composto de 80 vagões com capacidade de 100 t cada um. Os trens
chegam ao porto, em média, a cada 7 horas, seguindo uma distribuição normal, com desvio
padrão de 1 hora. Os trens, chegando ao porto, têm seus vagões descarregados um a um, por um
único virador de vagões. O tempo de descarga de cada vagão segue uma distribuição normal com
média de 2,5 minutos e desvio padrão de 0,3 minutos. Ao fim da descarga de cada vagão,
obviamente, o estoque de minério do porto aumenta em 100 t. Posto isto, pede-se construir o
diagrama de ciclo de atividades para o sistema.

48
11.9 - Formas de estruturação de um programa de simulação

Neste tópico serão estudadas algumas formas de abordagem para estruturação de


programas de simulação. Como dito anteriormente, existem basicamente 4 abordagens: pelo
método das três fases, por processo, por atividades e por eventos. Aqui serão descritas apenas as
duas primeiras formas. A primeira por ser a mais didática e a segunda por ser muito utilizada em
softwares comerciais. Apesar das abordagens distintas, todo software de simulação apresenta a
estruturação básica mostrada na figura 11.

Ferramentas:
Programa executivo: entrada/saída
programação amostragem
seqüenciamento depuração
etc.

Modelo:
programação específica
feito pelo analista

Figura 11 - Estrutura global de um programa de simulação

11.9.1 - Abordagem pelo método das três fases

É uma das formas de estruturação de programas de simulação a eventos discretos. Foi


apresentado por Tocher em 1963. Suas principais características são descritas a seguir.

Conceitos de evento e relógio de simulação:

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

As três fases que caracterizam o método são:

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

Definição do Teste de interrupção


modelo ou término

Inicialização Relatórios

Avanço do
Fim
Fase A relógio

Execução dos
Fase B eventos B

Figura 12 - Estruturação de um programa pelo método das três fases

51
11.9.2 - Abordagem por processo

Usado primeiramente no sistema SIMULA em 1966. Para modelar um sistema usando as


abordagens anteriores, é necessário que o analista considere o processo (ou ciclo de vida) de
cada classe de entidades e quebrá-lo em partes fundamentais. Na abordagem por processos, o
bloco básico de construção do modelo é o processo de cada classe de entidades. Um processo é
definido como uma seqüência de operações através das quais uma entidade deve passar durante
sua vida no sistema. Cada classe de entidades tem seu próprio processo. Assim, uma simulação
baseada em processos consiste num conjunto de processos, pelo menos um para cada entidade.
Durante a simulação, entidades serão criadas como membros dessas classes e seguirão o
processo previsto para a classe. O programa executivo controla, a cada instante da simulação, o
movimento dessas entidades pelos processos. O progresso no movimento da entidade pode ser
suspenso por duas condições:

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).

Processamento de uma simulação baseada na abordagem por processos:

Teoricamente um processo é uma lista de operações cronologicamente ordenada. O programa


executivo precisa saber em quais pontos uma entidade pode ter seu curso suspenso por retardos
condicionais e incondicionais. Desta forma, cada processo deve conter pontos de reativação, nos
quais as entidades suspensas retornam ao processo. Um programa executivo deve manter um
registro para cada entidade que contenha dois campos: seu tempo de reativação e seu próximo
ponto de reativação. O programa executivo deve então manter duas listas destes registros:

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.

11.10 – Coleta de dados

Uma fase importantíssima em um estudo de simulação é a coleta de dados. Se dados


ruins entrarem no modelo, obviamente, os resultados serão ruins, independente de o modelo estar
desenvolvido adequadamente. Primeiramente deve-se identificar as variáveis relevantes e depois
coletarem os dados sobre elas. Coletados os dados, que normalmente são tempos de execuções
de atividades, deve-se proceder a análise dos dados buscando descobrir a distribuição de
probabilidades que melhor representa cada conjunto de dados levantados. Atualmente, existem
softwares poderosos no mercado que realizam esta tarefa para o analista de pesquisa
operacional. O sistema ARENA, da Rockwell Software (www.paragon.com.br) , por exemplo, traz
o pacote INPUT ANALYSER, que torna bastante simples esta tarefa, como será visto no decorrer
das aulas práticas do curso. A Palisade (www.palisade.com) possui o BEST FIT, que é um pouco
mais poderoso que o INPUT ANALYSER. Todos esses softwares realizam ajustes tendo como
base os métodos do “Chi-quadrado”, “Kolmogorov-Smirnov” e/ou “Anderson-Darling”. Feita a
análise as distribuições que melhor se ajustam aos dados de entrada são, então, classificadas e o
usuário pode escolher a que melhor lhe convier.

11.11 – Amostragem aleatória simples e geração de números aleatórios

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

Exemplos de geradores: > Roleta


> Dados
Nota: ambos são geradores muito lentos

Simuladores necessitam de longas seqüências de números aleatórios, o que dificulta o uso


dos geradores exemplificados. Podem ser usados equipamentos eletrônicos e radioativos para
este fim. Este tipo de equipamento mede o número de partículas emitidas num curto intervalo de
tempo. Um aparelho semelhante a um contador Geiger é usado para contar essas partículas em
cada intervalo de tempo e os resultados obtidos são convertidos em números aleatórios. Por
razões óbvias, um contador deste tipo não poderia ser usado em um simulador.

11.11.2 – Números pseudo-aleatórios

A importância de se produzir seqüências idênticas de números aleatórios reside na


garantia que as condições de teste de cada cenário sejam idênticas e que seja possível a
repetição da simulação.
Números aleatórios podem ser gerados e depois armazenados de alguma forma, como por
exemplo, em tabelas (Rand Corporation, 1955). O problema é que números armazenados dessa
forma deixam de ser aleatórios a partir do momento que pode-se prever o próximo número
observando a tabela!
Números pseudo-aleatórios são produzidos por geradores baseados em regras
matemáticas bem conhecidas. As seqüências produzidas passam em testes idênticos àqueles
usados em seqüências verdadeiramente aleatórias.

Tipos de geradores: Congruenciais


Congruenciais multiplicativos

11.11.3 – Geradores Congruenciais

Proposto primeiramente por Lehmer (1951). A seqüência é obtida da seguinte relação:

Xi é a seqüência de inteiros no intervalo (0,m -1)

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.

Exemplo: seja X0=4, a=3, c=0 e m=5

i Xi

0 4
1 2
2 1
3 3
4 4
5 2

Obs: 1 - O valor máximo de Xi=m-1


2 – Existe periodicidade

Assim, caso se queira produzir valores no intervalo (0,1) deve-se dividir o resultado obtido
para Xi por m.

Ui=Xi/m Xi (0,m - 1) e Ui(0,1)

Requisitos gerais para estes geradores:

A escolha dos valores de a, c e m é fundamental para determinar se os números gerados


terão uso prático. Em geral, deseja-se garantir as seguintes características aos geradores:

Os números produzidos deverão ser uniformemente distribuídos no intervalo (0,1), ou seja,


todos os valores dentro desta faixa deverão ocorrer com igual freqüência.
Os números gerados deverão ser independentes um do outro.
O comprimento do ciclo deve ser o maior possível.
Devido aos simuladores exigirem um grande número de valores, o processo de geração
deve ser rápido para garantir a eficiência da simulação.

55
11.11.4 – Geradores congruenciais multiplicativos

Neste caso, c=0 e X0 # 0

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.

11.11.5 – Testes para verificação de seqüências aleatórias

A – Teste gráfico
B – Teste de freqüência
C – Teste de Kolmogorov-Smirnov , etc.

11.11.6 – Amostragem aleatória simples

Método de Monte Carlo:

O método de Monte Carlo baseia-se num conceito estatístico simples:

Seja x uma variável aleatória com as seguintes características:

1 – Função de distribuição de probabilidades f(x)


2 – Função cumulativa de probabilidades F(x)

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:

Variável x, com distribuição aleatória própria;


Variável y, com distribuição uniforme, entre 0 e 1.

56
O método de Monte Carlo consiste nos seguintes passos:

1 – Dada a função cumulativa de probabilidades da variável em simulação, sorteia-se um número


(através de um gerador de números aleatórios) no intervalo (0,1).
2 – Usando a função cumulativa de probabilidades, determinar o valor da variável x que
corresponde ao número aleatório gerado.

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.

11.12 – Linguagens de simulação e simuladores

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

Estes exercícios serão resolvidos durante as aulas práticas do curso.

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:

1 – Inspeção (dados em minutos) : Weibull (31.05, 1.03)


2 – Reparo Estação A (dados em minutos): Exp(88.78)
3 – Reparo Estação B (dados em minutos): Gama (60.48, 1.03)
4 – Intervalo entre falhas (dados em horas): Gama (10.36, 0.97)
5 – Intervalo entre chegadas de máquinas externas (dados em horas): Gama (7.97, 0.96)

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:

TCarga.txt = Tempos de carga dos caminhões;


TDescBrit.txt = Tempos de descarga dos caminhões no britador;
TDescPil.txt = Tempos de descarga dos caminhões na pilha de estéril;
F1Brit.txt = Tempos de deslocamento dos caminhões carregados da frente 1 até o britador;
F2Brit.txt = Tempos de deslocamento dos caminhões carregados da frente 2 até o britador;
F3Brit.txt = Tempos de deslocamento dos caminhões carregados da frente 3 até o britador;
BritF1.txt = Tempos de deslocamento dos caminhões vazios do britador até a frente 1;
BritF2.txt = Tempos de deslocamento dos caminhões vazios do britador até a frente 2;
BritF3.txt = Tempos de deslocamento dos caminhões vazios do britador até a frente 3;
BritF4.txt = Tempos de deslocamento dos caminhões vazios do britador até a frente 4;
F4Pil.txt = Tempos de deslocamento dos caminhões carregados da frente 4 até a pilha de estéril;
PilF1.txt = Tempos de deslocamento dos caminhões vazios da pilha de estéril até a frente 1.
PilF2.txt = Tempos de deslocamento dos caminhões vazios da pilha de estéril até a frente 2.
PilF3.txt = Tempos de deslocamento dos caminhões vazios da pilha de estéril até a frente 3.
PilF4.txt = Tempos de deslocamento dos caminhões vazios da pilha de estéril até a frente 4.

A capacidade dos caminhões é de 85 t.

De posse dos dados acima:

1 – Construir o DCA completo representativo do sistema


2 – Construir um modelo representativo desta mina, utilizando o software ARENA
3 – Determinar, com o uso do modelo feito no ARENA, a frota mínima necessária ao atendimento
das demandas
4 – Determinar qual seria o impacto do aumento da capacidade do britador, de forma a permitir
duas descargas simultâneas.

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.

Kleijnen, J. P. C., Groenendaal, W. Simulation: A statistical perspective. Chichester, Wiley, 1992.

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.

Pidd, M. Modelagem Empresarial: Ferramentas para a tomada de decisão, Porto Alegre,


Bookman, 1998.

Pinto, L. R. Uso de técnicas de pesquisa operacional na otimização das operações de lavra. VI


Congresso Brasileiro de Mineração. Salvador, 1995.

Pinto, L. R. Metodologia de análise do planejamento de lavra de minas a céu aberto baseada em


simulação das operações de lavra. Tese de Doutorado. COPPE/UFRJ. Rio de Janeiro, 1999.

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.

Pinto, L. R., Merschmann, L. H. C. Planejamento operacional da lavra de mina usando modelos


matemáticos. REM – Revista da Escola de Minas, 54 (3): 211-214, jul/set 2001.

Merschmann, L. H. C. Desenvolvimento de um sistema de otimização e simulação para análise de


cenários de produção em minas a céu aberto. Dissertação de mestrado. COPPE/UFRJ. Rio de
Janeiro, 2002.

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

Você também pode gostar