Você está na página 1de 32

Amade Muaquitiquinissa

Anli Ussene Muarecha


Assane Ibraimo Augusto
Francisco Pedro Maco
Grit Alberto
Jlio Jos Marcos Jos
Dimas Da Silva Wateca
Nelson Lus Mussa

Mtodos Simples e teoria de dualidade


Licenciatura em Informtica

Universidade Pedaggica
Nampula
2016

Amade Muaquitiquinissa
Anli Ussene Muarecha
Assane Ibraimo Augusto
Francisco Pedro Maco
Grit Alberto
Jlio Jos Marcos Jos
Dimas Da Silva Wateca
Nelson Lus Mussa

Mtodos Simples e teoria de dualidade


Trabalho de investigao da cadeira de
Investigao Operacional, a ser apresentado
no departamento de ESTEC sob orientao
do docente da cadeira
Docente: Rivelinho Manuel Mohamade

Universidade Pedaggica
Nampula
2016

ii

ndice
ndice de tabelas ............................................................................................................................. iv
ndice de Figuras ............................................................................................................................. v
Lista de Abreviaturas ...................................................................................................................... vi
Introduo ........................................................................................................................................ 7
Objetivo geral .................................................................................................................................. 7
Objetivos especficos ....................................................................................................................... 7
Mtodo simplex ............................................................................................................................... 8
Tcnica de base artificial ................................................................................................................. 8
Variveis Artificiais ......................................................................................................................... 8
M-Grande (Penalidades) .................................................................................................................. 9
Formalizao do problema .............................................................................................................. 9
Processo para construir uma nova linha Z ..................................................................................... 11
Mtodo Simplex em Duas Fases ................................................................................................... 12
Soluo inicial ............................................................................................................................... 13
Fase 1 - Primeira iterao .............................................................................................................. 14
Fase 1 - Segunda iterao .............................................................................................................. 14
Fase 2 - Primeira iterao .............................................................................................................. 15
Soluo tima encontrada .............................................................................................................. 15
Problemas de minimizao ............................................................................................................ 15
Degenerescncia e entrada em ciclo (Tcnica da Perturbao) ..................................................... 16
Tcnica da Perturbao. ................................................................................................................. 17
Dualidade ....................................................................................................................................... 19
Definio e formulao do problema dual .................................................................................... 19
Propriedades da dualidade ............................................................................................................. 22
Algoritmo dual Simplex ................................................................................................................ 25

iii

Anlise de Sensibilidade ................................................................................................................ 28


Justificativa para usar Anlise de Sensibilidade ............................................................................ 28
Contextualizao ........................................................................................................................... 28
Problema de Planeamento da Produo......................................................................................... 29
Concluso ...................................................................................................................................... 30
Bibliografia .................................................................................................................................... 31

iv

ndice de tabelas
Tabela 1: Primeiro passo do algoritmo simplex. Fonte (ESTVO, 1998). ................................ 10
Tabela 2: Processo para construir uma nova linha Z. Fonte (ESTVO, 1998). ......................... 11
Tabela 3: Primeira iterao. Fonte (ESTVO, 1998). ................................................................ 11
Tabela 4: Segunda iterao. Fonte (ESTVO, 1998). ................................................................ 11
Tabela 5: Soluo tima. Fonte (ESTVO, 1998). .................................................................... 12
Tabela 6: Colocando a funo objetivo na ltima linha. Fonte (LISBOA, 2002, p. 28 31). ...... 14
Tabela 7: Primeira iterao. Fonte (LISBOA, 2002, p. 28 31)................................................... 14
Tabela 8: segunda iterao. Fonte (LISBOA, 2002, p. 28 31). .................................................. 14
Tabela 9: Fim da primeira fase. Fonte (LISBOA, 2002, p. 28 31). ............................................ 15
Tabela 10: Primeira iterao da segunda fase. Fonte (LISBOA, 2002, p. 28 31). ..................... 15
Tabela 11: Resoluo de um problema de maximizao. ............................................................. 18
Tabela 12: Construo do problema dual com base no problema primal. Fonte (CANTO &
STARK, p. 68 70). ...................................................................................................................... 20
Tabela 13: Regras para construir o problema dual, fonte (CANTO & STARK, p. 68 70). .... 21
Tabela 14: Resumo das propriedades duais. Fonte (CANTO & Stark, p. 71 78). ................... 25
Tabela 15: Resumo do algoritmo dual simplex ............................................................................. 25
Tabela 16: Quadro simplex............................................................................................................ 26
Tabela 17: Aplicando as regras de pivotao ................................................................................ 27
Tabela 18: Novo tabela apos operao de pivotao ..................................................................... 27

ndice de Figuras
Figura 1: Soluo final do mtodo dual......................................................................................... 28

vi

Lista de Abreviaturas
PL Programao linear
SBA Soluo Bsica admissvel
VB varivel bsica
VNB Varivel No Bsica

