A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Dualidade Lagrangeana

Apresentações semelhantes


Apresentação em tema: "Dualidade Lagrangeana"— Transcrição da apresentação:

1 Dualidade Lagrangeana
Ruy Luiz Milidiú

2 Sumário Primal Convexidade Relaxação Lagrangeana Dual Dualidade Fraca
Ótimo Global Dualidade Forte

3 Primal Minimizar f(x) = -x + 1 2x  3 (P) x   2x  3 2x - 3 ≤ 0
g1(x) = 2x - 3

4 Exemplo 2x - 3 ≤ 0  x ≤ 3/2 x* = 3/2 -x + 1 é decrescente f(x*) = -1/2

5 Programação Matemática
f(x) função objetivo solução gi(x) ≤ 0 , i  I solução ótima Solução que minimiza f Minimizar f(x) gi(x) ≤ i = 1, ..., m x  S  n (P)

6 Programação Linear min cT.x s.t. A.x  b xi  0

7 Programação Quadrática
min xT.Q.x + b.x s.t. di.x + ei ≤ 0 i = 1, ..., m xi  0

8 Programação Quadrática
min xT.Q.x + b.x Q  0 s.t. di.x + ei ≤ 0 i = 1, ..., m xi  0

9 Programação Convexa f(x) é convexa gi(x) é convexa i=1,...,m
S é convexo Exemplos: PL PQ com Q0

10 Conjunto convexo    S  n é convexo se x  S
y  S x + (1-)y  S   [0, 1]

11 Interseção de convexos
H= Hi Hi convexo para i=1,...,k x,yH x,yHi para i=1,...,k .x + (1-).yHi para i=1,...,k .x + (1-).yH H é convexo

12 Função convexa f: S   definida sobre Sn é convexa se
S é um conjunto convexo x  S, y  S,   [0, 1] f(x) + (1-)f(y) ≥ f(x + (1-)y)

13 g(.x + (1-).y) ≤ .g(x) + (1-).g(y) ≤ 0
Restrição convexa H= {x | g(x) ≤ 0} g(x) convexa x,yH g(x) ≤ 0 g(y) ≤ 0 .g(x) + (1-).g(y) ≤ 0 g(.x + (1-).y) ≤ .g(x) + (1-).g(y) ≤ 0 g(.x + (1-).y) ≤ 0 .x + (1-).y H H é convexo

14 todo ótimo local é global
Programa convexo (P) é convexo A função objetivo f(x) é convexa Todas as restrições gi(x) são funções convexas então todo ótimo local é global

15 Programa convexo Solução melhor Otimo global Otimo local

16 Programa convexo z = .xL + (1-).xG f(z) = f(.xL + (1-).xG)
f(z)  .f(xL) + (1-).f(xG) f(z) < .f(xL) + (1-).f(xL) = f(xL) f(z) < f(xL) xL não é mínimo local absurdo !

17 Combinação Linear Toda combinação linear de convexas é convexa
f(x) = a.g(x) + b.h(x) g, h convexas a,b  0 .f(x) + (1-).f(y) .[a.g(x) + b.h(x)] + (1-).[a.g(y) + b.h(y)] .a.g(x) + .b.h(x) + (1-).a.g(y) + (1-).b.h(y) .a.g(x) + (1-).a.g(y) + .b.h(x) + (1-).b.h(y) a.[.g(x) + (1-).g(y)] + b.[.h(x) + (1-).h(y)] a.g(.x + (1-).y) + b.h(.x + (1-).y) f(.x + (1-).y) Toda combinação linear de convexas é convexa

18 Toda função linear é convexa
f(x) = a.x + b .f(x) + (1-).f(y) .(a.x + b) + (1-).(a.y + b) .a.x + .b + (1-).a.y + (1-).b .a.x + (1-).a.y + b a.(.x + (1-).y) + b f(.x + (1-).y) Toda função linear é convexa

19 Função Quadrática xTx é convexa f(x) = xTx
V = f(x) + (1-)f(y) = xTx + (1-)yTy W = f(x + (1-)y) = 2xTx + 2(1-)xTy + (1-)2yTy V - W = (-2)xTx - 2(1-)xTy + [(1-) - (1-)2]yTy = (-2)xTx - 2(-2)xTy + (-2)yTy = .(1-).[(x-y)T(x-y)] ≥ 0,   [0, 1] xTx é convexa

20 Função Quadrática xT.Q.x é convexa f(x) = xT.Q.x zT.Q.z  0
V = f(x) + (1-)f(y) = xT.Q.x + (1-)yT.Q.y W = f(x + (1-)y) = 2xT.Q.x + 2(1-)xTy + (1-)2yT.Q.y V - W = (-2)xT.Q.x - 2(1-)xT.Q.y + [(1-) - (1-)2]yT.Q.y = (-2)xT.Q.x - 2(-2)xT.Q.y + (-2)yT.Q.y = .(1-).[(x-y)T.Q.(x-y)] ≥ 0,   [0, 1] xT.Q.x é convexa

