Você está na página 1de 13

Dualidade

DUALIDADE

Oliveira
Pires

2 Introdução

 Associado a cada problema de Programação Linear existe um outro


designado de Problema Dual (D).
 Neste contexto, o problema original é designado de Problema Primal (P)
 A resolução de um deles implica a resolução (simultânea) do outro.
 A relação entre estes dois problemas revela-se importante para o
estudo de tópicos avançados Programação Linear e Não Linear.
 O estudo da dualidade permite uma interessante interpretação
económica.
 Revela-se útil na interpretação e implementação da análise de
sensibilidade
 A dualidade tem permitido avanços computacionais decisivos na
resolução de problemas de PL.
 A dualidade e a análise de sensibilidade constituem dois dos mais
importantes tópicos da Programação Linear.
DUALIDADE  O estudo destes dois tópicos permite apreciar a beleza e lógica da
Programação Linear.
Oliveira
Pires

1
3 Construção do Dual – Exemplo

Primal: Dual:
max z  4 x1  7 x2 min w  48 y1  20 y2
s.a. 3 x1  5 x2  48 (y1 ) s.a. 3 y1  y2  4
x1  2 x2  20 (y 2 ) 5y1  2 y2  7
x1 , x2  0 y1 , y2  0
Variáveis duais Restrições
Associadas a cada Associadas a cada
restrição variável x1 e x2

x
cT bT
x  y 
max z  4 7  1  min w   48 20  1 
 x2   y2 
A b y AT c

3 5   x1   48   y1  3 1   y1   4 
s.a. 1 2   x    20  y  s.a. 5 2   y    7 
  2    2   2  

DUALIDADE
 x1  0   y1   0 
 x   0   y   0
Oliveira  2    2  
Pires

4 Construção do Dual – Forma Canónica

Primal Dual

n m
max z   c j x j min w   bi yi
j 1 i 1
n m
s.a. a x
j 1
ij j  bi i  1,...,m s.a. a
i 1
ij yi  c j j  1,...,n

xj  0 j  1,...,n yi  0 i  1,...,m

max z  cT x min w  bT y
s.a. Ax  b s.a. AT y  c
DUALIDADE
x0 y0
Oliveira
Pires

2
5 Construção do Dual – Forma geral (I)
 O dual do dual é o primal.

Primal Dual

max z  cT x min w  bT y
s.a. Ax  b s.a. AT y  c
x0 y0

min (  z )  cT x max (  w)  bT y


s.a.  Ax  b s.a.  AT y  c
x0 Passagem y0
DUALIDADE ao Dual

Oliveira
Pires

6 Construção do Dual – Forma geral (II)

 Em teoria, pode converter-se o problema para a forma canónica e aplicar os


procedimentos anteriores.
 Questão: Como escrever o dual de um problema que não está na forma
canónica?
 Na prática, constrói-se o dual usando as regras:

Problema de maximização Problema de minimização

Coeficientes da F.O. Termos independentes

Termos independentes Coeficientes da F.O.

Matriz dos coeficientes A Matriz dos coeficientes AT


≤ ≥0
Restrições ≥ Variáveis ≤0
= livre
≥0 ≥
DUALIDADE
Variáveis ≤0 Restrições ≤
Oliveira livre =
Pires

3
7 Propriedades da Dualidade (I)

 Teorema (Dualidade fraca): O valor da f.o., z, para qualquer solução


admissível para o problema de maximização, não excede o valor da f.o.,
w, para qualquer solução admissível do problema dual, i.e.,
n m
z c x  b y  w
j 1
j j
i 1
i i

 Demonstração: Considere-se a restrição i do problema original


n

a x
j 1
ij j  bi
Multiplicando por yi (yi ≥ 0)
n

ya x
j 1
i ij j  bi yi

Adicionando sobre i
m n m

 y a x   b y
i 1 j 1
i ij j
i 1
i i
(1)
DUALIDADE

Oliveira
Pires

8 Propriedades da Dualidade (II)

Multiplicando agora a restrição j do problema dual por xj (xj ≥0) tem-se


m

ya x
i 1
i ij j  cjxj

Adicionando sobre j
m n n

 y a x   c x
i 1 j 1
i ij j
j 1
j j (2)

Combinando (1) e (2), obtém-se


n m n m

j 1
cjxj  
i 1 j 1
yi aij x j  b y
i 1
i i