Introduo
Um dos problemas de programao linear consiste em maximizar ou minimizar uma funo
linear sujeita a um conjunto de restries lineares. Tal problema , sem dvida, o modelo de
otimizao mais frequente usado seja em planeamento da produo, alocao de recursos, bem
como em muitos outros aspetos da tomada de deciso em indstrias, economia, transporte,
engenharia, etc.
Neste trabalho o mtodo simplex e a teoria de dualidade, so investigados com nfase na
compreenso do seu desempenho.
Portanto, um dos conceitos mais importantes em programao linear o de dualidade. Qualquer
problema de PL tem associado um outro problema de PL, chamado o Dual. Neste contexto, o
problema original denomina-se por Primal. Um dos principais papis da teoria da dualidade
a interpretao e implementao da anlise de sensibilidade, que uma parte muito importante
de um estudo de PL. Estudos mostraram que intrinsecamente associado a cada modelo de PL
(denominado Primal) h outro modelo (denominado Dual) com vrias interessantes
propriedades.
Objetivo geral
Compreender o mtodo simplex e a teoria da dualidade no enquadramento da resoluo
de problemas de Programao linear
Objetivos especficos
Usar vrios mtodos de resoluo de problemas de Programao linear para produo
de solues em tempo real;
Saber maximizar e minimizar uma funo linear a partir dos mtodos de e tcnicas de
programao linear;

Mtodo simplex
O mtodo simplex desenvolvido por Dantzig (1953) refere-se a um problema de Programao
Linear de minimizao. Este mtodo tem por objetivo resolver um problema linear trazendo
como resposta a melhor soluo admissvel para o contexto do problema.
Os problemas de otimizao linear consistem na minimizao ou maximizao de uma funo
linear sujeita a um nmero finito de restries lineares sobre as variveis envolvidas.
Iterao: Mover-se para um melhor PE admissvel adjacente. (Repetir este passo quantas vezes
forem necessrias). Este movimento implica a converso de uma VNB numa VB (chamada a
varivel bsica de entrada) e, simultaneamente, a converso de uma VB numa VNB (chamada
varivel bsica de sada), para depois identificar a nova SBA.
Teste de optimalidade : O PE admissvel atual timo se nenhum dos PE admissveis seus
adjacentes so melhores.
Tcnica de base artificial
Segundo (CANTO & STARK, p. 51 52), na tcnica de base artificial como no existe
qualquer varivel que possa ser imediatamente tornada como base, isto , a matriz dos
coeficientes A no contm uma submatriz identidade ( 0), necessrio introduzir algumas
variveis artificiais, tantas quanto as necessrias, para se conseguir arranjar um submatriz
identidade m.
Variveis Artificiais
Para o caso geral, introduzimos m variveis artificiais a cada equao. As vezes, o modelo
apresenta variveis que s figuram em uma equao, constituindo parte de uma base. Nesse
caso, podemos economizar nas variveis a serem introduzidas, de modo que o nmero de
variveis artificiais pode ser inferior a m.
O mesmo autor citado anteriormente diz que, o objetivo consiste em anular as variveis, pois
s desta forma ser possvel a obteno de uma soluo do problema inicial. No entanto,
qualquer soluo do problema original tambm soluo do problema aumentado, com as
variais artificiais a zero. O inverso tambm verdade, desde que as variais artificiais velem
zero.
Seja o sistema geral:
Max 1 1 + 2 2 +

Sujeito a:
11 1 + 12 2 + 1 +

21 1 + 22 2 + 2

=b1

+ 2

= b1

1 1 + 2 2 + + 21

=b1

1 , , 0
Por conseguir tal objetivo, iro ser estudados dois mtodos diferentes, que so duas variantes
do mtodo simplex: mtodo do M-Grande (Penalidades) e mtodo das Duas-fazes.
M-Grande (Penalidades)
Segundo (ESTVO, 1998), neste mtodo, as variveis artificiais so fortemente penalizadas
na funo objetivo, de modo a provocar rapidamente o seu anulamento. O mtodo Simplex,
tender naturalmente a eliminar da base as variveis artificiais, como se pretende, dado que
aquelas esto penalizadas com coeficientes arbitrariamente grandes: (-M) na maximizao e
(+M) na minimizao.
Exemplo: estriado de (ESTVO, 1998).
Uma pequena empresa fabrica 3 tipos de Kits eletrnicos: A, B e C. O lucro unitrio liquido de
cada um 5(A), 10(B) e 15 u.m. (C). O tempo disponvel limita o nmero total de kits que
podem ser fabricados, a 500. Estudos de mercado indicam que o total de kits tipos A e B deve
ser pelo menos 100. O total de kits A deve exceder exatamente em 120 o total de kits tipos B e
C.
Quantas unidades de A, B e C devem ser fabricadas de modo a maximizar o lucro?
Formalizao do problema
X1 = quantidade de unidades do kit A
X2 = quantidade de unidades do kit B
X3= quantidade de unidades do kit C
Max Z = 51 + 102 + 153

Lucro

10

1 + 2 + 3 500
()
1
+
2

