You are on page 1of 39

OTIMIZAC¸

˜
AO LINEAR
MOIS
´
ES DUARTE FILHO
UNIVERSIDADE ESTADUAL DO NORTE FLUMINENSE - UENF
CAMPOS DOS GOYTACAZES, RJ
31 DE JULHO - 2012
“Trabalho relativo `a disciplina
OTIMIZAC¸
˜
AO LINEAR – 2012 –
Programa de P´os-Gradua¸ c˜ao em Enge-
nharia de Produ¸c˜ao – Centro de Ciˆencia
e Tecnologia – Universidade Estadual do
Norte Fluminense – UENF”.
CAMPOS DOS GOYTACAZES - RJ
31 DE JULHO - 2012
ii
RESUMO
De acordo com o artigo de CHEN et. al (2010), com o avan¸co em pesquisas e
desenvolvimentos do branch-and-bound (B-B), plano de corte (cutting plane) e grupo de
abordagens te´oricas nos anos 60, avan¸cos em m´etodos para a resolu¸ c˜ao de problemas de
grande escala de IP (problemas inteiros) ou MIP (problemas inteiros misturados) ficaram
muito limitados por duas d´ecadas. Ent˜ao, aproximadamente 20 anos depois, um romance
abordagem de solu¸c˜ao conhecida como branch-and-cut (B-C) foi introduzida em meados
dos anos 80, que marcou o avan¸ co no poder de solu¸ c˜ao dos algoritmos para MIP. Esta
abordagem e suas varia¸ c˜oes, juntamente com os avan¸ cos em t´ecnicas de modelagem,
pr´e-processamento t´ecnicas, software, LP, e hardware de computador, fazer a solu¸ c˜ao de
grande escala de problemas MIP poss´ıveis.
Segundo OLIVEIRA (2003), problemas de otimiza¸ c˜ao combinat´oria podem ser defini-
dos, de forma geral, da seguinte maneira: dado um conjunto S finito e uma fun¸ c˜ao custo
definida sobre este conjunto, encontrar um elemento de S que maximiza/minimiza esta
fun¸ c˜ao. Um exemplo de problema de otimiza¸ c˜ao combinat´oria ´e o problema da ´arvore ge-
radora m´ınima, em que nos ´e dado um grafo conexo G com custos nas arestas e pede-se
uma ´arvore geradora de G que tenha custo m´ınimo.
A id´eia b´asica presente nos m´etodos Branch-and-Cut ´e para ter simplicidade. No
trabalho de MARTINHON (2005), ”classes de desigualdades v´alidas associadas a uma
formula¸ c˜ao do problema original s˜ao desprezadas na relaxa¸ c˜ao linear. O grande n´umero
de restri¸ c˜oes impede que o problema seja tratado convenientemente utilizando-se apenas
ferramentas de programa¸ c˜ao linear. Dessa forma, se uma solu¸ c˜ao ´otima associada `a re-
laxa¸ c˜ao linear ´e invi´avel, um novo problema de separa¸ c˜ao deve ser ’resolvido’ buscando
a identifica¸ c˜ao de uma ou mais restri¸ c˜oes violadas pela relaxa¸c˜ao corrente (cutting pro-
cedure). O novo problema obtido (com restri¸c˜oes adicionais) ´e novamente resolvido via
programa¸ c˜ao linear e o processo ´e repetido at´e que novas classes de desigualdades violadas
n˜ao sejam mais encontradas. Neste momento, interrompe-se o processo e retorna-se `a
´arvore de busca (Branch-and-Bound)”.
iii
Sum´ario
1 Introdu¸c˜ao 1
1.1 Conceitos B´asicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
2 Algoritmo Branch-and-Cut 2
2.1 Gerando corte v´alidos e Pr´e-processamento . . . . . . . . . . . . . . . . 3
3 DESIGUALDADES V
´
ALIDAS 5
3.1 Desigualdades v´alidas para os programas lineares . . . . . . . . . . . . . 5
3.2 Desigualdades v´alidas para programas inteiros . . . . . . . . . . . . . . . 5
3.3 Tipos de Desigualdades v´alidos . . . . . . . . . . . . . . . . . . . . . . . 6
4 T
´
ECNICAS DE GERAC¸
˜
AO DE CORTES 8
4.1 T´ecnica de Arredondamento . . . . . . . . . . . . . . . . . . . . . . . . 8
4.2 T´ecnica de Disjun¸ c˜ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
4.3 T´ecnica de Eleva¸ c˜ao . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
5 CORTES GERADOS POR GRUPOS ENVOLVENDO VARI
´
AVEIS INTEIRAS
PURAS 12
5.1 Corte Fracion´ario de Gomory . . . . . . . . . . . . . . . . . . . . . . . . 12
5.2 Corte Chv´atal-Gomory . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
5.3 Cortes de Arredondamentos Puros e Inteiros . . . . . . . . . . . . . . . . 14
5.4 Corte Objetivo de Integralidade . . . . . . . . . . . . . . . . . . . . . . . 15
6 GERAC¸
˜
AO DE CORTES DE CONJUNTOS ENVOLVENDO VARI
´
AVEIS IN-
iv
TEIRAS MISTAS 16
6.1 Corte Gomory de inteiros mistos . . . . . . . . . . . . . . . . . . . . . . 16
6.2 Corte de Arredondamento Misto Inteiro . . . . . . . . . . . . . . . . . . 19
7 CORTES GERADOS PARA CONJUNTOS ”MOCHILA”0-1 21
7.1 Cobertura Mochila . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
7.2 Cobertura Mochila Elevada . . . . . . . . . . . . . . . . . . . . . . . . . 22
7.3 Cobertura GUB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
8 CORTES GERADOS DE CONJUNTOS CONTENDO COEFICIENTES 0-1
E VARI
´
AVEIS 0-1 25
9 CORTES GERADOS DE CONJUNTOS COM ESTRUTURAS ESPECIAIS 28
9.1 Cobertura de fluxo de uma rede de fluxo de carga-fixa . . . . . . . . . . 28
9.2 Localiza¸ c˜ao de F´abrica (Transporte de Carga-Fixa) . . . . . . . . . . . . 29
10 ESTADO DA ARTE 31
Referˆencias Bibliogr´aficas 33
v
Lista de Figuras
2.1 Exemplo de representa¸ c˜ao de ´arvore de decis˜ao. Fonte: OLIVEIRA (2003) 4
3.1 Desigualdades v´alidas para um programa inteiro puro. Fonte: CHEN et
al. (2010) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
4.1 Regi˜ao IP mista vi´avel. CHEN et al. (2010) . . . . . . . . . . . . . . . . 9
4.2 Um corte disjuntivo. CHEN et al. (2010) . . . . . . . . . . . . . . . . . 10
8.1 Gr´afico de um problema de n´o de empacotamento. Fonte: CHEN et al.
(2010) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
9.1 Constru¸c˜ao de um corte para localiza¸ c˜ao de f´abrica. Fonte: CHEN et al.
(2010) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
vi
Cap´ıtulo1
Introdu¸c˜ao
1.1 Conceitos B´asicos
Conceitualmente, o m´etodo B-C pode ser visto como uma generaliza¸ c˜ao do m´etodo B-B.
Basicamente, ele se baseia no mesmo quadro B-B com cortes adicionais geradas e aplica-
das a cada n´o da ´arvore de branch-and-bound, antes da poda e processos de ramifica¸c˜ao.
Embora ambos os m´etodos de resolver uma s´erie de problemas de relaxa¸ c˜ao no LP
v´arios n´os, suas filosofias de solu¸ c˜ao s˜ao diferentes. B-B aplica-se dois cortes simples
ligados em cada n´o e tira proveito de r´apida reotimiza¸ c˜ao do LP em cada n´o. A filosofia
B-C ´e fazer o trabalho o quanto for necess´ario para obter um ”limite apertado”no n´o antes
da poda e de ramifica¸c˜ao. O trabalho em cada n´o pode incluir gera¸ c˜ao de cortes fortes,
melhorando formula¸ c˜oes, pr´e-processamento, e aplicar uma heur´ıstica primal. Na pr´atica,
muitos cortes podem ser adicionados em cada n´o, o que pode retardar a reotimiza¸c˜ao.
Para um dado problema em grande escala, uma investiga¸c˜ao emp´ırica ´e normalmente
utilizada para determinar o n´umero apropriado de cortes a ser impostas `a raiz e outros
n´os. Al´em dos parˆametros do B-B, os algoritmos B-C apresentam outros parˆametros,
cujos ajustes tamb´em n˜ao costuma ser uma tarefa trivial. Dentre estes est˜ao, como dito,
a determina¸c˜ao de quando e quantos cortes adicionar e/ou excluir ao problema.
Cap´ıtulo2
Algoritmo Branch-and-Cut
Agora ser´a descrito o algoritmo B-C como se segue, segundo exposto em CHEN et al..
(2010):
Algoritmo Branch-and-cut
S= problema IP dado
S
LP
= o relaxamento LP de S
y
LP
a solu¸c˜ao da relaxa¸c˜ao LP do IP dado
¯ z= menor (melhor) limite superior em z do problema IP dado
z= maior (melhor) limite inferior em z do problema IP dado
S
k
= subproblema k do problema S
S
k
LP
= relaxa¸c˜ao LP do subproblema k
S
k
(t)= subproblema k na itera¸c˜ao t
S
k
LP
(t)= relaxa¸c˜ao LP do subproblema k na itera¸ c˜ao t como um problema LP
y
k
LP
(t)
y
k
LP
(t)= a solu¸ c˜ao ´otima do subproblema LP S
k
LP
(t)
y

= a solu¸ c˜ao atual incumbente
Z
k
LP
(t)= o valor objetivo ´otimo de S
k
LP
(t)
¯ z
k
= menor limite superior do subproblema S
k
z
k
= maior limite inferior do subproblema S
k
Passo 0 (inicializa¸ c˜ao). Preprocesse a formula¸ c˜ao IP dada e resolva a sua relaxa¸c˜ao
LP S
LP
. Se S
LP
´e invi´avel, ent˜ao ´e o problema IP. Termimado. Se a solu¸ c˜ao LP ´otima
satisfaz o requisito n´umero inteiro, o problema IP de S tamb´em ´e otimizado. Terminado.
Caso contr´ario, defina o melhor limite inferior z= -∞ , e ¯ z= z

para S
LP
.
Defina k=1. Permita S
k
= S. Coloque S
k
na lista ativa de n´os (subproblemas). Inici-
almente, n˜ao h´a solu¸ c˜ao incumbente.
2
3
Passo 1 (Escolhendo um n´o). Se a lista ativa estiver vazia, termine. A incumbente
solu¸ c˜ao atual y* ´e ´otima. Caso contr´ario, escolha um n´o (subproblema) k com S
k
.
Remova S
k
da lista ativa. Defina o n´umero de itera¸c˜ao t = 1. Indique o atual subproblema
por S
k
(t), o qual tem relaxa¸ c˜ao S
k
LP
(t). V´a para Passo 2.
Passo 2 (Solu¸ c˜ao da Relaxa¸ c˜ao LP do subproblema). Resolva S
k
LP
(t). Se for invi´avel,
pode o n´o k e v´a para o Passo 1. Caso contr´ario, mantenha a solu¸ c˜ao ´otima para S
k
LP
(t),
que ´ey
k
LP
(t), e o valor objetivo ´otimo z
k
LP
(t). V´a para o Passo 3.
Passo 3 (Gera¸ c˜ao de cortes). Tente gerar corte para o problema otimizadoS
k
LP
(t),
para cortar o ponto y
k
LP
(t). Se nenhum corte puder ser adicionado, v´a para o Passo 4.
Sen˜ao, adicione um corte a S
k
LP
(t), resultando num novo problema LP de S
k
LP
(t+1).
Passo 4 (Poda). Se z
k
LP
(t) ≤ z, pode o n´o k e v´a para o Passo 1. Se n˜ao, se y
k
LP
(t)
satisfaz todos os requisitos inteiros do problema IP determinado, v´a para o Passo 5. Se
y
k
LP
(t) viola alguns requisitos inteiros, v´a para o Passo 6.
Passo 5 (Atualiza¸ c˜ao do Limite Inferior). Como a solu¸c˜ao LP ´otima de y
k
LP
(t) satisfaz
todos os requisitos inteiros, uma solu¸ c˜ao vi´avel para S ´e encontrada e y
k
LP
(t) se torna uma
solu¸ c˜ao candidata. Defina z
k
para o valor objetivo ´otimo de S
k
LP
(t), isto ´e,z
k
= z
k
LP
(t), e
compare z
k
com z. Se z
k
> z, defina z = z
k
, e y

= y
k
LP
(t) tornar-se o titular, se n˜ao, z
n˜ao muda. O n´o k ´e podado porque n˜ao h´a melhor solu¸ c˜ao que pode ser ramificado para
baixo a partir deste n´o. V´a para o Passo 1.
Passo 6 (Ramifica¸c˜ao). Ramifique no n´o k atual para criar mais subproblemas S
k+1
,
S
k+2
, e assim por diante. Coloque estes subproblemas novos na lista ativa e v´a para o
Passo 1.
Ent˜ao, simplificando, este m´etodo divide o problema em subproblemas, resolvendo
estes buscando a solu¸ c˜ao ´otima. Em OLIVEIRA (2003) encontra-se uma representa¸ c˜ao
de uma ´arvore de decis˜ao por B-C, como ilustra a figura 2.1.
1
2.1 Gerando corte v´alidos e Pr´e-processamento
´
E necess´ario o conhecimento pr´evio sobre como preprocessar um modelo MIP dado para
obter uma ”melhor”formula¸ c˜ao. Esta exposi¸c˜ao e a experiˆencia de profissionais apoiam a
1
Cada aresta representa a decis˜ao de incluir ou excluir uma aresta das solu¸c˜oes da figura 2.1. o Conjunto
S ´e o conjunto das solu¸ c˜oes do problema original se e ´e uma aresta, o conjunto S
0
e
´e o conjunto das solu¸ c˜oes
que excluem e e o conjunto S
1
e
´e o conjunto das solu¸c˜oes que incluem e. Se f ´e uma aresta, S
01
e f
´e, por
exemplo, o conjunto das solu¸ c˜oes que excluem e e incluem f . Ao lado de cada n´o tem-se dois n´umeros, o
primeiro ´e um limitante superior para o valor das solu¸ c˜oes e o segundo um limitante inferior. Todos os n´os,
exceto o n´o S
10
e f
podem ser eliminados com base nestes limitantes.
4
Figura 2.1 Exemplo de representa¸ c˜ao de ´arvore de decis˜ao. Fonte: OLIVEIRA (2003)
cren¸ ca de que qualquer formula¸ c˜ao MIP original pode quase sempre ser melhorado. Por
melhoria, segundo CHEN et al. (2010), quer-se dizer que a nova formula¸ c˜ao tem uma
diferen¸ ca menor entre o espa¸ co de solu¸ c˜oes cont´ınuas vi´aveis e do espa¸ co de solu¸ c˜oes in-
teiras vi´aveis. Isto tamb´em pode significar que uma nova formula¸ c˜ao tem menos vari´aveis
(especialmente inteiras), com menor ou sem restri¸ c˜oes redundantes, e as diferen¸ cas me-
nores entre os limites superior e inferior para vari´aveis. Em suma, uma nova formula¸ c˜ao
com tais propriedades ´e chamada de formula¸ c˜ao ”mais apertada”.
Tanto o pr´e-processamento e gera¸c˜ao de corte dos passos semelhantes para formula¸ c˜ao
”apertadas”atrav´es da adi¸ c˜ao e / ou substitui¸ c˜ao de restri¸ c˜oes no modelo ´e para que o
espa¸ co de solu¸c˜ao inteiras permaneca inalterado, mas tem um pequena espa¸ co de solu¸c˜ao
cont´ınua. Por esta raz˜ao, eles `as vezes parecem iguais. De facto, alguns programas
(softwares) (como o LINGO R ) incluem ambas as op¸ c˜oes de pr´e-processamento e gera¸ c˜ao
de corte em um s´o lugar.
No entanto, o pr´e-processamento e gera¸ c˜ao de cortes tˆem diferen¸ cas fundamentais.
Em primeiro lugar, pr´e-processamento ´e aplicado ao modelo original para criar um novo
modelo (independente da relaxa¸ c˜ao do problema), enquanto os cortes s˜ao gerados e adi-
cionados para cortar a solu¸ c˜ao relaxada. Segundo, pr´e-processamento introduz restri¸ c˜oes
mais apertadas que as restri¸ c˜oes dominantes existentes, enquanto que gera¸ c˜ao de cor-
tes introduz restri¸ c˜oes mais apertadas que cortam parte de uma solu¸ c˜ao de relaxa¸ c˜ao
particular.
Cap´ıtulo3
DESIGUALDADES V
´
ALIDAS
3.1 Desigualdades v´alidas para os programas lineares
A desigualdade linear ´e chamado de desigualdade v´alida para um problema LP, se esta ´e
satisfeita por todas as solu¸ c˜oes vi´aveis do problema. Aqui, interessa quando uma desi-
gualdade ´e v´alida. Essa pergunta ´e respondida pelo seguinte teorema.
Teorema 1: Uma desigualdade linear π
T
x ≤ π
0
´e v´alida para um poliedro n˜ao-vazio
P = {x : AX ≤ b, x ≥ 0} se e somento se existe u ≥ 0 tal que u
T
A ≥ π e u
T
b ≤ π
0
.
3.2 Desigualdades v´alidas para programas inteiros
Uma desigualdade linear ´e v´alida para um problema de MIP se estiver satisfeito por todas
as solu¸ c˜oes vi´aveis do MIP, em especial com as restri¸ c˜oes de n´umero inteiro no local.
Dado um poliedro P e uma solu¸c˜ao LP ´otima x

∈ P, interessa a defini¸c˜ao particular
das desigualdades v´alidas que cortam x

. Tais desigualdades particulares v´alidas s˜ao, por
vezes, chamados cortes violados. O problema que consiste na determina¸c˜ao de se x

est´a
no novo poliedro, e se n˜ao, encontrar uma desigualdade cortando x

, que ´e chamado de
problema de separa¸c˜ao.
Um corte violado π
T
x ≤ b
1
´e dito mais forte do que um corte violado q
T
x ≤ b
2
se
o poliedro resultante da p
T
x ≤ b
1
´e um subconjunto adequado do poliedro resultante de
q
T
x ≤ b
2
. Segundo CHEN et al. (2010), p
T
x ≤ b
1
resulta em uma formula¸ c˜ao ”melhor”.
Considere a Figura 3.1.
Os pontos s´olidos no gr´afico representam pontos inteiros vi´aveis. Desigualdades a, b,
e c s˜ao v´alidos, enquanto d n˜ao ´e porque este exclui um ponto inteiro. Desigualdades b e
c s˜ao cortes violados, mas a n˜ao ´e. Desigualdade c ´e um corte mais forte que b porque
o novo poliedro formado por c ´e um subconjunto de b.
5
6
Figura 3.1 Desigualdades v´alidas para um programa inteiro puro. Fonte: CHEN et al.
(2010)
3.3 Tipos de Desigualdades v´alidos
Com base nos tipos de problemas MIP, apresenta-se agora, de acordo com CHEN et al.
(2010), as desigualdades v´alidas de trˆes tipos.
Desigualdades Tipo 1 v´alidas s˜ao geradas a partir de problemas IP puros e mistos
com nenhuma estrutura especial. A vantagem deste tipo ´e que eles podem sempre ser
utilizados para separar um ponto fraccionado e pode ser aplicado a todos os problemas IP
ou MIP, mas a desvantagem ´e que os cortes derivados s˜ao geralmente muito fracos. Este
trabalho abordar´a as desigualdades para problemas IP puros e mistos, nas Se¸ c˜oes 4 e 5,
respectivamente.
Desigualdades Tipo 2 s˜ao basicamente derivadas de problemas com algum estrutura
local que considera uma restri¸ c˜ao ´unica (tais como ”conjuntos mochila”) ou um subcon-
junto do problema de restri¸c˜oes (como ”conjunto de empacotamento”). As desigualdades
assim derivadas podem na melhor das hip´oteses apenas separar pontos fracionados que
s˜ao invi´aveis para o casco convexo da relaxa¸c˜ao. Frequentemente, desigualdades tipo 2
s˜ao facetas do casco convexo da relaxa¸ c˜ao e deve ser mais forte desigualdades tipo 1.
Ser´a discutido os conjuntos ”mochila”0-1 e conjuntos com coeficientes 0-1 nas sec¸ c˜oes
6 e 7, respectivamente.
Desigualdades Tipo 3 s˜ao tipicamente derivados de uma grande parte ou um conjunto
completo de uma estrutura espec´ıfica do problema, tais como as restri¸c˜oes de conserva¸ c˜ao
de fluxo no problema de fluxo de rede. Normalmente, essas desigualdades s˜ao muito
fortes, porque elas podem vir de algumas classes conhecidas de facetas do casco convexo
7
de regi˜ oes vi´aveis. No entanto, suas aplica¸ c˜oes s˜ao limitadas para o tipo particular de
problema. Esses cortes s˜ao muito ´uteis e largamente implementados na maioria dos
softwares MIP, porque muitos problemas dif´ıceis de otimiza¸ c˜ao combinatorial possuem
algumas ou todas as restri¸ c˜oes de estrutura especial. Este tipo de problema ser´a abordado
na Se¸c˜ao 8.
Cap´ıtulo4
T
´
ECNICAS DE GERAC¸
˜
AO DE CORTES
Arredondamento, disjun¸ c˜ao, e eleva¸ c˜ao s˜ao trˆes poderosas t´ecnicas utilizadas para gerar
cortes de restri¸ c˜oes. Nesta se¸ c˜ao, ser´a introduzido o conceito b´asico de cada t´ecnica,
enquanto as aplica¸ c˜oes espec´ıficas de v´arias classes ser´a discutido nas se¸ c˜oes subseq¨uentes.
4.1 T´ecnica de Arredondamento
Para efeito de exemplo, um limite superior fracionado em uma vari´avel inteira pode ser
arredondado para baixo e um limite inferior fracionado pode ser arredondado para cima
como se vˆe abaixo:
y ≤ 3.8 implica y ≤ 3
e
y ≥ 1.1 implica y ≥ 2
Outro exemplo de arredondamento em modelo de pr´e-processamento ´e redu¸ c˜ao GCD
(”maior divisor comum- MDC), no qual uma restri¸ c˜ao envolve todas as vari´aveis inteiras
com coeficientes inteiros como 6y
1
+ 3y
2
+ 12y
3
≤ 17. O MDC de todos os coeficientes ´e
3. Divida a restri¸ c˜ao por 3 e arredonde para baixo o lado direito resultando em
2y
2
+ y
2
+ 4y
3
≤ 5.
A t´ecnica de arredondamento para a gera¸ c˜ao de corte ´e de uma maneira mais relaxada
(daqui, mais fraco) e aplicada mais localmente. Por exemplo, um corte de arredondamento
pode ser aplicado a uma restri¸ c˜ao envolvendo vari´aveis inteiras n˜ao negativas
∑a
j
yj ≤ b
onde a
j
pode ser qualquer n´umero. Pode-se dividir a restri¸ c˜ao por alguma (arbitraria-
mente)constante positiva c e arredondando para baixo do lado direito para obter um corte
de arredondamento.

a
j
c
y
j

b
j
c

8
9
Este corte de arredondamento ´e relevante para a maioria de programas inteiros puros.
Mas, infelizmente,o corte assim gerado pode ser muito fraca. Precisa-se de informa¸ c˜oes
adicionais sobre a estrutura do problema para gerar cortes mais fortes. H´a v´arios proble-
mas, tais como n´o de empacotamento, para os quais os cortes fortes tˆem sido desenvol-
vidos.
Um corte de arredondamento forte, chamado corte arredondamento inteiro misto (do
inglˆes ”MIR”), pode ser derivado a partir de uma restri¸ c˜ao envolvendo m´ultiplas vari´aveis
inteiras e uma ´unica vari´avel cont´ınua. Isso ser´a abordado na Se¸c˜ao 5.
4.2 T´ecnica de Disjun¸ c˜ao
Figura 4.1 Regi˜ao IP mista vi´avel. CHEN et al. (2010)
A t´ecnica de disjun¸ c˜ao ´e uma das t´ecnicas mais amplamente utilizadas para a cons-
tru¸ c˜ao de cortes para problemas que envolvem tanto cont´ınuas como vari´aveis inteiras.
Para facilidade de exposi¸c˜ao, n´os consideramos um conjunto de restri¸ c˜oes envolvendo uma
´unica vari´avel cont´ınua e um ´unica vari´avel inteira:
S = {(x, y) : x + y ≥ 2.4, x ≥ 0; y ≥ 0 e inteiro}
Veja esta regi˜ao MIP vi´avel na Figura 4.1. A ´area sombreada representa a regi˜ao
vi´avel para a relaxa¸c˜ao LP de S. As linhas cont´ınuas representam os pontos poss´ıveis
10
para S. Assuma que o ponto (0, 2.4) ´e o ponto sobre o qual um corte de disjun¸c˜ao ser´a
derivado. Primeiro, particiona-se S em dois conjuntos separados por adi¸c˜ao das restri¸ c˜oes
duas seguintes:
y ≤ 2.4
e
y ≥ 2.4
As ´areas sombreadas na figura 5 mostram as duas regi˜oes vi´aveis representados pelos
dois conjuntos disconexos. Tamb´em ´e a regi˜ao vi´avel para o problema MIP original.
Para combinar ambas as regi˜oes vi´aveis, aplica-se a t´ecnica de disjun¸ c˜ao para obter uma
”uni˜ao”dos dois conjuntos disjuntos. Para conseguir isto, considere ponto A = (0, 3) que
intersecciona y = 2.4 = 3 e x= 0, e o ponto B = (0.4, 2) que intercepta y = 2.4 = 2 e
x + y ≥ 2.4. Unindo os pontos A e B por uma linha e determinando o sinal de desigualdade
para viabilidade, obt´em-se uma linha tracejada na Figura 4.2, o que representa um corte
disjuntivo.
Figura 4.2 Um corte disjuntivo. CHEN et al. (2010)
11
A regi˜ao hachurada representa a regi˜ao invi´avel sendo cortado. Note que esta desi-
gualdade ´e v´alida para o MIP original, porque todas as solu¸ c˜oes vi´aveis para o MIP est˜ao
inalteradas, e este ´e um corte violado porque viola os pontos na regi˜ao hachuradas.
Para representar esse corte disjuntivo algebricamente, primeiro escreve-se uma equa¸ c˜ao
linear passando por dois pontos A = (0, 3) e B = (0.4, 2),
y−3
x−0
=
2−3
0.4−0
resultando em 5x + 2y = 6. Depois de verificar com a origem para a viabilidade, obt´em-
se a seguinte a desigualdade:
5x + 2y ≥ 6
4.3 T´ecnica de Eleva¸ c˜ao
Eleva¸ c˜ao ´e uma t´ecnica para fortalecer as desigualdades v´alidas e obten¸c˜ao de desigualda-
des definidora-de-faceta, especialmente para programas de IP bin´arios. Existem dois tipos
de levantamento: seq¨uencial versus sequˆencia independente. Em levantamento sequen-
cial, os coeficientes de corte {π
j
} s˜ao avaliados um por um, enquanto que em eleva¸ c˜ao de
sequˆencia independente, os π
j
’s s˜ao avaliados simultaneamente. Os detalhes do processo
de eleva¸c˜ao ser´a discutido mais tarde na Se¸ c˜ao 6.1.
Cap´ıtulo5
CORTES GERADOS POR GRUPOS ENVOLVENDO
VARI
´
AVEIS INTEIRAS PURAS
Esta se¸c˜ao apresenta v´arios cortes violados que s˜ao aplic´aveis somente para programas
inteiros puros. Estes cortes n˜ao pode ser aplicados a problemas que contˆem vari´aveis
inteiras e cont´ınuas.
5.1 Corte Fracion´ario de Gomory
Suponha que um ´otimo LP cont´em um valor fracion´ario de alguma vari´avel b´asica (diz-se
y
B
r
), na linha r,
y
B
r
+ ∑
k∈J
¯ g
rk
y
k

¯
b
r
equa¸ c˜ao (1)
onde J ´e o conjunto de ´ındices de todas as vari´aveis n˜ao-b´asicas. A equa¸c˜ao (1) pode
ser utilizado para derivar um corte fracion´ario de Gomory

k∈J
f
rk
y
k
≥ f
r0
equa¸ c˜ao (2)
onde f
rk
= ¯ g
rk
− ¯ g
rk
≥ 0e f
r0
=
¯
b
r

¯
b
r
≥ 0.
5.2 Corte Chv´atal-Gomory
O corte de fracion´ario de Gomory acima (2) ´e derivado dos coeficientes atualizados ¯ g
j
da tabela simplex ´otima. Para encontrar o mesmo corte fracion´ario mas em termos de
vari´aveis originais e os coeficientes g
j
, usamos a rela¸c˜ao
¯ g
j
= B
−1
g
j
onde B
−1
´e a inversa da base ´otima B. A matriz B
−1
pode ser obtida por c´alculos
diretos de B ou extraindo-a da tabela simplex ´otima. Lembre-se que se o quadro simplex
inicial utiliza vari´aveis de folga como vari´aveis b´asicas, ent˜ao os coeficientes associados das
12
13
vari´aveis de folga formam uma matriz identidade e, portanto, tem-se a matriz atualizada
B
−1
I = B
−1
. O resultado implica que pode-se encontrar imediatamente B
−1
nas colunas
localizadas sob as vari´aveis b´asicas iniciais a na tabela simplex correspondente, sem c´alculos
adicionais. Pode-se mostrar que um corte fracion´ario de Gomory ´e o corte Chv´atal-
Gomory.
Teorema 2 Deixe β indicar a linha r de B
−1
, β
i
, indica o i -´esimo elemento de β, e
f

i
= β
i
− β
i
para i = 1, 2, ..., m. O corte fracion´ario de Gomory ∑
k∈J
f
rk
y
k
≥ f
r0
, quando
escrito em termos das vari´aveis e os coeficientes originais, ´e o corte Chv´atal-Gomory

n
j=1
f

T
g
j
y
j
≤ f

T
b equa¸ c˜ao (3)
onde n ´e o n´umero de vari´aveis originais, f

T
= ( f

1
, f

2
, ..., f

n
), g
j
´e coluna j -´esima dos
coeficientes iniciais, e b ´e o lado coluna original do lado direito.
Uma fam´ılia de cortes Chv´atal-Gomory podem ser reescritos em termos dos dados
originais do problema IP puro definido por max {d
T
y : ∑
j
g
j
y
j
≤ b, y ≥ 0 e inteiro},
onde g
j
(j =1, 2,..., n) s˜ao vetores-coluna da matriz G m x n.
Deixe os multiplicadores u ≥ 0 e o poliedro P = {y : ∑
j
g
j
y
j
≤ b, y ≥ 0} serem definidos
pelo problema IP. Ent˜ao, a desigualdade

j
u
T
g
j
y
j
≤ u
T
b equa¸ c˜ao (4)
´e uma desigualdade v´alida para P pois u ≥ 0, ∑
j
g
j
y
j
≤ b e y ≥ 0. Arredondando
para baixo os coeficientes n˜ao inteiros do lado esquerdo da equa¸ c˜ao (4), obt´em-se uma
desigualdade v´alida,

j
u
T
g
j
y
j
≤ u
T
b equa¸ c˜ao (5)
O lado direito de (5) pode ainda ser arredondado para baixo porque y
j
s˜ao inteiros
n˜ao-negativos que resultam na integralidade do lado esquerdo,

j
u
T
g
j
y
j
≤ u
T
b equa¸ c˜ao (6)
A desigualdade (6), definida por qualquer u, gera uma desigualdade v´alida para um
dado problema IP puro. O procedimento de trˆes passos de Chv´atal-Gomory, (4) - (6),
pode ser usado para construir uma desigualdade v´alida para um programa de inteiros puros.
A solu¸ c˜ao dual ´otima u para uma relaxa¸ c˜ao LP podem ser utilizados para os valores em
(4) - (6).
14
5.3 Cortes de Arredondamentos Puros e Inteiros
”Arredondamento”´e uma t´ecnica largamente utilizada para a gera¸ c˜ao de cortes v´alidos
para a maioria dos programas puros inteiros e puros bin´arios. Aqui, segundo CHEN et
al. (2010) ser´a aplicado a t´ecnica de arredondamento para uma restri¸c˜ao ≤ envolvendo
vari´aveis inteiras n˜ao-negativas,
∑a
j
y
j
≤ b
O procedimento de arredondamento ´e bastante simples:
1. Divida a restri¸ c˜ao por alguma constante positiva d : ∑(
a
j
d
)y
j

b
d
. 2. Arredonde
para baixo os coeficientes do lado esquerdo: ∑
a
j
d
y
j
≤ ∑(
a
j
d
)y
j

b
d
. 3. Arredonde para
baixo o lado direito: ∑
a
j
d
y
j
≤ ∑(
a
j
d
)y
j

b
d
.
Se a restri¸ c˜ao dada ´e de forma ≥, o procedimento ´e semelhante, exceto que as
opera¸ c˜oes de arredondamento s˜ao alteradas para arredondamento para cima.
Exemplo 1: Deduza um corte de arredondamento inteiro para a regi˜ao inteira vi´avel
de um problema IP puro definido pela seguinte desigualdade e y ≥ 0 e inteiro:
7y
1
+ 3y
2
+ 4y
3
+ 10y
4
+ 9y
5
≤ 20
Dividindo ambos os lados por um coeficiente selecionado arbitr´ariamente (por exemplo,
9), obt´em-se uma desigualdade equivalente:
7
9
y
1
+
1
3
y
2
+
4
9
y
3
+
10
9
y
4
+ y
5
≥ 2
2
9
Uma vez que y ≥ 0 e inteiro, arredondando para cima os coeficientes de todos os
termos do lado esquerdo dar´a um limite superior no lado esquerdo. Isto ´e,
y
1
+ y
2
+ y
3
+ 2y
4
+ y
5

7
9
y
1
+
1
3
y
2
+
4
9
y
3
+
10
9
y
4
+ y
5
≥ 2
2
9
Em seguida, a desigualdade
y
1
+ y
2
+ y
3
+ 2y
4
+ y
5
≥ 2
2
9
equa¸ c˜ao (7)
´e uma fraca formula¸c˜ao da regi˜ao vi´avel. Uma vez que o lado esquerdo ´e inteiro,
da´ı pode-se arredondar para cima o lado direito para obter um corte de arredondamento
inteiro para o Problema IP original:
y
1
+ y
2
+ y
3
+ 2y
4
+ y
5
≥ 3
15
5.4 Corte Objetivo de Integralidade
Durante o processo de solu¸ c˜ao para um problema IP puro, limites superiores sobre o valor
objetivo ´otimo s˜ao obtidos e atualizados. Estes limites superiores tamb´em podem ser
usados para gerar cortes. Se o coeficientes objetivos d s˜ao inteiros, em seguida, todo
o lado esquerdo tem de ser inteiro porque as vari´aveis y precisam ser inteiras. Deixe ¯ z
k
ser o melhor limite superior encontrado at´e agora, ent˜ao tem-se um corte objetivo de
integralidade
d
T
y ≥ ¯ z
Cap´ıtulo6
GERAC¸
˜
AO DE CORTES DE CONJUNTOS ENVOLVENDO
VARI
´
AVEIS INTEIRAS MISTAS
6.1 Corte Gomory de inteiros mistos
Se o ´otimo LP cont´em uma vari´avel b´asica inteira com um valor fracionado, a linha
correspondente (por exemplo, r) ´e selecionado para gerar uma corte inteiro misto. Deixe
a linha geradora r ser

j
¯ a
rj
x
j
+ ∑
k
¯ g
rk
y
k

¯
b
r
Particiona-se as vari´aveis cont´ınuas x
j
em dois casos: estes com coeficientes positivos
e aqueles com coeficientes negativos. Particiona-se tamb´em vari´aveis inteiras y
k
em dois
casos: aqueles com f
rk
≤ f
r0
e aqueles com f
rk
> f
r0
. Ent˜ao, corte Gomory inteiro misto
pode ser gerado por

j: ¯ a
rj
>0
¯ a
rj
x
j
+ ∑
j: ¯ a
rj
<0
(
f
r0
f
r0
−1
) ¯ a
rj
x
j
+ ∑
k: f
rk
≤f
r0
f
rk
y
k
+ ∑
k: f
rk
≥f
r0
f
r0
(1−f
rk
)
1−f
r0
y
k
≥ f
r0
onde f
rk
= ¯ g
rk
− ¯ g
rk
e f
r0
= b
r
− b
r
. Para simplificar, deixa-se cair o r subescrito
para obter

j: ¯ a
j
>0
¯ a
j
x
j
+ ∑
j: ¯ a
j
<0
(
f
0
f
0
−1
) ¯ a
j
x
j
+ ∑
k: f
k
≤f
0
f
k
y
k
+ ∑
k: f
k
≥f
0
f
0
(1−f
k
)
1−f
0
y
k
≥ f
0
equa¸ c˜ao (8)
Exemplo 2: Encontrar um corte Gomory inteiro misto para o programa inteiro misto
seguinte:
Maximize 2x
1
+ 5x
2
+ 3x
3
+ 4x
4
+ y
1
+ 7y
2
+ 2y
3
sujeito a x
1
+ 2x
2
+ 11x
3
+ x
4
+ 3y
1
+ 2y
2
+ y
3
≤ 23
− x
1
+ x
2
+ x
3
+ 2x
4
− 5y
1
+ y
2
+ 3y
3
≤ 23
x
1
, x
2
, x
3
, x
4
, s
1
, s
2
≥ 0; y
1
, y
2
, y
3
≥ 0 e inteiro
A tabela ´otima da sua relaxa¸ c˜ao LP cont´em a linha seguinte, na qual a vari´avel y
2
´e
b´asica e fracion´aria e s
1
e s
2
s˜ao vari´aveis de folga:
16
17
x
1
+ x
2
+ 7x
3
+
11
3
y
1
+ y
2

1
3
y
3
+
2
3
s
1

1
3
s
2
=
23
3
Para construir um corte inteiro misto, deve-se primeiro classificar as vari´aveis. Entre
vari´aveis n˜ao inteiras, x
1
, x
2
, x
3
e s
1
possuem coeficientes positivos, enquanto que s
2
tem
um coeficiente negativo. As vari´aveis inteiras s˜ao y
1
, y
2
e y
3
, cuja fra¸ c˜oes n˜ao negativas
s˜ao f
1
, f
2
e f
3
, respectivamente. Depois dos c´alculos f
1
=
2
3
, f
2
= 0, f
3
=
2
3
, e f
0
=
23
3

23
3
=
2
3
,conclu´ı-se f
k
≤ f
0
para todo k = 1, 2, e3. Ou seja, n˜ao h´a vari´aveis inteiras
y
k
cuja f
k
> f
0
. Aplicando (8), obt´em-se o corte inteiro misto seguinte:
(x
1
+ x
2
+ 7x
3
+
2
3
s
1
) + (−2)(
−1
3
)s
2
+
2
3
y
1
+
2
3
y
3
>
2
3
Na se¸c˜ao anterior, deu-se (8) sem entrar em detalhes como ele ´e obtido. Aqui ser´a
mostrado como. Considere a seguinte tabela simplex LP ´otima,
x
B
r
+ ∑
j∈J
¯ a
rj
x
j
=
¯
b
r
equa¸ c˜ao (9)
Para simplificar, omitiu-se os subscritos de linha em (9) para se obter (10) e assumir
que x
j
pode ser um inteiro ou uma vari´avel cont´ınua.
x + ∑
j∈J
¯ a
j
x
j
=
¯
b equa¸ c˜ao (10)
Como a vari´avel b´asica x ≥ 0 ´e necess´aria para ser inteira, segue-se x = 0(mod1).
Desde que
¯
b por suposi¸ c˜ao n˜ao ´e um n´umero inteiro, segue-se
¯
b = f
0
(mod1). Da´ı qualquer
solu¸ c˜ao inteira de (9) deve satisfazer

j∈J
¯ a
j
x
j
= f
0
(mod1) equa¸ c˜ao (11)
Deixe os coeficientes do lado esquerdo de (11) serem divididos em dois conjuntos,
J
+
= {j  ¯ a
j
≥ 0}eJ

= {j  ¯ a
j
< 0}. Em seguida,

j∈J
+ ¯ a
j
x
j
+ ∑
j∈J
− ¯ a
j
x
j
= f
0
(mod1) equa¸ c˜ao (12)
Onde 0 < f
0
< 1.
O lado esquerdo da equa¸c˜ao (12) ´e tanto positivo ou negativo. Se for positivo, ent˜ao
deve ser um dos f
0
, f
0
+1, f
0
+2, ..., e tem-se

j∈J
+ ¯ a
j
x
j
≥ ∑
j∈J
+ ¯ a
j
x
j
+ ∑
j∈J
− ¯ a
j
x
j
≥ f
0
equa¸ c˜ao (13)
18
Se o lado esquerdo ´e negativo, ent˜ao deve ser um dos -1+f
0
,-2+f
0
,..., e tem-se

j∈J
− ¯ a
j
x
j
≤ ∑
j∈J
+ ¯ a
j
x
j
+ ∑
j∈J
− ¯ a
j
x
j
≤ −1 + f
0
equa¸ c˜ao (14)
Multiplicando ambos os lados de (14) por
f
0
−1+f
0
, tem-se

j∈J

f
0
f
0
−1
¯ a
j
x
j
≥ f
0
equa¸ c˜ao (15)
Note que tanto (13) ou (15) devem ser mantidas. Porque os lados esquerdos de (13)
e (15) s˜ao ambos n˜ao-negativos, e um deles ´e ≥ f
0
, em seguida, por uni˜ao (disjun¸ c˜ao) dos
dois conjuntos conclu´ı-se

j∈J
+ ¯ a
j
x
j
+ ∑
j∈J

f
0
f
0
−1
¯ a
j
x
j
≥ f
0
equa¸ c˜ao (16)
A desigualdade acima deve ser satisfeita por cada solu¸ c˜ao inteira, mas ir´a violar a
solu¸ c˜ao LP atual, porque substituindo todos as vari´aveis n˜ao-b´asicas x
j
para 0 faz com
que o lado esquerdo se torne zero, o que n˜ao pode ser ≥ f
0
(uma fra¸ c˜ao positiva).
Note-se que no processo de deriva¸c˜ao (16), usa-se apenas o fato de a vari´avel b´asica x
no lado esquerdo da (10) tem de ser um n´umero inteiro, e que as vari´aveis n˜ao-b´asicas x
j
do lado direito devem ser n˜ao-negativas. Portanto, se algumas vari´aveis n˜ao-b´asicas n˜ao
s˜ao obrigados a ser inteiras, a equa¸ c˜ao (16) ainda representa uma desigualdade v´alida.
No entanto, pode-se utilizar ainda mais a exigˆencia inteira de algumas vari´aveis n˜ao-
b´asicas x
j
para melhorar (16) a uma forte desigualdade. Para atingir este objetivo, faz-se
o coeficientes ¯ a
j
para j ∈ J
+
e (( ¯ a
j
f
0
)/( f
0
− 1)) para j ∈ J

ser t˜ao pequena quanto poss´ıvel.
Considere um determinado termo ¯ a
q
x
q
em (11) para o qual x
q
´e necess´ario para ser in-
teiro. Porque a equa¸ c˜ao (16) ´e derivada a partir de (11), qualquer aumento ou diminui¸ c˜ao
por um inteiro m´ultiplo claramente continua a satisfazer a rela¸ c˜ao de congruˆencia (11).
Entre todos ¯ a
q
≥ 0, o menor coeficiente que pode ser obtido ´e f
q
. Entre todos ¯ a
q
< 0,
definindo ¯ a
q
para f
q
− 1 dar´a o menor valor de
f
0
f
0
−1
¯ a
q
. Portanto, o menor coeficiente em
(16) deve ser
min{f
q
, f
0
(1 − f
q
)/(1 − f
0
)}
Claramente, se f
q
≤ f
0
, ent˜ao
f
q
(1 − f
0
) ≤ f
0
(1 − f
q
)
19
ou
f
q
≤ f
0
(1 − f
q
)/(1 − f
0
)
Se f
q
> f
0
, ent˜ao
f
q
> f
0
(1 − f
q
)/(1 − f
0
)
Combinando todos os quatro casos, obt´em-se o corte inteiro misto de Gomory na
forma

j
f

j
x
j
≥ f
0
onde
f

j
= ¯ a
j
se ¯ a
j
≥ 0 e x
j
n˜ao-inteiro
f

j
=
f
0
f
0
−1
¯ a
j
se ¯ a
j
< 0 e x
j
n˜ao-inteiro
f

j
= f
q
j se f
q
≤ f
0
e x
j
inteiro
f

j
=
f
0
1−f
0
(1 − f
q
) se f
q
> f
0
e x
j
inteiro.
6.2 Corte de Arredondamento Misto Inteiro
Aqui tem-se a inten¸c˜ao de obter um corte de arredondamento para o conjunto inteiro
misto descrito da seguinte forma:
S = {(y, x) : a
T
y − x ≤ b, y ≥ 0 e inteiro, x ≥ 0} equa¸ c˜ao (17)
Come¸ ca-se com o caso mais simples onde o conjunto cont´em uma ´unica vari´avel inteira,
uma ´unica vari´avel cont´ınua, e uma desigualdade ´unica, simbolicamente
S’ = {(y, x) : y − x ≤ b, y ≥ 0 e inteiro, x ≥ 0}
Em seguida, a seguinte desigualdade, devido `a NEMHAUSER e WOLSEY (1988) apud
CHEN et al. (2010), ´e v´alido para Conv(S’).
y ≤ b +
x
1−f
equa¸ c˜ao(18)
20
onde f = b − b Para provar a equa¸ c˜ao (18), considera-se a disjun¸ c˜ao (uni˜ao) dos
conjuntos seguintes: S
1
= S

