Dualidade Lagrangeana

Slides:



Advertisements
Apresentações semelhantes
Disciplina Pesquisa Operacional – 60 h
Advertisements

Aplicações da Integral da Integral
Funções Polinomiais do 2º Grau
Soluções Numéricas de Sistemas Não Lineares
Teorema Fundamental da Programação Linear
A10-1 Definição: Um ponto x*  W diz-se um mínimo relativo ou ponto
Funções Especiais Aula 3 – Prof Marli.
Prof. M.Sc. Fábio Francisco da Costa Fontes Outubro
Pesquisa Operacional II Programação Linear Inteira
Prof. M.Sc. Fábio Francisco da Costa Fontes Agosto
Problemas de Forma Não-padrão
Resolvendo Programação Linear Em um Microcomputador
Programação Linear Método Simplex
PARTIÇÃO DE BENDERS Secundino Soares Filho Unicamp.
Artigo: The dynamic berth allocation problem for a container port Akio Imai, Etsuko Nishimura, Stratos Papadimitriou, Analisando a formulação relaxada.
Colégio Juvenal de Carvalho Matemática- Profa: Jacqueline
Teoria da Produção e do Custo
PORTFÓLIO DE MATEMÁTICA
Multiplicadores de Lagrange.
Modelagem de Problemas como ferramenta ensino-aprendizagem
Algoritmos Genéticos em Problemas com Restrições
Matemática Revisão Global Professor Rivelino.
Otimização Inteira 5a. Aula Franklina.
Conceitos Básicos Alysson e Franklina 2ºs/
Cálculo Numérico / Métodos Numéricos
Cálculo Numérico / Métodos Numéricos
MATRIZES. Definição: Qualquer tabela de números dispostos em linhas e colunas.
DERIVADA SEGUNDA Função que se obtém ao derivar a derivada de f(x)
Colégio Jardins Matemática- Prof: Matheus Damasceno
Capítulo 4 – Função do 2º Grau
Cálculo Numérico / Métodos Numéricos
Otimização Linear Definições e Solução Gráfica
Cálculo da Direção de Caminhada: Gradiente de f(x)
Prof° MSc. Lourival Gomes
Programação Linear Universidade Federal de Itajubá – UNIFEI
Introdução Prof. Antonio Carlos Coelho
INEQUAÇÕES FUNÇÃO QUADRÁTICA
Matemática Revisão Global Professor Rivelino.
Pesquisa Operacional MUROLO ENGENHARIA DE PRODUÇÃO
Capitulo 8: Dualidade O que é um modelo Dual?
Uma Introdução a SVM Support Vector Machines
PROGRAMAÇÃO LINEAR 14 de setembro de 2014.
Dualidade UFOP - ICEA Prof.: Guido Pantuza.
Cálculo da Direção de Caminhada: Exemplo de Direção de Melhoria Considere a função objetivo do problema de localização do novo supermercado. Maximizar.
Análise e Síntese de Algoritmos
Conjuntos Difusos Operações: Definição e nomenclatura Tipos Axiomas
Capítulo 3.1 Pesquisa Operacional na Tomada de Decisões 2ª Edição © Gerson Lachtermacher,2005 Resolvendo Programação Linear Em um Microcomputador.
Memória Associativa Linear
Portfólio De Matemática
Esperamos aprender algo útil.
FUNÇÃO AFIM.
UNIDADE 2 – ZEROS DAS FUNÇÕES REAIS
FUNÇÃO QUADRÁTICA INEQUAÇAO.
Pesquisa Operacional:
PROGRAMAÇÃO LINEAR EQE de março de SUMÁRIO.
MATEMÁTICA PARA NEGÓCIOS PROF. VICENTE EUDES
FUNÇÃO CONSTANTE y = k ou f(x) = k Seja k um número real qualquer. A função f definida em R e tal que y = f(x) = k, recebe o nome de função constante,
Função 2º Grau.
FUNÇÃO DE 1º GRAU OBS: o gráfico é uma reta! FORMA GERAL:
Função quadrática: a função geral de 2º grau
MATEMÁTICA E SUAS TECNOLOGIAS
Estudo das funções conceitos iniciais
PONTO MÍNIMO e PONTO MÁXIMO
Trabalhando as funções Colégio Juvenal de Carvalho 2013 Fonte pesquisa :
Função Polinomial do 1º Grau PROFESSOR: ALEXSANDRO DE sOUSA
Programação Linear - PL EEL Métodos Numéricos de Otimização Laboratório de Planejamento de Sistemas de Energia Elétrica Centro Tecnológico – Departamento.
AULA 05 Limites no Infinito Adm.Industrial Cálculo I
Dualidade Em Programação Linear.
Resolvendo Programação Linear Em um Microcomputador
Transcrição da apresentação:

Dualidade Lagrangeana Ruy Luiz Milidiú

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

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

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

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) ≤ 0 i = 1, ..., m x  S  n (P)

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

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

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

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

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

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

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)

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

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

Programa convexo Solução melhor Otimo global Otimo local

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 !

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

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

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

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

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

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!

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?

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)

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λ

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

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

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)

Max { l(λ) } = Max {-5λ2/4 + 4λ} Problema Dual Max { l(λ) } = Max {-5λ2/4 + 4λ}   0   0 dl dλ x1* = -λ* = -8/5 x2* = -λ*/2 = -4/5 2.x1* + x2* + 4 = - 16/5 - 4/5 + 4 = -4 + 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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

½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

½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

½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

½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

½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

½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

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

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

– ½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

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)

Ponto de Sela

(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, λ)

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

 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) ≤ 0 (b) Fazendo λi = λi para i  j e λi = λi +  (i)

  (λ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

 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, λ)

Ó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)

(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)

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)

 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

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

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

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) = 0 λ* = max {(4-y).2/5, 0} (y) = f(x*) = l(λ*) = max {(4-y)2/5, 0}

Função de Perturbação

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) ≤ 0 i = 1, ..., m x  S  n (P)

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)

(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)

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

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)