Научная статья на тему 'ОСНОВНЫЕ ВОЗМОЖНОСТИ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ'

ОСНОВНЫЕ ВОЗМОЖНОСТИ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
241
22
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ГЕНЕТИЧЕСКИЙ АЛГОРИТМ / СЛУЧАЙНЫЙ ПОИСК / ЗАДАЧА ОПТИМИЗАЦИИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Бровкина А.С., Пальмов С.В.

В статье рассмотрено понятие генетического алгоритма. Приведены достоинства и недостатки алгоритмов данного класса. Кратко описаны принципы функционирования. Также приведен пример эффективной работы упомянутого алгоритма.

i Надоели баннеры? Вы всегда можете отключить рекламу.

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Бровкина А.С., Пальмов С.В.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MAIN FEATURES OF GENETIC ALGORITHMS

The article deals with the concept of a genetic algorithm. Its advantages and disadvantages are given. The algorithm's functional principles are briefly described. An example of effective operation of the algorithm is given.

Текст научной работы на тему «ОСНОВНЫЕ ВОЗМОЖНОСТИ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ»

6) из 10 вычли цифру, полученную в пункте 5(10-10 = 0).

Вывод: итоговая цифра=0 и совпадает с контрольной цифрой на штриховом коде, следовательно товар имеет законное происхождение и его качество гарантируется.

Использованные источники:

1. Чернышева, Ю.С. Практика обеспечения качества и безопасности продовольственных товаров на современном этапе / Ю.С.Чернышева, Ж.В.Горностаева, В.Е.Жидков // Kant. 2018. № 1 (26). С. 245-250.

2. Брайловская, А.В. О способах предупреждения фальсификации парфюмерно-косметических товаров / Брайловская А.В., Чернышева Ю.С. // Наука и бизнес: Проблемы и перспективы развиия предпринимательской деятельности сборник статей международной научно-практической конференции. 2016. С. 28-31.

УДК 004.923

Бровкина А. С. студент 3 курса

факультет «Информационные системы и технологии»

Пальмов С.В., к.т.н.

доцент

кафедра «Информационные системы и технологии»

ФГБОУ ВО ПГУТИ Россия, г. Самара ОСНОВНЫЕ ВОЗМОЖНОСТИ ГЕНЕТИЧЕСКИХ АЛГОРИТМОВ

Аннотация: В статье рассмотрено понятие генетического алгоритма. Приведены достоинства и недостатки алгоритмов данного класса. Кратко описаны принципы функционирования. Также приведен пример эффективной работы упомянутого алгоритма.

Ключевые слова: генетический алгоритм, случайный поиск, задача оптимизации.

Brovkina A.S. 3rd year student

Faculty of "Information systems and technologies" Volga State University of Telecommunications and Informatics

Russia, Samara Palmov S. V.

Ph.D. of Engineering Sciences associate professor of the department "Information systems and technologies" Volga State University of Telecommunications and Informatics

Russia, Samara MAIN FEATURES OF GENETIC ALGORITHMS

Abstract: The article deals with the concept of a genetic algorithm. Its

advantages and disadvantages are given. The algorithm's functional principles are briefly described. An example of effective operation of the algorithm is given.

Keywords: genetic algorithm, random search, optimization problem.

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

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

Зачем использовать GA? Ответ прост: генетический алгоритм оперирует совокупностью особей (популяция), которые представляют собой строки, кодирующие одно из решений задачи. В отличие от GA, другие алгоритмы оптимизации работают лишь с одним решением. [1]

Генетические алгоритмы применяются для:

• Оптимизации запросов в базах данных.

• Решения задач на графах.

• Настройки и обучение нейронной сети.

• Решения задач компоновки.

• Составления расписаний.

• Разработки игровых стратегий.

• Реализации искусственной жизни и т.д.

Преимущества GA:

• Быстрее и эффективнее по сравнению с классическими методами решения оптимизационных задач.

• Имеет хорошие возможности для параллельного решения нескольких задач.

• Оптимизирует как непрерывные, так и дискретные функции.

