Skip to content

Простая реализация генетического алгоритма на примере решения диофантового уравнения

Notifications You must be signed in to change notification settings

njspok/simple-genetic-algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Простая реализация генетического алгоритма

| Слава Джону Холланду!

На примере решения диофантового уравнения Ax + By + Cz + Dw = E. Где коэффициенты A, B, C, D, E заданы, a (x,y,z,w) требуется найти.

Цикл скрещивания - Evolution:

  • создание новой популяции
  • проверяем, а не посчастливилось ли нам случайно найти решения
  • скрещивание с выведением нового поколения и мутациями
  • проверка на подходящие решения
  • отбор наилучших вариантов для следующего скрещивания

Запуск

# go run main.go
> 1×x + 2×y + 3×z + 4×w = 30
> Solve 1: [3 0 1 6]
> Generations:  3

Тесты

# go test ./domain -cover   
> ok      github.com/njspok/simple-genetic-algorithm/domain       0.010s  coverage: 97.2% of statements

About

Простая реализация генетического алгоритма на примере решения диофантового уравнения

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages