Faculdade de Engenharia - Campus de Guaratinguetá
Pesquisa Operacional
Livro: Introdução à Pesquisa Operacional
Capítulo 4 – Modelo de Transporte Simples
Fernando Marins – [email protected]
Departamento de Produção
1
Sumário
Modelo de Transporte Simples
Histórico e Características
Modelo Matemático
Modelo em Grafos
“Stepping Stone Algorithm”
Casos Especiais
2
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelo de Transporte Simples
Histórico
• Kantorovich (1939) - problema da distribuição
• Koopman (1941) - problema de transporte
Observação: dividiram o Prêmio Nobel de Economia em 1975.
• Dantzig (1947) - algoritmo eficiente
Características
• Transporte de um produto a partir de várias origens para diversos
destinos.
• Produção ai em cada origem Oi, i = 1, m.
• Demanda bj em cada destino Dj, j = 1, n.
• Custos unitários de transporte cij em cada trajeto Oi - Dj.
3
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelo de Transporte Simples
Variáveis de decisão:
Xij = quantidade a ser transportada da origem Oi ao destino Dj.
Função objetivo: minimização do custo total transporte
Min C =   Cij Xij
i
Restrições:
j
 Xij = ai, i = 1, m - balanço nas origens
 j

 Xij = bj, j = 1, n - balanço nos destinos
i
Xij  0.

Observação importante:  ai
i
=
 bj
(modelo balanceado)
j
4
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelo de Transporte Simples
Exemplo: considere situação onde há 3 fábricas produzindo o mesmo
produto e 4 depósitos onde estes produtos são estocados para posterior
venda. As produções nas fábricas são: a1 = 40, a2 = 80, a3 = 110. nos
depósitos devem ser atendidas as seguintes demandas: b1 = 20, b2 = 30,
b3 = 100, b4 = 80. Os custos unitários de transporte do produto são
dados por:
D1
D2
D3
D4
O1
10
5
12
4
O2
2
0
1
9
O3
13
11
14
6
Achar um modelo de PL para determinar o programa de entregas do
produto com mínimo custo de transporte.
5
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Formulação do modelo
Variáveis de decisão: Xij = quantidade de produto enviado de Oi para Dj
Min C = 10X11 + 5X12 + 12X13 + 4X14 + 2X21 + 0X22 + 1X23 + 9X24 + 13X31 +
+ 11X32 + + 14X33 + 6X34
= 40
 X 11 + X12 + X13 + X14

X21 + X22 + X23 + X24
= 80


X31 + X32 + X33 + X34 = 110

Sujeito a: X11
+ X21
+ X31
= 20

X12
+ X22
+ X32
= 30


X13
+ X23
+ X33
= 100

X14
+ X24
+ X34 = 80

Xij  0, i = 1, 3 e j = 1, 4.

6
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Representação matricial das restrições
(excluindo os zeros na matriz de coeficientes das variáveis)
1 1 1 1



1
1
1
1



1 1 1 1


1
1
1


 1

1
1


1
1
1



1
1
1

X=
 40 
 80 
 
110
 
 20 
 30 
 
100
 80 
 
