Projeto de Implementação
Nº 1 - 1999.2
Simulação
de um Chão de Fábrica
utilizando Tipos Abstratos de Dados
1. Descrição do
Problema
-
Uma fábrica vai modernizar
o setor de empacotamento de produtos. Ela precisa decidir quais e quantas
máquinas de empacotar vai adquririr.
-
O objetivo da fábrica
é o de amortizar o preço de aquisição das máquinas
o mais rápido possível. Para isso vai direcionar todo o lucro
para a amortização das máquinas.
-
Os produtos a serem empacotados
são de 3 diferentes tipos e chegam misturados ao galpão de
empacotamento através de uma única esteira rolante, de onde
são distribuídos para empacotar.
-
Para decidir quantas e quais
máquinas adquirir, a fábrica fará uma simulação
do empacotamento.
2. Descrição
dos Produtos da Empresa
A empresa trabalha com produtos
congelados que chegam ao empacotamento em lotes.
-
Cada lote deve ser empacotado
em um pacote. Há três tipos de lotes: coxinhas, filé
de peixe e almôndegas, distribuídos uniformemente.
-
As máquinas levam tempos
diferentes para empacotar cada tipo de lote.
-
O lucro que a empresa tem é
calculado como o preço de atacado de um lote menos o custo de produção
de um produto (onde estão incluídos todos os fatores até
o empacotamento) e o custo operacional da máquina para empacotar
o produto.
-
Os produtos são perecíveis
e devem estar (cada lote) empacotado em um tempo máximo após
chegar (do contrário será jogado fora).
Produto %Produto
Custo Produção Preço Atacado Tempo
Deterioração
coxinhas 50
0,80
1,45 50 s.
peixe
30 0,70
2,00 20 s.
almondega 20
0,40
0,80 90 s.
3. Descrição Geral
das Máquinas
-
Há vários modelos
de máquina empacotadora no mercado. Algumas empacotam somente um
tipo de produto, outras empacotam vários tipos diferentes. Os preços,
o consumo de energia e as velocidades de empacotamento são diferentes,
de acordo com o modelo.
-
Todas as máquinas possuem
uma fila de entrada onde vários lotes de produtos podem ser colocados,
que a máquina processa um a um.
-
O tempo que uma máquina
leva para processar um produto é uma variável aleatória
distribuída uniformemente em +/- 10% do tempo dado no manual da
máquina.
-
Todas as máquinas consomem
energia, mesmo quando estão ociosas. O kilowatt-hora custa R$ 1,00.
Uma hora possi 3.600 segundos.
-
Um produto que deteriorou na
fila não pode ser empacotado e representa um prejuízo que
será somado ao custo operacional.
3.1 Descrição
das Máquinas
Há no mercado seis
tipos diferentes de máquina empacotadora que a nossa empresa poderia
utilizar:
Modelo |
Produtos |
Tempo
+/- 10% |
Consumo |
Preço |
FishPak |
Filé
de Peixe |
10
s |
20
KWh |
100.000 |
FrangoPak |
Coxinhas |
16
s |
20
KWh |
100.000 |
AllPak |
Coxinhas |
18
s |
22
KWh |
150.000 |
File
de Peixe |
12
s |
Almôndegas |
12
s |
Plastific |
Todos |
25
s |
35
KWh |
60.000 |
EnSacAll |
Todos |
30
s |
40
KWh |
50.000 |
Universal |
Todos |
35
s |
35
KWh |
30.000 |
Observe que o tempo de empacotamento
sempre variará aleatoriamente no espaço +/- 10% do tempo
de empacotamento da máquina para um produto dado na tabela. O tempo
de empacotamento da máquina AllPak difere dependendo do tipo de
produto.
4. Funcionamento da Fábrica
-
Os lotes de produtos chegam
na esteira para ser empacotados em intervalos de 2s. A probabilidade de
um lote ser coxinha, filé de peixe ou almôndega é a
dada na tabela de produtos. As probabilidades devem ser consideradas como
independentes.
-
Logo que chega, um lote é
colocado na fila de uma máquina que pode empacotá-lo. Deve
ser escolhida a menor fila das máquinas-candidatas.
-
O tempo que um produto leva
para ser levado da esteira até a fila de uma máquina é
irrelevante e não será considerado.
-
O tempo de deterioração
de um produto passa a ser calculado a partir do momento em que ele é
colocado no fim na fila de entrada da máquina (=tempo de chegada).
-
O tempo que uma máquina
vai levar para empacotar o produto é calculado no momento em que
ele é retirado da fila. A máquina somente estará livre
para empacotar outro produto após este tempo.
-
Verificamos se o produto deteriorou
ou se pode ser empacotado no momento em que ele chega no início
da fila e a máquina vai empacotá-lo. Se o produto estiver
deteriorado, a máquina o descarta e verifica o próximo da
fila.
-
Se um produto é descartado,
seu custo de produção (= prejuízo) é somado
ao custo operacional da máquina.
-
Outros detalhes, como o custo
com falhas da máquina não serão considerados.
5. Cálculo da Amortização
-
A empresa quer pagar as máquinas
o mais rápido possivel. Para isto todo o lucro será depositado
em uma conta para pagar o valor de aquisição das máquinas.
-
Consideramos que a fábrica
trabalha ininterruptamente, sem pausas.
-
O cálculo do lucro/hora
do galpão de empacotamento é realizado da seguinte forma:
soma do valor de venda de todos os produtos empacotados com sucesso menos
o custo de todos os produtos produzidos (inclusive os jogados for) e o
custo opeacional das máquinas.
-
A simulação deve
parar quando foi realizado lucro suficiente para pagar todas as máquinas
adquiridas.
6. Análise de Requisitos
do Programa
-
O programa deverá ser
capaz de permitir que o usuário escolha quantas máquinas
de que tipos usará para a simulação. P.ex.: 1 máquina
AllPak e 2 máquinas FishPak.
-
A simulação terminará
quando houver sido juntado dinheiro suficiente para pagar as máquinas
ou quando houverem se passado 2 anos.
-
O programa sempre deverá
informar ao usuário as seguintes estatísticas:
-
Custo operacional/hora total
de cada máquina
-
Taxa de lucro/hora de cada
máquina
-
A quantidade de produtos
jogada fora por cada máquina e seu custo total.
-
Tempo total para pagar o
custo de aquisição das máquinas escolhidas para a
simulação.
7. Modelagem da Fábrica
-
Um lote de produtos é
um TAD simples que possui como informação: o tipo de lote.
Custo de valor de revenda podem ser modelados como variáveis globais.
-
Uma máquina é
um TAD que possui: uma variável indicando quando o próximo
produto estará empacotado, uma fila de produtos, um custo operacional
total, um lucro total, um contador de produtos processados e outro de produtos
jogados fora e um prejuízo total por produtos jogados fora.
-
Um nodo de fila de produtos
de uma máquina é um TAD que possui um produto, o tempo de
entrada deste produto na fila (= hora de fabricação).
-
O setor de empacotamento é
um TAD lista circular de máquinas, percorrida constantemente para
ver qual é a próxima máquina onde um produto vai ficar
pronto.
-
Além disso, o setor de
empacotamento possui uma variável relógio interno, que funciona
em segundos. Há duas formas de se implementá-lo: orientado
a eventos ou orientado a segundos.