100
(
)
S.a {
1 2 3 = 120
( )
X1,x2,x3 0
Passar o problema para sua forma padro
Max Z = 51 + 102 + 153
x1 + x2 + x3 + x5 = 500
x1 + x2

+ x4 = 100

x1 x2 x3

= 120

xi 0, i=1,5
Como no possvel ter uma matriz identidade, sero introduzidas variveis artificiais no
problema. Desta forma o problema passar a ter a seguinte forma:
Max Z = 5x1 + 10x2 + 15x3 + 0x4 + 0x5 Mx6 Mx7 (M +)
s.a
x1 + x2 + x3 +F x5 = 500
x1 + x2 Fx4 + Fx6 = 100
x1 x2 x3 +F x7 = 120
xi 0, i=1,7 (x6, x7 variveis artificiais)
Aplicando algoritmo simplex a este problema, tem se:
Primeiro passo
Bsicas
Fx5
Fx6
Fx7
Z
Z

Variveis de deciso
X1
X2
X3
1
1
1
1
1
0
1
-1
-1
-5
-10
-15
-2M-5

-10

M-15

Sobra
Fx4
0
-1
0
0
M

Variveis de folga
Fx5
Fx6
Fx7
1
0
0
0
1
0
0
0
1
0
M
M
0

Soluo

Operao

500
100
120
0

L1 L2
L2
L3 L4

-220M

Tabela 1: Primeiro passo do algoritmo simplex. Fonte (ESTVO, 1998).


A soluo no tima porque temos contribuio negativa na funo objetiva.

L4
+(2M+5)L2

11

Z = - 220
Como os valores de Zj cj (j = 6, 7) so no nulos (M) e FX6 e FX7 so variveis bsicas
(portanto, para que se possa aplicar o algoritmo Simplex tm que ter zj cj = 0, j = 6, 7),
necessrio construir uma nova linha para zj cj, o que se faz da seguinte forma:
Processo para construir uma nova linha Z
Linha 4
Linha 2 (Fx6)
Linha 3 (Fx7)

[-5
-10
-15
0
0
M
M
0]
-M
[1
1
0
-1
0
1
0
100]
-M
[1
-1
-1
0
0
0
1
120]
[-2M-5 -10 M-15 M
0
0
0
-220]
Tabela 2: Processo para construir uma nova linha Z. Fonte (ESTVO, 1998).
Primeira iterao
Variveis de deciso Sobra Variveis de folga
X1
X2
X3
Fx4
Fx5
Fx6
Fx7
Fx5
0
0
1
1
1
-1
0
X1
1
1
0
-1
0
1
0
Fx7
0
-2
-1
1
0
-1
1
Z
0
2M-5 M-15
-M-5
0
2M+5
0
Tabela 3: Primeira iterao. Fonte (ESTVO, 1998).
Bsicas

Soluo

Operao

400
100
20
-20M-500

L1 L3
L2 + L3
L3
L4+ (M+5) L2

Variveis bsicas: FX5= 400; X1=100; FX7=20


Variveis no bsicas: X2=0; X3=0; FX4=0; FX6=0
Z= - 20M+500
A soluo no tima, temos contribuio negativa na funo objetiva.
Segunda Iterao
Variveis de deciso
Sobra Variveis de folga
X1
X2
X3
Fx4
Fx5 Fx6
Fx7
Fx5
0
2
2
0
1
0
-1
X1
1
-1
-1
0
0
0
1
Fx4
0
-2
-1
1
0
-1
1
Z
0
-15
-20
0
0
M
M+5
Tabela 4: Segunda iterao. Fonte (ESTVO, 1998).
Bsicas

Soluo

Operao

380
120
20
600

1/2L1
L2+1/2L1
L3+1/2L1
L4+10L1

Variveis bsicas: FX5= 380; X1= 120; FX4= 20;


Variveis no bsicas: X2= 0; X3= 0; FX6= 0; FX7=0
Z= 600
A soluo no tima porque temos contribuio negativa na funo objetiva.

12

Terceira Iteraro
Variveis de deciso
Sobra Variveis de folga
X1
X2
X3
Fx4
Fx5 Fx6
Fx7
X3
0
1
1
0
0.5
0
-0.5
X1
1
0
0
0
0.5
0
0.5
Fx4
0
-1
0
1
0.5
-1
0.5
Z
0
5
0
0
10
M
M-5
Tabela 5: Soluo tima. Fonte (ESTVO, 1998).
Bsicas

Soluo
190
310
210
4400

Variveis bsicas: X3=190; X1= 310; FX4= 210


Variveis no bsicas: X2= 0; FX5= 0; FX6= 0; FX7= 0
Z= 4400
Como todos os elementos da linha (zj cj) so no negativos, ento a soluo presente tima.
Mtodo Simplex em Duas Fases
Segundo (LISBOA, 2002, p. 28 31), o mtodo Simplex utiliza uma soluo inicial vivel para
comear o processo iterativo, trabalhando sempre dentro da regio vivel.
Seja o exemplo abaixo retirado de (LISBOA, 2002, p. 28 31):

Minimizar z = 10 x1 + 4 x2 + 5 x3
Sujeito a:
8 x1 + 3 x2 + 4 x3 10
4 x1 + 3 x2 8
x1, x2, x3 0
Como temos uma restrio do tipo (), a varivel de folga deve ter coeficiente negativo, tendo
o significado de uma varivel de excesso. O problema transformado :
Minimizar z = 10 x1 + 4 x2 + 5 x3
Sujeito a: 8 x1 + 3 x2 + 4 x3 - f1 = 10
4 x1 + 3 x2 + f2 = 8
x1, x2, x3, f1, f2 0

13

Onde f1 uma varivel de excesso e f2 uma varivel de folga.


Note que, pelo processo de soluo anterior, a varivel de excesso (f1) passaria a ter valor
negativo na soluo inicial (-10), o que no permitido. Assim, a soluo x1 = x2 = x3 = 0
invivel. necessrio ento encontrar uma soluo vivel para que o mtodo Simplex possa
ser iniciado.
A forma de se resolver isto inventando novas variveis. Estas variveis so chamadas de
variveis artificiais, e representadas por zi. Ser colocada uma varivel artificial em cada
restrio do modelo, (LISBOA, 2002, p. 28 31).
Seja:
8x1 + 3x2 + 4x3 - f1 + z1 = 10
4x1 + 3x2 + f2 + z2 = 8
x1, x2, x3, f1, f2, z1, z2 0
Como pode-se perceber, o problema com as restries acima no o mesmo problema, a no
ser que todas as variveis zi sejam iguais a zero.
Desta forma, podemos resolver o problema em duas fases: na primeira fase, substitumos a
funo objetivo original por uma funo objetivo auxiliar:
zaux = - z1 - z2 = 12 x1 + 6 x2 + 4 x3 - f1 + f2 18
Nesse momento, aplicamos o mtodo Simplex de forma a maximizar a funo objetivo auxiliar,
com as restries contendo as variveis auxiliares. A funo objetivo auxiliar ser maximizada
quando todas as variveis zi forem iguais a zero, j que no podem conter valores negativos.
A primeira fase do problema, que consiste na maximizao da funo objetivo auxiliar,
fornecer uma soluo vivel para o problema original. A segunda fase consiste em resolver o
problema original tomando como soluo inicial os valores obtidos pela primeira fase para as
variveis xi e fi.
Soluo inicial
Para resolver o problema, monta-se o quadro de forma semelhante sistemtica, colocando-se
a funo objetivo artificial na ltima linha. O quadro do exemplo fica:
Base
Z1

x1
8

x2
3

x3
4

f1
-1

f2
0

z1
1

z2
0

b
10

14

Z2
4
3
0
0
1
0
1
8
Z = -Z
10
4
5
0
0
0
0
0
Zaux
-12
-6
-4
1
-1
0
0
-18
Tabela 6: Colocando a funo objetivo na ltima linha. Fonte (LISBOA, 2002, p. 28 31).
Como a funo objetivo de minimizao, ele foi transformado em um problema de
maximizao atravs da multiplicao de todos os coeficientes por (-1). A seguir, aplica-se o
mtodo Simplex normalmente, usando como funo objetivo a ltima linha. Quando a soluo
tima for atingida, dois casos podem ocorrer:
zaux = 0: neste caso foi obtida uma soluo bsica do problema original e o processo de
soluo deve continuar, desprezando-se as variveis artificiais e os elementos da ltima
linha. o incio da segunda fase do processo.
zaux 0: neste caso o problema original no tem soluo vivel, o que significa que as
restries devem ser inconsistentes.
Fase 1 - Primeira iterao
Varivel a entrar na base: x1 (coluna com maior valor negativo na ltima linha)
Varivel a sair da base: z1 (o quociente 10/8 o menor quociente entre a ltima coluna e a
coluna da varivel x1, que vai entrar na base).

Base
x1
x2
x3
f1
f2
z1
z2
b
X1
1
3/8
1/2 -1/8
0
1/8
0
5/4
Z2
0
3/2
-2

1
-
1
3

Z = -Z
0
14
0
5/4
0
-5/4
0
-12,5
Zaux
0
-3/2
2
-1/2 -1
3/2
0
-3
Tabela 7: Primeira iterao. Fonte (LISBOA, 2002, p. 28 31).

L1 L1 / 8
L2 L2 - 4 L1
L3 L3 - 10 L1
L4 L4 + 12 L1

Fase 1 - Segunda iterao


Varivel a entrar na base: x2 (coluna com maior valor negativo na ltima linha)
Varivel a sair da base: z2 (o quociente 3/(3/2) o menor quociente entre a ltima coluna e a
coluna da varivel x2, que vai entrar na base)

Base
x1 x2 x3
f1
f2
z1
z2
b
X1
1
0
1
-1/4 -1/4 1/4 -1/4
1/2
x2
0
1 -4/3 1/3 2/3 -1/3 2/3
2
Z = -Z
0
0
1/3 7/6 -1/6 -7/6 1/6
-13
Zaux
0
0
0
0
0
0
0
0
Tabela 8: segunda iterao. Fonte (LISBOA, 2002, p. 28 31).

Operaes
L2 2 L2 / 3
L1 L1 - 3 L2 / 8
L3 L3 - L2 / 4
L4 L4 + 3 L2 / 2

15

Como na ltima linha o valor da funo objetivo artificial zero, a primeira fase terminou e a
soluo encontrada a soluo bsica inicial para a segunda fase.
Removendo a ltima linha e as colunas referentes s variveis artificiais, o quadro se torna
Base
x1
x2
x3
f1
f2
b
X1
1
0
1
-1/4
-1/4
1/2
x2
0
1
-4/3
1/3
2/3
2
Z = -Z
0
0
1/3
7/6
-1/6
-13
Tabela 9: Fim da primeira fase. Fonte (LISBOA, 2002, p. 28 31).
Fase 2 - Primeira iterao
Varivel a entrar na base: f2 (coluna com maior valor negativo na ltima linha)
Varivel a sair da base: x2 (o quociente 2/(2/3) o menor quociente entre a ltima coluna e a
coluna da varivel x2, que vai entrar na base).

Base
x1 x2 x3
f1
f2
b
Operaes
X1
1
3/8 1/2 -1/8 0
5/4 L2 3 L2 / 2
x2
0

-2 1/2
1
3
L1 L1 + L2 / 4
Z = -Z
0
1/4
0
5/4
0 -12,5 L3 L3 + L2 / 6
Tabela 10: Primeira iterao da segunda fase. Fonte (LISBOA, 2002, p. 28 31).
Soluo tima encontrada
Como todos os valores da ltima linha (funo z-transformada) so positivos ou nulos,
conclumos que a soluo encontrada tima, ou seja:
x1 = 1,25
x2 = 0
z = -z' = 12,5

Problemas de minimizao
At aqui, o mtodo Simplex apenas tem sido aplicado a problemas que consistem na
maximizao das funes de custo. No entanto, este mtodo tambm se pode aplicar a
problemas de minimizao. Para tal, no ser necessrio alterar o algoritmo Simplex, descrito
anteriormente, podendo aquele ser aplicando a problemas de minimizao, pois pode-se

16

converter um problema daquele tipo num problema de maximizao equivalente, da seguinte


forma:
Minimizar = 1 1 + 2 2 + +
Sujeito a (1 , 2 , , ) equivalente a
Maximizar = 1 1 2 2
Sujeito a (1 , 2 , , )
Degenerescncia e entrada em ciclo (Tcnica da Perturbao)
Como a quantidade de soluo bsica admissvel de um problema de PL finito, o algoritmo
Simplex garante a convergncia para a soluo tima, desde que o valor da funo objetivo v
sempre melhorando (em sentido estrito) em cada iterao solues no degeneradas. Desta
forma, a soluo tima atingida ao fim de um nmero finito de iteraes, uma vez que cada
SBA do problema aparecer, quando muito, apenas uma vez ao longo do processo (MARINS,
p.6).
No entanto, pode acontecer que, ao passar-se de uma soluo bsica admissvel para outra, esta
tenha associado um valor da funo objetivo igual ao da anterior, podendo esta situao manterse no decurso de uma sucesso de iteraes, e at mesmo acontecer que, aps algumas iteraes,
estar se perante uma soluo bsica admissvel j anteriormente considerada. A aplicao do
algoritmo Simplex, reproduzir periodicamente as mesmas SB, mantendo-se constante o valor
da funo objetivo, entrando-se em ciclo; nestas condies, a soluo tima nunca ser atingida.
O algoritmo Simplex apenas entra em ciclo em situao de degenerescncia. A degenerescncia
pode surgir logo na SBA inicial, ou aps a ocorrncia de empate no critrio de sada, mesmo
quando a SBA em presena no degenerada. Neste caso, dado que existe melhoria da FO,
apesar de existirem vrias variveis que podem sair da base, a nova SBA ser degenerada.
Geralmente, a entrada em ciclo depende do tipo de SBA degenerada em presena; tal s
possvel quando nesta existir mais do que uma varivel bsica nula.
Para casos destes, em que existe a possibilidade de entrada em ciclo, existem mtodos que
permitem eliminar a ambiguidade no critrio de sada, merc da determinao de uma nica
varivel de entrada, sendo o que est em causa a escolha correta do vetor a sair da base. Um
desses mtodos a Tcnica da Perturbao.

17

Tcnica da Perturbao.
Esta tcnica consiste em formular um novo problema, sem degenerescncia, em que o vetor
formado pelos segundos membros das restries, so obtidos deslocando ligeiramente
(perturbando) o mesmo vetor do problema inicial.
Esta tcnica consiste nos seguintes passos:

Passo 1. Calcular:
= min {

,
> 0}

nico, ento o processo a seguir o normal, de acordo com o processo descrito no


Se
algoritmo Simplex; neste caso no h lugar tcnica da perturbao.
Se, pelo contrrio, houver empate no critrio de sada, isto ,
= min {

,
> 0} =
==

Passa-se ao passo seguinte.


Passo 2. Calcular
min {

=,,

,
> 0}

para i correspondente aos vectores empatados. Se o mnimo desta expresso for nico, ento a
varivel associada quele valor sai da base, de acordo com o processo descrito.
Se, pelo contrrio, o empate ainda persiste, isto ,

min {

Passa-se ao passo seguinte.


Passo 3. Calcular:

1
1
,
> 0} =
==

18

min {

=,,

2
,
> 0}

Para correspondente aos vetores ainda empatados.


Se o mnimo desta expresso for nico, ento a varivel associada quele valor sai da base,
utilizando o mesmo processo.
Se, pelo contrrio, o empate ainda persistir, repetir o processo com

min { ,
> 0} para j=3,4,...,m,

Havendo a garantia de existir desempate, pois j percorre o conjunto dos ndices dos vetores 1,
x2, xm, e estes constituem uma matriz identidade.
Exemplo:
Considere-se o quadro seguinte, correspondente resoluo de um problema de maximizao.

2.

-8

-1

1
4
1
2

-12

1
2

3
4

20

1
2

Tabela 11: Resoluo de um problema de maximizao.


0

0 = {: {1 , 1 }} = {: {0,0}} = {1,2}
4

Como 0 no singular (situao de empate), ento passar ao Passo 2.


1

1 = {: {1 , 1 }} = {: {4,0}} = {2} coluna 1


4

Como 1 singular, ento a varivel que sai na base a 2 (a 2 na base). Logo, o quadro a
passa a ter o seguinte aspecto:
Considere-se o quadro seguinte, correspondente resoluo de um problema de maximizao.

19

2.

1
2

-2

3
4

15
2

-24

-1

3
2

5
4

21
2

0 = {: {1}} = {: {1}} = {3}


Como 0 singular, ento a varivel que sai na base a x3 (a 3 na base). Logo, o quadro a
passa a ter o seguinte aspecto:

2.

1
2

3
4

-2

15
2

3
4

-24

3
2

5
4

21
2

5
4

= (4 , 0,0,1,0,1,0) com = 4.

Dualidade
Definio e formulao do problema dual
Segundo (CANTO & STARK, p. 68 70), em grande parte dos tratamentos de programao
linear, o dual definido para os vrios formatos do primal dependendo do sentido de otimizao
(maximizao ou minimizao), dos tipos de restries (, =) e da orientao das
variaveis (no negativas ou irrestrita). Esse tipo de tratamento um pouco confuso e, por essa
razo, oferece se uma definio nica que abranja todas as formas do primal.

20

Esta definio do problema dual requer expressar o problema primal na forma de equaes
(todas restries so equaes cujo o lado direito no negativo e todas variveis so no
negativas). Esse requisito consistente com o formato da tabela simplex inicial. Por
consequncia, quaisquer resultados obtidos com base na soluo tima do problema primal se
aplicaro diretamente ao problema dual associado. (CANTO & STARK, p. 68 70).
Para mostrar como o problema dual construdo, o problema primal definido na forma de
equaes da seguinte maneira:
Maximizar ou minimizar

() =
=1

Sujeito a =1 = , i = 1: m
0, j = 1: n
As variveis xj , j = 1 : n incluem as variveis de sobra, de folga e artificiais, se houver.
A tabela s seguir mostra como o problema dual construdo com base no problema primal.
Variveis primais do problema
X2
xj

Xn

cn

X1
Variveis
duais do
C1
C2
problema
Y1
11
12
Y2
21
22

1
2
Ym
Tabela 12: Construo do problema
STARK, p. 68 70).