que é o resultado pretendido.

Nota: De modo idêntico se demonstra que o valor da f.o., para qualquer


solução admissível de um problema de minimização, é um limite
DUALIDADE

Oliveira
superior para o valor da f.o. para uma solução admissível do
Pires problema dual.

4
9 Propriedades da Dualidade (III)

 Corolário 1: Se o problema primal possui solução não limitada (z  ∞)


então o problema dual é impossível.
 Corolário 2: Se o problema dual possui solução não limitada (w  ∞)
então o problema primal é impossível.

 Exemplo para o corolário 1:


x2
Primal max z  x1
Solução ilimitada
s.a.  x1  x2  1
z  
x2  2

x1 ,x2  0 c
x1

y2
Dual min w  y1  2 y2
Não existem SA
s.a.  y1 1
DUALIDADE y1  y2  0 Problema impossível
y1
Oliveira
y1 , y2  0
Pires

10 Propriedades da Dualidade (IV)

 Exemplo para o corolário 2:

Primal min z  x1  x2 x2
Não existem SA
s.a. 2 x1  x2  3
5 x1  x2  0 Problema impossível
x1 ,x2  0
x1

y2
Dual max w  3 y1
s.a. 2 y1  5 y2  1 
c
y1  y2  1 Solução ilimitada
y1
w  
y1  0 , y2  0

DUALIDADE

Oliveira
Pires

5
11 Propriedades da Dualidade (V)

 Os corolários 1 e 2 indicam que se um dos problemas (primal ou dual)


tem solução ilimitada então o outro é um problema impossível
 Questão: Será o recíproco verdadeiro?
 Resposta: Não necessariamente

 Exemplo:
x2
Primal min z   x1  x2
s.a. x1  x2  1
 x1 + x2  1
x1 ,x2  0 x1
Problema impossível
y2
Dual max w  y1  y2
s.a. y1  y2  1
DUALIDADE
 y1  y2  1
Oliveira
y1 , y2  0 y1
Pires

12 Propriedades do Dual (VI)


 Teorema (Dualidade forte): Se um dos problemas, primal ou dual, tem
solução óptima (finita) então ambos os problemas têm solução óptima
(finita) e os valores das respectivas funções objectivo são iguais, isto é,
verifica-se z*=w*.

 Exemplo:
x2
Primal: max z  6 x1  x2
Solução óptima:
s.a. x1  1
2 x1 + x2  4 x1*  1
x1 ,x2  0  x*2  2 z 8
c
x1

z*  w*
y2
Dual: min w  y1  4 y2
Solução óptima:
s.a. y1  2 y2  6
DUALIDADE
y2  1 y1*  4
Oliveira y1 , y2  0  y*2  1 w8
c
Pires
y1

6
13 Relações Primal - Dual

 Relações possíveis entre o Primal e o Dual

Dual Solução Solução Problema


Primal óptima finita ilimitada impossível

Solução
P I I
óptima finita

Solução
I I P
ilimitada

Problema
I P P
impossível

DUALIDADE
P – Possível
Oliveira I - Impossível
Pires

14 Implicações da Dualidade

 Do ponto de vista prático


 nº de restrições › nº de variáveis
Primal Dual

10 restrições
100 variáveis
100 restrições
10 variáveis

 Vantajoso resolver o problema dual porque o nº de iterações do simplex é


tipicamente proporcional ao nº de linhas (restrições)

 Do ponto de vista teórico


Fornece uma elegante forma de verificar a optimilidade
DUALIDADE

Oliveira
Pires

7
15 Algumas fórmulas importantes
Quadro inicial

cT
cB vB bi

cB xB A b

zj cBA cBb
cj - z j cT - cBA

Quadro óptimo

cT
cB vB bi 1
Coluna xj = B a j

cB xB B-1A B-1b Segundos membros


(valores de xB)
zj cBB-
cBB-1A 1b z*
cj - z j cT - cBB-1A
DUALIDADE

Oliveira z j  cBT B 1a j c j  z j  c j  cTB B 1a j


Pires

16 Solução óptima do Dual a partir do Primal (I)


 No quadro óptimo do primal:
 Os valores das variáveis duais encontram-se na linha zj e nas colunas
correspondentes à matriz identidade inicial (base inicial, mesmo que
artificial), i. e., nas colunas correspondentes à matriz inversa.
 Os valores das variáveis de desvio vj na solução óptima do dual são:
 os simétricos dos elementos na linha cj - zj correspondentes às variáveis
