Slide 1 - FEG

Download Report

Transcript Slide 1 - FEG

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

Pesquisa Operacional UNESP / Campus de Guaratinguetá

2

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

a Demanda b i j em cada origem O

Custos unitários de transporte

c ij i , i = 1, m.

em cada destino D j , j = 1, n.

em cada trajeto O i - D j .

3

Pesquisa Operacional UNESP / Campus de Guaratinguetá

Modelo de Transporte Simples

Variáveis de decisão: X ij = quantidade a ser transportada da origem O i ao destino D j .

Função objetivo: minimização do custo total transporte Min C =  

C ij X ij i j

Restrições:    j

X ij

= a i, i = 1, m balanço nas origens    i Xij Xij =  0.

bj, j = 1, n balanço nos destinos Observação importante: 

i a i =

j Pesquisa Operacional UNESP / Campus de Guaratinguetá

4

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: a 1 = 40, a 2 = 80, a 3 depósitos devem ser atendidas as seguintes demandas: b 1 = 110. nos = 20, b 2 = 30, b 3 = 100, b dados por: 4 = 80. Os custos unitários de transporte do produto são O 1 O 2 O 3

D 1

10 2 13

D 2

5 0 11

D 3

12 1 14

D 4

4 9 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: X ij = quantidade de produto enviado de O i para D j

Min C = 10 X 11 + 5X 12 + 12X 13 + 4X 14 + 2X 21 + 0X 22 + 1X 23 + 9X 24 + 13X 31 + + 11X 32 + + 14X 33 + 6X 34 Sujeito a:           

X

11 + X X X ij  0, 12 + X X 11 12 i = 1, X 13 + X 3 13 e X j 14 = + 14 1, X X 4.

21 21 + + X X 22 22 + X + 23 + X 23 X 24 + X X 31 + + X 31 + X X 32 32 + + 24 X X 33 33 + = 40 X 34 + X = = = = = 80 110 20 30 100 34 = 80 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).

Pesquisa Operacional UNESP / Campus de Guaratinguetá

7

Modelos em Grafos

(a 1 = 40) O 1 (a 2 =80) O 2 C ij 10 5 12 4 2 0 1 9

Rede de transporte

13 11 14 6 (a 3 =110) O 3

Pesquisa Operacional UNESP / Campus de Guaratinguetá

D 1 (b 1 =20) D 2 (b 2 =30) D 3 (b 3 =100) D 4 (b 4 =80) 8

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: x 11 , x 12 , x 22 , x 23 , x 33 , x 34 são as variáveis básicas.

X 11 = 20 40 20 X 12 = 20 X = 10 80 30 X 23 = 70 X 34 = 80 80 Observação: as demais variáveis são não-básicas e nulas.

Pesquisa Operacional UNESP / Campus de Guaratinguetá

9

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

Valor da Variável de Decisão Solução Básica Viável Solução Inicial Coeficiente de Custo Relativo Variável (Não) Básica Pivoteamento

Teoria dos Grafos

Valor do Fluxo no Arco Árvore Viável Árvore Inicial Coeficiente de Custo Marginal Arco (Não) Básico 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 O 1 D 1 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 nos destinos.

arcos básicos

) de forma a atender as demandas

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:

O 1 O 2 O 3 Demanda D 1 20 10 2 13 D 2 5 0 11 30 D 3 12 1 14 100 D 4 4 9 6 80 Produção 40 80 110 230

Árvore inicial obtida pela

regra do canto esquerdo

:

O 1 O 2 O 3 Demanda D 1

20

20 10 2 13 D 2

20 10

30 5 0 11 D 3

70 30

100 12 1 14 D 4

80

80 4 9 6 Produção 40 80 110 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.

Pesquisa Operacional UNESP / Campus de Guaratinguetá

14

Árvore inicial obtida pela

regra do custo mínimo

O 1 O 2 O 3 Demanda D 1

20

20 10 2 13 D 2

30

5 0 11 30 D 3

50 50

100 12 1 14

40

D 4

40

80 4 9 6 Produção 40 80 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

40 80 110 X 11 = 20 -1 (C 11 =10) X 12 = 20 +1 (C 12 =5) X 21 =0 +1 (C 21 =2) X 22 = 10 -1 (C 22 =0) X 23 = 70 X 33 = 30 X 34 = 80 20 30 100 80  C 21 = 2 .( +1 ) + 10 .( -1 ) + 5 .( +1 ) + 0 .( -1 ) = -3/unidade. X 21