dual com

cj

Lado
Direito

1
2

base no problema primal. Fonte

1
2

(CANTO &

Efetivamente, temos:
Uma varivel dual definida para cada equao (restrio) primal;
Uma restrio dual definida para cada varivel primal;
Os coeficientes da restrio (coluna) de uma varivel primal definem os coeficientes do
lado esquerdo da restrio dual e seus coeficientes na funo objetivo definem os
coeficientes do lado direito;

21

Os coeficientes da funo objetivo do problema dual so iguais aos coeficientes do lado


direito das equaes restrio do problema primal.
As regras para determinar o sentido da otimizao (maximizao ou minimizao), o tipo da
restrio (, =) e o sinal das variveis duais esto na tabela a seguir.
Problema dual
Funo objetivo
do problema
Tipo de
Objetivo
Sinal das variveis
primal
restries
Maximizao
Minimizao
Irrestrita

Minimizao
Maximizao
Irrestrita

Tabela 13: Regras para construir o problema dual, fonte (CANTO & STARK, p. 68 70).
Exemplo de um problema primal, retirado em: (CANTO & STARK, p. 69 70).
Max () = 51 + 122 + 43
+ 22 + 3 10
Sujeito a: { 1
1 2 + 33 = 8
1 , 2 3 0
Na forma padro:
Max () = 51 + 122 + 43 + 04
Sujeito a:
{

1 + 22 + 3 + 4 = 10
1 2 + 33 = 8

1 , 2 , 3 4 0
As variveis duais so 101 82 . O problema dual fica como:
Min () = 101 + 82
Sujeito a:
1 + 2 5
21 2 12
1 + 32 4
1 + 02 0
1 , 2 irrestritas

22

Propriedades da dualidade
A seguir apresentaremos as propriedades que fornecem ao fim um resumo das regras de
construo para problema dual, (CANTO & STARK, p. 71 78).
Propriedade 1: O dual do dual o primal.
Max () = 101 + 72 + 153
51 + 42 + 3 80 (1 )
21 + 32 + 53 30 (2 )
1 , 2 , 3 0
Para a forma dual do problema:
Min () = 801 + 302
Sujeito a:
51 + 22 10 (1 )
41 + 32 7 (2 )
1 + 52 15 (3 )
1 , 2 0
Do dual para o primal (ou o processo dual se considerarmos o sistema anterior como um
primal):
Max () = 101 + 72 + 153
Sujeito a:
51 + 42 + 3 80 (1 )
21 + 32 + 53 30 (2)
1, 2, 3, 0
Propriedade 2. Se a restrio m do primal uma igualdade (=), ento a varivel do dual
sem restrio de sinal."
Max f ( ) =51 +22

23

Sujeito a:
51 3 (1 )
2 4 (2 )
1 + 22 9 (3 )
1 , 2 , 3 0
Para a forma padro:

Max () = 51 +22
Sujeito a:
51 3 (1 )
2 4 (2 )
1 + 22 9 (3 )
1 , 2 , 0
Para o dual:

() = 31 + 4(2 2+ ) + 93
Sujeito a:
1

3 5

(2 2+ ) + 23 2
1 , 2 2+ ,

3 0

Propriedade 3. Se a restrio m do primal maior que ou igual (), ento a varivel do dual
no positiva."
() = 51 +22
Sujeito a:
1

2 4
1 + 22 9

24

1 , 2 0
Colocando todas as restries como menor igual ():
Max f(x) = 51 + 22
Sujeito a:
1

3 (1 )

2 4 (2 )
1 + 22 9 (3 )
1 , 2 0
Construindo o dual:
Min ()
Sujeito a:

= 31 42 + 93
1

+ 3 5
2 + 23 2
1 , 2 , 3 0
2 0

Utilizando uma variavel substituta 2 = 2 , temos:


Min ()
Sujeito a:

= 31 42 + 93
1

+ 3 5
2 + 23 2
1 , 3 0
2 0

Propriedade 4. Se a varivel do primal sem restrio de sinal, entoo a restrio j do dual


uma igualdade (=).
Propriedade 5. Se a varivel do primal no positiva, ento a restrio j do dual maior ou
igual ().
Em suma as propriedades esto disponveis na tabela a seguir.

25

Primal (max)
Dual (min)
K-sima restrio ()
k-sima varivel dual positiva 0
k-sima varivel dual irrestrita de sinal
K-sima restrio (=)
k-sima restrio ()
k-sima variavel dual 0
p-sima restrio ()
p-sima variavel primal 0
p-sima variavel primal irrestrita de sinal
p-sima restrio ()
p-sima restrio (=)
p-sima variavel primal 0
Dual (max)
Primal (min)
Tabela 14: Resumo das propriedades duais. Fonte (CANTO & Stark, p. 71 78).
Algoritmo dual Simplex
O processo de resoluo de problemas de programao linear baseado no algoritmo dual do
simplex, corresponde a um percurso orientado de solues bsicas admissveis do problema
dual, a que correspondem solues bsicas no admissveis do problema primal, at se atingir
uma soluo bsica admissvel do primal. A esta soluo corresponde ao valor timo (caso seja
finito) do par de problemas primal-dual.
Problema primal
timo
Soluo
Soluo
Soluo
Bsica
Bsica
Bsica

no
no
admissvel
admissvel
admissvel
Tabela 15: Resumo do algoritmo dual simplex
i)

Problema dual

Soluo
Bsica
admissvel

Soluo
Bsica
admissvel

Elaborar um quadro simplex onde se identifique uma soluo bsica admissvel para
o dual (valores da ltima linha do quadro todos menores ou iguais a zero).

ii)

Verificar se a soluo tima, isto , se a soluo admissvel para o primal (todos


os bi maiores ou iguais a zero). Caso contrrio, determina-se a varivel que vai ser
substituda na base e que corresponde linha (linha pivotal) em que se verifica:

| < 0}

