Algoritmo Genético em Inteligência Artificial: Visão Geral, Benefícios e Terminologias Chave
Publicados: 2020-12-22Índice
Introdução
Um algoritmo genético é usado para resolver problemas complicados com um número maior de variáveis e possíveis resultados/soluções. As combinações de diferentes soluções são passadas pelo algoritmo baseado em Darwin para encontrar as melhores soluções. As soluções mais pobres são então substituídas pelos descendentes de boas soluções.
Tudo funciona na teoria darwiniana, onde apenas os indivíduos mais aptos são escolhidos para reprodução. As várias soluções são consideradas os elementos da população, e apenas as soluções mais aptas podem se reproduzir (para criar soluções melhores). Os algoritmos genéticos ajudam a otimizar as soluções para qualquer problema específico.
Todo o processo de algoritmos genéticos é uma simulação de programa de computador em que os atributos do problema e da solução são tratados como os atributos da teoria darwiniana. Os processos básicos que estão envolvidos em algoritmos genéticos são os seguintes:
- Uma população de soluções é construída para qualquer problema em particular. Os elementos da população competem entre si para descobrir o mais apto.
- Os elementos da população que são aptos só podem criar descendentes (melhores soluções).
- Os genes dos pais mais aptos (soluções) criam uma prole melhor. Assim, as soluções futuras serão melhores e sustentáveis.
Trabalho de Algoritmos Genéticos em IA
O funcionamento de um algoritmo genético em IA é o seguinte:
- Os componentes da população, ou seja, elementos, são denominados como genes em algoritmos genéticos em IA . Esses genes formam um indivíduo na população (também denominado como um cromossomo).
- Um espaço de busca é criado no qual todos os indivíduos são acumulados. Todos os indivíduos são codificados dentro de um comprimento finito no espaço de busca.
- Cada indivíduo no espaço de busca (população) recebe uma pontuação de aptidão, que informa sua capacidade de competir com outros indivíduos.
- Todos os indivíduos com seus respectivos escores de aptidão são procurados e mantidos pelo algoritmo genético e os indivíduos com altos escores de aptidão têm a chance de se reproduzir.
- A nova prole está tendo melhores 'soluções parciais' em comparação com seus pais. Os algoritmos genéticos também mantêm o espaço do espaço de busca dinâmico para acumular as novas soluções (filhos).
- Este processo é repetido até que os descendentes não tenham novos atributos/características que seus pais (convergência). A população converge no final, e apenas as soluções mais aptas permanecem junto com seus descendentes (soluções melhores). O escore de aptidão de novos indivíduos na população (filhos) também são calculados.
Terminologias Chave em Algoritmos Genéticos
- Operador de Seleção – Este operador em algoritmos genéticos em IA é responsável por selecionar os indivíduos com melhores escores de aptidão para reprodução.
- Operador de cruzamento – O operador de cruzamento escolhe um local de cruzamento de onde a mesclagem acontecerá. Os sítios de cruzamento em ambos os indivíduos disponíveis para acasalamento são escolhidos aleatoriamente e formam novos indivíduos.
- Operador de Mutação – Este operador no algoritmo genético é responsável por incorporar genes aleatórios na prole para manter a diversidade e evitar convergência prematura.
- Convergência Prematura – Se um problema é otimizado rapidamente, significa que a prole não foi produzida em muitos níveis. As soluções também não serão de ótima qualidade. Para evitar a convergência prematura, novos genes são adicionados pelo operador de mutação.
- Alelo – O valor de um gene particular em um cromossomo é denominado como um alelo. O conjunto especificado de alelos para cada gene define os possíveis cromossomos desse gene em particular.
Leia: Tipos de algoritmos de IA que você deve conhecer

Benefícios e usos dos algoritmos genéticos
- As soluções criadas através de algoritmos genéticos são fortes e confiáveis em comparação com outras soluções.
- Eles aumentam o tamanho das soluções, pois as soluções podem ser otimizadas em uma grande escala de pesquisa. Este algoritmo também pode gerenciar uma grande população.
- As soluções produzidas por algoritmos genéticos não se desviam muito ao alterar levemente a entrada. Eles podem lidar com um pouco de ruído.
- Os algoritmos genéticos têm uma distribuição estocástica que segue regras de transição probabilísticas, tornando-os difíceis de prever, mas fáceis de analisar.
- Algoritmos genéticos também podem funcionar em ambientes ruidosos. Também pode funcionar em caso de problemas complexos e discretos.
- Devido à sua eficácia, os algoritmos genéticos têm muitas aplicações, como redes neurais, lógica difusa, quebra de código, filtragem e processamento de sinais. Você pode aprender mais sobre os algoritmos genéticos em IA através dos principais cursos oferecidos pelo upGrad.
Leia também: Tipos de algoritmo de classificação em ML


