SlideShare una empresa de Scribd logo
1 de 71
Descargar para leer sin conexión
Seminário
 Introdução à Otimização Convexa
Resolução de problemas utilizando CVX

      Guilherme Varela Barbosa
      Rodrigo Carneiro Brandão
      Rodrigo de Oliveira Matos
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Breve Histórico de Otimização

1939-1945: A otimização teve início durante a 2a Guerra
Mundial.


1947: Início do interesse das indústrias na utilização das
técnicas desenvolvidas na área militar, para auxiliar no
planejamento e controle da produção.


1949: George B. Dantzig apresenta o Método Simplex para
resolver problemas de otimização linear (equações e (ou)
inequações lineares).
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Otimização

Harrel et al. (2000) define otimização como o processo de
tentar diferentes combinações de valores para variáveis que
podem ser controladas (variáveis independentes), buscando a
combinação de valores que leva à saída mais desejada.


De acordo com Torga (2007), a procura pela solução ótima
pode ser conduzida manualmente ou automatizada com
algoritmos especialmente designados para procurar a solução
ótima sem executar a avaliação de todas as soluções
possíveis.
Alguns métodos de otimização:

    Programação Linear
    Programação Não-Linear
Programação Linear

 Distribuição eficiente de recursos limitados para atender um
 determinado objetivo.

 Função linear: suas variáveis possuem relações proporcionais
 entre si.
Programação Linear
Exemplo: Função y = 2x , y = f(x) , x = Valores de 0 a 10
       2*X=Y
       2*0= 0             y
       2*1= 2
                           20
       2*2= 4
       2*3= 6              15
       2*4= 8
       2 * 5 = 10          10

       2 * 6 = 12
                           5
       2 * 7 = 14
       2 * 8 = 16
                                           5         10
       2 * 9 = 18                                                    x
       2 * 10 = 20              Figura 1: Gráfico da função y = 2x
Programação Não-Linear

  Finalidade: resolver problemas que envolvem        funções
  constituídas de variáveis que compartilham        relações
  desproporcionais entre si (não-linearidade).

  Uma função é considerada não linear quando uma ou mais de
  suas variáveis possuem relações desproporcionais entre si.
Programação Não-Linear
Exemplo: Função y = x2 , y = f(x) , x = Valores de 0 a 10
      X2 = Y
      02 = 0
      12 = 1
      22 = 4
      32 = 9
      42 = 16
      52 = 25
      62 = 36
      72 = 49
      82 = 64
      92 = 81
                          Figura 2: Gráfico da função y = X2
     102   = 100
Programação Não-Linear

 De acordo com Winston (2001), para determinar se o problema
 de PNL possui solução ótima ou não, é necessário definir a
 função de concavidade e convexidade.
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Funções
 Função Convexa

   Inclinação na região é sempre crescente;
   A linha que conecta dois pontos na função nunca se estende
   abaixo dela.




     Figura 3: Função estritamente convexa         Figura 4: Função convexa
     Fonte: H. Hindi – A Tutorial on Convex Optimization
São exemplos de funções convexas:




    Figura 5: Função convexa   Figura 6: Função convexa
Funções
  Função Côncava

    Inclinação na região é sempre decrescente;
    A linha que conecta dois pontos na função nunca se estende
    acima dela.




    Figura 7: Função estritamente côncava            Figura 8: Função côncava
    Fonte: H. Hindi – A Tutorial on Convex Optimization
São exemplos de funções côncavas:




   Figura 9: Função côncava   Figura 10: Função côncava
Funções
 Análise matemática de Função Convexa e Côncava

    Função Convexa

    F(λ(x1)+(1- λ)x2) ≤ λ F(x1)+(1- λ) F(x2)

    Função Côncava

    F(λ(x1)+(1- λ)x2) ≥ λ F(x1)+(1- λ) F(x2)
Conjunto Convexo

Um conjunto é convexo se, dados dois pontos X1 e X2 do
conjunto, o segmento que os une também pertence ao conjunto.


S = { x | x = λx1 + ( 1 – λ) x2 ,                  0≤λ≤1}




      Figura 11: Conjunto Convexo            Figura 12: Conjunto Não Convexo
      Fonte: H. Hindi – A Tutorial on Convex Optimization
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Otimização Convexa - Formulação geral


      Minimize:     f 0( x )
      Sujeito a:
                   fi ( x) ≤ 0   , i =1,..., m

                   hi ( x) = 0   , j =1,..., p
Otimização convexa

 Parâmetros para um problema ser considerado convexo:


   Função Objetivo ( funções convexas);
   Inequações de Restrições ( funções convexas);
   Equações de Restrições ( funções afins).


      E deve-se minimizar uma função objetivo convexa sobre um
    conjunto convexo.
Otimização Convexa
Evolução nas técnicas de Otimização Convexa visando obter os
parâmetros para a formulação adequada:

  Problemas:
     Muitos pontos locais “ótimos”;
     Difícil encontrar um ponto ótimo (X*) que satisfaça todas as
     restrições;
     Critérios de parada, muitas vezes aleatórias;
     Algoritmos de baixa taxa de convergência;
     Problemas numéricos faziam com que os algoritmos de
     minimização parassem em vários pontos ou ficassem
     flutuando.
Segundo D.P. Bertrekas (1999)


Se:
                Sujeito a fi (x) (convexas)
                          hi (x) (afins)


            Os três primeiros problemas são eliminados


Mesmo assim:
      A baixa taxa de convergência permanece como problema.
De acordo com A. Nemirovskii (1994), até o final dos anos 80 e 90,
foi descoberto na antiga União Soviética e Estados Unidos que:


Se:
        fi (x) (além de convexas) fosse baseada no método
        de pontos interiores, o problema de baixa taxa de
        convergência seria evitado.
Otimização convexa

Base matemática:


               fi(αx + β y) ≤ αfi(x) + β fi ( y )


para todo x, y ∈ ℜ n e todo α, β ∈ ℜ com α + β = 1, α, β ≥ 0



                      f(x) ≥ ( x , f(x ))
                                *      *
Otimização Quase Convexa
Otimização Quase Convexa




           Figura 13: Função quase convexa
           Fonte: H. Hindi – A Tutorial on Convex Optimization
Otimização Quase Convexa




           Figura 14: Função quase-convexa entre x e y
           Fonte: H. Hindi – A Tutorial on Convex Optimization
           .
Quase Convexa - Diferença Importante



    Um problema de otimização quase convexa pode ter soluções
 ótimas locais que não são (globalmente) ótimas.


   O que não ocorre na otimização convexa, uma vez que, uma
 solução ótima local é também uma solução ótima global.
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Problemas de Otimização Convexa
(Forma Padrão)

O problema de otimização é convexo? Não.

Minimize:               O problema encontra-se na forma padrão

Sujeito a:              A inequação de restrição não é convexa
                        A equação de restrição não é afim
Problemas de Otimização Convexa
(Forma Padrão)
Reform ulando o problem a anterior de form a que
atenda     todos   os    pré-requisitos    vistos
anteriorm ente:

M inim ize:
Sujeito a:
A interpretação geométrica para esse fato é apresentado na
figura abaixo:




Figura 15: Interpretação geométrica para problema convexo   Figura 16: Poliedro – Região Realizável
Fonte: S.P. Boyd Convex Optimization                        Fonte: S.P. Boyd Convex Optimization