Qualquer equação do sistema de restrições é combinação linear
das demais  no. de equações Linearmente Independentes = (m
+ n -1).
7
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelos em Grafos
(a1= 40) O1
Cij
10
5
12
4
2
(a2=80)
O2
Rede de transporte
D1
(b1=20)
D2 (b2=30)
0
1
9
D3
(b3=100)
D4
(b4=80)
13 11
14
(a3=110) O3
6
8
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Solução Básica Viável = Árvore
Solução Básica Viável equivale a uma Árvore na rede de transporte
com (m + n - 1) = 3 + 4 -1 = 6 variáveis básicas.
Exemplo: x11, x12, x22, x23, x33, x34 são as variáveis básicas.
40
X11= 20
20
X12 = 20
80
X22 = 10
30
X23 = 70
110
X33 = 30
100
X34 = 80
80
Observação: as demais variáveis são não-básicas e nulas.
9
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Algoritmos e Equivalência de Conceitos
entre PL e Grafos
- Método Simplex
- Algoritmo especializado: “Stepping Stone Algorithm”
Toma vantagem da estrutura especial da matriz de restrições de modelos de
transporte formada por “0” e “1”.
Equivalência de Conceitos
Programação Linear
Teoria dos Grafos
Valor da Variável de Decisão
Valor do Fluxo no Arco
Solução Básica Viável
Árvore Viável
Solução Inicial
Árvore Inicial
Coeficiente de Custo Relativo
Coeficiente de Custo Marginal
Variável (Não) Básica
Arco (Não) Básico
Pivoteamento
Balanceamento de Fluxo no Ciclo de compensação
10
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Etapas de aplicação do “Stepping
Stone Algorithm”
Passo 1: Inicialização*
Achar árvore inicial. Ir ao passo 2.
Passo 2: Teste de Otimalidade
Achar os coeficientes de custos (lucros) marginais dos fluxos não-básicos.
Se for árvore ótima  Parar.
Caso contrário escolher arco para entrar na próxima árvore básica. Ir ao passo 3.
Passo 3: Melhoria da solução atual
Achar ciclo de compensação formado pelo arco que entra e a árvore básica atual.
Determinar no ciclo qual arco básico será substituído.
Efetuar o balanceamento de fluxo no ciclo. Voltar ao passo 2.
*Métodos de inicialização do “Stepping Stone Algorithm”:
Regra do canto esquerdo (ou regra do canto noroeste).
Regra do custo mínimo (lucro máximo para problemas de Maximização).
11
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Métodos de inicialização do “Stepping Stone Algorithm”
Regra do canto esquerdo:
Consiste em, iniciando pelo arco (1, 1) ou trajeto O1D1 associado ao
canto superior esquerdo da tabela usada pelo algoritmo, e através de
deslocamentos sucessivos para a direita e para baixo, atingir o canto
inferior direito da tabela, distribuindo a produção disponível nas origens
pelos arcos (chamados arcos básicos) de forma a atender as demandas
nos destinos.
Uma linha (ou coluna) é explorada até que a produção (ou
demanda) desta linha (ou coluna) seja esgotada (ou atendida). Em
cada arco deve-se alocar a maior quantidade de produto possível.
12
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelo de Transporte Simples
Regra do custo mínimo (ou lucro máximo):
Consiste em atribuir o máximo valor transportável aos trajetos
associados aos menores (ou maiores) custos (ou lucros) unitários de
transporte.
Escolhe-se primeiro o trajeto associado com o menor (ou maior)
custo (ou lucro) unitário, depois o trajeto associado ao próximo
menor (ou maior) custo (ou lucro), e assim por diante até se
esgotar toda a produção disponível e atender toda a demanda
existente.
13
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Aplicação do “Stepping Stone Algorithm”
Tabela inicial com os dados do problema:
D1
O1
O2
O3
Demanda
D2
10
2
13
20
D3
5
0
11
30
D4
12
1
14
100
Produção
40
80
110
230
4
9
6
80
Árvore inicial obtida pela regra do canto esquerdo:
D1
O1
20
D2
10
O2
2
O3
13
Demanda
20
20
10
D3
5
D4
12
4
Produção
40
9
80
6
110
0
70
1
11
30
14
30
100
80
80
230
Número de arcos básicos:(m + n - 1) = 3 + 4 -1 = 6.
Custo da solução: 20.10 + 20.5 + 10.0 + 70.1 + 30.14 + 80.6 = 1270.
14
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Árvore inicial obtida pela regra do custo mínimo
D1
D2
O1
10
O2
2
O3
20
Demanda
20
D3
5
30
13
D4
12
0
50
1
11
50
14
30
100
40
40
80
4
Produção
40
9
80
6
110
230
Número de arcos básicos: (m + n - 1) = 3 + 4 -1 = 6.
Custo da solução: 40.4 + 50.1 + 30.0 + 20.13 + 50.14 + 40.6 = 1410.
15
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Ciclo de Compensação
X11= 20 -1 (C11 =10)
40
20
X12 = 20 +1 (C12 =5)
X21 =0 +1(C21 =2)
X22 = 10 -1 (C22 =0)
80
30
X23 = 70
X33 = 30
110
100
X34 = 80
80
C21 =2.(+1) +10.(-1) +5.(+1) +0.(-1) = -3/unidade.
X21 (É candidato a entrar)
16
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Ciclo de compensação do arco não-básico (2, 1) .
Ciclo de compensação formado pela árvore básica, obtida pela Regra do
Canto esquerdo, e pelo arco não-básico (2, 1).
D1
O1
O2
20
(-1) 10 20
(+1) 2 10
O3
Demanda
D2
(+1) 5
(-1) 0
11
13
20
D3
30
12
4
Produção
40
70
1
9
80
30
14
6
110
100
D4
80
80
230
Custo marginal do arco (2, 1):
C21 = 2.(+1) + 10.(-1) + 5.(+1) + 0.(-1) = -3/unidade.
(É candidato a entrar)
17
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Ciclo de Compensação
X11= 20
40
X12 = 20-1 (C12 =5)
X14 =0 +1(C14=4)
X22 = 10 +1(C22 =0)
80
20
30
X23 = 70 -1 (C23 =1)
X33 = 30 +1 (C33 =14)
110
100
X34 = 80 -1 (C34 =6)
80
C14 =4.(+1) +6.(-1) +14.(+1) +1.(-1) +0.(+1) +5.(-1) = 6/unidade.
X14 (Não é candidato a entrar)
18
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Ciclo de compensação do
arco não-básico (1, 4).
O1
D1
20
D2
D3
10 20
(-1) 5
O2
2 10
(+1) 0
O3
13
Demanda
20
D4
12
70
(-1) 1
11 30 (+1) 14 80
30
100
(+1) 4
9
Produção
40
80
(-1) 6
110
80
230
Custo marginal do arco (1, 4):
C14 = 4.(+1) + 6.(-1) + 14.(+1) + 1.(-1) + 0.(+1) + 5.(-1) = +6/unidade.
(Não é candidato a entrar)
19
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Ciclo de Compensação
X11= 20 -1 (C11 =10)
40
X12 = 20 +1 (C12 =5)
X22 = 10 -1 (C22 =0)
80
20
30
X23 = 70 +1(C23 =1)
X31 =0 +1(C31 =13)
X33 = 30 -1 (C33 =14)
110
100
X34 = 80
80
C31 =13.(+1) +10.(-1) +5.(+1) +0.(-1) +1.(+1) +14.(-1) = -5/unidade.
X31 (É candidato a entrar)
20
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Determinação dos coeficientes de custos marginais de
alguns arcos não-básicos
Ciclo de compensação formado pela árvore básica, obtida pela Regra do
Canto esquerdo, e pelo arco não-básico (3, 1).
D1
D2
D3
O1
20 (-1) 10 20 (+1) 5
12
O2
2 10 (-1) 0 70 (+1) 1
(+1) 13
O3
11 30 (-1) 14
Demanda
20
30
100
D4
80
80
4
9
6
Produção
40
80
110
230
Custo marginal do arco (3, 1):
C31 = 13.(+1) +10.(-1) + 5.(+1) + 0.(-1) + 1.(+1) + 14.(-1) = -5/unidade.
(É candidato a entrar)
21
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Balanceamento de Fluxo no Ciclo de
Compensação
X11= 20 -1 .(10)
40
20
X12 = 20 +1 .(10)
X22 = 10 -1 .(10)
Possui o menor
valor de fluxo dos
valores com (-1)
dentro do ciclo de
compensação.
30
Sairá o arco básico
X23 = 70 +1 .(10)
do ciclo que se
anular primeiro ao
X31 =0 +1 .(10)
X33 = 30 -1 .(10)
se aumentar o valor
100
110
do fluxo no arco
X34 = 80
não-básico (3, 1)
escolhido para
entrar: neste caso
80
X31 (É que Entrar) = X22 (É que sai)=10
será o arco (2, 2) =>
Xij  0 (satisfazer
O arco (2,2) é substituído pelo Arco (3,1)
a condição de nãonegatividade)
Novo valor da função objetivo = valor anterior + c31.X31= 1270 + (-5).10 = 1220.
80
22
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Balanceamento de Fluxo no Ciclo de
Compensação
X11= 10
40
20
X12 = 30
X31 = 10
80
Nova solução básica
com arco (3, 1) no
lugar do arco (2, 2)
30
X23 = 80
X33 = 20
110
100
X34 = 80
X31 (É que Entrar) = X22 (É que sai)=10
80
Novo valor da função objetivo = valor anterior + c31.X31= 1270 + (-5).10 = 1220.
23
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Melhoria da solução básica
Escolhendo o arco não-básico (3, 1) para entrar na próxima árvore básica deve-se
determinar o arco básico do ciclo de compensação que será substituído.
Sairá o arco básico do ciclo que se anular primeiro ao se aumentar o valor do fluxo no
arco não-básico (3, 1) escolhido para entrar: neste caso será o arco (2, 2).
O novo fluxo no arco (3, 1) será exatamente o valor do fluxo que passava pelo arco
substituído (2, 2): assim x31 = 10 na nova árvore básica.
Deve-se fazer o balanceamento dos fluxos nos arcos do ciclo a partir do novo valor de
fluxo no arco (3, 1)= x31 = 10: assim
X11 = 20 - 10 = 10
X12 = 20 + 10 = 30
X23 = 70 + 10 = 80
X33 = 30 - 10 = 20
X34 = 80 (não se altera pois não é do ciclo)
Novo valor da função objetivo = valor anterior + c31.X31= 1270 + (-5).10 = 1220.
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Nova solução básica com arco (3, 1) no lugar
do arco (2, 2)
Aplicando-se o Passo 2 tem-se:
O1
D1
10
O2
O3
Demanda
10
D2
30
5
C21 = +2
2
C22 = +5
0
80
10
13
C32 = +3
11
20
20
30
D3
D4
C13 = +1 12 C14 = +1
4
Produção
40
1
C24= +16
9
80
14
80
6
110
100
80
230
Não há cij < 0: Árvore atual é ótima.
X11 = 10  Remeter 10 unidades do produto da fábrica 1 ao depósito 1
X12 = 30  Remeter 30 unidades do produto da fábrica 1 ao depósito 2
X23 = 80  Remeter 80 unidades do produto da fábrica 2 ao depósito 3
X31 = 10  Remeter 10 unidades do produto da fábrica 3 ao depósito 1
X33 = 20  Remeter 20 unidades do produto da fábrica 3 ao depósito 3
X34 = 80  Remeter 80 unidades do produto da fábrica 3 ao depósito 4
Custo Ótimo mínimo de transporte = 1220.
25
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelo de Transporte Simples
Método alternativo para cálculo dos coeficientes de
custos marginais dos arcos não-básicos
Método Modificado (Modi):
Inspirado nas condições de folgas complementares
da teoria da dualidade da Programação Linear.
Maneira mais simples de se calcular os
coeficientes de custo marginais.
26
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Método Modificado (Modi):
Procedimento:
Considere uma dada solução básica para o modelo
Definir:
custo marginal Li com i = 1, m para cada linha i da tabela,
custo marginal Kj, com j = 1, n para cada coluna j da tabela,
de forma que, para cada trajeto (ou arco) básico (i, j) da solução
dada tem-se: Li + Kj = cij
27
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modi
O sistema de equações resultante tem solução indeterminada:
(m + n) variáveis Li, Kj
(m + n - 1) equações, uma para cada um dos arcos básicos
da árvore associada a solução em estudo.
Para levantar a indeterminação do sistema basta fazer, por exemplo,
L1 = 0 e calcular por inspeção os demais valores de Li e Kj.
Para o cálculo do valor do coeficiente de custo marginal de cada arco
não-básico (i, j) usar a expressão: Cij = cij - (Li + Kj)
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exemplo do MODI
Considere no exemplo anterior a tabela associada à solução inicial,
obtida pela regra do custo mínimo, onde deseja-se calcular todos os
coeficientes de custo marginal dos arcos não-básicos.
D1
D2
O1
10
O2
2
O3
Demanda
20
20
D3
5
30
13
30
D4
12
0
50
1
11
50
14
100
40
40
80
4
Produção
40
9
80
6
110
230
Número de arcos básicos: (m + n - 1) = 3 + 4 -1 = 6.
29
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Modelo de Transporte Simples
Aplicando-se o método Modi tem-se as variáveis L1, L2, L3, K1, K2, K3, K4, e o
sistema de equações:
L1+ K4 = 4
L2 + K2= 0
L2 + K3 = 1
L3 + K1 = 13
L3 + K3 = 14
L3 + K4 = 6
Fazendo-se L1= 0 tem-se: K4 = 4 L3 = 2, K3 = 12, K1 = 11, L2 = -11, K2 = 11.
Cálculo dos Coeficientes de Custo Marginal:
C11 = C11 - (L1 + K1 ) = 10 - (0 + 11) = -1
Candidatos
C12 = C12 - (L1 + K2 ) = 5 - (0 + 11) = -6
C13 = C13 - (L1 + K3 ) = 12 - (0 + 12) = 0 Mantém o valor da FO
C21 = C21 - (L2 + K1 ) = 2 - ( -11 + 11) = 2
C24 = C24 - (L2 + K4 ) = 9 - (-11 + 4) = 16
Candidato
C32 = C32 - (L3 + K2 ) = 11 - (2 + 11) = -2
30
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
“Stepping Stone Algorithm”
Para um Modelo de Minimização
Passo 1: Inicialização
Determinar uma árvore básica inicial com (m + n - 1) arcos básicos. Ir ao
Passo 2.
Passo 2: Teste de Otimalidade
Calcular os coeficientes de custos marginais dos arcos não-básicos.
Se coeficiente de custo marginal > 0  solução atual é ótima. Parar.
Se há coeficiente de custo marginal cij < 0  solução atual não é ótima.
O arco (i, j) deve se tornar arco básico na próxima árvore básica. assim o
arco (i, j) é escolhido para entrar. Ir ao Passo 3.
31
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
“Stepping Stone Algorithm”
Passo 3. Melhoria da Solução
Achar ciclo de compensação formado pelo arco não-básico (i, j)
escolhido para entrar e a árvore básica atual.
No ciclo achar o arco básico (k, l) que se anula primeiro ao se
aumentar o valor do fluxo no arco (i, j) que entra.
O arco básico (k, l) sai e será substituído pelo arco (i, j).
Efetuar o balanceamento de fluxo no ciclo, com todo o fluxo do arco
(k, l) indo para o arco (i, j). Voltar ao Passo 2.
32
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
“Stepping Stone Algorithm”
Passo 2: Teste de Otimalidade - Modelos de Maximização
Calcular os coeficientes de lucro marginal.
Se coeficiente de lucro marginal < 0  Solução Atual é
Ótima. Parar.
Se há coeficiente de lucro marginal lij > 0  solução atual não
é ótima.
O arco (i, j) deve se tornar arco básico na próxima árvore básica.
Assim o arco (i, j) é escolhido para entrar
Todo o restante do algoritmo é igual ao caso de mimimização
33
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Casos especiais
(1) ofertas e demandas desbalanceadas
 ai
