Acessibilidade / Reportar erro

Algoritmo Genético: Principais Gaps, Trade-offs e Perspectivas para Futuras Pesquisas

RESUMO

O Algoritmo Genético (AG) é caracterizado por ser uma meta-heurística mimetizada no processo genético de evolução natural baseada na Teoria dos Esquemas (TE) e pela Hipótese dos Blocos Construtivos (HBC). É fundamentado na busca por boas soluções mediante a ação de operadores genéticos que, se configurados indevidamente, podem inviabilizar a otimização devido ao funcionamento inadequado da TE e da HBC. As dificuldades em projetar designs de alta aptidão e as insuficientes provas teóricas sobre a TE e a HBC retratam o dilema fundamental do AG. Portanto, este artigo tem como objetivo prover uma melhor compreensão dos efeitos que a ação dos operadores genéticos exerce sobre a TE e a HBC. A partir de uma revisão tradicional da literatura, que explora o arcabouço teórico da TE e da HBC, apresentamos importantes reflexões sobre os principais gaps, trade-offs e perspectivas futuras sobre o AG.

Palavras-chave:
algoritmo genético; operadores genéticos; teoria dos esquemas; hipótese dos blocos construtivos

ABSTRACT

The Genetic Algorithm (GA) is characterized by being a meta-heuristic mimicked in the process of natural evolution genetics based on Schema Theory (TE) and the Building Block Hypothesis (HBC). It is based on the search for good solutions through the action of genetic operators that, if improperly configured, can make the optimization unfeasible due to the improper functioning of the TE and HBC. Difficulties in designing high aptitude designs and insufficient theoretical evidence on TE and HBC portray the fundamental dilemma of AG. Therefore, this article aims to provide a better understanding of the effects that the action of genetic operators has on TE and HBC. From a traditional literature review, which explores the theoretical framework of TE and HBC, we present important reflections on the main gaps, trade-offs and future perspectives on GA.

Keywords:
genetic algorithm; genetic operators; schema theory; constructive blocks hypothesis

1 INTRODUÇÃO

A efetividade do AG é explicada matematicamente por meio da Teoria dos Esquemas (TE) e da Hipótese dos Blocos Construtivos (HBC). Ambas utilizam padrões genéticos denominados de esquemas para guiar a busca por melhores soluções para o AG4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).. Estes padrões representam soluções codificadas em cadeias de genes que armazenam as propriedades do problema a ser resolvido. As soluções, que são nomeadas de cromossomos (ou indivíduos), são formadas por um conjunto de bits representado por uma string. A simulação do processo de evolução se dá por meio da ação de operadores genéticos, os quais realizam variações nos bits para modificar as características dos indivíduos a fim de obter um conjunto de melhores soluções a cada geração do AG2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. Apesar de coerente, a fundamentação dada pela TE e HBC apresenta limitações relevantes que resultam em críticas e discussões sobre o AG (consulte6868 M.D. Vose. Modeling simple genetic algorithms. In “Foundations of Genetic Algorithms 2”. Morgan Kaufmann, San Mateo, CA (1993), p. 63-74. e6565 T. Toffoli. What you always wanted to know about genetic algorithms but were afraid to hear. In L. Booker (editor), “Perspectives on Adaptation in natural and artificial systems - Essays in honor of John Holland”. Oxford University Press (2004).).

A principal crítica faz referência à ausência de conhecimento intrínseco sobre o exato comportamento evolutivo do AG. Isso resulta na incapacidade dos pesquisadores em prever, ao longo das gerações, o processo descrito na HBC. Toda esta conjuntura é muitas vezes atribuída à falta de um arcabouço teórico capaz de demonstrar, por meio de provas teóricas, a real eficácia prática do AG4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).), (3838 J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.. A análise da literatura demostra que a maioria das abordagens negligenciam uma série de questões práticas e não demonstram o quão bom os resultados obtidos estão relacionados às configurações do AG. Fato é que tais abordagens raramente detalham a influência que os operadores genéticos exercem no surgimento de esquemas indesejados, muitos dos quais contradizem a HBC. Esta é uma discussão imprescindível tanto para a academia quanto para os profissionais que utilizam o AG.

Evidentemente, uma configuração inadequada dos operadores genéticos pode levar à convergência prematura ou a um esforço computacional elevado que inviabilizará a aplicação do AG (ver mais em3434 T.Y. Lim. Structured population genetic algorithms: a literature survey. Artificial Intelligence Review, 41(3) (2014), 385-399.). Portanto, este artigo tem como objetivo prover uma melhor compreensão dos efeitos que a ação dos operadores genéticos exerce sobre a TE e a HBC. Para que tal compreensão seja alcançada, três hipóteses foram construídas, como seguem: i) Hipótese 1: A influência que os operadores genéticos exercem sobre a TE e a HBC tem o mesmo objetivo no processo de otimização; ii) Hipótese 2: os operadores genéticos exercem uma influência direta no desempenho do AG e, por isso, são facilmente configurados de maneira a proporcionar o melhor design evolutivo iii) Hipótese 3: A TE e a HBC são suficientes para explicar o funcionamento do AG em sucessivas gerações durante toda a sua execução.

2 MÉTODO DE PESQUISA

Este artigo apresenta uma pesquisa qualitativa, de caráter exploratória-descritiva, que se utilizou de procedimentos técnicos baseados em uma análise bibliográfica (consulte1313 N. Donthu, S. Kumar, D. Mukherjee, N. Pandey & W.M. Lim. How to conduct a bibliometric analysis: An overview and guidelines. Journal of Business Research, 133(2021), 285-296. doi: https://doi.org/10.1016/j.jbusres.2021.04.070.
https://doi.org/10.1016/j.jbusres.2021.0...
), (2323 K. Haegeman, E. Marinelli, F. Scapolo, A. Ricci & A. Sokolov. Quantitative and qualitative approaches in Future-oriented Technology Analysis (FTA): From combination to integration? Technological Forecasting and Social Change, 80(3) (2013), 386-397.), (3636 M.K. Linnenluecke, M. Marrone & A.K. Singh. Conducting systematic literature reviews and bibliometric analyses. Australian Journal of Management, 45(2) (2020), 175-194. doi: 10.1177/0312896219877678.
https://doi.org/10.1177/0312896219877678...
), (5959 Z. Shahsavar & H. Kourepaz. Postgraduate students’ difficulties in writing their theses literature review. Cogent Education, 7(1) (2020), 1784620. doi: 10.1080/2331186X.2020.1784620.
https://doi.org/10.1080/2331186X.2020.17...
). A pesquisa bibliográfica foi realizada por meio de uma revisão tradicional da literatura, seguindo as seguintes etapas: i) construção da base conceitual geral sobre a TE e a HBC; ii) construção da base conceitual específica, onde foram consideradas pesquisas mais recentes e direcionadas ao tema de interesse deste artigo, sendo realizada nas bases de dados Scopus e Web of Science com as palavras-chave algoritmo genético, operadores genéticos, teoria dos esquemas e hipótese dos blocos construtivos; iii) discussão em torno das pesquisas selecionadas e resposta às hipóteses levantadas. É importante ressaltar que a seleção dos artigos também prezou pela qualidade das pesquisas, as quais, com exceção de algumas obras, atendeu os seguintes critérios: i) publicados em veículos de divulgação científica com Journal Citation Report maior do que um; ii) com mais de vinte citações e; iii) publicado a menos de vinte anos.

Destaca-se que, apesar dos critérios de seleção empregados às bases Scopus e Web of Science, a revisão de literatura realizada não é caracterizada como sistemática. As pesquisas selecionadas não são resultado de um procedimento sistemático de busca, seleção, análise e discussão, ou mesmo de uma análise bibliométrica. Todo o estudo foi fundamentado nos elementos básicos e na codificação binária utilizada por2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).. Focamos nossa atenção em pesquisas explicativas que permitiram uma melhor compreensão da estrutura genética evolutiva e do poder de busca do AG. Entre estas pesquisas, estão também aquelas que trouxeram uma reflexão sobre as direções futuras para a melhoria de desempenho do AG.

3 ALGORITMO GENÉTICO

O AG foi proposto por2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975). no livro Adaptation in Natural and Artificial Systems e tornou-se um dos mais importantes métodos de otimização quando popularizado por2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989). após editar Genetic Algorithms in Search, Optimization and Machine Learning. É uma meta-heurística de otimização global mimetizada na evolução natural e biológica apresentada por Darwin, e que pertence a uma subárea da computação evolucionária denominada de algoritmos evolucionários (para uma visão geral, consulte44 T. Bäck, D.B. Fogel & Z. Michalewicz. “Handbook of evolutionary computation”. Oxford University Press (1997).), (7575 X.S. Yang. Biology-derived algorithms in engineering optimization. In “Handbook of Bioinspired Algorithms and Applications” (2005), p. 585-595.).

Logo, o AG consiste em um método genérico adaptativo de busca que imita o processo genético e Darwiniano de evolução natural, por meio da seleção, reprodução e sobrevivência dos indivíduos mais aptos, com uma troca ordenada, ainda que aleatória, de informações entre eles2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. As strings representam os indivíduos, que são formados por genes que quantificam as características das soluções do problema a ser resolvido55 T. Bäck & H.P. Schwefel. An overview of evolutionary algorithms for parameter optimization. Evolutionary computation, 1(1) (1993), 1-23..

A essência do funcionamento do AG é baseada na técnica de geração e teste de indivíduos, mediante a ação de um conjunto de elementos interdependentes que se interagem, cada qual com suas funções específicas, de forma sequencial durante toda execução do algoritmo2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671.. Estes elementos, apresentados na Figura 1, utilizam terminologias da biologia e foram adaptados por2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975). para traduzir os problema em linguagem computacional e possibilitar a implementação e execução do AG.

Figura 1
Principais elementos do algoritmo genético.

Há uma vasta gama de diferentes métodos para aplicar cada elemento do AG cuja operacionalização é regida por um conjunto de parâmetros que têm a função de controlar e guiar o esquema de evolução4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.. As iterações são sequenciais e, ao influenciar a diversidade e a velocidade de convergência, têm efeitos significativos sobre o desempenho do AG4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.), (6161 A. Shukla, R. Tiwari & R. Kala. Towards hybrid and adaptive computing studies in computational intelligence. In “Computational intelligence”. Springer, Berlin (2010).), (7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
.

Assim, a ideia central do AG é melhorar as soluções realizando mudanças evolutivas nos indivíduos pela ação dos operadores genéticos de seleção, cruzamento e mutação2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138.. Estes, conforme2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138. e4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996)., são geralmente aplicados de acordo com parâmetros predefinidos pelo usuário, sendo os principais o percentual de seleção p s e as probabilidades de cruzamento p c e de mutação p m . A Figura 2 traz o fluxograma do funcionamento do AG, e o Algoritmo 1 mostra o pseudocódigo do AG.

Figura 2
Fluxograma do funcionamento do Algoritmo Genético.

Algorithm 1
Pseudo-código do algoritmo genético

