A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008.

Apresentações semelhantes


Apresentação em tema: "Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008."— Transcrição da apresentação:

1 Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008

2 Fundamentos de Algoritmos Genéticos Introdução Resultado dos trabalhos realizados por John Holland, apresentados em 1975 no seu livro Adaptation in Natural and Artificial Systems; Algoritmos genéticos são métodos adaptativos cuja estrutura se baseia na teoria da evolução das espécies (Darwin); Entre variados domínios de aplicação (ciências da computação, bio-informática, nas diversas áreas da engenharia,...), é de salientar a sua utilização na resolução de problemas de análise combinatória enquadrado nos métodos de procura global.

3 Fundamentos de Algoritmos Genéticos Conceitos Básicos Na procura da solução óptima de um problema, os algoritmos genéticos (AG) partem de populações de soluções, normalmente escolhidas aleatoriamente. Deste modo, em cada iteração é analisada a vizinhança de uma população diversificação da procura no espaço das soluções. (a população gerada inicialmente pode encontrar-se em torno de um óptimo local...) Cada solução individual de uma população (cromossoma) é submetida a uma avaliação do seu potencial, em termos de boa solução ou condução a boas soluções – processo de selecção. As soluções seleccionadas são combinadas entre si, isto é, reproduzem-se com um certo grau de aleatoriedade, dando origem a uma nova geração de soluções; eventualmente, este degrau evolutivo conduzirá a soluções melhores do que as suas progenitoras (pelo menos algumas...)

4 Fundamentos de Algoritmos Genéticos Conceitos Básicos (cont.) Algumas das soluções pertencentes à nova geração podem ser individualmente alteradas, com vista a uma melhoria das suas características e/ou diversificação da população – soluções mutantes. As novas soluções são avaliadas em termos do seu potencial como progenitores, isto é, da capacidade de originarem uma nova geração de soluções que, de algum modo, se aproxime do óptimo desejado. A dimensão da população inicial permanece constante em cada geração, as soluções que se revelem menos promissoras são eliminadas (selecção natural) e substituídas pelas soluções da nova geração com maiores potenciais (eventualmente, haverá novas soluções que são eliminadas logo à nascença).

5 Fundamentos de Algoritmos Genéticos Conceitos Básicos (cont.) Trata-se de um processo evolutivo número crescente de gerações (iterações) conduzirá (?) a uma população cujas soluções (pelo menos as melhores) se aproximam progressivamente do óptimo procurado. O número de iterações implementado pelo AG pode ser definido com base em diferentes critérios, por exemplo, o número de gerações a obter. Naturalmente, um critério baseado apenas no número de gerações não garante a obtenção de boas soluções.

6 Fundamentos de Algoritmos Genéticos Metodologias de AG Criação da população inicial de soluções usualmente, gerada de forma aleatória, contendo um número de soluções que possa cobrir uma parte significativa do respectivo domínio; Escolha das solução com melhores níveis de aptidão, de acordo com o critério adoptado (algoritmo de seleccção); Combinações das soluções seleccionadas (reprodução) ; Diversificação das soluções de uma geração.

7 Fundamentos de Algoritmos Genéticos Metodologias de AG (cont.) As implementações mais comuns de AG são designadas por simples e estacionárias (steady state). Nos algoritmos simples toda a população actual é substituída na passagem de uma geração para a seguinte; Nos algoritmos estacionários a passagem da geraçaõ actual para a seguinte é caracterizada pela substituição de apenas algumas soluções (em princípio, as piores); A definição da função de adaptabilidade (fitness function), a representação genética das soluções (codificação), bem como a implementação dos operadores genéticos é crucial em termos do sucesso (ou não...) alcançado por diferentes algoritmos, na resolução do mesmo problema.

