Seminário Introdução à Otimização ConvexaResolução de problemas utilizando CVX      Guilherme Varela Barbosa      Rodrigo ...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Breve Histórico de Otimização1939-1945: A otimização teve início durante a 2a GuerraMundial.1947: Início do interesse das ...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
OtimizaçãoHarrel et al. (2000) define otimização como o processo detentar diferentes combinações de valores para variá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 ...
Programação LinearExemplo: Função y = 2x , y = f(x) , x = Valores de 0 a 10       2*X=Y       2*0= 0             y       2...
Programação Não-Linear  Finalidade: resolver problemas que envolvem        funções  constituídas de variáveis que comparti...
Programação Não-LinearExemplo: Função y = x2 , y = f(x) , x = Valores de 0 a 10      X2 = Y      02 = 0      12 = 1      2...
Programação Não-Linear De acordo com Winston (2001), para determinar se o problema de PNL possui solução ótima ou não, é n...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Funções Função Convexa   Inclinação na região é sempre crescente;   A linha que conecta dois pontos na função nunca se est...
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 s...
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)    Fu...
Conjunto ConvexoUm conjunto é convexo se, dados dois pontos X1 e X2 doconjunto, o segmento que os une também pertence ao c...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Otimização Convexa - Formulação geral      Minimize:     f 0( x )      Sujeito a:                   fi ( x) ≤ 0   , i =1,....
Otimização convexa Parâmetros para um problema ser considerado convexo:   Função Objetivo ( funções convexas);   Inequaçõe...
Otimização ConvexaEvolução nas técnicas de Otimização Convexa visando obter osparâmetros para a formulação adequada:  Prob...
Segundo D.P. Bertrekas (1999)Se:                Sujeito a fi (x) (convexas)                          hi (x) (afins)       ...
De acordo com A. Nemirovskii (1994), até o final dos anos 80 e 90,foi descoberto na antiga União Soviética e Estados Unido...
Otimização convexaBase matemática:               fi(αx + β y) ≤ αfi(x) + β fi ( y )para todo x, y ∈ ℜ n e todo α, β ∈ ℜ co...
Otimização Quase Convexa
Otimização Quase Convexa           Figura 13: Função quase convexa           Fonte: H. Hindi – A Tutorial on Convex Optimi...
Otimização Quase Convexa           Figura 14: Função quase-convexa entre x e y           Fonte: H. Hindi – A Tutorial on C...
Quase Convexa - Diferença Importante    Um problema de otimização quase convexa pode ter soluções ótimas locais que não sã...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Problemas de Otimização Convexa(Forma Padrão)O problema de otimização é convexo? Não.Minimize:               O problema en...
Problemas de Otimização Convexa(Forma Padrão)Reform ulando o problem a anterior de form a queatenda     todos   os    pré-...
A interpretação geométrica para esse fato é apresentado nafigura abaixo:Figura 15: Interpretação geométrica para problema ...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Algoritmos de resolução geralA ideia de que os problemas de otimização convexa eram factíveise que, a teoria da otimização...
Método de Pontos interiores Útil para problemas de:    Programação linear    Programação geométrica    Programação quadrát...
Método de Pontos interiores Busca chegar a uma solução ótima caminhando através de pontos interiores da região realizável....
Método de Newton para Problemas de Minimizaçãocom Restrições de Igualdade.Dado o ponto   ∈         com    =   e tolerância...
Funções de Barreira Logarítmica e Trajetória Central  O objetivo é reformular as inequações de restrição do problema, de  ...
Funções de Barreira Logarítmica e Trajetória Central  A medida que o parâmetro t é incrementado, mais o problema  reformul...
Funções de Barreira Logarítmica e Trajetória Central  Agora, multiplicando-se a função objetivo por t, teremos o seguinte ...
Funções de Barreira Logarítmica e Trajetória CentralFigura 17 - Interpretação geométrica para função de barreira logarítmi...
Método da barreiraO método da Barreira                  (0)Forneça:    , =         > 0, ) > 1,  > *                       ...
Funções auto concordantes Importante pois:     Incluem a função de barreira logarítmica que apresenta grande     importânc...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
O que é o CVX? CVX fornece métodos para simplificar a construção de problemas e obedece um conjunto de regras denominada D...
O que o CVX não é?  O CVX não é uma ferramenta para:     Verificar se determinado problema é convexo ou não.     Resolução...
Programação Convexa Disciplinada A programação convexa disciplinada é uma metodologia destinada a construção de problemas ...
Inicialização  As especificações do CVX no prompt de comando do MatLab  são precedidas por cvx_begin e finalizadas por cvx...
Panorama do conjunto de regras DCP Como vimos anteriormente o conjunto de regras DCP retorna uma mensagem de erro quando u...
Conjunto de Regras DCPRegras de alto nível  O CVX suporta dois diferentes tipos de programação convexa  disciplinada.     ...
RestriçõesTrês tipos de restrições podem ser especificadas no DCP:     Restrição de igualdade ==   Ambos os lados são afim...
Funções As funções são caracterizadas por dois atributos.    Curvatura  Pode ser constante, afim, convexa ou côncava.  Det...
Compondo Funções Regras de composição para funções convexas:    Se a função possui argumento não-decrescente, este argumen...
Mínimos-quadradosDados de entrada    m = 16; n = 8;    A = randn(m,n);    b = randn(m,1);Solução através do Matlab    x_ls...
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 usand...
Mínimos-quadrados com restrições Dados de entrada     bnds = randn(n,2);     l = min( bnds, [ ] ,2 );     u = max( bnds, [...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Arranjo de Antenas A título aplicação será demonstrado um problema de arranjos de antenas formulado por H. Lebret, S. Boyn...
Arranjo de AntenasConsidere um arranjo linear de N antenas isotrópicas localizadas em " , … 4 e5" , … 54 . Uma onda harmôn...
Arranjo de AntenasO problema se torna, então:      Minimizar: #=   "=1,…,4 |5(7" )|      Sujeito a: 5(7 => ) = 1Onde minim...
Ilustração do problemaFigura 18 – A figura apresenta um arranjo linear de N antenas isotrópicas e uma onda harmônicaplana ...
Ilustração do problemaFigura 19 – A figura A apresenta o diagrama de irradiação para um arranjo de antenas cuja diretivida...
Ilustração do problemaFigura 20 - A figura mostra o ganho unitário na direção alvo com os lóbulos laterais, externos ao fe...
Ilustração do problema w=    0.0021 - 0.0423i       0.0588 - 0.0487i      -0.1950 - 0.0278i      -0.0226 - 0.0379i      -0...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
AgradecimentosAgradecemos ao Prof. Dr. Dayan Adionel Guimarães (Inatel) peloapoio e material disponibilizado;Ao Prof. Dr. ...
HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesC...
Referências Bibliográficas D.P. Bertrekas. Nolinear Programming. Athena Scientific,1999 HARREL, Charles R.; GHOSH, Biman K...
TORGA, Bruno Lopes Mendes. Modelagem, Simulação eOtimização em Sistemas Puxados de Manufatura. Dissertação(Mestrado em Eng...
Próximos SlideShares
Carregando em…5
×

Introdução à otimização convexa.

2.246 visualizações

Publicada em

0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
2.246
No SlideShare
0
A partir de incorporações
0
Número de incorporações
2
Ações
Compartilhamentos
0
Downloads
51
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Introdução à otimização convexa.

  1. 1. Seminário Introdução à Otimização ConvexaResolução de problemas utilizando CVX Guilherme Varela Barbosa Rodrigo Carneiro Brandão Rodrigo de Oliveira Matos
  2. 2. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  3. 3. Breve Histórico de Otimização1939-1945: A otimização teve início durante a 2a GuerraMundial.1947: Início do interesse das indústrias na utilização dastécnicas desenvolvidas na área militar, para auxiliar noplanejamento e controle da produção.1949: George B. Dantzig apresenta o Método Simplex pararesolver problemas de otimização linear (equações e (ou)inequações lineares).
  4. 4. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  5. 5. OtimizaçãoHarrel et al. (2000) define otimização como o processo detentar diferentes combinações de valores para variáveis quepodem ser controladas (variáveis independentes), buscando acombinação de valores que leva à saída mais desejada.De acordo com Torga (2007), a procura pela solução ótimapode ser conduzida manualmente ou automatizada comalgoritmos especialmente designados para procurar a soluçãoótima sem executar a avaliação de todas as soluçõespossíveis.
  6. 6. Alguns métodos de otimização: Programação Linear Programação Não-Linear
  7. 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. 8. Programação LinearExemplo: 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. 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. 10. Programação Não-LinearExemplo: 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. 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. 12. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  13. 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. 14. São exemplos de funções convexas: Figura 5: Função convexa Figura 6: Função convexa
  15. 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. 16. São exemplos de funções côncavas: Figura 9: Função côncava Figura 10: Função côncava
  17. 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. 18. Conjunto ConvexoUm conjunto é convexo se, dados dois pontos X1 e X2 doconjunto, 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. 19. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  20. 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. 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. 22. Otimização ConvexaEvolução nas técnicas de Otimização Convexa visando obter osparâ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. 23. Segundo D.P. Bertrekas (1999)Se: Sujeito a fi (x) (convexas) hi (x) (afins) Os três primeiros problemas são eliminadosMesmo assim: A baixa taxa de convergência permanece como problema.
  24. 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. 25. Otimização convexaBase matemática: fi(αx + β y) ≤ αfi(x) + β fi ( y )para todo x, y ∈ ℜ n e todo α, β ∈ ℜ com α + β = 1, α, β ≥ 0 f(x) ≥ ( x , f(x )) * *
  26. 26. Otimização Quase Convexa
  27. 27. Otimização Quase Convexa Figura 13: Função quase convexa Fonte: H. Hindi – A Tutorial on Convex Optimization
  28. 28. Otimização Quase Convexa Figura 14: Função quase-convexa entre x e y Fonte: H. Hindi – A Tutorial on Convex Optimization .
  29. 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. 30. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  31. 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ãoSujeito a: A inequação de restrição não é convexa A equação de restrição não é afim
  32. 32. Problemas de Otimização Convexa(Forma Padrão)Reform ulando o problem a anterior de form a queatenda todos os pré-requisitos vistosanteriorm ente:M inim ize:Sujeito a:
  33. 33. A interpretação geométrica para esse fato é apresentado nafigura abaixo:Figura 15: Interpretação geométrica para problema convexo Figura 16: Poliedro – Região RealizávelFonte: S.P. Boyd Convex Optimization Fonte: S.P. Boyd Convex OptimizationA região realizável é mostrada na parte escura. Algumas curvasde nível da função objetivo são mostradas nas linhas pontilhadas.O ponto mostrado é ótimo.
  34. 34. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  35. 35. Algoritmos de resolução geralA ideia de que os problemas de otimização convexa eram factíveise que, a teoria da otimização convexa é mais simples e maiscompleta 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 foramdesenvolvidos na União Soviética entre 1960 e 1970.Apesar desses métodos serem algoritmos de resoluções universaispara otimização convexa, funcionando até mesmo para funções nãodiferenciável, eles não são eficientes.
  36. 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. 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. 38. Método de Newton para Problemas de Minimizaçãocom 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. 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. 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. 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. 42. Funções de Barreira Logarítmica e Trajetória CentralFigura 17 - Interpretação geométrica para função de barreira logarítmica e trajetória centralFonte: 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. 43. Método da barreiraO 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. 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. 45. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  46. 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. 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. 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. 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. 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. 51. Conjunto de Regras DCPRegras 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. 52. RestriçõesTrê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. 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. 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. 55. Mínimos-quadradosDados 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. 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. 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. 58. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  59. 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. 60. Arranjo de AntenasConsidere um arranjo linear de N antenas isotrópicas localizadas em " , … 4 e5" , … 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 desaída são convertidos para banda-base, ponderadas pelos pesos 8" , esomadas para fornecer o diagrama de irradiação do arranjo dado por: 4 5 (7 ) = 8" 9 : ( " ;*< 7+5 " <9 7) "=1Onde desejamos encontrar um vetor 8 tal que, 5(7 => ) = 1 e que |5(7)| sejapequeno para |7 − 7 => | ≥ ∆ ( onde 2∆ é a largura do feixe).
  61. 61. Arranjo de AntenasO problema se torna, então: Minimizar: #= "=1,…,4 |5(7" )| Sujeito a: 5(7 => ) = 1Onde 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_endObserve que foi criada uma matriz , que possui as especificações econfigurações acerca do arranjo de antenas e que relaciona 8 e 5(7 ) tal como5 = ∗ 8.
  62. 62. Ilustração do problemaFigura 18 – A figura apresenta um arranjo linear de N antenas isotrópicas e uma onda harmônicaplana incidindo de uma direção 7.Fonte: S.P. Boyd Convex Optimization
  63. 63. Ilustração do problemaFigura 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. 64. Ilustração do problemaFigura 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. 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 OptimizationA figura 21 apresenta o diagrama de irradiação do arranjo após oprocesso de otimização e o vetor peso w.
  66. 66. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  67. 67. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  68. 68. AgradecimentosAgradecemos ao Prof. Dr. Dayan Adionel Guimarães (Inatel) peloapoio e material disponibilizado;Ao Prof. Dr. Takaaki Ohishi (Unicamp) pela valiosa orientação eatenção;Ao Prof. Dr. Paulo Augusto Valente Ferreira (Unicamp) pela valiosaorientação e atenção.
  69. 69. HistóricoIntroduçãoFunções / Conjuntos ConvexosOtimização ConvexaProblemas de OtimizaçãoMétodos de ResoluçãoCVXAplicaçõesConclusãoAgradecimentosReferências Bibliográficas
  70. 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. 71. TORGA, Bruno Lopes Mendes. Modelagem, Simulação eOtimização em Sistemas Puxados de Manufatura. Dissertação(Mestrado em Engenharia de Produção). UNIFEI. Itajubá-MG.2007.WINSTON, Wayne; ALBRIGHT, S. Christian. PracticalManagement Science. 2nd, Duxbury Thomson Learning, 2001.Y. Nesterov and A. Nemirovskii. Interior-Point PolynomialMethods in Convex Programming. Society for Industrial andApplied Mathematics, 1994.

×