21 Função Quadrática xT.Q.x + b.x é convexa f(x) = xT.Q.x zT.Q.z  0
V = f(x) + (1-)f(y) = xT.Q.x + (1-)yT.Q.y W = f(x + (1-)y) = 2xT.Q.x + 2(1-)xTy + (1-)2yT.Q.y V - W = (-2)xT.Q.x - 2(1-)xT.Q.y + [(1-) - (1-)2]yT.Q.y = (-2)xT.Q.x - 2(-2)xT.Q.y + (-2)yT.Q.y = .(1-).[(x-y)T.Q.(x-y)] ≥ 0,   [0, 1] xT.Q.x + b.x é convexa

22 Se um programa quadrático tem mínimo local então tem mínimo global!
f(x) = xT.Q.x + b.x Q  0 gi(x) = di.x + ei restrições Programa quadrático com Q  0 é convexo função objetivo convexa restrições convexas conjunto de soluções convexo Se um programa quadrático tem mínimo local então tem mínimo global!

23 Como facilitar a busca por uma
Exemplo Difícil Minimizar f(x) = x12 + x22 2x1 + x2 ≤ -4 x  2 (P) Como facilitar a busca por uma solução ótima?

24 Relaxação Lagrangeana
Eliminação de Restrições λi ≥ 0 multiplicador de Lagrange Custo unitário para violar a restrição i Função de Lagrange L(x, λ) = f(x) +  λi gi(x)

25 Exemplo L(x, λ) = x12 + x22 + 2λx1 + λx2 + 4λ
Minimizar f(x) = x12 + x22 2x1 + x2 ≤ -4 x  2 (P) 2x1 + x2 ≤ -4 2x1 + x2 + 4 ≤ 0 g1(x) = 2x1 + x2 + 4 L(x, λ) = x12 + x22 + 2λx1 + λx2 + 4λ

26 Função Dual λ ≥ 0 l(λ) = Min { L(x, λ) } Problema relaxado Fixar λ
x  S Problema relaxado Fixar λ Minimizar em x

27 Exemplo Min { L(x, λ) } = Min {x12 + x22 + 2λx1 + λx2 + 4λ} L x1
x  S x  S L x1 x2 O valor ótimo em função de λ função dual l(λ) = x12 + x22 + 2λx1 + λx2 + 4λ = -5λ2/4 + 4λ = 2x1 + 2λ = 0  x1 = -λ = 2x2 + λ = 0  x2 = -λ/2

28 Dualidade Fraca x é solução e λ ≥ 0 l(λ)  f(x) Dem.:
gi(x)  0 e λ ≥ 0  λi.gi(x)  0 f(x) +  λi.gi(x)  f(x) L(x,λ)  f(x) l(λ)  L(x,λ)  f(x)

29 Max { l(λ) } = Max {-5λ2/4 + 4λ}
Problema Dual Max { l(λ) } = Max {-5λ2/4 + 4λ}   0   0 dl x1* = -λ* = -8/5 x2* = -λ*/2 = -4/5 2.x1* + x2* + 4 = - 16/5 - 4/5 + 4 = = 0  0 f(x*) = (-8/5)2 + (-4/5)2 = 16/5 l(λ*) = (-5/4)(8/5)2 + 32/5 = 16/5 f(x*) = l(λ*) = - 5λ/2 + 4 = 0  λ* = 8/5

30 Primal na PL min cT.x s.t. A.x  b xi  0

31 Relaxado na PL L(x,,) = cT.x – T.(A.x – b) – T.x ,   0
DxL = cT – T.A – T = 0

32 Relaxado na PL L(x,,) = cT.x – T.(A.x – b) – T.x ,   0
cT – T.A – T = 0

33 Relaxado na PL L(x,,) = (cT – T.A – T).x + T.b ,   0

34 Relaxado na PL L(x,,) = T.b ,   0 cT – T.A – T = 0

35 Relaxado na PL L(,) = T.b ,   0 T.A + T = cT

36 Função Dual na PL l() = T.b ,   0 T.A ≤ cT

37 Dual na PL max bT. s.t. AT. ≤ c i  0

38 Primal-Dual na PL min cT.x s.t. A.x  b xi  0 max bT. s.t. AT. ≤ c

39 Dual na PL max bT. s.t. AT. ≤ c i  0

40 Dual na PL - min (-b)T. s.t. AT. ≤ c i  0

41 Dual na PL - min (-b)T. s.t. (-AT).  (-c) i  0

42 Dual do Dual na PL - max (-c)T.x s.t. (-A).x ≤ (-b) xi  0

