algoritmos genéticos

18
S3M4N4 D4 M4T3MÁT1C4 2010 2010

Upload: thiago-marinho

Post on 11-Jun-2015

2.746 views

Category:

Documents


6 download

DESCRIPTION

Meu amigo apresentou esse slide na UNIDERP!

TRANSCRIPT

Page 1: Algoritmos Genéticos

S3M4N4 D4 M4T3MÁT1C4 S3M4N4 D4 M4T3MÁT1C4

20102010

Page 2: Algoritmos Genéticos

Algoritmos Geneticos

Douglas Peixoto de Carvalho

Acadêmico

Page 3: Algoritmos Genéticos

SUMÁRIOSUMÁRIO• O que é Algoritmo Genético?• Introdução • Noções de Otimização• O Algoritmo Genético com Parâmetros

Contínuos • Aspectos Práticos• Aplicações

111010101001011000001001011000000

Page 4: Algoritmos Genéticos

A L G O R I T M A L G O R I T M O O

G E N E T I C OG E N E T I C O

A L G O R I T M A L G O R I T M O O

G E N E T I C OG E N E T I C O(AG) é uma técnica de procura utilizada na ciência da computação para achar soluções aproximadas em problemas de otimização e busca, fundamentado principalmente pelo americano John Henry Holland. Algoritmos genéticos são uma classe particular de algoritmos evolutivos que usam técnicas inspiradas pela biologia evolutiva como hereditariedade, mutação, seleção natural e recombinação (ou crossing over).

Page 5: Algoritmos Genéticos

História da Teoria da Evolução

Page 6: Algoritmos Genéticos

Teoria da EvoluçãoTeoria da Evolução• 1859 - Charles Darwin publica o

livro “A Origem das Espécies”:

Charles Darwin

“As espécies evoluem pelo principio da seleção

natural e sobrevivência do mais apto”.

Page 7: Algoritmos Genéticos

Existe uma diversidade de seres devido aos Existe uma diversidade de seres devido aos contingentes da natureza (comida, clima, ...) e contingentes da natureza (comida, clima, ...) e é pela lei da é pela lei da Seleção NaturalSeleção Natural que os seres que os seres mais adaptados ao seus ambientes mais adaptados ao seus ambientes sobrevivemsobrevivem

Os caracteres adquiridos são herdados pelas Os caracteres adquiridos são herdados pelas gerações seguintes gerações seguintes

O pai da genética apresenta experimentos O pai da genética apresenta experimentos do cruzamento genético de ervilhas. do cruzamento genético de ervilhas. Formalizou a “herança de características”, Formalizou a “herança de características”, com a teoria do DNA (ervilhas) com a teoria do DNA (ervilhas)

A Teoria da Evolução começou a partir A Teoria da Evolução começou a partir da conceituação integrada da seleção da conceituação integrada da seleção natural com a Genética.natural com a Genética.Gregor Mendel

Charles Darwin

1859: Charles Darwin1859: Charles Darwin

1865: Gregor Mendel1865: Gregor Mendel

Page 8: Algoritmos Genéticos

1901: Hugo De Vries1901: Hugo De Vries

Só a seleção natural não é Só a seleção natural não é responsável pela produção de responsável pela produção de novas (mais adaptadas) espécies. novas (mais adaptadas) espécies. Tem de haver uma mudança Tem de haver uma mudança genética!genética!Formalizou o processo de geração Formalizou o processo de geração de diversidade:de diversidade: Teoria da Teoria da MutaçãoMutação

Só a seleção natural não é Só a seleção natural não é responsável pela produção de responsável pela produção de novas (mais adaptadas) espécies. novas (mais adaptadas) espécies. Tem de haver uma mudança Tem de haver uma mudança genética!genética!Formalizou o processo de geração Formalizou o processo de geração de diversidade:de diversidade: Teoria da Teoria da MutaçãoMutação

Teoria da Mutação na prática?

Teoria da Mutação na prática?

Page 9: Algoritmos Genéticos

Computação Evolutiva

Computação Evolutiva

• Toda tarefa de busca e otimização geralmente é composta por três componentes básicos:

• A codificação do Problema em questão (parte mais difícil do processo)• O Espaço de Busca• Função de Avaliação

• Toda tarefa de busca e otimização geralmente é composta por três componentes básicos:

• A codificação do Problema em questão (parte mais difícil do processo)• O Espaço de Busca• Função de Avaliação

Page 10: Algoritmos Genéticos

Os Algoritmos Genéticos diferem dos métodos tradicionais de busca e otimização, principalmente em quatro aspectos:

Os Algoritmos Genéticos diferem dos métodos tradicionais de busca e otimização, principalmente em quatro aspectos:

• Trabalham com uma codificação do conjunto de parâmetros e não com os próprios parâmetros;• Trabalham com uma população e não com um único ponto;• Utilizam informações de custo ou recompensa e não derivadas ou outro conhecimento auxiliar• Utilizam regras de transição probabilísticas e não determinísticas

