Сравнительный анализ критериев эффективности при решении неоднородной минимаксной задачи списочным алгоритмом
Автор: Кобак Валерий Григорьевич, Муратов Михаил Александрович
Журнал: Вестник Донского государственного технического университета @vestnik-donstu
Рубрика: Краткие сообщения
Статья в выпуске: 7 (58) т.11, 2011 года.
Бесплатный доступ
Рассмотрен списочный алгоритм В.Н. Плотникова - В.Ю. Зверева. Использованы минимаксный, квадратичный и кубический критерии. Разработаны программные средства для анализа эффективности критериев.
Списочные алгоритмы, минимаксный, квадратичный, кубический критерии
Короткий адрес: https://sciup.org/14249657
IDR: 14249657
Текст краткого сообщения Сравнительный анализ критериев эффективности при решении неоднородной минимаксной задачи списочным алгоритмом
Введение. В последние годы все более широкое распространение получают многопроцессорные, многомашинные вычислительные комплексы, территориальное распределенные с различным программно-аппаратными платформами, объединённые в единую вычислительную систему. Необходимость поиска наилучшего распределения заданий определяется существенными возможностями экономии машинного времени. Теоретическая сложность нахождения наилучшего распределения связана с решением экстремальных задач комбинаторного типа, требующих больших вычислительных ресурсов.
Планирование выполнения функциональных операторов вычислительной системой. Имеется вычислительная система, состоящая из N несвязанных устройств (процессоров) P = { P 1 ,P 2 ,-, P n } . На обработку поступает M - множество независимых параллельных заданий (работ, операторов) T = { t 1 , t 2 ,...,t m } , известно время решения т ( t , p j ) каждого задания tt на устройстве pj – матрица Ττ . Устройства неоднородны, но каждое задание может выполняться на любом устройстве, время выполнения определяется значением т ( tp ) . Если задание не может быть выполнено на каком-либо из обслуживающих устройств совсем, то это устройство с избирательными свойствами и время выполнения задачи на этом устройстве определено как т ( tp ) = да [1]. В каждый момент времени отдельный процессор обрабатывает не более одного задания и выполнение задания не прерывается для передачи на другой процессор. Требуется найти такое распределение заданий по процессорам, при котором суммарное время выполнения заданий на каждом из процессоров было бы минимальным.
Алгоритм В.Н. Плотникова – В.Ю. Зверева. При решении распределительной задачи эффективность полученного решения зависит от выбора алгоритма, который должен наилучшим образом учитывать структуру и характеристики вычислительных устройств. Широкое распространение получили простые и достаточно эффективные списочные расписания, основанные на эвристических алгоритмах. Среди таких алгоритмов можно выделить алгоритм, предложенный В.Н. Плотниковым и В.Ю. Зверевым. Это приближенный метод для поиска близкого к оптимальному решению использующий критерий минимакса.
-
1. Упорядочим строки матрицы Τ τ по убыванию сумм всех элементов строки nn n
-
2. В преобразованной матрице Т т выделим первую строку i =1 и найдем в ней min ( T ( 1 1 p j )) - минимальный элемент. Примем этот элемент за элемент распределения и прибавим его к соответствующему элементу второй строки min ( T ( 1 1 p j )) + ( т ( t 2 p j )) .
-
3. Вторая строка теперь учитывает предыдущее решение. Выберем из нее минимальный min ( T ( t 2 p j )) ,прибавим его к соответствующему элементу третьей строки min ( T ( 1 2 p j )) + ( т ( t 3 p j ))
-
4. На выполнение назначается минимальный элемент строки min (T"( t i p )) , такой что min( T ( tp )) # 0 .
∑ (т( t i Pj)) > ∑ (Т(t2Pj )) > ->^ (т(tmpj)). Этим достигается распределение на первых этапах j=i j=i j=i алгоритмов с большим временем счета и более равномерная загрузка ими вычислительных машин.
и т.д., получим матрицу Т т .
Данный алгоритм применяется для неоднородной вычислительной системы, т. е. тогда когда время выполнения одного и того же задания может отличаться на разных вычислительных устройствах. Алгоритм отличается наибольшим по сравнению с точными быстродействием, простотой и позволяет получить приемлемые по точности решения [2].
Адаптация алгоритма В.Н. Плотникова – В.Ю. Зверева к квадратичному критерию.
-
1. Упорядочим строки матрицы Т т по убыванию сумм всех элементов строки nn n
-
2. Объявим строку в - строкой текущего состояния.
-
3. Для каждого элемента столбца посчитаем квадратичный критерий ^= £ ( в+Н 1 i p j ) ) ) .
-
4. К строке в добавим элемент строки ( т ( 1 1 pj )) такой, что ц i минимально.
-
5. Повторить последовательно для всех строк матрицы.
2 ( т ( 1 i p j )) > 2 ( Т ( 1 2 p j )) > - > 2 ( т ( t m pj )) . Этим достигается распределение на первых этапах j = 1 j = 1 j = 1
алгоритмов с большим временем счета и более равномерная загрузка ими вычислительных машин.
Адаптация алгоритма В.Н. Плотникова – В.Ю. Зверева к кубическому критерию.
Упорядочим строки матрицы Т т по убыванию сумм всех элементов строки
2(т(11 pj)) > 2(т(12pj))> ->2(т(tmp^ . Этим достигается распределение на первых эта-j=i j=i j=i пах алгоритмов с большим временем счета и более равномерная загрузка ими вычислительных машин.
-
1. Объявим строку в - строкой текущего состояния.
-
2. Для каждого элемента столбца посчитаем кубический критерий ц i = 2 ( в + ( т ( 1 1 p j ) ) ) •
-
3. К строке в добавим элемент строки ( т ( 1 1 pj )) такой, что ц i минимально.
-
4. Повторить последовательно для всех строк матрицы [3].
Пример решения по трем критериям. Приведем пример решения задачи с использованием минимаксного критерия на примере следующей матрицы (заранее упорядоченной). Квадратными скобками [х] будем выделять распределенные элементы.
24 |
14 |
22 |
24 |
[14] |
22 |
||
9 |
22 |
24 |
[9] |
22 |
24 |
||
T ' = |
6 |
23 |
14 |
T ' = |
6 |
23 |
[14] |
19 |
13 |
9 |
19 |
13 |
[9] |
||
6 |
1 |
10 |
[6] |
1 |
10 |
Используя минимаксный критерий, получаем распределение (15, 14, 23); теперь использу-
24 |
[14] |
22 |
13824 |
[2744] |
10648 |
|
[9] |
22 |
24 |
[3473] |
46656 |
16568 |
|
[6] |
23 |
14 |
Z ' = |
[6119] |
51382 |
6217 |
19 |
13 |
[9] |
42048 |
23058 |
[6848] |
|
6 |
[1] |
10 |
12734 |
[7479] |
12978 |
На приведенной матрице Z ' , в правой части представлен подсчет кубического критерия. Используя кубический критерий, получаем следующее распределение (15, 15, 9).
Так как алгоритм, предложенный В.Н. Плотниковым и В.Ю. Зверевым, использует минимаксный критерий, а авторы предлагают использовать кубический и квадратичный критерий, необходимо определить, какой критерий даст более приемлемый результат. Аналитически доказать, какой лучше критерий, авторам не удалось. Поэтому для ответа на данный вопрос были проведены вычислительные эксперименты при размерностях задачи из интервала [25, 30]. Минимальное количество экспериментов по каждой размерности равнялось 1000. Результат представлен в табл.1.
Таблица 1
Сравнение кубического, квадратичного и минимаксного критерия
Наименование/nxm |
2x31 |
3x31 |
4x31 |
2x131 |
3x131 |
4x131 |
2x531 |
3x531 |
4x531 |
Средний t max по куб. крит. |
415 |
289 |
214 |
1737 |
1157 |
858 |
6999 |
4613 |
3421 |
Средний t max по минимак. крит. |
418 |
291 |
215 |
1750 |
1181 |
882 |
7130 |
4749 |
3525 |
Средний t max по квадрат. крит. |
414 |
288 |
212 |
1731 |
1151 |
853 |
6977 |
4596 |
3408 |
Для большого числа приборов результаты представлены в табл.2.
Сравнение кубического, квадратичного и минимаксного критерия
Таблица 2
Наименование/nxm |
7x31 |
8x31 |
9x31 |
7x131 |
8x131 |
9x131 |
7x531 |
8x531 |
9x531 |
Средний t max по куб. крит. |
128 |
104 |
102 |
491 |
438 |
388 |
1949 |
1705 |
1522 |
Средний t max по минимак. крит. |
129 |
107 |
102 |
500 |
442 |
391 |
2029 |
1773 |
1566 |
Средний t max по квадрат. крит. |
128 |
104 |
101 |
488 |
434 |
385 |
1938 |
1702 |
1498 |
Выводы. Для алгоритма В.Н. Плотникова – В.Ю. Зверева наиболее приемлемым критерием является квадратичный, так как применение его дает лучшие результаты. Преимуществом данного критерия является то, что при увеличении размерности задачи применение квадратичного критерия приводит к получению результатов на порядок лучше, чем минимаксный и более предпочтительный, чем кубический.
Список литературы Сравнительный анализ критериев эффективности при решении неоднородной минимаксной задачи списочным алгоритмом
- Алексеев О.Т. Комплексное применение методов дискретной оптимизации/О.Т. Алексеев. -М.: Наука, 1987.
- Плотников В.Н. Техническая кибернетика/В.Н. Плотников, В.Ю. Зверев.-1974. -№3.
- Кобак В.Г. Использование алгоритма В.Н. Плотникова -В.Ю. Зверева по кубическому критерию для решения неоднородных задач/В.Г. Кобак, М.А. Муратов//ММТТ-24. -2011.