Voltamos a considerar o problema do ep mínimo em grafos arbitrários. Uma solução ótima x do programa linear (1) pode não ser o vetor característico de um emparelha- mento perfeito. Precisamos de um pl mais “poderoso”, com restrições que “cortem fora” essas soluções.
EXEMPLO 6: Considere a instância do problema do ep mínimo descrita a seguir. Uma solução ótima do pl (1) não define um ep.
a b c d e f a − 1 1 − − 1 b 1 − 1 − 1 − c 1 1 − 1 − − d − − 1 − 1 1 e − 1 − 1 − 1 f 1 − − 1 1 − ab bc ca de ef f d be cd af c +1 +2 +3 +4 +5 +6 +7 +8 +9
As tabelas a seguir indicam uma solução viável x do pl (1) e uma solução viável y do pl dual (2), bem como o custo reduzido ¯c:
ab bc ca de ef f d be cd af x 0.5 0.5 0.5 0.5 0.5 0.5 0 0 0 ¯ c 0 0 0 0 0 0 5.5 3.5 4.5 y a +1.0 b 0.0 c +2.0 d +2.5 e +1.5 f +3.5
Confira a viabilidade das soluções e as condições de folgas complementares! Verifique também que cx = 10.5 =P yv. Portanto, x e y são soluções ótimas dos respectivos pl’s. Entretanto, é evidente
Dizemos que um corte D num grafo G tem margem ímpar (= is an odd cut) se D = ∂(S) e |S| é ímpar. (Note que a paridade de |D| é irrelevante.) Denotaremos por C o conjunto de todos os cortes de margem ímpar do grafo. Se D ∈ C e x é o vetor característico de um emparelhamento perfeito então
x(D) ≥ 1. (5)
Portanto, podemos acrescentar essas desigualdades ao pl (1). O resultado é o se- guinte pl: minimize cx sob as restrições x(∂(v)) = 1 para cada v em V x(D) ≥ 1 para cada D em C xe ≥ 0 para cada e em E. (6)
As restrições “x(D) ≥ 1” são conhecidas como desigualdades florais (= blossom ine- qualities). O vetor característico x de qualquer ep é solução viável de (1). (Na direção contrária, é preciso exigir que x seja inteiro.)
A ideia de acrescentar restrições lineares a um programa linear para eliminar soluções fracionárias indesejadas é muito efetiva e mostrou-se útil em muitos problemas de otimização combinatória além do problema que estamos estudando.
O dual de (6) tem uma variável yv para cada nó v e uma variável YD para cada D em C
e consiste em encontrar um par (y, Y ) que
maximize P (yv : v ∈ V ) +P (YD : D ∈ C)
sob as restrições
yu+ yv+P(YD : uv ∈ D ∈ C) ≤ cuv para cada uv em E
YD ≥ 0 para cada D em C.
(7)
Dado um par (y, Y ), o custo reduzido de uma aresta uv é o número ¯cuv := cuv − yu−
yv −P(YD : uv ∈ D ∈ C). Portanto, (y, Y ) é viável em (7) se e somente se ¯ce ≥ 0 para
cada e em E e YD ≥ 0 para cada D em C.
As condiçoes de folgas complementares para o par dual de programas lineares são as seguintes:
para cada e em E, xe > 0implica ¯ce= 0,
para cada D em C, YD > 0implica x(D) = 1.
Se x é o vetor característico de um ep M , essas condições podem ser escritas assim: para cada e em E, e ∈ M implica ¯ce = 0,
para cada D em C, YD > 0implica |M ∩ D| = 1.
As desigualdades florais. As desigualdade florais do programa linear (6) podem ser escritas assim:
As restrições que têm |S| = 1 podem ser eliminadas, pois já estão implícitas nas res- trições da forma x(∂(v)) = 1. Além disso, para cada partição (S, S) de V , podemos eliminar a restrição correspondente a um dos dois blocos da partição, uma vez que ∂(S) = ∂(S). Isso pode ser organizado da seguinte maneira. Escolha um nó qualquer r e seja S o conjunto de todos os subconjuntos S de V r {r} tais que |S| é ímpar e |S| ≥ 3. Com isso, as desigualdade florais do pl (6) podem ser escritas assim:
x(∂(S)) ≥ 1 para cada S em S (8)
e o vetor dual Y passa a ser indexado por S.
Feita essa alteração, pode ser interessante submeter o pl a um software de programação linear. Como S é muito grande, o seguinte truque prático pode ser útil: use apenas uma pequena parte S0 de S contendo os conjuntos S mais “promissores”; se isso não
produzir o vetor característico de um ep, acrescente a S0 mais alguns elementos de S que pareçam promissores e repita o processo. O exame do exemplo 6, por exemplo, sugere que o elemento mais promissor de S é {a, b, c}; o exemplo 7 confirma essa suspeita.
EXEMPLO7: Considere novamente a instância do problema do ep mínimo do exemplo 6, desta vez do ponto de vista dos pl’s (6) e (7).
a b c d e f a − 1 1 − − 1 b 1 − 1 − 1 − c 1 1 − 1 − − d − − 1 − 1 1 e − 1 − 1 − 1 f 1 − − 1 1 − ab bc ca de ef f d be cd af c +1 +2 +3 +4 +5 +6 +7 +8 +9
Uma solução viável x do pl (6) e uma solução viável (y, Y ) do pl dual (7) estão indicadas abaixo, juntamente com o custo reduzido ¯c. O vetor dual Y tem uma única componente não nula: YS > 0
apenas quando S = {a, b, c}.
ab bc ca de ef f d be cd af x 1 0 0 0 1 0 0 1 0 ¯ c 0 0 0 +1 0 +2 0 0 0 y a +1 b 0 c +2 d +1 e +2 f +3 Y abc 5
Confira a viabilidade das soluções e a validade das condições de folgas complementares! Verifique também que cx = 14 =P yv+P YS. Portanto, x e (y, Y ) são soluções ótimas dos respectivos pl’s.
Segue daí que M = {ab, cd, ef } é um ep mínimo.
O número de desigualdades florais é muito grande (na ordem do número de subcon- juntos de V (G)). Portanto, o número de componentes do vetor Y também é muito grande. Verifica-se, entretanto, que a maior parte das componentes de Y é nula. Mais precisamente, numa solução ótima (y, Y ) de (7), os conjuntos S para os quais YS > 0
formam uma coleção laminar — cada dois desses conjuntos são disjuntos ou estão incluídos um no outro — e portanto há menos que 2n deles.
Exercícios
8.21 Seja M um ep em um grafo G. Seja D um corte de margem ímpar. Mostre que M ∩ D não é vazio. 8.22 Mostre que o pl (7) é o dual do pl (6). Verifique que as condições de folgas complementares dadas
no texto acima.
8.23 Suponha que G é um grafo com número ímpar de nós (e portanto não tem ep). Mostre que o correspondente pl (6) é inviável e o pl (7) é ilimitado. Repita o exercício supondo que G tem duas componentes conexas, cada uma com número ímpar de nós.
8.24 Mostre que um grafo G tem um ep se e somente se o pl (6) é viável. (Sugestão: Suponha que G não tem ep e mostre que o pl dual (7) é ilimitado.) (Observação: Isso prova a primeira parte do teorema8.3.)[CCPS 5.28]
8.25 Laminaridade. Uma coleção L de subconjuntos de V é laminar se, para cada par (L1, L2) de
elementos da coleção, tem-se L1 ∩ L2 = ∅ou L1 ⊆ L2 ou L1 ⊇ L2. Mostre que |L| ≤ 2|V |.
8.26 Escreva explicitamente as desigualdades florais do exemplo 7.
8.27 Encontre um ep mínimo no grafo da figura. Encontre também uma solução ótima do pl (7). (Dica: Tire as desigualdades florais de (7) e use um software de programação linear para resolver o pl. Examine o subgrafo induzido pelas arestas e que têm 0 < xe < 1. Isso sugere as desigualdes
florais mais promissoras. Acrescente essas desigualdes ao pl e resolva-o novamente. Repita o processo.)[CCPS 5.27]
8.28 Considere o pl (7) com a alteração decorrente de (8). Suponha que (y, Y ) é uma solução viável do pl. Para cada S em S e cada v ∈ S, faça yv ← yv+ YS; depois, para cada S, faça YS ← 0. Essa
operação preserva viabilidade de (y, Y )?