SlideShare uma empresa Scribd logo
1 de 25
Baixar para ler offline
Geração de Colunas em
Programação Inteira
Nelson Maculan1
1

Universidade Federal do Rio de Janeiro

PSR, Rio de Janeiro, 09/03/2010 – p. 1/2
Definições 1
Dados uma matriz A ∈ Qm×n e vetores b ∈ Qm e c ∈ Rn ,
com 0 < m ≤ n, consideremos o seguinte problema de
programação linear inteira:
(P I) minimizar
sujeito a:

cT x
Ax = b
x≥0

e inteiro,

cujo conjunto viável é
n
SP I = {x ∈ Z+ ; Ax = b}.

PSR, Rio de Janeiro, 09/03/2010 – p. 2/2
Definições 2
Consideremos, também, a relaxação linear do problema
(P I), a saber:
(P L) minimizar
sujeito a:

cT x
Ax = b
x ≥ 0,

cujo conjunto viável é
n
SP L = {x ∈ R+ ; Ax = b}.

Observação:
Seja x ∈ SP I . Definimos val(H) = cT x, temos que
¯
¯
val(P L) ≤ val(P I) ≤ val(H).

PSR, Rio de Janeiro, 09/03/2010 – p. 3/2
(PL) especial 1
(P L) minimizar

cj x j
j∈J

sujeito a :

aj xj = b
j∈J

xj ≥ 0,

para todo j ∈ J,

onde b ≥ 0 ∈ Qm , aj ∈ Qm e cj ∈ R, para cada j ∈ J .
Suponhamos que aj ∈ K = {a1 , a2 , ..., ap } e que exista
uma função f : K → R tal que cj = f (aj ), para cada j ∈ J .
Resolver o problema (P L) poderá não ser uma tarefa fácil,
quando houver um número excessivamente grande de
variáveis.

PSR, Rio de Janeiro, 09/03/2010 – p. 4/2
(PL) especial 2
Reconsideramos o (P L). Seja J ′ ⊆ J um subconjunto de
índices. Definamos um subproblema (mestre restrito) de
(P L), a saber:
(P L′ ) minimizar

cj x j
j∈J ′

sujeito a :

aj xj = b
j∈J ′

xj ≥ 0,

para todo j ∈ J ′ .

PSR, Rio de Janeiro, 09/03/2010 – p. 5/2
(PL) especial 3
A partir de uma base associada a uma solução viável para
o problema (P L′ ), logo básica viável também de (P L),
temos que verificar se essa solução é ótima. Para isso
buscamos uma nova coluna associada a um custo reduzido
negativo. Caso não exista tal coluna essa solução básica
viável será ótima de (P L).
Seja B = (aB(1) aB(2) ... aB(m) ) , tal que det(B) = 0, uma
base associada a uma solução viável
xT = (xT xT ) ∈ Q1×n , onde xB = B −1 b ≥ 0 e xN = 0.
B N
Seja uT = (cB(1) cB(2) ... cB(m) )B −1 , o vetor dos
multiplicadores do simplex (duais).
O custo reduzido será definido por: cj = cj − uT aj , no nosso
¯
caso, cj = f (aj ) para cada j ∈ J , logo cj = f (aj ) − uT aj .
¯

PSR, Rio de Janeiro, 09/03/2010 – p. 6/2
Resolução do (PL) especial
Para a busca de uma coluna associada a um custo relativo
negativo, resolveremos o seguinte problema auxiliar de
otimização combinatória:
(SP ) minimizarf (aj ) − uT aj
sujeito a:

aj ∈ K.

Seja val(SP ) = f (aq ) − uT aq . Se val(SP ) ≥ 0 a solução
básica viável em questão é um ótimo de (P L). Caso
contrário, a coluna aq entrará na nova base (método do
simplex revisado).

PSR, Rio de Janeiro, 09/03/2010 – p. 7/2
(PI) especial 1
(P I) minimizar

cj x j
j∈J

sujeito a :

aj xj = b
j∈J

xj ∈ Z+ ,

para todo j ∈ J,

onde b ≥ 0 ∈ Z m , aj ∈ Z m e cj ∈ R, para cada j ∈ J .
Suponhamos que aj ∈ K = {a1 , a2 , ..., ap } e que exista
uma função f : K → R tal que cj = f (aj ), para cada j ∈ J .
m
Exemplo de K = { y = (y1 y2 ... ym )T ∈ Z+ | m lk yk ≤ L},
k=1
onde, são conhecidos lk , L tais que
lk ∈ Z++ , lk ≤ L ∈ Z++ , k = 1, 2, ..., m. K é conhecido como
conjunto mochila e cj = f (aj ) = 1, j ∈ J.

PSR, Rio de Janeiro, 09/03/2010 – p. 8/2
(PI) especial 2
Ao solucionarmos a relaxação linear de (P I), denominada
(P L), encontraremos a solução no problema:
(P L′ ) minimizar

cj x j
j∈J ′

sujeito a :

aj xj = b
j∈J ′

x j ∈ R+ ,

para todo j ∈ J ′ ⊆ J,

foram geradas |J ′ | colunas até obtermos a solução ótima
de (P L).

PSR, Rio de Janeiro, 09/03/2010 – p. 9/2
(PI) especial 3
Consideremos o problema de programação linear inteira
abaixo:
(P I ′ ) minimizar
cj x j
j∈J ′

sujeito a :

aj xj = b
j∈J ′

xj ∈ Z+ ,

para todo j ∈ J ′ ⊆ J,

logo val(P L) ≤ val(P I) ≤ val(P I ′ ). Assim sendo val(P I ′ )
pode ser uma boa cota superior para val(P I) associada a
uma solução viável para (P I).

