Академический Документы
Профессиональный Документы
Культура Документы
PROGRAMAÇÃO LINEAR
(CONTINUAÇÃO)
Conjunto
de
soluções
0 x1
SOLUÇÃO ADMISSÍVEL
Recapitulando
Uma solução admissível é uma solução que satisfaça também as
restrições de não-negatividade.
x2
Conjunto de
soluções
admissíveis
0 x1
SOLUÇÃO BÁSICA ADMISSÍVEL
Recapitulando
Teorema Fundamental
Considere-se um problema de PL na forma canónica. Os pontos
extremos do conjunto de soluções admissíveis coincidem com as
soluções básicas admissíveis.
x2
SBA
0 SB x1
SOLUÇÃO DEGENERADA
Uma solução degenerada é uma solução básica admissível, que
satisfaça também xi=0, para iϵ{1,2,…, n}.
x2 Solução Degenerada
SBA
0 SB x1
FORMAS CANÓNICA E STANDARD
Recapitulando
Forma standard
Forma Canónica (ou normalizada)
max z = cTx max z = cTx
s.a: s.a:
Ax ≤ b Ax = b
x ≥ 0 x ≥ 0
s.a: s.a:
Ax ≥ b Ax = b
x ≥ 0 x ≥ 0
MÉTODO SIMPLEX
BREVE RESENHA HISTÓRICA
Em 1946 Dantzig era consultor para a US Air
Force Comptroller no Pentágono.
x1, x2 ≥ 0
MÉTODO SIMPLEX
Forma standard (ou normalizada)
0 = –1x1 – 3x2 +z
100 = 1x1 + 4x2 + 1x3 + 0x4 + 0x5
60 = 1x1 + 2x2 + 0x3 + 1x4 + 0x5
50 = 1x1 + 1x2 + 0x3 + 0x4 + 1x5
x1, x2, x3, x4, x5 ≥ 0
MÉTODO SIMPLEX
Encontrar uma SBA inicial
0 = –1x1 – 3x2 +z
100 = 1x1 + 4x2 + 1x3 + 0x4 + 0x5
Matriz
60 = 1x1 + 2x2 + 0x3 + 1x4 + 0x5 identidade
SBA’s: n=5
m=3 3 variáveis básicas
n – m = 5 – 3 = 2 2 variáveis não básicas
MÉTODO SIMPLEX
Escolhendo x3, x4 e x5 como variáveis básicas e x1 e x2
como variáveis não básicas:
Tem-se a base: 1 0 0
B 0 1 0
0 0 1
A solução básica encontrada é admissível (SBA) :
1 0 0 x3 100 x3 100 x1 0
0 1 0 x 60 x 60 x 0
4 4 2
0 0 1 x5 50 x5 50 x3 100
x4 60
x1 0, x2 0 x5 50
MÉTODO SIMPLEX
0 = –1x1 – 3x2 +z
100 = 1x1 + 4x2 + 1x3 + 0x4 + 0x5
60 = 1x1 + 2x2 + 0x3 + 1x4 + 0x5
50 = 1x1 + 1x2 + 0x3 + 0x4 + 1x5
x1, x2, x3, x4, x5 ≥ 0
0 = –1x1 – 3x2 +z
100
x2 25 Valor máximo que x2 pode tomar de forma
4 a que a 1ª igualdade seja verificada!
MÉTODO SIMPLEX
Qual o valor máximo que x2 pode ter na 2ª Restrição?
A igualdade tem de
continuar a ser
verificada!
aumenta diminui
60
x2 30 Valor máximo que x2 pode tomar de forma
2 a que a 2ª igualdade seja verificada!
MÉTODO SIMPLEX
Qual o valor máximo que x2 pode ter na 3ª Restrição?
A igualdade tem de
continuar a ser
verificada!
aumenta diminui
50
x2 50 Valor máximo que x2 pode tomar de forma
1 a que a 3ª igualdade seja verificada!
MÉTODO SIMPLEX
3ª restrição
2ª restrição
1ª restrição
100 60 50 100
x2 min , , 25
4 2 1 4
Valor máximo que a variável x2
pode tomar de forma a verificar
todas as restrições na igualdade
Valor máximo que a
variável x2 pode tomar
de forma a verificar a Valor máximo que a variável
1ª restrição x2 pode tomar de forma a
Valor máximo que a verificar a 3ª restrição
variável x2 pode tomar de
forma a verificar a 2ª
restrição
MÉTODO SIMPLEX
3ª restrição
2ª restrição
1ª restrição
100 60 50 100
x2 min , , 25
4 2 1 4 x3 é a variável básica com
coeficiente 1 na 1ª restrição
x2 passa a básica
0 = –1x1 – 3x2 +z
100 = 1x1 + 4x2 + 1x3 + 0x4 + 0x5
60 = 1x1 + 2x2 + 0x3 + 1x4 + 0x5
50 = 1x1 + 1x2 + 0x3 + 0x4 + 1x5
Elemento Pivot → coeficiente da variável que passa a
básica (x2) na restrição onde aparece a variável que passa
a não básica.
Para cada linha somar a linha do elemento Pivot
multiplicada por um valor adequado.
MÉTODO SIMPLEX
Reescrever o sistema de equações
0 = –1x1 – 3x2 +z
(3)
(×1/4) 100 = 1x1 + 4x2 + 1x3 + 0x4 + 0x5
(-2)
60 = 1x1 + 2x2 + 0x3 + 1x4 + 0x5
(-1)
Lz Lz (3 1 ) L( R1)
4
L( R1) 1 L( R1)
4
L( R 2 ) L( R 2 ) (2 1 ) L( R1)
4
L( R 3) L( R 3) (1 1 ) L( R1)
4
MÉTODO SIMPLEX
Expressão geral para transformar linhas do sistema
de equações
a j ,h
L j Lk jk
ak , h
Lj
1
Lk jk
ak , h
MÉTODO SIMPLEX
Reescrever o sistema de equações
x3 0
1 0 1
x4 10
x5 25 x2 x4 x5
MÉTODO SIMPLEX
A nova solução é ótima?
75 = –1/4x1 + 3/4x3 +z
25
x1 100 Valor máximo que x1 pode tomar de forma
1 a que a 1ª igualdade seja verificada!
4
MÉTODO SIMPLEX
Qual o valor máximo que x1 pode ter na 2ª Restrição?
A igualdade tem de
continuar a ser
verificada!
aumenta diminui
10
x1 20 Valor máximo que x1 pode tomar de forma
1 a que a 2ª igualdade seja verificada!
2
MÉTODO SIMPLEX
Qual o valor máximo que x1 pode ter na 3ª Restrição?
A igualdade tem de
continuar a ser
verificada!
aumenta diminui
25 100
x1 Valor máximo que x1 pode tomar de forma
3 3 a que a 3ª igualdade seja verificada!
4
MÉTODO SIMPLEX
1ª restrição 3ª restrição
2ª restrição
25 10 25
x1 min , , 20
1 1 3
4 2 4
Valor máximo que a variável x1
pode tomar de forma a verificar
todas as restrições na igualdade
Valor máximo que a
variável x1 pode tomar
de forma a verificar a 1ª
restrição Valor máximo que a variável x1
pode tomar de forma a verificar
Valor máximo que a variável x1 a 3ª restrição
pode tomar de forma a verificar
a 2ª restrição
MÉTODO SIMPLEX
1ª restrição 3ª restrição
2ª restrição
25 10 25
x1 min , , 20
1 1 3
4 2 4 x4 é a variável básica
com coeficiente 1 na 2ª
restrição
(1/4)
75 = –1/4x1 + 0x2 + 3/4x3 +z
(-1/4)
25 = 1/4x1 + 1x2 + 1/4x3 + 0x4 + 0x5
(×2) 10 = 1/2x1 + 0x2 – 1/2x3 + 1x4 + 0x5
(-3/4)
25 = 3/4x1 + 0x2 – 1/4x3 + 0x4 + 1x5
Lz Lz ( 1 2) L( R 2 )
4
L( R1) L( R1) ( 1 2) L( R 2 )
4
L( R 2 ) 2 L( R 2 )
L( R 3) L( R 3) ( 3 2) L( R 2 )
4
MÉTODO SIMPLEX
Reescrever o sistema de equações
80 = 1/2x3 + 1/2x4 +z
max x1 x2 x3 x4 x5
z 0 -1 -3 0 0 0
x3 100 1 4 1 0 0
Variáveis
básicas
x4 60 1 2 0 1 0
= x5 50 1 1 0 0 1
Número de
restrições
Elemento pivot
Valores das variáveis
MÉTODO SIMPLEX
Quadro do Simplex (tableau)
max x1 x2 x3 x4 x5
z 0 -1 -3 0 0 0
x3 100 1 4 1 0 0
x4 60 1 2 0 1 0
x5 50 1 1 0 0 1
max x1 x2 x3 x4 x5
z 0 -1 -3 0 0 0
Sai x3 x3 100 1 4 1 0 0
100 60 50 100
x2 min , , 25
x4 60 1 2 0 1 0
4 2 1 4
x5 50 1 1 0 0 1
x4 60 1 2 0 1 0
x5 50 1 1 0 0 1
max x1 x2 x3 x4 x5
z 75 -1/4 0 3/4 0
x2 25 1/4 1 1/4 0 0
x4 10 1/2 0 -1/2 0
x5 25 3/4 0 -1/4 1
MÉTODO SIMPLEX
Cálculo auxiliar
max x1 x2 x3 x4 x5
Entra x2
z 0 -1 -3 0 0 0 Sai x3
x3 100 1 4 1 0 0
x4 60 1 2 0 1 0
x5 50 1 1 0 0 1
max x1 x2 x3 x4 x5
z 75 -1/4 0 3/4
x2 25 1/4 1 1/4 0 0
x4 10 1/2 0 -1/2
x5 25 3/4 0 -1/4
MÉTODO SIMPLEX
Cálculo auxiliar
max x1 x2 x3 x4 x5
Entra x2
z 0 -1 -3 0 0 0 Sai x3
x3 100 1 4 1 0 0
x4 60 1 2 0 1 0
x5 50 1 1 0 0 1
max x1 x2 x3 x4 x5
z 75 -1/4 0 3/4 0 0
x2 25 1/4 1 1/4 0 0
x4 10 1/2 0 -1/2 1 0
x5 25 3/4 0 -1/4 0 1
MÉTODO SIMPLEX
Quadro do Simplex (tableau) Entra x1
max x1 x2 x3 x4 x5
z 75 -1/4 0 3/4 0 0
x2 25 1/4 1 1/4 0 0
Sai x4 x4 10 1/2 0 -1/2 1 0
25 10 25 10
x5 25 3/4 0 -1/4 0 1
x1 min , , 20
1 1 3
4 2 4 1
2
x4 10 1/2 0 -1/2 1 0
x5 25 3/4 0 -1/4 0 1
max x1 x2 x3 x4 x5
z
x2
x1 20 1 0 -1 2 0
x5
MÉTODO SIMPLEX
Cálculo auxiliar
max x1 x2 x3 x4 x5
Entra x1
z 75 -1/4 0 3/4 0 0 Sai x4
x2 25 1/4 1 1/4 0 0
x4 10 1/2 0 -1/2 1 0
x5 25 3/4 0 -1/4 0 1
max x1 x2 x3 x4 x5
z 0
x2 0
x1 20 1 0 -1 2 0
x5 0
MÉTODO SIMPLEX
Cálculo auxiliar
max x1 x2 x3 x4 x5
Entra x1
z 75 -1/4 0 3/4 0 0 Sai x4
x2 25 1/4 1 1/4 0 0
x4 10 1/2 0 -1/2 1 0
x5 25 3/4 0 -1/4 0 1
max x1 x2 x3 x4 x5
z 80 0 0 1/2 1/2 0
x2 20 0 1 1/2 -1/2 0
x1 20 1 0 -1 2 0
x5 10 0 0 -1/2 -3/2 1
MÉTODO SIMPLEX
Operação de pivotagem
max x1 x2 x3 x4 x5
z 75 -1/4 0 3/4 0 0
x2 25 1/4 1 1/4 0 0
x4 10 1/2 0 -1/2 1 0
x5 25 3/4 0 -1/4 0 1
max x1 x2 x3 x4 x5
z 80 0 0 1/2 1/2 0
Quadro ótimo!
x2 20 0 1 1/2 -1/2 0
x1 20 1 0 -1 2 0
x5 10 0 0 -1/2 -3/2 1
MÉTODO SIMPLEX
Algoritmo Simplex (problema de minimização)