O documento discute otimização em ambientes com incertezas, dividindo-os em quatro tipos: ambientes ruidosos, otimização robusta, aproximação de funções e problemas variantes no tempo. Ele explica características necessárias para algoritmos de otimização nesses ambientes, como média explícita e implícita, seleção modificada e multiobjetivo. Finalmente, discute tendências como paralelização e o que merece mais estudo.
1. Otimização em Ambientes com Incertezas - Perspectivas em computação evolutiva - Fabrício Olivetti de França IA707 – Campinas/SP – junho de 2009
2. Conteúdo Prelúdio: O complicado problema de otimizar Parte 1: CONCEITOS O que é um problema com incerteza? Em que isso me afeta? Como se dividem? Aplicações Parte 2: OTIMIZANDO Do que preciso? O que a literatura mostra Parte 3: CONCLUINDO Tendências Referências 2
3. Conteúdo Prelúdio: O complicado problema de otimizar Parte 1: CONCEITOS O que é um problema com incerteza? Em que isso me afeta? Como se dividem? Aplicações Parte 2: OTIMIZANDO Do que preciso? O que a literatura mostra Parte 3: CONCLUINDO Tendências Referências 3
4.
5.
6. 6 Tudo é simples Ele então propôs um modelo linear e otimizou a quantidade de pepperoni que deveria trazer o lucro máximo.
7.
8. 9 Capitalismo: modelo presa-predador Esse concorrente vendia as pizzas por um preço levemente mais caro mas com uma qualidade muito melhor! Não demorou muito para ele perder seus clientes…
9. 10 Render-se jamais! Finalmente apareceu um pós-graduando que olhou para o seu problema e percebeu que, na verdade, ele estava lidando com um problema multi-objetivo.
10. 11 Render-se jamais! 1 0.9 0.8 0.7 0.6 refrigerante 0.5 0.4 0.3 0.2 0.1 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 pizza Ele apresentou então uma superfície de soluções contendo a relação de vendas entre pizza e refrigerante com diferentes modos de preparo. Agora ele podia satisfazer qualquer tipo de cliente.
11.
12. A qualidade do produto final (pizza) não pode ser medido adequadamente a ponto de obedecer um modelo matemático não-linear
13. Dois potes de molho sempre apresentam uma variação pequena no sabor
14.
15. Conteúdo Prelúdio: O complicado problema de otimizar Parte 1: CONCEITOS O que é um problema com incerteza? Em que isso me afeta? Como se dividem? Aplicações Parte 2: OTIMIZANDO Do que preciso? O que a literatura mostra Parte 3: CONCLUINDO Tendências Referências 14
25. 23 O que é um problema com incertezas? Um problema que é afetado por diversos fatores durante a otimização, causando alteração em sua função-objetivo Os fatores podem ser: Mudanças no espaço de busca Alterações nos parâmetros do vetor solução Imprecisões decorrentes de ruídos internos e/ou externos Para facilitar o entendimento, foram criados 4 tipos de ambientes incertos
26. 24 Ambientes Ruidosos Imprecisão ou falha ao medir a função-objetivo F(x) = f(x) + d Jogos de Azar Física Ruidosa Reconhecimento de Voz
27. 25 Otimização Robusta Quando os valores dos parâmetros podem mudar APÓS a otimização Não queremos uma variação brusca no valor da função-objetivo F(x) = f(x + d) Escalonamento de Processos Projeto de Peças
28. 26 Aproximação de Funções Estimar uma função-objetivo de alto custo ou impossível de ser modelada matematicamente F(x) = E(x) Composição Musical Projetos Aerodinâmicos
29. 27 Problemas Variantes no Tempo A função-objetivo muda com o tempo em forma, amplitude e até mesmo dimensão F(x) = f(x,t) Rota Dinâmica Ruído em Telefonia Celular
30. Conteúdo Prelúdio: O complicado problema de otimizar Parte 1: CONCEITOS O que é um problema com incerteza? Em que isso me afeta? Como se dividem? Aplicações Parte 2: OTIMIZANDO Do que preciso? O que a literatura mostra Parte 3: CONCLUINDO Tendências Referências 28
31. 29 Do que meu algoritmo precisa? Em Jin & Branke (2005), foram listadas as características adotadas pelos algoritmos de otimização em ambientes incertos Essas características foram incorporadas de maneiras diferentes em cada classe de algoritmos
33. 31 Média Explícita Usado para reduzir a influência do ruído na avaliação da função-objetivo É feita durante as iterações (averaging over time) Avaliar uma solução N vezes reduz o desvio padrão por um fator de
34. 32 Média Explícita Para reduzir o custo computacional desse processo podemos: aumentar o número de amostras com o tempo aumentar o número de amotras em soluções com maior variância estimada aumentar o número de amostras se a solução tem alta probabilidade de estar entre as melhores
35. 33 Média Implícita Em Algoritmos Evolutivos, as regiões promissoras são avaliadas repetidamente Aumentando a população, o efeito do ruído é reduzido por existir uma média implícita ao avaliar soluções próximas Trabalhe com populações grandes!
36. 34 Seleção Modificada Seleção probabilística: um indivíduo é escolhido se tem chances de ser melhor que os pais Seleção com limiar: um indivíduo é escolhido se tiver um fitness maior que os dos pais, acrescido de um limiar
38. 36 Média Explícita Método de Monte Carlo: média da função-objetivo sobre um número de perturbações aleatórias f(x + d) Outros métodos de redução de variância podem ser aplicados
39. 37 Média Implícita Da mesma forma que com ambientes ruidosos, uma população grande o suficiente junto com uma seleção proporcional ajuda na convergência correta do algoritmo Alguns artigos mostraram que a média explícita é mais eficaz que a implícita para esses casos Mas um outro estudo mostrou que, teoricamente, a média implícita é melhor quando temos um número fixo de avaliações por iteração
40. 38 Multi-objetivo Desvios positivos e negativos na região do espaço de objetivos podem se cancelar, fazendo com que uma solução indesejável se torne ótima Para resolver esse problema, podemos otimizar a função com dois objetivos: média e variância do fitness Podemos incluir também o valor do fitness real: 3 objetivos! E quando queremos uma fronteira de Pareto robusta em um problema multi-objetivo?
42. 40 Métodos de Aproximação Simulações Numéricas x Experimentos Físicos Meta-modelo: gerar um modelo do espaço de busca através de dados que mapeiam as variáveis e a respectiva qualidade Fitness Inheritance, Fitness Imitation, Fitness Assignment
43. 41 Fitness Inheritance O fitness de cada novo indivíduo é estimado através de seus vizinhos Alternativa: média ponderada dos pais
44. 42 Fitness Imitation Os indivíduos são clusterizados Apenas o indivíduo que representa cada cluster é avaliado Os fitness dos outros indivíduos são estimados através do indivíduo representante e a distância entre eles
45. 43 Fitness Assignment Utilizados em Algoritmos Co-evolutivos O fitness de uma população depende da outra Diversas estratégias na literatura
47. 45 Geração de Diversidade É executadoaodetectarumamudança no ambiente: Aumentartaxa de mutação Introduzirnovosindivíduos
48. 46 Manutenção de Diversidade Evita a convergência espalhando a população no espaço de busca: Imigração: novos indivíduos são introduzidos de tempos em tempos Fitness Sharing e Crowding Distance Seleção termodinâmica
49. 47 Seleção Termodinâmica Cálculo da energia livre: F = <E> - TH <E> = média do fitness da população TH = medida de diversidade A nova população é escolhida da população anterior, um a um, com os indivíduos que minimizam F
50. 48 Memória Dinâmica Uma lista de melhores soluções do passado é mantida Útil em casos em que o problema é cíclico Explícito: quando uma mudança é detectada, indivíduos da memória são reinseridos na população Implícito: uso dos conceitos de diplóides
51. 49 Multi-população Manter várias populações otimizando em paralelo diferentes regiões do espaço de busca Implicitamente faz o papel de Manutenção de diversidade e Memória Mantém informações de vários pontos promissores do espaço: multimodalidade
53. 51 Tamanho de População Auto-ajustável O tamanho da população se ajusta conforme a multimodalidade do problema Família aiNet de algoritmos (Sistemas Imunológicos Artificiais) Indivíduos ligados em rede Ajuda na manutenção da diversidade
54. 52 Como Avaliar? Moving Peaks: http://www.aifb.uni-karlsruhe.de/~jbr/MovPeaks http://www.cs.uwyo.edu/~wspears/morrison/ Dynamic Knapsack Problem (Mori et al., 1996) Dynamic Scheduling (Branke & Mattfeld, 2000)
55. 53 Como Avaliar? Multi-objective Dynamic Problems (Farina et al., 2001) Cenários com deslocamentos linear, circular e gaussiano (de França et al., 2005) TSP dinâmico (de França et al., 2006) Competição CEC’09: http://www3.ntu.edu.sg/home/EPNSugan/index_files/CEC-09-Dynamic-Opt/CEC09-Dyn-Opt.htm
56. Conteúdo Prelúdio: O complicado problema de otimizar Parte 1: CONCEITOS O que é um problema com incerteza? Em que isso me afeta? Como se dividem? Aplicações Parte 2: OTIMIZANDO Do que preciso? O que a literatura mostra Parte 3: CONCLUINDO Tendências Referências 54
57. 55 Competição CEC’09 Em 2009, no IEEE CongressonEvolutionaryComputation, foi realizada uma competição para otimização de funções numéricas variantes no tempo Os algoritmos vencedores foram: multi-populationjDE (DifferentialEvolution) DifferentialAnt-StigmergyAlgorithm
58. 56 Competição CEC’09 No multi-populationjDE, foi utilizado o conceito de multi-população para se adaptar aos ambientes dinâmicos No DifferentialAnt-StigmergyAlgorithm, o tamanho da população foi reduzido para 4 indivíduos e foi utilizada uma estratégia parecida com randomrestart
59. 57 Tendências Com recursos limitados, os competidores tiveram que trabalhar com uma população limitada Essa limitação “quebra” o conceito de algoritmos populacionais, que distribuem a informação implícita ou explicitamente
60. 58 Paralelização Os algoritmos evolutivos possuem uma natureza paralela Sua estrutura permite que a evolução de cada indivíduo na população ocorra de forma paralela
61. 59 Paralelização Existem inúmeras alternativas para paralelizar um algoritmo: programação multi-core, cluster de processadores, programação de GPU Com a inclusão de apenas UMA linha de código foi possível paralelizar o algoritmo dopt-aiNet em um ambiente multi-core Umaplaca de vídeoquepermiteprogramação de GPU contendo 115 cores custaapenas US$ 115,00!
62. 60 O que estudar? Interligação de indivíduos em rede e espalhamento de informação Otimização Multi-objetivo Robusta Incerteza nas Restrições Predições em Ambientes Variantes (preferências, tendências,...)
63. 61 O que estudar? Busca Local e MétodosClássicos de Otimização CUDA e OpenMP Computação Orgânica
64. 62 Para pensar! Qual a classificação das situações abaixo em otimização com incertezas? Uma pequena variação na quantidade de fermento reflete em uma mudança drástica na massa da pizza A qualidade do produto final (pizza) não pode ser medido adequadamente a ponto de obedecer um modelo matemático não-linear Dois potes de molho sempre apresentam uma variação pequena no sabor O gosto de seus clientes muda com o tempo
65. 63 Referências Yaochu Jin and J. Branke. Evolutionary optimization in uncertain environments-a survey. Evolutionary Computation, IEEE Transactions on, 9(3):303–317, June 2005. J. Branke, Evolutionary Optimization in Dynamic Environments. Norwell, MA: Kluwer, 2001. R.W.Morrison, DesigningEvolutionaryAlgorithms for DynamicEnvironments. Berlin, Germany: Springer-Verlag, 2004. K. Weicker, Evolutionary Algorithms and Dynamic Optimization Problems. Berlin, Germany: DerAndereVerlag, 2003. Internet Repository on Evolutionary Algorithms for Dynamic Optimization Problems [Online]. Available: http://www.aifb.uni-karlsruhe.de/~jbr/EvoDOP
66. 64 Referências Ruidosas A. N. Aizawa and B. W. Wah, “Scheduling of genetic algorithms in a noisy environment,” Evol. Comput., pp. 97–122, 1994. J. Branke and C. Schmidt, “Sequential sampling in noisy environments,” in Parallel Problem Solving from Nature, ser. LNCS. Berlin, Germany: Springer-Verlag, 2004. A. Di Pietro, L. While, and L. Barone, “Applying evolutionary algorithms to problems with noisy, time-consuming fitness functions,” in Proc. Congr. Evol. Comput., 2004, pp. 1254–1261. Y. Sano, H. Kita, I. Kamihira, andM. Yamaguchi, “Online optimization of an engine controller by means of a genetic algorithm using history of search,” in Proc. Asia-Pacific Conf. Simulated Evol. Learn., 2000, pp. 2929–2934.
67. 65 Referências Ruidosas J. M. Fitzpatrickand J. I. Grefenstette, “Geneticalgorithms in noisyenvironments,” Mach. Learn., vol. 3, pp. 101–120, 1988. B. L. Miller and D. E. Goldberg, “Genetic algorithms, selection schemes, and the varying effects of noise,” Evol. Comput., vol. 4, no. 2, pp. 113–131, 1996. S. Markon, D. Arnold, T. Bäck, T. Beielstein, and H.-G. Beyer, “Thresholding—Aselectionoperator for noisy ES,” in Proc. Congr. Evol. Comput., 2001, pp. 465–472. G. Rudolph, “Evolutionary search for minimal elements in partially ordered fitness, sets,” in Proc. Annu. Conf. Evol. Program., 1998, pp. 345–353.
68. 66 Referências Robustas V. Leon, S. Wu, and R. Storer, “Robustness measures and robust scheduling for job shops,” IIE Trans., vol. 26, pp. 32–43, 1994. H. Greiner, “Robust optical coating design with evolution strategies,” Appl. Opt., vol. 35, no. 28, pp. 5477–5483, 1996. D. Wiesmann, U. Hammel, and T. Bäck, “Robust design of multilayer optical coatings by means of evolutionary algorithms,” IEEE Trans. Evol. Comput., vol. 2, no. 4, pp. 162–167, 1998. J. Branke, “Creating robust solutions by means of evolutionary algorithms,” in Parallel Problem Solving from Nature, ser. LNCS. Berlin, Germany: Springer-Verlag, 1998, pp. 119–128. S. Tsutsui, A. Ghosh, and Y. Fujimoto, “A robust solution searching scheme in genetic search,” in Parallel Problem Solving from Nature. Berlin, Germany: Springer-Verlag, 1996, pp. 543–552.
69. 67 Referências Robustas J. Branke, “Creating robust solutions by means of evolutionary algorithms,” in Parallel Problem Solving from Nature, ser. LNCS. Berlin, Germany: Springer-Verlag, 1998, pp. 119–128. H.-G. Beyer, “Actuator noise in recominant evolution strategies on general quadratic fitness models,” in Lecture Notes in Computer Science, vol. 3102, Proc. Genetic Evol. Comput. Conf., K. Deb et al., Eds.. Berlin, Germany, 2004, pp. 654–665. Y. Jin and B. Sendhoff, “Tradeoff between performance and robustness: An evolutionary multiobjective approach,” in Evolutionary Multi-Criterion Optimization, ser. LNCS 2632. Berlin, Germany: Springer-Verlag, 2003, pp. 237–251. T. Ray, “Constrained robust optimal design using a multiobjective evolutionary algorithm,” in Proc. Congr. Evol. Comput., 2002, pp. 419–424. K. Deb and H. Gupta, “Introducing robustness in multiobjective optimization,” Kanpur Genetic Algorithms Lab. (KanGAL), Indian Inst. Technol., Kanpur, India, Tech. Rep. 2 004 016, 2004.
70. 68 Referências Aproximadas J. Grefenstette and J. Fitzpatrick, “Genetic search with approximate fitness evaluations,” in Proc. Int. Conf.Genetic Algorithms Their Applicat., 1985, pp. 112–120. L. Albert and D. Goldberg, “Efficientdisretization scheduling in multiple dimensions,” in Proc. Genetic Evol. Comput. Conf., 2002, pp. 271–278. X. Zhang, B. Julstrom, and W. Cheng, “Design of vector quantization codebooks using a genetic algorithm,” in Proc. Int. Conf. Evol. Comput., 1997, pp. 525–529. K. Sastry, D. Goldberg, and M. Pelikan, “Don’t evaluate, inherit,” in Proc. Genetic Evol. Comput. Conf., 2001, pp. 551–558. M. Salami and T. Hendtlass, “A fast evaluation strategy for evolutionary algorithms,” Appl. Soft Comput., vol. 2, pp. 156–173, 2003.
71. 69 Referências Aproximadas E. Ducheyne, B. De Baets, and R. deWulf, “Is fitness inheritance useful for real-world applications?,” in EvolutionaryMulti-CriterionOptimization, ser. LNCS 2631. Berlin, Germany: Springer-Verlag, 2003, pp. 31–42. H.-S. Kim and S.-B. Cho, “An efficient genetic algorithms with less fitness evaluation by clustering,” in Proc. Congr. Evol. Comput., 2001, pp. 887–894. Y. Jin, “Acomprehensive survey of fitness approximation in evolutionary computation,” Soft Comput., vol. 9, no. 1, pp. 3–12, 2005. D. Moriarty and R. Miikkulainen, “Forming neural networks through efficient and adaptive coevolution,” Evol. Comput., vol. 5, no. 4, pp. 373–399, 1997. B. Whitehead, “Genetic evolution of radial basis function coverage using orthogonal niches,” IEEE Trans. Neural Netw., vol. 7, no. 6, pp. 1525–1528, 1996.
72. 70 Referências Dinâmicas H. G. Cobb, “An investigation into the use of hypermutation as an adaptive operator in genetic algorithms having continuous, time-dependent nonstationary environments,” Naval Res. Lab., Washington, DC, Tech. Rep. AIC-90-001, 1990. F. Vavak, K. Jukes, and T. C. Fogarty, “Adaptive combustion balancing in multiple burner boiler using a genetic algorithm with variable range of local search,” in Proc. Int. Conf. Genetic Algorithms, T. Back, Ed., 1997, pp. 719–726. W. Cedeno and V. R. Vemuri, “On the use of niching for dynamic landscapes,” in Proc. Int. Conf. Evol. Comput., 1997, pp. 361–366. N. Mori, H. Kita, and Y. Nishikawa, “Adaptation to a changing environment by means of the thermodynamical genetic algorithm,” in Parallel Problem Solving from Nature. ser. LNCS, H.-M. Voigt, Ed. Berlin, Germany: Springer-Verlag, 1996, vol. 1141, pp. 513–522. C. L. Ramsey and J. J. Grefenstette, “Case-based initialization of genetic algorithms,” in Proc. Int. Conf. Genetic Algorithms, S. Forrest, Ed., 1993, pp. 84–91. D. E. Goldberg and R. E. Smith, “Nonstationary function optimization using genetic algorithms with dominance and diploidy,” in Genetic Algorithms, J. J. Grefenstette, Ed: Lawrence Erlbaum, 1987, pp. 59–68.
73. 71 Referências Dinâmicas C. Ryan, “Diploidy without dominance,” in Proc. 3rd Nordic Workshop Genetic Algorithms, J. T. Alander, Ed., 1997, pp. 63–70. S. Yang, “Non-stationary problems optimization using the primal-dual genetic algorithm,” in Proc. Congr. Evol. Comput., vol. 3, 2003, pp. 2246–2253. I. Branke, T. Kaußler, C. Schmidt, and H. Schmeck, “A multipopulation approach to dynamic optimization problems,” in Adaptive Computing in Design and Manufacturing 2000, ser. LNCS. Berlin, Germany: Springer-Verlag, 2000. R. K. Ursem, “Mutinational GA optimization techniques in dynamic environments,” in Proc. Genetic Evol. Comput. Conf., D.Whitley et al., Eds., 2000, pp. 19–26. T. Blackwelland J. Branke. Multi-swarmoptimization in dynamicenvironments. In LNCS, No. 3005, Proc. of Applications ofEvolutionary Computing: EvoWorkshops 2004: EvoBIO, EvoCOMNET, EvoHOT, EvoISAP, EvoMUSART, andEvoSTOC, pages 489--500, 2004. J. Branke, “Memory enhanced evolutionary algorithms for changing optimization problems,” in Proc. Congr. Evol. Comput., vol. 3, 1999, pp. 1875–1882.
74. 72 Referências Dinâmicas R. Morrison and K. De Jong, “A test problem generator for non-stationary environments,” in Proc. Congr. Evol. Comput., 1999, pp. 2047–2053. M. Farina, K. Deb, and P. Amato, “Dynamicmultiobjective optimization problem: Test cases, approximation, and applications,” in Lecture Notes in Computer Science 2632, Proc. Genetic Evol. Comput. Conf., 2003, pp. 311–326. M. Farina, K. Deb, and P. Amato, “Dynamic multiobjective optimization problems: Test cases, approximations, and applications,” IEEE Trans. Evol. Comput., vol. 8, no. 5, pp. 425–442, 2004. Y. Jin and B. Sendhoff, “Tradeoff between performance and robustness: An evolutionary multiobjective approach,” in Evolutionary Multi-Criterion Optimization, ser. LNCS 2632. Berlin, Germany: Springer-Verlag, 2003, pp. 237–251.
75. 73 Referências Dinâmicas de França, F. O. ; Von Zuben, F. J. ; de Castro, L. N. . An artificial immune network for multimodal functionoptimizationondynamicenvironments. In: GeneticandEvolutionaryComputationConference, GECCO-2005, 2005, Washington. ProceedingsoftheGeneticandEvolutionaryComputationConference, GECCO-2005. New York : ACM Press, 2005. p. 289-296. de França, F. O. ; Gomes, L.C.T. ; de Castro, L. N. ; Von Zuben, F. J. . HandlingTime-Varying TSP Instances. In: IEEE CongressonEvolutionaryComputation (CEC 2006), 2006, Vancouver, BC. Proceedingsofthe IEEE CongressonEvolutionaryComputation, 2006. v. 1. p. 9735-9742. Junqueira, C. ; de França, F. O. ; Attux, R. R. F. ; Panazio, C.M. ; de Castro, L. N. ; Von Zuben, F. J.; ROMANO, J. M. T. . Immune-inspiredDynamicOptimization for BlindSpatialEqualization in UndermodeledChannels.. In: IEEE CongressonEvolutionaryComputation (CEC 2006), 2006, Vancouver, BC. Proceedingsofthe IEEE CongressonEvolutionaryComputation, 2006. v. 1. p. 9801-9808. Junqueira, C. ; de França, F. O. ; Attux, R. R. F. ; Suyama, R. ; de Castro, L. N. ; Von Zuben, F. J. ; Romano, J. M. T. . A Proposal for Blind FIR EqualizationofTime-VaryingChannels. In: MACHINE LEARNING FOR SIGNAL PROCESSING, 2005, Connecticut. IEEE International Workshop on Machine Learning for SignalProcessing, 2005.
76. 74 Referências Dinâmicas de França, Fabrício Olivetti ; VON ZUBEN, F. J. . A dynamic artificial immunealgorithmapplied to challenging benchmarking problems. In: IEEE CongressonEvolutionaryComputation (CEC 2009), 2009, Trondheim. Proceedingsofthe IEEE CongressonEvolutionaryComputation, 2009. p. 423-430. P. Korošec, J. Šilc. The differential ant-stigmergy algorithm applied to dynamic optimization problems. In: IEEE CongressonEvolutionaryComputation (CEC 2009), 2009, Trondheim. Proceedingsofthe IEEE CongressonEvolutionaryComputation, 2009. J. Brest, A. Zamuda, B. Bošković, V. Žumer. DynamicOptimizationusingSelf-AdaptiveDifferentialEvolution. In: IEEE CongressonEvolutionaryComputation (CEC 2009), 2009, Trondheim. Proceedingsofthe IEEE CongressonEvolutionaryComputation, 2009. C. Li, S. Yang, T. T. Nguyen, E. L. Yu, X. Yao, Y. Jin, H.-G. Beyer, and P. N. Suganthan, “Benchmark generator for CEC’2009 competition on dynamic optimization,” Available at http://www3.ntu.edu.sg/home/EPNSugan/index files/CEC-09-Dynamic-Opt/CEC09-Dyn-Opt.htm., University of Leicester, University of Birmingham, Nanyang Technological University, Tech. Rep., September 2008.