∩ {(y, x) : y ≤ b} e S
2
= S

∩ {(y, x) : y ≤ b + 1}.
para S
1
, multiplica-se y ≤ b por (1 − f ), multiplica-se 0 ≤ x por 1, e soma as duas
desigualdades resultantes, produzindo
(y − b)(1 − f ) ≤ x equa¸ c˜ao(19)
equivalente a (18). Para S
2
, multiplica-se −(y − b) ≤ −1 por f multiplica-se y − b ≤ x
por 1, e soma as duas desigualdades resultantes, produzindo (19) e, em seguida, (18).
Portanto, a equa¸c˜ao (18) ´e v´alida para Conv(S
1
∪ S
2
)=Conv(S

).
O caso de uma ´unica vari´avel inteira acima pode ser estendida para derivar um corte
de arredondamento inteiro misto para o caso de duas vari´aveis inteiras
S

= {(y
1
, y
2
, x) : g
1
y
1
+ g
2
y
2
− x ≤ b; x ≥ 0; y
1
, y
2
≥ 0 e inteiro}
onde g
1
, g
2
e b s˜ao escalares com b fracion´ario. Seja f = b − b > 0 e f
k
= g
k
− g
k
> 0
para k= 1, 2. Em seguida, pode ser mostrado que a desigualdade
(g
1
+
( f
1
−f )
+
1−f
)y
1
+ (g
2
+
( f
2
−f )
+
1−f
)y
2
≤ b +
x
1−f
onde ( f
k
− f )
+
=max(0, f
k
− f ) ´e v´alida para Conv(S

). Isto pode ser generalizado para
o conjunto contendo p vari´aveis inteiras e uma ´unica vari´avel cont´ınua.
Teorema 3: Deixe o conjunto S = {(y, x) : g
T
y − x ≤ b, y ≥ 0 e inteiro, x ≥ 0}, a
desigualdade

