for uma solução básica viável
3.6. O MÉTODO SIMPLEX 41 2 A produção de armários, inicialmente nula, pode então tornar-se positiva, provo-
cando assim um aumento do lucro total.
Com base nestas duas alterações simultâneas no lucro; uma redução e um aumento; o 10 Critério pode ser adaptado como:
• A variável x2 (produção de armários) deverá se tornar positiva se o resultado no
lucro for positivo. Ou seja, se:
O Aumento no lucro L provocado pelo aumento de x2 denotado por Ax2
for maior que
A Redução no lucro L provocado pela diminuição de x1 denotada por Rx1
De modo equivalente, devemos dizer que a variável x2 (produção de armários)
deverá se tornar positiva se a contribuição líquida para o lucro dada por x2 for
positiva, ou seja, se:
Contribuição líquida dada por x2 = Ax2 − Rx1 > 0. 20 Critério (Adaptação do 10)
• Ao invés de se fazer positiva a variável que tem o maior coeficiente positivo na
função objetivo, faz-se positiva se sua contribuição líquida for positiva.
Após calcular a contribuição líquida para o lucro total dada pela variável x2 quando
a mesma passa de x2 = 0 para x2 = 1 (e consequêntemente x1 = 4 para x1 = 3.5) é
possível verificar que a mesma é negativa em uma unidade, ou seja, que:
Contribuição líquida dada por x2 = 4.(redução em x1 quando x2 = 1) + 1.(variação em x2)
= 4.(−0.5) + 1.(1) = −1.
Sendo assim, podemos concluir que não há vantagem em se produzir armários e a solução ótima para o problema da marcenaria recomenda que sejam produzidas:
o que resulta num lucro máximo L = f (x∗
1, x ∗ 2) = 4x ∗ 1 + x ∗ 2 = .
3.6.2 Idéia Resumida sobre o Método Simplex
O método simplex consiste de um procedimento matemático e computacional sistemá- tico e eficiente para a resolução de problemas de programação linear (PPL). O processo de solução de um PPL por este método basea-se na resolução de sistemas de equações lineares considerando as seguintes idéias/questões:
1) Qual o sistema que deve ser resolvido?
2) Qual o próximo sistema a ser resolvido fornecerá uma solução melhor que a anterior?
3) Como identificar uma solução ótima, uma vez que a tenhamos encontrado?
3.6.3 Método Simplex em Tabelas (Tabular)
As operações do método simplex podem ser organizadas em tabelas chamadas tabelas simplex . Embora o método simplex tabular não seja a forma ideal de se implementar
em um computador, essa organização é interessante para manipular problemas peque- nos e rapidamente compreender como o método funciona.
De modo geral, o método simplex pode ser resumido através dos seguintes passos:
Passo 1: Para cada desigualdade, introduzir as variáveis de folga (obter a forma padrão
do PPL).
Passo 2 : Montar um quadro para os cálculos:
– Colocar na 1a. linha os valores simétricos dos coeficientes da função objetivo, e
– Colocar os coeficientes das variáveis (com os respectivos sinais) associados às restrições do problema.
Passo 3 : Estabelecer uma solução básica inicial:
– Usualmente atribui-se valor zero às variáveis originais e acha-se valores po- sitivos para as variáveis de folga.
Passo 4: Escolher a próxima variável a entrar na base:
– Escolhe-se a variável não-básica que fornece a maior contribuição líquida para o aumento da função-objetivo (a que tem maior valor negativo na 1a. linha da tabela).
3.6. O MÉTODO SIMPLEX 43
Condição de otimalidade - se todas as variáveis que estão fora da base tiverem coeficientes da função-objetivo nulos ou positivos, a solução atual é ótima. Se alguma dessas variáveis tiver coeficiente nulo, significa que ela pode ser introdu- zida sem aumentar o valor da função-objetivo. Isso quer dizer que temos outra solução ótima, com o mesmo valor da função objetivo.
Passo 5 : (Condição de viabilidade) Escolher a variável que deve deixar a base, reali-
zando o seguinte procedimento:
– Divide-se os elementos da última coluna pelos correspondentes elementos positivos da coluna da variável que vai entrar na base.
Obs: Caso não haja elemento algum positivo nessa coluna, o processo deve parar, já que a solução seria ilimitada.
– O menor quociente indica a equação cuja respectiva variável básica deverá ser anulada, tornando-se variável não-básica.
Passo 6 : Usando operações elementares válidas com as linhas da matriz, transformar a
matrix representada na tabela simplex de modo a encontrar a nova solução básica do problema. Para isto:
– A coluna da variável básica deverá se tornar um vetor identidade onde o elemento 1 aparece na linha correspondente à variável que está sendo anulada (que está passando de básica para não-básica).
Passo 7 : Retornar ao Passo 4 para iniciar outra iteração.
Exemplo 3.6.1. Resolva o Problema da Marcenaria (que produz mesa e armário)
pelo método simplex (tabular).
Exemplo 3.6.2.
Resolva o seguinte PPL pelo método simplex (tabular) e gráfico, observando que o método simplex é eficiente no sentido de buscar a solução ótima através de um número mínimo de iterações (percorrendo um número mínimo de vértices).
Maximizar Z = 3x1 + 5x2 sujeito a x1 ≤ 4 x2 ≤ 6 3x1 + 2x2 ≤ 18 x1 ≥ 0, x2 ≥ 0. Resposta: (x∗ 1, x ∗ 2, x ∗ 3, x ∗ 4, x ∗ 5) = (2, 6, 2, 0, 0). Valor ótimo Z = 36.
3.6.4 Exercício
Resolva alguns dos PPLs até aqui apresentados através do método Simplex utilizando o software TORA e a função SOLVER do Excel.
3.6.5 Solução Inicial Artificial
Como já é possível observar, problemas de PL nos quais todas as restrições são (≤) com
lados direitos não negativos oferecem uma solução básica inicial viável conveniente
na qual todas as variáveis são de folga mas isso não acontece com modelos que
envolvem restrições (=) e/ou (≥).
O procedimento para iniciar a resolução de problemas de PL ‘mal comportados‘ com restrições (=) e/ou (≥) é usar variáveis artificiais que desempenham o papel de
folgas na primeira iteração e então descartá-las legitimamente em iterações posteriores. Dois métodos fortemente relacionados são apresentados aqui: o método do M-grande
e o método das duas fases.
Método do M-grande
O método do M-grande começa com um problema de PL na forma de equações. Se a equação i não tiver uma folga (ou uma variável que possa desempenhar o papel de
uma folga), uma variável artificial, Ri, é adicionada para formar uma solução inicial
semelhante à solução básica na qual todas as variáveis são de folga. Contudo, como as variáveis artificiais não são parte do modelo original, recebem punições muito altas na função objetivo, o que (a certa altura) as força a ter o valor igual a zero na solução ótima. Isso sempre ocorrerá se o problema tiver uma solução viável. A regra a seguir mostra como a punição é designada nos casos de maximização e minimização.
Regra de penalização das variáveis artificiais:
Dado M , um valor positivo suficientemente alto (em termos matemáticos, M → ∞), o coeficiente na função objetivo de uma variável artificial representa uma punição
adequada se:
Coeficiente na função objetivo da variável artificial =
−M, em problemas de maximização M, em problemas de minimizaçãoVeja agora como funciona o método do M-grande através do modelo de PL abaixo que não apresenta uma solução básica inicial conveniente:
Exemplo 3.6.3. min z = 4x1 + x2 sujeito a 3x1 + x2 = 3 4x1 + 3x2 ≥ 6 x1 + 2x2 ≤ 4 x1 ≥ 0, x2 ≥ 0. Resp.: (x∗ 1, x ∗ 2) = (2/5, 9/5). Valor ótimo: z = 17/5.
Comentário: A utilização da punição M tem por objetivo forçar que os valores
3.6. O MÉTODO SIMPLEX 45