• Nenhum resultado encontrado

4.1 TRABALHOS FUTUROS

4.1.7 Ferramentas

• Criador de indivíduos: onde o usuário possa criar um indivíduo alterando suas características genéticas;

• Salvar um ecossistema de forma persistente, em arquivo, permitindo a sua restauração e retomada da simulação em um momento futuro;

REFERÊNCIAS BIBLIOGRÁFICAS

ATTIYA, Hagit; WELCH, Jennifer. Distributed computing: fundamentals, simulations, and advanced topics. 2.ed. Wiley, 2004. 432 p.

BARNEY, Blaise. Introduction to parallel computing. Disponível em

<https://computing.llnl.gov/tutorials/parallel_comp> Acesso em: 26 maio 2010.

COLES, Drue. Artificial life as a path from computing to philosophy. 2009.

DARWIN, Charles. A origem das espécies. São paulo: Martin Claret, 2007. 639 p.

FLOREANO, Dario; MATTIUSSI, Claudio. Bio inspired artificial inteligence - theories methods and technologies. Cambridge, Massachusetts, Estados unidos da América: The MIT Press, 2008.

659 p.

GALLIN, A.; MAURI, G.; FERRETTI, C. Bio Molecular Engine: A bio-inspired environment for models of growing and evolvable computation. 2005.

GEN, Mitsuo; CHENG, Runwei. Genetic Algorithms & Engineering optimization. Toronto, Canadá: Wiley, 2000. 495 p.

Keedwell, Edward; Narayanan, Ajit. Intelligent Bioinformatics - The application of artificial intelligence techniques to bioinformatics problems. Chichester, Inglaterra, Reino Unido: Wiley, 2005. 280 p.

KSHEMKALYANI, Ajay D.; SINGHAL, Mukesh. Distributed computing: Principles,

Algorithms, and Systems. Cambridge. Inglaterra. Reino unido: Cambridge University Press. 2008.

736p.

LINDEN, Ricardo. Algoritmos genéticos – Uma importante ferramenta da inteligência computacional. São Paulo: Brasport, 2006. 348 p.

MITCHEL, Melanie. An introduction to genetic algorithms. 5. ed. Cambridge. Massachusetts.

Estados unidos da América: The MIT Press, 1998. 158 p.

ROHDE, Klaus. Competition: ecological/evolutionary significance. Disponível em

<http://knol.google.com/k/competition-ecological-evolutionary-significance> Acesso em: 25 maio 2010.

STEVENSON, Bill. Introduction to the artificial life issue. ACM, v.8, n.2, p. 2, dez. 2001.

VASCONCELOS, Luis A. S. Ciências para professores do ensino fundamental. Disponível em

<http://educar.sc.usp.br/ciencias/ecologia/associa.html> Acesso em: 25 maio 2010.

WEISE, Thomas. Distributed Genetic Programming Framework. Disponível em

<http://dgpf.sourceforge.net> Acesso em: 27 maio 2010.

WILDBERGER, A. Martin. Introduction & overview of 'artificial life' – evolving intelligent agents for modeling & simulation - 2006

WINCKELMANS, Bob. Critterding. Disponível em <http://critterding.sourceforge.net> Acesso em: 27 maio 2010.

GLOSSÁRIO

Cromossomo Filamentos espiralados contendo sequencias de DNA.

Ecossistema Conjunto formato por comunidades biológicas e fatores físicos em uma certa região.

Fenótipo Fenótipo são as características observáveis de um indivíduo resultantes de sua configuração genética. Fenótipo é a expressão física do genótipo.

Genética É um ramo da biologia que estuda a variação nos indivíduos e a hereditariedade, bem como a transmissão de material genético.

Genótipo Genótipo é o conjunto do material genético que porta informações refletidas em características (fenótipo) de um indivíduo.

Mutação Processo pelo qual ocorre uma modificação no material genético que pode ocorrer por causas diversas, inclusive no processo de cópia do material genético durante o processo de divisão celular.

Seleção natural Processo pelo qual seres vivos selecionam seus parceiros sexuais na natureza, baseados em características diversas.

APÊNDICES

A OUTRAS ESTRATÉGIAS EM ALGORÍTMOS GENÉTICOS

Os algorítimos genéticos possuem outras estratégias de seleção e outros modelos de população, diferentes dos utilizados neste trabalho. Estas estratégias são explicadas a seguir:

A.1 POPULAÇÃO A.1.1 Estratégia (µ+λ)

