All Projects → CristianAbrante → GeneticsJS

CristianAbrante / GeneticsJS

Licence: MIT License
Evolutionary algorithms library for the web 🧬

Programming Languages

typescript
32286 projects

Projects that are alternatives of or similar to GeneticsJS

goga
Go evolutionary algorithm is a computer library for developing evolutionary and genetic algorithms to solve optimisation problems with (or not) many constraints and many objectives. Also, a goal is to handle mixed-type representations (reals and integers).
Stars: ✭ 39 (+56%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms, evolutionary-computation
datafsm
Machine Learning Finite State Machine Models from Data with Genetic Algorithms
Stars: ✭ 14 (-44%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms, evolutionary-computation
biteopt
Derivative-Free Optimization Method for Global Optimization (C++)
Stars: ✭ 91 (+264%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms, metaheuristics
Harris-Hawks-Optimization-Algorithm-and-Applications
Source codes for HHO paper: Harris hawks optimization: Algorithm and applications: https://www.sciencedirect.com/science/article/pii/S0167739X18313530. In this paper, a novel population-based, nature-inspired optimization paradigm is proposed, which is called Harris Hawks Optimizer (HHO).
Stars: ✭ 31 (+24%)
Mutual labels:  evolutionary-algorithms, evolutionary-computation, metaheuristics
tiny gp
Tiny Genetic Programming in Python
Stars: ✭ 58 (+132%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms, evolutionary-computation
zoofs
zoofs is a python library for performing feature selection using a variety of nature-inspired wrapper algorithms. The algorithms range from swarm-intelligence to physics-based to Evolutionary. It's easy to use , flexible and powerful tool to reduce your feature size.
Stars: ✭ 142 (+468%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
machine-learning-blackjack-solution
Finding an optimal Blackjack strategy using AI
Stars: ✭ 40 (+60%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
EvOLuTIoN
A simple simulation in Unity, which uses genetic algorithm to optimize forces applied to cubes
Stars: ✭ 44 (+76%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
Circle Evolution
Evolutionary Art Using Circles in Python
Stars: ✭ 237 (+848%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
triangula
Generate high-quality triangulated and polygonal art from images.
Stars: ✭ 3,775 (+15000%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
opt4j
Modular Java framework for meta-heuristic optimization
Stars: ✭ 25 (+0%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
TorchGA
Train PyTorch Models using the Genetic Algorithm with PyGAD
Stars: ✭ 47 (+88%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
evolvable
An evolutionary computation framework
Stars: ✭ 43 (+72%)
Mutual labels:  genetic-algorithm, evolutionary-computation
Ascension
A metaheuristic optimization framework
Stars: ✭ 24 (-4%)
Mutual labels:  genetic-algorithm, metaheuristics
GARI
GARI (Genetic Algorithm for Reproducing Images) reproduces a single image using Genetic Algorithm (GA) by evolving pixel values.
Stars: ✭ 41 (+64%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
neuroevolution-robots
Neuroevolution demo through TensorFlow.js, Neataptic, and Box2D
Stars: ✭ 31 (+24%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
DeepHyperNEAT
A public python implementation of the DeepHyperNEAT system for evolving neural networks. Developed by Felix Sosa and Kenneth Stanley. See paper here: https://eplex.cs.ucf.edu/papers/sosa_ugrad_report18.pdf
Stars: ✭ 42 (+68%)
Mutual labels:  genetic-algorithm, evolutionary-computation
Evolutionary Computation Course
Jupyter/IPython notebooks about evolutionary computation.
Stars: ✭ 173 (+592%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
Watchmaker
The Watchmaker Framework for Evolutionary Computation
Stars: ✭ 189 (+656%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms
geneticalgorithm2
Supported highly optimized and flexible genetic algorithm package for python
Stars: ✭ 36 (+44%)
Mutual labels:  genetic-algorithm, evolutionary-algorithms

genetics.js logo

Evolutionary algorithms library for the web.

GitHub CircleCI branch Coverage Status Open source GitHub tag (latest SemVer) Website Twitter Follow

IntroductionInstallationUsageRoadmapContributingAuthorsLicense

📚 Introduction

Evolutionary computing is one of the main techniques nowadays for solving complex optimization problems. This library provides with the basic structure for implementing the most common evolutionary algorithms, such as genetic algorithms.

drawing

Evolutionary algorithms basic structure

Evolutionary algorithms are composed basically by four elements:

  • Individuals: Represent possible solutions of our problem in a determinate search space.
  • Mutation: Mutation operator alterates one individual.
  • Recombination: Recombination operator takes two parents and creates the offspring.
  • Parent selection: Selection of the best parents that are going to be reproduced in the next generation.
  • Survivor selection: Selection of the offspring and parents that are going to be the next generation.

This framework is going to provide the most common techniques for each component.

🔧 Installation

Currently project is under development (no stable version released ⚠️), but it is going to be installed through npm:

npm install genetics-js

🧬 Usage

No major versions have been released, so only Individuals creation is implemented:

import Genetics from 'genetics-js';
const { BinaryIndividual } = Genetics.individual;

let individual = new BinaryIndividual('001100');
individual.genotype // [false, false, true, true, false, false]

🌠 Roadmap

The roadmap is strictly determined by the operations that are going to be implemented:

  • v0.1.0: Implementation of individuals.
  • v0.2.0: Implementation of mutation operators.
  • v0.3.0: Implementation of recombination operators.
  • v0.4.0: Implementation of parent selection methods.
  • v0.5.0: Implementation of survivor selection methods.
  • v0.6.0: Implementation of population and offspring management.
  • v0.7.0: Implementation of common evolutionary algorithms with fixed configurations.

👐 Contributing

You can report a bug, or request a feature with an issue:

Any help would be welcome 😄.

💪 Authors

📝 License

This project is licensed under the MIT License

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].