Por que aprender com o upGrad?
O upGrad oferece vários cursos em IA afiliados às principais universidades e instituições. Esses cursos seguem uma abordagem pioneira no setor e são ministrados por faculdades especializadas. Os cursos fornecidos em IA pelo upGrad são os seguintes:
- Mestrado em Machine Learning & AI afiliado à Liverpool John Moores University (LJMU).
- Diploma PG em Machine Learning & AI afiliado ao IIIT Bangalore.
Os benefícios de optar por esses cursos no upGrad são os seguintes:
- O upGrad também fornecerá suporte de colocação se você optar por esses cursos. upGrad é uma parceria com os principais players do setor.
- Você receberá orientação personalizada se optar pelos cursos mencionados acima.
- Você terá a oportunidade de escolher entre muitos projetos, estudos de caso, tarefas, etc.
- Você também ganhará o status de ex-aluno da LJMU ou IIIT Bangalore se optar por esses cursos.
- Você encontrará sessões de orientação de especialistas do setor para saber mais sobre o setor de IA.
- Um mentor de carreira também será fornecido a você via upGrad para suporte completo de 360 graus.
- Esses cursos em IA do upGrad também abrangerão linguagens de programação, ferramentas e bancos de dados (bibliotecas) usados na indústria de IA. Você também terá acesso à vasta comunidade upGrad.
Conclusão
Os algoritmos genéticos são um conceito importante em IA e são um dos algoritmos de IA com melhor desempenho quando se trata de encontrar soluções ideais. Você pode saber mais sobre este tópico optando pelos cursos de IA fornecidos pelo upGrad ministrados por faculdades especializadas. O curso LJMU no upGrad é de 18 meses, enquanto o outro é de 12 meses. Comece a aprender IA agora!
Se você estiver interessado em aprender mais sobre aprendizado de máquina, confira o PG Diploma in Machine Learning & AI do IIIT-B e upGrad, projetado para profissionais que trabalham e oferece mais de 450 horas de treinamento rigoroso, mais de 30 estudos de caso e atribuições, IIIT- B Status de ex-aluno, mais de 5 projetos práticos práticos e assistência de trabalho com as principais empresas.
O que você entende por algoritmo genético e como ele está relacionado à biologia?
Algoritmos, em geral, são um conjunto de regras ou instruções que devem ser seguidas por um computador ou dispositivo para executar uma determinada tarefa ou resolver um problema. O algoritmo genético é um algoritmo evolutivo que se baseia em uma das teorias biológicas de Charles Darwin. Chama-se a sobrevivência do mais apto e, de acordo com essa frase, apenas os organismos que se ajustam melhor ao ambiente têm chances de sobrevivência e reprodução. Semelhante à teoria, o algoritmo genético é um algoritmo iterativo que encontra uma solução que é a melhor solução entre as soluções disponíveis para o dispositivo. Os cromossomos são representados por matrizes de bits ou caracteres em um algoritmo genético, que implementa o paradigma da computação. Cada string corresponde a uma possível solução. O algoritmo genético então ajusta os cromossomos mais promissores para buscar melhores resultados.
Quais são os casos de uso de algoritmos genéticos na vida real?
Ao replicar o processo evolutivo de sobrevivência do mais apto para atingir um determinado objetivo, os algoritmos genéticos potencialmente abordam questões complexas com inúmeras variáveis e um grande número de soluções alternativas. Em economia, algoritmos genéticos representam conceitos que incluem teoria dos jogos, modelo de teia de aranha, precificação de ativos e otimização de cronograma. Eles também são utilizados para descobrir como tornar a entrega de mercadorias mais eficiente. Eles são empregados na análise de DNA para determinar a estrutura do DNA com base em dados espectrométricos. Em problemas de otimização multimodal, eles são utilizados para fornecer inúmeras soluções ótimas. Eles são empregados na criação de projetos paramétricos de aeronaves. Os parâmetros da aeronave são atualizados e aprimorados usando algoritmos genéticos para produzir designs superiores.
Quais são as limitações do algoritmo genético?
Como qualquer outro algoritmo, os algoritmos genéticos também têm seu próprio conjunto de limitações. A primeira limitação é que esses algoritmos são computacionalmente caros porque a avaliação de cada indivíduo necessita do treinamento de um modelo. O segundo problema enfrentado com esses algoritmos é que eles são ineficazes na resolução de problemas menores. Outro problema com esses algoritmos é que sua natureza estocástica pode levar muito tempo para convergir, e a implementação inadequada pode fazer com que o algoritmo convirja para um resultado insatisfatório. Além disso, em um algoritmo genético, a qualidade da resposta final não é garantida. Nesses algoritmos, o cálculo repetitivo dos valores mais aptos pode causar problemas específicos com obstáculos de computação.