43 Dual do Dual na PL min cT.x s.t A.x ≤ -b xi  0

44 Dual do Dual na PL min cT.x s.t A.x  b xi  0 Primal

45 Primal no SVM min ½wT.w + C.ii s.t. yi.(wT.xi + b)  1 - i i  0

46 ½wT.w+C.ii – ihi.[yi.(wT.xi+b)–1+i] – ii.i
Relaxado no SVM L(w,b,,h,) = ½wT.w+C.ii – ihi.[yi.(wT.xi+b)–1+i] – ii.i DwL = w – ihi.yi.xi = 0 DbL = – ihi.yi = 0 DiL = C – hi – i = 0

47 ½wT.w+C.ii – ihi.[yi.(wT.xi+b)–1+i] – ii.i
Relaxado no SVM L(w,b,,h,) = ½wT.w+C.ii – ihi.[yi.(wT.xi+b)–1+i] – ii.i w = ihi.yi.xi ihi.yi = 0 C – hi – i = 0

48 ½wT.w – ihi.[yi.(wT.xi+b)–1]
Relaxado no SVM l(h,) = ½wT.w – ihi.[yi.(wT.xi+b)–1] w = ihi.yi.xi ihi.yi = 0 C – hi – i = 0

49 ½wT.w – ihi.[yi.(wT.xi+b)–1]
Relaxado no SVM l(h,) = ½wT.w – ihi.[yi.(wT.xi+b)–1] w = ihi.yi.xi ihi.yi = 0 C – hi – i = 0

50 ½wT.w – ihi.yi.wT.xi – ihi.yi.b + ihi
Relaxado no SVM l(h,) = ½wT.w – ihi.yi.wT.xi – ihi.yi.b + ihi w = ihi.yi.xi ihi.yi = 0 C – hi – i = 0

51 ½wT.w – wT.ihi.yi. xi – b.ihi.yi + ihi
Relaxado no SVM l(h,) = ½wT.w – wT.ihi.yi. xi – b.ihi.yi + ihi w = ihi.yi.xi ihi.yi = 0 C – hi – i = 0

52 Relaxado no SVM l(h,) = ½wT.w – wT.w – b.0 + ihi w = ihi.yi.xi
C – hi – i = 0

53 Relaxado no SVM l(h,) = – ½wT.w + ihi w = ihi.yi.xi ihi.yi = 0
C – hi – i = 0

54 – ½ij hi.hj.yi.yj.xi.xj + ihi
Dual no SVM max l(h) = – ½ij hi.hj.yi.yj.xi.xj + ihi restrito a ihi.yi = 0 0  hi  C

55 A função dual l(λ) é côncava
Concavidade A função dual l(λ) é côncava λ1 e λ2  0   [0, 1] λ = .λ1 + (1 - ).λ2 x  S l(λ) = f(x) +  λi gi(x) l(λ1) ≤ f(x) +  λ1i gi(x) l(λ2) ≤ f(x) +  λ2i gi(x) .l(λ1) + (1 - ).l(λ2) ≤ f(x) +  [.λ1i + (1 - ).λ2i]gi(x) .l(λ1) + (1 - ).l(λ2) ≤ l(.λ1 + (1 - ).λ2)

56 Ponto de Sela

57 (x, λ) é um ponto de sela de L
Definição (x, λ) é um ponto de sela de L se e só se (1) L(x, λ) ≤ L(x, λ) x  S (2) L(x, λ) ≤ L(x, λ) λ ≥ 0 L(x, λ) é mínimo L(x, λ) é máximo Ou seja, em (x, λ)

58 Caracterização x  S e λ ≥ 0 (x, λ) é um ponto de sela de L se e só se
(a) L(x, λ) = Min L(x, λ) (b) gi(x) ≤ 0 (c) λi gi(x) = 0

59  L(x, λ) ≤ L(x, λ) L(x, λ) = Min L(x, λ) (a)
f(x) +  λi gi(x) ≤ f(x) +  λi gi(x)  (λi - λi) gi(x) ≤ 0 (i) gj(x) ≤ (b) Fazendo λi = λi para i  j e λi = λi +  (i)

60   (λi - λi) gi(x) ≤ 0  (λi - λi) gi(x) ≥ 0  (λi - 0) gi(x) ≥ 0
λi ≥ 0 e gi(x) ≤ 0, então λi gi(x) ≤ 0 λi gi(x) = 0

61  L(x, λ) = Min L(x, λ) L(x, λ) ≤ L(x, λ) (c) λi gi(x) = 0
L(x, λ) = f(x) +  λi gi(x) = f(x) L(x, λ) = f(x) +  λi gi(x) ≤ f(x) = L(x, λ) L(x, λ) ≤ L(x, λ)

