Раздел V. Моделирование сложных систем
УДК 681.3.681.5
Р.А. Нейдорф, А.А. Жикулин
СЕЛЕКТИВНО-ПЕРЕСТАНОВОЧНЫЙ МЕТОД ПРИБЛИЖЕННОГО РЕШЕНИЯ ОДНОРОДНОЙ РАСПРЕДЕЛИТЕЛЬНОЙ ЗАДАЧИ.
КОМБИНАЦИОННЫЕ ПЕРЕСТАНОВКИ
Предложен эффективный метод повышения точности работы селективноперестановочного алгоритма решения распределительных задач на основе комбинационных мультиперестановок и эквивалентных перестановок. Мультиперестановки позволяют обменивать сразу по несколько заданий между исполнителями с улучшением решения, а эквивалентные перестановки - модифицировать структуру решения задачи без изменения ее оценки. Этот подход расширяет область поиска рассматриваемого алгоритма, тем самым при определенных условиях увеличивая вероятность нахождения абсолютного оптимума в несколько раз. Приводятся результаты вычислительных экспериментов.
Распределительная задача; селективно-перестановочный алгоритм; одинарная перестановка; мультиперестановка; эквиперестановка.
R.A. Neidorf, A.A. Zhikulin
SELECTIVE-PERMUTATION METHOD FOR FINDING AN APPROXIMATE SOLUTION OF THE OPEN SHOP SCHEDULING PROBLEM.
COMBINATIONAL PERMUTATIONS
The effective method for improving selective-permutation algorithm precision to solve the job-shop scheduling problems based on combinational multipermutations and equivalent permutations is proposed. Multipermutations are used for improving the solution by exchanging several jobs between executors simultaneously and equivalent permutations change the solution structure saving its estimate. This approach expands the algorithm searching space what leads to increasing the probability of an absolute optimum finding in several times under certain conditions. Experimental results are presented.
Job-shop problem; selective-permutation algorithm; single permutation; multipermutation; equipermutation.
Введение. Расширение масштабов современного производства, необходимость координации совместных действий социумов и коллективов требует жесткого планирования работ, процессов, действий во всех сферах человеческой деятельности [1]. Поэтому в последние годы много внимания уделяется исследованиям в области теории расписаний, занимающейся проблемами упорядочивания. Наиболее известной в теории расписаний задачей упорядочивания является распределительная задача (РЗ), которая относится к классу NP-полных задач с экспоненциальным ростом сложности при увеличении размерности. Одной из популярных и перспективных тем исследований является повышение эффективности работы быстрых приближенных алгоритмов решения РЗ.
Общая математическая модель однородной РЗ. В данной работе рассматривается однородная РЗ, математическая модель которой выглядит следующим образом [2]. Пусть исполнительная система (ИС) состоит из m идентичных, па-
раллельно работающих исполнителей E = {e1,.,em}. На вход ИС поступает множество n независимых заданий (работ) W = {wh...,wn}, которые необходимо распределить между исполнителями. Известен ресурс выполнения каждого /-того задания , и он одинаков для любого /-ТОГО исполнителя e j . Решением однородной РЗ
является множество Dw = {W1,...,Wm}, в котором подмножества заданий Wj = {Wk \ wk eWj отвечают обязательному свойству:
m
Vj,k e [l,m] ^\jWj = W; Wj P|Wk = 0 . (1)
j=1 j^k
Запланированная вариантом D w загрузка заданиями каждого исполнителя e j оценивается ресурсом Rj, где Rj =^rk;rk :wk eWj . Наиболее распространенной оценкой решения РЗ является максимальная загрузка одного из исполнителей:
Qm = max \r. \ j =m}. (2)
R '
Критерием оптимизации в данной работе выбран «минимаксный» критерий:
Qmm = minmax{r. \ j = L,m}. (3)
E,W R w ’
Постановка задачи. Одним из наиболее эффективных и перспективных методов приближенного решения однородной РЗ является селективноперестановочный метод [2]®, который основан на улучшении уже имеющегося
допустимого решения путем выборочного обмена отдельных заданий между исполнителями.
Предложенный в работе [2] селективно-перестановочный механизм использует исключительно одинарные перестановки, но позволяет за считанное количество итераций алгоритма значительно улучшить приближенное решение РЗ. Однако с увеличением диапазона ресурсов распределяемых заданий и уменьшении отношения количества заданий к количеству исполнителей (n / m) эффективность селективно-перестановочного алгоритма (СПА) снижается [4, 5].
Поэтому в настоящей статье ставится задача алгоритмического улучшения эффективности работы селективно-перестановочного метода решения однородной РЗ за счет усложнения структуры перестановок [4, 5]. Это возможно двумя способами: использованием перестановок комбинаций нескольких заданий с улучшением критериальной оценки решения (мультиперестановки) и перестановок комбинаций нескольких заданий с сохранением критериальной оценки решения, но с изменением его структуры.
Возможности СПА при решении однородной РЗ с использованием мультиперестановок. В работе [4] авторами предложен эффективный подход по улучшению точностных характеристик СПА приближенного решения однородной РЗ на основе мультиперестановок. Этот подход заключается в том, что для улучшения исходного приближенного решения осуществляется выборочный обмен не только одиночных, но и пар, троек и т.д. заданий между исполнителями. То есть мультиперестановкой называется обмен непустых подмножеств заданий
® На возможность использования перестановок для решения РЗ указано еще в [1] со ссылкой на [3], но русскоязычные и доступные авторам англоязычные сведения о подробностях алгоритмической проработки и результатах применения этого приема не найдены. Это позволяет предположить, что автор [3] ограничился высказыванием идеи перестановок и не проводил серьезных научных исследований в этом направлении.
\м'к ,^ ...|с Wi и ^ ■■■ }сWj между ег- и в}- исполнителями, которые должны
удовлетворять условию:
К> - RJ > Е гР - Ег*> 0, (4)
где гр : еГк , ^
Перебор всех возможных мультиперестановок в исходном расписании расширяет область поиска СПА, что и повышает качество решения, увеличивает вероятность нахождения оптимального результата. Причем предложенный подход наиболее эффективен в тех случаях, когда одинарных перестановок недостаточно для получения глобального оптимума.
Для иллюстрации эффективности применения мультиперестановок в рассматриваемом алгоритме в табл. 1 приводится пример пошагового процесса улучшения приближенного решения, полученного с помощью одинарных перестановок. Исходное расписание представлено на условном 0-м шаге, где утолщенной границей выделены задания, которыми исполнители с условными номерами 1 и 5 могут обменяться с наиболее эффективным по критерию (3) улучшением решения. Поэтому на 1 -ом шаге они подвергнуты перестановке, и для удобной математической обработки исполнители результирующего расписания ранжируются по возрастанию их загрузки.
Таблица1
Оптимизация решения РЗ мультиперестановками
№ № п/п Исполнители № №» п/п Исполнители
задания 1 2 3 4 5 задания 1 2 3 4 5
1 89 90 91 93 88 1 90 91 93 87 89
2 72 66 70 70 87 2 66 70 70 72 88
0 шаг 3 57 54 54 43 41 1 шаг 3 54 54 43 43 57
4 43 35 46 30 29 4 35 46 30 41 29
5 16 25 20 5 16 25 20
Загрузка 261 261 261 261 265 Загрузка 261 261 261 263 263
1 91 93 88 90 87 1 93 72 88 90 91
2 70 70 66 89 72 2 70 70 66 89 87
2 шаг 3 54 43 57 54 43 3 шаг 3 43 54 57 54 43
4 46 30 35 29 41 4 30 46 35 29 41
5 25 16 20 5 25 20 16
Загрузка 261 261 262 262 263 Загрузка 261 262 262 262 262
Перестановка заданий на 1 -ом шаге позволила уменьшить максимальную загрузку ИС с 265 до 263. Поскольку в полученном решении имеются подмножества заданий, удовлетворяющие условию (4), то на 2-ом шаге они подвергаются мультиперестановке. Аналогичным образом процесс улучшения приближенного решения продолжается для вновь полученного расписания, и уже на 3-ем шаге алгоритм находит оптимальный результат по минимаксному критерию, что подтверждает эффективность предложенного подхода.
Однако существуют случаи, когда даже применение мультиперестановок не позволяет получить оптимальное решение и может приводить к преждевременной сходимости рассматриваемого алгоритма в локальном экстремуме. Причем найденные с помощью мультиперестановок субоптимальные решения значительно отличаются по структуре от искомых оптимумов. Поэтому в сложившейся для мультиперестановок «патовой» ситуации единственной не ухудшающим решение поэтапно является операция эквивалентной перестановки [5].
Возможности СПА при решении однородной РЗ с использованием эквиперестановок. В силу того, что для РЗ характерно наличие большого количества близких к глобальному оптимуму субоптимальных решений, существует вероятность найти такое локальное решение, которое позволит СПА улучшить данное решение с помощью одинарных или мультиперестановок и, в конечном счете, получить оптимальный результат. Поэтому в работе [5] авторами предложен эквипе-рестановочный подход, который заключается в перераспределении заданий между исполнителями с сохранением значения оптимизируемой оценки.
Эквиперестановкой называется обмен непустых подмножеств заданий
,й...}сWi и Й,й —}сWj между ег- и е}- исполнителями, которые должны удовлетворять условиям
a) з Йр е ЙЙ] й е\йк> й ■■] :гР * г/;
b) Ег'р= Ег* или ^-^= Ег'р- Е^ >0 >
р=к, /... 5=к,/... р=к, /... 5=к,/...
(З)
,\wk,wl ...} и rS :й є^к ,й •••}.
где Гр : йр е<йк > й
Представленные системой (5) условия позволяют гарантировать, что при осуществлении эквиперестановки заданий оценка исходного приближенного решения РЗ останется без изменений. При этом распределение заданий между исполнителями изменится, предоставив возможность СПА преобразовать отличное по структуре субоптимальное решение, имеющее такую же оценку, что и исходное расписание.
В табл. 2 представлен пример применения предложенного подхода для улучшения приближенного решения РЗ, для которого использование только мультиперестановок не позволяет получить оптимальный результат. На 0-ом шаге выделены задания, которыми исполнители с номерами 3 и 5 могут обменяться без ухудшения максимальной загрузки ИС. Поэтому на 1 -ом шаге выделенные задания подвергаются перестановке, что изменяет структуру решения РЗ, однако это не позволяет получить расписание, для которого можно применить улучшающее преобразование. Поэтому на 2-ом шаге осуществлена следующая эквивалентная перестановка. Новое распределение заданий является искомым субоптимальным решением, которое можно улучшить с помощью одинарной перестановки и найти оптимальный результат, что подтверждает эффективность применения эквиперестановок.
Основные этапы СПА при использовании мульти- и эквиперестановок. При использовании мульти- и эквиперестановок СПА состоит из следующих основных этапов, которые за исключением подготовительного (нулевого) этапа последовательно повторяются.
0. Получение исходного приближенного решения РЗ и преобразование его в распределительную матрицу [2] для удобной математической обработки.
1. Преобразование распределительной матрицы к каноническому виду.
II. Поэлементный параметрический сравнительный анализ ресурсов заданий исполнителей.
A. Поиск улучшающей одинарной перестановки в распределительной матрице.
B. Если улучшающая одинарная перестановка не найдена, то поиск улучшающей мультиперестановки в расширенной распределительной матрице [4].
C. Если улучшающая мультиперестановка не найдена, то поиск эквиперестановки в расширенной распределительной матрице.
III. Принятие и реализация решения либо о перестановке заданий в распределительной матрице, либо о завершении работы алгоритма.
Таблица 2
Оптимизация решения РЗ с использованием эквиперестановок
№ № п/п Исполнители № № п/п Исполнители
задания 1 2 3 4 5 задания 1 2 3 4 5
1 96 93 95 99 95 1 96 93 95 99 95
2 83 80 71 64 76 2 83 80 71 64 76
0 шаг 3 54 51 55 55 51 и Л 3 54 51 55 55 51
4 32 23 34 48 26 4 32 23 26 48 34
5 19 11 19 5 19 19 11
Загрузка 265 266 266 266 267 Загрузка 265 266 266 266 267
1 95 93 95 99 96 1 93 95 95 96 99
2 76 80 71 64 83 2 80 71 83 76 64
2 шаг 3 51 51 55 55 54 3 шаг 3 51 55 54 51 55
4 32 23 26 48 34 4 23 26 34 32 48
5 11 19 19 5 19 19 11
Загрузка 265 266 266 266 267 Загрузка 266 266 266 266 266
Исследование эффективности СПА при решении однородной РЗ с использованием мульти- и эквиперестановок. Для исследования эффективности применения мульти- и эквиперестановок в СПА проведены вычислительные эксперименты при разных значениях параметров задачи. В качестве параметров выступают: п - количество заданий, т - количество исполнителей, [г1гг2] - диапазон генерации ресурсов заданий. В ходе экспериментов случайным образом создавалось по 100 векторов ресурсов заданий в диапазоне [г1, г2\. Начальное приближение для разработанного алгоритма формируется быстрым приближенным методом критического пути (МКП) [1].
В табл. 3 приводятся поэтапные оценки эффективности последовательного применения к решению РЗ одинарных (ОП), мульти- (МП) и эквиперестановок (ЭП). В качестве параметров, характеризующих ресурсно-точностные свойства, выбраны: Ропт - доля оптимальных решений (в %), ґср - среднее выборочное времени работы алгоритма (в мс).
По результатам, приведенным в табл. 3, видно, что использование мульти- и эквиперестановок в СПА значительно увеличило точность его работы. В некоторых случаях исследуемый алгоритм нашел почти в 2 раза больше оптимальных решений, чем алгоритм с одинарными перестановками. Также необходимо отметить, что только в 2 из 900 опытов разработанный алгоритм не отыскал глобального оптимума.
Таблица 3
Влияние параметров РЗ на ресурсно-точностные характеристики СПА
т п [*1, *2] МКП ОП МП ЭП
Р Р опт 1ср Р Р опт 1ср Р Р опт 1ср Р Р опт 1ср
5 33 [35,65] 0 0.12 95 0.54 5 0.28 - -
5 33 [15,85] 0 0.13 80 0.47 20 0.41 - -
5 63 [35,65] 0 0.25 100 1.49 - - - -
5 63 [15,85] 0 0.25 100 1.13 - - - -
6 48 [25,75] 19 0.19 72 0.31 9 0.47 - -
7 33 [35,65] 0 0.12 79 0.61 7 1.37 12 2713.21
7 33 [15,85] 0 0.12 57 0.58 35 0.81 8 3.24
7 63 [35,65] 58 0.25 42 0.22 - - - -
7 63 [15,85] 21 0.26 76 0.45 3 0.71 - -
В целом, разработанный алгоритм продемонстрировал достаточно хорошие ресурсные показатели, поскольку среднее время работы в большинстве случаев не превысило 4 мс. Однако в одном из экспериментов наблюдается резкое увеличение ресурсных показателей при использовании эквиперестановок. Скорее всего, это обусловлено наличием большого количества близких к глобальному оптимуму субоптимальных решений, которое свойственно РЗ с узким диапазоном ресурсов заданий. Поэтому СПА много времени затрачивает на перебор различных по структуре решений с одинаковой оценкой по минимаксному критерию.
Выводы. Использование мульти- и эквиперестановок в СПА является эффективным методом повышения точности его работы. Причем наибольшую эффективность предложенный подход достигает при решении таких задач, которые особенно трудны для изучаемого метода. Однако использование эквиперестановок при решении РЗ с узкими интервалами ресурсов заданий иногда на порядок и, иногда, более увеличивает время работы алгоритма. Поэтому в таких случаях применение эквиперестановок нецелесообразно и требует дальнейшего изучения и улучшения.
БИБЛИОГРАФИЧЕСКИЙ СПИСОК
1. Коффман Э.Г. Теория расписания и вычислительные машины. - М., 1984.
2. Нейдорф Р.А. Селективно-перестановочный метод решения задач параллельного распределения заданий между исполнителями. Одинарные перестановки // Вестн. Донск. гос. техн. ун-та. - 2011. - № 8.
3. Krone M. Heuristic programming applied to scheduling models. - Proc. 5th Annual Princeton Conf. Inform. Sci. and Syst., 1971. - P. 193-196.
4. Нейдорф Р.А., Жикулин А.А. Исследование селективно-перестановочного метода решения однородной распределительной задачи с использованием мультиперестановок // Системный анализ, управление и обработка информации: тр. 3-го Междунар семинара. - Ростов-на-Дону: ИЦ ДГТУ, 2012. - С. 57-68.
5. Жикулин А.А. Метод повышения эффективности работы селективно-перестановочного алгоритма решения распределительных задач на основе эквивалентных перестановок // Инновация, экология и ресурсосберегающие технологии (ИнЭРТ-2012): тр. X Междунар. науч.-технич. форума. - Ростов-на-Дону: ИЦ ДГТУ, 20I2. - С. 376-381.
Статью рекомендовал к публикации д.т.н., профессор О.Ф. Ковалев.
Нейдорф Рудольф Анатольевич - Федеральное государственное автономное образовательное учреждение высшего профессионального образования «Южный федеральный университет»; e-mail: [email protected]; 347928, г. Таганрог, пер. Некрасовский, 44; тел.: +79034722292; кафедра электротехники и мехатроники; д.т.н.; профессор.
Жикулин Артем Александрович - Донской государственный технический университет в г. Ростове-на-Дону; e-mail: [email protected]; 344000, г. Ростов-на-Дону, пл. Гагарина, 1; тел.: +79604462773; кафедра программного обеспечения вычислительной техники и автоматизированных систем; аспирант.
Neidorf Rudolf Anatol’evich - Federal State-Owned Educational Establishment of Higher Vocational Education «Southern Federal University»; e-mail: [email protected]; 44, Nekrasovskiy, Taganrog, 347928, Russia; phone: +79034722292; the department of electrical engineering and mechatronics; dr. of eng. sc.; professor.
Zhikulin Artem Alexandrovich - Don State Technical University; e-mail: [email protected]; 1, Gagarin Square, Rostov-on-Don, 344000, Russia; phone: +79604462773; the department of the software of computer facilities and the automated systems; post-graduate student.