A região realizável é mostrada na parte escura. Algumas curvas
de nível da função objetivo são mostradas nas linhas pontilhadas.
O ponto mostrado é ótimo.
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Algoritmos de resolução geral
A ideia de que os problemas de otimização convexa eram factíveis
e que, a teoria da otimização convexa é mais simples e mais
completa do que a teoria geral da otimização não-linear não é
recente.

Diversos métodos como, por exemplo, método do sub-gradiente,
método de planos cortados e método do           elipsoide foram
desenvolvidos na União Soviética entre 1960 e 1970.

Apesar desses métodos serem algoritmos de resoluções universais
para otimização convexa, funcionando até mesmo para funções não
diferenciável, eles não são eficientes.
Método de Pontos interiores
 Útil para problemas de:

    Programação linear
    Programação geométrica
    Programação quadrática
    Além de lidar com problemas de forma cônica.

 Método mais eficiente de resolução de problemas     - Quase
 independente do tipo e do tamanho do problema.

 Cada iteração envolve a resolução de um conjunto de equações
 lineares (problemas de mínimos quadrados) com o mesmo tamanho
 e estrutura do problema.
Método de Pontos interiores

 Busca chegar a uma solução ótima caminhando através de pontos
 interiores da região realizável.

 Baseado no método de Newton e na Função Logarítmica de
 Barreira – Aplica funções que atuam como barreiras armazenando
 as variáveis em pontos interiores a região realizável.

 Técnica para resolver um problema cuja restrição é uma equação
 linear, e a função objetivo é duas vezes diferenciável.

 O usuário deve fornecer uma tolerância desejável para o vetor de
 decisão.
Método de Newton para Problemas de Minimização
com Restrições de Igualdade.
Dado o ponto   ∈         com    =   e tolerância > 0

      1 – Calcule o passo de Newton ∆      e o decremento ( ):

Onde: ∆    = −(∇2 ( ))−1 ∇ ( ) e ( ) = (Δ             ∇2 ( )∆   )1⁄2
                                          2⁄
      2 – Observe o critério de parada:        2≤ .

      3 – Escolha o valor de relacionado com a linha de busca

      3 – Atualização:    + ∆

∆   é sempre uma direção de descida viável, exceto no ponto ótimo onde ∆   =0
Funções de Barreira Logarítmica e Trajetória Central
  O objetivo é reformular as inequações de restrição do problema, de
  tal forma que seja possível aplicar o método de Newton.

  Torne as restrições de inequação implícitas na função objetivo. Para
  isso, uma função de barreira é adicionada na função objetivo, tal
  como a função de barreira logarítmica :
                                 #

                      ∅( ) = −         log	(− " ( ))
                                 "=1


  O problema fica da seguinte forma:

         Minimize:    0( ) − (1/ ) ∑# log	(− " ( ))
                                    "=1
         Sujeito a:     =
Funções de Barreira Logarítmica e Trajetória Central
  A medida que o parâmetro t é incrementado, mais o problema
  reformulado se aproxima do problema original. Por outro lado,
  quanto maior o valor de t, mais difícil se torna minimizar a função
  pelo método de Newton, uma vez que, o Hessiano varia mais
  rapidamente próximo da fronteira da região realizável.

  O gradiente e o hessiano da função de barreira logarítmica é dado,
  respectivamente por:
                       #
                               1
           ∇∅( ) =                 ∇ ( )
                             − "( ) "
                       "=1

                        #                           #
                                1                            1
           ∇2 ∅( ) =               ∇ ( )∇ " ( ) +                ∇2 " ( )
                             " ( )2 "                     − "( )
                       "=1                          "=1
Funções de Barreira Logarítmica e Trajetória Central
  Agora, multiplicando-se a função objetivo por t, teremos o seguinte
  problema equivalente:

      Minimizar:    0(   ) + ∅( )
      Sujeito a:         =


  De modo que o novo problema possa ser resolvido pelo método de
  Newton e que possua apenas uma única solução para cada > 0. A
  trajetória central, associada com o problema original, é definida
  como o conjunto de pontos ⋆ ( ) que garantem as condições
  necessárias e suficientes exigidas nas restrições do problema
  original. Assuma que = #/'
Funções de Barreira Logarítmica e Trajetória Central




Figura 17 - Interpretação geométrica para função de barreira logarítmica e trajetória central
Fonte: S.P. Boyd Convex Optimization

    Nesse exemplo, as curvas pontilhadas mostram três linhas de
    contorno da função de barreira logarítmica. A trajetória central
    converge para o ponto ótimo a medida que t tende ao infinito.
Método da barreira
O método da Barreira
                  (0)
Forneça:    , =         > 0, ) > 1, ' > *
                        ∗
        1 – calcule         ( ) que minimiza   0(   ) + ,( )

sujeito a   =     iniciando em
                                ∗
        2 – atualize : =            ( )

        3 – critério de parada: Pare se #/ < '

        4 – incremente : = )
Funções auto concordantes
 Importante pois:

     Incluem a função de barreira logarítmica que apresenta grande
     importância no Método de Pontos Interiores.

     A analise do Método de Newton para funções auto-
     concordantes não depende de constantes desconhecidas.

     Se realizarmos uma transformação linear de variável em uma
     função auto-concordante, teremos uma função auto-
     concordante.

                                                                          32
 Uma função convexa é auto-concordante se |
                             concordante se   ′′′
                                                    ( )| ≤ 2   ′′
                                                                    ( )     2   .
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
O que é o CVX?

 CVX fornece métodos para simplificar a construção de
 problemas e obedece um conjunto de regras denominada
 DCP.

 Modos de construção de problema
   SDP – Programação Semidefinida Positiva
   Utiliza uma matriz de inequações lineares (LMIs)

    GP – Programação Geométrica
    Aceita todas as funções e regras da programação convexa.

 Plataforma - MatLab
O que o CVX não é?

  O CVX não é uma ferramenta para:

     Verificar se determinado problema é convexo ou não.

     Resolução de problemas de larga escala.
Programação Convexa Disciplinada

 A programação convexa disciplinada é uma metodologia
 destinada a construção de problemas de otimização convexa
 proposta por Michael Grant, Stephen Boyd e Yinyu Ye.


 Problemas que aderem a esse conjunto de regras DCP podem
 ser resolvidos rapidamente. Porém, os problemas que violam
 essas regras são rejeitados, mesmos que esses problemas
 sejam convexos.
Inicialização

  As especificações do CVX no prompt de comando do MatLab
  são precedidas por cvx_begin e finalizadas por cvx_end.

  As variáveis de otimização não possuem valor numérico. Elas
  são caracterizadas como objetos.

  Caso alguma regra seja violada, uma mensagem de erro é
  gerada. Caso contrário, as especificações são convertidas para
  a forma canônica e solucionadas.
Panorama do conjunto de regras DCP

 Como vimos anteriormente o conjunto de regras DCP retorna
 uma mensagem de erro quando uma de suas regras é violada.

 Esse conjunto de regras é suficiente, porém incompleto, para
 garantir que determinada função seja convexa, ou seja, é
 possível elaborar expressões que violem essas regras e que
 sejam de fato convexas.
Conjunto de Regras DCP
Regras de alto nível

  O CVX suporta dois diferentes tipos de programação convexa
  disciplinada.

     Problemas de minimização
     É necessário que a função objetivo seja convexa e nenhuma
     ou mais restrições.

     Problemas de maximização
     É necessário que a função objetivo seja côncava e nenhuma
     ou mais restrições.