PSR, Rio de Janeiro, 09/03/2010 – p. 10/2
a

(PI) especial: exemplo 1 parte
Gilmore & Gomory (1961, 1963), corte de barras em uma
dimensão:
(CB1) minimizar
xj
j∈J

sujeito a :

aj xj ≥ b
j∈J

xj ∈ Z+ ,

para todo j ∈ J,

m
m
onde cj = 1, j ∈ J, b ∈ Z+ , aj = (a1j a2j ... amj )T ∈ Z+ tal
que
m
aj ∈ K = { α = (α1 α2 ... αm )T ∈ Z+ | m lk αk ≤ L}, j ∈ J.
k=1
Os lk ∈ Z, k = 1, 2, ..., m, e L ∈ Z são dados tais que
lk ≤ L, k = 1, 2, ..., m. Observação |K| = |J|.

PSR, Rio de Janeiro, 09/03/2010 – p. 11/2
a

(PI) especial: exemplo 2 parte
Seja a relaxação linear de (CB1) :
(LP CB1) minimizar

xj
j∈J

sujeito a :

aj xj − s = b
j∈J

x j ∈ R+ ,

para todo j ∈ J,

s = (s1 s2 ... sm )T ≥ 0,

onde s é o vetor das variáveis de folga. A matriz
B = (a1 a2 ... am ), para aj = ej , j = 1, 2, ..., m está associada
a uma solução básica viável de (LP CB1).

PSR, Rio de Janeiro, 09/03/2010 – p. 12/2
a

(PI) especial: exemplo 3 parte
Como verificar se B está associada a uma solução ótima
de (LP CB1)?
O vetor u = (1 1 ... 1 0 0 ... 0)B −1 dos multiplicadores do
simplex (solução dual se B for uma base ótima) será
sempre ≥ 0. Por quê?
Teremos que resolver o subproblema ("pricing") seguinte:
(SP ) minimizar 1 − uT aj
sujeito a:

aj ∈ K.

Ou ainda:
val(SP ) = 1 − max{uT a | a ∈ K}.

PSR, Rio de Janeiro, 09/03/2010 – p. 13/2
a

(PI) especial: exemplo 4 parte
O problema (KP ) : max{uT a | a ∈ K} é conhecido como o
problema da mochila, para o qual existem bons algoritmos
na prática (Martello & Toth, 1990).
Se val(SP ) = 1 − uT a < 0, a coluna a entrará na nova base.
¯
¯
Caso contrário a solução associada à matriz básica B
fornecerá um ótimo para (LP CB1).
CONJETURA:
val(CB1) ∈ { ⌈val(LP CB1)⌉, ⌈val(LP CB1)⌉ + 1}.

PSR, Rio de Janeiro, 09/03/2010 – p. 14/2
Branch-and-price para (PI) 1
Vamos supor que val(P L′ ) = j∈J ′ cj xj = val(P L), possui
¯
k ∈ J ′ , tal que xk ∈ Z. Isto é, a solução x não é uma
¯ /
¯
solução viável de (P I). Podemos pensar no processo
clássico de ramificação (branch) em árvore binária visando
à busca da solução de (P I).
Do problema (P L′ ) sairão dois subproblemas:
(P rob1) := (P L′ ) ∩ { xk ≤ ⌊¯k ⌋ },
x
(P rob2) := (P L′ ) ∩ { xk ≥ ⌊¯k ⌋ + 1 }.
x

Fazemos a reotimização de (P rob1) e (P rob2) (utilizando
apenas as colunas geradas em J ′ ). Método dual do simplex
com variáveis canalizadas (Maculan & Fampa, 2006).

PSR, Rio de Janeiro, 09/03/2010 – p. 15/2
Branch-and-price para (PI) 2
Supondo que (P rob1) e (P rob2) não sejam vazios, teremos
que xk = ⌊¯k ⌋ em (P rob1) e xk = ⌊¯k ⌋ + 1 em (P rob2).
x
x
Verificaremos se a solução ótima de (P rob1) é também
ótima de (P L) ∩ { xk ≤ ⌊¯k ⌋ }, e de (P rob2) para
x
(P L) ∩ { xk ≥ ⌊¯k ⌋ + 1 }.
x
Para resolvermos (P L) ∩ { xk ≤ ⌊¯k ⌋ }, teremos que
x
considerar a partir da solução de (P rob1) o subproblema
seguinte:
(SP ) minimizarf (aj ) − uT aj
sujeito a:

aj ∈ K − {ak }.

PSR, Rio de Janeiro, 09/03/2010 – p. 16/2
Dantzig-Wolfe em PLI 1
(P LI) minimizar cT x
sujeito a:

Ax = b
Dx ≤ d
n
x ∈ Z+ ,

onde as matrizes A ∈ Qm1 ×n e D ∈ Qm2 ×n , e os vetores
b ∈ Qm1 , d ∈ Qm2 e c ∈ Qn são dados. Além disso
n
suponhamos que o conjunto X = {x ∈ Z+ | Dx ≤ d} seja
n
limitado. X = {ˆ1 , x2 , ..., xp } = {x ∈ Z+ | Dx ≤ d} =
x ˆ
ˆ
p
n
{x ∈ R+ | x = p λj xj ,
ˆ
λj = 1, λ ∈ {0, 1}p }.
j=1
j=1
n
n
Quando em (P LI) substituirmos x ∈ Z+ por x ∈ R+ ,
denominaremos essa relaxação linear de (RLP LI).

PSR, Rio de Janeiro, 09/03/2010 – p. 17/2
Dantzig-Wolfe em PLI 2
Utilizando as notações seguintes:
T j

