43

Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

  • Upload
    others

  • View
    9

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Algoritimos e Estruturas de Dados IIICIC210

Branch and Bound

Rami�car e Limitar

Haroldo Gambini Santos

Universidade Federal de Ouro Preto - UFOP

4 de dezembro de 2009

Haroldo Gambini Santos Branch and Bound 1/19

Page 2: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Rami�car e Limitar

Idéia Básica

O algoritmo roda sob a árvore de enumeração das soluçõespossíveis. No pior caso, todas as soluções serão exploradas.Na prática, frequentemente vários ramos são podados com ouso de limites.

Haroldo Gambini Santos Branch and Bound 2/19

Page 3: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Branch

Branch consiste em dividir um problema em problemas menores.Seja um problema P , divide-se em m subproblemas

P1, P2, . . . , Pm tal que

P1 ∪ P2, . . . ,∪Pm = P

Haroldo Gambini Santos Branch and Bound 3/19

Page 4: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Branch

Uma maneira de se criar subproblemas é através da �xação devariáveis discretas.

Considere uma variável v, de um problema P , cujos valorespossíveis sejam 1, . . . , V .

Pode-se dividir P em P1, . . . , PV , onde em Pi temos a variável v�xada para o seu i-ésimo valor possível.

Haroldo Gambini Santos Branch and Bound 4/19

Page 5: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Branch

A �xação recursiva de diferentes variáveis cria uma árvore, ondetemos:

nós internos esses nós representam todas as soluções que podemser obtidas respeitando as �xações já feitas;

folhas representam soluções completas.

Haroldo Gambini Santos Branch and Bound 5/19

Page 6: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Ex.: Problema com 3 variáveis binárias: x1, x2, x3.Problema original P

P

Haroldo Gambini Santos Branch and Bound 6/19

Page 7: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Ex.: Problema com 3 variáveis binárias: x1, x2, x3.Branch na variável x1, criam-se subproblemas P1 e P2

P

P1

P2

x1=1                                x

1=0

Haroldo Gambini Santos Branch and Bound 6/19

Page 8: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Ex.: Problema com 3 variáveis binárias: x1, x2, x3.Branch na variável x2, criam-se subproblemas P11,P12,P21 e P22

P

P1

P2

P11

P12

P21

P22

x1=1                                x

1=0

x2=1                    x

2=0 x

2=1                    x

2=0

Haroldo Gambini Santos Branch and Bound 6/19

Page 9: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Ex.: Problema com 3 variáveis binárias: x1, x2, x3.Branch na variável x3 leva as soluções completas

P

P1

P2

P11

P12

P21

P22

x1=1                                x

1=0

x2=1                    x

2=0 x

2=1                    x

2=0

x3=1               x

3=0 x

3=1        x

3=1        x

3=1               x

3=0         x

3=0         x

3=0

Haroldo Gambini Santos Branch and Bound 6/19

Page 10: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Bound - Limites

usando somente o branch temos um algoritmo exato que emum número �nito de passos fornece a solução ótima

mas extremamente ine�ciente !para n variáveis binárias temos 2n nós a serem explorados.

a chave para melhorar a e�ciência do B & B é a poda dealgumas sub-árvores através do uso de limites.

Haroldo Gambini Santos Branch and Bound 7/19

Page 11: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Bound - Limites

usando somente o branch temos um algoritmo exato que emum número �nito de passos fornece a solução ótima

mas extremamente ine�ciente !

para n variáveis binárias temos 2n nós a serem explorados.

a chave para melhorar a e�ciência do B & B é a poda dealgumas sub-árvores através do uso de limites.

Haroldo Gambini Santos Branch and Bound 7/19

Page 12: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Bound - Limites

usando somente o branch temos um algoritmo exato que emum número �nito de passos fornece a solução ótima

mas extremamente ine�ciente !para n variáveis binárias temos 2n nós a serem explorados.

a chave para melhorar a e�ciência do B & B é a poda dealgumas sub-árvores através do uso de limites.

Haroldo Gambini Santos Branch and Bound 7/19

Page 13: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Árvore de Enumeração

Bound - Limites

usando somente o branch temos um algoritmo exato que emum número �nito de passos fornece a solução ótima

mas extremamente ine�ciente !para n variáveis binárias temos 2n nós a serem explorados.

a chave para melhorar a e�ciência do B & B é a poda dealgumas sub-árvores através do uso de limites.

Haroldo Gambini Santos Branch and Bound 7/19

Page 14: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Bound - Limites

Limites

Considere um problema onde queremosachar o lucro máximo da solução ótima:

z = max f(x)

Mesmo que z seja difícil de calcular,eventualmente podemos ter limites para zque podem ser calculados com maisfacilidade.

z

z

z

Limite Superior

Solução Ótima

Limite Inferior

Haroldo Gambini Santos Branch and Bound 8/19

Page 15: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Exemplo - Problema da Mochila 0/1

Entradan : items li : lucro do item iC : capacidade da mochila pi : peso do item i

Decisão

xi =