Restrições
Três tipos de restrições podem ser especificadas no DCP:

     Restrição de igualdade ==
   Ambos os lados são afim (um ou ambos os lados podem ser complexos).


     Restrição de desigualdade menor que <=
   O lado esquerdo é convexo e o lado direito é côncavo (ambos os lados
   deve ser real).


     Restrição de desigualdade maior que >=
   O lado esquerdo é côncavo e o lado direito é convexo (ambos os lados
   deve ser real).
Funções
 As funções são caracterizadas por dois atributos.

    Curvatura
  Pode ser constante, afim, convexa ou côncava.
  Determina as condições pela qual as expressões entram em
  concordância com as regras de expressões.


    Monotonicidade
  Pode ser não-crescente, não-decrescente ou não-monótona.
  Determina como as expressões podem ser usadas para a criação de
  funções.
Compondo Funções

 Regras de composição para funções convexas:
    Se a função possui argumento não-decrescente, este argumento deve
    ser convexo.
    Se a função possui argumento não-crescente, esse argumento deve
    ser côncavo.


 Regras de composição para funções côncavas:
    Se a função possui argumento não-decrescente, este argumento deve
    ser côncavo.
    Se a função possui argumento não-crescente, esse argumento deve
    ser convexo.
Mínimos-quadrados

Dados de entrada
    m = 16; n = 8;
    A = randn(m,n);
    b = randn(m,1);


Solução através do Matlab
    x_ls = A  b;


Solução através do cvx
    cvx_begin;
            variable x(n);
            minimize(norm(A*x-b) );
    cvx_end;
Mínimos-quadrados
 Resultados:

 norm(A*x_ls-b): 2.0354 (Solução usando Mínimos Quadrados)
 norm(A*x-b): 2.0354 (Solução usando CVX)
 cvx_optval: 2.0354
 cvx_status: Solved


 Verificando x_ls == x:
  x_ls = [ -0.2628 0.8828 -0.0734 -1.0844 0.3249 -0.3330 0.0603 0.3802 ]

  x = [ -0.2628 0.8828 -0.0734 -1.0844 0.3249 -0.3330 0.0603 0.3802 ]


 Vetor resultado (Utilizando CVX):
  A*x-b = [ -0.3262 -0.0070 -0.9543 0.2447 -0.6418 -0.3426 -0.1870 0.2960
            0.6024 -0.0440 0.6238 -0.7399 0.0849 0.9323 0.4799 -0.0762 ]
Mínimos-quadrados com restrições
 Dados de entrada
     bnds = randn(n,2);
     l = min( bnds, [ ] ,2 );
     u = max( bnds, [ ], 2 );

 Solução através do Quadprog
     x_qp = quadprog( 2*A'*A, -2*A'*b, [], [], [], [], l, u );

 Solução através do CVX

     cvx_begin
         variable x(n);
         minimize( norm(A*x-b) );
         subject to
           x >= l;
           x <= u;
     cvx_end
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Arranjo de Antenas
 A título aplicação será demonstrado um problema de arranjos de
 antenas formulado por H. Lebret, S. Boynd e A. Mutapcic.

 Arranjos de antenas proporcionam um meio eficiente de detectar e
 processar sinais provenientes de diferentes direções. Comparando
 uma única antena, que é limitada em diretividade e largura de
 banda, um conjunto de sensores pode ter seu diagrama de
 irradiação modificado através de um distribuição de amplitude e
 fase denominada de pesos do arranjo.

 Após o processamento das saídas das antenas, os sinais são
 pesados e somados afim de fornecerem o diagrama de irradiação
 do arranjo. O problema em questão consiste em encontrar pesos
 que satisfaçam ao conjunto de especificações.
Arranjo de Antenas
Considere um arranjo linear de N antenas isotrópicas localizadas em " , … 4 e
5" , … 54 . Uma onda harmônica plana com freqüência 6 e comprimento de onda
   vinda de uma direção 7 que se propaga ao longo do arranjo. Os N sinais de
saída são convertidos para banda-base, ponderadas pelos pesos 8" , e
somadas para fornecer o diagrama de irradiação do arranjo dado por:
                                    4

                         5 (7 ) =         8" 9 : (   " ;*< 7+5 " <9   7)

                                    "=1

Onde desejamos encontrar um vetor 8 tal que, 5(7 => ) = 1 e que |5(7)| seja
pequeno para |7 − 7 => | ≥ ∆ ( onde 2∆ é a largura do feixe).
Arranjo de Antenas
O problema se torna, então:

      Minimizar: #=   "=1,…,4 |5(7" )|

      Sujeito a: 5(7 => ) = 1
