SlideShare uma empresa Scribd logo
Algoritmos genéticos em python - PyConBrasil 3 (2007)
Introdução
● Algoritmos Bio-inspirados
● Algoritmos Genéticos
– Seleção
– “Crossover”
– Mutação
● Exemplo “Pythonico”
Algoritmos Bio-inspirados
Se um dia desejarmos construir robôs que
se comportam como seres autônomos, que
tal programar esses robôs com algoritmos
inspirados na biologia?
Algoritmos Bio-inspirados
● Heurísticas Bio-Inspiradas:
– Computação Evolutiva;
– Algoritmos Genéticos;
– Inteligência de Enxames
(“Swarm Intelligence”);
– Algoritmos Imunológicos;
– Caos Determinístico;
Algoritmos Genéticos
● Especialmente úteis quando as seguintes
premissas se verificam:
– Soluções para um problema podem ser
encontradas, mas não é simples encontrar a
melhor solução em um tempo aceitável";
– Dada uma determinada solução é possível
compará-la com outras soluções e dizer qual
é a melhor;
Algoritmos Genéticos
● É uma forma interessante de resolver
problemas de otimização combinatória ou
numérica.
– Exemplo: o problema do Caixeiro Viajante
(“Traveling Salesman Problem - TSP”).
Algoritmos Genéticos
● Uma solução para o problema é um
cromossomo;
● Operações de “crossover” e mutação nos
cromossomos criam novas soluções;
● Mutações acontecem com uma
determinada probabilidade, gerando
soluções diferentes das “esperadas”;
Algoritmos Genéticos
● Mecanismos de
seleção fazem as
novas soluções se
reproduzirem ou
serem extintas;
Exemplo “Pythonico”
Achar o valor máximo da equação:
(todo mundo usa o TSP como exemplo, vamos usar algo diferente...)
f  x1 ,x2=21.5x1.sin4 x1x2.sin20 x2
Gráfico (octave)
x1 = linspace(-3.0, 12.1, 100);
x2 = linspace(4.1, 5.8, 100);
[xx1, xx2] = meshgrid(x1, x2);
z1 = 21.5 + xx1 * sin( 4 * pi * xx1)';
z2 = xx2 * sin(20 * pi * xx2)';
z = z1 + z2;
mesh(x1, x2, z);
Gráfico (octave)
Solução
Show me the code!
Algoritmos genéticos em python - PyConBrasil 3 (2007)

Mais conteúdo relacionado

PPT
algoritmos geneticos teresa b. lugemir
PPTX
Algorítimos Genéticos
PDF
Algoritmos genéticos: princípios e aplicações
PDF
Evolução em código: algoritmos genéticos com PHP
PPTX
Algoritmos genéticos
PPTX
Algoritmos Genéticos
PDF
59 algoritmosgeneticos(1)
ODP
Algoritmo Genético para busca de máximo de função
algoritmos geneticos teresa b. lugemir
Algorítimos Genéticos
Algoritmos genéticos: princípios e aplicações
Evolução em código: algoritmos genéticos com PHP
Algoritmos genéticos
Algoritmos Genéticos
59 algoritmosgeneticos(1)
Algoritmo Genético para busca de máximo de função

Semelhante a Algoritmos genéticos em python - PyConBrasil 3 (2007) (20)

