УДК 004.023
ИССЛЕДОВАНИЕ СКОРОСТИ И УСТОЙЧИВОСТИ РАБОТЫ ГА ДЛЯ МОДЕЛИ УИТЛИ С ВАРИАНТАМИ ЗНАЧИМОСТИ ЭЛИТИЗМА
Кривошей Н. С., Кобак В. Г.
Донской государственный технический университет, Ростов-на-Дону, Российская Федерация
krins.work@gmail .com valera33 305@mail .ш
Статья посвящена сравнению результатов работы модели Уитли генетического алгоритма без модификаций и с применением стратегии элитизма. В представленном исследовании для формирования элитных особей используется алгоритм критического пути. Задействован обычный элитизм предполагающий, что элитной особью является лучшая особь поколения. Было разработано программное средство, реализующее описанные алгоритмы. В поставленном эксперименте моделью Уитли решается задача распределения, которая подразумевает поиск оптимального распределения работ по процессорам с минимизацией максимального времени выполнения работ. Проведён сравнительный анализ результатов работы программы на различных наборах исходных данных. Ключевые слова: генетические алгоритмы, модель Уитли, элитизм, теория расписаний, алгоритм критического пути, КР-полные задачи, однородная минимаксная задача.
UDC 004.023
STUDY OF SPEED AND STABILITY OF GA FOR THE WHITLEY MODEL WITH ELITISM MEANING VARIANTS
Krivoshey N. S., Kobak V. G.
Don State Technical University, Rostov-on-Don, Russian Federation
[email protected] valera33 305@mail .ru
The article presents comparison of the work of the genetic algorithm (Whitley model) without modifications and with the application of the elitism strategy. In this study the critical path method is used for the forming of elite individuals. Usual elitism is used, where an elite individual is supposed to be the best individual of the generation. A software tool with the described algorithms was developed. In the experiment Whitley model solves the distribution problem, which involves finding the optimal distribution on the processors with minimization of the maximum work execution time. A comparative analysis of the results with different sets of input data is conducted.
Keywords: genetic algorithms, Whitley model, elitism, scheduling theory, critical path method, NP-complete problems, homogeneous minimax problem.
Введение. Необходимость решения задач поиска наилучшего распределения заданий между процессорами определяется возможностью существенной экономии машинного времени. Теоретическая сложность выявления наилучшего распределения нагрузки по устройствам напрямую связана с решением экстремальных задач комбинаторного типа, которые требуют большого объёма вычислительных мощностей и ресурсов. Генетические алгоритмы (ГА), моделирующие эволюционные процессы, являются достаточно перспективным методом решения подобных задач [1]. ГА — это эвристический алгоритм, используемый для решения различных задач оптимизации и моделирования путём последовательного подбора и вариативного комбинирования параметров с применением механизмов, напоминающих биологическую эволюцию. Применение стратегии элитизма при работе генетического алгоритма позволяет дополнительно увеличить скорость схождения алгоритма и, во многих случаях, точность решения [2]. Элитизм подразумевает, что одна или несколько особей текущего поколения переходят в
I \QQ/ *
следующее, не подвергаясь каким-либо изменениям, в отличие от всех остальных особей. Обычно в качестве элитной особи выбирается особь с наилучшим значением целевой функции, а модификации алгоритма с применением других способов формирования элит изучены мало. Изучение стратегии элитизма является актуальной задачей, так как её использование может привести к противоречивым результатам в силу вероятности обнаружения решения в локальном экстремуме, и, в то же время, может существенно уменьшить время поиска при оптимальном результате.
Постановка задачи. В вычислительную систему из N одинаковых независимых приборов: P = [p1, p2, ■■■, pn} подаётся список M независимых параллельных заданий: T = [tj, t2,—, tm}. Известно время решения r(t;) каждого задания tj. При этом каждое из заданий может быть выполнено на любом приборе. В каждый момент времени один процессор обслуживает только одно задание, выполнение задания не прерывается и не передаётся на другой процессор. Необходимо найти такое распределение заданий по процессорам, при котором будет минимальным суммарное время выполнения всех заданий на каждом из этих процессоров. За решение принимается максимальная из полученных сумм.
Для решения такой задачи хорошо подходят генетические алгоритмы [1, 3]. В данном исследовании рассмотрено решение задачи с помощью трёх вариантов модели, описанной Д. Уитли: без использования элитизма; с использованием обычного элитизма, когда элитной полагается особь из случайно сформированных с изначально лучшей приспособленностью; с формированием элитных особей алгоритмом критического пути. Задача решается при различных наборах значений параметров M, N и при постоянном диапазоне времени выполнения заданий.
Краткое описание алгоритмов. Рассматриваемый в данной статье генетический алгоритм был описан Уитли (D. Whitley) [4]. Он обладает следующими свойствами, отличающими его от классического ГА:
• На каждой итерации одна пара случайно выбранных особей производит одного потомка.
• Данный потомок заменяет не родительскую особь, а одну из самых худших особей популяции (изначально — самую худшую).
• Отбор особи, подлежащей замене, производится не по приспособленности, а по ее ранку (рейтингу).
Таким образом, алгоритм включает следующие шаги:
1. Формирование начального поколения;
2. Пропорциональный отбор
3. Применение генетических операторов (в данной модификации одноточечный кроссовер и одноточечная мутация);
4. Проверка условия останова алгоритма (при отрицательной поверке переход алгоритма на
шаг 2);
5. Лучшая особь — решение.
В вариантах с элитизмом перед каждым отбором пересчитывается приспособленность каждой особи, перевыбирается элита — лучшая особь текущего поколения, которая переходит в следующее поколение без каких-либо изменений, она не участвует в селекции и последующем скрещивании [5].
Принцип действия алгоритма критического пути, который применяется в одном из вариантов реализации модели Уитли, заключается в том, что каждое очередное задание из упорядоченного по убыванию списка заданий, назначается на процессор с минимальной суммарной загрузкой — общим временем выполнения распределённых заданий.
I \QQ/ *
Результаты исследования. Аналитически сделать вывод об эффективности алгоритмов нельзя. Поэтому был поставлен вычислительный эксперимент при помощи программного средства, разработанного специально для этой задачи на языке C++ в среде Microsoft Visual Studio 2012.
Эксперимент проведён на 100 различных матрицах исходных данных. Элементы M генерируется случайным образом из диапазона [20-30]. Вероятности генетических операторов равны 100 %. Условием останова является количество поколений, в которых последовательно не происходило изменение Tmax, равное 10. Эксперимент был поставлен для наиболее распространённого количества процессоров (N) — 2-4. Среднее Tmax рассчитано на 100 повторений алгоритма. Результаты эксперимента приведены в таблице 1.
Таблица 1
Средние значения Tmax
М N Без элиты Элита — лучшая особь поколения Элита — лучшая особь по
результатам CPM
Tmaxm t, c Tmaxm t, c Tmaxm t, c
23 2 250,51 0,009 246,25 0,006 247,25 0,006
3 171,25 0,009 171,50 0,009 168,15 0,006
4 125,50 0,009 125,10 0,009 125,25 0,009
113 2 1531,65 0,030 1524,60 0,036 1527,05 0,032
3 1021,25 0,079 1019,15 0,080 1019,09 0,079
4 775,37 0,050 771,46 0,048 770,10 0,040
523 2 5532,12 0,255 5523,59 0,238 5519,05 0,218
3 4420,66 0,204 4418,90 0,201 4416,20 0,166
4 3334,51 0,208 3325,09 0,198 3321,04 0,135
Заключение. По результатам эксперимента видно, что на данном наборе исходных данных модель Уитли с элитизмом позволяет получить более оптимальные результаты как по среднему значению минимаксного критерия, так и по временным затратам, по сравнению с моделью алгоритма без элитизма. При увеличении количества работ в исходной матрице заданий лучшие средние показатели приходятся на алгоритм с использованием метода критического пути для формирования элитных особей.
Библиографический список.
1. Гладков, Л. А. Генетические алгоритмы / Л. А. Гладков, В. В. Курейчик, В. М. Курейчик. — Москва : Физматлит, 2006. — 320 с.
2. Чернышев, Ю. О. Адаптивный генетический алгоритм для решения задач оптимизации на основе стратегии элитизма / Ю. О. Чернышев, А. Ю. Полуян // Известия Южного Федерального университета. Технические науки. — 2008. — № 4 (81). — С. 36-39.
3. Алгоритмы: построение и анализ / Т. Кормен [и др.]. — Москва : Вильямс, 2013. —
1328 с.
4. Whitley, D. A genetic algorithm tutorial / Computer science department, Colorado State University. — Режим доступа: https://www.cs.colostate.edu/pubserv/pubs/Whitley-genitor-MiscPubs-tutorial.pdf (дата обращения: 22.12.2017).
5. Пантелеев, А. В. Применение эволюционных методов глобальной оптимизации в задачах оптимального управления детерминированными системами / А. В. Пантелеев. — Москва : Издательство МАИ, 2013. — 160 с.