Note que Algoritmo 1 demonstra que as informações do problema são a priori codificadas nos indivíduos33 A. Asteroth & A. Hagg. How to successfully apply genetic algorithms in practice: Representation and parametrization. In “2015 International Symposium on Innovations in Intelligent SysTems and Applications (INISTA)” (2015), p. 1-6. doi: 10.1109/INISTA.2015.7276778.
https://doi.org/10.1109/INISTA.2015.7276...
), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. A partir de então, é gerada uma população inicial de N pop indivíduos candidatos à solução do problema7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.. A população é representada por uma matriz com duas dimensões dada por Npop×Nbits, onde N pop é a quantidade de cromossomos (indivíduos) presentes na população e N bits é o número de bits na string dos indivíduos2525 R.L. Haupt & S.E. Haupt. “Practical genetic algorithms”. John Wiley and Sons, Inc, New York, 2 ed. (2004).. Em seguida, cada indivíduo recebe uma avaliação, calculada pela função de aptidão, que quantifica a qualidade de sua solução frente aos outros indivíduos da N pop2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989)..

Logo, sendo g a geração atual do AG, a seleção elege os indivíduos mais aptos da N pop , respeitando o percentual de seleção pré-determinado, para tornarem-se os pais da nova geração (g+1) 1919 M. Gen & R. Cheng. “Genetic Algorithms”. John Wiley and Sons, Inc., New York, NY, USA, 1st ed. (1999).. Os indivíduos da nova geração são resultado da operação de cruzamento realizada nos pais. Estes mesmos indivíduos podem ser submetidos à operação de mutação3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. A reprodução é equivalente à sexuada e a mutação corrobora para que haja diversidade genética e evite convergências prematuras à soluções ótimas locais1919 M. Gen & R. Cheng. “Genetic Algorithms”. John Wiley and Sons, Inc., New York, NY, USA, 1st ed. (1999)..

A geração g+1 é, então, formada pelos filhos dos indivíduos selecionados na geração g (após o processo de mutação) e pela inserção (semelhante a geração da população inicial) de indivíduos que irão completar a nova N pop . A nova população é também avaliada pela função de aptidão4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. Esta se encarregara da evolução, já que os indivíduos mais aptos terão maiores chances de sobreviver e repassar o seu material genético às próximas gerações7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85..

Após a condição de término ser atendida, o melhor indivíduo é escolhido como a solução do problema. Vale ressaltar que, como o AG é uma meta-heurística, a solução encontrada não é garantidamente a ótima, mas uma boa solução para o problema4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996)..

3.1 Elementos Básicos

A representação dos indivíduos é caracterizada por uma codificação, que pode utilizar números reais, símbolos, letras, entre outros caracteres que se adequem a aplicação do AG. Assim sendo, cada caractere, que é denominado de alelo ou bit, e detém informação da solução do problema7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85..

A representação binária é a mais simples e usada. Neste caso, os bits assumem valores 0 ou 1. Logo, um indivíduo i é definido pela strings=(b1b2...bn-1bn), onde b i assume valores do conjunto inteiro B{0, 1}, para i=1,2, ...,n, sendo n o número de bits necessários à representação da solução3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. A Figura 3 esboça a representação de um indivíduo com seis genes, identificados pelas variáveis x 1, x 2, ..., x 6.

Figura 3
Representação binária de um indivíduo.

A Figura 3 demonstra que os primeiros seis bits do cromossomo (indivíduo) compõem o gene x 1, seguidos dos outros seis bits que representam o gene x 2, assim por diante5252 A.R.F. Pinto. “Algoritmo genético aplicado ao sequenciamento de picking e faturamento”. Master’s thesis, (Mestrado em Engenharia de Produção) - Faculdade de Engenharia de Bauru, Universidade Estadual Paulista ”Júlio de Mesquita Filho”, Bauru (2012). 80f.. Normalmente, o indivíduo tem tamanho único e o número de bits em cada gene é proporcionalmente distribuído7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.. Porém, esta regra pode ser violada, por exemplo, quando um valor inteiro exigir uma representação binária variável3030 G.J. Koehler, S. Bhattacharyya & M.D. Vose. General cardinality genetic algorithms. Evolutionary Computation, 5(4) (1997), 439-459.. Para representar números reais como binário (genótipo) e decodificá-los para reais (fenótipo) consulte4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996)..

As abordagens em torno dos mecanismos e formas de representação dos indivíduos são as mais variadas para diferentes aplicações do AG. A técnica mais simples e usual é a geração randômica dos indivíduos da população1919 M. Gen & R. Cheng. “Genetic Algorithms”. John Wiley and Sons, Inc., New York, NY, USA, 1st ed. (1999).), (7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
. A população é representada por uma matriz com duas dimensões dada por Npop×Nbits, onde N pop é a quantidade de indivíduos presentes na população e N bits é o número de bits na string dos indivíduos2525 R.L. Haupt & S.E. Haupt. “Practical genetic algorithms”. John Wiley and Sons, Inc, New York, 2 ed. (2004).), (5151 J.L. Payne, M. Giacobini & J.H. Moore. Complex and dynamic population structures: synthesis, open questions, and future directions. Soft Computing, 17(7) (2013), 1109-1120.. A população é normalmente caracterizada como panmixia, ou seja, o cruzamento entre os indivíduos é aleatório entre a N pop5151 J.L. Payne, M. Giacobini & J.H. Moore. Complex and dynamic population structures: synthesis, open questions, and future directions. Soft Computing, 17(7) (2013), 1109-1120.. A capacidade de armazenamento do AG é exponencialmente proporcional e extremamente sensível à N pop , cujo total de avaliações é igual a Npop×Nbits×Nger, onde N ger o número de gerações do AG1919 M. Gen & R. Cheng. “Genetic Algorithms”. John Wiley and Sons, Inc., New York, NY, USA, 1st ed. (1999).), (7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
.

A função de aptidão retorna um valor que expressa a qualidade de um indivíduo, em relação aos outros indivíduos da população, como solução do problema em questão2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).. É uma regra de sobrevivência que cria a superfície em que a evolução ocorre e, portanto, é o único elo não genérico entre o problema e o AG55 T. Bäck & H.P. Schwefel. An overview of evolutionary algorithms for parameter optimization. Evolutionary computation, 1(1) (1993), 1-23.), (4949 M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999).. Para exemplificar, considere que a função f(i)=i2 mesura a aptidão do indivíduo i. Se o valor de i 1 é 9 e de i 2 é 4, então, a aptidão de i 1 é 81 e, a de i 2 é 16. Logo, i 1 é mais apto do que i 24949 M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999)..

Por conseguinte, o operador de seleção utiliza o valor da função de aptidão para selecionar os indivíduos mais aptos da população para o cruzamento4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).. A roleta é o método de seleção mais usado, no qual esta é dividida em n faixas que ocupam um espaço proporcional, dado pela probabilidade η de seleção, mediante o valor da função de aptidão de cada indivíduo i para o cruzamento3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. A roleta é girada e parará em um ponto aleatório selecionando um indivíduo i. Este procedimento é repetido até que se tenha o número pré-determinado de pares para o cruzamento7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85..

A Figura 4 ilustra o cálculo e a roleta para Npop=4 88 T. Blickle. “Theory of evolutionary algorithms and application to system synthesis”. Ph.D. thesis, (Doctor of Technical Sciences), Swiss Federal Institute of Technology, ETH, Zurich, Switzerland (1996). 272f.. Logo, se f(i) é a função de aptidão do problema, e i é o indivíduo, então ηi é dada por

η i = f ( i ) Σ i = 1 N p o p f ( i ) (3.1)

Figura 4
Exemplificação do método da roleta para Npop=4.

Na Figura 4, o indivíduo si=(11000) têm ηi=49, 2%, enquanto o indivíduo (01000) apresenta ηi=5, 5%. Se os melhores predominarem na g+1, então, a seleção dirige a evolução simulando a pressão exercida pelo ambiente conforme a teoria Darwiniana2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).. Este mecanismo não impede, contudo, que indivíduos menos aptos também possam gerar descendentes. Isto porque, até os piores indivíduos podem conter características que, em conjunto com outros, gerem bons filhos2020 D.E. Goldberg. “A note on the disruption due to crossover in a binary-coded genetic algorithm”. University of Alabama (1987)..

Em seguida, os indivíduos selecionados são submetidos à operações genéticas por meio da ação do operador de cruzamento2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).. Este operador realiza a troca de segmentos entre dois pais por meio de permutação aleatória dos genes para gerar dois novos filhos na g+1 7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.. Após o cruzamento, o indivíduo da g+1 geralmente permanece do mesmo tamanho do indivíduo da geração g, mas com diferentes características genéticas de ambos os genitores7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.. As formas mais comuns para realizar a operação de cruzamento são3838 J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.: i) um-ponto: corta a string dos dois pais em uma posição; ii) dois-pontos: corta a string dos dois pais em duas posições3838 J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.. A Figura 5 (a) ilustra o diagrama do cruzamento de um-ponto, enquanto o cruzamento de dois-pontos é demostrado pela Figura 5.

Figura 5
Exemplo das principais técnicas de cruzamento, onde (a) cruzamento por um-ponto e (b) cruzamento por dois-ponto.

Posteriormente ao cruzamento, alguns indivíduos da geração g+1 podem sofrer a ação do operador de mutação2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138.. A mutação, conforme a probabilidade p m , cria diversidade extra na população acrescentando novos indivíduos com materiais genéticos diferentes, de forma a evitar convergências prematuras77 L.T. Biegler & I.E. Grossmann. Retrospective on optimization. Computers and Chemical Engineering, 28(8) (2004), 1169-1192.. As principais técnicas de mutação são: i) troca aleatória: altera aleatoriamente o valor de um bit do indivíduo selecionado; ii) inversão: permuta a posição de n pares de uma string ou valores de dois genes, aleatoriamente escolhidos, do indivíduo4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).. A Figura 6 (a) traz um exemplo de mutação por troca aleatória enquanto que a mutação por inversão é apresentada pela Figura 6 (b).

Figura 6
Exemplo das principais técnicas de mutação, onde (a) mutação por troca aleatória e (b) mutação por inversão.

Por fim, os critérios de parada, predefinidos nos parâmetros, são os elementos que determinam o momento em que o AG deve parar a execução e adotar o indivíduo com maior aptidão como a solução problema55 T. Bäck & H.P. Schwefel. An overview of evolutionary algorithms for parameter optimization. Evolutionary computation, 1(1) (1993), 1-23.. A chegada ao valor ótimo, quando conhecido, é adotado como o critério de parada, caso contrário, utiliza-se, de forma individual ou em conjunto; o número de iterações, o tempo de execução e a perda da diversidade7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85..

4 TEORIA DOS ESQUEMAS

A TE é uma forma de explicar, por meio de um modelo matemático, o como e o porquê que o AG é capaz de alcançar boas soluções, explorando subpartições do espaço de busca7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671.. A TE permite estimar o número de instâncias de um esquema em uma determinada geração com base no número de suas instâncias na geração anterior2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989)..

Assim sendo, um esquema (schema) é a representação de como um conjunto de indivíduos que apresentam similaridades em certas posições, que pode, de forma simultânea, realizar uma varredura no espaço de busca em determinado ambiente de soluções2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).. É caracterizado como um padrão genético que fixa os valores dos bits dentro de um indivíduo3838 J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.. Considere, portanto, que um esquema é uma strings=(s1s2s3...sn), de comprimento N bits , em que os valores dos bits pertencem ao conjunto θ, mais o símbolo #3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4545 M. Mitchell, S. Forrest & J.H. Holland. The royal road for genetic algorithms: Fitness landscapes and GA performance. In “Proceedings of the first european conference on artificial life”. MIT Press, Cambridge, MA (1992), p. 245-254., ou seja, pertencem ao conjunto Θ=θ{#}. Isso significa que a posição ocupada pelo caractere # pode receber qualquer valor pertencente ao conjunto θ2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).. Note que o plural de s é representado por Σ e caracteriza partes das soluções que se juntam para formar cromossomos mais aptos2424 J.W. Hallam, O. Akman & F. Akman. Genetic algorithms with shrinking population size. Computational Statistics, 25(4) (2010), 691-705.), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (3838 J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).). Assim, os esquemas são um gabarito (template) que representa um subconjunto do conjunto de todos as soluções possíveis, descrevendo quais genomas são idênticos no espaço de busca3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008)..

