Logística/Gestão de armazéns/Configuração discreta de armazéns/Formulação como um problema de transportes: diferenças entre revisões

[edição não verificada][edição não verificada]
Conteúdo apagado Conteúdo adicionado
DuarteP (discussão | contribs)
Sem resumo de edição
DuarteP (discussão | contribs)
Sem resumo de edição
Linha 1:
{{Nav2|'''[[Logística/Gestão de armazéns/Configuração discreta de armazéns|Configuração discreta de armazéns]]'''|[[../Modelo de afectação generalizada|Modelo de afectação generalizada]]}}
 
Para a formulação de um problema de localização armazenagem/reaquisição como um problema de transportes, podemos considerar uma situação que envolve seis espaçostem-se de armazenagem, dois pontos de entrada/saída e três produtos.considerar:
 
Considerando o ''layout'' da estante de armazenagem da figura 1:
 
'''Figura 1''' - ''Layout'' da estante de armazenagem
{| class="wikitable"
|-
| align="center" width="100pt" | 4 *
| align="center" width="100pt" | 5 *
| align="center" width="100pt" | 6 *
|-
| align="center" width="100pt" | 1 *
| align="center" width="100pt" | 2 *
| align="center" width="100pt" | 3 *
|}
 
 
Uma empilhadora desloca-se ao longo do armazém, para armazenar e recuperar produtos nos locais de armazenagem indicados com (*). O tempo necessário para se deslocar entre os pontos de entrada/saída (*) e os locais de armazenagem/reaquisição (*) são os seguintes apresentados na tabela 1.
 
 
'''Tabela 1''' - Tempos de deslocamento
 
{| class="wikitable"
|-
| colspan="2" align="center" width="50pt"| <math> \ i \ </math>
| colspan="2" align="center" width="50pt"| <math> \ k \ </math>
| colspan="2" align="center" width="50pt"| <math> \ t_{i,k} \ </math>
| colspan="2" align="center" width="50pt"| <math> \ i \ </math>
| colspan="2" align="center" width="50pt"| <math> \ k \ </math>
| colspan="2" align="center" width="50pt"| <math> \ t_{i,k} \ </math>
|-
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 5 seg
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 45 seg
|-
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 15 seg
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 25 seg
|-
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 3
| colspan="2" align="center" width="50pt"| 25 seg
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 3
| colspan="2" align="center" width="50pt"| 5 seg
|-
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 4
| colspan="2" align="center" width="50pt"| 20 seg
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 4
| colspan="2" align="center" width="50pt"| 60 seg
|-
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 5
| colspan="2" align="center" width="50pt"| 30 seg
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 5
| colspan="2" align="center" width="50pt"| 40 seg
|-
| colspan="2" align="center" width="50pt"| 1
| colspan="2" align="center" width="50pt"| 6
| colspan="2" align="center" width="50pt"| 40 seg
| colspan="2" align="center" width="50pt"| 2
| colspan="2" align="center" width="50pt"| 6
| colspan="2" align="center" width="50pt"| 20 seg
|}
 
Como exemplo:
 
<math> \ m = \ </math> Número de postos entrada/saída.
Linha 100 ⟶ 26:
 
<math> \ x_{j,k} = 1 \ </math> Se o produto <math> \ j \ </math> é atribuído à localização <math> \ k \ </math> armazenagem/reaquisição.
 
 
<math> \ x_{j,k} = 0 \ </math> Caso contrário.
Linha 106 ⟶ 33:
<math> \ f(x) = \ </math> O tempo esperado necessário para satisfazer a taxa de produção necessária pelo sistema.
 
<math> \ \check{t}_{j,1} = 25 segundos \ </math>
 
Minimizar
 
<math> \ \check{t}_{j,2} = 20 segundos \ </math>
 
 
<math> \ \check{t}_{j,3} = 15 segundos \ </math>
 
 
<math> \ \check{t}_{j,4} = 40 segundos \ </math>
 
 
<math> \ \check{t}_{j,5} = 35 segundos \ </math>
 
 
<math> \ \check{t}_{j,6} = 30 segundos \ </math>
 
 
Para
 
<math> \ j = 1 \ </math>
 
<math> \ j = 2 \ </math>
 
