set_genome

Crates.ioset_genome
lib.rsset_genome
version0.6.7
sourcesrc
created_at2021-05-01 15:08:55.718113
updated_at2023-08-11 21:46:38.49449
descriptionA genetic data structure for neuroevolution algorithms.
homepagehttps://github.com/SilvanCodes/set-genome
repositoryhttps://github.com/SilvanCodes/set-genome
max_upload_size
id391921
size109,412
Silvan Büdenbender (SilvanCodes)

documentation

https://docs.rs/set_genome

README

set_genome

This crate is supposed to act as the representation/reproduction aspect in neuroevolution algorithms and may be combined with arbitrary selection mechanisms.

SET stands for Set Encoded Topology and this crate implements a genetic data structure, the Genome, using this set encoding to describe artificial neural networks (ANNs). Further this crate defines operations on this genome, namely Mutations and Crossover. Mutations alter a genome by adding or removing genes, crossover recombines two genomes. To have an intuitive definition of crossover for network structures the NEAT algorithm defined a procedure and has to be understood as a mental predecessor to this SET encoding, which very much is a formalization and progression of the ideas NEAT introduced regarding the genome. The thesis describing this genome and other ideas can be found here, a paper focusing just on the SET encoding will follow soon.

Usage

[dependencies]
set_genome = "0.1"

See the documentation more information.

Commit count: 87

cargo fmt