УДК 681.3.681.5 Д.Г. КРАСНЫЙ
РЕШЕНИЕ МИНИМАКСНЫХ ЗАДАЧ В НЕОДНОРОДНОЙ СРЕДЕ ИЗБИРАТЕЛЬНО РАБОТАЮЩИХ УСТРОЙСТВ МОДИФИЦИРОВАННЫМ АЛГОРИТМОМ АЛЕКСЕЕВА
В работе рассматривается модификация алгоритма Алексеева для получения приближенного решения минимаксной задачи теории расписаний применительно к системе с избирательностью вычислительных узлов. Поставлены вычислительные эксперименты и проведен анализ результатов.
Ключевые слова: теория расписаний, задача планирования, списочные алгоритмы, алгоритм Алексеева, минимаксный критерий.
Введение. Актуальность работы над методами решения задач теории расписания неразрывно связана с растущей в последние годы популярностью систем обработки информации, построенных как многопроцессорные или многомашинные комплексы. Технологии параллельного программирования для многопроцессорных систем направлены на организацию выполнения параллельных операторов с вытекающими вопросами оптимизации организованной структуры по времени выполнения вычислительной системой. Постановка задачи. Пусть имеется система обслуживания, состоящая из П независимых устройств. На обработку системой поступает m независимых заданий, идентифицируемых с множеством интервалов времени на обслуживание каждого из них j (i = 1»—» m;J = 1»—»П). На устройство J может поступить на обслуживание одновременно не более одного задания i , если же tj = ¥ , то устройство обладает свойством избирательности, т.е. приборы в общем случае неидентичны. Необходимо определить такое распределение заданий по устройствам (без прерываний), чтобы время выполнения всей совокупности заданий было минимальным. Минимаксный критерий этого требования определяется в следующем виде:
Q = m ^n^J ® min, где fj = tj - общее время загрузки J -го
1- J - n iE N j
устройства [1].
Примером неоднородной системы с избирательными свойствами узлов можно считать вычислительную систему, состоящую из объединенных в единую сеть вычислительных машин разной архитектуры (x86, SPARC), работающих под управлением разных операционных систем (Windows, MacOS, Solaris). В такой системе программа, ориентированная на операционную систему Windows, не будет выполняться в Solaris или MacOS.
Алгоритмы решения минимаксной задачи. Для решения задач построения оптимальных расписаний используются как методы, позволяющие получить точное решение, так и методы приближенного решения, основанные на эвристических алгоритмах. Методы поиска приближенного решения характеризуются линейной зависимостью времени счета от размерности задачи [2] однако они не гарантируют получение оптимального расписания, поэтому от них требуют хотя бы приемлемого по точности решения. Расписания, построенные точными методами, являются оптималь-
ными, но NP полнота задачи приводит к неприемлемому времени построения расписания, а при больших размерностях оптимальное решение задачи может оказаться недостижимым. Среди точных алгоритмов можно выделить алгоритм Алексеева [3], который применяется для систем с неоднородными или с однородными устройствами и может быть адаптирован для системы с избирательностью устройств.
Процесс поиска оптимального решения алгоритмом Алексеева заключается в движении по вершинам дерева вариантов распределения заданий. Дерево состоит из (т + 1) уровней. Символ z - определяет уровень, на котором формируется П вариантов распределения задания, для чего последовательно принимается г е N7!, (¡=1,...,п), Nzj - построенное распределение до уровня г . На каждом уровне полученные варианты распределения оцениваются с помощью выражений:
1 т
Т0 — тах{— I тг ;тах Т г} - начальная нижняя граница,
П г — 1 г + 1< г< т
где Т г — ;
1и{Г ;Т!;тах1:},
где
т;
Тг определяется
как
Т г —
Г
1( г
г — г + 1
/
ге N1
при
г- - определяет нижнюю границу варианта котором г -е требование назначено на
распределения,
7 -й прибор.
В качестве активной вершины для ветвления на уровне ! выбирается вершина, соответствующая варианту с наименьшей оценкой
Тгр — т-П^7' . Остальные вершины текущего уровня г концевые.
Первые г < т заданий распределяются по устройствам и для 7 -го устройства рассчитываются Т- - частичные загрузки, для т - г заданий определение устройств обслуживания выполняется по схеме: Г — П при г < т - п , иначе Г — т - 1.
Алгоритм Алексеева на первом этапе решения позволяет получить приближенное решение, которое принимается за базовое и уточняется изменением вершин для обхода дерева на предыдущем уровне г . Полученное решение оптимально, если дерево вариантов не имеет концевых вер-
шин с оценками Тг- < Т
где
Т — тах Тт
1< -< п
- значение оценочной
функции полученного решения. В противном случае производится ветвление из вершин, отвечающих неравенству Т < Т [2].
Анализ структуры оценочной функции, определяющей направление решения в алгоритме Алексеева и учитывающей веса элементов, которые будут распределяться после текущего, позволяет предположить, что решение, полученное на первом этапе, может быть приемлемым. Основываясь на данном предположении, модифицируем алгоритм для получения приближенного решения задачи с избирательностью устройств для уменьшения времени поиска решения алгоритмом Алексеева.
Модификации алгоритма Алексеева. На основе алгоритма Алексеева сделаем модификации, позволяющие учитывать особенности вычислительной системы, такие как избирательность устройств и независимость заданий. Для этого сформулируем альтернативную постановку задачи.
Задана система, состоящая П независимых устройств, т независимых заданий, для каждого г задания на 7 устройстве выполняется условие > О или — ¥ . Необходимо построить приемлемое по точности расписание, удовлетворяющее минимаксному критерию и время построения которого характеризовалось бы линейной зависимостью.
1. В качестве первой модификации будем использовать шаги исходного алгоритма Алексеева, но только этап получения приближенного решения, не уточняя полученное решение дополнительными итерациями.
2. Вторая модификация: введем вектор V, элементы которого
П
определятся следующим образом: V — I Xг — 1-т, где FC -
7 — 1
функция, возвращает 1, если ^ — ¥ , иначе 0. Упорядочим элементы вектора V и соответствующие г строки *-Ц в порядке убывания Vг и
П
I * у ,г— 1"т . Полученную матрицу определим как * -1 и будем ис-
7 — 1
пользовать при выполнении шагов исходного алгоритма Алексеева неитерационной части.
Проведение экспериментов и результаты. При решении задач большой размерности точное решение в условиях текущей производительности может быть получено за недостижимое время. Поэтому для систем большой размерности, чтобы получить решение, остается возможным использование приближенных алгоритмов. По причине невозможности оценить отклонения решений приближенными алгоритмами при больших размерностях используем размерность, для которой можно построить точное решение. Эксперименты: п [2,3,4] независимых устройств,
т [12,...48] независимых заданий, X 7 [5..50], Х77 [15..40], при этом
случайным образом назначаются элементы х7- — ¥ . Каждый сгенерированный эксперимент решается модифицированными алгоритмами Алексеева (1, 2), эталонным алгоритмом Алексеева (Э), для получения оптимального расписания, и модифицированным алгоритмом Плотникова-Зверева (ПЗ) [4]. Итоги экспериментов представлены на рис.1-4. По данным экспериментов можно проанализировать построенные расписания и время решения модификациями алгоритмов Алексеева в сравнении с модификацией алгоритма Плотникова-Зверева.
для 3 устройств
ms
60000,00
50000.00
40000.00
30000.00
20000.00 10000,00
0,00
12 15 18 21 24 27 30 33 36 39 42 45 48
Алг. Алексеева (Э)
т
Рис.1. Время решения точным алгоритмом при tj [5..50] для 2,3,4 устройств
стю
0,15
0,10
0,05
0,00
.. -И
Л ' ...г'’" \ «Д
\ г г - * *
^ ^ Ї?5
Алг. Плотникова-Зверева —■—Алг. Алексеева 2 —Алг. Алексеева 1
Рис.2. Время решения приближенными алгоритмами при [5..50]
Чтобы оценить отклонение полученных решений от оптимального, рассчитаем усредненную пропорцию, используя пропорцию
А Q,
Алг
ср
Q,
Алг
ср
100/Qcр)- 100, и для наглядности отклонение прибли-
Алг
сР
женных решений от точного результата приведем на рис.3,4, где Q, усредненные оценки решений рассматриваемыми алгоритмами Q = Ш^П^] ® ШІП, QCРР - среднее точных решений эталонным алгоритмом Алексеева.
*
для 2,3,4 устройств
Delta Q
25.00 п
20.00 —
15.00
10.00
5,00
0,00
************
i i i i i i i i i i
м ю ^ о
1- 1- (N И
с^ооюч-г^сооэюс^оо-^осо
^^'-ММПП^т-i-Nnn
m
-♦—Алг. Плотникова-Зверева —■—Алг. Алексеева 2 а Алг. Алексеева 1
Рис.3. Отклонение решения при tj [5..50]
Delta Q
20,00
15.00
10.00 5,00
0,00
m
♦ Алг. Плотникова-Зверева —■—Алг. Алексеева 2 а Алг. Алексеева 1
для 2,3,4 устройств
Рис.4. Отклонение решения при tj [15..40]
Выводы. По данным вычислительных экспериментов можно сделать выводы об эффективности решения минимаксной задачи с избирательными свойствами приборов.
1. При всех диапазонах [5,50], [15,40] модифицированный алгоритм Алексеева 2, учитывающий количество элементов
= ¥ в сроке матрицы загрузки, дает лучшее решение, чем модифицированный алгоритм Плотникова-Зверева и модифицированный алгоритм Алексеева 1, см.рис.3,4.
2. С увеличением размерности системы П X т наблюдается улучшение решения модифицированным алгоритмом Алексеева 2 при всех диапазонах [5,50], [15,40], для всех случаев решение стремится к оптимуму (см.рис.3,4).
3. Время решения модифицированными алгоритмами Алексеева 1, 2 зависит от размерности задачи практически линейно (см. рис.2).
Библиографический список
1. Конвей Р.В. Теория расписаний / Р.В.Конвей, В.Л.Максвелл, Л.В.Миллер. - М.: Наука, 1975.
2. Головкин Б.А. Расчет характеристик и планирование параллельных вычислительных процессов / Б.А.Головкин. - М.: Радио и Связь, 1983. - 272 с.
3. Алексеев О.Т. Комплексное применение методов дискретной оптимизации / О.Т. Алексеев. - М.: Наука, 1987. - 247.
4. Нейдорф Р.А. Модификация алгоритма распределения в неод-
нородной системе обработки информации / Р.А. Нейдорф, В.Г. Кобак, Д.Г. Красный. - М.: Научное знание:
Новые реалии, 2007. Вып. 2. - 212 с.
Материал поступил в редакцию 19.11.07.
D.G. KRASNIY
THE DECISION OF MINIMAX PROBLEMS
IN THE NON-UNIFORM ENVIRONMENT OF SELECTIVELY WORKING DEVICES THE MODIFIED ALGORITHM ALEXEEVA
The present considered work modification of algorithm Alekseev for reception of the approached decision of a minimax problem of the theory of schedules is considered to system with selectivity of computing units. Keywords: the theory of schedules, a problem of planning, list of algorithm Alekseev.
КРАСНЫЙ Дмитрий Георгиевич (р.1983), аспирант ДГТУ по научной специальности 05.13.01. Окончил ДГТУ (2005).
Научные интересы: исследование алгоритмов решения задач теории расписаний для неоднородных вычислительных систем.
Автор четырех работ.