Matematicamente, emprega-se a letra H para representar o padrão que descreve todos os indivíduos no espaço de busca; K para representar o número de símbolos (cardinalidade do conjunto Θ) e; L para fazer referência ao número de bits (N bits ) presente na string. Além disso, tem-se que o número de graus de liberdade de um esquema é igual a ν=L×K e a quantidade de indivíduos resultantes dos graus de liberdade de um esquema é igual a (K-1)×ν 11 E. Alba & J.M. Troya. Improving flexibility and efficiency by adding parallelism to genetic algorithms. Statistics and Computing, 12(2) (2002), 91-114.), (55 T. Bäck & H.P. Schwefel. An overview of evolutionary algorithms for parameter optimization. Evolutionary computation, 1(1) (1993), 1-23.), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).), (4949 M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999).. Observe que a retirada de 1 elemento (K-1) provém do fato de que o símbolo # não entrará na composição dos indivíduos2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (4949 M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999).. Um esquema s apresenta ainda duas importantes propriedades,2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (2929 D.S. Knysh & V.M. Kureichik. Parallel genetic algorithms: a survey and problem state of the art. Journal of Computer and Systems Sciences International, 49(4) (2010), 579-589.), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).:

  • O(H): denota a ordem de H ou a quantidade de posições (genes) que assumem valores 0 e 1, ou seja, a quantidade de genes que assumem valores diferentes de #;

  • δ(O(H)): denota o comprimento, ou seja, representa a distância entre a primeira e a última posição fixa em termos de números de corte existentes nos esquemas após o cruzamento, ou o número de pontos de corte, diferente de #, dentro do esquema.

Para exemplificar, considere um esquema s composto por dois bits(L=2), os quais assumem valores binários, ou seja, θ={0,1} e Θ={0,1,#} (alfabeto), cuja cardinalidade é igual a K=3 3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Desse modo, o espaço de busca é igual a K L , o que leva a (2+1)2=9 esquemas, o número de graus de liberdade é igual ν=6, sendo ={00,01,10,11,1#,0#,#1,##,#0} 1212 P.A. Diaz-Gomez & D.F. Hougen. A Trade-Off of the Schema Theorem. In E.A. Orlando (editor), “Proceedings of the Conference on Artificial Intelligence and Pattern Recognition”. Orlando, FL (2007), p. 326-333.), (2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4949 M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999)..

Conclui-se que o número de esquemas presentes em um indivíduo é dependente dos N bits da string e do número de opções contidas no Θ3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Todavia, um indivíduo pertence a uma string s se os valores de todas as suas L posições pertencerem ao conjunto θ e forem iguais aos valores do esquema s, exceto nas posições onde o símbolo do esquema é o #. Logo, um esquema possui 2L-O(H) indivíduos2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (2929 D.S. Knysh & V.M. Kureichik. Parallel genetic algorithms: a survey and problem state of the art. Journal of Computer and Systems Sciences International, 49(4) (2010), 579-589.), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).:

A Tabela 1 apresenta algumas propriedades de três esquemas e o método de cálculo do esquema H=(1#0#1). Tal método pode ser chamado de instância do esquema H, já que representa um modelo onde todos os indivíduos se iniciam e terminam com 14949 M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999)..

Tabela 1
Exemplo de propriedades e métodos de cálculo de três esquemas.

Veja que o esquema H=(1#0#1) terá 4(25-3) possíveis representantes (indivíduos) que podem ou não estarem presentes em determinada geração. Este mesmo esquema apresenta O(H)=3, porque existem três elementos diferentes do caractere # no H e δ(O(H))=4, pois contém quatro pontos de corte entre a primeira e a última posição fixa. Possui ν=2 graus de liberdade, que representa o número de ocorrências do caractere #. Assim sendo, o (K-1)L (espaço de busca ou pontos de possíveis de soluções) para cada um dos 4 indivíduos, que representam o esquema, é de 32 (25) pontos de possíveis de soluções. Logo, H é capaz de gerar 243((2+1)5) esquemas, dado que se têm três elementos (0, 1, #) para 5 diferentes posições no referido H.

Note que cada string da população representa diferentes esquemas contidos uns nos outros, e se cada esquema gera certa quantidade de indivíduos, então, estes serão superiores aos indivíduos da população3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Logo, se a população é suficientemente grande e inicialmente escolhida ao acaso, diversos esquemas podem ser manipulados em paralelo, o que permite ao AG explorar similaridades em codificações arbitrárias4646 M. Mitchell, J.H. Holland & S. Forrest. When will a genetic algorithm outperform hill climbing? In M. Kaufmann (editor), “Advances in Neural Information Processing Systems”. San Mateo, CA (1994), p. 51-58.. Assim, o processo de busca por melhores soluções gera outras possíveis soluções à medida que a evolução acontece44 T. Bäck, D.B. Fogel & Z. Michalewicz. “Handbook of evolutionary computation”. Oxford University Press (1997).. Portanto, o paralelismo implícito no AG não está apenas no fato de que a população que contém vários indivíduos é manipulada simultaneamente4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).), (7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85..

Existe também um paralelismo embutido no fato de cada elemento da população pode se misturar simultaneamente a dezenas, ou centenas, de esquemas com características negativas ou positivas, e que podem levar a uma boa ou a uma má avaliação2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. Então, o AG calcula explicitamente a avaliação de n indivíduos da população corrente, mas implicitamente calcula a avaliação de um número maior de esquemas, já que um elemento pode ao mesmo tempo pertencer a uma infinidade de esquemas, que são instanciados por cada indivíduo da população2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119..

Em uma população de n indivíduos, onde cada indivíduo representa 2L esquemas, há entre 2L e n×2L esquemas, dependendo da diversidade da população 1212 P.A. Diaz-Gomez & D.F. Hougen. A Trade-Off of the Schema Theorem. In E.A. Orlando (editor), “Proceedings of the Conference on Artificial Intelligence and Pattern Recognition”. Orlando, FL (2007), p. 326-333.), (7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.. O número de esquemas processados a cada geração é, então, proporcional a n 3, enquanto avaliam n indivíduos, logo, há mais informações nos esquemas para guiar a busca do que simplesmente nos indivíduos3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671..

Isso quer dizer que o importante é o esquema e não o indivíduo, se este morrer o esquema que o torna bom tende a se proliferar e continuar na população2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Estes esquemas têm a capacidade de identificar, explorar e acumular informações sobre espaços de pesquisas complexos e inicialmente desconhecidos, e que torna possível ao AG convergir para soluções de alta qualidade3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Logo, o AG tem como principal recurso a busca pelo melhor equilíbrio (trade-off) entre dois objetivos complexos e conflitantes2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).:

  • Exploration (exploração): explorar o espaço de busca no sentido de investigar novas regiões;

  • Exploitation (intensificação): obter o máximo proveito do conhecimento adquirido e das melhores soluções em pontos mais promissores do espaço de busca já visitado.

5 IMPLICAÇÕES DOS OPERADORES GENÉTICOS

Esta seção demonstra o que acontece, a cada geração, com os indivíduos que possuem o padrão H. Conforme2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989). e4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996)., a expressão matemática que agrupa os operadores genéticos e indica o limite inferior para o nível de evolução do AG, para a g+1 em uma geração de indivíduos que possuem avaliações positivas, é dada por

m ( H , g + 1 ) m ( H , g ) × f ( H ) f ¯ × [ 1 - p c δ ( H ) L - 1 ] × [ 1 - p m O ( H ) ] (5.1)

onde, f(H) representa o valor médio da adaptação do H na geração g; m(H, g) é o número de representações de um H na g; L é o número de bits em uma string; f é o valor médio da avaliação da população na geração g; p c e p m representam respectivamente a probabilidade de ocorrência do cruzamento e da mutação; O(H) é a ordem de H e δ(H) é o comprimento de H.

A interpretação da Equação 5.1 levou2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975). a descrever que “esquemas curtos e de baixa ordem tendem a se proliferar ou desaparecer nas gerações seguintes de acordo com a aptidão média” (tradução própria). Nesta concepção, o AG funciona bem quando os operadores genéticos exercem efeito positivo sobre os esquemas curtos e de maior aptidão. Isso ocorre quando os operadores genéticos são capazes de agrupar bits que atuam bem em conjunto, de forma que os esquemas de ordem superior se prosperem ao longo das gerações.

Estes esquemas curtos de baixa ordem formalizam a existência de Blocos Construtivos (BC) que, no decorrer das gerações, são recombinados com outros BC para formar melhores esquemas2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).. Logo,2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989). definiu a Hipótese dos Blocos Construtivos (HBC) afirmando que “um AG busca desempenho próximo do ótimo por meio da justaposição de esquemas curtos de baixa ordem e alto desempenho” (tradução própria).

A HBC prevê que um dos requisitos básicos para a eficiência do AG é a baixa epistasia, fenômeno em que vários genes se unem para influenciar uma determinada característica4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.. Assim, os BC são considerados soluções parciais e os indivíduos que contém muitos BC representarão uma solução perto da ideal4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. As seções subsequentes trazem as análises do efeito que a ação dos operadores genéticos exerce sobre os esquemas apresentados na Equação 5.1.

5.1 O Efeito do Operador de Seleção

A análise do efeito do operador de seleção é iniciada pela análise da primeira parte da Equação 5.2, evidenciada em

m ( H , g + 1 ) m ( H , g ) × f ( H ) f ¯ (5.2)

onde se calcula o número provável de representantes de um H na g+1. Note que o desempenho médio de H, em relação à aptidão, é maior que o desempenho médio da população, o que reflete que a seleção tende a favorecer os esquemas cujas avaliações estão acima da média da população4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996)..

Logo, se a aptidão relativa é maior do que 1, então m(H,g+1) cresce durante a evolução, se proliferando mais frequentemente nas próximas gerações, enquanto que os esquemas com aptidão abaixo da média tendem a desaparecer. A Tabela 2 demonstra a avaliação de 4 indivíduos com 5 bits, cuja média de avaliação do s=(1####) é f(s)=(576+361)/2=468,5. Logo, o número esperado de indivíduos é 468,5×2/292,53,2. Já o s=(0##0#) está presente em dois indivíduos com avaliação média de (169+64)/2=116,5, devendo estar presente em 116,5×2/292,50,8 indivíduos3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008)..

Tabela 2
Avaliação de um esquema de 4 indivíduos.

A Tabela 2 mostra que a avaliação faz com que a população evolua de modo que os indivíduos melhor adaptados tenham maiores chances de sobreviver e repassar o seu material genético às próximas gerações2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).. Dessa forma, há um equilíbrio do trade-off entre a exploração e intensificação da busca, embora isto possa afetar o desempenho do AG caso haja um favorecimento de uma rápida e prematura convergência a um mínimo ou máximo local4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996)..

