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

Slides:



Advertisements
Apresentações semelhantes
Unidade VII Algoritmos Genéticos
Advertisements

Algoritmos Genéticos Teresa B. Ludermir.
Busca Informada Parte 3 – Algoritmos Genéticos
Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
Amintas engenharia.
Algoritmos Genéticos Problema das 8 Rainhas Algoritmo Genético
CONCEITOS BÁSICOS DA META-HEURÍSTICA TABU SEARCH
1 Optimização Na programação por restrições, há que considerar não apenas a satisfação de restrições mas também a optimização de uma função objectivo.
Fundamentos dos Algoritmos Genéticos Alex F. V. Machado.
Algoritmos Genéticos Alex F. V. Machado. Algoritmos Genéticos Quanto melhor um indivíduo se adaptar ao seu meio ambiente, maior será sua chance de sobreviver.
Algoritmos Genéticos Alex F. V. Machado.
Computação Evolucionária
Adriano Joaquim de O Cruz
ÉLDMAN DE OLIVEIRA NUNES E AURA CONCI INSTITUTO DE COMPUTAÇÃO UFF
Reconhecimento de Padrões Computação Evolutiva
Algoritmos Genéticos Marcone Jamilson Freitas Souza
Reconhecimento de Padrões Algoritmos Genéticos
Busca Dispersa Scatter Search
Computação Evolutiva: Programação Genética
Computação Evolutiva: Estratégias Evolutivas
Otimização de Funções Contínuas via Algoritmos Genéticos Adaptado do trabalho realizado por: Frederico Heitor Mônica do Amaral.
Otimização de Funções Contínuas via Algoritmos Genéticos
Reconhecimento de Padrões Computação Evolutiva
Algoritmos Genéticos Jorge H. C. Fernandes Setembro de 1998.
Inteligência Artificial
Algoritmo Genético.
Algoritmos Genéticos Prof. Luis Otavio Alvares II/UFRGS
Inteligência Artificial Câmpus de Uruguaiana - PUCRS
Algoritmos Genéticos Rômulo Ferreira Douro.
Apresentação Introdução à Programação Genética Título :
Algoritmos Genéticos – Capítulo 11
Métodos Populacionais
Meta - heurísticas Prof. Aurora
Aurora Pozo– UFPR – Meta-Heurísticas
Desempenho de Algoritmos Genéticos
Algoritmos Culturais.
GENÉTICA DE POPULAÇÕES.
GRASP Disciplina: ODST Professores: José Oliveira e Maria Carravilla
Métodos Populacionais
Sistemas Inteligentes
Sistema de equações lineares
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Anne Magály de PaulaCanuto DIMAp/UFRN
Algoritmos Evolutivos Algoritmos Genéticos Introdução
Tópicos Avançados em Inteligência Artificial
Algoritmos Genéticos Ricardo Prudêncio.
Utilização de algoritmos genéticos para a identificação e escolha de acções de condicionamento da procura de energia Álvaro Gomes; A. Gomes Martins; Carlos.
Experimentação Algorítmica
O PROBLEMA DE SCHEDULING EM JOB-SHOP
Inteligência Artificial
II. METODOLOGIA Ambas as antenas, PIFA modificada e BFMA, foram analisadas numericamente empregando as equações integrais dos potenciais em conjunto com.
Programação Evolutiva e Lógica Fuzzy
Orientador: Dr. Marcos Marcelino Mazzucco
O PROBLEMA DE SCHEDULING EM JOB-SHOP
OPTIMIZAÇÃO COM ALGORITMOS EVOLUTIVOS
MAC Projeto Algoritmos Aproximados para o Problema do Corte Circular Restrito Rubens Altimari.
Artigo: Berth allocation planning in the public berth system by genetic algorithms Akio Imai, Etsuko Nishimura, Stratos Papadimitriou, Heurística.
Resolução de problemas por meio de busca
Computação Evolutiva : Um Novo Paradigma Para a Resolução de Problemas Complexos Aurora Pozo Pós-graduação em Informática, Pós-graduação em Métodos Numéricos.
Optimização Os problemas de optimização têm como objetivo maximizar ou minimizar uma função definida sobre um certo domínio Optimizar (max ou min)
Algoritmos Genéticos Ricardo Prudêncio.
Inteligência Artificial
Computação Evolutiva Nome dado ao estudo de algoritmos cuja inspiração é o processo de evolução natural das espécies. Origem: trabalho de um pesquisador.
Algoritmos Genéticos ÝIntrodução ÝHistórico ÝAlgoritmo Genético Básico: 3Representação de um indivíduo 3Função de aptidão 3Operadores genéticos 3Critério.
Algoritmos Genéticos Uma visão geral do método Cláudio M. N. A. Pereira.
Taís Sineiro Herig Laboratório de Genômica e Expressão / UNICAMP
Métodos Populacionais. Mantém um conjunto de soluções candidatas e não só uma solução Cada solução será modificada e avaliada Hill-Climbing paralelos.
CMMI Capability Maturity Model Integration
1 Problemas Numéricos com Representação por Números Reais Prof. Marco Aurélio C. Pacheco.
Universidade do Sul de Santa Catarina Ciência da Computação Técnicas de Inteligência Artificial Aula 10 Algoritmos Genéticos Max Pereira.
Transcrição da apresentação:

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

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.

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...)

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).

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.

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.

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.

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.

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

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).

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.

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.

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.

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.