Post on 19-Sep-2018
Formas de Programas Lineares
O problema de Programacao Matematica con-
siste na determinacao do valor de n variaveis
x1, x2, . . . , xn que tornam mınimo ou maximo o
valor da funcao
f(x1, x2, . . . , xn)
sujeito a m restricoes
gi(x1, x2, . . . , xn) ≥ bi, i = 1,2, . . . , m
podendo ainda ter-se
xj ≥ 0, j = 1,2, . . . , n.
1
Em Programacao Linear as funcoes f e g sao li-
neares, obtendo-se a chamada Forma Canonica:
Minimize c1x1 + c2x2 + . . . + cnxn
sujeito a a11x1 + a12x2 + . . . + a1nxn ≥ b1a21x1 + a22x2 + . . . + a2nxn ≥ b2...am1x1 + am2x2 + . . . + amnxn ≥ bm
Funcao a minimizar: funcao objectivo.
Inequacoes: restricoes.
Conjunto de solucoes que satisfazem as res-
tricoes: solucoes admissıveis.
Solucao admissıvel que minimiza a funcao ob-
jectivo: solucao optima.
Coeficientes cj: coeficientes de custo.
Coeficientes aij: coeficientes tecnologicos.
2
Coeficientes bi: termos independentes.
Viu-se que no entanto nem sempre um pro-grama linear se apresenta na forma canonica.Seguidamente veremos como fazer a conversao.
• Qualquer problema de maximizacao pode-se converter num problema de minimizacao,uma vez que
maxn∑
j=1
cjxj = −minn∑
j=1
cjxj
Apos a resolucao do novo problema, o valorda funcao objectivo pretendido e o simetricodo obtido.
• Qualquer inequacao do tipo ≤ e convertıvelnuma inequacao do tipo ≥, multiplicandoambos os membros por −1:
ai1x1 + ai2x2 + . . . + ainxn ≤ bim
−ai1x1 − ai2x2 − . . .− ainxn ≥ −bi
3
• Qualquer restricao de igualdade pode ser
convertida em duas inequacoes:
ai1x1 + ai2x2 + . . . + ainxn = bim{
ai1x1 + ai2x2 + . . . + ainxn ≤ biai1x1 + ai2x2 + . . . + ainxn ≥ bi
• Qualquer variavel xj sem restricao de si-
nal pode ser substituıda por x′j − x′′j , com
x′j, x′′j ≥ 0.
4
Outra forma de escrever um Programa Linear ea Forma Normal. Nesta todas as restricoes saoigualdades e todas as variaveis teem valoresnao negativos:
Minimize cTxsujeito a Ax = b
x ≥ 0
Note-se que toda a desigualdade da forma ≥pode ser transformada numa igualdade, intro-duzindo uma variavel adicional.
Consideremos a desigualdade
ai1x1 + ai2x2 + . . . + ainxn ≤ bi
que pode ser escrita na forma
ai1x1 + ai2x2 + . . . + ainxn − xn+i = bi
com xn+i ≥ 0.
As novas variaveis xn+i da-se o nome de variaveisde folga, ou variaveis slack.
5
Resolucao grafica de Programas Lineares
Como exemplo, consideremos o programa li-near
Minimize x1 − 2x2sujeito a x1 + x2 ≤ 1
x1 − x2 ≤ 1/2
Graficamente,
........................................................................
......................................
......................................
................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................................................................................................................................................
......................................................................................................
......................
......................
.................... ......................................
......................
......................
.................... ......................................
......................................................................................................
...................................... ........
..............................
......................................
......................................
................................ ................................................................
................................................................................................
................................................................................................................................
................................................................................................................................................................
................................................................................................................................................................................................
................................................................................................................................................................
................................................................................................................................
..............................................................................................................................................................................................................................................................................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
..........
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
....................
..........
......................................
x1 − 2x2 = 0
x1 − 2x2 = −2
solucao optima
Constata-se que a solucao optima e x∗ = (0,1)com valor para a funcao objectivo z = −2.
6
Solucao optima finita unica- Nas figuras se-
guintes esquematizamos em que situacoes po-
demos ter solucao optima finita unica, que
tera que corresponder a um ponto extremo da
regiao admissıvel.
........................................................................ .........
...............................................................
......................................
......................................
.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
.......................................
................................................................................................
................................................................................................................................................
................................................................................................................................................................................................
................................................................................................................................................................................................................
................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................
................................................................................................................................................................
....................
....................
....................
....................
....................
..............
..................................................................................................................
......................................
......................................
......................................
..............................................................................................................................................
................................................................
................................................................
................................................................
................................................................
..........
....................
....................
....................
....................
....................
..............
..................................................................................................................
................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................................................................................................ ................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................
......................................
...................................................................................................................................
..........................................................
optimo unico
(a) (b)
7
Optimos finitos alternativos- Ocorrem quandoo hiperplano que caracteriza a funcao objec-tivo e paralelo a uma das arestas da regiaoadmissıvel, e estao representados nas figurasseguintes.
......................................
......................................
.....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
.......................................
................................................................................................
................................................................................................................................................
................................................................................................................................................................................................
................................................................................................................................................................................................................
................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................
................................................................................................................................................................
......................................
......................................
..............................................................................................................................................
................................................................
................................................................
................................................................
................................................................
..........
................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................................................................................................ ................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................
...................................................................................................................................
..........................................................
.......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... .......... ..........
....................
....................
....................
....................
....................
....................
....................
....................
..........
....................................................................................................................................................................................................................................................................
(a) (b)
optimassolucoes
optimassolucoes
Solucao ilimitada - A regiao admissıvel e o va-lor da solucao optima sao ilimitados.
......................................
......................................
..........................................................................................................................................................
...................................
...................................
...................................
...................................
...................................
..
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................
................................................................................................................................................................................................
................................................................................................................................
................................................................
....................................................................................................................................................................................
....................................................................................................................................................................................
....................................................................................................................................................................................
....................................................................................................................................................................................
8
O Metodo Simplex
O Metodo Simplex pesquisa a solucao optimaapenas entre as solucoes basicas admissıveis,atraves de um processo iterativo efectuado demodo que o valor da funcao objectivo decrescaem cada iteracao. Considere-se o programalinear na sua forma normal:
Minimize cTxsujeito a Ax = b
x ≥ 0
Podemos transformar a funcao objectivo z =c1x1 + c2x2 + . . . + cnxn numa restricao
c1x1 + c2x2 + . . . + cnxn − z = 0
sendo entao possıvel escrever o problema naforma tabular seguinte:
x1 x2 . . . xn −za11 a12 . . . a1n 0 b1a21 a22 . . . a2n 0 b2. . . . . . . . . . . . . . . . . .am1 am2 . . . amn 0 bm
c1 c2 . . . cn 1 0
9
O algoritmo requer uma solucao basica ad-missıvel inicial. Supohamos que sem perda degeneralidade, tal solucao corresponde a J ={1, . . . , m}. Usando Eliminacao de Gauss-Jordane possıvel obter o seguinte quadro:
x1 x2 . . . xm xs . . . xn −z
x1 1 0 . . . 0 a1s . . . a1n 0 b1x2 0 1 . . . 0 a2s . . . a2n 0 b2. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xm 0 0 . . . 1 ams . . . amn 0 bm
−z 0 0 . . . 0 cs . . . cn 1 −z
Assim, a solucao basica e dada por
xi = bi, i = 1, . . . , m e xj = 0, j = m+1, . . . , n
e o valor da funcao objectivo e z = z. Alemdisso, b ≥ 0, por se tratar de uma solucao ad-missıvel.
Do quadro, tem-se
z = z + cm+1xm+1 + . . . + csxs + cnxn
10
Se cj ≥ 0 para todo o j 6∈ J entao o valorda funcao objectivo em qualquer outra solucaobasica admissıvel e maior ou igual a z, e por-tanto a solucao basica corrente e a optima, eo metodo termina.
Suponhamos que existe pelo menos uma com-ponente cj negativa e seja
cs = min{cj : cj < 0}Entao a variavel xs (nao basica) deve ver o seuvalor aumentado (passando a basica) porquee ela que promove uma maior diminuicao dafuncao objectivo. No entanto, o aumento naopode ser arbitrario, para nao tornar negativanenhuma das variaveis basicas.
Assim, xs deve tomar o valor θ ≥ 0 tal quex1 = b1 − θa1s ≥ 0x2 = b2 − θa2s ≥ 0
...xm = bm − θams ≥ 0
11
Se ais ≤ 0 para todo i = 1, . . . , m entao θ pode
aumentar indefinidamente e o problema e ili-
mitado.
Se pelo contrario existe um i ∈ {1, . . . , m} tal
que ais > 0 entao θ tem que satisfazer a condicao
θ ≤ bi
ais, para todo i ∈ {1, . . . , m} tal que ais > 0
Seja
br
ars= min
{bi
ais: ais > 0
}
Se xs tomar o valor
θ =br
ars
entao xr = 0 e passa a nao basica por troca
com xs.
12
No quadro de eliminacao troca-se xs com xr,
obtendo-se uma nova solucao basica admissıvel,
a qual esta associado um valor da funcao ob-
jectivo dado por
z − csbr
ars≤ z
O processo e novamente repetido ate se atin-
gir uma solucao optima. Resumidamente, o
Metodo Simplex e composto dos seguintes pas-
sos:
13
Passo 0 : Seja x uma solucao basica admissıvel
inicial associada a um conjunto J.
Passo 1: Se cj ≥ 0 para todo j 6∈ J, termine:
x e solucao optima. De outro modo, de-
termine cs a partir de cs = min{cj : cj < 0}.
Passo 2: Se ais ≤ 0 para todo i = 1, . . . , m,
termine: o problema e ilimitado. De outro
modo, calcule r a partir de
br
ars= min
{bi
ais: ais > 0
}Actualize o conjunto J para
J → J − {t} ∪ {s}com t a variavel basica associada a r-esima
linha no quadro. Actualizar o quadro usando
Eliminacao de Gauss-Jordan e regressar ao
Passo 1.
14
Fase 1 do Metodo Simplex
Como se afirmou anteriormente, o metodo sim-plex necessita de uma solucao basica admissıvelinicial. Em geral, tal solucao e difıcil de obter,pelo que vamos apresentar a chamada Fase1 do metodo simplex, desenvolvida com esseproposito.
Seja o programa linear
min cTxs.a Ax = b
x ≥ 0
Seja J o conjunto das variaveis basicas associ-adas a uma solucao basica do sistema Ax = b,e
B = [A.j]j∈J
Entao
BxJ + NxL = b
com L = {1, . . . , n} − J e N = [A.j]j∈L.
15
Como B e nao singular,
xJ + B−1NxL = B−1b
Substituindo em z = cTx, vem
z = cTJ xJ + cT
LxL
= cTJ
(B−1b−B−1NxL
)+ cT
LxL
= cTJ B−1b +
(cTL − cT
J B−1N)
xL
A forma tabular associada a esta solucao eentao
xJ xL −zxJ I AL 0 b−z 0 cL 1 −z
com
A.j = B−1A.j
cj = cJ − cTJ A.j = cJ − πTA.j
para j ∈ L e π tal que BTπ = cJ .
16
Alem disso
b = B−1b ⇔ Bb = b
e a solucao basica fornecida pelo quadro ante-
rior e admissıvel se b ≥ 0.
Suponhamos que existe uma linha i tal que
bi < 0. Consideremos a introducao de uma
variavel artificial x0, que seria igual a zero em
qualquer solucao admissıvel do problema. Para
isso introduz-se um vector p no quadro anterior
tal que p ≤ 0 e pi < 0 se bi < 0. Entao o quadro
toma a seguinte forma:
xJ xL x0 −zxJ I AL p 0 b−z 0 cL 0 1 −z
O objectivo na Fase 1 vai ser encontrar uma
solucao do sistema alargado com x0 = 0.
17
Para isso procura-se resolver o programa linear
min x0s.a −z + cTx = 0
Ax + (Bp)x0 = bx ≥ 0, x0 ≥ 0
A seguir mostramos que e facil obter uma solucaobasica admissıvel inicial para este programa li-near. Sem perda de generalidade, suponha-mos J = {1, . . . , m} e construamos o quadrona forma:
x1 x2 . . . xm xm+1 . . . xn x0 −z
x1 1 0 . . . 0 a1,m+1 . . . a1n p1 0 b1x2 0 1 . . . 0 a2,m+1 . . . a2n p2 0 b2...
...... . . . ...
......
......
xm 0 0 . . . 1 am,m+1 . . . amn pm 0 bm
−z 0 0 . . . 0 cm+1 . . . cn 0 1 −z
Da definicao de p, sabemos que existe um valorpara x0 para o qual
xi = bi − pix0 ≥ 0, i = 1, . . . , m
Como pi = 0 para bi ≥ 0 entao
pix0 ≤ bi
para todo o i tal que bi < 0.
18
Entao
x0 ≥bi
pipara todo o i tal que bi < 0
Deste modo, se r for definido por
br
pr= max
{bi
pi: pi < 0
}entao a troca de x0 com xr estabelece umasolucao basica admissıvel para o programa li-near alargado.
Ao resolvermos este programa linear usando ometodo simplex, duas situacoes podem ocor-rer:
1. minx0 = 0 e obtem-se uma solucao basicaadmissıvel para o programa linear original;
2. minx0 > 0 e o conjunto admissıvel do pro-grama linear original e vazio.
19
Se ocorrer o primeiro caso, entao a variavel
x0 e suprimida e o metodo simplex e iniciado
com a solucao basica obtida. No segundo caso
o algoritmo para e o programa linear nao tem
qualquer solucao admissıvel.
Assim, a Fase 1 do metodo simplex consiste
em considerar uma variavel artificial x0 e uma
coluna p tal que
pi ≤ 0 e pi < 0 para bi < 0
Depois x0 e introduzida na base por troca com
a variavel basica que se encontra na linha r de-
finida anteriormente. Finalmente o programa
linear alargado e resolvido pelo metodo sim-
plex. Na pratica, as componentes negativas
de p costumam ser iguais a −1.
20
Exemplo: consideremos o programa linear
min x1 + 2x2s.a x1 + x2 ≤ 2
x1 − x2 ≥ 1x1, x2 ≥ 0
Este problema tem que ser convertido na forma
normal:
min x1 + 2x2s.a x1 + x2 + x3 = 2
x1 − x2 − x4 = 1x1, x2, x3, x4 ≥ 0
Se multiplicarmos ambos os membros da res-
tricao x1 − x2 − x4 = 1 por −1, obtem-se de
imediato uma solucao basica cuja matriz base
e a identidade, e que tem a seguinte forma
tabular:
x1 x2 x3 x4 −zx3 1 1 1 0 0 2x4 -1 1 0 1 0 -1−z 1 2 0 0 1 0
21
Esta solucao nao e admissıvel, uma vez que
b2 < 0. Deveremos introduzir a variavel x0 e o
vector
p =
[0
−1
]obtendo-se a seguinte solucao basica do pro-
grama linear alargado:
x1 x2 x3 x4 x0 −zx3 1 1 1 0 0 0 2x4 -1 1 0 1 -1 0 -1−z 1 2 0 0 0 1 0
A variavel x0 passa a basica por troca com
a variavel que esta na linha r definida pelo
criterio anterior. Neste caso, p2 e a unica com-
ponente negativa de p pelo que r = 2. Entao
x0 vai trocar com x4 e obtem-se o quadro
x1 x2 x3 x4 x0 −zx3 1 1 1 0 0 0 2x0 1 -1 0 -1 1 0 1−z 1 2 0 0 0 1 0
22
Deste quadro tem-se
x0 = −x1 + x2 + x4 + 1,
pelo que x1 deve aumentar de valor para mi-nimizar x0. Isto quer dizer que em geral avariavel a escolher para entrar na base deveser aquela que tenha coeficiente mais positivona linha da variavel x0.
Se a linha r de x0 tiver coeficientes fj, j 6∈ J,ha duas possibilidades:
1. fj ≤ 0 para todo j 6∈ J e minx0 = br >
0. Neste caso, a fase 1 termina com aindicacao de que o conjunto admissıvel doprograma linear e vazio.
2. existe pelo menos um j 6∈ J tal que fj > 0.Escolhe-se a variavel nao basica xs a incluirna base a partir de
fs = max{fj : fj > 0
}23
No nosso exemplo concreto, temos por este
criterio s = 1, sendo x1 a variavel escolhida
para passar a basica. A escolha da variavel
que devera passar a nao basica por troca com
x1 e feita usando o criterio do quociente usado
no simplex usual, surgindo
min{2
1,1
1
}⇒ r = 2
devendo por isso x0 saır da base. Da troca
obtem-se o seguinte quadro:
x1 x2 x3 x4 x0 −zx3 0 2 1 1 -1 0 1x1 1 -1 0 -1 1 0 1−z 0 3 0 1 -1 1 -1
Donde x0 = 0 e a Fase 1 termina com uma
solucao basica admissıvel para o programa li-
near dado. A variavel pode pois ser suprimida
pelo que a solucao e dada por x1 = x3 = 1,
x2 = x4 = 0 e o conjunto associado e J =
{3,1}.24
O quadro correspondente a esta solucao e dado
por
x1 x2 x3 x4 −zx3 0 2 1 1 0 1x1 1 -1 0 -1 0 1−z 0 3 0 1 1 -1
que facilmente se constata ser a solucao optima.
Consideremos agora o programa linear
min x1 + 2x2s.a x1 + x2 ≤ 1
x1 − x2 ≥ 2x1, x2 ≥ 0
que pode ser escrito na forma
min x1 + 2x2s.a x1 + x2 + x3 = 1
−x1 + x2 + x4 = −2x1, x2, x3, x4 ≥ 0
25
Tendo em conta o termo independente da se-
gunda restricao, justifica-se o recurso a Fase 1
do metodo simplex, atraves do seguinte qua-
dro:
x1 x2 x3 x4 x0 −zx3 1 1 1 0 0 0 1x4 -1 1 0 1 -1 0 -2−z 1 2 0 0 0 1 0
Facilmente se constata que x4 tem que trocar
com x0, obtendo-se entao o quadro:
x1 x2 x3 x4 x0 −zx3 1 1 1 0 0 0 1x0 1 -1 0 -1 1 0 2−z 1 2 0 0 0 1 0
26
Como f1 > 0 e f2, f4 ≤ 0, entao x1 entra na
base. Alem disso, pelo criterio do quociente,
min{1
1,2
1
}= 1 ⇒ r = 1
e e x3 que vai saır da base por troca com x1:
x1 x2 x3 x4 x0 −zx1 1 1 1 0 0 0 1x0 0 -2 -1 -1 1 0 1−z 0 1 -1 0 0 1 -1
Como fj ≤ 0 para todo o J 6∈ J e b2 = 1 > 0
entao minx0 > 0 e a Fase 1 termina indicando
que o conjunto admissıvel e vazio.
27
Optimos alternativos e degenerescencia
Consideremos um programa linear na formanormal:
min cTxs.a Ax = b
x ≥ 0
e seja J o conjunto de ındices correspondenteas variaveis basicas da solucao optima desseprograma. Se suposermos sem perda de ge-neralidade que J = {1, . . . , m}, entao podemosconsiderar o quadro
x1 x2 . . . xm xm+1 . . . xn −z
x1 1 0 . . . 0 a1,m+1 . . . a1n 0 b1x2 0 1 . . . 0 a2,m+1 . . . a2n 0 b2... ... ... . . . ... ... . . . ... ... ...
xm 0 0 . . . 1 am,m+1 . . . amn 0 bm
−z 0 0 . . . 0 cm+1 . . . cn 1 −z
Alem disso cj ≥ 0 para todo j 6∈ J. Destequadro conclui-se que
z = z + cm+1xm+1 + . . . + cnxn = z +∑i 6∈J
cjxj
28
Se cj > 0 para todo j 6∈ J entao a solucao
optima e unica. Caso contrario, havera variaveis
que com valores diferentes conduzirao ao mesmo
valor da funcao objectivo, pelo que estamos
perante optimos alternativos.
Consideremos o programa linear
min x2s.a x1 + x2 ≤ 1
2x1 + x2 ≤ 2x1, x2 ≥ 0
Introduzindo as variaveis de folga x3 e x4, a
solucao basica admissıvel inicial tem associada
o conjunto J = {3,4} e a forma tabular:
x1 x2 x3 x4 −zx3 1 1 1 0 0 1x4 2 1 0 1 0 2−z 0 1 0 0 1 0
29
Constata-se facilmente que estamos perante
uma solucao optima, mas como c1 = 0, esta
solucao nao e unica, e o aumento do valor de
x1 nao acarretara qualquer alteracao no va-
lor da funcao objectivo. Entao x1 pode pas-
sar a basica por troca com uma das variaveis
basicas, x3 ou x4. Pelo criterio do quociente:
min
{bi
ai1: ai1 > 0
}= min
{1
1,1
2
}= 1
Como se verifica empate, estabelece-se r = 1,
e x1 troca com x3. Obtem-se assim uma nova
solucao basica, a qual corresponde o quadro:
x1 x2 x3 x4 −zx1 1 1 1 0 0 1x4 0 -1 -2 1 0 0−z 0 1 0 0 1 0
Esta solucao basica corresponde ao mesmo va-
lor da funcao objectivo. No exemplo apresen-
tado ocorreu um empate no criterio de quo-
ciente mınimo. Neste caso, estamos em pre-
senca de uma solucao basica degenerada.
30
Tratamento de variaveis sem restricao desinal
Consideremos o programa linear
min cTxs.a Ax = b
xj ≥ 0, j ∈ S
com S um subconjunto de {1, . . . , n} tal queas variaveis xi, com i 6∈ S nao tem restricaode sinal. Quando o numero de variaveis semrestricao de sinal e maior ou igual a m, o pro-blema e em geral ilimitado, pelo que iremosapenas considerar o caso em que e menor quem.
Essas variaveis vao ser introduzidas na baseainda antes da Fase 1 do metodo simplex, eserao obrigadas a permanecer basicas, pelo quenao terao qualquer influencia no desenrolar dometodo. Para isso o criterio do quociente naodevera considerar as linhas das variaveis semrestricao de sinal para efeitos de saıda da base.
31
Consideremos o seguinte exemplo:
min x1 + x2 + x3s.a x1 + x2 − x3 ≤ 1
x1 − x2 + 2x3 ≤ 2x1, x2 ≥ 0
onde a variavel x3 nao tem restricao de sinal.
Introduzindo as slacks x4 e x5 obtemos a se-
guinte solucao basica admissıvel:
x1 x2 x3 x4 x5 −zx4 1 1 -1 1 0 0 1x5 1 -1 2 0 1 0 2−z 1 1 1 0 0 1 0
Como x3 nao tem restricao de sinal, essa variavel
deve de imediato passar a basica, e por aplicacao
do criterio do quociente e x5 que deve saır da
base. Mesmo que so haja elementos negativos
ou nulos na coluna de x3, a escolha recairia
sobre qualquer um dos elementos estritamente
negativos.
32
A troca previamente referida conduz a seguinte
solucao basica admissıvel:
x1 x2 x3 x4 x5 −zx4 3/2 1/2 0 1 1/2 0 2x3 1/2 -1/2 1 0 1/2 0 1−z 1/2 3/2 0 0 -1/2 1 -1
Uma vez colocada x3 na base, e possıvel iniciar
o metodo simplex, de forma a que x3 doravante
nao saia da base. Deste modo, x5 reentra na
base por troca com x4, obtendo-se o quadro:
x1 x2 x3 x4 x5 −zx5 3 1 0 2 1 0 4x3 -1 -1 1 -1 0 0 -1−z 2 2 0 1 0 1 1
Com este quadro chegamos a solucao optima
x1 = x2 = 0, x3 = −1, x4 = 0 e x5 = 4.
33
Forma Revista do Metodo Simplex
A forma revista do metodo simplex revela-se
mais adequada a resolucao de Programas Li-
neares de grande dimensao (muitas variaveis
e/ou muitas restricoes). Consideremos o Pro-
grama Linear na forma normal:
min cTxs.a Ax = b
x ≥ 0
com A de ordem m × n. Seja x uma solucao
basica admissıvel deste programa, a qual esta
associado o conjunto J de ındices, e seja L =
{1, . . . , n}− J. Se B = [A.j]j∈J , entao x e dada
por {xL = 0XJ = b
com
Bb = b
34
Alem disso, se N = [A.j]j∈L, entao{xJ = B−1b−B−1NxL
z = cTJ B−1b +
(cL − cT
J B−1N)
xL
Como se tem xL = 0, entao o valor da funcao
objectivo e
z = cTJ B−1b
Seja agora π ∈ m o vector definido por
BTπ = cJ
Entao
z =((
B−1)T
cJ
)Tb = πTb
e
z = z +∑j∈L
(cj −
((B−1
)TcJ
)A.j
)xj
35
Podemos entao concluir que
z = z +∑j∈L
cjxj
com
cj = cj − πTA.j, z = πTb
No metodo simplex, a solucao basica e optimase cj ≥ 0 para j ∈ L. De outro modo, escolhe-se a coluna s tal que
cs = min{ci : i ∈ L, ci < 0}
A variavel xs deve aumentar o seu valor. Poremcomo todas as outras variaveis nao basicas semantem nulas, tem-se que
xJ = b−(B−1A.s
)xs
Se A.s for dada por
BA.s = A.s
entao
xJ = b−A.sxs
36
Se A.s ≤ 0 entao a funcao objectivo tende para
−∞ no conjunto admissıvel do programa linear.
De outro modo, seja r tal que
θ =br
ars= min
{bi
ais: ais > 0
}
O conjunto J e actualizado por
J = J − {t} ∪ {s}em que t e o ındice da variavel basica corres-
pondente a linha r. As componentes de b sao
actualizadas da seguinte forma:{br = θbi = bi − aisθ, i 6= r
A solucao basica corrente sera dada por xJ = b
e xL = 0. O processo e posteriormente repe-
tido.
37
Passo 0: Sejam J e L = {1, . . . , n} − J e B =
[A.j]j∈J dados. Calcule b dado por Bb = b
(b ≥ 0).
Passo 1: Calcule
BTπ = cJ
z = πTb
cj = cj − πTA.j, j ∈ L
Passo 2: Se cj ≥ 0 para todo j ∈ L, termine:
(xJ = b, xL = 0) e a solucao optima do
problema. De outro modo seja
cs = min{cj : j ∈ L, cj < 0}
38
Passo 3: Calcule A.s a partir de
BA.s = A.s
Se ais ≤ 0 para todo o i = 1, . . . , m termine:
o problema e ilimitado. De outro modo,
calcule
θ =br
ars= min
{bi
ais: ais > 0
}
Passo 4: Actualize J atraves de
J = J − {t} ∪ {s}com t o ındice da variavel basica corres-
pondente a linha r. Faca{br = θbi = bi − aisθ, i 6= r
Volte ao Passo 1.
39
Consideremos o seguinte exemplo:
min x1 − 2x2 + 4x4s.a x1 + x2 + x3 + x4 = 2
x1 − x2 = 1x1, x2, x3, x4 ≥ 0
Se J = {1,3}, entao L = {2,4}. Alem disso
B =
[1 11 0
]e
Bb = b ⇔[
1 11 0
] [b1b2
]=
[21
]⇔
{b1 = 1b2 = 1
Portanto a solucao basica (xJ = b, xL = 0) e
admissıvel e pode servir como solucao inicial
do metodo simplex. Assim, no Passo 1 temos
que resolver o sistema BTπ = cJ, ou seja,[1 11 0
] [π1π2
]=
[10
]
40
obtendo-se
π =
[01
]e z = πTb =
[01
]T [21
]= 1
Como L = {2,4}, vem
c2 = c2 − πTA.2 = −2−[
01
]T [1−1
]= −1
c4 = c4 − πTA.4 = 4−[
01
]T [10
]= 4
De onde a solucao obtida nao e optima e s = 2.No Passo 3 resolve-se o sistema BA.2 = A.2,ou seja[
1 11 0
] [a12a22
]=
[1−1
]⇔
{a12 = −1a22 = 2
Entao a22 e o unico elemento positivo da co-luna 2 e nesse caso r = 2. Como x3 e a variavelbasica correspondente a r = 2, entao os con-juntos J e L sao actualizados atraves de
J = J − {3} ∪ {2} = {1,2}, L = {3,4}41
e o vector b a partir de b2 = θ = b2a22
= 12
b1 = b1 − θa12 = 1−(12
)(−1) = 3
2
A nova solucao basica e dada por
(xJ = b, xL = 0)
ou seja x1 = 32, x2 = 1
2, x3 = x4 = 0.
A matriz base associada a esta solucao e
B = [A.j]j∈J =
[1 11 −1
]Voltando ao Passo 1, executa-se uma nova
iteracao, comecando por calcular o vector π
a partir de BTπ = cJ, ou seja[1 11 −1
] [π1π2
]=
[1−2
]⇔
{π1 = −1
2π2 = 3
2
42
Entao
z = πTb =
[−1
232
]T [21
]=
1
2
c3 = c3 − πTA.3 = 0−[−1
232
]T [10
]=
1
2
c4 = c4 − πTA.4 = 4−[−1
232
]T [10
]=
9
2
Como cj ≥ 0 para j ∈ L, estamos perante a
solucao optima, dada por x1 = 32, x2 = 1
2,
x3 = x4 = 0, com valor optimo igual a z = 12.
43
Dualidade Linear
Dado o Programa Linear, designado por Pri-
mal,
min cTxs.a Ax = b
x ≥ 0
define-se o correspondente Dual como sendo
o Programa Linear:
max bTu
s.a ATu ≤ c
Na seguinte tabela apresentamos a correspondencia
entre primal e dual, supondo que a matriz A e
de ordem m× n:
Primal DualN de restricoes m nN de variaveis n m
Variaveis ≥ 0 restricoes ≤Restricoes igualdade variaveis s/ restricoes
Matriz A AT
coeficientes de custo c btermos independentes b c
44
A tıtulo de exemplo, construamos o dual do
seguinte programa:
min x1 + x2 − x3s.a x1 − 2x2 + 3x3 = 1
2x1 + x3 = −1x1, x2, x3 ≥ 0
De acordo com a tabela anterior, o dual deste
programa tomara o seguinte aspecto:
max u1 − u2u1 + 2u2 ≤ 1−2u1 ≤ 13u1 + 3u2 ≤ −1
No caso de o programa primal ter desigualda-
des do tipo ≥ ou variaveis sem restricao de
sinal, aplica-se a tabela:
Primal DualDesigualdade ≥ Variavel ≥ 0
Variavel sem restricao Restricao de igualdade
45
Determinemos o dual do seguinte programa:
min x1 − x2x1 + 2x2 ≥ 1−x1 − x2 + x3 = 0x1, x3 ≥ 0
Aplicando as duas tabelas anteriores, conclui-
mos que o dual deste programa e dado por
max u1u1 − u2 ≤ 12u1 − u2 = −1u2 ≤ 0u1 ≥ 0
Suponhamos um programa primal apenas com
desigualdades:
min cTxs.a Ax ≥ b
x ≥ 0
46
O seu dual tem a forma:
max bTu
s.a ATu ≤ cu ≥ 0
De notar que quer o primal quer o dual estao
na forma canonica, sendo por isso designados
de duais canonicos.
Seguidamente estabelecemos algumas proprie-
dades dos programas duais:
• O dual do dual de um programa linear e o
programa primal.
47
• Se
KP = {x ∈ n : Ax = b, x ≥ 0}e
KD ={u ∈ m : ATu ≤ c
}sao os conjuntos admissıveis do programa
primal e do programa dual respectivamente,
entao quaisquer que sejam x ∈ KP e u ∈KD,
bTu ≤ cTx
Esta ultima propriedade mostra que o valor ob-
jectivo de qualquer solucao admissıvel do dual
e sempre menor ou igual ao valor da funcao ob-
jectivo de qualquer solucao admissıvel do pri-
mal.
48
1. O primal tem solucao optima de valor z se
e so se o dual tem solucao optima de valor
w e alem disso z = w.
2. Se o primal e ilimitado inferiormente, o
dual e nao admissıvel.
3. Se o dual e ilimitado superiormente, o pri-
mal e nao admissıvel.
4. Se os programas primal e dual sao admissıveis,
entao ambos os programas admitem solucoes
optimas e os valores optimos sao iguais.
49
Podemos reunir os varios casos possıveis no
quadro seguinte:
......................................................................................................................................................................................................................................................................................................................................
Primal
Dual
Admissıvel Nao
Admissıvel
Admissıvel
Nao
Admissıvel
z = w
finitosw →∞
z → −∞ (Impossıvel)
50
Vejamos agora algumas situacoes concretas:
Caso I: KP 6= ∅, KD 6= ∅. Consideremos oprograma
min x1 − x2s.a x1 + x2 ≤ 1
x1, x2 ≥ 0
O seu dual e
max u1s.a u1 ≤ 1
u1 ≤ −1
Geometricamente, a situacao e a seguinte:
........................................................................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
......................
................
................................................................................................................................................................................................................................................................................................................................................................................................................
................................ ................................................................
................................................................................................
................................................................
................................................................................................
................................................................
................................
.................................................................................................................................................................
......................................
KP
Primal
−1 0 1
optimo (w = −1)
optimo (z = −1)
Dual
KD
51
Caso II: KP 6= ∅, KD = ∅. Consideremos o
programa
min −x1 − x2s.a x1 − x2 = 2
x1, x2 ≥ 0
O seu dual e
max 2u1s.a u1 ≤ −1
−u1 ≤ −1
Geometricamente,
................................................................................................................................................................................................
................................................................................................................................
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
qqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq
Primal
−1
Dual
KP
0 1
KD = ∅
52
Caso III: KP = ∅, KD 6= ∅. Consideremos o
programa
min x1s.a −x1 = 4
x1 ≥ 0
O seu dual e
max 4u1s.a −u1 ≤ 1
Geometricamente,
Primal
−1
Dual
KD
−4 0
KP = ∅
53
Caso IV: KP = ∅, KD = ∅. Consideremos o
programa
min −x1 − x2s.a −x1 + x2 = 4
x1 − x2 = 4x1, x2 ≥ 0
O seu dual e
max 4u1 + 4u2s.a −u1 + u2 ≤ −1
u1 − u2 ≤ −1
Geometricamente,
................................................................................................................................................................................................
................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................
................................................................................................................................
......................................................................................................
......................................................................................................
......................................................................................................
......................
......................
.................... ......................................
......................
......................
.................... ......................................
......................
......................
.................... ......................................
Primal Dual
4
4
KP = ∅
1
1 KD = ∅
54
Propriedade dos Desvios Complementares
Trata-se de um resultado que estabelece relacoes
importantes entre o programa primal e o seu
dual, e que pode ser enunciado da forma se-
guinte:
Consideremos os programas (P) e (D) dados
por, respectivamente,
min cTxs.a Ax ≥ b
x ≥ 0
e
max bTu
s.a ATu ≤ cu ≥ 0
55
Se x e u sao solucoes optimas de (P) e de (D),respectivamente, entao:
1. xi > 0 ⇒ (ATu− c)i = 0;
2. (ATu− c)i < 0 ⇒ xi = 0;
3. ui > 0 ⇒ (Ax− b)i = 0;
4. (Ax− b)i > 0 ⇒ ui = 0.
Esta propriedade tambem e conhecida como oTeorema de Complementaridade de Slacks.
Se x e u sao solucoes admissıveis de (P) e de(D) respectivamente, tais que
xT (ATu− c) = uT (Ax− b) = 0
Entao
cTx = xTc = xTAu = uTATx = uTb = bTu
56
Neste caso, x e u sao solucoes optimas de (P)
e de (D) respectivamente.
Desta forma, pode-se concluir que x e solucao
optima de (P) e u e solucao optima de (D) se
e so se (x, u) satisfaz ao sistema:
Ax ≥ bx ≥ 0ATu ≤ cu ≥ 0xT (ATu− c) = 0uT (Ax− b) = 0
Por outro lado, se o primal for da forma
min cTxs.a Ax = b
x ≥ 0
entao o dual e da forma
max bTu
ATu ≤ c
57
Desta forma x e u serao optimos respectiva-mente do primal e do dual se (x, u) satisfizera:
Ax = bx ≥ 0ATu ≤ c
xT (ATu− c) = 0
Como exemplo, consideremos o programa
min x1 − x2s.a x1 + x2 = 1
x1, x2 ≥ 0
O seu dual e
max u1s.a u1 ≤ 1
u1 ≤ −1
e teremos um sistema da forma
x1 + x2 = 1x1, x2 ≥ 0u1 ≤ 1u1 ≤ −1x1(u1 − 1) + x2(u1 + 1) = 0
58
De notar que, uma vez que u1 − 1 ≤ 0, u1 +
1 ≤ 0 e x1, x2 ≥ 0, entao x1(u1 − 1) ≤ 0 e
x2(u1+1) ≤ 0. Logo a 5 expressao desdobra-
se em
x1(u1 − 1) = 0
x2(u1 + 1) = 0
Por outro lado, como u1 ≤ −1 entao u1 < 1 e
u1 − 1 < 0, logo x1 = 0. Substituindo na 1
expressao, temos x2 = 1. Entao necessaria-
mente u1 + 1 = 0 e u1 = −1.
59
O Metodo Dual Simplex
Consideremos o seguinte Programa Linear:
min cTxs.a Ax = b
x ≥ 0
Em cada iteracao do simplex e determinada
uma solucao basica primal admissıvel, satisfa-
zendo a
xJ = b ≥ 0, xL = 0
com J o conjunto das variaveis basicas, L o
conjunto das variaveis nao basicas e
Bb = b
com B = [A.j]j∈J .
Recordemos que em cada iteracao o vector π ∈m e determinado a partir de
BTπ = cJ
60
No caso de existir solucao optima o algoritmo
termina com
cj = cj − πTA.j ≥ 0, j ∈ L
Consideremos agora o dual do programa ante-
rior:
max bTu
s.a ATu ≤ c
E possıvel demonstrar que o vector π acima e
uma solucao admissıvel do dual. Deste modo o
metodo simplex utiliza em cada iteracao solucoes
primal admissıveis, terminando quando se obtem
uma solucao dual admissıvel. Se nao existir ne-
nhuma solucao dual admissıvel, obviamente o
dual e inadmissıvel e entao o primal e ilimitado.
61
O metodo dual simplex resolve o programa
primal usando solucoes dual admissıveis e pa-
rando quando encontra uma solucao primal ad-
missıvel. Assim, em cada iteracao tem-se
cj = cj − πTA.j ≥ 0, j 6∈ J
com BTπ = cJ, e procura-se uma solucao de
base B tal que
Bb = b, b ≥ 0
Passemos agora a descrever uma iteracao do
metodo dual simplex. Suponhamos sem perda
de generalidade que J = {1, . . . , m}. O quadro
simplex correspondente ira ser
x1 x2 . . . xm xm+1 . . . xs . . . xn −z
x1 1 0 . . . 0 a1,m+1 . . . a1s . . . a1n 0 b1x2 0 1 . . . 0 a2,m+1 . . . a2s . . . a2n 0 b2...
...... . . . ...
......
......
...xm 0 0 . . . 1 am,m+1 . . . ams . . . amn 0 bm
−z 0 0 . . . 0 cm+1 . . . cs . . . cn 1 −z
62
Como esta solucao e dual admissıvel, entao
tem-se
cj ≥ 0, j 6∈ J
Se alem disso b ≥ 0, entao a solucao e tambem
primal admissıvel e nesse caso sera optimo, ter-
minando aqui o processo.
Suponhamos entao sem perda de generalidade
que bm < 0. Entao xm saira da base por troca
com uma variavel nao basica. Porem, do qua-
dro anterior tem-se que
xm = bm−am,m+1xm+1−. . .−amsxs−. . .−amnxn
Se amj ≥ 0 para todo o j 6∈ J, entao xm vai ser
negativo para todo o j 6= m desde que xj ≥ 0.
Entao o primal e inadmissıvel e o dual ilimi-
tado.
63
De outro modo, existe pelo menos um j 6∈ J
tal que amj < 0, e entao xm troca com uma
variavel nao basica. Vejamos agora como es-
colher esta variavel xs.
Pretende-se que os custos sejam actualizados
por forma que
cj − csamj
ams≥ 0
Isto implica que ha duas possibilidades:
Se amj ≥ 0 entao cj mantem-se nao negativo.
De outro modo, tem-se que seleccionar xs de
maneira que
cs
−ars= min
{cj
−arj: arj < 0, j 6∈ J
}
Em seguida passamos a resumir os passos do
metodo dual simplex:
64
Passo 0: Seja x uma solucao basica dual ad-missıvel associada a um conjunto J (cj ≥ 0para todo j 6∈ J).
Passo 1: Se b ≥ 0, termine: (xJ = b, xL = 0) esolucao optima do programa linear. De outromodo, seja
br = min{bi : bi < 0}
Passo 2: Se arj ≥ 0 para todo j 6∈ J, termine:o programa nao e admissıvel. De outro modo,calcule s com base em
cs
−ars= min
{cj
−arj: arj < 0, j 6∈ J
}
Passo 3: Actualize J atraves de
J = J − {t} ∪ {s}em que t e o ındice da variavel basica corres-pondente a r-esima linha do quadro.
Passo 4: Utilize as operacoes elementares paraactualizar o quadro e regresse ao Passo 1.
65
Problema de Transportes
Este problema consiste em programar a distri-
buicao optima de um produto que:
1. se encontra disponıvel em m origens com
quantidades fixas ai > 0, i = 1, . . . , m (oferta);
2. e necessario em n destinos com quantida-
des bj > 0, j = 1, . . . , n (procura);
3. deve ser enviado para os destinos, esgo-
tando as disponibilidades de cada origem e
satisfazendo as necessidades em cada des-
tino.
Alem disso procura-se minimizar o custo total
envolvido no programa de distribuicao desse
produto.
66
Sabendo que o custo unitario de transporte do
produto da origem i para o destino j e dado
por cij, o programa de distribuicao do pro-
duto pode ser representado graficamente da
seguinte forma:
........
......................
.................................................................................................................................. ........
......................
..................................................................................................................................
........
......................
.................................................................................................................................. ........
......................
..................................................................................................................................
........
......................
.................................................................................................................................. ........
......................
..................................................................................................................................
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
....................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
.................................................
.................................................
.................................................
.................................................
..................................................
.................................................
.................................................
................................................
...........................
......................................
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
.........................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
......................................
.................................................
.................................................
.................................................
.................................................
.................................................
.................................................
.................................................
.................................................
........................................................
......................................
1 1
i j
m n
Oferta Procura
a1
ai
am
b1
bj
bn
c11
c1j
c1n
ci1cij
cin
cm1cmj
cmn
Este tipo de representacao e conhecido por
Grafo, denotado por G = (V, E), em que V
e o conjunto de vertices e E o conjunto das
arestas.
67
A formulacao matematica do problema de trans-
portes e a seguinte:
minm∑
i=1
n∑j=1
cijxij
sujeito am∑
i=1
xij = ai, i = 1, . . . , m
n∑j=1
xij = bj, j = 1, . . . , n
xij ≥ 0, i = 1, . . . , m, j = 1, . . . , n
onde as variaveis xij representam as quantida-
des a enviar da origem i para o destino j. Para
que o problema seja possıvel de resolver e ne-
cessario que a quantidade a enviar seja igual a
que chega aos destinos, ou seja,
m∑i=1
ai =n∑
j=1
bj
68
A tıtulo de exemplo, suponhamos que uma em-
presa possui dois armazens A1 e A2 com 100 e
50 unidades de um determinado produto com
que abastece tres mercados M1, M2 e M3 que
consomem respectivamente 80, 30 e 40 unida-
des. Alem disso os custos de transporte dos
armazens Ai para os mercados Mj sao dados
pela seguinte tabela:
M1 M2 M3A1 5 3 2A2 4 2 1
O grafo associado a este problema e o se-
guinte:
........
......................
..................................................................................................................................
........
......................
..................................................................................................................................
........
......................
..................................................................................................................................
........
......................
.................................................................................................................................
........
......................
.................................................................................................................................
..................................
...................................
...................................
...................................
...................................................
.....................................................................................................................................................................................
......................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................
................................................................
...............................................................
...................................................
..............................................................................................................................................................................................
1
2
1
2
3
53
24
2
1
100
50
80
30
40
ai bj
69
A formulacao matematica deste problema e a
seguinte:
min 5x11 + 3x12 + 2x13 + 4x21 + 2x22 + x23s.a x11 + x12 + x13 = 100
x21 + x22 + x23 = 50x11 + x21 = 80x12 + x22 = 30x13 + x23 = 40xij ≥ 0, i = 1,2, j = 1,2,3
Seguidamente apresentamos dois resultados fun-
damentais para a resolucao deste tipo de pro-
blemas:
1. O problema de transportes tem solucao
optima.
2. Se Ax = d sao as restricoes de igualdade
do problema de transportes, entao a carac-
terıstica de A e igual a m + n− 1.
70
Daqui podem-se tirar os resultados seguintes:
1. Se ai e bj sao numeros inteiros, entao qual-
quer solucao basica admissıvel tem valores
inteiros.
2. Se cij sao numeros inteiros, entao qualquer
solucao dual basica tem valores inteiros.
Estamos agora em condicoes de investigar a
utilizacao do metodo simplex aplicado a este
tipo de problemas. O processo ira consistir em
duas fases, na primeira das quais se obtera uma
solucao basica admissıvel inicial, que ira iniciar
a segunda fase, na qual se obtera uma solucao
optima. Iremos constatar que estas duas fases
sao no caso do problema de transportes mais
simples que no caso geral.
71
Determinacao de uma solucao basica
admissıvel inicial
Em ambas as fases do processo iremos usar
quadros da forma:
DestinosOrigens 1 2 . . . n Oferta
c11 c12 c1n1 x11 x12 . . . x1n a1
c21 c22 c2n2 x21 x22 . . . x2n a2
......
......
......
cm1 cm2 cmnm xm1 xm2 . . . xmn am
Procura b1 b2 . . . bn
Vejamos como fica o quadro aplicado ao nosso
exemplo anterior. A solucao basica{x11 = 80, x12 = 20, x22 = 10, x23 = 40x13 = x21 = 0
DestinosOrigens 1 2 3 Oferta
5 3 21 80 20 100
4 2 12 10 40 50
Procura 80 30 40
72
Facilmente se constata neste quadro que as
somas dos valores das variaveis em cada linha
(coluna) sao iguais ao valor de oferta (procura)
referente a essa linha (coluna). Isto significa
que a solucao dada neste quadro satisfaz as
relacoes de igualdade do problema de trans-
portes. Como alem disso todos os valores das
variaveis sao nao negativos, trata-se de uma
solucao admissıvel do problema.
Regra do Canto Noroeste: processo de ob-
tencao de uma solucao basica admissıvel ini-
cial.
Comeca-se por dar um valor nao negativo a
variavel situada na entrada a noroeste (x11).
Este valor e atribuido de modo a nao violar ne-
nhuma das restricoes de igualdade e ao mesmo
tempo esgotar uma das ofertas ou procura.
Assim
x11 = min{a1, b1}73
Primeiro Caso: x11 = a1 < b1. A oferta na
linha 1 e esgotada, mas a procura na coluna 1
fica por satisfazer e tera o valor b1 − a1. Por-
tanto todas as variaveis dessa linha serao nulas
(nao basicas) e essa linha deixa de ser consi-
derada.
Segundo Caso: x11 = b1 < a1. E a situacao
inversa da anterior. A procura na coluna 1 e
esgotada enquanto a linha 1 passa a ter uma
oferta de a1 − b1. A coluna 1 deixa de ser
considerada em futuros desenvolvimentos, ou
seja, as restantes variaveis dessa coluna sao
nao basicas com valor nulo.
Terceiro Caso: x11 = a1 = b1. Neste caso
quer a oferta quer a procura sao esgotadas.
No entanto nao podemos tornar nao basicas
as variaveis nulas, pois isso iria conduzir a uma
solucao basica com menos de m+n−1 variaveis.
74
Neste caso consideram-se nao basicas apenas
as variaveis correspondentes a linha 1 ficando
apenas a oferta esgotada. A procura ficara
com valor zero, pelo que a solucao basica sera
degenerada.
Este tipo de processo e repetido e m + n −1 iteracoes conduzirao a uma solucao basica
admissıvel. Aplicando ao nosso exemplo,
x11 = min{80,100} = 80
e esgota-se a procura na coluna 1. Entao a
outra variavel dessa coluna, x21 sera nula e nao
basica. A oferta na linha 1 passara a ser 100−80 = 20. Portanto apos a primeira iteracao
teremos o quadro:
DestinosOrigens 1 2 3 Oferta
5 3 21 80 20
4 2 12 nb 50
Procura 0 30 40
75
A regra do canto noroeste vai agora determinar
o valor da variavel
x12 = min{20,30} = 20
A oferta fica esgotada e a procura nessa colunavai ficar igual a 30 − 20 = 10, obtendo-se oseguinte quadro:
DestinosOrigens 1 2 3 Oferta
5 3 21 80 20 nb 0
4 2 12 nb 50
Procura 0 10 40
A regra do Canto Noroeste escolhe agora
x22 = min{10,50} = 10
obtendo-se
DestinosOrigens 1 2 3 Oferta
5 3 21 80 20 nb 0
4 2 12 nb 10 40
Procura 0 0 40
76
Finalmente, x23 = min{40,40} = 40 e obtem-se
DestinosOrigens 1 2 3 Oferta
5 3 21 80 20 nb 0
4 2 12 nb 10 40 0
Procura 0 0 0
que corresponde a solucao admissıvel que apre-
sentamos anteriormente.
77
Metodo Simplex para o Problema de
Transportes
O metodo simplex consiste nos seguintes pas-
sos:
Primeiro: Determinacao da variavel nao basica
xs que passa a basica, a partir de
crs = min{cij, (i, j) ∈ L}com L o conjunto dos ındices (i, j) nao basicas.
Alem disso
cij = cij − πTAij
com π ∈ n+m uma solucao dual. Se cij ≥ 0
para todo o (i, j) ∈ L entao a solucao basica
admissıvel corrente e optima.
78
Segundo: Determinacao da variavel basica a
passar a nao basica: A variavel xrs escolhida
no passo primeiro deve tomar o valor positivo
θ tal que nenhuma variavel basica viole as res-
tricoes de nao negatividade e de igualdade do
problema. Esse valor θ e atingido para um
certo par (l, k) e xlk passa a nao basica com
valor igual a zero.
Vamos discutir como efectuar estes passos usando
a estrutura apresentada anteriormente. O pri-
mal e o dual deste problema podem ser escritos
da seguinte forma:
minz = c11x11 + . . . +c1nx1n + . . . +cm1xm1 + . . . +cmnxmn
≥ ≥ ≥ ≥s.a(u1) x11 . . . +x1n = a1
. . . ...(um) xm1 + . . . +xmn = am
(v1) x11 +xm1 = b1. . . . . . ...
(vn) x1n xmn = bn
79
Tendo em conta o teorema da complementa-
ridade de slacks, tem-se
ui + vj = cij, para todo (i, j) ∈ J
com J o conjunto dos ındices (i, j) das variaveis
basicas. Como J tem m + n − 1 elementos e
as variaveis ui e vj sao m + n, entao o sistema
assim formado e indeterminado. Uma solucao
pode ser obtida fazendo u1 = 0 e obtendo as
restantes variaveis. Consideremos o exemplo
da seccao anterior. Iremos obter:u1 + v1 = 5u1 + v2 = 3u2 + v2 = 2u2 + v3 = 1
Fazendo u1 = 0 facilmente se obtem as res-
tantes variaveis, obtendo-se v1 = 5, v2 = 3,
u2 = −1 e v3 = 2.
80
Na pratica os valores de ui e vj sao calculadoscom recurso ao quadro seguinte:
vj 5 3 2Destinos
ui Origens 1 2 3 Oferta5 3 2
0 1 80 20 1004 2 1
−1 2 10 40 50Procura 80 30 40
Para calcular os coeficientes dos custos reduzi-dos associados as variaveis nao basicas (i, j) ∈L usa-se a formula
cij = cij − πTAij
Para o problema de transportes e possıvel mos-trar que
cij = cij − (ui + vj)
Estas formulas sao muito faceis de calcular di-rectamente a partir do quadro, onde as assi-nalaremos a negrito:
vj 5 3 2Destinos
ui Origens 1 2 3 Oferta5 3 2
0 1 80 20 0 1004 2 1
−1 2 0 10 40 50Procura 80 30 40
81
Constata-se que neste caso estamos perante a
solucao optima, uma vez que cij ≥ 0, (i, j) ∈ L.
Vamos agora considerar o problema da deter-
minacao do valor maximo θ que uma variavel
xrs escolhida pode tomar. Essa variavel per-
tence a uma linha r e a uma coluna s. O caso
mais simples e aquele em que o aumento do
valor de xrs de zero para θ apenas afecta duas
variaveis basicas xrj e xis, segundo o esquema:
..........
..........
..........
..........
..........
..........
......................................
......................................
...................................... ...........................
...........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
..........
−θ
−θ
+θ
+θ
r
i
j s
Se aumentarmos xrs de zero para um valor θ >
0 entao as variaveis xrj e xis vao ter que reduzir
os seus valores em exactamente θ.82
Isso vai implicar que a variavel basica xij au-
mente θ de modo a equilibrar as equacoes i e
j referentes a origem i e destino j. Esse valor
θ e calculado atraves de
θ = min{xrj, xis}Entao pelo menos uma dessas variaveis fica
nula e passa a nao basica. Se ambas as variaveis
ficarem nulas, entao passamos xrj a nao basica
ficando a outra variavel basica com valor nulo.
Acabamos de descrever um ciclo com quatro
variaveis correspondente a variavel nao basica
escolhida e a tres variaveis basicas. Podera
acontecer formarem-se ciclos com 6 ou qual-
quer outro numero par de variaveis.
83
Seguidamente apresentamos um ciclo com 6
elementos.
......................................
......................................
......................................
...................................... ...........................
........... ...........................
...........
−θ
+θ −θ
+θ −θ
+θr
t
i
j t s
Procedendo como anteriormente tem-se
θ = min{xis, xlt, xrj}Entao uma dessas variaveis basicas fica nula
e passa a nao basica, podendo tambem algu-
mas variaveis basicas ficar nulas. Nesse ultimo
caso e tal como anteriormente procura-se pas-
sar a nao basica a variavel que esgota a oferta
deixando a outra (ou outras) variaveis basicas
com valor nulo.
84
Consideremos o problema representado pelo
seguinte grafo:
........
......................
.................................................................................................................................
..............................
..................................................................................................................................
........
......................
.................................................................................................................................
..............................
..................................................................................................................................
..............................
..................................................................................................................................
..............................
..................................................................................................................................
..............................
..................................................................................................................................
.................................................
................................................
.................................................
.................................................
..................................................
.............................
......................................
.............................................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................................................................................................................
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................................................................................
.................................................
.................................................
.................................................
.................................................
................................................
....................
........................
................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................................................................
...............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................................................................................
.................................................
.................................................
.................................................
.................................................
................................................
....................
........................
................................................................................................................................................................................................................................................................................................
1
2
3
4
3
2
1
8
3
59
17
46
3 8
2
4
200
700
100
250
350
200
200
Usando a regra do Canto Noroeste obtem-se aseguinte solucao basica admissıvel inicial:
DestinosOrigens 1 2 3 4 Oferta
8 3 5 91 200 200
1 7 4 62 50 350 200 100 700
3 8 2 43 100 100
Procura 250 350 200 200
85
As variaveis duais ui (i = 1,2,3) e vj (j =1,2,3,4) e os coeficientes de custo reduzidosdas variaveis nao basicas sao calculados comoanteriormente e os valores sao apresentados noquadro seguinte:
vj 8 14 11 13Destinos
ui Origens 1 2 3 4 Oferta8 3 5 9
0 1 200 -11 -6 -4 2001 7 4 6
-7 2 50 350 200 100 7003 8 2 4
-9 3 4 3 0 100 100Procura 250 350 200 200
Entao (r, s) = (1,2) e forma-se o ciclo
.....................
................................................................................ ........
.............................................................................................
.....................
................................................................................ ........
.............................................................................................
x11 = 20 x12 = 0
x22 = 350x21 = 50
86
Portanto θ = min{200,350} = 200 e a solucao
basica e actualizada modificando os valores das
variaveis basicas da forma seguinte:
.....................
................................................................................ ........
.............................................................................................
.....................
................................................................................ ........
.............................................................................................
x11 = 200− 200 = 0
x21 = 50 + 200 = 250
x12 = 0 + 200 = 200
x22 = 350− 200 = 150
No proximo quadro apresentamos a nova solucaobasica admissıvel, bem como os valores dasvariaveis duais e os custos reduzidos das novasvariaveis nao basicas:
vj -3 3 0 2Destinos
ui Origens 1 2 3 4 Oferta8 3 5 9
0 1 11 200 5 7 2001 7 4 6
4 2 250 150 200 100 7003 8 2 4
2 3 4 3 0 100 100Procura 250 350 200 200
87
Entao
cij ≥ 0 para todo (i, j) ∈ L
com L o conjunto das variaveis nao basicas.
Portanto a solucao basica dada pelo quadro
e optima e e representada pelo seguinte dia-
grama:
........
......................
.................................................................................................................................
..............................
..................................................................................................................................
........
......................
.................................................................................................................................
..............................
..................................................................................................................................
..............................
..................................................................................................................................
..............................
..................................................................................................................................
..............................
..................................................................................................................................
.............................................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................
......................................................................................................................................................................................................................................................................................................................................................................................
................................................................................................................................................................................................................................................................................................
..................................................
.................................................
.................................................
.................................................
.................................................
..................
........................
1
2
3
4
3
2
1
200
700
100
250
350
200
200
200
250 150
200
100
100
88