cj = c x , aj =
ˆ
ˆ ˆ

Aˆj
x
1

∈R

b
e ˆ=

m

b
1

∈ Rm ,

onde m = m1 + 1 e j ∈ J = {1, 2, ..., p}. Poderemos
reescrever (P LI) como se segue:
(P LI) minimizar

cj λ j
ˆ
j∈J

aj λj = ˆ
ˆ
b

sujeito a :
j∈J

λj ∈ {0, 1},

para j ∈ J.

PSR, Rio de Janeiro, 09/03/2010 – p. 18/2
Relaxação linear de (PLI)
(RP LI) minimizar

cj λ j
ˆ
j∈J

aj λj = ˆ
ˆ
b

sujeito a :
j∈J

λj ∈ [0, 1],

para j ∈ J.

ˆ
Seja B ∈ Rm×m uma base viável de (RP LI) e uT = cB B −1 .
ˆˆ ˆ
É fácil verificar que val(RLP LI) ≤ val(RP LI).

PSR, Rio de Janeiro, 09/03/2010 – p. 19/2
Resolução de (RPLI)
ˆ
Para verificarmos se B é uma base ótima de (RP LI),
teremos que calcular:
val(SP ) = minj=1,2,...,p {ˆj −uT aj } = minj=1,2,...,p {cT xj −uT aj }.
c
ˆ
ˆ
ˆ

Sabemos que aj =
ˆ

Aˆj
x
1

, e seja

u = (u1 u2 ... um1 u0 )T = (¯ u0 )T Então
u
val(SP ) = minj=1,2,...,p {(cT − uT A)ˆj − u0 }. Ou ainda
¯
x
val(SP ) = min{(cT − uT A)x − u0 |x ∈ X }, onde
¯
n
X = {x ∈ Z+ | Dx ≤ d}.

Se val(SP ) =

(cT

− uT A)¯ − u0
¯
x

< 0, a coluna

A¯
x
1

,

entrará na nova base associada ao custo cT x.
¯
¯
Caso contrário B é uma base ótima de (RP LI).

PSR, Rio de Janeiro, 09/03/2010 – p. 20/2
Ramificação: particionamento 1
Consideremos um caso mais particular, em que o problema
mestre é dado pelo seguinte problema de particionamento:
(P P ) minimizar

cj λ j
j∈J

sujeito a :

aj λj = 1
j∈J

λj ∈ {0, 1},

para todo j ∈ J.

onde J = {1, 2, ..., p}, aj ∈ K = {a1 , a2 , ..., ap } ∈ {0, 1}m ,
um conjunto finito, e uma função f : K → tal que cj = f (aj )
são dados. Denotemos por (P P ) a relaxação linear do
problema de particionamento (P P ).

PSR, Rio de Janeiro, 09/03/2010 – p. 21/2
Ramificação: particionamento 2
Quando a solução ótima do problema mestre linear (P P )
associado a determinado nó da árvore de
branch-and-bound não for inteira, na estratégia de
branching convencional, deveremos escolher alguma
variável com valor fracionário, digamos λk ∈ {0, 1}, para
procedermos a ramificação. Os novos problemas lineares
serão obtidos a partir da imposição das restrições λk = 1,
no 1-branch (Ryan e Foster, 1981), e λk = 0, no 0-branch.
PROPRIEDADE (Ryan e Foster, 1981): Se λ for uma solução
fracionária do problema (P P ), então existirá ao menos um
par de linhas, digamos r e s, da matriz de restrições A, tal
que
0 <

λq < 1.
q: arq =asq =1

PSR, Rio de Janeiro, 09/03/2010 – p. 22/2
Ramificação: particionamento 3
Assim, após identificarmos as linhas r e s nas condições
dadas pela propriedade de Ryan e Foster (1981),
poderemos descartar a solução fracionária corrente
através de uma estratégia de separação válida fornecida
pela adição das seguintes restrições de branching:
λq = 1

(1)

q: arq =asq =1

para um dos nós filhos (o da esquerda, por exemplo), no
1-branch, e
λq = 0
(2)
q: arq =asq =1

para o outro nó (o da direita), no 0-branch.

PSR, Rio de Janeiro, 09/03/2010 – p. 23/2
Ramificação: particionamento 4
A restrição do 1-branch faz com que as linhas r e s
sejam cobertas pela mesma coluna e a do 0-branch
necessariamente por colunas distintas. Em geral, essa
estratégia de branching é compatível com os algoritmos de
geração de colunas. Ao procedermos com o 0-branch,
devemos eliminar toda coluna q com arq = asq = 1 do
problema mestre restrito corrente e proibir que alguma tal
coluna seja gerada. Para isto, toda nova coluna gerada
deverá satisfazer a restrição arq + asq ≤ 1 . Por outro lado,
no 1-branch devemos tomar, exclusivamente, colunas que
cobrem as linhas r e s ao mesmo tempo; ou seja,
devemos excluir todas as colunas do problema mestre que
cobrem apenas uma dessas linhas. Assim, eliminamos
todas as colunas com arq = asq no problema mestre
restrito corrente e exigimos que todas as novas colunas
geradas satisfaçam arq = asq .

PSR, Rio de Janeiro, 09/03/2010 – p. 24/2
FIM
OBRIGADO.

PSR, Rio de Janeiro, 09/03/2010 – p. 25/2

Mais conteúdo relacionado

Mais procurados

Md 4 sequenciae_inducaomatematica
Md 4 sequenciae_inducaomatematicaMd 4 sequenciae_inducaomatematica
Md 4 sequenciae_inducaomatematicaMauricio Wieler
 