( É candidato a entrar )

Pesquisa Operacional UNESP / Campus de Guaratinguetá

16

Ciclo de compensação do arco não-básico (2, 1) .

Ciclo de compensação

Canto esquerdo, formado pela árvore básica, e pelo

arco não-básico

(2, 1).

obtida pela Regra do

O 1 O 2 O 3 Demanda

20

D 1 (-1) 10 20 (+1) 2

10

13 20 30 D 2 (+1) (-1) 5 0 11 D 3

70 30

100 12 1 14 D 4

80

80 4 9 6 Produção 40 80 110 230

Custo marginal do arco (2, 1):  C 21 = 2.(+1) + 10.(-1) + 5.(+1) + 0.(-1) = -3/unidade.

( É candidato a entrar )

17

Pesquisa Operacional UNESP / Campus de Guaratinguetá

Ciclo de Compensação

40 80 110 X 11 = 20 X 14 X 12 =0 +1 (C 14 =4) = 20 -1 (C 12 =5) X 22 = 10 +1 (C 22 =0) X 23 = 70 -1 (C 23 =1) X 33 = 30 +1 (C 33 =14) X 34 = 80 -1 (C 34 =6) 20 30 100 80  C 14 = 4 .( +1 ) + 6 .( -1 ) + 14 .( +1 ) + 1 .( -1 ) + 0 .( +1 ) + 5 .( -1 ) = 6/unidade. X 14

( Não é candidato a entrar )

Pesquisa Operacional UNESP / Campus de Guaratinguetá

18

Ciclo de compensação do arco não-básico (1, 4).

O 1 O 2 O 3 Demanda

20

D 1 20 10 20 2 13

10

D 2 (-1) 5 (+1) 0

70

11 30 D 3 30 12 (-1) 1 (+1) 14 80 100 D 4 (+1) 4 9 (-1) 6 80 Produção 40 80 110 230

Custo marginal do arco (1, 4):  C 14 = 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

40 80 110 X 11 = 20 -1 (C 11 =10) X 12 = 20 +1 (C 12 =5) 20 X 22 = 10 -1 (C 22 =0) X 23 = 70 +1 (C 23 =1) X 31 =0 +1 (C 31 =13) X 33 = 30 -1 (C 33 =14) 30 100 X 34 = 80 80  C 31 = 13 .( +1 ) + 10 .( -1 ) + 5 .( +1 ) + 0 .( -1 ) + 1 .( +1 ) + 14 .( -1 ) = -5/unidade. X 31

( É candidato a entrar )

Pesquisa Operacional UNESP / Campus de Guaratinguetá

20

Determinação dos coeficientes de custos marginais de alguns arcos não-básicos Ciclo de compensação

Canto esquerdo, formado pela árvore básica, e pelo

arco não-básico

(3, 1).

obtida pela Regra do

O 1 O 2 O 3 Demanda

20

D 1 (-1) (+1) 20 10 20 2

10

13 D 2 (+1) (-1) 5 0

70

11 30 30 D 3 (+1) (-1) 100 12 1 14 D 4

80

80 4 9 6 Produção 40 80 110 230

Custo marginal do arco (3, 1):  C 31 = 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

40 X 11 = 20 -1 .(10) X 12 = 20 +1 .(10) 20

Possui o menor valor de fluxo dos valores com (-1) dentro do ciclo de compensação.

80 110 X 22 = 10 -1 .(10) X 23 = 70 +1 .(10) X 31 =0 +1 .(10) X 33 = 30 -1 .(10) X 34 = 80 30 100 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 X 31

( É que Entrar )

= X 22

( É que sai )=10

O arco (2,2)

é substituído pelo

Arco (3,1) 80 entrar: neste caso será o arco (2, 2) =>

X ij

0 (satisfazer a condição de não Novo valor da função objetivo = valor anterior + negatividade)

c 31 .X

31 = 1270 + (-5).10 = 1220

.

22

Pesquisa Operacional UNESP / Campus de Guaratinguetá

40

Balanceamento de Fluxo no Ciclo de Compensação

X 11 = 10 X 12 = 30 20

Nova solução básica com arco (3, 1) no lugar do arco (2, 2)