iii)

Determinar a varivel que vai entrar na base a que corresponde a coluna (coluna
pivotal) onde se verifica.


{ | < 0} no caso de maximizao


{ | < 0} no caso de minimizao

Caso no exista nenhum air < 0 este algoritmo termina, sendo o problema dual ilimitado e o
problema primal impossvel.

26

iv)

No caso de empate no critrio de sada ou de entrada na base escolher a varivel de


menor ndice. Identificado o elemento piv, aplicar as regras de pivotao, para
efectuar a mudana de soluo bsica admissvel.

Exemplo
Resolver o seguinte problema de programao linear aplicando o algoritmo dual do simplex.
min. Z = x1 + 2x2
s.a {

x1 + x2 4
x1 + 5x2 8

x1 , x2 0
O primeiro passo da resoluo passar o problema forma padro e identificar uma soluo
bsica admissvel para o dual.
min. Z = x1 + 2x2
s.a {

x1 x2 + x3 = 4
x1 5x2 + x4 = 8

x1 , x2, x3, x4 0

CB
0
0

XB
X3
X4

Zj
Zj Cj
Tabela 16: Quadro simplex

Cj
X0
-4
-8
0

1
X1
-1
-1
0
-1

2
X2
-1
-5
0
-2

0
X3
1
0
0
0

0
X4
0
1
0
0

Identifica-se uma soluo bsica admissvel inicial do dual [ 0, 0, 1, 2 ], e uma soluo bsica
no admissvel do primal [ 0, 0, -4, -8 ] a que correspondem os pontos "A" e "D" na figura 1.
Determina-se a linha pivotal, ou seja, a varivel que sai da base, quando se efetua o seguinte
clculo:

{ | < 0} = {4, 8} = 8
= 2,3
Logo, a segunda linha ser a linha pivotal, a que corresponde a varivel x4, que sai da base.
A varivel x2 entra na base atendendo a que:

27

1 2
2

{
|2 < 0} = { , } =
= 14
1 5
5

Aplicando as regras de pivotao obtm-se

CB
0
2

XB
X3
X2

Cj
X0
--2.4
1.6
3.2

Zj
Zj Cj
Tabela 17: Aplicando as regras de pivotao

1
X1
-0.8
0.2
0.4
-0.6

2
X2
-1
-5
0
-2

0
X3
0
1
2
0

0
X4
-0.2
-0.2
-0.4
-0.4

Deste novo quadro identifica-se uma outra soluo bsica admissvel do problema dual [ 0, 0.4,
0.6, 0], e uma soluo bsica no admissvel do problema primal [0, 1.6, -2.4, 0] a que
correspondem os pontos "B" e "E" na figura 1.

{ |
=1.2

< 0} = {2.4} = 2.4 logo a varivel x3 sai da base,


0.6 0.4
0.6

{ |1 < 0} = {0.8 , 0.2} = 0.8, Entrando x1 na base.


= 14
1

Efetuando as operao de pivotao obtm-se um novo quadro.


1
X1
1
0
Zj
1
Zj Cj
0
Tabela 18: Novo tabela apos operao de pivotao
CB
1
2

XB
X1
X2

Cj
X0
3
1
5

2
X2
0
1
2
0

0
X3
-1.25
0.25
-0.75
-0.75

0
X4
0.25
-0.25
-0.25
-0.25

A este ltimo quadro corresponde uma soluo admissvel para o problema dual
[0.75, 0.25, 0, 0 ], e uma soluo admissvel para o problema primal [3, 1, 0, 0 ],
pontos "C" e "F" na figura 1. Como estamos em presena de solues admissveis
para o par de problemas primal-dual, logo estas so solues timas, sendo Z =
W = 5.
Primal
Min Z = 1 + 22
+ 2 4
{ 1
1 + 52 8

28

x1 , x2 0
Dual
Max W= 41 + 82
+ 2 1
{ 1
1 + 52 2
y1, y2 0

Figura 1: Soluo final do mtodo dual


Anlise de Sensibilidade
Dados de entrada para o Mtodo Simplex: C, A, b. Na prtica no so conhecidos com absoluta
certeza. Exemplos: demandas futuras, custo de matria-prima, Variao nos dados de entrada
afeta a soluo tima. importante saber como isto ocorre: tcnicas de Anlise de Sensibilidade
ou Anlise de Ps - timalidade.
Justificativa para usar Anlise de Sensibilidade
Quando h dados controlveis (capital, capacidade de produo) a anlise de
sensibilidade permite estudar quais alteraes nestes dados so convenientes. Exemplo:
compensa usar horas-extras na produo de um dado bem?
Quando h dados obtidos por mtodos estatsticos (previso de vendas) a anlise de
sensibilidade permite detetar quais dados so mais relevantes.
Contextualizao
Os seguintes efeitos de alteraes nos dados sero estudados:
I. Mudana nos valores de coeficientes de custos (vetor C);
a) Para variveis bsicas na soluo tima do modelo.
b) Para variveis no-bsicas na soluo tima do modelo.
II. Mudana nos valores das constantes nas restries (vetor b)

29

III. Mudanas nas restries (matriz A):


a) Acrscimo de uma nova varivel;
b) Alteraes nas colunas da matriz de coeficientes das variveis nas restries;
c) Acrscimo de novas restries.
Problema de Planeamento da Produo
A apresentao da tcnica de Anlise de Sensibilidade ser feita atravs do exemplo abaixo:
Uma empresa deseja planejar a produo de seus trs produtos: a, b, c. os lucros unitrios
associados a venda de cada produto so, respetivamente, US$ 2, US$ 3 e US$ 1. Utiliza-se dois
tipos de Insumos (Recursos) para a produo: trabalho (h 1 unidade) e matria-prima (h 3
unidades). Sabendo-se quanto cada Produto utiliza de cada Recurso, o Departamento de
Pesquisa Operacional da empresa formulou o modelo abaixo visando a produo tima dos
produtos a, b, c:
Sejam X1, X2 e X3 as quantidades a produzir de cada produto, a, b, c, respetivamente,

