Professional Documents
Culture Documents
OPT Aula-5
OPT Aula-5
1
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
• O Método Simplex.
• Algoritmo Primal Simplex.
2
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Algoritmo.
O que é um algoritmo?
Estrutura de um algoritmo.
Início
Passo Iterativo
Sim FIM
Não
Verifica o
critério
de
paragem
?
4
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Método Simplex.
5
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
6
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
7
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Existe alguma
SBA Não
adjacente
que seja
melhor? FIM !!!
a solução é
Sim óptima
Mover-se para uma SBA
"melhor"
8
Prof. Doutor Engº Jorge Nhambiu
INÍCIO
Faculdade de Engenharia – Optimização
Forma Padrão
A solução é FIM
óptima ? Sim Solução óptima !!!
critério de optimalidade
Não
Identificar a variável não básica que
entra
critério de entrada
2ª
2 x2 12 x4 2 x2 + x4 = 12
3ª
3 x1 + 2 x 2 18 x5 3 x1 + 2 x2 + x5 = 18
10
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Maximizar Z= 3 x1 + 5 x2 Maximizar Z= 3 x1 + 5 x2
sujeito a sujeito a
x1 4 x1 + x3 = 4
2 x2 12 2 x2 + x4 = 12
3 x1 + 2 x2 18 3 x1 + 2 x2 + x5 = 18
x1 , x2 0 x1 , x2 , x3 , x4 , x5 0
11
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
variáveis básicas x3 , x4 , x5
variáveis não básicas x1 , x2
cj
coeficientes da f.o.
cj-zj , j=1,2, n xij
componente i
da coluna j do
quadro simplex
ci m
coeficientes das z j ci xij , j 1,2 ,...,n
variáveis básicas i 1
na f.o .
14
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
0 x3 1 0 1 0 0 4
0 x4 0 2 0 1 0 12
0 x5 3 2 0 0 1 18 valor da
z1= 0 x 1 + 0 x 0 + 0 x 3
f.o.
z2= 0 x 0 + 0 x 2 + 0 x 2 zj 0 0 0 0 0 0
custos reduzidos os custos reduzidos
das variáveis básicas
(no caso de minimização
zj -cj )
cj -zj 3 5 0 0 0 são sempre nulos
15
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
FIM
a solução é
Não óptima !!!
Existe
algum
cj-zj >0 ?
Sim
Existe
algum 3 >0,
cj-zj >0 5 >0 ?
?
Sim
Sim
Passar ao passo seguinte Passar ao passo seguinte
17
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Critério de entrada:
coluna pivot. max { cj - zj | cj - zj >0 } =cr - zr
j
x1 … xr … xm Existe FIM
Não o problema
x11 ... x1r … x1n algum não tem
x21 … x2r … x2n xir >0 ? óptimo finito
.. .
.
. Sim
xm1 ... xmr … xmn
Passar ao passo seguinte
18
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
CB XB x1 x 2 x3 x4 x5 b
Procura-se
melhorar (ou pelo
menos não 0 x3 1 0 1 0 0 4
piorar) o valor da
f.o. na próxima
0 x4 0 2 0 1 0 12
SBA 0 x5 3 2 0 0 1 18
zj 0 0 0 0 0 0
max { cj - zj | cj - zj >0 } =5
cj -zj 3 5 0 0 0
19
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Procura-se
Algoritmo Primal Simplex.manter a
admissibilidade
na próxima
Passo 4: Determinar a variável básica que sai. solução básica
– 1º. Seleccionar os coeficientes xi r >0
– 2º. Dividir cada coeficiente xi0 da coluna dos termos
independentes pelo coeficiente xi r >0 da coluna pivotal r.
– 3º. Seleccionar a linha s onde se alcance o menor dos
quocientes (regra do menor quociente):
coluna pivotal.
xi xs
x1 … xr … xm
_
b min xir 00 0
xsr
0
x11 ... x1r … x1n x10 i
xir
x21 … x2r … x2r x20
.. .
.
.
xm1 ... xmr … xmn xm0
20
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
xsr
0
i
xir
designa-se por linha pivotal.
coluna pivotal:
linha pivotal: cj 3 5 0 0 0 j =2
i =2
CB XB x1 x2 x3 x4 x5 b mínimo
a variável
que sai: 0 x3 1 0 1 0 0 4 12/2= 6
x4 0 x4 0 2 0 1 0 12
0 18 18/2= 9
x5 3 2 0 0 1
pivot
zj 0 0 0 0 0 0
cj -zj 3 5 0 0 0
máximo
22
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
23
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
linha pivotal
Nova linha pivotal
pivot
Reduzir a 0 as outras componentes da coluna pivotal.
para isto, é preciso calcular todas a linhas (excepto a linha pivotal),
pela seguinte fórmula:
24
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
x2 entra
SBA X0B=( x3 , x4 , x5 ) SBA X1B=( x3 , x2 , x5 )
x4 sai
25
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
cj 3 5 0 0 0
CB XB x1 x2 x3 x4 x5 b
0 x3 1 0 1 0 0 4
1
5 x2 0 1 0 2 0 6
0 x5 3 0 0 -1 1 6
zj 0 5 5
z1 = 0 x 1 + 5 x 0 + 0 x 3 0 2 0 30
z2= 0 x 0 + 5 x 1 + 0 x 0 cj -zj 3 0 0 - 5 0
2
27
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Calcular os cj-zj 3 0 0 - 5 0
2
Existe
algum
cj-zj >0 3>0
?
Sim
28
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
zj 5
0 5 0 2 0 30
max { cj - zj | cj - zj >0 } =3
cj -zj 3 0 0 - 52 0
29
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
cj 3 5 0 0 0
CB XB x1 x2 x3 x4 x5 b 4/1= 4
a variável
que sai: x5
0 x3 1 0 1 0 0 4
1
5 x2 0 1 0 2 0 6 6/3= 2
x1 entra
SBA X1B=( x3 , x2 , x5 ) SBA X2B=( x3 , x2 , x1 )
x5 sai
31
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Linha Pivotal:
cj 3 5 0 0 0
Nova linha 3= Linha 3 / pivot
CB XB x1 x2 x3 x4 x5 b
0 x3 1 0 1 0 0 4
linha 2: NÃO MUDA 1
o coeficiente na coluna pivotal é
5 x2 0 1 0 2 0 6
igual a 0. 0 x5 3 0 0 -1 1 6
zj 0 5 0 5 0 30
2
Nova linha 1= linha 1 - cj -zj 3 0 0 5
- 2 0
(1 x nova linha pivotal) 0 x3 1 1
0 0 1 3 - 3 2
1 0 1 0 0 4 1
5 x2 0 1 0 2 0 6
-(1) 1 0 0 -1/3 1/3 2 1
x1 1
0 0 1 1/3 -1/3 2 3 1 0 0 - 3 3 2
32
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
Calcular os cj-zj 0 0 0 - 3 -1
2
34
Prof. Doutor Engº Jorge Nhambiu
Faculdade de Engenharia – Optimização
35
Prof. Doutor Engº Jorge Nhambiu