Nosso objetivo nesta seção é demonstrar que a complexidade de tempo do método simplex no pior caso não é polinomial. Para isto, nos basearemos no problema de Klee e Minty [7].
Para mostrarmos que o algoritmo simplex não é um algoritmo polinomial basta encontrarmos uma família de instâncias para a qual ele faz um número exponencial (no tamanho do problema de PL) de mudanças na base, isto é, desejamos encontrar uma sequência exponencial de soluções básicas viáveis 1 2
, , ..., k
x x x tais que i
x e i 1
x+ são adjacentes e satisfazem c xT i+1<c xT i, i=1, ...,k−1.
Como vimos no capítulo anterior, as sbv’s de um problema de PL correspondem aos pontos extremos do poliedro que representa o conjunto de soluções viáveis. Além disso, sbv’s não degeneradas adjacentes de um problema de PL correspondem a pontos extremos unidos por um segmento de reta (face unidimensional) do poliedro. Por exemplo, (0, 0, 1) e (0, 1, 1) na Figura 4.1 (a) são adjacentes.
Suponhamos que a direção de diminuição do vetor custo é para cima. Desejamos descobrir uma sequência exponencial de pontos extremos que são um adjacente ao próximo, e cada ponto extremo forneça um valor para a função objetivo melhor do que o ponto extremo anterior na sequência.
Precisaremos então de um poliedro que tenha um número exponencial de pontos extremos no tamanho do PPL. Tomaremos como exemplo o cubo
0≤xj ≤1, j=1, 2, 3, mostrado na Figura 4.1 (a).
O cubo tridimensional possui 6 lados (faces) e 8 pontos extremos (vértices). Em geral, o cubo d-dimensional definido pelas desigualdades
0≤xj ≤1, j=1, 2, ...., ,d
possui 2d faces, sendo uma para cada inequação, e 2d vértices, sendo um para cada disposição do conjunto { ,x x1 2, ....,xd}, para xj∈{0, 1}, j=1, 2, ...., .d
Agora, iremos construir um poliedro similar ao cubo, definido pelas seguintes inequações: 1≥ ≥x1
ε
1 1 1−εxj− ≥xj ≥εxj−, j=2, 3, ..., ,d (4.1) onde 0 1 2 ε < < . (a) (b)Figura 4.1 – Cubo de Klee e Minty.
O poliedro (4.1) é uma perturbação do cubo d-dimensional. Um exemplo tridimensional (para d = 3) é apresentado na Figura 4.1 (b). Nessa figura também é apresentada uma “longa” sequência de vértices adjacentes diminuindo o custo, ou seja, melhorando o valor da função objetivo. Nosso objetivo aqui é demonstrar a existência dessa sequência.
Passaremos agora (4.1) para o formato padrão. Para isso, adicionaremos d variáveis de folga e d variáveis de excesso, obtendo m = 2d e n = 3d. Nosso objetivo será maximizar xd
(ou minimizar −xd). O PPL completo no formato padrão é o seguinte problema de otimização:
1 1 1 1 1 1 1 0 1, 2, ..., , , 0, 1, ..., . d j j j j j j j j j minimizar x sujeito a: x r x s x x r x x s j d x r s j d
ε
ε
ε
− − − − = + = − − = + + = = ≥ = (4.2)O próximo lema caracteriza o conjunto de soluções básicas viáveis de (4.2); conforme Papadimitriou e Steiglitz [10].
Lema 4.1 O conjunto das variáveis básicas de (4.2) é um subconjunto de
{
x1, ...,xd, ,...,r1 r sd, 1,...,sd}
contendo todos os x’s e exatamente um dos rj, sj, para cada j = 1, ..., d. Além disso, todas as sbv’s são não degeneradas.Demonstração Lembremos que 0 1 2
ε
< < . Como x1≥ε e xj+1≥εxj, j = 1, ..., d – 1, sempre
teremos em qualquer solução viável xj >0, j = 1, ..., d. Então, todas as bases viáveis de (4.2) devem conter as d colunas correspondentes aos x’s.
Suporemos agora que rj =sj =0 para algum j. Se j = 1, então teríamos
1 1 1
x =ε e x = , o que é absurdo. Se j > 1, então pela terceira restrição de (4.2) obtemos
1
j j
x =εx − e pela quarta restrição obtemos xj+εxj−1= ⇔1 2εxj−1=1. Pela segunda e quarta restrições de (4.2) temos que xj−1≤1. Como 1
2
ε < , temos também que 2ε <1. Portanto a igualdade 2εxj−1=1 é impossível. Logo, concluímos que qualquer base viável deve conter uma das colunas correspondentes r e j s para cada j = 1, ..., d, obtendo assim j m = 2d colunas básicas. Notemos também que tais sbv’s não podem ter componentes com o valor igual a zero, e, portanto elas são todas não degeneradas. □
Denotaremos uma sbv de (4.2) por xS, onde S é o subconjunto de {1, ..., d} que
Os próximos lemas nos serão úteis na demonstração de que o método simplex leva tempo exponencial para resolver o PPL (4.2); conforme Papadimitriou e Steiglitz [10].
Lema 4.2 Suponhamos que d∈S, mas d∉S'; então xdS >xdS'. Além disso, se S'= −S { }d ,
'
1 .
S S
d d
x = −x
Demonstração Uma vez que d∈S, temos que sd =0 e a quarta restrição de (4.2) fornece
1 1 S S d d x = −
ε
x − . Temos que xdS−1≤1 e 1 2 ε < , logo 1 2 S dx > . Por outro lado, d∉S', logo temos
0
d
r = e a terceira restrição em (4.2) fornece ' '1 1
2
S S
d d
x =εx − < . Portanto, xdS >xdS'. Passemos agora à segunda parte. Notemos que se S=S'∪{ }d , então xdS−1=xdS−'1. Temos então
' '
1 1 1
S S S S
d d d d
x =
ε
x − =ε
x − = −x . □Lema 4.3 Sejam os subconjuntos de {1, ..., d} enumerados de tal modo que
1 2 ... S2d.
S S
d d d
x ≤x ≤ ≤x Então as inequações são estritas, e as sbv’s Sj
x e Sj 1
x + são adjacentes para j = 1, ..., 2d−1.
Demonstração Usaremos aqui indução sobre d. Para d = 1 temos duas sbv’s:
(
x r s1, ,1 1) (
=ε
, 0, 1−ε)
e(
x r s1, ,1 1) (
= 1, 1−ε
, 0)
. As duas sbv’s possuem x diferentes e elas 1certamente são adjacentes. Para o passo da indução, suponhamos que o lema é estabelecido para o cubo d-dimensional, e sejam S1, ...,S a enumeração apropriada. Notemos que 2d
1, ..., 2d
S S são também subconjuntos de {1, ..., d + 1}, e que Sj1 Sj
d d
x + =
ε
x , j = 1, ..., 2d. Pelahipótese de indução temos que 1 2 2
1 1 ... Sd1.
S S
d d d
x + <x + < <x + Consideremos os subconjuntos restantes de {1, ..., d + 1}, S′ =j Sj ∪ +{d 1}, j = 1, ..., 2d. Temos, pelo Lema 4.2, que
2 1 1 d j S S d d x ′+ >x + e Sj1 1 Sj1 d d x ′+ = −x + . Portanto 1 2 2 1 1 ... Sd1 Sd1 ... 1 S S d d d d x + < <x + <x ′+ < < x ′+ .
Pela hipótese de indução Sj
x e Sj 1
x + são adjacentes, e então Sj
x ′ e Sj 1
x ′+
também o são. Além disso, S2d
x e S2d
x ′ são adjacentes também, desde que a última base resulte da anterior adicionando rd+1 e retirando sd+1. □
Agora estamos prontos para demonstrar o principal resultado desta seção; conforme Papadimitriou e Steiglitz [10].
Teorema 4.1 Para todo d > 1 há um PPL com 2d equações, 3d variáveis, e coeficientes
inteiros com valor absoluto limitado por 4, tal que o algoritmo simplex pode levar 2d−1
iterações para encontrar a solução ótima.
Demonstração Tomemos 1 4
ε = e multipliquemos todas as equações de (4.2) por 4, de modo
que todos os coeficientes são inteiros. Uma vez que o objetivo de (4.2) é maximizar xd, o Lema 4.3 garante a existência de uma sequência exponencial de sbv’s adjacentes com valor para xd crescente. Finalizamos a demonstração. □
Tratamos nesta seção do comportamento do método simplex no pior caso, e não nos atentamos ao comportamento médio, que representa a complexidade média assintótica. Por isso, deve ser enfatizado que o número de iterações requeridas para encontrar a solução ótima de um PPL na prática usando o método simplex geralmente é menor do que o número de iterações requeridas no exemplo de Klee e Minty.
CAPÍTULO V
UMA INTRODUÇÃO À PROGRAMAÇÃO LINEAR INTEIRA
Nosso objetivo neste capítulo é definir o problema de programação linear inteira (PLI) e o problema de programação linear inteira 0-1.