Onde minimizamos os valores dos lóbulos laterais. No CVX, o problema é
descrito da seguinte forma:
      cvx_begin
             variable 8( ) complex

             minimize (max(= <( ℎ9 =_*E _ 9=# ∗ 8)))
             subject to

              ℎ9 =_ =>′ ∗ 8 == 1;
      Cvx_end

Observe que foi criada uma matriz , que possui as especificações e
configurações acerca do arranjo de antenas e que relaciona 8 e 5(7 ) tal como
5 = ∗ 8.
Ilustração do problema




Figura 18 – A figura apresenta um arranjo linear de N antenas isotrópicas e uma onda harmônica
plana incidindo de uma direção 7.
Fonte: S.P. Boyd Convex Optimization
Ilustração do problema




Figura 19 – A figura A apresenta o diagrama de irradiação para um arranjo de antenas cuja diretividade não é
particularizada.
Fonte: S. Boyd, H. Lebret , Antenna Array Pattern Synthesis via Convex Optimization
Ilustração do problema




Figura 20 - A figura mostra o ganho unitário na direção alvo com os lóbulos laterais, externos ao feixe, minimizados.
Fonte: S. Boyd, H. Lebret , Antenna Array Pattern Synthesis via Convex Optimization
Ilustração do problema
 w=    0.0021 - 0.0423i
       0.0588 - 0.0487i
      -0.1950 - 0.0278i
      -0.0226 - 0.0379i
      -0.0268 + 0.0810i
              .
              .
              .
       0.1390 - 0.0414i
       0.0236 - 0.0124i
       0.0252 - 0.1129i
      -0.0664 - 0.1135i
       0.0748 - 0.1329i
       0.0161 - 0.0450i
       0.0070 + 0.0579i
                  Figura 21: Diagrama de Irradiação para arranjo otimizado
                  Fonte: S. Boyd, H. Lebret , Antenna Array Pattern Synthesis via Convex Optimization


A figura 21 apresenta o diagrama de irradiação do arranjo após o
processo de otimização e o vetor peso w.
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Agradecimentos
Agradecemos ao Prof. Dr. Dayan Adionel Guimarães (Inatel) pelo
apoio e material disponibilizado;
Ao Prof. Dr. Takaaki Ohishi (Unicamp) pela valiosa orientação e
atenção;
Ao Prof. Dr. Paulo Augusto Valente Ferreira (Unicamp) pela valiosa
orientação e atenção.
Histórico
Introdução
Funções / Conjuntos Convexos
Otimização Convexa
Problemas de Otimização
Métodos de Resolução
CVX
Aplicações
Conclusão
Agradecimentos
Referências Bibliográficas
Referências Bibliográficas
 D.P. Bertrekas. Nolinear Programming. Athena Scientific,1999


 HARREL, Charles R.; GHOSH, Biman K.; BOWDEN, Royce.
 Simulation Using ProModel. New York, McGraw-Hill, 2000.

 O.M Bucci, D. D’Elia, G. Mazzarella, and G. Panatiello, “Antenna
 pattern synthesis: A new approach,”Proc.IEEE, vol.82,pp.358-357,
 Mar. 1996.

 S.P. Boyd and L. Vandenberghe. Convex Optimization, Cambridge
 University Press, 2003. In press. Material avaible at
 www.stanford.edu/~boyd
TORGA, Bruno Lopes Mendes. Modelagem, Simulação e
Otimização em Sistemas Puxados de Manufatura. Dissertação
(Mestrado em Engenharia de Produção). UNIFEI. Itajubá-MG.
2007.


WINSTON, Wayne; ALBRIGHT, S. Christian. Practical
Management Science. 2nd, Duxbury Thomson Learning, 2001.

Y. Nesterov and A. Nemirovskii. Interior-Point Polynomial
Methods in Convex Programming. Society for Industrial and
Applied Mathematics, 1994.

Más contenido relacionado

La actualidad más candente

Gabarito cap. 8, 9 e 10 fundamentos de fisíca halliday
Gabarito cap. 8, 9 e 10   fundamentos de fisíca hallidayGabarito cap. 8, 9 e 10   fundamentos de fisíca halliday
Gabarito cap. 8, 9 e 10 fundamentos de fisíca hallidayFernando Barbosa
 
Aula inicial física agronomia
Aula inicial física agronomiaAula inicial física agronomia
Aula inicial física agronomiaUFRA-Capanema
 
Movimento Curvilineo
Movimento CurvilineoMovimento Curvilineo
Movimento CurvilineoLucas Silva
 
Derivada como taxa de vari aca o
Derivada como taxa de vari aca oDerivada como taxa de vari aca o
Derivada como taxa de vari aca ocalculogrupo
 
Matemática Discreta - Parte VII estruturas algébricas
Matemática Discreta - Parte VII estruturas algébricasMatemática Discreta - Parte VII estruturas algébricas
Matemática Discreta - Parte VII estruturas algébricasUlrich Schiel
 
Funcoes de varias variaveis calculo 2
Funcoes de varias variaveis  calculo 2Funcoes de varias variaveis  calculo 2
Funcoes de varias variaveis calculo 2Kassiane Campelo
 
Algebra - Livro texto III (UNIP/Matemática) 2018
Algebra - Livro texto III (UNIP/Matemática) 2018Algebra - Livro texto III (UNIP/Matemática) 2018
Algebra - Livro texto III (UNIP/Matemática) 2018Antonio Marcos
 
Exercícios - Princípio da Indução Finita (PIF)
Exercícios - Princípio da Indução Finita (PIF)Exercícios - Princípio da Indução Finita (PIF)
Exercícios - Princípio da Indução Finita (PIF)Rodrigo Thiago Passos Silva
 

La actualidad más candente (20)

Limite de função de duas variáveis
Limite de função de duas variáveisLimite de função de duas variáveis
Limite de função de duas variáveis
 
Gabarito cap. 8, 9 e 10 fundamentos de fisíca halliday
Gabarito cap. 8, 9 e 10   fundamentos de fisíca hallidayGabarito cap. 8, 9 e 10   fundamentos de fisíca halliday
Gabarito cap. 8, 9 e 10 fundamentos de fisíca halliday
 
Aula inicial física agronomia
Aula inicial física agronomiaAula inicial física agronomia
Aula inicial física agronomia
 
Correlação
CorrelaçãoCorrelação
Correlação
 
Exercicios resolvidos
Exercicios resolvidosExercicios resolvidos
Exercicios resolvidos
 
1. intervalo de confiança parte i
1. intervalo de confiança   parte i1. intervalo de confiança   parte i
1. intervalo de confiança parte i
 
94204719 teoria-dos-numeros
94204719 teoria-dos-numeros94204719 teoria-dos-numeros
94204719 teoria-dos-numeros
 
Aula 05 derivadas - conceitos iniciais
Aula 05   derivadas - conceitos iniciaisAula 05   derivadas - conceitos iniciais
Aula 05 derivadas - conceitos iniciais
 
GP4US - Pesquisa operacional exercicios resolvidos - metodo simplex
GP4US - Pesquisa operacional   exercicios resolvidos - metodo simplexGP4US - Pesquisa operacional   exercicios resolvidos - metodo simplex
GP4US - Pesquisa operacional exercicios resolvidos - metodo simplex
 
Movimento Curvilineo
Movimento CurvilineoMovimento Curvilineo
Movimento Curvilineo
 
Distribuição normal
Distribuição normalDistribuição normal
Distribuição normal
 
Exercicios resolvidos
Exercicios resolvidosExercicios resolvidos
Exercicios resolvidos
 
Derivada como taxa de vari aca o
Derivada como taxa de vari aca oDerivada como taxa de vari aca o
Derivada como taxa de vari aca o
 
Tópico 08 - Derivadas
Tópico 08 - DerivadasTópico 08 - Derivadas
Tópico 08 - Derivadas
 
Matemática Discreta - Parte VII estruturas algébricas
Matemática Discreta - Parte VII estruturas algébricasMatemática Discreta - Parte VII estruturas algébricas
Matemática Discreta - Parte VII estruturas algébricas
 
Aula 2 matrizes
Aula 2   matrizesAula 2   matrizes
Aula 2 matrizes
 
Funcoes de varias variaveis calculo 2
Funcoes de varias variaveis  calculo 2Funcoes de varias variaveis  calculo 2
Funcoes de varias variaveis calculo 2
 
Algebra - Livro texto III (UNIP/Matemática) 2018
Algebra - Livro texto III (UNIP/Matemática) 2018Algebra - Livro texto III (UNIP/Matemática) 2018
Algebra - Livro texto III (UNIP/Matemática) 2018
 
Exercícios - Princípio da Indução Finita (PIF)
Exercícios - Princípio da Indução Finita (PIF)Exercícios - Princípio da Indução Finita (PIF)
Exercícios - Princípio da Indução Finita (PIF)
 
Variáveis aleatórias discretas - Estatística II
Variáveis aleatórias discretas - Estatística IIVariáveis aleatórias discretas - Estatística II
Variáveis aleatórias discretas - Estatística II
 

Destacado

Otimização
OtimizaçãoOtimização
Otimizaçãoler9blog
 
Programação linear Matematica
Programação linear  MatematicaProgramação linear  Matematica
Programação linear MatematicaTiago Faisca
 
Otimizações e Funções Quadráticas
Otimizações e Funções QuadráticasOtimizações e Funções Quadráticas
Otimizações e Funções QuadráticasVania Leitao
 
Otimização, dicas de implementação, como resolver problemas by Adriano Santan...
Otimização, dicas de implementação, como resolver problemas by Adriano Santan...Otimização, dicas de implementação, como resolver problemas by Adriano Santan...
Otimização, dicas de implementação, como resolver problemas by Adriano Santan...iPhoneDevBr
 
Programacao linear 11 ano - 1011
Programacao linear 11 ano -  1011Programacao linear 11 ano -  1011
Programacao linear 11 ano - 1011deolindasa
 
Introdução a engenharia pdf
Introdução a engenharia pdfIntrodução a engenharia pdf
Introdução a engenharia pdfJessica Vieira
 
Simulação e Otimização
Simulação e OtimizaçãoSimulação e Otimização
Simulação e OtimizaçãoSimulação
 
Aula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem AmbientalAula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem AmbientalJean Leão
 
Introdução à Simulação
Introdução à SimulaçãoIntrodução à Simulação
Introdução à SimulaçãoSimulação
 
Análise de Algoritmos - As classes P e NP
Análise de Algoritmos - As classes P e NPAnálise de Algoritmos - As classes P e NP
Análise de Algoritmos - As classes P e NPDelacyr Ferreira
 
Introdução a engenharia walter antonio bazzo - 6ª edição
Introdução a engenharia   walter antonio bazzo - 6ª ediçãoIntrodução a engenharia   walter antonio bazzo - 6ª edição
Introdução a engenharia walter antonio bazzo - 6ª ediçãoAna Cristina Ribeiro
 
5 diagrama ferro carbono
5 diagrama ferro carbono5 diagrama ferro carbono
5 diagrama ferro carbonoThulio Cesar
 
Geometria espacial de posição
Geometria espacial de posiçãoGeometria espacial de posição
Geometria espacial de posiçãoELIZEU GODOY JR
 

Destacado (18)

Otimização
OtimizaçãoOtimização
Otimização
 
Otimização
OtimizaçãoOtimização
Otimização
 
Otimização convexa e cvx
Otimização convexa e cvxOtimização convexa e cvx
Otimização convexa e cvx
 
Algoritmos Genéticos
Algoritmos GenéticosAlgoritmos Genéticos
Algoritmos Genéticos
 
Programação linear Matematica
Programação linear  MatematicaProgramação linear  Matematica
Programação linear Matematica
 
Otimizações e Funções Quadráticas
Otimizações e Funções QuadráticasOtimizações e Funções Quadráticas
Otimizações e Funções Quadráticas
 
Otimização, dicas de implementação, como resolver problemas by Adriano Santan...
Otimização, dicas de implementação, como resolver problemas by Adriano Santan...Otimização, dicas de implementação, como resolver problemas by Adriano Santan...
Otimização, dicas de implementação, como resolver problemas by Adriano Santan...
 
Programacao linear 11 ano - 1011
Programacao linear 11 ano -  1011Programacao linear 11 ano -  1011
Programacao linear 11 ano - 1011
 
ResoluçãO De Problemas
ResoluçãO De ProblemasResoluçãO De Problemas
ResoluçãO De Problemas
 
Introdução a engenharia pdf
Introdução a engenharia pdfIntrodução a engenharia pdf
Introdução a engenharia pdf
 
Simulação e Otimização
Simulação e OtimizaçãoSimulação e Otimização
Simulação e Otimização
 
Aula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem AmbientalAula resolução de problema Modelagem Ambiental
Aula resolução de problema Modelagem Ambiental
 
Introdução à Simulação
Introdução à SimulaçãoIntrodução à Simulação
Introdução à Simulação
 
Análise de Algoritmos - As classes P e NP
Análise de Algoritmos - As classes P e NPAnálise de Algoritmos - As classes P e NP
Análise de Algoritmos - As classes P e NP
 
Introdução a engenharia walter antonio bazzo - 6ª edição
Introdução a engenharia   walter antonio bazzo - 6ª ediçãoIntrodução a engenharia   walter antonio bazzo - 6ª edição
Introdução a engenharia walter antonio bazzo - 6ª edição
 
5 diagrama ferro carbono
5 diagrama ferro carbono5 diagrama ferro carbono
5 diagrama ferro carbono
 
Geometria espacial de posição
Geometria espacial de posiçãoGeometria espacial de posição
Geometria espacial de posição
 
Funções
FunçõesFunções
Funções
 

Similar a Introdução à otimização convexa.

EMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdf
EMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdfEMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdf
EMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdfGabriel374282
 
Pesquisa Operacional 1_Aula 2
Pesquisa Operacional 1_Aula 2Pesquisa Operacional 1_Aula 2
Pesquisa Operacional 1_Aula 2Joabe Amaral
 
Apostila 2 solução
Apostila 2 soluçãoApostila 2 solução
Apostila 2 soluçãoluciaoliv
 
CAP 375 - Aula 1 - Introdução - Eduardo Luz
CAP 375 - Aula 1 - Introdução - Eduardo LuzCAP 375 - Aula 1 - Introdução - Eduardo Luz
CAP 375 - Aula 1 - Introdução - Eduardo LuzEduardo Luz
 
Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)
Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)
Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)Ben Hur Bahia do Nascimento
 
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.Adrienne Oliveira
 