8 Fundamentos de Algoritmos Genéticos Operadores Genéticos Selecção Selecção: as soluções consideradas mais aptas são seleccionadas como potenciais reprodutores da geração à qual pertencem. Existem diversos métodos de efectuar a escolha de soluções, sendo de referir: Tournament selection – a selecção é feita através da criação de grupos de soluções da população; as soluções de cada grupo competem entre si, sendo que, apenas uma solução de cada grupo é seleccionada. O valor da função de adaptabilidade (fitness) de cada solução é determinante na sua escolha. Fitness proportionate selection – ao valor da função de adaptabilidade de cada solução da população é associado uma probabilidade de selecção. Sendo a escolha função de um valor probabilístico, poderá haver boas soluções que não são seleccionadas e soluções mais fracas que o sejam diversificação das gerações seguintes no espaço das soluções.

9 Fundamentos de Algoritmos Genéticos Operadores Genéticos (cont.) Reprodução Reprodução: cruzamento de soluções seleccionadas, cujo resultado será uma nova geração de soluções, com estruturas distintas dos progenitores, mas que terão herdado as boas características destas. Exemplos de técnicas de cruzamento (troca directa): one-point crossover two-point crossover cut and splice - estas técnicas nem sempre são aplicáveis, como é o caso do TSP

10 Fundamentos de Algoritmos Genéticos Operadores Genéticos (cont.) Mutação Mutação: modificação de uma sequência particular de uma solução (ou grupo de soluções) pertencente à geração actual diversificação, bem como redução do risco de convergência para óptimos locais. Tipicamente, este operador é usado em populações cujas soluções se encontram codificadas – strings ou arrays de bits. É comum existir uma variável aleatória associada à posição de cada bit, numa determinada sequência; em função do seu valor, o valor de um bit (ou vários) poderá ser alterado. Deste modo, é diminuído o risco de serem obtidos óptimos locais e, eventualmente, o fim da própria evolução de gerações. É de referir que a selecção baseada em critérios que escolhem apenas as melhores soluções pode conduzir a becos sem saída (óptimos locais).

11 Fundamentos de Algoritmos Genéticos Critérios de Substituição de Soluções Referem-se ao conteúdo da geração seguinte, ou seja, quais as novas soluções, as que permanecem e aquelas que são substituídas (eliminadas): - Eliminação da(s) pior(es) solução(ões); - Eliminação das progenitoras; - Substituição aleatória; - Substituição de soluções com grandes semelhanças. O primeiro e último critérios são os fundamentais.

12 Fundamentos de Algoritmos Genéticos Critérios de Paragem As operações descritas anteriormente são efectuadas ciclicamente, sendo os critérios de paragem mais comuns: - É encontrada uma solução que satisfaz um requisito pré-definido; - Número de gerações definido; - Se é verificado que um número n de iterações (gerações) sucessivas não conduzem a melhorias significativas.

13 Fundamentos de Algoritmos Genéticos Estrutura Básica de um Algoritmo Genético 1. Escolha da população inicial X 0 = x 10, x 20,...x n0 ; 2. Para cada solução individual (x i ) da população X, determinar o valor F i, tal que F i =F(x i ) F(x)-fitness function; 3. Selecção das soluções mais aptas (x j ) x j X : X a X; 4. Aplicação do operador reprodução nas soluções seleccionadas; aplicação do operador mutação a soluções geradas; 5. Substituição das piores soluções por soluções geradas; 6. Se o critério de paragem não for verificado, voltar a 2.

14 Fundamentos de Algoritmos Genéticos BIBLIOGRAFIA Pirlot, Marc (1996) General Local Search Methods, European Journal of Operational Research 92, pp Wall, Matthew (?) Overview of Genetic Algorithms, Mechanical Engineering Departement, MIT. Whitley, Darrell (?) A Genetic Algorithm Tutorial, Colorado State University. Karova, Milena et al. (2005) Genetic operators crossover and mutation in solving the TSP problem, International Conference on Computer Systems and Technologies.


Carregar ppt "Optimization and Decision Support Techniques FUNDAMENTOS DE ALGORITMOS GENÉTICOS Pedro Miguel A. S. Melo FEUP – Fevereiro de 2008."

Apresentações semelhantes


Anúncios Google