# μ8

## Genetic algorithm for machine learning. Inspired by CodeBullets amazing video on the subject.

This is a work in progress

Steps

1. Natural selection.
2. Mate.
3. Mutate babies.
4. Rinse and repeat.

### Info

• `mu8.go` `Genome` and `Gene` interface definitions. Users should implement `Genome` interface and use `Gene` implementations from `genes` package.
• `genetic` directory contains genetic algorithm implementation
• `genes` contains useful `Gene` interface implementations.

### μ8 examples

See `rocket` for a demonstration on rocket stage optimization. Below is the output of said program

``````champHeight:101.619km
champHeight:138.558km
champHeight:141.474km
champHeight:141.474km
champHeight:141.474km
champHeight:141.474km
champHeight:141.474km
champHeight:141.478km
champHeight:141.478km
champHeight:141.538km
our champion:
Stage 0: coast=135.2s, propMass=195.4kg, Δm=99.77kg/s, totalMass=395.4
Stage 1: coast=145.9s, propMass=1.2kg, Δm=0.14kg/s, totalMass=21.2
``````

### CodeBullet's example

The following command will run an example of what genetic algorithm is possible of doing. It is solving CodeBullet's proposed problem of moving points towards a goal point.

`go run ./examples/dotforces/`

`elitescore` is the fitness or "score" of the best child in the generation. As you can see it gets larger.

``````gen 10: totalfitness=1032.37, elitescore=10.24671
gen 20: totalfitness=1325.90, elitescore=11.98153
gen 30: totalfitness=1374.32, elitescore=11.98153
... ten seconds later...
gen 300: totalfitness=2169.45, elitescore=16.26937
``````

The score went from 10 to 16 with help of a genetic algorithm.

• #### Now working. Rewrite interfaces. Refactor Population.

Having generic interfaces was bringing serious cognitive load on the user so it was removed.

The library has become easier to work with and actually functional, with great results for large number of generations.

opened by soypat 0
###### Patricio Whittingslow
lapack enthusiast
###### Data structure and algorithm library for go, designed to provide functions similar to C++ STL

GoSTL English | 简体中文 Introduction GoSTL is a data structure and algorithm library for go, designed to provide functions similar to C++ STL, but more p

667 Jun 23, 2022
###### Multi-String Pattern Matching Algorithm Using TrieHashNode