Tais ocorrências acontecerão caso certa porcentagem dos indivíduos apresente as seguintes características i) super-indivíduos: quando a avaliação de alguns indivíduos é muito superior ao da média da população, dominando as gerações posteriores com material genético pela maior chance de serem selecionados1616 D.B. Fogel. Asymptotic convergence properties of genetic algorithms and evolutionary programming: analysis and experiments. Cybernetics and Systems: An International Journal, 25(3) (1994), 389-407. e; ii) competição próxima: quando a avaliação de todos os indivíduos da população diferenciarem-se pouco percentualmente, tornando a seleção praticamente aleatória e, consequentemente, os melhores indivíduos podem não ser selecionados2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989)..

Apesar de não haver nenhuma prova conclusiva de que a dominação genética é (ou não) uma condição temporária, a seleção combinada aos operadores de recombinação pode favorecer a criação ou destruição dos esquemas2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.. Em linhas gerais, a avaliação simula a pressão do ambiente, caracterizada pela intensidade da pressão seletiva I que exerce sobre a população, como segue88 T. Blickle. “Theory of evolutionary algorithms and application to system synthesis”. Ph.D. thesis, (Doctor of Technical Sciences), Swiss Federal Institute of Technology, ETH, Zurich, Switzerland (1996). 272f.

I = σ M (5.3)

onde, σ é o desvio padrão das aptidões de determinada população, cuja média das aptidões e dada por M.

Assim, I é um coeficiente de variação que indica o quanto o σ de determinado indivíduo influência na probabilidade de este mesmo indivíduo ser selecionado. Se a aptidão média dos indivíduos tende a ser uniforme, então ocorrerá uma diminuição da variância das aptidões que reduz I de forma a estagnar a busca7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671..

Logo, a I pode impactar de duas formas o AG: i) Se muito baixa - o AG tenderá a competição próxima e; ii) Se muito alta - o AG tenderá aos super-indivíduos. A dominação genética pode ser evitada limitando I por meio do remapeamento de aptidão, obtido de forma implícita ou explícita, para restringir a possibilidade de determinado indivíduo se reproduzir4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119..

A I influi consideravelmente no advento e proliferação de bons esquemas, pois é ela que conduz a hereditariedade e torna possível a convergência em situações de mínima diversidade genética11 E. Alba & J.M. Troya. Improving flexibility and efficiency by adding parallelism to genetic algorithms. Statistics and Computing, 12(2) (2002), 91-114.), (3434 T.Y. Lim. Structured population genetic algorithms: a literature survey. Artificial Intelligence Review, 41(3) (2014), 385-399.. Isso significa que a evolução em tempo satisfatório requer o controle da I em níveis contínuos com um mínimo de dispersão durante toda a execução do AG4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.), (6565 T. Toffoli. What you always wanted to know about genetic algorithms but were afraid to hear. In L. Booker (editor), “Perspectives on Adaptation in natural and artificial systems - Essays in honor of John Holland”. Oxford University Press (2004)..

5.2 O Efeito do Operador de Cruzamento

É evidente que o cruzamento, atrelado à seleção, faz com que o AG não seja comparado a uma busca aleatória3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Este operador é influenciado pelo δ(H), de modo que quanto maior for δ(H) maior os pontos de corte em H. Logo, maior será a probabilidade de o cruzamento romper as boas características dos indivíduos impedindo a transmissão de bons atributos ou retardando a descoberta de melhores esquemas2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).), (4444 M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).), (5454 E.K. Prebys. The genetic algorithm in computer science. MIT Undergraduate Journal of Mathematics, 1(1999), 165-170.. A probabilidade do cruzamento destruir um H, denotada por p d (H), é dada por

p d ( H ) = δ ( H ) L - 1 (5.4)

A probabilidade (p s ) de um esquema sobreviver é, portanto, maior se este for pequeno, como, por exemplo, um esquema de O(H)=1 e δ(H)=0. Ele nunca será destruído, ao contrário do s=1######, cuja O(H)=1 e o δ(H)=6, que será extinto independentemente de onde for feito o corte em H3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671..

Logo, se pc=0, ou os indivíduos que estão reproduzindo contém bits idênticos depois de n-1, os filhos serão cópias exatas dos pais, e se a p c for baixa a melhoria genética será mais lenta2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).), (5454 E.K. Prebys. The genetic algorithm in computer science. MIT Undergraduate Journal of Mathematics, 1(1999), 165-170.. Assim, quanto maior a avaliação e menor o comprimento do esquema, mais cópias este esquema terá nas próximas gerações, conforme expresso por4646 M. Mitchell, J.H. Holland & S. Forrest. When will a genetic algorithm outperform hill climbing? In M. Kaufmann (editor), “Advances in Neural Information Processing Systems”. San Mateo, CA (1994), p. 51-58.

p s ( H ) = 1 - δ ( H ) L - 1 (5.5)

Definido a p c e considerando que um par de pais pode recuperar parte de um esquema destruído, por meio da I que favorece H, esta desigualdade é dada por4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).

p s ( H ) 1 - p c × δ ( H ) L - 1 (5.6)

Na sequência, a Tabela 3 demostra um exemplo de cruzamento com pontos de corte (denotados por |) iguais para todos os indivíduos, evidenciando que os esquemas pequenos permanecem íntegros.

Tabela 3
Aplicação do cruzamento em um esquema de 4 indivíduos.

É importante observar que os esquemas de pequeno comprimento serão transmitidos de forma integra, enquanto que os filhos descendentes dos esquemas de grande comprimento herdarão esquemas destruídos. Logo, se o conceito da HBC deriva do paralelismo implícito resultante do cruzamento, então, aumentos excessivos de pontos de corte causará extrema perturbação nos esquemas, destruindo os BC7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671..

Esta ideia é válida se H acima da média é satisfeita pela maioria dos indivíduos, pois a influência do cruzamento entre os indivíduos que satisfaçam H é a influência predominante em H6767 M.D. Vose. Generalizing the notion of schema in genetic algorithms. Artificial Intelligence, 50(3) (1991), 385-396.. Todavia, o cruzamento de um ponto torna, na maioria dos casos, a convergência lenta ao limitar à combinação de bons esquemas. Exemplo é o cruzamento de s1=(101####1) e s2=(####11##), o qual não resultaria em s3=(101#11#1) 4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119..

É evidente que o cruzamento de bons esquemas pode também os destruir, ou se combinados com esquemas de baixa ordem, pode resultar em H semi-estáveis devido ao evento carona. Na literatura, o evento carona ocorre quando bits de valores abaixo do ideal se fixam nos indivíduos fornecendo a liderança dos chamados esquemas enganosos3232 M. Li & J. Kou. The schema illusory and deceptive problems of genetic algorithms. Science in China Series: Information Sciences, 44(5) (2001), 342-350.), (7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.. Esquemas enganosos levam o AG na direção errada, fazendo com que ele convirja para pontos sub-ótimos durante certo espaço de tempo3232 M. Li & J. Kou. The schema illusory and deceptive problems of genetic algorithms. Science in China Series: Information Sciences, 44(5) (2001), 342-350..

É possível afirmar que a HBC retrata o cruzamento como a principal fonte de desempenho do AG, mas não há garantias de que o aumento de pontos de corte resultará em esquemas enganosos4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.. Para deduções dos principais teoremas que analisam muitas controversas sobre esquemas enganosos consulte3232 M. Li & J. Kou. The schema illusory and deceptive problems of genetic algorithms. Science in China Series: Information Sciences, 44(5) (2001), 342-350..

5.3 O Efeito do Operador de Mutação

A mutação é capaz de reparar um gene perdido, mas também pode destruir um bom gene caso ocorra em uma posição do esquema que possua um valor diferente do #1212 P.A. Diaz-Gomez & D.F. Hougen. A Trade-Off of the Schema Theorem. In E.A. Orlando (editor), “Proceedings of the Conference on Artificial Intelligence and Pattern Recognition”. Orlando, FL (2007), p. 326-333.), (7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671.. De fato, quanto maior a O(H), maior é o número de bits susceptíveis de serem sorteados para a mutação, assim, maiores são as chances deste esquema ser corrompido7373 D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85..

Após a mutação, a porcentagem de seleção p s de um esquema será ps=(1-pm)O(H). Logo, para pm1, tem-se ps1-pm×O(H), o que significa que indivíduos de baixa ordem terão maiores chances de não serem destruídos4040 Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).. Além disso, para algumas populações o AG não converge para a solução ideal se a pm=0 2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975)..

Via de regra, se a probabilidade de mutação (p m ) for baixa demais ter-se-á uma amostragem global insuficiente que ocasionará numa rápida perda da diversidade genética. No entanto, se muito alta, os filhos pouco se assemelharão aos pais e as propriedades que garantem boas soluções poderão ser destruídas2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138..

A mutação é, portanto, indispensável à busca em regiões ainda não exploradas, já que, é a única maneira dos indivíduos da atual população obterem materiais genéticos que não existiam ou eram encontrados em baixa porcentagem nas gerações anteriores2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138..

6 PESQUISAS E CAMINHOS PARA FUTUROS AVANÇOS

6.1 Principais Críticas e Avanços

