Upload
nathalia-lobo-de-mendonca
View
217
Download
0
Embed Size (px)
Citation preview
SIMPLEX
Para o problema canônico:
Max <c,x> sujeito a Ax=b e x≥0.
Iteração do SIMPLEX ideal
• Entrada: base viável ordenada (j1,j2,j3......jm)
• Possíveis saídas (Mutuamente excludentes) :
• 1- Vértice ótimo• 2-Aresta de ilimitação• 3-Base ordenada para a próxima iteração.
Cálculo do vértice associado à base VIÁVEL conhecida (j1,j2,j3......jm);
• Calcule a inversa de base B-1 por B-1= (Aj1,Aj2,Aj3......Ajm)-1 ;
Não esqueça que para o correspondente vértice, vk=0 se k não estiver na base
• Calcule as componentes do vértice que não são obrigatoriamente nulas por:
b´= B-1b e vji= b’i, i=1,2.....m.
Teste de otimalidade:
• Compute a projeção do vetor da função objetivo c em cada arestas emergentes de v,
• ou seja, escreva a função objetivo em termos de variáveis não básicas (quando Ax=b):
<c,x>= < c,v>+ < Γ~,x~> , onde Γ=c-AtB-1tcB...... note que ΓB=0 .
Note que (AtB-1cB)não é bem definido.
Preparo de uma das três possíveis saídas.
• Compute inteligentemente, Γ=c-AtB-1tcB
lembrando que<c,x>= < c,v>+ < Γ~,x~>
para todo x tal que Ax=b
Cálculos ideais em cada iteração:
• Cálculo do vértice associado à base VIÁVEL conhecida (j1,j2,j3......jm);
• Teste de otimalidade;
• Preparo de uma das três possíveis saídas.
Vértice ótimo
• Como<c,x>= < c,v>+ < Γ~,x~>
para todo x tal que Ax=b
e para todo ponto viável Ax=b e x≥0, segue que: Γ=c-AtB-1tcB ≤0 → v, que é viável, é solução do (PLC).
Aresta de ilimitação
• Se existe k tal que:1)ΓK=(Γ=c-AtB-1tcB)K>0
e2)π=B-1Ak≤0Então:
(xB=b’-λπ , xk=λ, xj=0 para j≠k)λ≥0
é semireta de ilimitação do (PLC).
3-Base ordenada para a próxima iteração.
• Se existe k tal que:
1)ΓK=(Γ=c-AtB-1tcB)K>0
e2)π=B-1Ak tem componente positiva, a base
(j1,j2,..,j î-1 ,k, jî-1,.....jm) é viável e sob (HND) está associada a vértice melhor que v.
Iteração do SIMPLEX “real”• Entrada: base viável ordenada (j1,j2,j3......jm) e resultados da iteração anterior (B-1,b’,Γk,π...)
• Possíveis saídas (Mutuamente excludentes) :
• 1- Vértice ótimo• 2-Aresta de ilimitação• 3-Base ordenada para a próxima iteração.
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (forma 1)
• Na forma de tabela (“tableau”) de sistema linear, onde as variáveis dependentes são escritas em termos das independentes.
-
-
-
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
• Na forma de tabela (“tableau”) de sistema linear, onde as variáveis dependentes são escritas em termos das independentes.
--o teste de otimalidade recai nesta caracterização e daí surge linha zero .
-
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
• Na forma de tabela (“tableau”) de sistema linear, onde as variáveis dependentes são escritas em termos das independentes.
--o teste de otimalidade recai nesta caracterização e daí surge linha zero .
-tableau original: z-ctx=0 -----------1 -c t[ 0 Ax=b ---------- 0 A [ b
-
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
• Na forma de tabela (“tableau”) de sistema linear, onde as variáveis dependentes são escritas em termos das independentes.
--o teste de otimalidade recai nesta caracterização e daí surge linha zero .
-tableau original: z-ctx=0 -----------1 -c t[ 0 Ax=b ---------- 0 A [ b
-tableau da base B : z-Γtx =ctv ---------1 -Γt [ctv 0 B-1A[ b’
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
-tableau da base B : z-Γtx =ctv ---------1 -Γt [ctv Ax =b 0 B-1A [ b’-
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
-tableau da base B : z-Γtx =ctv ---------1 -Γt [ctv Ax =b 0 B-1A [ b’- Na coluna associada a xj temos B-1Aj ;- Em particular na coluna associada à xji temos ei ;
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
-tableau da base B : z-Γtx =ctv ---------1 -Γt [ctv Ax =b 0 B-1A [ b’- Na coluna associada a xj temos B-1Aj ;- Em particular na coluna associada à xji temos ei ; - Para a linha zero, na coluna associada a xj
temos -Γ j, sendo que para as básicas Γj =0.
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (tabular)
-tableau da base B : z-Γtx =ctv ---------1 -Γt [ctv Ax =b 0 B-1A [ b’- Na coluna associada a xj temos B-1Aj ;- Em particular na coluna associada à xji temos ei ; - Para a linha zero, na coluna associada a xj
temos -Γ j, sendo que para as básicas Γj =0. - Pivotações.
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (revisado)
• Organização matricial;• Não calcula Γ=c-AtB-1tcB = c- (B-1A)t cB ,
mas sim Γ=c-At (B-1tcB)=c-At λ ,com λ= (B-1cB)daí nome com multiplicadores
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (revisado)
• Organização matricial;• Não calcula Γ=c-AtB-1tcB = c- (B-1A)t cB ,
mas sim Γ=c-At (B-1tcB)=c-At λ,com λ= (B-1tcB)daí nome com multiplicadores
Operação fundamental é a atualização de inversa de base (B-1)
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (revisado)
• Forma didática:atualizar só B-1 e b’;
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (revisado)
• Forma didática:atualizar só B-1 e b’;
• Forma completa:considerar linha zero;
COMO USAR DADOS DA ITERAÇÃO ANTERIOR (revisado)
• Forma didática:atualizar só B-1 e b’;
• Forma completa:considerar linha zero;
• Pivotações