PDF
Algoritmos Genéticos
PPT
Visão Geral, Ferramentas e Aplicações dos Algoritmos Genéticos
PDF
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
PDF
Inteligência Artificial - Aula15 - Algoritmos Genéticos
PDF
(ACH2044) Inteligência Artificial - Aula 04
PDF
ALgoritmo Genético - Escalonamento
PDF
Algoritmos Genéticos com Arduino
PPT
Genetic Algorithm Applied In Travel Salesman Problem
PPTX
Algoritmos Evolucionários: Estudo comparativo AG e ED
PDF
Review articles bio inspired algorithms
PPT
TCC - BCC 2000 (Rubens Altimari)
PPTX
Algoritmos geneticos
PPT
Algoritmos Genéticos
PDF
[SLIDES] Algoritmos Genéticos Cap10c, Representação Numérica - Ricardo Linde...
PDF
Introducao a metaheuristicas: aula sobre metaheuristicas
PPTX
Doutorado - Adaptação de Dificuldade em Jogos de Reabilitação Auxiliados por ...
ODP
Programação Genética
PDF
Intro heuristica
PPTX
[4]-Algoritmos-Genéticos-IA-INTELIGENCIA-ARTIFICIAL.pptx
PPTX
Aprendizagem Automática
Algoritmos Genéticos
Visão Geral, Ferramentas e Aplicações dos Algoritmos Genéticos
Algoritmos Genéticos em PHP - PHP Conference Brasil 2019
Inteligência Artificial - Aula15 - Algoritmos Genéticos
(ACH2044) Inteligência Artificial - Aula 04
ALgoritmo Genético - Escalonamento
Algoritmos Genéticos com Arduino
Genetic Algorithm Applied In Travel Salesman Problem
Algoritmos Evolucionários: Estudo comparativo AG e ED
Review articles bio inspired algorithms
TCC - BCC 2000 (Rubens Altimari)
Algoritmos geneticos
Algoritmos Genéticos
[SLIDES] Algoritmos Genéticos Cap10c, Representação Numérica - Ricardo Linde...
Introducao a metaheuristicas: aula sobre metaheuristicas
Doutorado - Adaptação de Dificuldade em Jogos de Reabilitação Auxiliados por ...
Programação Genética
Intro heuristica
[4]-Algoritmos-Genéticos-IA-INTELIGENCIA-ARTIFICIAL.pptx
Aprendizagem Automática
Anúncio

Mais de Fabiano Weimar (20)

PDF
Python Performance Review - Python Sul 2024
PDF
Plone, Zope e Python - Da Universidade ao Governo - SulComp II (2006)
PDF
Performance Tuning de Clusters Plone - PyConBrasil 2 (2006)
PDF
Meu Plone Site está lento. O que fazer???
PDF
Portal SEBRAE - Quando o Plone Gerencia o Conteúdo Alheio
PDF
Introducao ao sistema de gerenciamento de conteúdo Plone
PDF
Integração de sistemas legados com Plone
PDF
Faça seu portal voar usando o plone.app.caching
PDF
Adaptando o Plone para plataformas móveis
PDF
Plone Yak Shaving and Bikeshedding
PDF
Otimização de infra estrutura para hospedagem de websites
PDF
Understanding Plone Security
PDF
Tips and Tricks about Plone Development for Mobile Platforms
PDF
Segurança no plone
PDF
Dicas e truques de otimização de websites python
PDF
Conhecendo o ubuntu enterprise cloud - UEC
PDF
Sistema de protocolo de documentos - SPDO
PDF
Novidades do plone 4
PDF
O novo plone 4
PDF
Reconhecimento de fala em português brasileiro
Python Performance Review - Python Sul 2024
Plone, Zope e Python - Da Universidade ao Governo - SulComp II (2006)
Performance Tuning de Clusters Plone - PyConBrasil 2 (2006)
Meu Plone Site está lento. O que fazer???
Portal SEBRAE - Quando o Plone Gerencia o Conteúdo Alheio
Introducao ao sistema de gerenciamento de conteúdo Plone
Integração de sistemas legados com Plone
Faça seu portal voar usando o plone.app.caching
Adaptando o Plone para plataformas móveis
Plone Yak Shaving and Bikeshedding
Otimização de infra estrutura para hospedagem de websites
Understanding Plone Security
Tips and Tricks about Plone Development for Mobile Platforms
Segurança no plone
Dicas e truques de otimização de websites python
Conhecendo o ubuntu enterprise cloud - UEC
Sistema de protocolo de documentos - SPDO
Novidades do plone 4
O novo plone 4
Reconhecimento de fala em português brasileiro
Anúncio

Último (16)