k
(g
k
+
( f
k
−f )
+
1−f
)y
k
≤ b +
x
1−f
equa¸ c˜ao (20)
´e v´alida para Conv(S), onde f = b − b > 0, f
k
= g
k
− g
k
> 0, e ( f
k
− f )
+
=max(0, f
k

f ).
Cap´ıtulo7
CORTES GERADOS PARA CONJUNTOS ”MOCHILA”0-1
7.1 Cobertura Mochila
Considere uma restri¸ c˜ao mochila
K = {y ∈ (0, 1)
n
: ∑
k
a
j
y
j
≤ b, a
j
> 0; b > 0} equa¸ c˜ao (21)
Qualquer coeficiente negativo pode ser convertido para um coeficiente positivo, subs-
tituindo y
j
para uma nova vari´avel y

j
= 1 − y
j
.
Um conjunto C ´e uma cobertura se ∑
j∈C
a
j
> b ou ∆ = ∑
j∈C
a
j
− b > 0. A tampa C ´e
dita m´ınima se a
j
≥ ∆ para todo j ∈ C.
Teorema 4: Deixe C ⊆ N ser a tampa de K e  C  ser o n´umero de elementos em
C, em seguida, a desigualdade de cobertura

j∈C
y
j
≤ C  −1 equa¸ c˜ao (22)
´e v´alida para K. Al´em disso, se C ´e uma cobertura m´ınima, em seguida, a desigualdade
(22) define uma f aceta de Conv(K
C
)
K
C
= K ∩ {y : y
j
= 0, j ∈ N\ C} equa¸ c˜ao (23)
onde N \ C ´e a diferen¸ ca de conjuntos de N e C, e Conv(K
C
) ´e o fecho convexo de
K
C
.
Exemplo 3: Construa um corte para K = {y ∈ (0, 1)
5
: 2y
1
+ y
2
+ 5y
3
+ 2y
4
+ 3y
5
≤ 9}
C = {3, 4, 5} ´e uma cobertura porque ∆ = 5+2+3−9 = 1 > 0, e ´e uma cobertura m´ınima
para K porque 5 > 1, 2 > 1 e 3 > 1. Obt´em-se a desigualdade de cobertura correspondente
y
3
+ y
4
+ y
5
< 2, que define uma faceta de Conv({y ∈ (0, 1)
3
: 5y
3
+ 2y
4
+ 3y
5
≤ 9}).
Se uma cobertura C n˜ao ´e m´ınima, ent˜ao ´e claramente visto que a desigualdade de
cobertura correspondente ´e redundante, porque ´e a soma das desigualdades de cobertura
m´ınimas e algumas restri¸c˜oes de limite superior.
21
22
7.2 Cobertura Mochila Elevada
Eleva¸ c˜ao pode ser usada para refor¸ car as desigualdades de cobertura de mochila para
obter uma grande classe de desigualdades de facetas definidas para Conv(K) chamado
desigualdades de cobertura elevadas.
Considere o conjunto K definidos na mochila (21) e seja M um subconjunto de N.
Suponha que se tem uma desigualdade,

