Sunteți pe pagina 1din 4

Instituto Superior Politcnico de Viseu

Investigao Operacional

MTODO SIMPLEX: PROGRAMAS LINEARES

DE

MINIMIZAO

Passo 0: Seja x uma soluo bsica admissvel associada a um conjunto J de ndices das variveis bsicas. Passo 1: Verificao do Critrio de Optimalidade e determinao da varivel no bsica a passar a bsica Se c j 0 ( c j 0 no caso de maximizao) para todo jJ, termine: x soluo ptima do programa linear. De outro modo determine s tal que
cs = min c j : c j < 0 .

( cs = max c j : c j > 0

no caso de maximizao)

Passo 2: Determinao da varivel bsica a passar a no bsica Se ais 0, i=1,...,m, termine: o programa linear tem soluo ptima ilimitada. De outro modo calcule r a partir do Critrio do Quociente Mnimo
b br = min i : ais > 0 . ars ais

Actualize o conjunto J para J J {t} {s} com t o ndice da varivel bsica associada r-sima linha do quadro. Utilize as operaes elementares para actualizar a forma tabular (Gauss-Jordan) da soluo bsica associada ao novo conjunto J. Volte ao Passo 1.

MTODO DUAL

DO

SIMPLEX: PROGRAMAS LINEARES

DE

MINIMIZAO

Passo 0: Seja x uma soluo bsica dual admissvel associada a um conjunto J de ndices das variveis bsicas, isto
c j 0, para todo jJ, ( c j 0, para todo jJ, no caso de maximizao).

Passo 1: Verificao do Critrio de Admissibilidade e determinao da varivel bsica a passar a no bsica Se b 0, termine : x soluo ptima do programa linear. De outro modo determine r tal que
br = min bi : bi < 0 .

Passo 2: Determinao da varivel no bsica a passar a bsica Se arj 0, para todo jJ, termine: o programa linear no admissvel. De outro modo calcule s a partir do Critrio do Quociente Mnimo
cj cs : arj < 0 , j J . = min ars arj

Actualize o conjunto J para J J {t} {s} com t o ndice da varivel bsica associada r-sima linha do quadro. Utilize as operaes elementares para actualizar o quadro (Gauss-Jordan) da soluo bsica associada ao novo conjunto J. Volte ao Passo 1.

Instituto Superior Politcnico de Viseu


Investigao Operacional

MTODO

DAS

DUAS FASES: PROGRAMAS LINEARES

DE

MINIMIZAO

Fase I: Determinao de uma soluo bsica admissvel Passo 0: Seja x uma soluo bsica no admissvel associada a um conjunto J de ndices das variveis bsicas. Introduza uma varivel artificial x0 na forma tabular (Gauss-Jordan) associada a J com coeficientes pi tais que
pi < 0 se bi < 0 . pi 0 se bi 0 Calcule k a partir do Critrio do Quociente Mximo b bk = max i : pi < 0 . pk pi

Actualize o conjunto J para J J {t} {0} com t o ndice da varivel bsica associada k-sima linha do quadro. Utilize as operaes elementares para actualizar a forma tabular (Gauss-Jordan) da soluo bsica associada ao novo conjunto J. Passo 1: Determinao da varivel no bsica a passar a bsica Se akj 0 para todo jJ, termine: o programa no admissvel. De outro modo determine s a partir de aks = max akj : akj > 0 .

Passo 2: Determinao da varivel bsica a passar a no bsica Calcule r a partir do Critrio do Quociente Mnimo b br = min i : ais > 0 . ars ais Actualize o conjunto J para J J {t} {s} com t o ndice da varivel bsica associada r-sima linha do quadro. Utilize as operaes elementares para actualizar a forma tabular (Gauss-Jordan) da soluo bsica associada ao novo conjunto J. Se x0 saiu da base passe ao Passo 3. De outro modo volte ao Passo 1. Fase II: Determinao da soluo ptima Passo 3: Verificao do Critrio de Optimalidade e determinao da varivel no bsica a passar a bsica Se c j 0 ( c j 0 no caso de maximizao) para todo jJ, termine: x soluo ptima do programa linear. De outro modo determine s a partir de
cs = min c j : c j < 0 .

( cs = max c j : c j > 0

no caso de maximizao)