{1 item i incluso na solução

0 caso contrário

Objetivo

max∑

i=1,...,n

lixi

Restrição ∑i=1,...,n

pixi ≤ C

Haroldo Gambini Santos Branch and Bound 9/19

Page 16: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Exemplo - Problema da Mochila 0/1 (PM01)

Heurística

Uma heurística gulosa: tentar colocar os items com grande lucroe pouco peso.Ordena-se os items por densidade:

di =lipi

Heurística:capacidadeRestante = Cenquanto houver algum pi < capacidadeRestante

adicione o item i com maior di tal que pi < capacidadeRestante

Haroldo Gambini Santos Branch and Bound 10/19

Page 17: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução da heurística gulosa

Solução heurística: itens: {3}, lucro: 9

A solução ótima com certeza é maior ou igual a 9, ou seja,temos um limite inferior para o custo da solução ótima

Haroldo Gambini Santos Branch and Bound 11/19

Page 18: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução da heurística gulosa

Solução heurística: itens: {3}, lucro: 9

A solução ótima com certeza é maior ou igual a 9, ou seja,temos um limite inferior para o custo da solução ótima

Haroldo Gambini Santos Branch and Bound 11/19

Page 19: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução da heurística gulosa

Solução heurística: itens: {3}, lucro: 9

A solução ótima com certeza é maior ou igual a 9, ou seja,temos um limite inferior para o custo da solução ótima

Haroldo Gambini Santos Branch and Bound 11/19

Page 20: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limite Superior

O Máximo de LucroPara o problema da mochila 0/1, como calcular rapidamente umlimite superior para o lucro que pode ser obtido ?

O Problema Fracionário da Mochila (PFM)

trocamos xi ∈ {0, 1} por xi ∈ [0, 1], ou seja, agora podemoscolocar �pedaços� de itens;

a solução ótima para o PFM é fácil de calcular: simplesmentepegam-se os itens com maior densidade primeiro; ao se depararcom o primeiro item que não cabe coloca-se a maior fraçãopossível dele;

o PFM é uma relaxação do PM01 visto que tem menos restrições.

Haroldo Gambini Santos Branch and Bound 12/19

Page 21: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limite Superior

O Máximo de LucroPara o problema da mochila 0/1, como calcular rapidamente umlimite superior para o lucro que pode ser obtido ?

O Problema Fracionário da Mochila (PFM)

trocamos xi ∈ {0, 1} por xi ∈ [0, 1], ou seja, agora podemoscolocar �pedaços� de itens;

a solução ótima para o PFM é fácil de calcular: simplesmentepegam-se os itens com maior densidade primeiro; ao se depararcom o primeiro item que não cabe coloca-se a maior fraçãopossível dele;

o PFM é uma relaxação do PM01 visto que tem menos restrições.

Haroldo Gambini Santos Branch and Bound 12/19

Page 22: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limite Superior

O Máximo de LucroPara o problema da mochila 0/1, como calcular rapidamente umlimite superior para o lucro que pode ser obtido ?

O Problema Fracionário da Mochila (PFM)

trocamos xi ∈ {0, 1} por xi ∈ [0, 1], ou seja, agora podemoscolocar �pedaços� de itens;

a solução ótima para o PFM é fácil de calcular: simplesmentepegam-se os itens com maior densidade primeiro; ao se depararcom o primeiro item que não cabe coloca-se a maior fraçãopossível dele;

o PFM é uma relaxação do PM01 visto que tem menos restrições.

Haroldo Gambini Santos Branch and Bound 12/19

Page 23: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limite Superior

O Máximo de LucroPara o problema da mochila 0/1, como calcular rapidamente umlimite superior para o lucro que pode ser obtido ?

O Problema Fracionário da Mochila (PFM)

trocamos xi ∈ {0, 1} por xi ∈ [0, 1], ou seja, agora podemoscolocar �pedaços� de itens;

a solução ótima para o PFM é fácil de calcular: simplesmentepegam-se os itens com maior densidade primeiro; ao se depararcom o primeiro item que não cabe coloca-se a maior fraçãopossível dele;

o PFM é uma relaxação do PM01 visto que tem menos restrições.

Haroldo Gambini Santos Branch and Bound 12/19

Page 24: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução Ótima do PFM (Relaxação do PM01)

seleciona item 3

seleciona 14 do item 1

solução com lucro 10,75

Haroldo Gambini Santos Branch and Bound 13/19

Page 25: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução Ótima do PFM (Relaxação do PM01)

seleciona item 3

seleciona 14 do item 1

solução com lucro 10,75

Haroldo Gambini Santos Branch and Bound 13/19

Page 26: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução Ótima do PFM (Relaxação do PM01)

seleciona item 3

seleciona 14 do item 1

solução com lucro 10,75

Haroldo Gambini Santos Branch and Bound 13/19

Page 27: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Solução Ótima do PFM (Relaxação do PM01)

seleciona item 3

seleciona 14 do item 1

solução com lucro 10,75

Haroldo Gambini Santos Branch and Bound 13/19

Page 28: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Limites EncontradosLimite Superior (Relaxação PFM) lucro 10,75

↓? ótimo ? ?

↑Limite Inferior (Heurística Gulosa) lucro 9

Haroldo Gambini Santos Branch and Bound 14/19

Page 29: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Problema da Mochila 0/1 (PM01)

Ex.: Problema com n = 4 e C = 6

item lucro peso lipi

1 7 4 1,752 4 3 1,333 9 5 1,804 3 2 1,50

Limites EncontradosLimite Superior (Relaxação PFM) lucro 10,75

↓Solução Ótima (itens 1 e 4) lucro 10

↑Limite Inferior (Heurística Gulosa) lucro 9

Haroldo Gambini Santos Branch and Bound 14/19

Page 30: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limites

Soluções Parciais

Tanto a heurística quanto a relaxação PFM podem serexecutadas em nós internos da árvore, considerando algumas�xações de variáveis. Atualiza-se a capacidade restante e itemsdisponíveis).