j∈M
π
j
y
j
≤ π
0
equa¸ c˜ao (24)
que ´e v´alida para K
M
= K ∩ {y : y
j
= 0, j ∈ N \ M}. O problema de eleva¸c˜ao ´e
encontrar os coeficientes de eleva¸ c˜ao {π
j
}, j ∈ N \ M, de modo que

j∈N
π
j
y
j
≤ π
0
equa¸ c˜ao (25)
´e v´alida para K. Idealmente, gostar´ıa-se que a desigualdade (25) fosse ”forte”. Isto ´e,
se a desigualdade (24) define uma face de alta dimens˜ao de Conv(K
M
), gostar´ıa-se que a
desigualdade (25) definisse uma face de alta dimens˜ao de Conv(K) .
Existem dois tipos de eleva¸ c˜ao: (1) eleva¸ c˜ao sequencial e (2) eleva¸ c˜ao sequencial
independente. Descreve-se primeiro a eleva¸c˜ao seq¨uencial. A Eleva¸ c˜ao seq¨uencial obt´em
coeficientes {π
j
}, j ∈ N \ M, um de cada vez. Especificamente, o coeficiente de π
k
´e
calculado para um dado k ∈ N \ M para que

j∈M
π
j
y
j
+ π
k
y
k
≤ π
0
equa¸ c˜ao (26)
´e v´alida para K
M∪{k}
. Isto pode ser feito atrav´es do c´alculo da fun¸ c˜ao de eleva¸ c˜ao
F
M
(a
k
) = min{π
0
− ∑
j∈M
π
j
y
j
: ∑
j∈M
a
j
y
j
≤ b − a
k
, y ∈ (0, 1)
M
} equa¸ c˜ao (27)
Para um dado K ∈ N \ M, suponha K
M∪{k}
∩ {y : y
k
= 1} ≠ ∅. Ent˜ao a desigualdade

j∈M
π
j
y
j
+ π
k
y
k
≤ π
0
equa¸ c˜ao (28)
´e v´alido para K
M∪{k}
se π
k
≤ F
M
(a
k
). Uma vez que vari´avel y
k
´e elevada, M´e atualizado
incluindo k, e a eleva¸ c˜ao pode ser feita para uma segunda vari´avel atrav´es da repeti¸ c˜ao da
fun¸ c˜ao de eleva¸c˜ao. O procedimento de eleva¸ c˜ao para uma desigualdade de cobertura ´e
dado abaixo.
23
Suponha que a cobertura dada C = {+1, ..., n} e N \ C = {l, ..., r} ap´os a reordena¸ c˜ao
das vari´aveis.
1. Fa¸ ca k=1.
2. Calcule F
C
(a
k
) = max{∑
k−1
j=1
π
j
y
j
+ ∑
j∈C
y
j
: ∑
k−1
j=1
π
j
y
j
+ ∑
j∈C
a
j
y
j
≤ b − a
k
, y ∈ (0, 1)}
3. Calcule π
k
= C  −1 − F
C
(a
k
).
4. k ← k + 1. Pare se k = r + 1, caso contr´ario, v´a para o passo 2.
Exemplo 4: Encontre uma cobertura elavada de mochila para o conjunto de mochila
K = {y ∈ (0, 1)
7
: 4y
1
+ 7y
2
+ 5y
3
+ y
4
+ 2y
5
+ 3y
6
+ 4y
7
≤ 15}
Deixe M = {2, 3, 7}, ent˜ao
K
M
= K ∩ {y : y
1
= y
4
= y
5
= y
6
= 0} = {y ∈ (0, 1)
3
: 7y
2
+ 5y
3
+ 4y
7
≤ 15}
A desigualdade y
2
+ y
3
+ y
7
≤ 2 ´e v´alida para K
M
. Ent˜ao y
2
+ y
3
+ y
7
≤ 3 ´e utilizada
abaixo.
O procedimento de eleva¸ c˜ao ´e como se segue:
1. Fa¸ ca k = 1. F
M
(a
k
) = F
M
(4) = min{3 − (y
2
+ y
3
+ y
7
) : 7y
2
+ 5y
3
+ 4y
7
≤ 11} = 1
2. K
M∪{1}
= {y ∈ (0, 1) : 4y
1
+ 7y
2
+ 5y
3
+ 4y
7
≤ 15}
3. K
M∪{1}
∩ {y : y
1
= 1} = {7y
2
+ 5y
3
+ 4y
7
≤ 11} ≠ ∅
4. Fa¸ ca π
1
= 1. Ent˜ao a desigualdade y
1
+ y
2
+ y
3
+ y
7
≤ 3 ´e v´alida para K
M∪{1}
.
5. M ← M ∪ 1. Selecione outro k. Repita o procedimento at´e que todas as vari´aveis
estejam elevadas.
Agora aplica-se o m´etodo de eleva¸ c˜ao sequencial independente para a cobertura da
mochila. Antes de fazer isso, precisa-se definir o termo superaditivo.
Defini¸ c˜ao 1: A fun¸ c˜ao F : ℜ → ℜ ´e superaditiva em ℜ se F(c
1
) + F(c
2
) ≤ F(c
1
+ c
2
)
para todos os c
1
, c
2
reais. Deixe F : ℜ → ℜ ser uma fun¸ c˜ao. a desigualdade

j∈M
π
j
y
j
+ ∑
j∈N\M
F(a
j
)y
j
≤ π
0
´e v´alida para K se as duas seguintes condi¸ c˜oes forem satisfeitas:
(i) F(c) ≤ F
M
(c) para todo c real (ii) F(c) ´e superaditivo
Exemplo 5: Considere o Exemplo 4. Deixe
F
M
(a
k
) = min{π
0
− ∑
j∈M
π
j
y
j
: ∑
j∈M
a
j
y
j
≤ b − a
k
, y ∈ (0, 1)}
= min{3 − (y
2
+ y
3
+ y
7
) : 7y
2
+ 5y
3
+ 4y
7
≤ 17 − a
k
, y ∈ (0, 1)}
24
tem-se
F
M
(a
k
) =
_
¸
¸
¸
¸
¸
¸
_
¸
¸
¸
¸
¸
¸
_
0 0 ≤ a
k
≤ 1
1 1 < a
k
≤ 8
2 8 < a
k
≤ 13
3 a
k
> 13
Seja F(a
k
) = a
k
− 1, ent˜ao F(a
k
) ≤ F
M
(a
k
) para qualquer a
k
, (i) ´e satisfeita. Como
F(a
k
) + F(a
j
) = a
k
+ a
j
− 2 ≤ F(a
k
+ a
j
) = a
k
+ a
j
− 1, (ii) ´e satisfeita. Neste problema, N \
M = {1, 4, 5, 6}, {a
k
} = {a
1
, a
4
, a
5
, a
6
} = {4, 1, 2, 3}, tem-se F(a
1
) = 3, F(a
4
) = 0, F(a
5
) =
1, F(a
6
) = 2, e a desigualdade
3y
1
+ y
2
+ y
3
+ y
5
+ 2y
6
+ y
7
≤ 3
´e v´alido para K.
7.3 Cobertura GUB
Uma desigualdade de cobertura GUB (”limite superior generalizado”, traduzido do inglˆes)
´e derivado a partir do seguinte conjunto GUB:
S = {y ∈ (0, 1)
N
: ∑
j
a
j
y
j
≤ b, ∑
j∈Q
i
y
j
≤ Q
i
∩ Q
j
= ∅ para todo i ≠ j, ∪
i
Q
i
= N}
Um corte forte pode ser derivado por