80 110 X 31 = 10 X 23 = 80 X 33 = 20 X 34 = 80 30 100 X 31

( É que Entrar )

= X 22

( É que sai )=10

80

Novo valor da função objetivo = valor anterior +

c 31 .X

31 = 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 x 31 = 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)= x 31 = 10: assim X 11 = 20 - 10 = 10 X 12 = 20 + 10 = 30 X 23 = 70 + 10 = 80 X 33 X 34 = 30 - 10 = 20 = 80

(não se altera pois não é do ciclo)

Novo valor da função objetivo = valor anterior +

c 31 .X

31 = 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:

O 1 O 2 O 3 Demanda D 1

10

C 21 = +2

10

10 2 13 D 2

30

C 22 = +5

C 32 = +3 20 30 5 0 11 D 3

C 13 = +1

80

12 1

C 14 D 4 = +1

C 24 = +16 4 9

20

14

80

6 100 80

Não há  c ij X 11 = 10  X X X X 12 23 31 X 33 34 = 30  = 80  = 10  = 20  = 80  < 0: Árvore atual é ótima .

Remeter 10 unidades do produto da fábrica 1 ao depósito 1 Remeter 30 unidades do produto da fábrica 1 ao depósito 2 Remeter 80 unidades do produto da fábrica 2 ao depósito 3 Remeter 10 unidades do produto da fábrica 3 ao depósito 1 Remeter 20 unidades do produto da fábrica 3 ao depósito 3 Remeter 80 unidades do produto da fábrica 3 ao depósito 4 Custo Ótimo mínimo de transporte = 1220 .

Pesquisa Operacional UNESP / Campus de Guaratinguetá Produção 40 80 110 230

25

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 coeficientes de custo marginais.

se calcular os

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 L i com i = 1, m custo marginal K j , com j = 1, n para cada linha i da tabela, para cada coluna j da tabela, de forma que, para cada dada tem-se: L i + K j = c ij trajeto (ou arco) básico (i, j) da solução 27

Pesquisa Operacional UNESP / Campus de Guaratinguetá

Modi