PDF
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
PDF
Custos e liquidação no SAP Transportation Management, TM130 Col18
PPTX
Arquitetura de computadores - Memórias Secundárias
PDF
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
PPTX
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
PDF
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
PDF
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
PPTX
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
PDF
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
PDF
COBITxITIL-Entenda as diferença em uso governança TI
PPTX
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
PDF
Processos na gestão de transportes, TM100 Col18
PDF
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
PDF
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
PPTX
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
PDF
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26
Termos utilizados na designação de relação entre pessoa e uma obra.pdf
Custos e liquidação no SAP Transportation Management, TM130 Col18
Arquitetura de computadores - Memórias Secundárias
20250805_ServiceNow e a Arquitetura Orientada a Serviços (SOA) A Base para Ap...
Gestao-de-Bugs-em-Software-Introducao.pptxxxxxxxx
Otimizador de planejamento e execução no SAP Transportation Management, TM120...
Mergulho profundo técnico para gestão de transportes no SAP S/4HANA, S4TM6 Col14
Informática Aplicada Informática Aplicada Plano de Ensino - estudo de caso NR...
Fundamentos de gerenciamento de ordens e planejamento no SAP TransportationMa...
COBITxITIL-Entenda as diferença em uso governança TI
Como-se-implementa-um-softwareeeeeeeeeeeeeeeeeeeeeeeee.pptx
Processos na gestão de transportes, TM100 Col18
Fullfilment AI - Forum ecommerce 2025 // Distrito e Total Express
Gestão de transportes básica no SAP S/4HANA, S4611 Col20
Programação - Linguagem C - Variáveis, Palavras Reservadas, tipos de dados, c...
Custos e faturamento no SAP S/4HANA Transportation Management, S4TM3 Col26

Algoritmos genéticos em python - PyConBrasil 3 (2007)

  • 2. Introdução ● Algoritmos Bio-inspirados ● Algoritmos Genéticos – Seleção – “Crossover” – Mutação ● Exemplo “Pythonico”
  • 3. Algoritmos Bio-inspirados Se um dia desejarmos construir robôs que se comportam como seres autônomos, que tal programar esses robôs com algoritmos inspirados na biologia?
  • 4. Algoritmos Bio-inspirados ● Heurísticas Bio-Inspiradas: – Computação Evolutiva; – Algoritmos Genéticos; – Inteligência de Enxames (“Swarm Intelligence”); – Algoritmos Imunológicos; – Caos Determinístico;
  • 5. Algoritmos Genéticos ● Especialmente úteis quando as seguintes premissas se verificam: – Soluções para um problema podem ser encontradas, mas não é simples encontrar a melhor solução em um tempo aceitável"; – Dada uma determinada solução é possível compará-la com outras soluções e dizer qual é a melhor;
  • 6. Algoritmos Genéticos ● É uma forma interessante de resolver problemas de otimização combinatória ou numérica. – Exemplo: o problema do Caixeiro Viajante (“Traveling Salesman Problem - TSP”).
  • 7. Algoritmos Genéticos ● Uma solução para o problema é um cromossomo; ● Operações de “crossover” e mutação nos cromossomos criam novas soluções; ● Mutações acontecem com uma determinada probabilidade, gerando soluções diferentes das “esperadas”;
  • 8. Algoritmos Genéticos ● Mecanismos de seleção fazem as novas soluções se reproduzirem ou serem extintas;
  • 9. Exemplo “Pythonico” Achar o valor máximo da equação: (todo mundo usa o TSP como exemplo, vamos usar algo diferente...) f  x1 ,x2=21.5x1.sin4 x1x2.sin20 x2
  • 10. Gráfico (octave) x1 = linspace(-3.0, 12.1, 100); x2 = linspace(4.1, 5.8, 100); [xx1, xx2] = meshgrid(x1, x2); z1 = 21.5 + xx1 * sin( 4 * pi * xx1)'; z2 = xx2 * sin(20 * pi * xx2)'; z = z1 + z2; mesh(x1, x2, z);