Skip to main content

Genetic algorithm optimizer using K-Means clustering with one way ANOVA algorithms.

Project description

Genetic Optimizer

Genetic algorithm optimizer using K-Means clustering with one way ANOVA algorithms

Before:

github-small

After:

github-small

Installation:

Use the package manager pip to install genetic_optimizer.

pip install genetic_optimizer

Note:

Package require Python 3.x.x, using genetic_optimizer in Python 2.x.x projects may not work correctly. If you are not sure about your python version, try:

pip3 install genetic_optimizer

Usage

import genetic_optimizer

some_object = genetic_optimizer.Optimizer()
some_object = generate(population_size=46, chromosome_size=8, equal_chromosomes=True, initialization_method='Random', representation='Binary', saving_method='csv')

These are default options for generator, you can change them in DEFAULTS.ini file in package directory

some_object = optimize(data=None, iterations=12, shuffle_scale=0.6, variety=0.8, chromosome_weight=0.0000001)

These are default options for optimizer, you can change them in STANDARDS.conf file in package directory

Note

  • If optimizer got stuck at the beginning, that usually means that your dataframe with population to small to find appropiate parents in order to create next generations.

  • For more description, please check out project wiki.

Pros

  • There is no mutation and crossover probability. Program matches parents according to group differences and create new child, built from the most successful pairs of genes from them. That means new generations are closer to each one and every child is not worse that genetic worse parent.

  • You can play off with options to achive more precised results.

Cons

  • Fitness and parent selection process takes place recursively. If you are not using some RDD computing, program execution may be longer.

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

License

MIT

Tools

Code is mostly written in accordance with Google PEP style guide

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

genetic_optimizer-0.1.1-py3.6.egg (5.1 kB view details)

Uploaded Source

File details

Details for the file genetic_optimizer-0.1.1-py3.6.egg.

File metadata

  • Download URL: genetic_optimizer-0.1.1-py3.6.egg
  • Upload date:
  • Size: 5.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/3.6.7

File hashes

Hashes for genetic_optimizer-0.1.1-py3.6.egg
Algorithm Hash digest
SHA256 886052c45c9261fd101e48f05b1df5a5362ceecc8308d7d7b62ba6af9597f891
MD5 d2c7d070704ceb43278a1bed2e964cf5
BLAKE2b-256 44c87281203fd8159b9e59ffa6841568b1903f5271211e99c2b3a4e94e2ea810

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page