eaopt

eaopt provides Go libraries for genetic algorithms, particle swarm optimization, and differential evolution.

github.com/MaxHalford/eaopt
eaopt homepage screenshot

About eaopt

eaopt is an open-source evolutionary optimization library for Go. It was previously known as gago and now covers methods beyond genetic algorithms, including particle swarm optimization, differential evolution, and OpenAI evolution strategy.

With eaopt, you can define optimization problems by implementing the Genome interface with Evaluate, Mutate, Crossover, and Clone methods. You can then configure a method such as a genetic algorithm and run optimization to minimize a fitness function. The library includes support for multiple populations with migration, speciation, and logging of population statistics. Documentation also covers models, the Slice interface, hill climbing, and simulated annealing.

It suits Go developers who need to experiment with or use evolutionary optimization methods in Go programs. It requires writing Go code to define genomes and algorithm settings.

Key features

  • Genetic algorithms with selection, crossover, and mutation
  • Particle swarm optimization for Go programs
  • Differential evolution implementation
  • OpenAI evolution strategy (OES) implementation
  • Support for multiple populations with migration and speciation
  • Logging of population statistics during optimization
Best for: Go developers who want to apply evolutionary optimization methods in their code.
Good for
  • Open-source Go library
  • Covers several evolutionary methods in one codebase
  • Includes code example for minimizing a test function
  • Supports migration, speciation, and statistics logging
Watch out for
  • Requires writing Go code to define and run optimizations

eaopt at a glance

Type
Open-source project
Pricing
Not confirmed. Check the site
Open source
Yes · Source code
Language
English
Last checked
Oct 5, 2026 · Online when checked
Listed
Oct 5, 2026

eaopt alternatives

Tools and sites you could use instead, ranked by how closely they match.

All 24 alternatives

Popular in ML Training & Optimization

Well-known listings from the same topic.

All 75

eaopt FAQ

What is eaopt?
eaopt is an evolutionary optimization library for Go, previously known as gago.
What methods does eaopt support?
It supports genetic algorithms, particle swarm optimization, differential evolution, and OpenAI evolution strategy. Documentation also lists hill climbing and simulated annealing.
How do you use eaopt for genetic algorithms?
You implement the Genome interface and configure a GA struct, then call the Minimize method. The repository includes an example that minimizes the Drop-Wave function.
Is eaopt open source?
Yes, it is distributed as an open-source repository on GitHub.
Is something wrong or out of date?

Tell us and an editor will check it.

Own this website?

Claim the listing and suggest updates yourself. An editor checks every claim first.

Claim this listing