Proglinear3 PDF
Proglinear3 PDF
Programação Linear
Em todos os problemas anteriores, usamos os sinais () e () nas inequações das
restrições e depois resolvemos o problema assumindo que todas variáveis eram não
negativas. Nesta secção vamos definir dois tipos especiais de variáveis: as variáveis de
folga e de excesso, associadas com as restrições da forma e respectivamente,
também faz-se uma introdução do conceito de variáveis não restritas, cujo valor pode ser
positivo, zero ou negativo.
Variável de Folga
Introduz-se uma variável de folga, para cada restrição do tipo no primeiro membro da
inequação e transfoma-se esta em equação.
Variável de Excesso
Restrições do tipo , normalmente referem-se a quantidade mínima necessária que deve
ser utilizada na combinação de diferentes actividades. A introdução de uma variável de
excesso numa inequação, transforma esta em equação.
A variável x3 pode ser de excesso ou folga. Em termos matemáticos a variável não restrita
é substituida por duas variáveis não negativas: x3 = x3+ - x3- onde x3+ ; x3- 0.
Se x3+ > 0 e x3- = 0 então x3+ é variável de folga;
Se x3- > 0 e x3+ = 0 então x3- é variável de excesso;
Se x3+ > 0 e x3- > 0, o problema de propgramação linear não tem solução.
c) Max Z = 2x1 + 3x2 +5x3 Max Z = 2x1 + 3x2 + 5x3+ - 5x3- + 0x4 + 0x5 -Ma1
x1 x 2 x3 5
x1 x 2 x3 x3 x 4 0 x5 0a1 5
6 x 7 x 9 x 4
Sujeito. à 1 2 3 Sujeito à
6 x1 7 x 2 9 x3 9 x3 0 x 4 x5 0a1 4
x1 3 x 2 4 x3 10
x1 3 x 2 4 x3 4 x3 0 x 4 0 x5 a1 10
x1 , x 2 0; x3 R
x1 , x 2 , x3 , x3 , x 4 , x5 , a1 0
Até agora, foi apresentado o método gráfico para a resolução dos problemas de
programação linear nos quais só tinhamos duas variáveis de decisão. Quando o número
das variáveis aumenta, este método ainda que seja correto torna a procura de solução
muito trabalhosa. Uma alternativa deste método é a utilização do método simplex.
O Método Simplex foi apresentado pelo G.Danztig (1947), como um método prático para
a resolução dos problemas de programação linear. O Simplex pode ser descrito como um
processo matricial para resolver problemas de programação linear na forma padrão.
Da tabela inicial, nota-se que as variáveis básicas (base) são todas variáveis de folga
ou de excesso;
Os coeficientes – ci, são opostos da função objectivo e são importantes na indicação
da coluna pivô, por isso são chamados indicadores da coluna pivô;
O elemento no canto inferior direito é zero, ele corresponde ao valor da função
objectivo inicial.
Se a tabela não tem nenhum indicador negativo (max) ou positivo (min), esta é uma
tabela terminal e não tem pivô.
3. Cálculo da nova tabela simplex. Seja T1 a tabela simplex com n linhas e m+n
colunas, cujo o elemento pivô é aij da matrix A. Uma nova tabela T2 é calculada a
partir da tabela T1, usando operações elementares sobre as linhas da matriz A de tal
forma que apareça um “1” na posição pivô e zeros “0” nas outras posições da coluna
pivô, i.é:
Divide-se cada elemento da linha pivô li da tabela T1 pelo elemento pivô aij, obtendo-
se a correspondente linha na tabela T2 (li’).
1
li' * li
aij
Se a coluna pivô de T1 é denotada por xi, então a correspondente coluna de T2, será
denotada também por xi;
Cada uma das outras linhas lk’ da tabela T2 é obtida subtraindo o múltiplo conveniente
da linha li’ à linha lk, onde k = 1,n.
l k' l k aki * li '
4. Interpretação da tabela terminal. Depois de tantas repetições das etapas (2) e (3),
chega-se a uma tabela terminal, a qual não tem nenhum indicador de pivô negativo
(max) ou positivo (min).
Passo 4. Se a tabela simplex inicial tiver algum valor negativo na linha da função
objectivo e na coluna correspondente haver algum valor positivo, determinar o elemento
pivô e realizar as operações necessárias para obter a nova tabela;
Passo 5.. Repetir o processo do passo 4 até que todos os indicadores da linha z sejam
positivos. Assim chega-se à tabela terminal e deve-se interpretar a solução obtida .
Exemplo 2.8. Resolver o seguinte problema de programação linear pelo método simplex.
Maximizar Z = x1 + 9x2 + x3
x1 2 x 2 3x3 9
Sujeito à 3x1 2 x 2 2 x3 15
x , x , x 0
1 2 3
Resolução
O problema já está na forma canônica, portanto, vai-se introduzir as variáveis de folga.
Maximizar Z = x1 + 9x2 + x3 + 0x4 + 0x5
x1 2 x 2 3x3 1x 4 0 x5 9
Sujeito à 3x1 2 x 2 2 x3 0 x 4 1x5 15
x , x , x , x , x 0
1 2 3 4 5
Base x1 x2 x3 x4 x5 bi
x4 1 2 3 1 0 9 9/2= 4.5 min
x5 3 2 2 0 1 15 15/2=7.5
Z -1 -9 -1 0 0 0
1a Iteração
base x1 x2 x3 x4 x5 bi
x2 1/2 1 3/2 1/2 0 9/2 l1’ = ½*l1
x5 2 0 -1 -1 1 6 l2’=l2 - 2l1’
Z 7/2 0 25/2 9/2 0 81/2 l3’= l3+9l1’
Resolução
Max Z = 30x1 + 50x2 + 0x3 + 0x4 + 0x5
2 x1 1x 2 x3 0 x 4 0 x5 16
1x 2 x 0 x x 0 x 11
1 2 3 4 5
Suj. à
1x1 3x 2 0 x3 0 x 4 x5 15
x1 , x 2 , x3 , x 4 , x5 0
Resolução
Maximizar Z = 4x1 + 2x2 + 3x3 + 0(x4+x5+x6)
x1 x 2 x3 x 4 0 x5 x6 11
2 x 3x x 0 x x 0 x 20
1 2 3 4 5 6
Sujeito à
1x 3 x 2 2 x 3 0 x 4 0 x 5 x 6 20
x1 , x 2 , x3 , x 4 , x5 , x6 0
O processo iterativo do método simplex sempre exige uma solução básica inicial a partir
da qual se busca uma solução óptima. Nos problemas de maximização esta solução básica
inicial era formada pelas variáveis de folga, já que as restrições eram do tipo ( ). Quando
as restrições são do tipo () ou (=), não existe essa solução básica inicial.
Vejamos:
Conclusão:
Para resolver este tipo de problemas são introduzidas algumas modificações nas equações
das restrições em seguida pode se usar o procedimento dual, os métodos de duas fases,
de grande M e o Dual simplex, que são modificações do método simplex directo.
Resolução
Minimizar W = 16x1 + 12x2 + 5x3 + 0x4 + 0x5 +0a1+ 0a2