>
i
Podem ocorrer duas situações
 bj  excesso de oferta  criar destino fictício.
j
a b
i 
i
j
 excesso de demanda  criar origem fictícia.
j
Custos de transporte nos trajetos fictícios são nulos.
Aplica-se o “Stepping Stone Algorithm” para o modelo ampliado e
balanceado.
34
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Casos especiais - (2) Condições proibidas de
embarque e recepção – Trajetos proibidos
Quando há restrições adicionais, como a existência de trajetos
proibidos entre determinadas origens e destinos do modelo:
Basta bloqueá-los na tabela de aplicação do algoritmo, de forma a
desconsiderá-los da solução.
Ou seja, associar a cada um destes trajetos proibidos um custo
de transporte muito alto na função objetivo
35
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Casos Especiais - (3) Soluções degeneradas
Podem ocorrer a partir de duas situações:
(I) Na inicialização do algoritmo se o nº. de arcos básicos for menor que
(m + n - 1), ou seja, a regra de inicialização não fornece uma árvore:
Acrescentar convenientemente arcos com fluxo nulo até que se obtenha uma
árvore (= grafo com m + n - 1 arcos e sem ciclos).
(II) No Passo 3 do algoritmo durante a determinação do arco básico a ser
substituído pelo arco não-básico escolhido para entrar pode se verificar
um “empate na saída”, ou seja, mais de um arco básico do ciclo de
compensação encontrado se anula para um dado valor de fluxo no arco
que entra:
Escolher qualquer um destes arcos básicos para sair e manter os demais, com
fluxo nulo na próxima árvore básica (degenerada).
Efetuar o balanceamento de fluxo para os demais arcos.
36
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exemplo com degeneração e
desbalanceamento
D1
D2
D3
D4
Produção
O1
10
5
12
4
40
O2
2
0
1
9
80
O3
13
11
14
6
100
Demanda
20
30
80
70
200\220
Há um excesso de produção no valor de 220 - 200 = 20 unidades  criar um
destino fictício DF com demanda associada de 20 unidades.
Solução inicial para o novo modelo (balanceado)
D1
O1
20
10
D2
20
O2
C21= -3
2
10
0
70
1
C24= +16
9
C2F= +13
0
80
O3
C31= -5 13 C32= -2 11
10
14
70
6
20
0
100
Demanda
20
D3
5 C13= +6 12
D4
C14= +6
30
80
Custo da solução inicial: 930
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
70
4
DF
C1F= +8
Produção
0
40
20
220
37
Exemplo com degeneração e
desbalanceamento
Escolhendo para entrar o arco (3, 1) obtém-se o ciclo de compensação :
O1
D1
D2
20 (-1)
10 20 (+1)
5
2
0
11
O2
O3
Demanda
(+1)
20
10 (-1)
13
30
D3
D4
DF
Produção
12
4
0
40
70 (+1)
1
9
0
80
10 (-1)
14
0
100
80
70
70
6
20
20
220
Percebe-se que quando o fluxo no arco que entra (3, 1) é aumentado
até o valor 10  os fluxos nos arcos básicos (2, 2) e (3, 3) se anulam
configurando-se um “empate na saída”.
38
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exemplo com degeneração e
desbalanceamento
Escolhendo, por exemplo, o arco (2, 2) para sair e ser substituído
pelo arco (3, 1):
Arco (3, 3) fica na árvore básica (degenerada) com fluxo nulo
D1
D2
D3
O1
10
10
30
5
O2
C21= +2
2
 C22= +5