principais se o problema é de máximo; (a)
 os elementos na linha cj - zj correspondentes às variáveis principais se o
problema é de mínimo. (b)
(a) Primal (b) Primal
max z  c x T
min z  cT x
s.a. Ax  b s.a. Ax  b
x0 x0
AT y  v  c AT y  v  c
 
Dual v  AT y  c Dual v  c  AT y
min w  bT y vT  cBT B -1 A  cT max w  bT y vT  cT  cTB B -1 A
DUALIDADE
s.a. AT y  c s.a. AT y  c
Oliveira y0 vj  z j  cj y0 vj  cj  zj
Pires
 (c j  z j )

8
17 Solução óptima do Dual a partir do Primal (II)
Exemplo: max z  3 x1  9 x2  5 x3
s.a x1  3 x2  2 x3  15
2 x2  x3  5
2 x1  x2  5 x3  10
x1 ,x2 ,x3  0
B-1
Quadro óptimo:

3 9 5 0 0 -M -M
xB vB x1 x2 x3 s1 s2 a2 a3 bi
0 s2 0 0 23/5 4/5 1 -1 - 2/5 3
9 x2 0 1 9/5 2/5 0 0 - 1/5 4
3 x1 1 0 - 17/5 1/5 0 0 3/5 3
zj 3 9 6 3 0 0 0 45 w*  z*
cj - zj 0 0 -1 -3 0 -M -M

v1*  0 v*2  0 v*3  1 y1*  3 y*2  0 y1*  0


DUALIDADE
simétricos de cj - zj
Oliveira
Pires Exercício: Confirmar a solução resolvendo o problema dual.

18 Desvios complementares (I)

 Sejam

Primal Dual

n m
max z   c j x j min w   bi yi
j 1 j 1
n m
s.a. a x
j 1
ij j  bi i  1,...,m s.a. a
i 1
ij yi  c j j  1,...,n

xj  0 j  1,...,n yi  0 i  1,...,m

 Teorema: Sejam x*   x1* , x*2 , ... , x*n  e y*   y1* , y*2 , ... , y*m  soluções
admissíveis para os problema primal e dual, respectivamente. Estas
soluções são óptimas para os respectivos problemas sse:
m
i) ( aij yi*  c j ) x*j  0 j  1, 2 , ... , n
i 1
DUALIDADE
n
ii) (bi   aij x*j ) y*i  0 i  1, 2 , ... , m
Oliveira
j 1
Pires

9
19 Desvios complementares (II)

 Demonstração: Do primal e do dual tem-se que


m
c j x*j  ( aij yi* ) x*j j  1, 2 , ... , n
i 1
n
( aij x*j ) yi*  bi yi* i  1, 2 , ... , m
j 1

Daqui resulta
n n m m n m

 c x   ( a
j 1
j
*
j
j 1 i 1
ij yi* ) x*j  ( aij x*j ) y*i   bi y*i
i 1 j 1 i 1

Esta expressão ocorre apenas com igualdades sse as expressões anteriores


também ocorrem com igualdades
m m
Ora, c j x*j  ( aij y*i ) x*j  x*j  0  c j   aij yi*
i 1 i 1

e, portanto, verifica-se i)
n n
DUALIDADE De modo análogo, ( a x ) y
j 1
ij
*
j
*
i  bi y*i  yi*  0  a x
j 1
ij
*
j  bi
Oliveira e, portanto, verifica-se ii) □
Pires

20 Desvios complementares (III)


 Este importante teorema indica que pelo menos um dos dois termos em
cada uma das expressões i) e ii) deve ser zero.

 Em particular,
m
x*j  0  (  aij yi*  c j i.e., v*j  0)
i 1
m
(  aij y  c j i.e., v j  0)
*
i  x*j  0
i 1
n
y*i  0  (  aij x*j  bi i.e., s*i  0)
j 1
n
(  aij x*j  bi i.e., s*i  0)  y*i  0
j 1

 Dito de outro modo, tem-se que na optimalidade:

Se uma variável num dos problemas é positiva então a correspondente


DUALIDADE
restrição no outro problema é activa ou saturada.

Oliveira Se uma restrição, num dos problemas, não é activa ou saturada então a
Pires correspondente variável no outro problema é igual a zero.

10
21 Desvios complementares (IV)
n
 Sendo si  bi   aij x j i  1, 2 , ... , m
j 1
m
v j   aij yi  c j j  1, 2 , ... , n
i 1

as condições i) e ii) podem ser reescritas como se segue


v*j x*j  0 j  1, 2 , ... , n
s y 0
*
i
*
i i  1, 2 , ... , m

Estas condições relacionam as variáveis de um dos problemas com as


variáveis de desvio do outro (complementar). Daí a designação de
desvios complementares.

DUALIDADE

Oliveira
Pires

22 Interpretação económica do Dual (I)


 Uma empresa fabrica secretárias, mesas e cadeiras.
 O fabrico de cada tipo de móvel requer
 Madeira
 Trabalho especializado
 Quantidades de recursos necessários para produzir cada tipo de móvel
e respectivos lucros:
Recursos Secretárias Mesas Cadeiras
Madeira (m2) 0.8 0.6 0.1
Carpintaria (horas) 2 1.5 0.5
Acabamento (horas) 4 2 1.5
Lucro 60 30 20

 Disponibilidades de recursos num determinado período:


Madeira Carpintaria Acabamento
4,8 m2 8 horas 20 horas
DUALIDADE

 Procura ilimitada de cada tipo de móvel.


Oliveira
Pires
 Pretende-se maximizar o lucro total.

11
23 Interpretação económica do Dual (II)

Variáveis: x1 ≡ número de secretárias produzidas


x2 ≡ número de mesas produzidas
x3 ≡ número de cadeiras produzidas

Formulação: max z  60 x1  30 x2  20 x3
s.a. 8 x1  6 x2  x3  48
2 x1  1.5 x2  0.5 x3  8
4 x1  2 x2  1.5 x3  20
x1 ,x2 ,x3  0

 Um empresário deseja adquirir todos os recursos da empresa.


 O empresário deve determinar o preço a pagar por cada unidade de
recurso.
 Para o efeito definem-se as variáveis
y1 ≡ preço a pagar por 0,1 m2 de madeira
y2 ≡ preço a pagar por 1 hora de carpintaria
DUALIDADE y3 ≡ preço a pagar por 1 hora de acabamento
Oliveira  Os preços a pagar pelos recursos devem ser suficientemente elevados
Pires
para induzir a empresa a vendê-los.

24 Interpretação económica do Dual (III)


 O empresário deve oferecer pelo menos 60€ por 0,8 m2 de madeira, 2 horas de
carpintaria e 4 horas de acabamento.

 Caso contrário, a empresa pode utilizar estes recursos para produzir uma
secretária que pode ser vendida por 60€

 Então o empresário deve escolher y1, y2 e y3 de modo que


8 y1  2 y2  4 y3  60

 Do mesmo modo, pelo menos 30€ devem oferecidos pelos recursos usados para
produzir uma mesa, i.e., y1, y2 e y3 devem satisfazer
6 y1  1.5 y2  2 y3  30

 Identicamente tem-se que


y1  0.5 y2  1.5 y3  20
significa que pelo menos 20€ devem ser pagos pelos recursos necessários para
produzir uma cadeira.

 Obviamente que y1, y2 e y3 devem ser não negativas


DUALIDADE
 O preço total a pagar pelos recursos é
Oliveira
48 y1  8 y2  20 y3
Pires
que o empresário deseja ser o mínimo possível.

12
25 Interpretação económica do Dual (IV)
 O preço a pagar por cada um dos recursos será dado resolvendo o
seguinte problema
min w  48 y1  8 y2  20 y3
s.a. 8 y1  2 y2  4 y3  60
6 y1  1.5 y2  2 y3  30
y1  0.5 y2  1.5 y3  20
y1 , y2 , y3  0
que é exactamente o problema dual.

 A solução deste problema dá-nos o preço a pagar por cada unidade de


recurso.

 Estes preços são designados de preços sombra.

 O preço sombra para uma restrição “mede” o impacto sobre a função


objectivo quando o termo independente de uma restrição é
incrementado de 1 unidade.
DUALIDADE
 Este assunto será desenvolvido mais à frente, aquando da análise de
Oliveira sensibilidade.
Pires

26 Interpretação económica do Dual (V)

Análise do “Output” do Winqsb

DUALIDADE

Oliveira
Pires

13

Você também pode gostar