[Robson] 6. Otimização de Grande Porte
[Robson] 6. Otimização de Grande Porte[Robson] 6. Otimização de Grande Porte
[Robson] 6. Otimização de Grande Portelapodcc
 
4 alternativas-para-resolver-a-equacao-de-schrodinger
4 alternativas-para-resolver-a-equacao-de-schrodinger4 alternativas-para-resolver-a-equacao-de-schrodinger
4 alternativas-para-resolver-a-equacao-de-schrodingerMarcelo de Souza
 
Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...
Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...
Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...Adriano Silva
 
[Alexandre] 8. Não Linear Restrita
[Alexandre] 8. Não Linear Restrita[Alexandre] 8. Não Linear Restrita
[Alexandre] 8. Não Linear Restritalapodcc
 
[Alexandre] 2. Geometria
[Alexandre] 2. Geometria[Alexandre] 2. Geometria
[Alexandre] 2. Geometrialapodcc
 
Aula 5: Operador momento e energia e o princípio da incerteza
Aula 5: Operador momento e energia e o princípio da incertezaAula 5: Operador momento e energia e o princípio da incerteza
Aula 5: Operador momento e energia e o princípio da incertezaAdriano Silva
 
[Robson] 7. Programação Não Linear Irrestrita
[Robson] 7. Programação Não Linear Irrestrita[Robson] 7. Programação Não Linear Irrestrita
[Robson] 7. Programação Não Linear Irrestritalapodcc
 
Exercícios resolvidos matematica 01
Exercícios resolvidos matematica 01Exercícios resolvidos matematica 01
Exercícios resolvidos matematica 01resolvidos
 
[Robson] 1. Programação Linear
[Robson] 1. Programação Linear[Robson] 1. Programação Linear
[Robson] 1. Programação Linearlapodcc
 
03 eac proj vest mat módulo 1 função exponencial
03 eac proj vest mat módulo 1 função exponencial03 eac proj vest mat módulo 1 função exponencial
03 eac proj vest mat módulo 1 função exponencialcon_seguir
 
Editdocument15107902255388
Editdocument15107902255388Editdocument15107902255388
Editdocument15107902255388Assis Nunes
 
Análise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise AssintóticaAnálise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise AssintóticaDelacyr Ferreira
 
A função exponencial & trigonometria e aplicações
A função exponencial & trigonometria e aplicaçõesA função exponencial & trigonometria e aplicações
A função exponencial & trigonometria e aplicaçõesDinho Paulo Clakly
 

Mais procurados (20)

Md 4 sequenciae_inducaomatematica
Md 4 sequenciae_inducaomatematicaMd 4 sequenciae_inducaomatematica
Md 4 sequenciae_inducaomatematica
 
Ex algebra (14)
Ex algebra  (14)Ex algebra  (14)
Ex algebra (14)
 
[Robson] 6. Otimização de Grande Porte
[Robson] 6. Otimização de Grande Porte[Robson] 6. Otimização de Grande Porte
[Robson] 6. Otimização de Grande Porte
 
4 alternativas-para-resolver-a-equacao-de-schrodinger
4 alternativas-para-resolver-a-equacao-de-schrodinger4 alternativas-para-resolver-a-equacao-de-schrodinger
4 alternativas-para-resolver-a-equacao-de-schrodinger
 
Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...
Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...
Aula 18: Separação da equação de Schrödinger em coordenadas cartesianas. 2 Pa...
 
[Alexandre] 8. Não Linear Restrita
[Alexandre] 8. Não Linear Restrita[Alexandre] 8. Não Linear Restrita
[Alexandre] 8. Não Linear Restrita
 
[Alexandre] 2. Geometria
[Alexandre] 2. Geometria[Alexandre] 2. Geometria
[Alexandre] 2. Geometria
 
Aula 5: Operador momento e energia e o princípio da incerteza
Aula 5: Operador momento e energia e o princípio da incertezaAula 5: Operador momento e energia e o princípio da incerteza
Aula 5: Operador momento e energia e o princípio da incerteza
 
[Robson] 7. Programação Não Linear Irrestrita
[Robson] 7. Programação Não Linear Irrestrita[Robson] 7. Programação Não Linear Irrestrita
[Robson] 7. Programação Não Linear Irrestrita
 
Exercícios resolvidos matematica 01
Exercícios resolvidos matematica 01Exercícios resolvidos matematica 01
Exercícios resolvidos matematica 01
 
[Robson] 1. Programação Linear
[Robson] 1. Programação Linear[Robson] 1. Programação Linear
[Robson] 1. Programação Linear
 
Apostila de matemática cursinho
Apostila de matemática   cursinhoApostila de matemática   cursinho
Apostila de matemática cursinho
 
Algebra
AlgebraAlgebra
Algebra
 
03 eac proj vest mat módulo 1 função exponencial
03 eac proj vest mat módulo 1 função exponencial03 eac proj vest mat módulo 1 função exponencial
03 eac proj vest mat módulo 1 função exponencial
 
Ap matemática m2
Ap matemática m2Ap matemática m2
Ap matemática m2
 
Tarefa7
Tarefa7Tarefa7
Tarefa7
 
Editdocument15107902255388
Editdocument15107902255388Editdocument15107902255388
Editdocument15107902255388
 
Análise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise AssintóticaAnálise de Algoritmos - Análise Assintótica
Análise de Algoritmos - Análise Assintótica
 
Apostila 3 funções
Apostila 3 funçõesApostila 3 funções
Apostila 3 funções
 
A função exponencial & trigonometria e aplicações
A função exponencial & trigonometria e aplicaçõesA função exponencial & trigonometria e aplicações
A função exponencial & trigonometria e aplicações
 

Semelhante a Geração de colunas em programação inteira

Atividades - Matemática discreta
Atividades - Matemática discretaAtividades - Matemática discreta
Atividades - Matemática discretaluiz10filho
 
Aula 21: Exercícios
Aula 21: ExercíciosAula 21: Exercícios
Aula 21: ExercíciosAdriano Silva
 
todas-as-formulas-de-matematica
 todas-as-formulas-de-matematica todas-as-formulas-de-matematica
todas-as-formulas-de-matematicaHudson Sousa
 
Propostas de provas-modelo.pdf
Propostas de provas-modelo.pdfPropostas de provas-modelo.pdf
Propostas de provas-modelo.pdfmadamastor
 
Matemática - Módulo 02
Matemática - Módulo 02Matemática - Módulo 02
Matemática - Módulo 02Everton Moraes
 
Equação de Laplace em Coordenadas Polares.pdf
Equação de Laplace em Coordenadas Polares.pdfEquação de Laplace em Coordenadas Polares.pdf
Equação de Laplace em Coordenadas Polares.pdfmikaelg3
 
ResoluExame, Matemática A, 2011_2011
ResoluExame, Matemática A, 2011_2011ResoluExame, Matemática A, 2011_2011
ResoluExame, Matemática A, 2011_2011David Azevedo
 
Revisão de polinômios
Revisão de polinômiosRevisão de polinômios
Revisão de polinômiosmatheuslw
 
Funções - Exercícios
Funções - ExercíciosFunções - Exercícios
Funções - ExercíciosEverton Moraes
 
Cesgranrio petrobras engenheiro petroleo 2018
Cesgranrio petrobras engenheiro petroleo 2018Cesgranrio petrobras engenheiro petroleo 2018
Cesgranrio petrobras engenheiro petroleo 2018Arthur Lima
 
secao26_2011_2.pdf
secao26_2011_2.pdfsecao26_2011_2.pdf
secao26_2011_2.pdfmikaelg3
 
Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...
Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...
Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...Izabela Marques
 

Semelhante a Geração de colunas em programação inteira (20)

Atividades - Matemática discreta
Atividades - Matemática discretaAtividades - Matemática discreta
Atividades - Matemática discreta
 
Aula 21: Exercícios
Aula 21: ExercíciosAula 21: Exercícios
Aula 21: Exercícios
 
todas-as-formulas-de-matematica
 todas-as-formulas-de-matematica todas-as-formulas-de-matematica
todas-as-formulas-de-matematica
 
Ita02m
Ita02mIta02m
Ita02m
 
Apostila3
Apostila3Apostila3
Apostila3
 
Propostas de provas-modelo.pdf
Propostas de provas-modelo.pdfPropostas de provas-modelo.pdf
Propostas de provas-modelo.pdf
 
Matemática - Módulo 02
Matemática - Módulo 02Matemática - Módulo 02
Matemática - Módulo 02
 
Equação de Laplace em Coordenadas Polares.pdf
Equação de Laplace em Coordenadas Polares.pdfEquação de Laplace em Coordenadas Polares.pdf
Equação de Laplace em Coordenadas Polares.pdf
 
ResoluExame, Matemática A, 2011_2011
ResoluExame, Matemática A, 2011_2011ResoluExame, Matemática A, 2011_2011
ResoluExame, Matemática A, 2011_2011
 
1derivada (1).pdf
1derivada (1).pdf1derivada (1).pdf
1derivada (1).pdf
 
Mat logaritmos 005
Mat logaritmos  005Mat logaritmos  005
Mat logaritmos 005
 
Revisão de polinômios
Revisão de polinômiosRevisão de polinômios
Revisão de polinômios
 
Exercícios carnaval 2013
Exercícios carnaval 2013Exercícios carnaval 2013
Exercícios carnaval 2013
 
Funções - Exercícios
Funções - ExercíciosFunções - Exercícios
Funções - Exercícios
 
387 matemática ime 2010
387 matemática ime 2010387 matemática ime 2010
387 matemática ime 2010
 
Cesgranrio petrobras engenheiro petroleo 2018
Cesgranrio petrobras engenheiro petroleo 2018Cesgranrio petrobras engenheiro petroleo 2018
Cesgranrio petrobras engenheiro petroleo 2018
 
secao26_2011_2.pdf
secao26_2011_2.pdfsecao26_2011_2.pdf
secao26_2011_2.pdf
 
Polinomios
PolinomiosPolinomios
Polinomios
 
Polinomios
PolinomiosPolinomios
Polinomios
 
Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...
Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...
Slides da aula sobre Coordenadas Polares e Integrais Duplas em Coordenadas Po...
 

Último

Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxLuizHenriquedeAlmeid6
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividadeMary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)ElliotFerreira
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números Mary Alvarenga
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇJaineCarolaineLima
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxTainTorres4
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOAulasgravadas3
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....LuizHenriquedeAlmeid6
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
INTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorINTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorEdvanirCosta
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfWagnerCamposCEA
 

Último (20)

Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptxSlides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
Slides Lição 04, Central Gospel, O Tribunal De Cristo, 1Tr24.pptx
 
Música Meu Abrigo - Texto e atividade
Música   Meu   Abrigo  -   Texto e atividadeMúsica   Meu   Abrigo  -   Texto e atividade
Música Meu Abrigo - Texto e atividade
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Bullying, sai pra lá
Bullying,  sai pra láBullying,  sai pra lá
Bullying, sai pra lá
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)Análise poema país de abril (Mauel alegre)
Análise poema país de abril (Mauel alegre)
 
CRUZADINHA - Leitura e escrita dos números
CRUZADINHA   -   Leitura e escrita dos números CRUZADINHA   -   Leitura e escrita dos números
CRUZADINHA - Leitura e escrita dos números
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
 
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptxJOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
JOGO FATO OU FAKE - ATIVIDADE LUDICA(1).pptx
 
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃOFASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
FASE 1 MÉTODO LUMA E PONTO. TUDO SOBRE REDAÇÃO
 
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
Slides Lição 5, Betel, Ordenança para uma vida de vigilância e oração, 2Tr24....
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
INTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de ProfessorINTERVENÇÃO PARÁ - Formação de Professor
INTERVENÇÃO PARÁ - Formação de Professor
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdfReta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
Reta Final - CNU - Gestão Governamental - Prof. Stefan Fantini.pdf
 

Geração de colunas em programação inteira

  • 1. Geração de Colunas em Programação Inteira Nelson Maculan1 1 Universidade Federal do Rio de Janeiro PSR, Rio de Janeiro, 09/03/2010 – p. 1/2
  • 2. Definições 1 Dados uma matriz A ∈ Qm×n e vetores b ∈ Qm e c ∈ Rn , com 0 < m ≤ n, consideremos o seguinte problema de programação linear inteira: (P I) minimizar sujeito a: cT x Ax = b x≥0 e inteiro, cujo conjunto viável é n SP I = {x ∈ Z+ ; Ax = b}. PSR, Rio de Janeiro, 09/03/2010 – p. 2/2
  • 3. Definições 2 Consideremos, também, a relaxação linear do problema (P I), a saber: (P L) minimizar sujeito a: cT x Ax = b x ≥ 0, cujo conjunto viável é n SP L = {x ∈ R+ ; Ax = b}. Observação: Seja x ∈ SP I . Definimos val(H) = cT x, temos que ¯ ¯ val(P L) ≤ val(P I) ≤ val(H). PSR, Rio de Janeiro, 09/03/2010 – p. 3/2
  • 4. (PL) especial 1 (P L) minimizar cj x j j∈J sujeito a : aj xj = b j∈J xj ≥ 0, para todo j ∈ J, onde b ≥ 0 ∈ Qm , aj ∈ Qm e cj ∈ R, para cada j ∈ J . Suponhamos que aj ∈ K = {a1 , a2 , ..., ap } e que exista uma função f : K → R tal que cj = f (aj ), para cada j ∈ J . Resolver o problema (P L) poderá não ser uma tarefa fácil, quando houver um número excessivamente grande de variáveis. PSR, Rio de Janeiro, 09/03/2010 – p. 4/2
  • 5. (PL) especial 2 Reconsideramos o (P L). Seja J ′ ⊆ J um subconjunto de índices. Definamos um subproblema (mestre restrito) de (P L), a saber: (P L′ ) minimizar cj x j j∈J ′ sujeito a : aj xj = b j∈J ′ xj ≥ 0, para todo j ∈ J ′ . PSR, Rio de Janeiro, 09/03/2010 – p. 5/2
  • 6. (PL) especial 3 A partir de uma base associada a uma solução viável para o problema (P L′ ), logo básica viável também de (P L), temos que verificar se essa solução é ótima. Para isso buscamos uma nova coluna associada a um custo reduzido negativo. Caso não exista tal coluna essa solução básica viável será ótima de (P L). Seja B = (aB(1) aB(2) ... aB(m) ) , tal que det(B) = 0, uma base associada a uma solução viável xT = (xT xT ) ∈ Q1×n , onde xB = B −1 b ≥ 0 e xN = 0. B N Seja uT = (cB(1) cB(2) ... cB(m) )B −1 , o vetor dos multiplicadores do simplex (duais). O custo reduzido será definido por: cj = cj − uT aj , no nosso ¯ caso, cj = f (aj ) para cada j ∈ J , logo cj = f (aj ) − uT aj . ¯ PSR, Rio de Janeiro, 09/03/2010 – p. 6/2
  • 7. Resolução do (PL) especial Para a busca de uma coluna associada a um custo relativo negativo, resolveremos o seguinte problema auxiliar de otimização combinatória: (SP ) minimizarf (aj ) − uT aj sujeito a: aj ∈ K. Seja val(SP ) = f (aq ) − uT aq . Se val(SP ) ≥ 0 a solução básica viável em questão é um ótimo de (P L). Caso contrário, a coluna aq entrará na nova base (método do simplex revisado). PSR, Rio de Janeiro, 09/03/2010 – p. 7/2
  • 8. (PI) especial 1 (P I) minimizar cj x j j∈J sujeito a : aj xj = b j∈J xj ∈ Z+ , para todo j ∈ J, onde b ≥ 0 ∈ Z m , aj ∈ Z m e cj ∈ R, para cada j ∈ J . Suponhamos que aj ∈ K = {a1 , a2 , ..., ap } e que exista uma função f : K → R tal que cj = f (aj ), para cada j ∈ J . m Exemplo de K = { y = (y1 y2 ... ym )T ∈ Z+ | m lk yk ≤ L}, k=1 onde, são conhecidos lk , L tais que lk ∈ Z++ , lk ≤ L ∈ Z++ , k = 1, 2, ..., m. K é conhecido como conjunto mochila e cj = f (aj ) = 1, j ∈ J. PSR, Rio de Janeiro, 09/03/2010 – p. 8/2
  • 9. (PI) especial 2 Ao solucionarmos a relaxação linear de (P I), denominada (P L), encontraremos a solução no problema: (P L′ ) minimizar cj x j j∈J ′ sujeito a : aj xj = b j∈J ′ x j ∈ R+ , para todo j ∈ J ′ ⊆ J, foram geradas |J ′ | colunas até obtermos a solução ótima de (P L). PSR, Rio de Janeiro, 09/03/2010 – p. 9/2
  • 10. (PI) especial 3 Consideremos o problema de programação linear inteira abaixo: (P I ′ ) minimizar cj x j j∈J ′ sujeito a : aj xj = b j∈J ′ xj ∈ Z+ , para todo j ∈ J ′ ⊆ J, logo val(P L) ≤ val(P I) ≤ val(P I ′ ). Assim sendo val(P I ′ ) pode ser uma boa cota superior para val(P I) associada a uma solução viável para (P I). PSR, Rio de Janeiro, 09/03/2010 – p. 10/2
  • 11. a (PI) especial: exemplo 1 parte Gilmore & Gomory (1961, 1963), corte de barras em uma dimensão: (CB1) minimizar xj j∈J sujeito a : aj xj ≥ b j∈J xj ∈ Z+ , para todo j ∈ J, m m onde cj = 1, j ∈ J, b ∈ Z+ , aj = (a1j a2j ... amj )T ∈ Z+ tal que m aj ∈ K = { α = (α1 α2 ... αm )T ∈ Z+ | m lk αk ≤ L}, j ∈ J. k=1 Os lk ∈ Z, k = 1, 2, ..., m, e L ∈ Z são dados tais que lk ≤ L, k = 1, 2, ..., m. Observação |K| = |J|. PSR, Rio de Janeiro, 09/03/2010 – p. 11/2
  • 12. a (PI) especial: exemplo 2 parte Seja a relaxação linear de (CB1) : (LP CB1) minimizar xj j∈J sujeito a : aj xj − s = b j∈J x j ∈ R+ , para todo j ∈ J, s = (s1 s2 ... sm )T ≥ 0, onde s é o vetor das variáveis de folga. A matriz B = (a1 a2 ... am ), para aj = ej , j = 1, 2, ..., m está associada a uma solução básica viável de (LP CB1). PSR, Rio de Janeiro, 09/03/2010 – p. 12/2
  • 13. a (PI) especial: exemplo 3 parte Como verificar se B está associada a uma solução ótima de (LP CB1)? O vetor u = (1 1 ... 1 0 0 ... 0)B −1 dos multiplicadores do simplex (solução dual se B for uma base ótima) será sempre ≥ 0. Por quê? Teremos que resolver o subproblema ("pricing") seguinte: (SP ) minimizar 1 − uT aj sujeito a: aj ∈ K. Ou ainda: val(SP ) = 1 − max{uT a | a ∈ K}. PSR, Rio de Janeiro, 09/03/2010 – p. 13/2
  • 14. a (PI) especial: exemplo 4 parte O problema (KP ) : max{uT a | a ∈ K} é conhecido como o problema da mochila, para o qual existem bons algoritmos na prática (Martello & Toth, 1990). Se val(SP ) = 1 − uT a < 0, a coluna a entrará na nova base. ¯ ¯ Caso contrário a solução associada à matriz básica B fornecerá um ótimo para (LP CB1). CONJETURA: val(CB1) ∈ { ⌈val(LP CB1)⌉, ⌈val(LP CB1)⌉ + 1}. PSR, Rio de Janeiro, 09/03/2010 – p. 14/2
  • 15. Branch-and-price para (PI) 1 Vamos supor que val(P L′ ) = j∈J ′ cj xj = val(P L), possui ¯ k ∈ J ′ , tal que xk ∈ Z. Isto é, a solução x não é uma ¯ / ¯ solução viável de (P I). Podemos pensar no processo clássico de ramificação (branch) em árvore binária visando à busca da solução de (P I). Do problema (P L′ ) sairão dois subproblemas: (P rob1) := (P L′ ) ∩ { xk ≤ ⌊¯k ⌋ }, x (P rob2) := (P L′ ) ∩ { xk ≥ ⌊¯k ⌋ + 1 }. x Fazemos a reotimização de (P rob1) e (P rob2) (utilizando apenas as colunas geradas em J ′ ). Método dual do simplex com variáveis canalizadas (Maculan & Fampa, 2006). PSR, Rio de Janeiro, 09/03/2010 – p. 15/2
  • 16. Branch-and-price para (PI) 2 Supondo que (P rob1) e (P rob2) não sejam vazios, teremos que xk = ⌊¯k ⌋ em (P rob1) e xk = ⌊¯k ⌋ + 1 em (P rob2). x x Verificaremos se a solução ótima de (P rob1) é também ótima de (P L) ∩ { xk ≤ ⌊¯k ⌋ }, e de (P rob2) para x (P L) ∩ { xk ≥ ⌊¯k ⌋ + 1 }. x Para resolvermos (P L) ∩ { xk ≤ ⌊¯k ⌋ }, teremos que x considerar a partir da solução de (P rob1) o subproblema seguinte: (SP ) minimizarf (aj ) − uT aj sujeito a: aj ∈ K − {ak }. PSR, Rio de Janeiro, 09/03/2010 – p. 16/2
  • 17. Dantzig-Wolfe em PLI 1 (P LI) minimizar cT x sujeito a: Ax = b Dx ≤ d n x ∈ Z+ , onde as matrizes A ∈ Qm1 ×n e D ∈ Qm2 ×n , e os vetores b ∈ Qm1 , d ∈ Qm2 e c ∈ Qn são dados. Além disso n suponhamos que o conjunto X = {x ∈ Z+ | Dx ≤ d} seja n limitado. X = {ˆ1 , x2 , ..., xp } = {x ∈ Z+ | Dx ≤ d} = x ˆ ˆ p n {x ∈ R+ | x = p λj xj , ˆ λj = 1, λ ∈ {0, 1}p }. j=1 j=1 n n Quando em (P LI) substituirmos x ∈ Z+ por x ∈ R+ , denominaremos essa relaxação linear de (RLP LI). PSR, Rio de Janeiro, 09/03/2010 – p. 17/2
  • 18. Dantzig-Wolfe em PLI 2 Utilizando as notações seguintes: T j cj = c x , aj = ˆ ˆ ˆ Aˆj x 1 ∈R b e ˆ= m b 1 ∈ Rm , onde m = m1 + 1 e j ∈ J = {1, 2, ..., p}. Poderemos reescrever (P LI) como se segue: (P LI) minimizar cj λ j ˆ j∈J aj λj = ˆ ˆ b sujeito a : j∈J λj ∈ {0, 1}, para j ∈ J. PSR, Rio de Janeiro, 09/03/2010 – p. 18/2
  • 19. Relaxação linear de (PLI) (RP LI) minimizar cj λ j ˆ j∈J aj λj = ˆ ˆ b sujeito a : j∈J λj ∈ [0, 1], para j ∈ J. ˆ Seja B ∈ Rm×m uma base viável de (RP LI) e uT = cB B −1 . ˆˆ ˆ É fácil verificar que val(RLP LI) ≤ val(RP LI). PSR, Rio de Janeiro, 09/03/2010 – p. 19/2
  • 20. Resolução de (RPLI) ˆ Para verificarmos se B é uma base ótima de (RP LI), teremos que calcular: val(SP ) = minj=1,2,...,p {ˆj −uT aj } = minj=1,2,...,p {cT xj −uT aj }. c ˆ ˆ ˆ Sabemos que aj = ˆ Aˆj x 1 , e seja u = (u1 u2 ... um1 u0 )T = (¯ u0 )T Então u val(SP ) = minj=1,2,...,p {(cT − uT A)ˆj − u0 }. Ou ainda ¯ x val(SP ) = min{(cT − uT A)x − u0 |x ∈ X }, onde ¯ n X = {x ∈ Z+ | Dx ≤ d}. Se val(SP ) = (cT − uT A)¯ − u0 ¯ x < 0, a coluna A¯ x 1 , entrará na nova base associada ao custo cT x. ¯ ¯ Caso contrário B é uma base ótima de (RP LI). PSR, Rio de Janeiro, 09/03/2010 – p. 20/2
  • 21. Ramificação: particionamento 1 Consideremos um caso mais particular, em que o problema mestre é dado pelo seguinte problema de particionamento: (P P ) minimizar cj λ j j∈J sujeito a : aj λj = 1 j∈J λj ∈ {0, 1}, para todo j ∈ J. onde J = {1, 2, ..., p}, aj ∈ K = {a1 , a2 , ..., ap } ∈ {0, 1}m , um conjunto finito, e uma função f : K → tal que cj = f (aj ) são dados. Denotemos por (P P ) a relaxação linear do problema de particionamento (P P ). PSR, Rio de Janeiro, 09/03/2010 – p. 21/2
  • 22. Ramificação: particionamento 2 Quando a solução ótima do problema mestre linear (P P ) associado a determinado nó da árvore de branch-and-bound não for inteira, na estratégia de branching convencional, deveremos escolher alguma variável com valor fracionário, digamos λk ∈ {0, 1}, para procedermos a ramificação. Os novos problemas lineares serão obtidos a partir da imposição das restrições λk = 1, no 1-branch (Ryan e Foster, 1981), e λk = 0, no 0-branch. PROPRIEDADE (Ryan e Foster, 1981): Se λ for uma solução fracionária do problema (P P ), então existirá ao menos um par de linhas, digamos r e s, da matriz de restrições A, tal que 0 < λq < 1. q: arq =asq =1 PSR, Rio de Janeiro, 09/03/2010 – p. 22/2
  • 23. Ramificação: particionamento 3 Assim, após identificarmos as linhas r e s nas condições dadas pela propriedade de Ryan e Foster (1981), poderemos descartar a solução fracionária corrente através de uma estratégia de separação válida fornecida pela adição das seguintes restrições de branching: λq = 1 (1) q: arq =asq =1 para um dos nós filhos (o da esquerda, por exemplo), no 1-branch, e λq = 0 (2) q: arq =asq =1 para o outro nó (o da direita), no 0-branch. PSR, Rio de Janeiro, 09/03/2010 – p. 23/2
  • 24. Ramificação: particionamento 4 A restrição do 1-branch faz com que as linhas r e s sejam cobertas pela mesma coluna e a do 0-branch necessariamente por colunas distintas. Em geral, essa estratégia de branching é compatível com os algoritmos de geração de colunas. Ao procedermos com o 0-branch, devemos eliminar toda coluna q com arq = asq = 1 do problema mestre restrito corrente e proibir que alguma tal coluna seja gerada. Para isto, toda nova coluna gerada deverá satisfazer a restrição arq + asq ≤ 1 . Por outro lado, no 1-branch devemos tomar, exclusivamente, colunas que cobrem as linhas r e s ao mesmo tempo; ou seja, devemos excluir todas as colunas do problema mestre que cobrem apenas uma dessas linhas. Assim, eliminamos todas as colunas com arq = asq no problema mestre restrito corrente e exigimos que todas as novas colunas geradas satisfaçam arq = asq . PSR, Rio de Janeiro, 09/03/2010 – p. 24/2
  • 25. FIM OBRIGADO. PSR, Rio de Janeiro, 09/03/2010 – p. 25/2