0
O3
10
13
 C32= 3
11
Demanda
20
30
D4
C13= +1 12 C14= +1
DF
4  C1F= +3
Produção
0
40
80
1  C24= +16 9  C2F= +13 0
80
0
14
100
80
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
70
70
6
20
20
0
220
Exemplo com degeneração e
desbalanceamento
D1
O1
10
10
O2
 C21= +2 2
O3
10
13
Demanda
20
D2
D3
D4
DF
30
5 C13= +1 12 C14= +1 4 C1F= +3 0
 C22= +5 0
80
1  C24= +16 9  C2F= +13 0
 C32= +3 11
0
14
70
6
20
0
30
80
70
20
Produção
40
80
100
220
Esta tabela corresponde a solução ótima (degenerada) com
custo ótimo = custo anterior + C31.X31 = 930 + (-5).10 = 880.
Valores ótimos de fluxo para os arcos básicos:
X11 = 10, X12 = 30, X23 = 80, X31 = 10, X33 = 0, X34 = 70, X3F = 20.
Observe que o valor de fluxo igual a 20 no arco fictício (O3, DF)
significa que 20 unidades do produto ficarão estocadas na origem 3.
Os arcos não-básicos tem fluxo nulo.
40
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exercícios
1. Uma empresa tem 3 fábricas e 4 clientes, com as seguintes
capacidades de produção e demandas relativas a um produto de
interesse:
Fábrica
Capacidade
Cliente
Demanda
F1
200
C1
140
F2
100
C2
120
F3
80
C3
90
C4
30
Total
380
Total
380
41
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exercícios
Os custos de transporte ($/por unidade) são os seguintes:
Clientes
Fábricas
C1
C2
C3
C4
F1
5
4
6
14
F2
2
9
8
10
F3
6
11
7
12
Com o objetivo de minimizar os custos de transportes, determinar o
programa de embarque do produto de cada fábrica a cada cliente.
Formule os modelos em Redes e de PL e aplique o Stepping Stone
Algorithm. Inicialize o algoritmo com a Regra do Canto Esquerdo.
42
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exercícios
2. Uma companhia tem 3 depósitos e 4 clientes, com as seguintes
capacidades mensais de estocagem e demanda para um dado
produto:
Depósito
Capacidade
Cliente
Demanda
D1
30
C1
10
D2
90
C2
100
D3
70
C3
70
C4
30
Total
210
Total
190
43
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exercícios
No contrato com os Clientes foram incluídas multas ($/unidade de
produto faltante) associadas a eventuais faltas dadas por: $1 se faltar
para o Cliente 1, $3 se faltar para o Cliente 3 e $2 se faltar para o
Cliente 4. Os custos de embarque ($/por unidade) são os seguintes:
Sabendo-se que obrigatoriamente o
cliente C2 deve ser atendido
completamente,
encontrar
o
programa de embarque de mínimo
custo. Formule um modelo de PL e
aplique o Stepping Stone Algorithm.
Inicialize o algoritmo com a Regra
do Custo Mínimo.
44
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exercícios
3.
Uma empresa tem 3 fábricas e 4 clientes, referentes a um
determinado produto, e conhece-se os dados abaixo:
Fábrica
Capacidade
Custo de
mensal da
produção
Demanda
Cliente
mensal
Preço de
venda
produção
($/unidade)
F1
85
50
C1
100
100
F2
90
30
C2
80
110
F3
75
40
C3
20
105
C4
40
125
Total
240
Total
250
($/unidade)
45
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Exercícios
Conhecem-se os custos de se manter o produto em estoque
($/unidade estocada) em cada Fábrica: $1 para estocagem na Fábrica
1, $2 para estocagem na Fábrica 2 e $3 para estocagem na Fábrica 3.
Os custos de transporte ($/unidade) são:
Local de
Locais de Venda
Fabricação
C1
C2
C3
C4
F1
43
57
33
60
F2
30
49
25
47
F3
44
58
33
64
Encontrar o programa de distribuição que proporcione lucro
máximo. Formule o modelo de PL e aplique o Stepping Stone
Algorithm. Inicialize o algoritmo pela Regra do canto Esquerdo.
46
Pesquisa Operacional - UNESP / Campus de Guaratinguetá
Download

Slide 1