Passo 4: Determinao da varivel bsica a passar a no bsica Se ais 0, i=1,...,m, termine: o programa linear tem soluo ptima ilimitada. De outro modo calcule r a partir do Critrio do Quociente Mnimo b br = min i : ais > 0 . ars ais Actualize o conjunto J para J J {t} {s} com t o ndice da varivel bsica associada r-sima linha do quadro. Utilize as operaes elementares para actualizar a forma tabular (Gauss-Jordan) da soluo bsica associada ao novo conjunto J. Volte ao Passo 3.

Instituto Superior Politcnico de Viseu


Investigao Operacional

ALGORITMO HNGARO: PROBLEMA


Passo 0: Passo Inicial

DE

AFECTAO

Constri-se um quadro de valores a partir da matriz de custos subtraindo a cada linha o seu valor mnimo. De seguida actualiza-se este quadro subtraindo a cada coluna o seu valor mnimo. Passo 1: Processo de enquadramento de zeros (um e um s em cada linha e coluna) Escolhe-se a linha ou a coluna com menor nmero de zeros e enquadra-se um desses zeros. De seguida elimina-se a linha e a coluna correspondente a esse zero e escolhe-se a linha ou a coluna que tenha menor nmero de zeros, enquadrando-se um desses zeros. Este processo repetido at no haver mais zeros para enquadrar. Se o nmero de zeros enquadrados inferior dimenso do problema, passa-se ao passo seguinte. Caso contrrio, o algoritmo termina e a soluo ptima corresponde ao enquadramento obtido
1 se existe um zero enquadrado na posio i,j x ij = 0 caso contrrio

Passo 2: Processo de cobertura de zeros (com um menor nmero de traos) Escolhe-se a linha ou coluna com maior nmero de zeros e cobrimos essa linha ou coluna com um trao. Deixamos de considerar essa linha ou coluna e escolhemos uma outra linha ou coluna com maior nmero de zeros e eliminamos essa outra linha ou coluna. Este processo repetido at no haver mais zeros para cobrir com traos. De seguida passamos ao passo 1, actualizando o quadro do seguinte modo
cij cij + cij cij
cij cij cij cij

onde o menor valor entre os valores no cobertos por traos.

ALGORITMO KRUSKAL: RVORE GERADORA


Passo 0: Ordenar todas as arestas por ordem crescente.

DE

CUSTO MNIMO

Passo 1: Examinam-se todas as arestas, seguindo a ordem do passo 0, do seguinte modo Se a aresta forma um ciclo com as escolhidas Ento rejeitamos a aresta para a rvore Caso contrrio escolhemos a aresta para a rvore

Instituto Superior Politcnico de Viseu


Investigao Operacional

ALGORITMO DIJKSTRA: PROBLEMA

DO

CAMINHO MAIS CURTO

Passo 0: Suponhamos que 1 o n inicial e n o n terminal e faamos


S = {2,3,,n}, S =
d1i se i adjacente a 1 di = + caso contrrio 1 se i adjacente a 1 ant( i ) = + caso contrrio

Passo 1: Para k = 1,2,,n1 fazer Determine dr = min{di, i S } Actualize S = S {r}, S = S {r} Para cada n i adjacente a r ((r,i)E) faa di = min{di, dr + dri} com dri o peso da aresta (r,i) Se di decresce de valor faa ant(i) = r

ALGORITMO

DE FORD-FULKERSON:

PROBLEMA DO FLUXO MXIMO

Seja G(N,A) um grafo em que N representa o conjunto de ns e A o conjunto de arcos. Representemos por xij o fluxo de

i para j e uij a capacidade do arco (i,j). O algoritmo Ford-Fulkerson tem os seguintes passos:
Passo 0: Considere um fluxo inicial xij = 0 (i,j)A. Passo 1: Construa uma rede auxiliar G(x) do seguinte modo: 1.1 Se xij = 0 em G, introduz-se um arco de i para j em G(x) com capacidade igual a uij. 1.2 Se xij = uij em G, introduz-se um arco de j para i em G(x) com capacidade igual a uij. 1.3 Se 0 < xij < uij em G, introduz-se um arco de i para j em G(x) com capacidade igual a uij xij e outro de j para i com capacidade igual a xij. Passo 2: Determine o caminho de fluxo mximo com menor nmero de arcos entre o n inicial e o n terminal em

G(x). Se no existir nenhum caminho, o algoritmo termina, sendo a soluo corrente xij ptima. Caso
contrrio passamos ao passo seguinte. Passo 3: Calcule o fluxo que pode ser enviado pelo caminho determinado no passo 2, actualize a soluo e volte ao passo 1.

S-ar putea să vă placă și