Ao longo da década de 1990, a teoria do AG de Holland2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975). foi amplamente criticada por pesquisadores de várias áreas. As principais razões resumiam-se nas afirmações de que a TE é uma tautologia trivial de nenhuma utilidade ao AG. As críticas eram endereçadas às falhas matemáticas na TE, aos operadores de seleção, de cruzamento e de mutação, além do paralelismo implícito. Estas limitações sob diferentes pontos de vista foram abordadas por1717 D.B. Fogel & A. Ghozeil. Schema processing under proportional selection in the presence of random effects. IEEE Transactions on Evolutionary Computation, 1(4) (1997), 290-293.), (1818 D.B. Fogel & A. Ghozeil. The schema theorem and the misallocation of trials in the presence of stochastic effects. In V.W. Porto, N. Saravanan, D. Waagen & A.E. Eiben (editors), “Proceedings of the 7th Anual Conference on Evolutionary Programming”. Springer, Berlin (1998), p. 313-321.), (3333 G.E. Liepins & M.D. Vose. Representational issues in genetic optimization. Journal of Experimental and Theoretical Artificial Intelligence, 2(1990), 101-115.), (5656 N.J. Radcliffe. Equivalence class analysis of genetic algorithms. Complex Systems, 5(1991), 183-205.), (5757 N.J. Radcliffe. Forma analysis and random respectful recombination. In R.K. Belew & L.B. Booker (editors), “Proceedings of fourth International Conference on Genetic Algorithms”. Morgan Kaufmann, San Mateo, CA (1991), p. 222-229.), (6969 M.D. Vose. A closer look at mutation in genetic algorithms. Annals of Mathematics and Artificial Intelligence, 10(1994), 423-434. e refletiram sobre como a seleção proporcional era usada na presença de efeitos estocásticos.

Chung e Perez99 S.W. Chung & R.A. Perez. The schema theorem considered insuficient. In “Proceedings of the Sixth IEEE International Conference on Tools with Artificial Intelligence”. New Orleans (1994), p. 748-751., após terem feito uma análise da relação entre os esquemas crescentes e os BC, chegaram à conclusão de que a TE não fornece explicação para o comportamento do AG. No entanto, como a TE não foi totalmente explorada, tampouco completamente analisada de maneira apropriada, houve um ressurgimento do interesse de estudá-la, porém, com resultados que trouxeram poucas contribuições adicionais (ver mais em6262 C.R. Stephens & H. Waelbroeck. Effective degrees of freedom in genetic algorithms and the block hypothesis. In “ Proceedings of 7th International Conference on Genetic Algorithms”. Morgan Kaufmann, San Francisco, CA (1997), p. 34-40.), (6868 M.D. Vose. Modeling simple genetic algorithms. In “Foundations of Genetic Algorithms 2”. Morgan Kaufmann, San Mateo, CA (1993), p. 63-74.), (7070 M.D. Vose. Modeling simple genetic algorithms. Evolutionary Computation, 3(1995), 453-472.), (7171 M.D. Vose & A.H. Wright. Form invariance and implicit parallelism. Evolutionary Computation, 9(2001), 355-370.).

Apesar disso, a pesquisa de Stephens e Waelbroeck6363 C.R. Stephens & H. Waelbroeck. Schemata evolution and building blocks. Evolutionary Computation, 7(1999), 109-124. se destacou ao resultar em uma teoria que fornece uma formulação exata para as quantidades macroscópicas do número esperado de indivíduos de um esquema na geração g+1 do AG. As pesquisas de Whitley7272 D. Whitley. An executable model of a simple genetic algorithm. In L.D. Whitley (editor), “Foundations of Genetic Algorithms 2”. Morgan Kaufmann, San Mateo, CA (1993), p. 45-62. e Vose e Wright7171 M.D. Vose & A.H. Wright. Form invariance and implicit parallelism. Evolutionary Computation, 9(2001), 355-370. tiveram o mesmo destaque ao concluírem que é preciso considerar a capacidade de destruição das possíveis formas de realizar o cruzamento e a mutação para a formação de esquemas. Posteriormente, uma expressão generalizada que calcula diretamente o número de diferentes esquemas em uma população também foi desenvolvida por Pawar et al.5050 R. Pawar, J.S. Saini, M. Gopal & A.P. Mittal. “Towards generalized expression for schemata count”. Applied Soft Computing (2011). doi: 10.1016/j.asoc.2010.07.012.
https://doi.org/10.1016/j.asoc.2010.07.0...
.

É inegável que a maioria dos estudos têm afirmado que os operadores de cruzamento e a mutação geralmente causam a ruptura dos BC (ver em2222 D.E. Goldberg. “The design of innovation: Lessons from and for competent genetic algorithms”, volume 7. Springer Science and Business Media (2002).), (3131 H. Lee & T.L. Yu. Off-line building block identification: detecting building blocks directly from fitness without genetic algorithms. In “Proceedings of the 14th annual conference on Genetic and evolutionary computation” (2012), p. 641-648.), (5858 N.J. Radcliffe. Forma Analysis and Random Respectful Recombination. In “Proceedings of the 4th International Conference on Genetic Algorithms” (1991).). Entretanto, várias variantes destes operadores também foram propostas e aplicadas com sucesso para diferentes problemas1515 R. Faraji & H.R. Naji. “An efficient crossover architecture for hardware parallel implementation of genetic algorithm”, volume 128. Neurocomputing (2014). doi: 10.1016/j.neucom.2013.08.035.
https://doi.org/10.1016/j.neucom.2013.08...
), (4141 A. Mishra & A. Shukla. “Mathematical analysis of the cumulative effect of novel ternary crossover operator and mutation on probability of survival of a schema”. Theoretical Computer Science (2016). doi: 10.1016/j.tcs.2016.07.035.
https://doi.org/10.1016/j.tcs.2016.07.03...
), (5555 Z. Qiongbing & D. Lixin. “A new crossover mechanism for genetic algorithms with variable-length chromosomes for path optimization problems”. Expert Systems with Applications (2016). doi: 10.1016/j.eswa.2016.04.005.
https://doi.org/10.1016/j.eswa.2016.04.0...
), (6060 A. Shukla, H.M. Pandey & D. Mehrotra. Comparative review of selection techniques in genetic algorithm. In “2015 International Conference on Futuristic Trends on Computational Analysis and Knowledge Management (ABLAZE)” (2015), p. 515-519. doi: 10.1109/ABLAZE.2015.7154916.
https://doi.org/10.1109/ABLAZE.2015.7154...
), (6666 C.J. Uzor, M. Gongora, S. Coupland & B.N. Passow. Adaptivemutation compact genetic algorithm for dynamic environments. Soft Computing, (2016). doi: 10.1007/s00500-016-2195-x.
https://doi.org/10.1007/s00500-016-2195-...
. Mais recentemente, Du et al.1414 Y. Du, K. Aoki, M. Sakamoto, K. Yamamori & H. Furutani. Asymmetric mutation model in genetic algorithm. Artificial Life and Robotics, 22(1) (2017), 17-23. doi: 10.1007/s10015-016-0329-y.
https://doi.org/10.1007/s10015-016-0329-...
analisam os efeitos das taxas de mutação com abordagens assimétricas, além da evolução e distribuição estacionária dos esquemas de primeira ordem, mostrando que o grau de assimetria produz um efeito considerável na evolução dos esquemas.

Corus e Oliveto1111 D. Corus & P.S. Oliveto. Standard Steady State Genetic Algorithms Can Hillclimb Faster Than Mutation-Only Evolutionary Algorithms. IEEE Transactions on Evolutionary Computation, 22(5) (2018), 720-732. realizaram experimentos com relação ao número de indivíduos na população e demostraram como a interação entre os operadores de mutação e cruzamento beneficia mais o AG do que fazer apenas a mutação, utilizando para isso cadeias de Markov. Mishra e Shukla4343 A. Mishra & A. Shukla. Mathematical analysis of schema survival for genetic algorithms having dual mutation. Soft Computing, 22(6) (2018), 1763-1771. trazem um teorema matemático que representa a probabilidade de sobrevivência de um esquema após a aplicação do cruzamento e da mutação e que resultou em uma mutação de duas fases que melhora o poder exploratório do AG.

6.2 Formulação do Melhor Design

A estrutura genética do AG é formulada por meio de heurísticas cujo design mimetiza o processo evolutivo Darwiniano. É denotado como uma estratégia de busca de propósito geral que não garante a solução ótima3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Conforme Yang e Koziel7676 X.S. Yang & S. Koziel. Computational optimization, modelling and simulation-a paradigm shift. In “Procedia Computer Science” (2010), p. 1297-1300., a opção pela aplicação de um AG é definida quando o espaço de busca é grande o suficiente a ponto de deparar-se com duas situações: i) quando não é possível encontrar a solução por algoritmos exatos e/ou; ii) quando o tempo computacional é inaceitável ou inviável para uma exploração exaustiva.

Há muitas áreas em que o AG já foi aplicado com sucesso, tais como os casos descritos nas pesquisas de Mehboob et al.3939 U. Mehboob, J. Qadir, S. Ali & A. Vasilakos. “Genetic algorithms in wireless networking: techniques, applications, and issues”. Soft Computing (2016). doi: 10.1007/s00500-016-2070-9.
https://doi.org/10.1007/s00500-016-2070-...
, Thi et al.6464 N. Thi, P. Quyen & J.C. Chen. Hybrid genetic algorithm to solve resource constrained assembly line balancing problem in footwear manufacturing. Soft Computing, (2016). doi: 10.1007/s00500-016-2181-3.
https://doi.org/10.1007/s00500-016-2181-...
e Nogueira et al.4848 B. Nogueira, M. P. E. Tavares, R. Silva & E. Andrade. “Multiobjective optimization of multimedia embedded systems using genetic algorithms and stochastic simulation”. Soft Computing (2016). doi: 10.1007/s00500-016-2061-x.
https://doi.org/10.1007/s00500-016-2061-...
. Portanto, é categórico afirmar que o design ideal à eficácia do AG é aquele que favorece a difusão de características genéticas positivas que venham gerar indivíduos de alta aptidão para a formação de bons esquemas. De fato, os esquemas e suas subsequências representam os principais critérios para a formulação de designs do AG2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989)..

A questão principal é saber quais BC são relevantes e como devem ser descobertos, montados ou conservados5353 L. Poladian. Effect of parent selection and sibling rivalry on building-block assembly. Natural Computing, 9(1) (2010), 263-282.. Isto porque, a aptidão de m(H,g+1) pode mudar de geração em geração à medida que se concentra em novas subpartições do hiperespaço dificultando a identificação dos BC5353 L. Poladian. Effect of parent selection and sibling rivalry on building-block assembly. Natural Computing, 9(1) (2010), 263-282.), (7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671.. Alguns cromossomos podem ter alta aptidão na geração g e baixa aptidão na geração g+1 e os esquemas podem ser longos em dada geração g e curtos na geração g+1 se vieram a existir mais BC.

Não obstante, se as novas populações são geradas estocasticamente, então, é impossível predizer como ou quantas vezes os operadores genéticos proverão o surgimento de bons ou maus esquemas. A TE só fornece as informações da transição de uma para outra geração cuja evolução só irá acontecer caso ocorra o esperado6868 M.D. Vose. Modeling simple genetic algorithms. In “Foundations of Genetic Algorithms 2”. Morgan Kaufmann, San Mateo, CA (1993), p. 63-74.. Então, a capacidade de prever esquemas que ainda não estão presentes na população atual evapora após uma única geração4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.. Este é o principal fator restritivo à formulação do design ideal e, portanto, a principal limitação para demonstrar eficácia do AG.

As críticas e discussões sobre tal limitação tem como cerne a seguinte suposição: a TE é incapaz de lidar com a complexidade do processo de integração dos operadores genéticos e das iterações populacionais para antever o comportamento do AG. É neste sentido que as pesquisas mais recentes buscam desenvolver modelos matemáticos mais exatos visando prever, por exemplo, a composição da população, a velocidade de convergência e a distribuição de aptidão ao longo do tempo4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119..

6.3 Requisitos Básicos para um Melhor Design

A noção de que a utilização de designs predefinidos é incapaz de satisfazer as múltiplas exigências dos diferentes tipos de problemas do mundo real é um axioma aos pesquisadores do AG. Até o momento, nenhum AG demonstrou desempenho consistente frente à estas variabilidades, o que retrata a tensão entre a teoria e as aplicações práticas do AG7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671.. Em geral, tanto o problema quanto a própria solução são mal compreendidas e raramente suficientes para a definição do melhor design do AG3838 J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.. Além disso, estes problemas podem requerer mudanças nas configurações e nos parâmetros entre as fases de evolução7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
.

É visando uma melhor adaptação ao ambiente de soluções que a representação no indivíduo deve ser a mais adequada ao tipo de problema que se quer resolver2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138.. A forma de representação no indivíduo, além de inerente a precisão requerida, deve ser constituída por esquemas de pequenos comprimentos para que os operadores genéticos favoreçam a formação de BC. Há que se tenha uma análise detalhada sobre a quantidade de bits, visto que, indivíduos de poucos bits podem limitar as informações sobre o problema2121 D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).. Esta atenção também é válida para indivíduos de grandes comprimentos e que contém muitos bits, já que, I será mais efetiva e o cruzamento poderá destruir bons esquemas3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008)..

A definição do tamanho da população é também um parâmetro crítico que incorre em duas situações complexas e conflitantes que pode inviabilizar o AG. Estas situações, conforme Zhang et al.7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
, são: i) populações muito pequenas - pode gerar diversidade genética insuficiente à exploração do potencial de busca e reduzir o processo à máximos ou mínimos locais, e ii) populações muito grandes - pode gerar maior diversidade (soluções), todavia, o tempo de processamento tende a ser muito elevado podendo aproximar-se de uma busca exaustiva. A complexidade em torno deste parâmetro se reflete no fato de que a literatura não especifica qual é o tamanho ideal da população em que se verifica a melhora do AG.