• Предоставляет список решений, а не одно решение.

• Эффективен, когда пространство поиска очень велико.

Недостатки GA:

• Ограничение на круг решаемых задач.

• Из-за того, что GA выполняет многократные вычисления, для некоторых проблем (задач) это может оказаться дорогостоящим процессом.

• Генетический алгоритм является стохастическим (случайным), а это значит, что нет никаких гарантий, получить оптимальное или качественное решение. [2]

Основной принцип действия генетического алгоритма заключается в

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

Алгоритм делится на четыре этапа:

• Создания нового поколения

• Размножение

• Мутации

• Отбор

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

Рассмотрим каждый шаг более подробно:

Создание популяции. На первом шаге создается основная популяция. Неэффективная, как правило. Самое главное, чтобы она подходила по всем параметрам и «могла размножаться».

Размножение. На втором шаге происходит все как у человеческих особей. Для получения потомства необходимо наличие двух родителей. Потомок должен обладать чертами обоих родителей.

Мутации. На третьем шаге происходит изменение значения гена потомка на противоположное.

Отбор. На заключительном этапе производится отбор на основании некоторого критерия качества. Не прошедшие отбор особи исключаются из рассмотрения. [3]

Существует различные виды генетических алгоритмов:

• Канонический GA

• Генитор (Genitor)

• Гибридный алгоритм (Hybrid algorithms)

• CHC (Cross-population selection, Heterogeneous recombination and Cataclysmic mutation)

• GA с нефиксированным размером популяции (Genetic Algorithm with Varying Population Size - GAVaPS)

• Параллельный GA (Parallel implementations)

• Миграция (Migration)

Чтобы доказать насколько мощен генетический алгоритм, рассмотрим пример. Необходимо получить фрагмента песни «крылатые качели» из случайно сгенерированного списка букв. Общее количество символов - 14, каждый из может быть любой из 32 русского алфавита. Следовательно, вероятность получения нужно строки случайным способом равна,

(л1"1г)\4 _ о г 1 (Л~22

> ~ ' т. е. практически ноль.

Чтобы произвести кодировку фразы воспользуемся таблицей ASCII. Тогда фраза «крылатые качели» преобразуется в следующую матрицу:

[234, 240, 251, 235, 224, 242, 251, 229, 234, 224, 247, 229, 235, 232]

Далее генерируется исходная популяция из 10 случайных фраз: [238, 241, 234, 244, 252, 242, 221, 255, 234, 180, 247, 229, 232, 242] [226, 251, 239, 229, 224, 246, 247, 234, 234, 224, 225, 229, 232, 237] [247, 232, 235, 234, 244, 229, 251, 242, 253, 233, 247, 229, 243, 240]

[232, 247, 224, 229, 224, 242, 251, 229, 234, 251, 240, 235, 235, 234] После этого происходит преобразование матрицы в строки символов и получается 10 случайных фраз:

оскфьтэякгчеит выпефцчккабеин чилифеытэйчеур

ичаеатыеырллк.

Функция соответствия вычисляет число правильно отгаданных букв. Например, для строки «оскфьтэякгчеит» это 7. На заключительном этапе будут отобраны наилучшие потомки. [4]

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

Использованные источники:

1. Генетический алгоритм [Электронный ресурс] - Режим доступа: yury.name/internet/03ia-seminar-note.doc (дата обращения: 27.04.2018)

2. Genetic Algorithms - Introduction [Электронный ресурс] - Режим доступа: https://www.tutorialspoint.com/genetic_algorithms/genetic_algorithms_introducti on.htm (дата обращения: 27.04.2018)

3. Генетический алгоритм. Просто о сложном [Электронный ресурс] -Режим доступа: https://habrahabr.ru/post/128704/ (дата обращения: 27.04.2018)

4. MATLAB.Exponenta [Электронный ресурс] - Режим доступа: http : //matlab .exponenta.ru/fuzzylogic/book5/1 _2. php (дата обращения : 27.04.2018)

i Надоели баннеры? Вы всегда можете отключить рекламу.