• Trabalham com uma codificação do conjunto de parâmetros e não com os próprios parâmetros;• Trabalham com uma população e não com um único ponto;• Utilizam informações de custo ou recompensa e não derivadas ou outro conhecimento auxiliar• Utilizam regras de transição probabilísticas e não determinísticas

As Principais Características:

Page 11: Algoritmos Genéticos

• 1. 1. Inicializar a população de Inicializar a população de cromossomos (soluções). cromossomos (soluções).

• 2. 2. Avaliar cada cromossomo da Avaliar cada cromossomo da população. Se o critério de fim foi população. Se o critério de fim foi alcançado, deve-se terminar. Caso alcançado, deve-se terminar. Caso contráriocontrário

• 3. 3. Criar novos cromossomos a partir Criar novos cromossomos a partir da população atual, aplicar mutação da população atual, aplicar mutação e recombinação, substituindo os e recombinação, substituindo os ascendentes pelos descendentes. ascendentes pelos descendentes.

• 4. 4. Se o critério de fim foi alcançado, Se o critério de fim foi alcançado, deve-se terminar. Caso contrário, deve-se terminar. Caso contrário, retorna-se ao passo 1. retorna-se ao passo 1.

O algoritmo genético básico é o seguinte:O algoritmo genético básico é o seguinte:O algoritmo genético básico é o seguinte:O algoritmo genético básico é o seguinte:

Page 12: Algoritmos Genéticos

Operadores Genéticos- Operador de mutação é necessário para a introdução e manutenção da diversidade genética da população, alterando arbitrariamente um ou mais componentes de uma estrutura escolhida, meios para introdução de novos elementos na população.

- Operador de cruzamento é responsável pela recombinação de características dos pais durante a reprodução, permitindo que as próximas gerações herdem essas características. as mais utilizadas são:

um-ponto: um ponto de cruzamento é escolhido e a partir deste ponto

as informações genéticas dos pais serão trocadas.

multi-pontos: é uma generalização desta idéia de troca de material genético

através de pontos, onde muitos pontos de cruzamento podem ser utilizados.

Page 13: Algoritmos Genéticos

• Tamanho da População. O tamanho da população afeta o desempenho global e a eficiência dos AGs. Com uma população pequena o desempenho pode cair, pois deste modo a população fornece uma pequena cobertura do espaço de busca do problema. Uma grande população geralmente fornece uma cobertura representativa do domínio do problema, além de prevenir convergências prematuras para soluções locais ao invés de globais.

• Taxa de Cruzamento. Quanto maior for esta taxa, mais rapidamente novas estruturas serão introduzidas na população. Mas se esta for muito alta, estruturas com boas aptidões poderão ser retiradas mais rápida um valor alto, a maior parte da população será substituída, mas com valores muito altos pode ocorrer perda de estruturas de alta aptidão.

• Taxa de Mutação. Uma baixa taxa de mutação previne que uma dada posição fique estagnada em um valor, além de possibilitar que se chegue em qualquer ponto do espaço de busca. Com uma taxa muito alta a busca se torna essencialmente aleatória.

• Intervalo de Geração. Controla a porcentagem da população que será substituída durante a próxima geração. Com um valor alto, a maior parte da população será substituída, mas com valores muito altos pode ocorrer perda de estruturas de alta aptidão. Com um valor baixo, o algoritmo pode tornar-se muito lento.

Parâmetros GenéticosParâmetros Genéticos

Page 14: Algoritmos Genéticos

Através dos Algoritmos Genéticos, implementado no aplicativo MS Excel, é possível encontrar a altura máxima que um projétil alcança em um lançamento oblíquo conhecendo apenas sua velocidade inicial na direção de y (altura) oyv ou ângulo e ov

O problema pode ser colocado da seguinte forma: um projétil é arremessado a partir do solo 00 y

com velocidade inicial oyv de 1.6,8 sm 1.10 smg

20 2

1gttvyy oy

. Considerando a aceleração da gravidade

, qual a altura máxima atingida pelo projétil?

y é a altura máxima a ser determinada , 0y 0t

tg 1. sm

é sua velocidade inicial ( );

é o instante a ser determinado para que a função alcance o seu máximo e

representa a força gravitacional em

.

Exemplo: Cálculo da altura máxima atingida por um projétil usando algoritmos genéticos implementado no

aplicativo MS Excel

Page 15: Algoritmos Genéticos
Page 16: Algoritmos Genéticos
Page 17: Algoritmos Genéticos

Legenda: T0: tempo inicial; Y0: altura inicial; Tf: tempo final; Yf: altura final

• Assim, na vigésima oitava iteração os indivíduos convergiram para uma altura máxima de 3,7734m . Além de se obter a solução para o problema, nos permite a visualização de como a função se comportaria em outros pontos.

Page 18: Algoritmos Genéticos

Uso dos Algoritmos Genéticos

Seguem-se alguns exemplos de sistemas adaptativos:

Controle de Sistemas Dinâmicos;Minimização e Otimização de Funções;

Encontrar Novas Topologias Conexionistas: Engenharia de Sistemas Neurais Artificiais, Modelagem de Estruturas Neurais Biológicas;

Simulação de Modelos Biológicos; Evolução Interativa de Imagens;

Composição Musical.