Algumas pesquisas fazem experiências com populações de diferentes tamanhos, mas a maioria opta pela chamada standard setting, no qual se considera um número entre 50 a 1003535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (3737 F.G. Lobo & C.F. Lima. Adaptive Population Sizing Schemes in Genetic Algorithms. Parameter Setting in Evolutionary Algorithms, 54(2007), 185-204.. Linden3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008). indica como tentativa inicial (imprecisa) para qualquer problema uma população de 40 indivíduos. Para problemas de agrupamento, Cole1010 R.M. Cole. “Clustering with genetic algorithms”. Master’s thesis, (Master of Science). Department of Computer Science, University of Western, Australia (1998). 101f. sugere variar o tamanho da população de 10 a 1.000. Lobo e Lima3737 F.G. Lobo & C.F. Lima. Adaptive Population Sizing Schemes in Genetic Algorithms. Parameter Setting in Evolutionary Algorithms, 54(2007), 185-204. propõem sistemas adaptativos sem limites superiores, exceto em duas situações: i) quando o número máximo de avaliações é conhecido, e/ou ii) quando existem restrições de memória e de processamento computacional.

Estratégias de tamanho variável também têm sido propostas, tais como métodos adaptativos dinâmicos e topologia7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
. O objetivo é controlar o tamanho da população de forma que inicialmente sejam grandes para aumentar a exploração e que no final da execução se tornem menores para aperfeiçoar solução do AG. Lobo e Lima3737 F.G. Lobo & C.F. Lima. Adaptive Population Sizing Schemes in Genetic Algorithms. Parameter Setting in Evolutionary Algorithms, 54(2007), 185-204. enfatizam que uma questão crítica a estas estratégias é como convergi-las para uma população grande o suficiente capaz de encontrar boas regiões do espaço de soluções com um tempo de processamento computacional que viabilize a aplicação do AG. Lobo e Lima3737 F.G. Lobo & C.F. Lima. Adaptive Population Sizing Schemes in Genetic Algorithms. Parameter Setting in Evolutionary Algorithms, 54(2007), 185-204. recomendam que, se o problema permitir, é importante efetuar análises de tempo e da complexidade do espaço de busca valendo-se de dois métodos:

i) dado um tempo computacional fixo - medir a qualidade da solução e; ii) a partir da solução - medir o tempo que o AG precisa para alcançá-la. Whitley e Sutton7474 D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671. sugere: i) diminuir o tamanho da população e aumentar o número de gerações para obter diversidade genética pelas migrações de gerações; ii) gerar indivíduos que melhor representem o espaço de soluções, e iii) formular uma função aptidão relativamente rápida de calcular.

Após uma boa geração da população, a função aptidão deve contemplar os objetivos e todas as restrições do problema, além de conter mecanismos para lidar com os cromossomos inviáveis; rejeitando-os, penalizando-os ou reparando-os3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. No que se refere ao operador de seleção, uma variação essencial da roleta é a seleção elitista de Jong2727 K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138.. Esta técnica transmite diretamente para a geração g+1 uma certa porcentagem (geralmente pequena para evitar o risco de convergência prematura) de indivíduos de aptidão superior. Logo, os melhores indivíduos da geração g estarão presentes na geração g+1, ou seja, a seleção elitista garante que os indivíduos da geração g+1 sejam mais aptos ou pelo menos iguais aos melhores da geração anterior3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).), (4242 A. Mishra & A. Shukla. Analysis of the Effect of Elite Count on the Behavior of Genetic Algorithms: A Perspective. In “2017 IEEE 7th International Advance Computing Conference (IACC)” (2017), p. 835-840. doi: 10.1109/IACC.2017.0172.
https://doi.org/10.1109/IACC.2017.0172...
. A seleção junto com a função aptidão se configuram como elementos cruciais na velocidade e convergência do AG. Atenção especial deve ser dada a estes elementos com relação ao surgimento ou a forma de lidar com indivíduos que apresentem as características de super indivíduos ou de competição próxima4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119..

No cruzamento, a probabilidade (p c ) sugerida pela literatura é de 80% a 90%, enquanto para a probabilidade de mutação (p m ) são indicados valores mais baixos, entre 10% a 30%. É comum que no início da execução do AG, a p c seja muito superior à p m para que os bons esquemas não sejam destruídos3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Entretanto, após algumas gerações a população tende a competição próxima devido a redução da I, o que justifica aumentos na porcentagem da p m3535 R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).. Em termos gerais, a formulação empírica do design é que garante um melhor desempenho do AG7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
.

A literatura traz diversos métodos, diretrizes e variações para cada elemento do AG. Entretanto, não há uma fórmula padrão, regras ou exigências matemáticas que imponha designs de forma inequívoca, o que se observa é que para cada problema específico existe um melhor conjunto de configurações e parâmetros7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
. É importante combinar experiência junto com a modelagem e experimentação visando ajustar aspectos mais vantajosos, como: i) a classe e tamanho dos problemas, bem como o grau de complexidade para representá-lo e resolvê-lo; ii) a heurística utilizada e o que se deseja manipular geneticamente; iii) a adaptabilidade ao problema e os objetivos e; iv) as soluções proibidas, restrições ou punições devem estar implícitas no AG.

6.4 Direções Futuras para a Melhoria do Algoritmo Genético

Ao longo das últimas décadas temos visto uma série de estudos e novas propostas de aplicação do AG. Atualmente, as numerosas modificações do AG canônico estão distantes da concepção original proposta por2626 J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).. Importantes avanços foram obtidos por meio de variações não clássicas visando suprimir as deficiências da TE. Estes avanços incluem técnicas empíricas, determinísticas ou estocásticas, além daquelas que variam com o tempo e a evolução do AG. Atenção especial tem sido dada aos operadores genéticos aprimorados, a definição dos melhores parâmetros e a formulação de designs adaptativos que buscam ser mais flexíveis e multiobjetivos. Atrelado a estes elementos estão os desenvolvimentos de mecanismos para interação de genes visando a projeção de bons esquemas de forma a fomentar a HBC. A formulação do AG paralelo para novas classes populacionais não paramétricas e dinâmicas e que forneçam múltiplas soluções trarão resultados promissores à adaptação aos problemas e ao estudo da TE e da HBC.

Neste sentido,7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
fornecem um guia geral classificado em três taxonomias: i) objetos de adaptação; ii) evidências de adaptação e; iii) métodos para controlar a adaptação. Em um futuro próximo, fatores secundários tais como envelhecimento, auto adaptação, comportamento social e rivalidade irão guiar os avanços ao AG. Estes avanços ocorrerão em três etapas: i) avanço nos níveis de compreensão e representação do problema; ii) rápida identificação dos melhores parâmetros e; iii) formulação do design ideal dos elementos do AG. A formulação de AGs paralelos e metodologias para projetar mecanismos adaptativos e verificação de desempenho para novas classes populacionais podem ser consultadas em11 E. Alba & J.M. Troya. Improving flexibility and efficiency by adding parallelism to genetic algorithms. Statistics and Computing, 12(2) (2002), 91-114.), (3737 F.G. Lobo & C.F. Lima. Adaptive Population Sizing Schemes in Genetic Algorithms. Parameter Setting in Evolutionary Algorithms, 54(2007), 185-204.), (4747 A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.), (2424 J.W. Hallam, O. Akman & F. Akman. Genetic algorithms with shrinking population size. Computational Statistics, 25(4) (2010), 691-705.), (2929 D.S. Knysh & V.M. Kureichik. Parallel genetic algorithms: a survey and problem state of the art. Journal of Computer and Systems Sciences International, 49(4) (2010), 579-589.), (5353 L. Poladian. Effect of parent selection and sibling rivalry on building-block assembly. Natural Computing, 9(1) (2010), 263-282.), (5050 R. Pawar, J.S. Saini, M. Gopal & A.P. Mittal. “Towards generalized expression for schemata count”. Applied Soft Computing (2011). doi: 10.1016/j.asoc.2010.07.012.
https://doi.org/10.1016/j.asoc.2010.07.0...
), (7777 J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
https://doi.org/10.1007/s11460-012-0192-...
), (66 A. Banerjee. A novel probabilistically-guided context-sensitive crossover operator for clustering. Swarm and Evolutionary Computation, (2013). doi: 10.1016/j.swevo.2013.05.007.
https://doi.org/10.1016/j.swevo.2013.05....
), (5151 J.L. Payne, M. Giacobini & J.H. Moore. Complex and dynamic population structures: synthesis, open questions, and future directions. Soft Computing, 17(7) (2013), 1109-1120.), (3434 T.Y. Lim. Structured population genetic algorithms: a literature survey. Artificial Intelligence Review, 41(3) (2014), 385-399.. Abordagens mais generalistas que incluem uma série de diferentes combinações entre os elementos do AG foram propostas por66 A. Banerjee. A novel probabilistically-guided context-sensitive crossover operator for clustering. Swarm and Evolutionary Computation, (2013). doi: 10.1016/j.swevo.2013.05.007.
https://doi.org/10.1016/j.swevo.2013.05....
), (1515 R. Faraji & H.R. Naji. “An efficient crossover architecture for hardware parallel implementation of genetic algorithm”, volume 128. Neurocomputing (2014). doi: 10.1016/j.neucom.2013.08.035.
https://doi.org/10.1016/j.neucom.2013.08...
), (4141 A. Mishra & A. Shukla. “Mathematical analysis of the cumulative effect of novel ternary crossover operator and mutation on probability of survival of a schema”. Theoretical Computer Science (2016). doi: 10.1016/j.tcs.2016.07.035.
https://doi.org/10.1016/j.tcs.2016.07.03...
), (4343 A. Mishra & A. Shukla. Mathematical analysis of schema survival for genetic algorithms having dual mutation. Soft Computing, 22(6) (2018), 1763-1771.), (5050 R. Pawar, J.S. Saini, M. Gopal & A.P. Mittal. “Towards generalized expression for schemata count”. Applied Soft Computing (2011). doi: 10.1016/j.asoc.2010.07.012.
https://doi.org/10.1016/j.asoc.2010.07.0...
), (5555 Z. Qiongbing & D. Lixin. “A new crossover mechanism for genetic algorithms with variable-length chromosomes for path optimization problems”. Expert Systems with Applications (2016). doi: 10.1016/j.eswa.2016.04.005.
https://doi.org/10.1016/j.eswa.2016.04.0...
), (6666 C.J. Uzor, M. Gongora, S. Coupland & B.N. Passow. Adaptivemutation compact genetic algorithm for dynamic environments. Soft Computing, (2016). doi: 10.1007/s00500-016-2195-x.
https://doi.org/10.1007/s00500-016-2195-...
. A mais recente revisão sistemática da literatura sobre os recentes avanços em AG é apresentada por2828 S. Katoch, S.S. Chauhan & V. Kumar. A review on genetic algorithm - past, present, and future. Multimed Tools Appl, 80(1) (2021), 8091-8126. doi: 10.1007/s11042-020-10139-6.
https://doi.org/10.1007/s11042-020-10139...
.

6.5 Resposta à segunda e terceira hipótese

Nas subseções anteriores foi possível verificar que os operadores genéticos exerçam uma influência direta e essencial ao bom desempenho do AG. Inter-relacionados, podem afetar o funcionamento e o desempenho um dos outros com efeitos significativos sobre o processo de otimização e a eficácia do AG. A literatura traz diferentes métodos, técnicas e estratégias para a configuração dos operadores e seus parâmetros, porém não apresenta configurações ótimas que venham a favorecer TE e a HBC. As melhores opções são dependentes de uma adequada integração e alinhamento de um conjunto de elementos interdependentes que envolvem o problema, o design evolutivo e as tecnologias para execução do AG. Encontrar as melhores configurações dos operadores e dos parâmetros genéticos, tanto nas suas formas individuais quanto nas suas mútuas interações, se apresentam como dos principais desafios às recentes pesquisas sobre o AG. A maioria destas pesquisas tem, em especial, explorado o empregado de designs mais adaptativos e estratégias de parametrização estocástica visando uma maior flexibilidade e resultados multi-objetivos ao AG.

Assim sendo, fundamentado na última hipótese, é possível concluir que a TE e a HBC não explicam com exatidão matemática a propagação dos esquemas nas várias gerações do AG. A TE e a HBC fornecem um importante arcabouço teórico, porém incapaz de excluir as hipóteses anteriores e suprimir a tensão entre a teoria e as aplicações práticas do AG. Ainda não há técnicas que de uma inequívoca forma apresentem, ao longo das gerações, o exato comportamento do AG. Logo, não existem modelos que forneçam designs ótimos para cada elemento do AG e sim os melhores possíveis e que, inter-relacionadas, afetam o funcionamento um dos outros com impactos significativos no desempenho global dos AG. A maioria dos estudos fornecem as melhores combinações possíveis para os elementos do AG que, frente a um conjunto de regras, restrições e variáveis de decisão, sejam capazes de lidar da melhor forma possível com a complexidade da TE e da HBC. A comunidade cientifica ainda se defronta com muitas questões em aberto e pesquisas atuais anseiam pela obtenção de provas teóricas mais contundentes sobre todo o processo e eficácia do AG.

7 CONSIDERAÇÕES FINAIS

Este artigo apresentou uma análise teórica sobre o funcionamento da estrutura genética evolutiva do AG. Todo estudo se centrou nos dilemas e limitações do AG, evidenciando os efeitos que a ação dos operadores genéticos exerce sobre a conjectura dos esquemas retratados pela TE e pela HBC. As análises demonstraram que o AG é extremamente sensível às combinações das técnicas e dos parâmetros dos referidos operadores e que a busca por indivíduos melhor adaptados tem impacto direto na TE e na HBC. Fato é que estes operadores contribuem para o trade-off entre o processo de exploração e intensificação do espaço de busca na obtenção das melhores soluções possíveis ao AG. Entretanto, se configurados indevidamente, também podem inviabilizar a aplicação do AG.

Ante a estas questões, evidenciou-se que a dinâmica da TE e a HBC justifica a aplicação dos operadores genéticos e o funcionamento do AG. A literatura também tem apresentado muitos avanços nas pesquisas com operadores genéticos visando minimizar as limitações da TE e da HBC. Em especial, a seleção elitista demonstra ser fundamental para minimizar a ação destrutiva dos operadores e prover a melhoria de desempenho do AG. A implementação de métodos adaptativos e flexíveis com populações não paramétricas e dinâmicas também tem apresentado resultados satisfatórios e, ao expor novos desafios para futuras pesquisas, trarão resultados promissores à aplicação do AG.

Não obstante, as dificuldades para demonstrar, em provas teóricas, os efeitos dos operadores genéticos ao longo de todas as gerações a cada execução do AG demonstra a necessidade de mais pesquisas sobre a TE e a HBC. Neste sentido, este artigo traz importantes contribuições ao prover uma melhor compreensão da estrutura evolutiva e da capacidade de busca em sucessivas gerações durante toda a execução do AG. As conclusões enfatizam que uma atenção especial deve ser dada à formulação de designs adaptativos mais robustos e às demonstrações de provas teóricas mais contundentes sobre a real eficácia do AG.

Há ainda muitas questões sobre a TE e a HBC e compreendê-las é fundamental para a escolha das melhores opções de design que irão determinar o poder de busca do AG. Estas são algumas sugestões para futuras pesquisas visando abordar importantes lacunas em torno da estrutura genética do AG: i) Analise dos casos de sucesso encontrados na literatura para avaliar as aplicações dos elementos do AG; ii) Análise da literatura referente ao arcabouço teórico das pesquisas que tratam das implicações individuais e conjuntas das aplicações de cada elemento do AG; iii) Analise de como as populações não paramétricas e dinâmicas podem impactar no controle da pressão seletiva no desempenho global do AG; iv) Estudar o quanto as mudanças nas configurações dos elementos do AG impactam no desempenho da TE e da HBC.