O sistema de equações resultante tem solução indeterminada: (m + n) variáveis L i , K j (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, L 1 = 0 e calcular por inspeção os demais valores de L i e K j .

Para o cálculo do valor do

não-básico (i, j) coeficiente de custo marginal de cada arco

usar a expressão: 

C ij = c ij - (L i + K j ) 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.

O 1 O 2 O 3 Demanda D 1

20

20 10 2 13

30

D 2 5 0 11 30 D 3

50

12 1

50

100 14

40

D 4

40

80 4 9 6 Produção 40 80 110 230

Número de arcos básicos: (m + n - 1) = 3 + 4 -1 = 6.

Pesquisa Operacional UNESP / Campus de Guaratinguetá

29

Modelo de Transporte Simples

Aplicando-se o

método Modi

tem-se as variáveis L 1 , L 2 , L 3 , K 1 , K 2 , K 3 , K 4 , e o sistema de equações: L 1 + K 4 L 2 + K 2 = 4 = 0 L 2 + K 3 = 1 L 3 + K 1 = 13 L 3 L 3 + K 3 + K 4 = 14 = 6 Fazendo-se L 1 = 0 tem-se: K 4 = 4 L 3 = 2, K 3 = 12, K 1 = 11, L 2 = -11, K 2 = 11.

Cálculo dos Coeficientes de Custo Marginal:  C 11 = C 11 - (L 1 + K 1 ) = 10 - (0 + 11) = -1 Candidatos  C 12  C 13  C 21  C 24  C 32 = C = C = C 21 = C = C 12 13 24 32 - (L 1 + K 2 ) = 5 - (0 + 11) = -6 - (L - (L - (L - (L 1 2 2 3 + K + K + K + K 3 1 4 2 ) = 12 - (0 + 12) = 0 ) = 2 - ( -11 + 11) = 2 ) = 9 - (-11 + 4) = 16 ) = 11 - (2 + 11) = -2 Mantém o valor da FO Candidato 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.

Passo 2.

Ir ao

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  c ij < 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 < Ótima. Parar.

0

Solução Atual é

Se há coeficiente de lucro marginal é ótima.

 l ij > 0  solução atual não 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

i a i >

j b j

Podem ocorrer duas situações  excesso de oferta  criar destino fictício .

 i a i   j b j  excesso de demanda  criar origem fictícia .

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.

Pesquisa Operacional UNESP / Campus de Guaratinguetá

36

Exemplo com degeneração e desbalanceamento

O 1 O 2 O 3 Demanda D 1 20 10 2 13 D 2 30 5 0 11 D 3 80 12 1 14 D 4 70 4 9 6 Produção 40 80 100 200\220

Há um excesso de produção no valor de 220 - 200 = 20 unidades

destino fictício D F

com demanda associada de 20 unidades.

 criar um

O 1 O 2 O 3 Demanda Solução inicial para o novo modelo (balanceado)

20

D 1 10

C 21 = -3 2

C 31 = -5 13 D 2

20 10

C 32 = -2 5 0 11 D 3

C 13 = +6

70 10

12 1 14 D 4

C 14 = +6

C 24 = +16

70

4 9 6 D F

C 1F = +8

C 2F = +13

20

20 30 80 70 20 0 0 0 Produção 40 80 100 220

Custo da solução inicial: 930

Pesquisa Operacional UNESP / Campus de Guaratinguetá

37

Exemplo com degeneração e desbalanceamento

Escolhendo para entrar o arco (3, 1) obtém-se o ciclo de compensação :

O 1 O 2 O 3 Demanda D 1

20 (-1) (+1)

20 10 2 13 D 2

20 (+1) 10 (-1)

30 5 0 11 D 3

70 (+1) 10 (-1)

80 12 1 14 D 4

70

70 4 9 6 DF

20

20 0 0 0 Produção 40 80 100 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 O 1 O2 O3 Demanda D 1

10

 C 21 = +2

10

20

10

2 13

D 2

30

 C 22 = +5  C 32 = 3 30

5

0 11

D 3

C 13 = +1 12 80

1

D 4

 

C 14 = +1

C 24

4

= +16 9

D F

 C 1F = +3  C 2F = +13

0

80 14

70

70 6

20

20 0 0 0

Produção

40 80 100 220

Pesquisa Operacional UNESP / Campus de Guaratinguetá

Exemplo com degeneração e desbalanceamento

O 1 O2 O3 Demanda D 1

10

 C 21 = +2

10

20

10

2 13

D 2

30

5

  C 22 = +5 0 C 32 = +3 11 30

D 3

C 13 = +1 12 80

1

0

80 14 

D 4

C 14 = +1

C 24

4

= +16 9

70

6 70 

D F

 C 1F = +3 C 2F = +13

20

20 0 0 0

Produção

40 80 100 220 Esta tabela corresponde a solução ótima ( degenerada ) com

custo ótimo = custo anterior +

C 31 .X

31 = 930 + (-5).10 = 880

.

Valores ótimos de fluxo para os arcos básicos: X 11 = 10, X 12 = 30, X 23 = 80, X 31 = 10, X 33 = 0, X 34 = 70, X 3F = 20.

Observe que o valor de fluxo igual a 20 no arco fictício (O3, D

Os arcos não-básicos tem fluxo nulo.

F ) significa que 20 unidades do produto ficarão estocadas na origem 3.

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

F 1 F 2 F 3

Capacidade

200 100 80

Total 380 Cliente

C 1 C 2 C 3 C 4

Total Demanda

140 120 90 30

380

41

Pesquisa Operacional UNESP / Campus de Guaratinguetá

Exercícios

Os custos de transporte ($/por unidade) são os seguintes:

Fábricas

F 1 F 2 F 3 C 1 5 2 6 C 2 4

Clientes

C 3 6 9 11 8 7 C 4 14 10 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

D 1 D 2 D 3

Capacidade

30 90 70

Total 190 Cliente

C 1 C 2 C 3 C 4

Total Demanda

10 100 70 30

210

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 C 2 deve completamente, ser atendido 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

F F 2 F 3 1

Capacidade mensal da produção

85

Custo de produção ($/unidade)

50 90 75 30 40 Total 250

Cliente

C 1 C 2 C 3 C 4 Total

Demanda mensal

100 80 20 40 240

Preço de venda ($/unidade)

100 110 105 125 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 Fabricação

F 1 F 2 F 3 C 1 43 30 44

Locais de Venda

C 2 57 49 58 C 3 33 25 33 C 4 60 47 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á