Esse procedimento oferece um limite Limite Inferior e Superiorpara esses nós.

Haroldo Gambini Santos Branch and Bound 15/19

Page 31: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limites

Soluções Parciais

Tanto a heurística quanto a relaxação PFM podem serexecutadas em nós internos da árvore, considerando algumas�xações de variáveis. Atualiza-se a capacidade restante e itemsdisponíveis).

Esse procedimento oferece um limite Limite Inferior e Superiorpara esses nós.

Haroldo Gambini Santos Branch and Bound 15/19

Page 32: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limites

Solução Incumbente

É a melhor solução encontrada até o momento durante a busca.

Essa solução pode aparecer durante a execução de umaheurística ou durante o percurso na árvore (ao se chegar em nósfolha).

No caso de Maximização, temos um Limite Inferior.

Haroldo Gambini Santos Branch and Bound 16/19

Page 33: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limites

Solução Incumbente

É a melhor solução encontrada até o momento durante a busca.

Essa solução pode aparecer durante a execução de umaheurística ou durante o percurso na árvore (ao se chegar em nósfolha).

No caso de Maximização, temos um Limite Inferior.

Haroldo Gambini Santos Branch and Bound 16/19

Page 34: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Limite Superior

Relaxação

A solução de um problema relaxado oferece uma solução cujolucro é melhor ou igual ao da solução ótima do problemaoriginal.

Em Maximização, temos um Limite Superior.

Haroldo Gambini Santos Branch and Bound 17/19

Page 35: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Poda

Razões para Podar um Nó

Limite a relaxação (Limite Superior) indica que não hápossibilidade de se melhorar a solução incumbente;

Infactibilidade as �xações já feitas induzem a algumainfactibilidade (estouro da capacidade da mochila,por ex.).

Em ambos os casos o nó e todos os seus �lhos são podados.

Haroldo Gambini Santos Branch and Bound 18/19

Page 36: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

Incumbente: 11

Haroldo Gambini Santos Branch and Bound 19/19

Page 37: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

Incumbente: 11

Haroldo Gambini Santos Branch and Bound 19/19

Page 38: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

  x2=1             

LS: 11

Incumbente: 11Podado: continuarnesse nó nãooferecerá nenhumasolução com customelhor do que 11.

Haroldo Gambini Santos Branch and Bound 19/19

Page 39: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

  x2=1                        x

2=0

LS: 12,4

LI: 9

LS: 11

Incumbente: 11

Haroldo Gambini Santos Branch and Bound 19/19

Page 40: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

  x2=1                        x

2=0

LS: 12,4

LI: 9

LS: 11

  x3=1              

Peso = 9Infactível

Incumbente: 11Podado:Infactibilidade.

Haroldo Gambini Santos Branch and Bound 19/19

Page 41: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

  x2=1                        x

2=0

LS: 12,4

LI: 9

LS: 11

  x3=1              

Peso = 9Infactível

            x3=0

LS: 9

Incumbente: 11Podado por Limite.

Haroldo Gambini Santos Branch and Bound 19/19

Page 42: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

  x2=1                        x

2=0

LS: 12,4

LI: 9

LS: 11

  x3=1              

Peso = 9Infactível

            x3=0

LS: 9

LS: 11,67

LI: 11

          x1=0

Incumbente: 11Podado por Limite:como os lucros sãointeiros, o melhorlucro possívelconsiderando arelaxação 11,67 é 11.

Haroldo Gambini Santos Branch and Bound 19/19

Page 43: Algoritimos e Estruturas de Dados III CIC210 · 2012. 12. 4. · O Problema racionárioF da Mochila (PFM) trocamos x i 2f0;1gpor x i 2[0;1], ou seja, agora podemos colocar pedaços

Branch and Bound - Exemplo: Problema da Mochila

LS: 12,5

LI: 11

  x1=1              

LS: 12,40

LI: 11

i li

pi

li/p

ix

i

1 7 4 1,75 ?

2 4 3 1,33 ?

i li

pi

li/p

ix

i

3 9 5 1,80 ?

4 2 2 1,00 ?

C=7

  x2=1                        x

2=0

LS: 12,4

LI: 9

LS: 11

  x3=1              

Peso = 9Infactível

            x3=0

LS: 9

LS: 11,67

LI: 11

          x1=0

Incumbente: 11SoluçãoProvadamenteÓtima

Haroldo Gambini Santos Branch and Bound 19/19