Este tipo de representação de população é conhecido como sendo do tipo (Miu mais Lambda - µ+λ), nesta representação existem µ membros, a população original, que geram um conjunto de λ filhos (sendo que, geralmente, a quantidade de indivíduos µ é maior do que a quantidade de indivíduos λ). O conjunto de todos os indivíduos (µ e λ) competem entre si de forma que apenas µ indivíduos de maior avaliação sobrevivem até a próxima geração (LINDEN, 2006).

A.1.2 Substituição de geração

No modelo de substituição de geração - modelo mais comum - um par de indivíduos se reproduz gerando um outro par de novos indivíduos. Estes novos indivíduos entram na população substituindo seus pais, que são descartados. É de simples implementação, mas tem a desvantagem de descartar frequentemente bons indivíduos da população (LINDEN, 2006).

A.1.3 Elitismo

No modelo de elitismo, deve-se definir um número de indivíduos que devem ser preservados de uma geração para a outra. Com isso, a cada geração, esse número de melhores indivíduos (a elite) são preservados, tendo oportunidade de difundir seu genótipo na nova geração (LINDEN, 2006).

A.1.4 Panmitic

No modelo de implementação panmitic todos os indivíduos pertencem a uma única população, a diferença deste modelo para o modelo tradicional é que vários computadores processam cada um uma parte da população. Cada computador destes é então responsável pela

processamento reprodutivo entre vários computadores, apesar da população continuar toda em um único local (LINDEN, 2006).:

A.2 SELEÇÃO

A.2.1 Seleção truncada

Com o método de seleção truncada apenas um percentual dos melhores indivíduos da população poderão procriar a cada geração. Este método causa uma convergência genética mais veloz, levando a uma rápida perda de diversidade genética, principalmente quando o percentual de indivíduos que podem procriar a cada geração é pequeno (LINDEN, 2006).

A.2.2 Torneio

No método de torneio, quando um indivíduo decide procriar, um conjunto de indivíduos da população é selecionado aleatoriamente e, dentro deste conjunto é realizada uma comparação de saúde - utilizando uma função de avaliação – aquele que for mais saudável, terá o direito de procriar. A quantidade de indivíduos selecionados para participar do torneio pode variar, sendo no mínimo 2 (para que exista alguma competição), e no máximo o tamanho da população, onde o melhor indivíduo da população será sempre escolhido (LINDEN, 2006).

A.2.3 Amostragem estocástica uniforme

Na amostragem estocástica uniforme, todos os indivíduos são “alinhados” em uma reta, cada um ocupando o seu valor de saúde como extensão. Sendo n o número de indivíduos que serão pais nesta geração, define-se um tamanho de segmento que é determinado pela extensão total da reta dividida por n. A partir de então inicia-se o sorteio dos pais selecionados, o primeiro é sorteado entre o ponto zero e o tamanho de segmento previamente calculado. A partir deste ponto inicial, define-se n pontos, incrementando sempre com o tamanho de segmento, o indivíduo que ocupar o espaço em cada destes pontos sorteados é selecionado para ser pai nesta geração (LINDEN, 2006).

A.2.4 Seleção por classificação

A seleção baseada em classificação se baseia na classificação do indivíduo na população (seu ranking), em vez da sua saúde. É constituída por todos os indivíduos classificados do melhor

de reprodução baseada em sua posição nessa classificação. Dessa forma o melhor de dois indivíduos sempre terá uma maior probabilidade de fazer filhos, não importa quão pequena é a diferença entre eles (FLOREANO & MATTIUSSI, 2008).

B DIAGRAMAS DE CLASSES

Figura 19: Pacotes utilizados Fonte: Autor (2010).

Figura 20: Classes do pacote genetic Fonte: Autor (2010).

Figura 21: Sub pacotes do pacote genetic Fonte: Autor (2010).

Figura 22: Classes do pacote genetic.components Fonte: Autor (2010).

Figura 23: Classes do pacote genetic.fenotipe Fonte: Autor (2010).

Figura 24: Classes do pacote genetic.controller Fonte: Autor (2010).

Figura 25: Classes do pacote genetic.genotipe Fonte: Autor (2010).

Figura 26: Classes do pacote genetic.message

Figura 27: Classes do pacote genetic.net Fonte: Autor (2010).

Figura 28: Pacotes do pacote genetic.strategies Fonte: Autor (2010).

Figura 29: Classes do pacote genetic.strategies.recombination Fonte: Autor (2010).

Documentos relacionados