j∈C
y
j
≤ J
em que C ´e uma cobertura GUB definido por: n˜ao h´a dois elementos de C pertencentes
ao mesmo Q
i
.
Exemplo 6: Construir um corte GUB para S = {y ∈ (0, 1) : 2y
1
+ y
2
+ 5y
3
+ 2y
4
+ 3y
5
+
6y
6
+ 4y
7
+ y
8
≤ 9, y
1
+ y
3
+ y
4
≤ 1, y
2
+ y
7
≤ 1, y
5
+ y
8
≤ 1, y
6
≤ 1}
Selecione uma vari´avel de cada uma das restri¸ c˜oes 2-5 de modo que n˜ao haja duas
vari´aveis iguais. Em seguida, obt´em-se uma desigualdade y
3
+ y
6
+ y
7
+ y
8
≤ 4, como uma
cobertura GUB. Existem muitas outras combina¸ c˜oes que podem ser usadas para formar
as coberturas GUB.
Cap´ıtulo8
CORTES GERADOS DE CONJUNTOS CONTENDO
COEFICIENTES 0-1 E VARI
´
AVEIS 0-1
Os conjuntos de restri¸c˜oes que compreendem coeficientes 0-1 e vari´aveis bin´arias frequen-
temente surgem em problemas de gr´aficos ou problemas de rede e em problemas combi-
nat´orios, por exemplo, ”n´o de empacotamento”e ”caixeiro viajante”. Aqui, ser´a discutido
o poliedro do problema de n´o de empacotamento e a constru¸ c˜ao de desigualdades fortes
v´alidas.
Defini¸ c˜ao 2: Dado um gr´afico que G = (V,E), em que V e E s˜ao conjuntos de v´ertices
(ou n´os) e arestas (ou arcos), respectivamente. Um (conjunto) S n´o de empacotamento
´e um conjunto de n´os tais que n˜ao existem dois n´os que tˆem uma aresta comum, isto ´e,
S = {y ∈ {0, 1}
V
: y
i
+ y
j
≤ 1 para todo (i, j) ∈ E}
onde i, j ∈ V e  V  s˜ao o n´umero de v´ertices. O problema do n´o de empacota-
mento ´e encontrar o n´o de empacotamento de m´axima cardinalidade (conjunto de n´os
independentes) em G
max{∑
V
j=1
y
j
}
Considere o gr´afico para um problema de n´o de empacotamento com cinco n´os e
sete arcos na Figura 6. Para representar em nota¸ c˜ao matricial, seja A uma matriz de
incidˆencia n´o-arco e y uma coluna de vari´aveis 0-1. Em seguida, um conjunto de n´o de
empacotamento deve satisfazer Ay ≤ 1, onde A ´e uma matriz de coeficientes 0-1 e y ´e
um vetor 0-1. Por exemplo, na Figura 8.1,  V = 5,  E = 7, e a matriz de arco-n´o ´e
A =
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
1 1 0 0 0
1 0 1 0 0
0 1 1 0 0
0 1 0 1 0
0 0 1 1 0
0 0 1 0 1
0 0 0 1 1
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
y =
_
¸
¸
¸
¸
¸
¸
¸
_
y
1
y
2
y
3
y
4
y
5
_
¸
¸
¸
¸
¸
¸
¸
_
1 =
_
¸
¸
¸
¸
¸
¸
¸
_
1
1
1
1
1
_
¸
¸
¸
¸
¸
¸
¸
_
Para encontrar um conjunto de n´o de empacotamento, pode-se ”diretamente”resolver
25
26
Figura 8.1 Gr´afico de um problema de n´o de empacotamento. Fonte: CHEN et al.
(2010)
max{∑
V
j=1
y
j
: Ay ≤ 1, onde y
j
= 1 se o n´o j est´a no conjunto, y
j
= 0 caso contr´ario}.
No entanto, pode-se resolvˆe-lo mais f´acil pela constru¸c˜ao de desigualdades v´alidas fortes
para o problema. Para isso, introduz-se o conceito de clique maximal.
Defini¸ c˜ao 3: Dado o gr´afico G = (V,E), onde V e E s˜ao conjuntos de v´ertices e
arestas, respectivamente. Um conjunto de n´os, C
q
⊆ V, ´e chamado de clique, se cada par
de n´os em C
q
´e acompanhado por uma aresta. Um clique ´e m´aximo se ele cont´em um
n´umero m´aximo de n´os.
Considere a Figura 6. Os cliques de dois n´os s˜ao {1,2},{1,3},{2,3},{2,4},{3,4},{3,5},
{4,5}. Os cliques s˜ao de trˆes n´os {1, 2, 3}, {2, 3, 4}, {3, 4, 5}. O conjunto {1, 2, 3, 4} n˜ao
´e um clique porque n˜ao h´a nenhuma aresta entre os n´os 1 e 4. O conjunto {2, 3, 4, 5}
n˜ao ´e um clique porque n˜ao h´a nenhuma aresta entre os n´os 2 e 5. Na verdade, n˜ao h´a
cliques contendo quatro ou mais n´os. Portanto, o clique maximal ´e trˆes. O clique m´aximo
pode ser usado para construir um corte forte para um conjunto de n´o de empacotamento
chamado corte de clique (desigualdade).
Teorema 5: Deixe C
q
ser uma clique maximal, a desigualdade ou clique ∑
j∈C
q
y
j
≤ 1
define uma faceta de Conv({y ∈ {0, 1}
V
Ay ≤ 1}). Considere a Figura 6. Para o
clique maximal C
q
= {1, 2, 3}, o corte de clique ´e y
1
+ y
2
+ y
3
≤ l. Para o clique maximal
C
q
= {2, 3, 4}, o corte de clique ´e y
3
+ y
4
+ y
5
≤ 1. Para o clique maximal C
q
= {3, 4, 5}, o
corte de clique ´e y
3
++y
4
+y
5
≤ 1. Estes trˆes cortes de clique fornecem fortes desigualdades
v´alidas para resolver o problema de n´o de empacotamento na Figura 6. Neste problema
em particular, o leitor pode listar todos os sete restri¸ c˜oes em Ay ≤ 1 e verificar que todos
eles s˜ao dominados por estes trˆes cortes de clique
y
1
+ y
2
+ y
3
≤ 1 equa¸ c˜ao (29)
27
y
2
+ y
3
+ y
4
≤ 1 equa¸ c˜ao (30)
y
3
+ y
4
+ y
5
≤ 1 equa¸ c˜ao (31)
Agora utiliza-se estes cortes para resolver o problema de n´o de empacotamento. A
partir de (29), y
1
= 1 implica y
2
= y
3
= 0. A partir de (30), y
4
= 1 porque deseja-se
maximizar ∑
V
j=1
y
j
. A partir de (31), y
4
= 1 implica y
5
= 0. Agora tem-se uma solu¸ c˜ao
y
1
= y
4
= 1, y
2
= y
3
= y
5
= 0. Da mesma forma, pode-se gerar duas solu¸ c˜oes alternativas.
y
2
= y
5
= 1, y
1
= y
3
= y
4
= 0)
y
1
= y
5
= 1, y
2
= y
3
= y
4
= 0
Estas trˆes solu¸ c˜oes correspondem aos conjuntos dos respectivos n´os de empacotamen-
tos {1,4},{2,5},{1,5} e n˜ao existem conjuntos de embalagem incluindo trˆes ou mais n´os.
Este exemplo mostra como um clique maximal pode ser usado para gerar os cortes fortes
para ajudar a resolver um problema contendo coeficientes 0-1 e vari´aveis bin´arias. Para
este exemplo, ´e coincidˆencia que os cortes gerados podem encontrar imediatamente uma
solu¸ c˜ao. No entanto, os cortes gerados fortes s˜ao ´uteis para fazer o m´etodo Branch-and-
Cut mais eficiente.
Cap´ıtulo9
CORTES GERADOS DE CONJUNTOS COM ESTRUTURAS
ESPECIAIS
Esta se¸ c˜ao discute v´arios conjuntos conhecidos de conjuntos de restri¸ c˜oes com estruturas
especiais dos quais cortes fortes s˜ao gerados, incluindo
⋅ Cobertura de fluxo de uma simples rede de fluxo de carga-fixa
⋅ Localiza¸ c˜ao da f´abrica
9.1 Cobertura de fluxo de uma rede de fluxo de carga-fixa
Considere o seguinte problema simples de rede de fluxo de carga-fixa em vari´aveis inteiras
mistas:
{S = (x,y) : ∑
j∈N
1
x
j
− ∑
j∈N
2
x
j
≤ b, x
j
≤ a
j
y
j
para todo j, x ≥ 0, y bin´ario}
As restri¸ c˜oes contˆem dois conjuntos: as restri¸ c˜oes de fluxo de conserva¸c˜ao e restri¸ c˜oes
de carga-fixa impostas em cada n´o j. Um corte cobertura de fluxo ´e derivado abaixo:

j∈C
1
x
j
+ ∑
j∈C
2
(a
j
− ∑
j∈C
1
a
j
+ ∑
j∈C
2
a
j
+ b)
+
(1 − y
j
) − ∑
j∈C
1
a
j
− (∑
j∈C
1
a
j
− ∑
j∈C
2
a
j

b) ∑
j∈L
2
y
j
− ∑
j∈N
2
\(C
2
∪L
2
)
x
j
≤ b
onde C
1
⊆ N
1
, C
2
⊆ N
2
s˜ao coberturas generalizadas definidas por

j∈C
1
a
j
− ∑
j∈C
2
a
j
> b onde L
2
= N
2
\ C
2
Exemplo 7: Assuma que a demanda de um determinado n´o ´e b = 5, e as capacidades
de fornecimento e os n´os de demanda s˜ao (13, 15, 8) e (9, 14, 10, 12), respectivamente. Em
seguida, o conjunto de restri¸c˜ao ´e como se segue:
x
1
+ x
2
+ x
3
− x
4
− x
5
− x
6
− 4x
7
≤ 5
x
1
≤ 13y
1
, x
2
≤ 15y
2
, x
3
≤ 8y
3
, x
4
≤ 9y
4
, x
5
≤ 14y
5
, x
6
≤ 10y
6
, x
7
≤ 12y
7
Fa¸ ca C
1
⊆ N
1
= {1, 2, 3}, C
2
⊆ N
2
= {4, 7}, L
2
⊆ (N
2
\ C
2
) = {5} com ∑
j∈C
1
a
j
= 36 e

