Professional Documents
Culture Documents
3 Wolsey
Agosto 2008
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Problemas bem resolvidos, algoritmos eficientes
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
A perspectiva mais otimista
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
A perspectiva mais otimista
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Propriedades satisfeitas por problemas bem resolvidos
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Propriedade de otimização Eficiente
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Existência de um problema dual associado, formando um
par primal-dual forte
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Propriedade da separação eficiente
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Existência de uma descrição compacta para conv (X )
Atenção
Não significa que toda descrição linear de conv (X ) é compacta!
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
E se a descrição de conv (X ) não for compacta ?
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Primeira questão fundamental:
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Matrizes unimodulares
Definição
Uma matriz A ∈ Zm×n , n ≥ m de posto completo m é dita
unimodular se somente se para qualquer submatriz quadrada de A
ou base B de A (uma submatriz m × m não singular de A) possui
determinante igual a +1 ou −1.
Teorema
Seja A uma matriz inteira de posto completo. Então as seguintes
afirmativas são equivalentes:
1 A é unimodular;
2 Qualquer solução básica para Ax = b é inteira para qualquer
b inteiro;
3 Toda base B de A admite inversa inteira B −1 .
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Idéia central da prova (1) → (2) → (3) → (1)
Prova
(1) → (2)
Considere uma solução básica xB e sua base associada B, tal
que BxB = b.
Pela regra de Cramer temos:
det(Adj(B, j))
xj = , ∀j = 1, . . . , n,
det(B)
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 2: (2) → (3)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 2: (2) → (3)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 2: (2) → (3)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 2: (2) → (3)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 2: (2) → (3)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 3: (3) → (1)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 3: (3) → (1)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 3: (3) → (1)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova - parte 3: (3) → (1)
Prova
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Matrizes totalmente unimodulares (TU)
Definição
Uma matriz A é totalmente unimodular se toda submatriz B de
(quadrada de qualquer ordem) de A é tal que
det(B) ∈ {0, +1, −1}.
Observação
As matrizes TU são um caso particular das matrizes unimodulares.
Toda matriz TU de posto completo é também unimodular uma vez
que toda base B de A deve ter determinante igual a ∓1.
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Identificando uma matriz TU
Observação
Se A é TU então aij ∈ {0, 1, −1}, ∀i , j
Teorema
A matriz A é TU se e somente se:
1 A transposta AT de A é TU, e, se somente se
2 A matriz A expandida pela indentidade I (de ordem m): (A, I )
é TU.
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Uma condição suficiente para A ser TU
Teorema
A matriz A é TU se:
1 aij ∈ {0, 1, −1}, ∀i , j
2 Toda coluna P de A possui no máximo dois elementos distintos
m
de 0, isto é: i =1 |aij | ≤ 2
3 Existe uma partição (M1 , M2 ) da conjunto de linhas M de A
(M1 ∩ M2 = ∅, M1 ∪ M2 = M) tal que toda coluna j contendo
exatos
P 2 elementos
P não nulos satisfaz
a
i ∈M1 ij − i ∈M2 aij = 0.
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova desta condição suficiente
Prova
Idéia da prova: contradição. Vamos assumir então que A não é
TU, mas satisfaz as condições descritas no Teorema.
Se A não é TU então existe uma submatriz quadrada de A
que possui determinante diferente de ∓1, 0. Seja B a menor
destas submatrizes. B não pode conter uma coluna de zeros
(já que det(B) 6= 0) nem uma linha contendo apenas uma
entrada não nula, caso contrário B não seria minimal
(det(B) = det(B), onde B é uma submatriz de B). Logo
toda coluna de B possui exatamente duas entradas não nulas.
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova desta condição suficiente
Prova
Idéia da prova: contradição. Vamos assumir então que A não é
TU, mas satisfaz as condições descritas no Teorema.
Se A não é TU então existe uma submatriz quadrada de A
que possui determinante diferente de ∓1, 0. Seja B a menor
destas submatrizes. B não pode conter uma coluna de zeros
(já que det(B) 6= 0) nem uma linha contendo apenas uma
entrada não nula, caso contrário B não seria minimal
(det(B) = det(B), onde B é uma submatriz de B). Logo
toda coluna de B possui exatamente duas entradas não nulas.
Seja MB o conjunto de ı́ndice das linhas de A que estão em
B.
P Pela terceira P condição do Teorema:
i ∈M1 ∩MB aij − i ∈M2 ∩MB aij = 0. Logo, B possui linhas
linearmente dependentes e det(B) = 0 (contradição).
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Resumindo
Teorema
O Programa Linear max cx : Ax ≤ b, x ∈ Rn+ possui uma solução
básica ótima inteira para todo b ∈ Zm (para o qual assume um
valor finito) se e somente se A é TU.
Observação
Mostramos que para o (IP) max {cx : Ax ≤ b, x ∈ Zn+ } onde A é
TU:
O Programa linear (D) min {ub : uA ≥ c, u ≥ 0} e (IP)
formam um par primal-dual forte;
A envoltória convexa do conjunto de soluções de IP é
conhecida: conv (X ) = {Ax ≤ b, x ∈ Rn+ };
A propriedade de separação eficiente em conv (X ) é verificada.
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Matrizes de fluxo
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
PFCM - Modelo de Programação Matemática
X
min cij xij (1)
(i ,j)∈A
X X
xik − xki = bi , ∀i ∈ V , (2)
k∈V + (i ) k∈V − (i )
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Este problema é bem resolvido
Teorema
A matriz de coeficientes A associada às restrições (2)-(3) é TU.
x12 x14 x23 x31 x32 x35 x36 x45 x51 x53 x65
1 1 0 −1 0 0 0 0 −1 0 0
−1 0 1 0 −1 0 0 0 0 0 0
0 0 −1 1 1 1 1 0 0 −1 0
0 −1 0 0 0 0 0 1 0 0 0
0 0 0 0 0 −1 0 −1 1 1 −1
0 0 0 0 0 0 −1 0 0 0 1
A=
1 0 ... ... 0
0 1 0 ... ... 0
..
0 0 .
..
0
0 0 0 0 0 0 0 . 0 0
0 0 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 0 0 0 0 1
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Prova
A matriz A é da forma [C T Im ]T . Pelo Teorema visto, C é TU se e
somente se C T é TU e se e somente se [C , Im ] for TU. Portanto,
basta provar que C é TU.
Observe que C satisfaz às condições suficientes apontadas no
Teorema anterior:
cij ∈ {0, +1, −1}
Pm
i =1 |cij | ≤ 2, ∀j = 1, . . . , m
Todas as colunas possuem exatos dois elementos não nulos.
1 = M e M2 = ∅ e verifique que
Então faça MP
P
i ∈M1 cij − i ∈M2 cij = 0, ∀j = 1, . . . , m.
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Se as demandas {bi } e as capacidades {hij } forem
inteiras....
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
Problemas de fluxo de custo mı́nimo particulares
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
O problema do caminho mais curto
Dados de entrada: D = (V , A), vértice de origem s e destino
t, custo de percorrer os arcos {cij : (i , j) ∈ A}.
Pode ser visto como o problema de enviar uma unidade de
fluxo de s a t, isto é bi = 0, i 6∈ {s, t}, bs = 1,bt = −1.
X
min cij xij (4)
(i ,j)∈A
X X
xik − xki = 1, i = s, (5)
k∈V + (i ) k∈V − (i )
X X
xik − xki = 0, i ∈ V \ {s, t}, (6)
k∈V + (i ) k∈V − (i )
X X
xik − xki = −1, i = t, (7)
k∈V + (i ) k∈V − (i )
xij ≥ 0, ∀(i , j) ∈ A
x ∈ Z|A|
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey
O problema do fluxo máximo entre s e t
Alexandre Salles da Cunha e Geraldo Robson Mateus Problemas bem resolvidos - Cap. 3 Wolsey