<math> \ j = 3 \ </math>
 
 
O número de armazenagens e requisições que são efectuadas para os três produtos são:
 
 
<math> \ T_1 = 4 \ </math>
 
 
<math> \ T_2 = 6 \ </math>
 
 
<math> \ T_3 = 3 \ </math>
 
 
E o número de espaços de armazenagem necessários para cada produto são:
 
 
<math> \ S_1 = 2 Slots \ </math>
 
 
<math> \ S_2 = 1 Slot \ </math>
 
 
<math> \ S_3 = 3 Slots \ </math>
 
 
O resultado da formulação do problema de transportes é o seguinte:
 
 
minimizar
 
<math> \ \check{t}_{j,k} = \sum_{i=1}^{m} p_{i,j} t_{i,j} \ </math>
Linha 169 ⟶ 44:
 
<math> \ f(x) = \sum_{j=1}^{n} \sum_{k=1}^{s} c_{j,k} x_{j,k} \ </math>
 
 
<math> \ f(x) = 50 x_{1,1} + 40 x_{1,2} + 30 x_{1,3} + 80 x_{1,4} + 70 x_{1,5} + 600 x_{1,6} + 150 x_{2,1} + 120 x_{2,2} + 90 x_{2,3} + 240 x_{2,4} + 210 x_{2,5} + 180 x_{2,6} + 25 x_{3,1} + 20 x_{3,2} + 15 x_{3,3} + 40 x_{3,4} + 35 x_{3,5} + 30 x_{3,6} \ </math>
 
 
Sujeito a:
 
<math> \ \sum_{j=1}^{3} x_{j,k} = 1 \ </math>
 
 
Para <math> \ k = 1,...,6 \ </math>
 
<math> \ \sum_{j=1}^{n} x_{j,k} = 1 \ </math>
 
<math> \ \sum_{k=1}^{6} x_{1,k} = 2 \ </math>
 
Para <math> \ k = 1,...,n \ </math>
 
<math> \ \sum_{k=1}^{6} x_{2,k} = 1 \ </math>
 
<math> \ \sum_{k=1}^{s} x_{j,k} = S_j \ </math>
 
<math> \ \sum_{k=1}^{6} x_{3,k} = 3 \ </math>
 
Para <math> \ j = 1,...,n \ </math>
 
<math> \ x_{j,k} = (0,1) \ </math>
 
<math> \ x_{j,k} = (0,1) \ </math>
 
'''Figura 2''' - Quadro do problema de transportes
 
Para todos os <math> \ j \ </math> e <math> \ k \ </math>.
 
{| class="wikitable"
! width="125" rowspan="6" align="center" | Produto
! width="300" colspan="16" align="center" | Número máximo de unidades por espaço de armazenagem
! width="125" rowspan="6" align="center" | Número de espaços de armazenagem por produto
|-
| colspan="2" align="center" |
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" |
|-
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | 50 *
| colspan="2" align="center" | 40 *
| colspan="2" align="center" | 30
| colspan="2" align="center" | 80
| colspan="2" align="center" | 70
| colspan="2" align="center" | 60
| colspan="2" align="center" | '''2'''
|-
| colspan="2" align="center" | '''2'''
| colspan="2" align="center" | 150
| colspan="2" align="center" | 120
| colspan="2" align="center" | 90 *
| colspan="2" align="center" | 240
| colspan="2" align="center" | 210
| colspan="2" align="center" | 180
| colspan="2" align="center" | '''1'''
|-
| colspan="2" align="center" | '''3'''
| colspan="2" align="center" | 25
| colspan="2" align="center" | 20
| colspan="2" align="center" | 15
| colspan="2" align="center" | 40 *
| colspan="2" align="center" | 35 *
| colspan="2" align="center" | 30
| colspan="2" align="center" | '''3'''
|-
| colspan="2" align="center" |
| colspan="2" align="center" | '''1'''
| colspan="2" align="center" | '''2'''
| colspan="2" align="center" | '''3'''
| colspan="2" align="center" | '''4'''
| colspan="2" align="center" | '''5'''
| colspan="2" align="center" | '''6'''
| colspan="2" align="center" |
|}
 
{{AutoCat}}