j∈C
2
a
j
= 21. Ent˜ao a desigualdade
28
29
x
1
+ x
2
+ x
3
+ 3(1 − y
1
) + 5(1 − y
2
) − 21 − 10y
5
− x
6
≤ 5
ou equivalentemente,
x
1
+ x
2
+ x
3
− x
6
− 3y
1
− 5y
2
− 10y
5
≤ 18
´e um corte v´alido para este problema.
9.2 Localiza¸ c˜ao de F´abrica (Transporte de Carga-Fixa)
Considere o conjunto de restri¸ c˜ao seguinte do problema de transporte de carga-fixa
S = {(x, y) : ∑
j
x
ij
= a
i
, ∑
i
x
ij
≤ b
j
y
j
, x
ij
≤ min(a
i
, b
j
)y
j
, x ≥ 0, ybin´ario, i ∈ M, j ∈ N}
Um corte forte pode ser derivado como se segue:

j∈C

i∈K
j
x
ij
+ ∑
j∈C
(
˜
b
j
− ∑
j∈C
˜
b
j
+ ∑
i∈K
a
i
)
+
(1 − y
1
) ≤ ∑
i∈K
a
i
onde C ⊆ N ´e um subconjunto de localiza¸c˜oes, e uma cobertura de tal forma que

j∈C
˜
b
j
> ∑
i∈k
a
i
, K ⊆ M ´e um subconjunto de clientes, K
j
⊆ K ´e possivelmente um
menor subconjunto de K,
˜
b
j
= min(
˜
b
j
, ∑
i∈K
j
a
i
´e a capacidade ”efetiva”de localiza¸c˜ao.
Exemplo 8: Produtos s˜ao fabricados em quatro f´abricas para abastecer os clientes
das cinco cidades diferentes, como mostrado na Figura 9.1. As capacidades b
j
para as
quatro plantas s˜ao 30,20,40, e 30, respectivamente. As demandas das cinco cidades a
i
,
s˜ao 15,12,18,10,
e 16, respectivamente. O conjunto de todas as restri¸ c˜oes s˜ao
x
11
+ x
21
+ x
31
+ x
41
= 15
x
12
+ x
22
+ x
32
+ x
42
= 12
x
13
+ x
23
+ x
33
+ x
43
= 18
x
14
+ x
24
+ x
34
+ x
44
= 10
x
15
+ x
25
+ x
35
+ x
45
= 16
x
11
+ x
12
+ x
31
+ x
41
= 15
x
11
+ x
21
+ x
13
+ x
14
+ x
15
≤ 30y
1
x
21
+ x
22
+ x
23
+ x
24
+ x
25
≤ 20y
2
x
31
+ x
32
+ x
33
+ x
34
+ x
35
≤ 40y
3
x
41
+ x
42
+ x
43
+ x
44
+ x
45
≤ 30y
4
x
ij
≤ min(a
i
, b
j
)y
j
30
Figura 9.1 Constru¸ c˜ao de um corte para localiza¸c˜ao de f´abrica. Fonte: CHEN et al.
(2010)
Fa¸ ca K ⊆ M = {1, 2, 3, 4}, K
1
= {1, 2, 3}, K
2
= {2, 3} e K
3
= {3, 4}. Calcule

i∈K
a
i
= 15 + 12 + 18 + 10 = 55
˜
b
1
= min(b
1
, ∑
i∈K
1
a
i
) = min(30, 45) = 30,
˜
b
2
= min(b
2
, ∑
i∈K
2
a
i
) = min(20, 30) = 20,
˜
b
3
= min(b
3
, ∑
i∈K
3
a
i
) = min(40, 28) = 28,
Fa¸ ca C ⊆ N = {1, 2, 3}, (∑
j∈C
˜
b
j
= 78 > ∑
i∈K
a
i
= 55, ent˜aoC´eumacobertura), a desi-
gualdade, em seguida,
x
11
+ x
21
+ x
31
+ x
22
+ x
32
+ x
33
+ x
43
+ 7(1 − y
1
) + 5(1 − y
3
) ≤ 55
ou equivalentemente
x
11
+ x
21
+ x
31
+ x
22
+ x
32
+ x
33
+ x
43
− 7y
1
− 5y
3
≤ 43
´e um corte v´alido para o problema.
Cap´ıtulo10
ESTADO DA ARTE
No artigo de MARTIN (2001), discute-se as caracter´ısticas b´asicas do atual algoritmo
branch-and-cut para a solu¸ c˜ao de programas inteiros mistos. Percebe-se atualmente que,
embora a maioria das id´eias s˜ao simples e diretas, muitas vezes o pr´e-processamento ´e
muito importante para resolver certos programas mistos e inteiros. Observa-se tamb´em,
segundo o autor, que existem v´arias alternativas e melhores estrat´egias para sele¸ c˜ao do
n´o e de vari´aveis dentro do esquema de enumera¸ c˜ao branch-and-bound do que as escolhas
cl´assicas de selecionar algum n´o mais profundo na ´arvore e selecionar uma vari´avel mais
pr´oxima do meio dela.
MITCHELL (1999) diz em seu artigo que Branch-and-cut, em contraste com me-
taheur´ısticas, podem garantir otimalidade. Para um problema de programa¸ c˜ao inteira es-
truturada, o m´etodo branch-and-cut deve ser adaptado para o problema com uma sele¸ c˜ao
adequada dos planos de corte. Estes m´etodos s˜ao tamb´em ´uteis em geral para problemas
de programa¸ c˜ao inteira, onde as fam´ılias de planos de cortes geralmente s˜ao usados.
Em OLIVEIRA (2003) aborda-se o problema de Steiner com grupos, que consiste em
dado um grafo com custos nas arestas e uma cole¸ c˜ao de subconjuntos do conjunto de
v´ertices, encontrar um subgrafo que conecte pelo menos um v´ertice de cada conjunto
da cole¸ c˜ao e que tenha custo m´ınimo. O problema ´e uma generaliza¸ c˜ao do problema de
Steiner em grafos e surge naturalmente no desenvolvimento de circuitos VLSI. Apresenta-
se estudos feitos para o desenvolvimento de um algoritmo seguindo a estrat´egia branch-
and-cut para o problema.
A abordagem branch-and-cut, uma generaliza¸c˜ao de branch-and-bound (Land e Doig,
1960), segue uma s´erie de importantes trabalhos que contribuem por CROWDER et
al.. (1983), JOHNSON et al. (1985), VAN ROY e WOLSEY (1987), e HOFFMAN e
PADBERG (1991), todos estes citados em CHEN et al. (2010). Na verdade, o nome foi
dado pelos autores no ´ultimo artigo, que pretendiam resolver um exemplo IP 0-1 contendo
at´e 6000 vari´aveis bin´arias. JOHNSON et al. (2000) apresentam uma excelente pesquisa
sobre modelagem e resolu¸ c˜ao de programas inteiros mistos usando algoritmos b´asicos-LP.
MARCHAND et al. (2002) fornecem um tratamento completo de v´arios tipos de planos
de corte que s˜ao ´uteis ou potencialmente ´uteis na solu¸ c˜ao inteiro puro e programas inteiros
e mistos. CORDIER et al. (1999) descrevem um software MIP branch-and-cut chamado
bc − opt. Todos estes trabalhos tamb´em s˜ao citados em CHEN et al. (2010)
31
32
No cap´ıtulo 4, os cortes fracion´arios de Gomory (GOMORY, 1960 apud CHEN et
al. 2010) e Chv´atal-Gomory para programas inteiros puros s˜ao raramente aplicados e s˜ao
geralmente substitu´ıdo pelo corte inteiro misto de Gomory (GOMORY, 1960 apud CHEN
et al. 2010), mesmo para programas inteiros puros.
No cap´ıtulo 5, o corte inteiro misto de Gomory (GOMORY, 1960 apud CHEN et
al. 2010) na equa¸c˜ao (8) ´e o corte mais implementado para a maioria dos IPs e dos
MIP. Uma forma alternativa de este corte ´e obtido pela queda do dois primeiros termos
correspondentes as vari´aveis cont´ınuas x
j
em (8). Corte de arredondamento inteiro misto
´e devido a NEMHAUSER e WOLSEY (1988) apud CHEN et al. (2010).
No cap´ıtulo 6, coberturas mochila (CROWDER et al., 1983, WEISEMANTEL, 1997
apud CHEN et al. 2010) s˜ao os primeiros cortes para encontrar o uso extensivo em
solucionadores de finalidades gerais e tˆem sido usados com sucesso em c´odigos comerciais
por muitos anos. Coberturas GUB s˜ao devidos a GU et al. (1998) apud CHEN et al.
(2010).
Referˆencias Bibliogr´aficas
[1] Chen, D.; Batson, R. G.; Dang, Y. (2010): Applied Integer Programming: Mode-
ling and Solution, BRANCH-AND-CUT APPROACH., John Wiley and Sons, Inc.
[2] Martin, A. (2001): General Mixed Integer Programming: Computational Issues for
Branch-and-Cut Algorithms. Darmstadt, Germany.
[3] Martinhon, C. A. (2005): Algoritmos Aproximativos e Exatos em Otimizacao Com-
binatoria . Rio de Janeiro/RJ, Brasil.
[4] Mitchell, J. E. (1999): Branch-and-Cut Algorithms for Combinatorial Optimization
Problems. New York, USA.
[5] Oliveira, F. M. F. (2003): Estrategias para Solucao de Problemas de Otimizacao
Combinatoria.