Skip to content

genetic algorithm in python with various examples of solving problems for the best solution.

Notifications You must be signed in to change notification settings

voronov-nikita/genetic_algorithm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Genetic_Algorithm

Что из себя представляет генетический алгорит?

Генетический алгоритм - это способ решения задачи оптимизации по нахождению наилучшего варианта из нескольких. Процесс реализации основан на "естественном отборе", где выживает сильнейшая особь, т.е наилучшее решение из представленных.

Отличительной особенностью генетического алгоритма является акцент на использование оператора «скрещивания», который производит операцию рекомбинации решений-кандидатов, роль которой аналогична роли скрещивания в живой природе.

Шаги выполнения:

  1. Создать первичных особей.

Первичные особи или начальная популяция создается случайным образом. Нам не важно, способны они конкурировать или же нет, по крайней мере, пока.

  1. Начало отбора.

Начало отбора характеризует начало сравнивания их характеристик между собой. Обычно берут две особи для сравнения их качеств.

  1. Выбор "родителей".

Данный выбор может быть основан на нескольких факторах и принципах:

1. Панмиксия - оба родителя случайны;
2. Инбридинг - оба родителя наиболее похожи друг на друга;
3. Аутбриндинг - оба родителя макисмально различны.
  1. Скрещивание.

Размножение в разных алгоритмах определяется по-разному — оно, конечно, зависит от представления данных. Главное требование к размножению — чтобы потомок или потомки имели возможность унаследовать черты обоих родителей, «смешав» их каким-либо способом.

  1. *Мутации.

Данный параметр помогает усложнить алгоритм таким образом, чтобы произошло как можно больше сравнений, что приведт к наиболее точному результату.

Суть в том, чтобы с некой вероятностью, заменить один случайный ген обьекта на противоположный (или случайный).

12.03.2023

About

genetic algorithm in python with various examples of solving problems for the best solution.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages