1 faculdade de engenharia - campus de guaratinguetá pesquisa operacional livro: introdução à...

46
1 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

Upload: internet

Post on 17-Apr-2015

118 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

1

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

Page 2: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Sumário

2

Modelo de Transporte Simples

Histórico e CaracterísticasModelo MatemáticoModelo em Grafos“Stepping Stone Algorithm”Casos Especiais

Page 3: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Modelo de Transporte Simples

3

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.

Page 4: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá4

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 =  

Restrições:  

Observação importante:

Cij Xij

ji

0. Xiji

destinos nos balanço -n 1, = j bj, = Xij

origens nas balanço - m 1, = i aj

i, =

ijX

ai = j

ji

b (modelo balanceado)

Page 5: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá5

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:

  Achar um modelo de PL para determinar o programa de entregas do produto com mínimo custo de transporte.

D1 D2 D3 D4

O1 10 5 12 4

O2 2 0 1 9

O3 13 11 14 6

Page 6: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá6

Sujeito a:

Formulação do modelo

343332

3124232221141312+ 11

6X + 14X + + 11X +

+ 13X + 9X + 1X + 0X + 2X + 4X + 12X + 5X X10 = C Min

4. 1, = j e 3 1, = i 0, X

80 = X + X + X

100 = X + X + X

30 = X + X + X

20 = X + X + X

110 = X +X + X + X

80 = X + X + X + X

40 = X + X +X+

ij

342414

332313

3222 12

312111

34 333231

24232221

1413 12 11X

Variáveis de decisão: Xij = quantidade de produto enviado de Oi para Dj

Page 7: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá7

X =

Qualquer equação do sistema de restrições é combinação linear das demais no. de equações Linearmente Independentes = (m + n -1).

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

40

80

110

20

30

100

80

Page 8: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá8

Modelos em Grafos

Rede de transporte

(a1= 40) O1 D1 (b1=20)

D2 (b2=30)

(a2=80) O2

D3 (b3=100)

(a3=110) O3 D4 (b4=80)

Cij

10512

4

2019

13 1114

6

Page 9: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

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 20

80 30

110 100

80

9

Solução Básica Viável = Árvore

X11= 20

X12 = 20

X22 = 10

X23 = 70

X33 = 30

X34 = 80

Observação: as demais variáveis são não-básicas e nulas.

Page 10: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá10

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

Page 11: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá11

Etapas de aplicação do “Stepping Stone Algorithm”

Passo 1: Inicialização*Achar árvore inicial. Ir ao passo 2. Passo 2: Teste de OtimalidadeAchar 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 atualAchar 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).

Page 12: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Métodos de inicialização do “Stepping Stone Algorithm”

12

 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.

Page 13: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Modelo de Transporte Simples

13

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.

Page 14: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Aplicação do “Stepping Stone Algorithm”

14

Árvore inicial obtida pela regra do canto esquerdo:

D1 D2 D3 D4 Produção

O1 10 5 12 4 40

O2 2 0 1 9 80

O3 13 11 14 6 110

Demanda 20 30 100 80 230

D1 D2 D3 D4 ProduçãoO1 10 5 12 4 40

O2 2 0 1 9 80

O3 13 11 14 6 110

Demanda 20 30 100 80 230

 Tabela inicial com os dados do problema:

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.

20 20

10 70

30 80

Page 15: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

D1 D2 D3 D4 Produção

O1 10 5 12 4 40

O2 2 0 1 9 80

O3 13 11 14 6 110

Demanda 20 30 100 80 230

15

Árvore inicial obtida pela regra do custo mínimo

30 50

40

4020 50

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.

Page 16: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Ciclo de Compensação

16

X11= 20

X12 = 20

X22 = 10

X23 = 70

X33 = 30

X34 = 80

40

80

110

20

30

100

80

X21 =0-1

-1

+1

+1

X21 (É candidato a entrar)

(C(C21 21 =2)=2)

(C(C11 11 =10)=10)

(C(C12 12 =5)=5)

(C(C22 22 =0)=0)

C21 = 22.(+1) +1010.(-1) +55.(+1) +00.(-1) = -3/unidade.

Page 17: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

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

17

D1 D2 D3 D4 ProduçãoO1 20 10 20 5 12 4 40

O2 2 10 0 70 1 9 80

O3 13 11 30 14 80 6 110

Demanda 20 30 100 80 230

(+1)

(-1) (+1)

(-1)

Custo marginal do arco (2, 1):

C21 = 2.(+1) + 10.(-1) + 5.(+1) + 0.(-1) = -3/unidade. (É candidato a entrar)

 Ciclo de compensação formado pela árvore básica, obtida pela Regra do Canto esquerdo, e pelo arco não-básico (2, 1).

Page 18: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Ciclo de Compensação

18

X11= 20

X12 = 20

X22 = 10

X23 = 70

X33 = 30

X34 = 80

40

80

110

20

30

100

80

X14 =0-1

-1

-1

+1

+1

+1

X14 (Não é candidato a entrar)

(C(C1414=4)=4)

(C(C34 34 =6)=6)

(C(C33 33 =14)=14)

(C(C23 23 =1)=1)

(C(C22 22 =0)=0)

(C(C12 12 =5)=5)

C14 = 44.(+1) +66.(-1) +1414.(+1) +11.(-1) +00.(+1) +55.(-1) = 6/unidade.

Page 19: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

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

19

D1 D2 D3 D4 Produção

O1 20 10 20 5 12 4 40

O2 2 10 0 70 1 9 80

O3 13 11 30 14 80 6 110

Demanda 20 30 100 80 230

(+1)

(-1)(+1)

(-1)(+1)

(-1)

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)

Page 20: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Ciclo de Compensação

20

X11= 20

X12 = 20

X22 = 10

X23 = 70

X33 = 30

X34 = 80

40

80

110

20

30

100

80

X31 =0-1

-1

-1

+1

+1

+1

X31 (É candidato a entrar)

(C(C31 31 =13)=13)

(C(C11 11 =10)=10)

(C(C12 12 =5)=5)

(C(C22 22 =0)=0)

(C(C23 23 =1)=1)

(C(C33 33 =14)=14)

C31 = 1313.(+1) +1010.(-1) +55.(+1) +00.(-1) +11.(+1) +1414.(-1) = -5/unidade.

Page 21: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

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

21

 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 D4 ProduçãoO1 20 10 20 5 12 4 40

O2 2 10 0 70 1 9 80

O3 13 11 30 14 80 6 110Demanda 20 30 100 80 230

(+1)

(-1) (+1)

(-1) (+1)(-1)

Custo marginal do arco (3, 1):

C31 = 13.(+1) +10.(-1) + 5.(+1) + 0.(-1) + 1.(+1) + 14.(-1) = -5/unidade. (É candidato a entrar)

Page 22: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Balanceamento de Fluxo no Ciclo de Compensação

22

X11= 20

X12 = 20

X22 = 10

X23 = 70

X33 = 30

X34 = 80

40

80

110

20

30

100

80

X31 =0-1

-1

-1

+1

+1

+1

X31 (É que Entrar) = X22 (É que sai)=10

Possui o menor valor de fluxo dos valores com (-1)

dentro do ciclo de compensação.

.(10)

.(10)

.(10)

.(10)

.(10)

.(10)

Novo valor da função objetivo = valor anterior + c31.X31= 1270 + (-5).10 = 1220.

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) =>Xij 0 (satisfazera condição de não-negatividade)

O arco (2,2) é substituído pelo Arco (3,1)

Page 23: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Balanceamento de Fluxo no Ciclo de Compensação

23

X11= 10

X12 = 30

X31 = 10

X23 = 80

X33 = 20

X34 = 80

40

80

110

20

30

100

80 X31 (É que Entrar) = X22 (É que sai)=10

Novo valor da função objetivo = valor anterior + c31.X31= 1270 + (-5).10 = 1220.

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

Page 24: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

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.

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 = 30X23 = 70 + 10 = 80X33 = 30 - 10 = 20X34 = 80 (não se altera pois não é do ciclo)

 Novo valor da função objetivo = valor anterior + c31.X31= 1270 + (-5).10 = 1220.

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.

Page 25: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

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

25

Aplicando-se o Passo 2 tem-se:

D1 D2 D3 D4 ProduçãoO1 10 10 30 5 C13 = +1 12 C14 = +1 4 40

O2 C21 = +2 2 C22 = +5 0 80 1 C24= +16 9 80

O3 10 13 C32 = +3 11 20 14 80 6 110

Demanda 20 30 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 1X12 = 30 Remeter 30 unidades do produto da fábrica 1 ao depósito 2X23 = 80 Remeter 80 unidades do produto da fábrica 2 ao depósito 3X31 = 10 Remeter 10 unidades do produto da fábrica 3 ao depósito 1X33 = 20 Remeter 20 unidades do produto da fábrica 3 ao depósito 3X34 = 80 Remeter 80 unidades do produto da fábrica 3 ao depósito 4Custo Ótimo mínimo de transporte = 1220.

Page 26: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Modelo de Transporte Simples

26

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.

 

Page 27: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Método Modificado (Modi):

27

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

Page 28: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

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)

Page 29: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exemplo do MODI

29

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.

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

D1 D2 D3 D4 Produção

O1 10 5 12 40 4 40

O2 2 30 0 50 1 9 80

O3 20 13 11 50 14 40 6 110

Demanda 20 30 100 80 230

Page 30: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Modelo de Transporte Simples

30

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= 0L2 + K3 = 1

L3 + K1 = 13L3 + K3 = 14L3 + 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) = -1C12 = C12 - (L1 + K2 ) = 5 - (0 + 11) = -6 C13 = C13 - (L1 + K3 ) = 12 - (0 + 12) = 0 C21 = C21 - (L2 + K1 ) = 2 - ( -11 + 11) = 2C24 = C24 - (L2 + K4 ) = 9 - (-11 + 4) = 16C32 = C32 - (L3 + K2 ) = 11 - (2 + 11) = -2

Candidatos

Candidato

Mantém o valor da FO

Page 31: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

“Stepping Stone Algorithm”

31

Para um Modelo de Minimização Passo 1: InicializaçãoDeterminar 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.

Page 32: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

“Stepping Stone Algorithm”

32

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. 

Page 33: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

“Stepping Stone Algorithm”

33

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

Page 34: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Casos especiais(1) ofertas e demandas desbalanceadas

34

 Podem ocorrer duas situações  

ai > j

j

i

b

i

j

j i ba

Custos de transporte nos trajetos fictícios são nulos.Aplica-se o “Stepping Stone Algorithm” para o modelo ampliado e

balanceado.  

excesso de oferta criar destino fictício.

excesso de demanda criar origem fictícia.

Page 35: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Casos especiais - (2) Condições proibidas de embarque e recepção – Trajetos proibidos

35

 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

Page 36: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Casos Especiais - (3) Soluções degeneradas

36

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:

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

Acrescentar convenientemente arcos com fluxo nulo até que se obtenha uma árvore (= grafo com m + n - 1 arcos e sem ciclos).

Page 37: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exemplo com degeneração e desbalanceamento

37

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.

D1 D2 D3 D4 DF Produção

O1 20 10 20 5 C13= +6 12 C14= +6 4 C1F= +8 0 40

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 30 80 70 20 220

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

Solução inicial para o novo modelo (balanceado)

Custo da solução inicial: 930

Page 38: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

D1 D2 D3 D4 DF Produção

O1 20 (-1) 10 20 (+1) 5 12 4 0 40

O2 2 10 (-1) 0 70 (+1) 1 9 0 80

O3 (+1) 13 11 10 (-1) 14 70 6 20 0 100

Demanda 20 30 80 70 20 220

38

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

Exemplo com degeneração e desbalanceamento

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

Page 39: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

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 D4 DF Produção

O1 10 10 30 5 C13= +1 12 C14= +1 4 C1F= +3 0 40

O2 C21= +2 2 C22= +5 0 80 1 C24= +16 9 C2F= +13 0 80

O3 10 13 C32= 3 11 0 14 70 6 20 0 100

Demanda 20 30 80 70 20 220

Page 40: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

D1 D2 D3 D4 DF Produção

O1 10 10 30 5 C13= +1 12 C14= +1 4 C1F= +3 0 40

O2 C21= +2 2 C22= +5 0 80 1 C24= +16 9 C2F= +13 0 80

O3 10 13 C32= +3 11 0 14 70 6 20 0 100

Demanda 20 30 80 70 20 220

40

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.

Exemplo com degeneração e desbalanceamento

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.

Page 41: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exercícios

41

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

Page 42: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exercícios

42

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.

Page 43: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exercícios

43

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 190 Total 210  

Page 44: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exercícios

44

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.

Page 45: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exercícios

45

3. Uma empresa tem 3 fábricas e 4 clientes, referentes a um determinado produto, e conhece-se os dados abaixo:

Fábrica

Capacidade

mensal da

produção

Custo de

produção

($/unidade)Cliente

Demanda

mensal

Preço de

venda

($/unidade)

F1 85 50 C1 100 100

F2 90 30 C2 80 110

F3 75 40 C3 20 105

C4 40 125

Total 250 Total 240

Page 46: 1 Faculdade de Engenharia - Campus de Guaratinguetá Pesquisa Operacional Livro: Introdução à Pesquisa Operacional Capítulo 4 – Modelo de Transporte Simples

Pesquisa Operacional - UNESP / Campus de Guaratinguetá

Exercícios

46

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.