You are on page 1of 4

Método Simplex simplificado

Guilherme H. Polo Gonçalves


Departamento de Informática
Universidade Estadual de Maringá (UEM) – Maringá, PR – Brasil
ggpolo@gmail.com

1. Introdução 6

A Otimização Linear se enquadra como ferra-


5
menta básica de Pesquisa Operacional para mo-
Restrição 2
delagem e resolução de problemas de otimização.
4 A
Para a resolução há diversos métodos, como o de
pontos interiores, elipsóide ou o simplex. Esse úl- C D Restrição 3
x2 3
timo, assunto desse trabalho, é um procedimento
algébrico para resolução de problemas de Otimi-
2 E
zação Linear.
Re
st
riç
1 ão
2. Conceitos base e exemplo geométrico 1

Antes de entender o método simplex, é necessário G F B


0
0 1 2 3 4 5 6
apresentar alguns termos e conceitos subjacentes.
x1
Dado um problema qualquer, modelado da se-
guinte maneira: Figura 1. Representação geométrica

maximizar f (x1 , x2 ) = x1 + 2x2


sujeito a Tomando x1 e x2 como eixos, as restrições de
x1 + x2 ≤ 4 não-negatividade limitam a representação ao pri-
x1 ≤2 meiro quadrante. Combinando a segunda res-
x2 ≤ 3 trição com a não-negatividade de x1 , e fazendo
e o equivalente para a terceira restrição obtemos
x1 , x2 ≥ 0 as respectivas retas na representação. Para ob-
ter a reta da restrição 1 fazemos algo seme-
Chamamos x1 e x2 de variáveis de decisão, lhante. Combina-se a primeira equação com a
f (x1 , x2 ) de função objetivo, as desigualdades não-negatividade de x1 , obtendo o ponto A =
nesse exemplo são as restrições do problema (0, 4). Em seguida o mesmo é feito com a não-
e a última linha apresenta as restrições de não- negatividade de x2 e obtém-se o ponto B = (4, 0).
negatividade. No exemplo acima queremos ma- A área em azul representa a região factível do
ximizar a função objetivo, solucionando o pro- problema, constituindo todas as soluções aceitas
blema modelado e definindo valores para as va- para o mesmo e é delimitada a partir da forma das
riáveis de decisão. restrições.
Podemos enumerar as restrições do problema Tendo a representação geométrica explicada,
de cima para baixo e, juntamente com as restri- falta determinar a solução ótima para o pro-
ções de não-negatividade, consegue-se chegar a blema. Para isso contamos com o seguinte
representação geométrica da figura 1. teorema:
forma aumentada do modelo:
Teorema 1. Se um problema de otimização linear
max z = x1 + 2x2
tem uma solução ótima, então existe um vértice
s.a
ótimo.
x1 + x2 + x3 =4
Com isso, basta encontrar os vértices perten- x1 + x4 =2
centes a região factível e calcular f (x, y) para cada x2 + x5 = 3
um1 . O maior (ou menor se fosse um problema
de minimização) destes valores é a solução ótima As restrições de não-negatividade são aumentadas
que procuramos. Um vértice é determinado por para conter x3 ≥ 0, x4 ≥ 0 e x5 ≥ 0.
duas retas. No caso da figura 1, temos 5 vérti- Com esse modelo aumentado é possível deter-
ces (em vermelho) na região factível. Os vértices minar uma solução inicial de forma trivial. Con-
G, C e F já são conhecidos, para determinar D siderando as variáveis x1 e x2 como 0, temos que
resolvemos o sistema de equações formado pelas x3 = 4, x4 = 2 e x5 = 5. Essa solução inicial
restrições 1 e 3 pois são as suas retas que se inter- é chamada de básica viável (BV), significando
sectam em D. Para encontrar E fazemos o mesmo que é uma solução factível em ponto extremo na
trabalho com as restrições 1 e 2. Calculando, en- forma aumentada. Ainda, as variáveis definidas
contramos que o vértice D = (1, 3) é ótimo, por- em 0 são chamadas de não básicas, enquanto que
tanto x1 = 1 e x2 = 3, e f (D) = 7. as demais de básicas. Aqui termina a preparação
para a aplicação do método simplex.
3. O método Simplex A resolução do modelo aumentado ocorre por
Problemas que requerem mais de duas variáveis meio de iterações. Antes do inicio de uma ite-
de decisão são mais difíceis de serem representa- ração é verificado se a solução BV atual não é
dos geometricamente, além disso a resolução na ótima. Realizar esse teste equivale a verificar se
forma geométrica é muito custosa computacional- existem variáveis na função objetivo com coefici-
mente. De forma a amenizar esses problemas, uti- entes positivos, se existir pelo menos uma, então,
lizamos o método simplex. Mais algumas nota- a solução atual não é ótima. Após essa verificação
ções são introduzidas antes de iniciarmos a des- falhar, inicia-se uma iteração. Todas as iterações
crição desse método. do simplex são divididas em 3 passos:
De forma a realizar o processo de forma efi- 1. Escolher a variável não básica com coe-
ciente, convertemos as restrições de desigualda- ficiente mais positivo em z para entrar no
des do problema para restrições de igualdade. conjunto de variáveis básicas;
Nessa tarefa, variáveis de folga são introduzi- 2. Determinar qual variável básica sairá por
das de forma a manter a equivalência das equa- meio do teste da razão mínima;
ções. Relembrando a primeira restrição no exem- 3. Obter uma nova solução BV e reescrever
plo modelado acima: x1 + x2 ≤ 4, podemos fa- as restrições na forma apropriada para eli-
zer: x1 + x2 − 4 ≤ 0, e multiplicando por −1: minação gaussiana.
−x1 − x2 + 4 ≥ 0. Nesse ponto introduzimos uma
variável de folga x3 , onde −x1 − x2 + 4 = x3 e Os passos 2 e 3 merecem explicações. To-
x3 ≥ 0. Reorganizando, obtemos: x1 + x2 + x3 = 4. mando o modelo aumentado acima, verifica-se
De forma semelhante trabalhamos sobre as de- que x2 apresenta o coeficiente mais positivo na
mais restrições, resultando no que é chamado de função objetivo (2 > 1), ou seja, x2 é a variá-
vel que entra. Para realizar o teste da razão mí-
1
Isso é uma simplificação nima verificamos quanto cada restrição permite
que x2 cresça. Naquela que permitir menor cres- z = 6 nesse momento. Reescrevendo a nova fun-
cimento teremos uma variável básica que será es- ção objetivo na forma: z = x1 − 2x5 + 6, verifica-
colhida para sair do conjunto de variáveis básicas. se que o teste de otimalidade ainda obtém sucesso
Aplicando o teste da razão mínima garantimos (coeficiente de x1 é positivo) e portanto o processo
que nenhuma variável se torne negativa. Conside- continua.
rando que x1 = 0, da primeira restrição obtemos:
x3 = 4 − x2 ∴ x2 ≤ 4; a segunda restrição não
4. Restrições em outras formas
envolve x2 e ela não entra nesse teste; na terceira
restrição: x5 = 3 − x2 ∴ x2 ≤ 3. A última restri- Até o momento o foco foi dado a inequações na
ção permite o menor crescimento, portanto x5 é a forma ai1 x1 + · · · + ain xn ≤ bi . Porém, é possí-
variável básica que sai e concluímos a explicação vel que o modelo original contenha igualdades ou
do passo 2. inequações de maior-igual. No primeiro caso, se
O passo 3 é necessário para a verificação do não alterarmos o modelo, uma solução inicial não
teste de otimalidade antes de uma possível pró- é trivialmente obtida. No segundo, a variável de
xima iteração. Para isso, reescrevemos as restri- folga introduzida teria sinal negativo e não satis-
ções e a função objetivo numa forma apropriada faria a condição de não negatividade quando utili-
para a eliminação gaussiana. Basicamente, to- zada na solução inicial. Esses problemas são tra-
mando a variável básica que sai (no caso x5 ) e tados nessa seção.
variável básica que entra (x2 ), replicamos os co- Uma restrição de igualdade qualquer poderia
eficientes da coluna de x5 na coluna de x2 . Uti- ser reescrita utilizando duas inequações, uma de
lizamos as operações elementares sobre sistemas menor-igual e outra maior-igual. Mas ao fazer
lineares para fazer essa tarefa. Tomamos como isso, o segundo problema (mencionado anterior-
pivô aquela restrição que apresentar coeficiente 1 mente) passa a existir aqui. A solução utilizada
em x5 , dividindo a mesma pelo coeficiente de x2 é o emprego de variáveis artificiais. Nesse caso,
naquela mesma linha. Após isso, trabalhos com uma restrição na forma ai1 x1 +· · ·+ain xn = bi seria
as outras linhas sobre essa pivô. Como feito ante- reescrita como: ai1 x1 + · · · + ain xn + xn+1 = bi . En-
riormente, seguimos com a resolução do exemplo tretanto, o simplex, como descrito acima, precisa
dado. As restrições 2 e 3 já estão de acordo com de um “acréscimo” para permitir a resolução de
o nosso requisito, x5 e x2 apresentam os mesmos modelos com variáveis artificiais. Entre as formas
coeficientes nessas equações. A equação 1 precisa estudadas é destacado o método do grande nú-
ser reescrita, e assim a operação Eq.(1) − Eq.(3) mero (Big M), onde tal variável é introduzida com
é realizada. A equação 0, correspondendo a fun- o coeficiente M na função objetivo. Esse símbolo
ção objetivo, também precisa ser reescrita. Antes M representa um número muito grande, e nega-
de aplicar qualquer operação nela, observamos: tivo no caso de problemas de maximização, fa-
z = x1 + 2x2 ∴ z − x1 − 2x2 = 0 e, então, fazemos: zendo com que uma variável artificial nunca seja
Eq.(0) + 2 × Eq.(1). Ao final dessas operações escolhida no passo 1 das iterações do método sim-
obtemos um novo conjunto de restrições e a nova plex. Para aplicar o método Big M é necessário
função objetivo: apenas alterar a parte inicial do simplex acima,
z −x1 + 2x5 = 6 fazendo com que tais variáveis sejam eliminadas,
x1 + x3 − x5 = 1 através da aplicação de operações elementares so-
x1 + x4 =2 bre sistemas lineares, da função objetivo. Um in-
x2 + x5 = 3 dicativo de se ter chegado a solução ou não, nesse
caso, é o desaparecimento de M no valor da fun-
Ou seja, x1 e x5 são variáveis não básicas e, assim, ção objetivo.
Restrições na forma ai1 x1 + · · · + ain xn ≥ bi 6. Conclusão
são tratadas agora. Inicialmente introduzimos
Entre os métodos existentes para resolução de
uma nova variável da seguinte forma: ai1 x1 +
problemas de otimização linear, destacamos ra-
· · · + ain xn − bi ≥ 0, sendo xn+1 ≥ 0 fazemos
pidamente a forma geométrica seguida pelo sim-
ai1 x1 + · · · + ain xn − bi = xn+1 e, com isso, che-
plex. A primeira apresenta maior utilidade para
gamos a: ai1 x1 + · · · + ain xn − xn+1 = bi . A va-
problemas de exemplo, sendo capaz de demons-
riável xn+1 é chamado de variável excedente por
trar os conceitos subjacentes ao método simplex.
subtrair o excedente do lado esquerdo no lado di- O segundo possibilita a resolução de problemas
reito. Após esse passo, uma variável artificial é de forma eficiente em computadores.
introduzida seguindo o paragrafo anterior.
Inicialização, teste de otimalidade e iterações
5. Outras situações com três passos resumem o funcionamento do
simplex. De acordo com as adaptações discutidas,
Para concluir esse trabalho, mais dois casos são
restrições na forma de inequações maior-igual ou
discutidos. O primeiro é o fato de também existir
de igualdades requerem o uso de variáveis artifi-
problemas de minimização, porém desde o inicio
ciais. Consequentemente, a inicialização do mé-
o modelo foi de maximização. O segundo diz res-
todo é ajustada de acordo com o funcionamento
peito a variáveis negativas na modelagem.
de um método que faz o tratamento desse tipo de
O método simplex aplica-se a problemas de variável. Mencionamos o método do grande nú-
maximização, porém a conversão de um problema mero, que insere as variáveis artificias na função
de minimização para esse é simples. Dada uma objetivo acompanhada de um coeficiente muito
função objetivo qualquer: grande (ou muito pequeno na minimização) e em
n
X seguida as remove com a aplicação de operações
min z = cjxj elementares sobre sistemas lineares.
j=1

temos que ela é equivalente a:


n
X
max −z = − cjxj
j=1

Tratamos a segunda situação agora. Há a pos-


sibilidade de existirem variáveis com permissão
para assumirem valores negativos. Sendo L j uma
constante negativa e x j ≥ L j , prosseguimos da se-
guinte maneira:

x −L ≥0
|j{z }j
x′j

x′j = x j − L j
x j = x′j + L j
Sendo assim, trocamos todas as ocorrências de
x j no modelo por x′j + L j e garantimos a não-
negatividade.