Função do 2º grau em execução
Função do 2º grau em execuçãoFunção do 2º grau em execução
Função do 2º grau em execuçãomonica_cassia
 
Projeto_Execução_Leandro_Casemiro
Projeto_Execução_Leandro_CasemiroProjeto_Execução_Leandro_Casemiro
Projeto_Execução_Leandro_Casemirol_dapaz
 
Aula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptx
Aula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptxAula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptx
Aula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptxJuliana Menezes
 
Função Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.pptFunção Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.pptEmmersonWarleiEmmers
 

Similar a Introdução à otimização convexa. (20)

EMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdf
EMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdfEMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdf
EMA013_03-PROGRAMAO_LINEAR_METODO_SIMPLEX.pdf
 
Pesquisa Operacional 1_Aula 2
Pesquisa Operacional 1_Aula 2Pesquisa Operacional 1_Aula 2
Pesquisa Operacional 1_Aula 2
 
Cursocalc1ead
Cursocalc1eadCursocalc1ead
Cursocalc1ead
 
Atps pesquisa operacional
Atps pesquisa operacionalAtps pesquisa operacional
Atps pesquisa operacional
 
Apostila 2 solução
Apostila 2 soluçãoApostila 2 solução
Apostila 2 solução
 
Notas De Aula
Notas De AulaNotas De Aula
Notas De Aula
 
Slides cn c05
Slides cn c05Slides cn c05
Slides cn c05
 
Introdução metodos computacionais
Introdução metodos computacionaisIntrodução metodos computacionais
Introdução metodos computacionais
 
CFD Aula 5
CFD Aula 5CFD Aula 5
CFD Aula 5
 
CAP 375 - Aula 1 - Introdução - Eduardo Luz
CAP 375 - Aula 1 - Introdução - Eduardo LuzCAP 375 - Aula 1 - Introdução - Eduardo Luz
CAP 375 - Aula 1 - Introdução - Eduardo Luz
 
Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)
Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)
Classificação: Dimensão VC e Máquinas de Vetores Suporte (SVMs)
 
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
Projeto, execução. Desmistificando o ensino de Funções Quadráticas.
 
Função do 2º grau em execução
Função do 2º grau em execuçãoFunção do 2º grau em execução
Função do 2º grau em execução
 
Projeto_Execução_Leandro_Casemiro
Projeto_Execução_Leandro_CasemiroProjeto_Execução_Leandro_Casemiro
Projeto_Execução_Leandro_Casemiro
 
Aula17e18
Aula17e18Aula17e18
Aula17e18
 
1 cm mat
1 cm mat1 cm mat
1 cm mat
 
Matematica2 1
Matematica2 1Matematica2 1
Matematica2 1
 
Full Waveform Inversion: Introdução e Aplicações [3/5]
Full Waveform Inversion: Introdução e Aplicações [3/5]Full Waveform Inversion: Introdução e Aplicações [3/5]
Full Waveform Inversion: Introdução e Aplicações [3/5]
 