Max

1
1
31 + 132 + 33 1 ()
1
7
= 21 + 32 + 3 . :

31 + 432 + 33
{
1 0,3

3( )
Obter informaes acerca de esquemas alternativos de produo.
Muitas vezes estas informaes so mais interessantes que a prpria soluo tima.

30

Concluso
Chegado a este ponto, importa-nos fazer uma abordagem da Programao Linear apresentando
diversos tpicos que permitem um bom conhecimento sobre este tema. O papel, vem sendo cada
vez mais relevante, que a Programao Linear tem desempenhado no tratamento de problemas
envolvendo as mais diversas reas.
Portanto, ficou patente neste trabalho com a apresentao de alguns exemplos prticos, de que a
formalizao matemtica e a resoluo de problemas de pequena dimenso foram o elo de ligao
com os problemas simples de 2 gerando uma dual. Neste caso estudo de aspetos relacionados com
mtodo simplex permitiu o aprofundamento de conhecimentos matemticos na rea da lgebra
Linear. Tendo facilitado na facilidade com que se pode, atualmente, resolver problemas de
Programao Linear com recurso a meios informticos, tendo ficado uma demonstrao clara de
exerccios apresentados. Acrescentando ainda de que a Programao Linear, em particular, sobre
a anlise de sensibilidade de um problema ou sobre Programao Linear Inteira. Isto, com o
mtodo simplex e a teoria da dualidade. Nisto, estas extenses que permitem resolver problemas
da Programao Linear podero ser abordadas em estudos mais profundos na rea da Investigao
Operacional.

31

Bibliografia
ESTVO, Joo Manuel Carvalho; Introduo Investigao Operacional, Universidade Do
Algarve, 1998
CANTO, Luiza Amalia & Pinto Felipe Sanches Stark; Programao Linear, s/l
Disponvel em:
http://www2.sorocaba.unesp.br/professor/luiza/PL/apostila.pdf, a cessado aos 12 de Outubro de
2016
LISBOA, Erico Fagundes Anicet; Pesquisa Operacional, Rio De Janeiro, 2002