62 Ótimo Global (x, λ) é um ponto de sela então x é uma solução ótima
(1) L(x, λ) ≤ L(x, λ)  f(x) +  λi gi(x) ≤ f(x) +  λi gi(x) Como (c) λi gi(x) = 0 , então f(x) ≤ f(x) +  λi gi(x) ≤ f(x) + 0  f(x) ≤ f(x)

63 (x*, λ*) é um ponto de sela de L
Dualidade Forte (x*, λ*) é um ponto de sela de L se e somente se f(x*) = l(λ*) Obs.: Max (D) = Min (P)

64 f(x*) = l(λ*) = Max { l(λ) }
L(x*, λ*) = f(x*) +  λi*.gi(x*) = f(x*) L(x*, λ*) = Min { L(x, λ*) } = l(λ*) x  S l(λ) ≤ f(x*) f(x*) = l(λ*) = Max { l(λ) } λ ≥ 0 l(λ*) = f(x*) Max (D) = Min (P)

65  l(λ*) = f(x*) l(λ*) ≤ f(x) +  λi*.gi(x)
f(x*) ≤ f(x*) +  λi*.gi(x*)  λi*.gi(x*) ≥ 0 λi* ≥ 0 e gi(x*) ≤ 0 λi*.gi(x*) ≤ 0 λi*.gi(x*) = 0 L(x*, λ*) = f(x*) = l(λ*) = Min { L(x, λ*) } (x*, λ*) é um ponto de sela

66 Ponto de Sela Verificação Existência
A tarefa não trivial é resolver o dual O dual é mais fácil que o primal Verificar restrições e folgas complementares Existência Difícil em geral Garantida para programas convexos com ótimo global

67 Perturbação L(x*,λ) = λ2.(5/4)  λ2.(5/2) + 4.λ
min x12 + x22 f(x) = xT.x 2x1 + x2 + 4 ≤ 0 g(x) = (2,1).x + 4 x  2 (P) L(x,λ) = xT.x + λ.(2,1).x + 4.λ DxL = 2.x + λ.(2,1)T = 0 x* =  λ.(1,1/2)T L(x*,λ) = λ2.(5/4)  λ2.(5/2) + 4.λ l(λ) = L(x*,λ) =  5.λ2/4 + 4.λ Dλl =  5.λ/2 + 4 = 0 λ* = 8/5 f(x*) = l(λ*) = 16/5

68 Perturbação L(x*,λ) = λ2.(5/4)  λ2.(5/2) + (4-y).λ
min x12 + x22 f(x) = xT.x 2x1 + x2 + 4 ≤ y g(x) = (2,1).x + 4  y x  2 (P) L(x,λ) = xT.x + λ.(2,1).x + (4-y).λ DxL = 2.x + λ.(2,1)T = 0 x* =  λ.(1,1/2)T L(x*,λ) = λ2.(5/4)  λ2.(5/2) + (4-y).λ l(λ) = L(x*,λ) =  5.λ2/4 + (4-y).λ Dλl =  5.λ/2 + (4-y) = λ* = max {(4-y).2/5, 0} (y) = f(x*) = l(λ*) = max {(4-y)2/5, 0}

69 Função de Perturbação

70 Programação Matemática
f(x) função objetivo solução gi(x) ≤ 0 , i  I solução ótima Solução que minimiza f Minimizar f(x) gi(x) ≤ i = 1, ..., m x  S  n (P)

71 Problema Perturbado f(x) função objetivo solução solução ótima
gi(x) ≤ yi , i  I solução ótima Solução que minimiza f Minimizar f(x) gi(x) ≤ yi i = 1, ..., m x  S  n (Py)

72 (y) = valor ótimo de (Py)
Função de Perturbação  função de perturbação de (P) (y) = valor ótimo de (Py) Minimizar f(x) gi(x) ≤ yi i = 1, ..., m x  S  n (Py)

73 Perturbação de PC (P) um Problema Convexo (y) é convexa
Minimizar f(x) gi(x) ≤ yi i = 1, ..., m x  S  n (Py)

74 Dem. (r) = f(xr) valor ótimo de (Pr) (s) = f(xs) valor ótimo de (Ps)
gi(xr) ≤ ri gi(xs) ≤ si i = 1, ..., m .gi(xr) ≤ .ri (1-).gi(xs) ≤ (1-).si .gi(xr) + (1-).gi(xs) ≤ .ri + (1-).si gi(.xr + (1-).xs) ≤ .ri + (1-).si .xr + (1-).xs é solução de (P.r + (1-).s) (.r + (1-).s) ≤ f(.xr + (1-).xs) (.r + (1-).s) ≤ .f(xr) + (1-).f(xs) (.r + (1-).s) ≤ .(r) + (1-).(s)


Carregar ppt "Dualidade Lagrangeana"

Apresentações semelhantes


Anúncios Google