Aula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptx
Aula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptxAula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptx
Aula de Apresentação, Função e Função do 1º Grau.ppt · versão 1.pptx
 
Função Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.pptFunção Quadrática Zeros, Vérticees.ppt
Função Quadrática Zeros, Vérticees.ppt
 

Introdução à otimização convexa.

  • 1. Seminário Introdução à Otimização Convexa Resolução de problemas utilizando CVX Guilherme Varela Barbosa Rodrigo Carneiro Brandão Rodrigo de Oliveira Matos
  • 2. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 3. Breve Histórico de Otimização 1939-1945: A otimização teve início durante a 2a Guerra Mundial. 1947: Início do interesse das indústrias na utilização das técnicas desenvolvidas na área militar, para auxiliar no planejamento e controle da produção. 1949: George B. Dantzig apresenta o Método Simplex para resolver problemas de otimização linear (equações e (ou) inequações lineares).
  • 4. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 5. Otimização Harrel et al. (2000) define otimização como o processo de tentar diferentes combinações de valores para variáveis que podem ser controladas (variáveis independentes), buscando a combinação de valores que leva à saída mais desejada. De acordo com Torga (2007), a procura pela solução ótima pode ser conduzida manualmente ou automatizada com algoritmos especialmente designados para procurar a solução ótima sem executar a avaliação de todas as soluções possíveis.
  • 6. Alguns métodos de otimização: Programação Linear Programação Não-Linear
  • 7. Programação Linear Distribuição eficiente de recursos limitados para atender um determinado objetivo. Função linear: suas variáveis possuem relações proporcionais entre si.
  • 8. Programação Linear Exemplo: Função y = 2x , y = f(x) , x = Valores de 0 a 10 2*X=Y 2*0= 0 y 2*1= 2 20 2*2= 4 2*3= 6 15 2*4= 8 2 * 5 = 10 10 2 * 6 = 12 5 2 * 7 = 14 2 * 8 = 16 5 10 2 * 9 = 18 x 2 * 10 = 20 Figura 1: Gráfico da função y = 2x
  • 9. Programação Não-Linear Finalidade: resolver problemas que envolvem funções constituídas de variáveis que compartilham relações desproporcionais entre si (não-linearidade). Uma função é considerada não linear quando uma ou mais de suas variáveis possuem relações desproporcionais entre si.
  • 10. Programação Não-Linear Exemplo: Função y = x2 , y = f(x) , x = Valores de 0 a 10 X2 = Y 02 = 0 12 = 1 22 = 4 32 = 9 42 = 16 52 = 25 62 = 36 72 = 49 82 = 64 92 = 81 Figura 2: Gráfico da função y = X2 102 = 100
  • 11. Programação Não-Linear De acordo com Winston (2001), para determinar se o problema de PNL possui solução ótima ou não, é necessário definir a função de concavidade e convexidade.
  • 12. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 13. Funções Função Convexa Inclinação na região é sempre crescente; A linha que conecta dois pontos na função nunca se estende abaixo dela. Figura 3: Função estritamente convexa Figura 4: Função convexa Fonte: H. Hindi – A Tutorial on Convex Optimization
  • 14. São exemplos de funções convexas: Figura 5: Função convexa Figura 6: Função convexa
  • 15. Funções Função Côncava Inclinação na região é sempre decrescente; A linha que conecta dois pontos na função nunca se estende acima dela. Figura 7: Função estritamente côncava Figura 8: Função côncava Fonte: H. Hindi – A Tutorial on Convex Optimization
  • 16. São exemplos de funções côncavas: Figura 9: Função côncava Figura 10: Função côncava
  • 17. Funções Análise matemática de Função Convexa e Côncava Função Convexa F(λ(x1)+(1- λ)x2) ≤ λ F(x1)+(1- λ) F(x2) Função Côncava F(λ(x1)+(1- λ)x2) ≥ λ F(x1)+(1- λ) F(x2)
  • 18. Conjunto Convexo Um conjunto é convexo se, dados dois pontos X1 e X2 do conjunto, o segmento que os une também pertence ao conjunto. S = { x | x = λx1 + ( 1 – λ) x2 , 0≤λ≤1} Figura 11: Conjunto Convexo Figura 12: Conjunto Não Convexo Fonte: H. Hindi – A Tutorial on Convex Optimization
  • 19. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 20. Otimização Convexa - Formulação geral Minimize: f 0( x ) Sujeito a: fi ( x) ≤ 0 , i =1,..., m hi ( x) = 0 , j =1,..., p
  • 21. Otimização convexa Parâmetros para um problema ser considerado convexo: Função Objetivo ( funções convexas); Inequações de Restrições ( funções convexas); Equações de Restrições ( funções afins). E deve-se minimizar uma função objetivo convexa sobre um conjunto convexo.
  • 22. Otimização Convexa Evolução nas técnicas de Otimização Convexa visando obter os parâmetros para a formulação adequada: Problemas: Muitos pontos locais “ótimos”; Difícil encontrar um ponto ótimo (X*) que satisfaça todas as restrições; Critérios de parada, muitas vezes aleatórias; Algoritmos de baixa taxa de convergência; Problemas numéricos faziam com que os algoritmos de minimização parassem em vários pontos ou ficassem flutuando.
  • 23. Segundo D.P. Bertrekas (1999) Se: Sujeito a fi (x) (convexas) hi (x) (afins) Os três primeiros problemas são eliminados Mesmo assim: A baixa taxa de convergência permanece como problema.
  • 24. De acordo com A. Nemirovskii (1994), até o final dos anos 80 e 90, foi descoberto na antiga União Soviética e Estados Unidos que: Se: fi (x) (além de convexas) fosse baseada no método de pontos interiores, o problema de baixa taxa de convergência seria evitado.
  • 25. Otimização convexa Base matemática: fi(αx + β y) ≤ αfi(x) + β fi ( y ) para todo x, y ∈ ℜ n e todo α, β ∈ ℜ com α + β = 1, α, β ≥ 0 f(x) ≥ ( x , f(x )) * *
  • 27. Otimização Quase Convexa Figura 13: Função quase convexa Fonte: H. Hindi – A Tutorial on Convex Optimization
  • 28. Otimização Quase Convexa Figura 14: Função quase-convexa entre x e y Fonte: H. Hindi – A Tutorial on Convex Optimization .
  • 29. Quase Convexa - Diferença Importante Um problema de otimização quase convexa pode ter soluções ótimas locais que não são (globalmente) ótimas. O que não ocorre na otimização convexa, uma vez que, uma solução ótima local é também uma solução ótima global.
  • 30. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 31. Problemas de Otimização Convexa (Forma Padrão) O problema de otimização é convexo? Não. Minimize: O problema encontra-se na forma padrão Sujeito a: A inequação de restrição não é convexa A equação de restrição não é afim
  • 32. Problemas de Otimização Convexa (Forma Padrão) Reform ulando o problem a anterior de form a que atenda todos os pré-requisitos vistos anteriorm ente: M inim ize: Sujeito a:
  • 33. A interpretação geométrica para esse fato é apresentado na figura abaixo: Figura 15: Interpretação geométrica para problema convexo Figura 16: Poliedro – Região Realizável Fonte: S.P. Boyd Convex Optimization Fonte: S.P. Boyd Convex Optimization A região realizável é mostrada na parte escura. Algumas curvas de nível da função objetivo são mostradas nas linhas pontilhadas. O ponto mostrado é ótimo.
  • 34. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 35. Algoritmos de resolução geral A ideia de que os problemas de otimização convexa eram factíveis e que, a teoria da otimização convexa é mais simples e mais completa do que a teoria geral da otimização não-linear não é recente. Diversos métodos como, por exemplo, método do sub-gradiente, método de planos cortados e método do elipsoide foram desenvolvidos na União Soviética entre 1960 e 1970. Apesar desses métodos serem algoritmos de resoluções universais para otimização convexa, funcionando até mesmo para funções não diferenciável, eles não são eficientes.
  • 36. Método de Pontos interiores Útil para problemas de: Programação linear Programação geométrica Programação quadrática Além de lidar com problemas de forma cônica. Método mais eficiente de resolução de problemas - Quase independente do tipo e do tamanho do problema. Cada iteração envolve a resolução de um conjunto de equações lineares (problemas de mínimos quadrados) com o mesmo tamanho e estrutura do problema.
  • 37. Método de Pontos interiores Busca chegar a uma solução ótima caminhando através de pontos interiores da região realizável. Baseado no método de Newton e na Função Logarítmica de Barreira – Aplica funções que atuam como barreiras armazenando as variáveis em pontos interiores a região realizável. Técnica para resolver um problema cuja restrição é uma equação linear, e a função objetivo é duas vezes diferenciável. O usuário deve fornecer uma tolerância desejável para o vetor de decisão.
  • 38. Método de Newton para Problemas de Minimização com Restrições de Igualdade. Dado o ponto ∈ com = e tolerância > 0 1 – Calcule o passo de Newton ∆ e o decremento ( ): Onde: ∆ = −(∇2 ( ))−1 ∇ ( ) e ( ) = (Δ ∇2 ( )∆ )1⁄2 2⁄ 2 – Observe o critério de parada: 2≤ . 3 – Escolha o valor de relacionado com a linha de busca 3 – Atualização: + ∆ ∆ é sempre uma direção de descida viável, exceto no ponto ótimo onde ∆ =0
  • 39. Funções de Barreira Logarítmica e Trajetória Central O objetivo é reformular as inequações de restrição do problema, de tal forma que seja possível aplicar o método de Newton. Torne as restrições de inequação implícitas na função objetivo. Para isso, uma função de barreira é adicionada na função objetivo, tal como a função de barreira logarítmica : # ∅( ) = − log (− " ( )) "=1 O problema fica da seguinte forma: Minimize: 0( ) − (1/ ) ∑# log (− " ( )) "=1 Sujeito a: =
  • 40. Funções de Barreira Logarítmica e Trajetória Central A medida que o parâmetro t é incrementado, mais o problema reformulado se aproxima do problema original. Por outro lado, quanto maior o valor de t, mais difícil se torna minimizar a função pelo método de Newton, uma vez que, o Hessiano varia mais rapidamente próximo da fronteira da região realizável. O gradiente e o hessiano da função de barreira logarítmica é dado, respectivamente por: # 1 ∇∅( ) = ∇ ( ) − "( ) " "=1 # # 1 1 ∇2 ∅( ) = ∇ ( )∇ " ( ) + ∇2 " ( ) " ( )2 " − "( ) "=1 "=1
  • 41. Funções de Barreira Logarítmica e Trajetória Central Agora, multiplicando-se a função objetivo por t, teremos o seguinte problema equivalente: Minimizar: 0( ) + ∅( ) Sujeito a: = De modo que o novo problema possa ser resolvido pelo método de Newton e que possua apenas uma única solução para cada > 0. A trajetória central, associada com o problema original, é definida como o conjunto de pontos ⋆ ( ) que garantem as condições necessárias e suficientes exigidas nas restrições do problema original. Assuma que = #/'
  • 42. Funções de Barreira Logarítmica e Trajetória Central Figura 17 - Interpretação geométrica para função de barreira logarítmica e trajetória central Fonte: S.P. Boyd Convex Optimization Nesse exemplo, as curvas pontilhadas mostram três linhas de contorno da função de barreira logarítmica. A trajetória central converge para o ponto ótimo a medida que t tende ao infinito.
  • 43. Método da barreira O método da Barreira (0) Forneça: , = > 0, ) > 1, ' > * ∗ 1 – calcule ( ) que minimiza 0( ) + ,( ) sujeito a = iniciando em ∗ 2 – atualize : = ( ) 3 – critério de parada: Pare se #/ < ' 4 – incremente : = )
  • 44. Funções auto concordantes Importante pois: Incluem a função de barreira logarítmica que apresenta grande importância no Método de Pontos Interiores. A analise do Método de Newton para funções auto- concordantes não depende de constantes desconhecidas. Se realizarmos uma transformação linear de variável em uma função auto-concordante, teremos uma função auto- concordante. 32 Uma função convexa é auto-concordante se | concordante se ′′′ ( )| ≤ 2 ′′ ( ) 2 .
  • 45. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 46. O que é o CVX? CVX fornece métodos para simplificar a construção de problemas e obedece um conjunto de regras denominada DCP. Modos de construção de problema SDP – Programação Semidefinida Positiva Utiliza uma matriz de inequações lineares (LMIs) GP – Programação Geométrica Aceita todas as funções e regras da programação convexa. Plataforma - MatLab
  • 47. O que o CVX não é? O CVX não é uma ferramenta para: Verificar se determinado problema é convexo ou não. Resolução de problemas de larga escala.
  • 48. Programação Convexa Disciplinada A programação convexa disciplinada é uma metodologia destinada a construção de problemas de otimização convexa proposta por Michael Grant, Stephen Boyd e Yinyu Ye. Problemas que aderem a esse conjunto de regras DCP podem ser resolvidos rapidamente. Porém, os problemas que violam essas regras são rejeitados, mesmos que esses problemas sejam convexos.
  • 49. Inicialização As especificações do CVX no prompt de comando do MatLab são precedidas por cvx_begin e finalizadas por cvx_end. As variáveis de otimização não possuem valor numérico. Elas são caracterizadas como objetos. Caso alguma regra seja violada, uma mensagem de erro é gerada. Caso contrário, as especificações são convertidas para a forma canônica e solucionadas.
  • 50. Panorama do conjunto de regras DCP Como vimos anteriormente o conjunto de regras DCP retorna uma mensagem de erro quando uma de suas regras é violada. Esse conjunto de regras é suficiente, porém incompleto, para garantir que determinada função seja convexa, ou seja, é possível elaborar expressões que violem essas regras e que sejam de fato convexas.
  • 51. Conjunto de Regras DCP Regras de alto nível O CVX suporta dois diferentes tipos de programação convexa disciplinada. Problemas de minimização É necessário que a função objetivo seja convexa e nenhuma ou mais restrições. Problemas de maximização É necessário que a função objetivo seja côncava e nenhuma ou mais restrições.
  • 52. Restrições Três tipos de restrições podem ser especificadas no DCP: Restrição de igualdade == Ambos os lados são afim (um ou ambos os lados podem ser complexos). Restrição de desigualdade menor que <= O lado esquerdo é convexo e o lado direito é côncavo (ambos os lados deve ser real). Restrição de desigualdade maior que >= O lado esquerdo é côncavo e o lado direito é convexo (ambos os lados deve ser real).
  • 53. Funções As funções são caracterizadas por dois atributos. Curvatura Pode ser constante, afim, convexa ou côncava. Determina as condições pela qual as expressões entram em concordância com as regras de expressões. Monotonicidade Pode ser não-crescente, não-decrescente ou não-monótona. Determina como as expressões podem ser usadas para a criação de funções.
  • 54. Compondo Funções Regras de composição para funções convexas: Se a função possui argumento não-decrescente, este argumento deve ser convexo. Se a função possui argumento não-crescente, esse argumento deve ser côncavo. Regras de composição para funções côncavas: Se a função possui argumento não-decrescente, este argumento deve ser côncavo. Se a função possui argumento não-crescente, esse argumento deve ser convexo.
  • 55. Mínimos-quadrados Dados de entrada m = 16; n = 8; A = randn(m,n); b = randn(m,1); Solução através do Matlab x_ls = A b; Solução através do cvx cvx_begin; variable x(n); minimize(norm(A*x-b) ); cvx_end;
  • 56. Mínimos-quadrados Resultados: norm(A*x_ls-b): 2.0354 (Solução usando Mínimos Quadrados) norm(A*x-b): 2.0354 (Solução usando CVX) cvx_optval: 2.0354 cvx_status: Solved Verificando x_ls == x: x_ls = [ -0.2628 0.8828 -0.0734 -1.0844 0.3249 -0.3330 0.0603 0.3802 ] x = [ -0.2628 0.8828 -0.0734 -1.0844 0.3249 -0.3330 0.0603 0.3802 ] Vetor resultado (Utilizando CVX): A*x-b = [ -0.3262 -0.0070 -0.9543 0.2447 -0.6418 -0.3426 -0.1870 0.2960 0.6024 -0.0440 0.6238 -0.7399 0.0849 0.9323 0.4799 -0.0762 ]
  • 57. Mínimos-quadrados com restrições Dados de entrada bnds = randn(n,2); l = min( bnds, [ ] ,2 ); u = max( bnds, [ ], 2 ); Solução através do Quadprog x_qp = quadprog( 2*A'*A, -2*A'*b, [], [], [], [], l, u ); Solução através do CVX cvx_begin variable x(n); minimize( norm(A*x-b) ); subject to x >= l; x <= u; cvx_end
  • 58. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 59. Arranjo de Antenas A título aplicação será demonstrado um problema de arranjos de antenas formulado por H. Lebret, S. Boynd e A. Mutapcic. Arranjos de antenas proporcionam um meio eficiente de detectar e processar sinais provenientes de diferentes direções. Comparando uma única antena, que é limitada em diretividade e largura de banda, um conjunto de sensores pode ter seu diagrama de irradiação modificado através de um distribuição de amplitude e fase denominada de pesos do arranjo. Após o processamento das saídas das antenas, os sinais são pesados e somados afim de fornecerem o diagrama de irradiação do arranjo. O problema em questão consiste em encontrar pesos que satisfaçam ao conjunto de especificações.
  • 60. Arranjo de Antenas Considere um arranjo linear de N antenas isotrópicas localizadas em " , … 4 e 5" , … 54 . Uma onda harmônica plana com freqüência 6 e comprimento de onda vinda de uma direção 7 que se propaga ao longo do arranjo. Os N sinais de saída são convertidos para banda-base, ponderadas pelos pesos 8" , e somadas para fornecer o diagrama de irradiação do arranjo dado por: 4 5 (7 ) = 8" 9 : ( " ;*< 7+5 " <9 7) "=1 Onde desejamos encontrar um vetor 8 tal que, 5(7 => ) = 1 e que |5(7)| seja pequeno para |7 − 7 => | ≥ ∆ ( onde 2∆ é a largura do feixe).
  • 61. Arranjo de Antenas O problema se torna, então: Minimizar: #= "=1,…,4 |5(7" )| Sujeito a: 5(7 => ) = 1 Onde minimizamos os valores dos lóbulos laterais. No CVX, o problema é descrito da seguinte forma: cvx_begin variable 8( ) complex minimize (max(= <( ℎ9 =_*E _ 9=# ∗ 8))) subject to ℎ9 =_ =>′ ∗ 8 == 1; Cvx_end Observe que foi criada uma matriz , que possui as especificações e configurações acerca do arranjo de antenas e que relaciona 8 e 5(7 ) tal como 5 = ∗ 8.
  • 62. Ilustração do problema Figura 18 – A figura apresenta um arranjo linear de N antenas isotrópicas e uma onda harmônica plana incidindo de uma direção 7. Fonte: S.P. Boyd Convex Optimization
  • 63. Ilustração do problema Figura 19 – A figura A apresenta o diagrama de irradiação para um arranjo de antenas cuja diretividade não é particularizada. Fonte: S. Boyd, H. Lebret , Antenna Array Pattern Synthesis via Convex Optimization
  • 64. Ilustração do problema Figura 20 - A figura mostra o ganho unitário na direção alvo com os lóbulos laterais, externos ao feixe, minimizados. Fonte: S. Boyd, H. Lebret , Antenna Array Pattern Synthesis via Convex Optimization
  • 65. Ilustração do problema w= 0.0021 - 0.0423i 0.0588 - 0.0487i -0.1950 - 0.0278i -0.0226 - 0.0379i -0.0268 + 0.0810i . . . 0.1390 - 0.0414i 0.0236 - 0.0124i 0.0252 - 0.1129i -0.0664 - 0.1135i 0.0748 - 0.1329i 0.0161 - 0.0450i 0.0070 + 0.0579i Figura 21: Diagrama de Irradiação para arranjo otimizado Fonte: S. Boyd, H. Lebret , Antenna Array Pattern Synthesis via Convex Optimization A figura 21 apresenta o diagrama de irradiação do arranjo após o processo de otimização e o vetor peso w.
  • 66. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 67. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 68. Agradecimentos Agradecemos ao Prof. Dr. Dayan Adionel Guimarães (Inatel) pelo apoio e material disponibilizado; Ao Prof. Dr. Takaaki Ohishi (Unicamp) pela valiosa orientação e atenção; Ao Prof. Dr. Paulo Augusto Valente Ferreira (Unicamp) pela valiosa orientação e atenção.
  • 69. Histórico Introdução Funções / Conjuntos Convexos Otimização Convexa Problemas de Otimização Métodos de Resolução CVX Aplicações Conclusão Agradecimentos Referências Bibliográficas
  • 70. Referências Bibliográficas D.P. Bertrekas. Nolinear Programming. Athena Scientific,1999 HARREL, Charles R.; GHOSH, Biman K.; BOWDEN, Royce. Simulation Using ProModel. New York, McGraw-Hill, 2000. O.M Bucci, D. D’Elia, G. Mazzarella, and G. Panatiello, “Antenna pattern synthesis: A new approach,”Proc.IEEE, vol.82,pp.358-357, Mar. 1996. S.P. Boyd and L. Vandenberghe. Convex Optimization, Cambridge University Press, 2003. In press. Material avaible at www.stanford.edu/~boyd
  • 71. TORGA, Bruno Lopes Mendes. Modelagem, Simulação e Otimização em Sistemas Puxados de Manufatura. Dissertação (Mestrado em Engenharia de Produção). UNIFEI. Itajubá-MG. 2007. WINSTON, Wayne; ALBRIGHT, S. Christian. Practical Management Science. 2nd, Duxbury Thomson Learning, 2001. Y. Nesterov and A. Nemirovskii. Interior-Point Polynomial Methods in Convex Programming. Society for Industrial and Applied Mathematics, 1994.