Multi-String Pattern Matching algorithm. This implementation is inspired from Aho-Corasick algorithm Getting Started modelA = mspm.NewModel("mspm_mode

17 Jan 23, 2022
###### A Go implementation of the 64-bit xxHash algorithm (XXH64)

xxhash xxhash is a Go implementation of the 64-bit xxHash algorithm, XXH64. This is a high-quality hashing algorithm that is much faster than anything

1.2k Jun 30, 2022
###### golang sorting algorithm and data construction.

data-structures-questions 算法和程序结构是我们学习编程的基础，但是很多的时候，我们很多都是只是在应用，而没有深入的去研究这些，所以自己也在不断的思考和探索，然后分析，学习，总结自己学习的过程，希望可以和大家一起学习和交流下算法！ 目录 网络协议 数据结构 算法 数据库 Go

1.7k Jun 20, 2022
###### Implementation of Boyer-Moore fast string search algorithm in Go

boyermoore Implementation of Boyer-Moore fast string search algorithm in Go

49 Jun 7, 2022
###### A Go implementation of the core algorithm in paper

Boolean Expression Indexer Go library A Go implementation of the core algorithm in paper <Indexing Boolean Expression>, which already supports the fol

48 May 22, 2022
###### The simplest sorting algorithm that sorts in quadratic time

Simplest sort Showcases the simplest sorting algorithm that works in quadratic time. From here. The pseudocode for this algo can be seen below (sorts

6 May 8, 2022
1 Mar 26, 2022
###### Randomly generated tile maps using Oskar Stålberg's wave function collapse algorithm

go-wfc Procedurally-generated tile maps using wave function collapse. Demos Live demo (wasm): https://zfedoran.github.io/go-wfc-example/ Live algorith

20 Jun 21, 2022
###### Learning Golang Language In Clean Structure

Learning Golang Language In Clean Structure At this example project, I'm trying to learn Golang with Clean structure and come up with a reusable, nice

5 Jun 21, 2022
###### Finite State Machine for Go

FSM for Go FSM is a finite state machine for Go. It is heavily based on two FSM implementations: Javascript Finite State Machine, https://github.com/j

1.9k Jun 30, 2022
###### Genetic Algorithm and Particle Swarm Optimization

evoli Genetic Algorithm and Particle Swarm Optimization written in Go Example Problem Given f(x,y) = cos(x^2 * y^2) * 1/(x^2 * y^2 + 1) Find (x,y) suc

23 Jun 12, 2022
###### Golang Genetic Algorithm

goga Golang implementation of a genetic algorithm. See ./examples for info on how to use the library. Overview Goga is a genetic algorithm solution wr

164 Jun 18, 2022
###### Genetic Algorithm written in go

This genetic algorithm is designed to minimise the problem specific code from a genetic algorithm. The three interfaces Gene, Initialiser, an Evaluato

15 Feb 15, 2022
###### Eunomia is a distributed application framework that support Gossip protocol, QuorumNWR algorithm, PBFT algorithm, PoW algorithm, and ZAB protocol and so on.

Introduction Eunomia is a distributed application framework that facilitates developers to quickly develop distributed applications and supports distr

2 Sep 28, 2021
###### Genetic Algorithms library written in Go / golang

Description Genetic Algorithms for Go/Golang Install \$ go install git://github.com/thoj/go-galib.git Compiling examples: \$ git clone git://github.com

192 May 26, 2022
###### Genetic Algorithms library written in Go / golang

Description Genetic Algorithms for Go/Golang Install \$ go install git://github.com/thoj/go-galib.git Compiling examples: \$ git clone git://github.com

192 May 26, 2022
###### Cook amazing genetic parts using our cookbook. Recipes and synthetic biology tools to take your breath away.

friendzymes-cookbook Friendly tools for a friendly community. A collection of tutorials and genetic tools for synthetic biology. This cookbook is a su

6 Apr 15, 2022
###### A genetic simulator written in Go

BioGo This is a simple genetic simulator written in Go. Heavily inspired by https://github.com/davidrmiller/biosim4/tree/main/src About This project s

6 Apr 26, 2022
###### Genetic algorithms using Golang Generics

Package genetic Package genetic implements genetic algorithms using Golang's Gen

2 Jun 18, 2022
###### Go-enum-algorithm - Implement an enumeration algorithm in GO

go-enum-algorithm implement an enumeration algorithm in GO run the code go run m

1 Feb 15, 2022
###### 记录算法学习和LeetCode、LintCode、codewars的学习路程。A record of algorithm learning.

Problem List Leetcode、LintCode、Codewars Algorithm problem solution written by golang. LeetCode id Name(Github) Name(Gitee) 00001 TwoSum TwoSum 00003 L

4 Nov 3, 2021
###### This is my implementation of Raft consensus algorithm that I did for own learning.

This is my implementation of Raft consensus algorithm that I did for own learning. Please follow the link to learn more about raft consensus algorithm https://raft.github.io. And Soon, I will be developing same algorithm in Java as well

1 Jan 12, 2022
###### This is the repository for the LinkedIn Learning course Learning Go.

Learning Go This is the repository for the LinkedIn Learning course Learning Go. The full course is available from LinkedIn Learning. What is Go? Go i

0 Nov 2, 2021
###### This repository is where I'm learning to write a CLI using Go, while learning Go, and experimenting with Docker containers and APIs.

CLI Project This repository contains a CLI project that I've been working on for a while. It's a simple project that I've been utilizing to learn Go,

0 Dec 12, 2021
###### Selected Machine Learning algorithms for natural language processing and semantic analysis in Golang

Natural Language Processing Implementations of selected machine learning algorithms for natural language processing in golang. The primary focus for t

367 Jun 25, 2022
###### Machine Learning for Go

GoLearn GoLearn is a 'batteries included' machine learning library for Go. Simplicity, paired with customisability, is the goal. We are in active deve

8.4k Jun 25, 2022
###### On-line Machine Learning in Go (and so much more)

goml Golang Machine Learning, On The Wire goml is a machine learning library written entirely in Golang which lets the average developer include machi

1.3k Jun 30, 2022