Agradecimentos

A pesquisa dos autores é parcialmente apoiada pelas bolsas 306075/2017-2, 430137/2018-4 e 312585/2021-7 do Conselho Nacional de Desenvolvimento Científico e Tecnológico (CNPq), bem como pela bolsa 2700441 da Fundação Nacional de Desenvolvimento do Ensino Superior Particular (FUNADESP), Brasil, e pela bolsa de processo 312585/2021-7 da Coordenação de Aperfeiçoamento de Pessoal de Nível Superior (CAPES). Agradecemos aos revisores pelos comentários que enriqueceram este trabalho.

REFERÊNCIAS

  • 1
    E. Alba & J.M. Troya. Improving flexibility and efficiency by adding parallelism to genetic algorithms. Statistics and Computing, 12(2) (2002), 91-114.
  • 2
    A.R.T.T. Argoud. “Procedimento para projeto de arranjo físico modular em manufatura através de algoritmo genético de agrupamento”. Ph.D. thesis, (Doutorado em Engenharia de Produção) - Programa de Pós-Graduação em Engenharia de Produção, Escola de Engenharia de São Carlos, Universidade de São Paulo, USP, São Carlos (2007). 328f.
  • 3
    A. Asteroth & A. Hagg. How to successfully apply genetic algorithms in practice: Representation and parametrization. In “2015 International Symposium on Innovations in Intelligent SysTems and Applications (INISTA)” (2015), p. 1-6. doi: 10.1109/INISTA.2015.7276778.
    » https://doi.org/10.1109/INISTA.2015.7276778
  • 4
    T. Bäck, D.B. Fogel & Z. Michalewicz. “Handbook of evolutionary computation”. Oxford University Press (1997).
  • 5
    T. Bäck & H.P. Schwefel. An overview of evolutionary algorithms for parameter optimization. Evolutionary computation, 1(1) (1993), 1-23.
  • 6
    A. Banerjee. A novel probabilistically-guided context-sensitive crossover operator for clustering. Swarm and Evolutionary Computation, (2013). doi: 10.1016/j.swevo.2013.05.007.
    » https://doi.org/10.1016/j.swevo.2013.05.007
  • 7
    L.T. Biegler & I.E. Grossmann. Retrospective on optimization. Computers and Chemical Engineering, 28(8) (2004), 1169-1192.
  • 8
    T. Blickle. “Theory of evolutionary algorithms and application to system synthesis”. Ph.D. thesis, (Doctor of Technical Sciences), Swiss Federal Institute of Technology, ETH, Zurich, Switzerland (1996). 272f.
  • 9
    S.W. Chung & R.A. Perez. The schema theorem considered insuficient. In “Proceedings of the Sixth IEEE International Conference on Tools with Artificial Intelligence”. New Orleans (1994), p. 748-751.
  • 10
    R.M. Cole. “Clustering with genetic algorithms”. Master’s thesis, (Master of Science). Department of Computer Science, University of Western, Australia (1998). 101f.
  • 11
    D. Corus & P.S. Oliveto. Standard Steady State Genetic Algorithms Can Hillclimb Faster Than Mutation-Only Evolutionary Algorithms. IEEE Transactions on Evolutionary Computation, 22(5) (2018), 720-732.
  • 12
    P.A. Diaz-Gomez & D.F. Hougen. A Trade-Off of the Schema Theorem. In E.A. Orlando (editor), “Proceedings of the Conference on Artificial Intelligence and Pattern Recognition”. Orlando, FL (2007), p. 326-333.
  • 13
    N. Donthu, S. Kumar, D. Mukherjee, N. Pandey & W.M. Lim. How to conduct a bibliometric analysis: An overview and guidelines. Journal of Business Research, 133(2021), 285-296. doi: https://doi.org/10.1016/j.jbusres.2021.04.070
    » https://doi.org/10.1016/j.jbusres.2021.04.070
  • 14
    Y. Du, K. Aoki, M. Sakamoto, K. Yamamori & H. Furutani. Asymmetric mutation model in genetic algorithm. Artificial Life and Robotics, 22(1) (2017), 17-23. doi: 10.1007/s10015-016-0329-y.
    » https://doi.org/10.1007/s10015-016-0329-y
  • 15
    R. Faraji & H.R. Naji. “An efficient crossover architecture for hardware parallel implementation of genetic algorithm”, volume 128. Neurocomputing (2014). doi: 10.1016/j.neucom.2013.08.035.
    » https://doi.org/10.1016/j.neucom.2013.08.035
  • 16
    D.B. Fogel. Asymptotic convergence properties of genetic algorithms and evolutionary programming: analysis and experiments. Cybernetics and Systems: An International Journal, 25(3) (1994), 389-407.
  • 17
    D.B. Fogel & A. Ghozeil. Schema processing under proportional selection in the presence of random effects. IEEE Transactions on Evolutionary Computation, 1(4) (1997), 290-293.
  • 18
    D.B. Fogel & A. Ghozeil. The schema theorem and the misallocation of trials in the presence of stochastic effects. In V.W. Porto, N. Saravanan, D. Waagen & A.E. Eiben (editors), “Proceedings of the 7th Anual Conference on Evolutionary Programming”. Springer, Berlin (1998), p. 313-321.
  • 19
    M. Gen & R. Cheng. “Genetic Algorithms”. John Wiley and Sons, Inc., New York, NY, USA, 1st ed. (1999).
  • 20
    D.E. Goldberg. “A note on the disruption due to crossover in a binary-coded genetic algorithm”. University of Alabama (1987).
  • 21
    D.E. Goldberg. “Genetic algorithms in search, optimization, and machine learning”. Addison-Wesley Co. Massachusetts, USA, 2 ed. (1989).
  • 22
    D.E. Goldberg. “The design of innovation: Lessons from and for competent genetic algorithms”, volume 7. Springer Science and Business Media (2002).
  • 23
    K. Haegeman, E. Marinelli, F. Scapolo, A. Ricci & A. Sokolov. Quantitative and qualitative approaches in Future-oriented Technology Analysis (FTA): From combination to integration? Technological Forecasting and Social Change, 80(3) (2013), 386-397.
  • 24
    J.W. Hallam, O. Akman & F. Akman. Genetic algorithms with shrinking population size. Computational Statistics, 25(4) (2010), 691-705.
  • 25
    R.L. Haupt & S.E. Haupt. “Practical genetic algorithms”. John Wiley and Sons, Inc, New York, 2 ed. (2004).
  • 26
    J.H. Holland. “Adaptation in natural and artificial systems”. University of Michigan Press, Ann Arbor, MI (1975).
  • 27
    K.D. Jong. Learning with genetic algorithms: An overview. Machine learning, 3(2-3) (1988), 121-138.
  • 28
    S. Katoch, S.S. Chauhan & V. Kumar. A review on genetic algorithm - past, present, and future. Multimed Tools Appl, 80(1) (2021), 8091-8126. doi: 10.1007/s11042-020-10139-6.
    » https://doi.org/10.1007/s11042-020-10139-6
  • 29
    D.S. Knysh & V.M. Kureichik. Parallel genetic algorithms: a survey and problem state of the art. Journal of Computer and Systems Sciences International, 49(4) (2010), 579-589.
  • 30
    G.J. Koehler, S. Bhattacharyya & M.D. Vose. General cardinality genetic algorithms. Evolutionary Computation, 5(4) (1997), 439-459.
  • 31
    H. Lee & T.L. Yu. Off-line building block identification: detecting building blocks directly from fitness without genetic algorithms. In “Proceedings of the 14th annual conference on Genetic and evolutionary computation” (2012), p. 641-648.
  • 32
    M. Li & J. Kou. The schema illusory and deceptive problems of genetic algorithms. Science in China Series: Information Sciences, 44(5) (2001), 342-350.
  • 33
    G.E. Liepins & M.D. Vose. Representational issues in genetic optimization. Journal of Experimental and Theoretical Artificial Intelligence, 2(1990), 101-115.
  • 34
    T.Y. Lim. Structured population genetic algorithms: a literature survey. Artificial Intelligence Review, 41(3) (2014), 385-399.
  • 35
    R. Linden. “Algoritmos genéticos: uma importante ferramenta da inteligência computacional”. Brasport, Rio de Janeiro, 2 ed. (2008).
  • 36
    M.K. Linnenluecke, M. Marrone & A.K. Singh. Conducting systematic literature reviews and bibliometric analyses. Australian Journal of Management, 45(2) (2020), 175-194. doi: 10.1177/0312896219877678.
    » https://doi.org/10.1177/0312896219877678
  • 37
    F.G. Lobo & C.F. Lima. Adaptive Population Sizing Schemes in Genetic Algorithms. Parameter Setting in Evolutionary Algorithms, 54(2007), 185-204.
  • 38
    J. Mccall. Genetic algorithms for modeling and optimization. Journal of Computational and Applied Mathematics, 184(1) (2005), 205-222.
  • 39
    U. Mehboob, J. Qadir, S. Ali & A. Vasilakos. “Genetic algorithms in wireless networking: techniques, applications, and issues”. Soft Computing (2016). doi: 10.1007/s00500-016-2070-9.
    » https://doi.org/10.1007/s00500-016-2070-9
  • 40
    Z. Michalewicz. “Genetic algorithm+data structures=evolution programs”. Springer-Verlag, 3 ed. (1996).
  • 41
    A. Mishra & A. Shukla. “Mathematical analysis of the cumulative effect of novel ternary crossover operator and mutation on probability of survival of a schema”. Theoretical Computer Science (2016). doi: 10.1016/j.tcs.2016.07.035.
    » https://doi.org/10.1016/j.tcs.2016.07.035
  • 42
    A. Mishra & A. Shukla. Analysis of the Effect of Elite Count on the Behavior of Genetic Algorithms: A Perspective. In “2017 IEEE 7th International Advance Computing Conference (IACC)” (2017), p. 835-840. doi: 10.1109/IACC.2017.0172.
    » https://doi.org/10.1109/IACC.2017.0172
  • 43
    A. Mishra & A. Shukla. Mathematical analysis of schema survival for genetic algorithms having dual mutation. Soft Computing, 22(6) (2018), 1763-1771.
  • 44
    M. Mitchell. “An introduction to genetic algorithms”. MIT, Cambridge (1996).
  • 45
    M. Mitchell, S. Forrest & J.H. Holland. The royal road for genetic algorithms: Fitness landscapes and GA performance. In “Proceedings of the first european conference on artificial life”. MIT Press, Cambridge, MA (1992), p. 245-254.
  • 46
    M. Mitchell, J.H. Holland & S. Forrest. When will a genetic algorithm outperform hill climbing? In M. Kaufmann (editor), “Advances in Neural Information Processing Systems”. San Mateo, CA (1994), p. 51-58.
  • 47
    A. Nobakhti. On Natural Based Optimization. Cognitive Computation, 2(2010), 97-119.
  • 48
    B. Nogueira, M. P. E. Tavares, R. Silva & E. Andrade. “Multiobjective optimization of multimedia embedded systems using genetic algorithms and stochastic simulation”. Soft Computing (2016). doi: 10.1007/s00500-016-2061-x.
    » https://doi.org/10.1007/s00500-016-2061-x
  • 49
    M.A.C. Pacheco. Algoritmos genéticos: princípios e aplicalções. Technical report, Laboratório de Inteligência Computacional Aplicada, ICA. Departamento de Engenharia Elétrica, Pontifícia Universidade Católica do Rio de Janeiro (1999).
  • 50
    R. Pawar, J.S. Saini, M. Gopal & A.P. Mittal. “Towards generalized expression for schemata count”. Applied Soft Computing (2011). doi: 10.1016/j.asoc.2010.07.012.
    » https://doi.org/10.1016/j.asoc.2010.07.012
  • 51
    J.L. Payne, M. Giacobini & J.H. Moore. Complex and dynamic population structures: synthesis, open questions, and future directions. Soft Computing, 17(7) (2013), 1109-1120.
  • 52
    A.R.F. Pinto. “Algoritmo genético aplicado ao sequenciamento de picking e faturamento”. Master’s thesis, (Mestrado em Engenharia de Produção) - Faculdade de Engenharia de Bauru, Universidade Estadual Paulista ”Júlio de Mesquita Filho”, Bauru (2012). 80f.
  • 53
    L. Poladian. Effect of parent selection and sibling rivalry on building-block assembly. Natural Computing, 9(1) (2010), 263-282.
  • 54
    E.K. Prebys. The genetic algorithm in computer science. MIT Undergraduate Journal of Mathematics, 1(1999), 165-170.
  • 55
    Z. Qiongbing & D. Lixin. “A new crossover mechanism for genetic algorithms with variable-length chromosomes for path optimization problems”. Expert Systems with Applications (2016). doi: 10.1016/j.eswa.2016.04.005.
    » https://doi.org/10.1016/j.eswa.2016.04.005
  • 56
    N.J. Radcliffe. Equivalence class analysis of genetic algorithms. Complex Systems, 5(1991), 183-205.
  • 57
    N.J. Radcliffe. Forma analysis and random respectful recombination. In R.K. Belew & L.B. Booker (editors), “Proceedings of fourth International Conference on Genetic Algorithms”. Morgan Kaufmann, San Mateo, CA (1991), p. 222-229.
  • 58
    N.J. Radcliffe. Forma Analysis and Random Respectful Recombination. In “Proceedings of the 4th International Conference on Genetic Algorithms” (1991).
  • 59
    Z. Shahsavar & H. Kourepaz. Postgraduate students’ difficulties in writing their theses literature review. Cogent Education, 7(1) (2020), 1784620. doi: 10.1080/2331186X.2020.1784620.
    » https://doi.org/10.1080/2331186X.2020.1784620
  • 60
    A. Shukla, H.M. Pandey & D. Mehrotra. Comparative review of selection techniques in genetic algorithm. In “2015 International Conference on Futuristic Trends on Computational Analysis and Knowledge Management (ABLAZE)” (2015), p. 515-519. doi: 10.1109/ABLAZE.2015.7154916.
    » https://doi.org/10.1109/ABLAZE.2015.7154916
  • 61
    A. Shukla, R. Tiwari & R. Kala. Towards hybrid and adaptive computing studies in computational intelligence. In “Computational intelligence”. Springer, Berlin (2010).
  • 62
    C.R. Stephens & H. Waelbroeck. Effective degrees of freedom in genetic algorithms and the block hypothesis. In “ Proceedings of 7th International Conference on Genetic Algorithms”. Morgan Kaufmann, San Francisco, CA (1997), p. 34-40.
  • 63
    C.R. Stephens & H. Waelbroeck. Schemata evolution and building blocks. Evolutionary Computation, 7(1999), 109-124.
  • 64
    N. Thi, P. Quyen & J.C. Chen. Hybrid genetic algorithm to solve resource constrained assembly line balancing problem in footwear manufacturing. Soft Computing, (2016). doi: 10.1007/s00500-016-2181-3.
    » https://doi.org/10.1007/s00500-016-2181-3
  • 65
    T. Toffoli. What you always wanted to know about genetic algorithms but were afraid to hear. In L. Booker (editor), “Perspectives on Adaptation in natural and artificial systems - Essays in honor of John Holland”. Oxford University Press (2004).
  • 66
    C.J. Uzor, M. Gongora, S. Coupland & B.N. Passow. Adaptivemutation compact genetic algorithm for dynamic environments. Soft Computing, (2016). doi: 10.1007/s00500-016-2195-x.
    » https://doi.org/10.1007/s00500-016-2195-x
  • 67
    M.D. Vose. Generalizing the notion of schema in genetic algorithms. Artificial Intelligence, 50(3) (1991), 385-396.
  • 68
    M.D. Vose. Modeling simple genetic algorithms. In “Foundations of Genetic Algorithms 2”. Morgan Kaufmann, San Mateo, CA (1993), p. 63-74.
  • 69
    M.D. Vose. A closer look at mutation in genetic algorithms. Annals of Mathematics and Artificial Intelligence, 10(1994), 423-434.
  • 70
    M.D. Vose. Modeling simple genetic algorithms. Evolutionary Computation, 3(1995), 453-472.
  • 71
    M.D. Vose & A.H. Wright. Form invariance and implicit parallelism. Evolutionary Computation, 9(2001), 355-370.
  • 72
    D. Whitley. An executable model of a simple genetic algorithm. In L.D. Whitley (editor), “Foundations of Genetic Algorithms 2”. Morgan Kaufmann, San Mateo, CA (1993), p. 45-62.
  • 73
    D. Whitley. A genetic algorithm tutorial. Statistics and Computing, 4(2) (1994), 65-85.
  • 74
    D. Whitley & A.M. Sutton. Genetic Algorithms - A Survey of Models and Methods. Handbook of Natural Computing, 1(2012), 637-671.
  • 75
    X.S. Yang. Biology-derived algorithms in engineering optimization. In “Handbook of Bioinspired Algorithms and Applications” (2005), p. 585-595.
  • 76
    X.S. Yang & S. Koziel. Computational optimization, modelling and simulation-a paradigm shift. In “Procedia Computer Science” (2010), p. 1297-1300.
  • 77
    J. Zhang, W.N. Chen, Z.H. Zhan, W.J. Yu, Y.L. Li, N. Chen & Q. Zhou. A survey on algorithm adaptation in evolutionary computation. Frontiers of Electrical and Electronic Engineering, 7(1) (2012), 16-31. doi: 10.1007/s11460-012-0192-0.
    » https://doi.org/10.1007/s11460-012-0192-0

Datas de Publicação

  • Publicação nesta coleção
    05 Set 2022
  • Data do Fascículo
    2022

Histórico

  • Recebido
    30 Jan 2021
  • Aceito
    01 Fev 2022
Sociedade Brasileira de Matemática Aplicada e Computacional - SBMAC Rua Maestro João Seppe, nº. 900, 16º. andar - Sala 163, Cep: 13561-120 - SP / São Carlos - Brasil, +55 (16) 3412-9752 - São Carlos - SP - Brazil
E-mail: sbmac@sbmac.org.br