/Study-on-Genetic-Algorithms

Standard and cooperative GAs for different problems

Primary LanguagePythonMIT LicenseMIT

Study-on-Genetic-Algorithms

This repository contains the code used to support a study on Genetic Algorithms (GAs). In particular it contains GAs implementations for problems of 4 typologies:

  • Travel Salesman Problem (TSP)
  • Knapsack problem
  • Locomotion problem
  • Symbolic Regression problem
The GAs are implemented in Python and Go languages.

TSP

TSP is the problem of finding in a fully connected graph the minimal Hamiltonian cycle.

Knapsack problem

Given a set of items, each with a value and a weight, the Knapsack problem is the problem of determining the subset of items with the maximal sum of values, and the sum of the weights below a fixed threshold.

Locomotion problem

Given a 3D model with 20 joints, that represents a human being, this problem consists in determining the movements of each joint of the model in a fixed interval of time, such that on a physics simulated environment, the model reaches the maximal distance from the starting point, without falling down.

Symbolic Regression

The symbolic regression problem is the problem of determining a function that best approximate a set of points; but unlike "classical" regression, this function has to be built combining a set of fixed primitives.