Научная статья на тему 'Задача выполнения технологически взаимосвязанных работ на параллельных машинах'

Задача выполнения технологически взаимосвязанных работ на параллельных машинах Текст научной статьи по специальности «Математика»

CC BY
66
12
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
теория расписаний / общее время завершения работ / параллельные машины / частичный порядок

Аннотация научной статьи по математике, автор научной работы — Герасименко Наталья Вадимовна

Рассматривается задача минимизации общего времени выполнения технологически взаимосвязанных работ единичной длительности на параллельных машинах. Задача является NP-трудной в сильном смысле. При фиксированном числе машин большим двух вычислительная сложность задачи неизвестна. В работе исследуется задача с тремя машинами. Проведен анализ смежных подзадач, сложность которых известна.

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

Текст научной работы на тему «Задача выполнения технологически взаимосвязанных работ на параллельных машинах»

ЗАДАЧА ВЫПОЛНЕНИЯ ТЕХНОЛОГИЧЕСКИ ВЗАИМОСВЯЗАННЫХ РАБОТ НА ПАРАЛЛЕЛЬНЫХ МАШИНАХ

Н. В. Герасименко

Институт математики им. С. Л. Соболева CО РАН 644099, Омск

УДК 519.8

Б01: 10.24411/9999-018А-2019-10004

Рассматривается задача минимизации общего времени выполнения технологически взаимосвязанных работ единичной длительности на параллельных машинах. Задача является КР-трудной в сильном смысле. При фиксированном числе машин большим двух вычислительная сложность задачи неизвестна. В работе исследуется задача с тремя машинами. Проведен анализ смежных подзадач, сложность которых известна.

Ключевые слова: теория расписаний, общее время завершения работ, параллельные машины, частичный порядок.

Введение

Задача минимизации общего времени выполнения взаимосвязанных работ является одной из важных задач дискретной оптимизации. Имеется множество параметров: длительности работ, различные виды ресурсов, директивные сроки, частичный порядок выполнения работ и так далее. В работе [1] показано, что если ширину частичного порядка ограничить константой, то при самых общих значениях остальных параметров, задача становится полиномиально или псевдополиномиально разрешимой. С другой стороны, при произвольном частичном порядке, даже в случае единичных длительностей работ и единичных объемах потребления единственного ресурса, задача остается МБ--трудной в сильном смысле [2].

Отсюда можно сделать вывод, что основная трудность решения задачи связана с видом частичного порядка. Поэтому, актуальным является исследование задачи при наличии частичного порядка и самых слабых условиях для остальных параметров. Этим условиям удовлетворяет задача Р\ргес\Стах , где Р означает, что используется система с идентичными параллельными машинами, Стах - что минимизируется общее время выполнения работ, а ргес - наличие частичного порядка. При этом в процессе выполнения каждая работа занимает только одну машину. Таким образом, в задаче Р\ргес\Стах требуется минимизировать общее время выполнения взаимосвязанных работ на параллельных машинах. Еще проще вариант задачи Р\ргес, р. = 1\Стах , когда длительности работ единичные. Но даже в этом

упрощенном варианте, задача МР--трудна в сильном смысле [2].

Особый интерес представляет случай, когда число машин ограничено. Известно [3], что задача Р2ргес, р. = 1\Стах полиномиально разрешима. Сложность задачи

Рт\ргес, р. = 1\Стах неизвестна.

В настоящей работе исследуется задача РЗргес, р. = 1|Стах . Одним из способов исследования является поиск взаимосвязей со смежными задачами. Близкой по структуре является задача разбиения на треугольники, которая является МР-трудной в сильном смысле.

В параграфе 1 приведены постановки и анализ сложности смежных задач. В параграфе 2 описана связь задачи разбиения на треугольники, задачи точного покрытия трехэлементными множествами и задачи Рз\ргвс, р^ = 1Стах .

1. Постановка задач

Имеется п работ единичной длительности, которые необходимо выполнить на трех параллельных идентичных машинах. Между некоторыми работами имеется отношения предшествования. Если I предшествует ] , то работа ] не может начать выполняться прежде, чем закончится работа I . Требуется составить расписание выполнения работ при условиях сохранения предшествования, непрерывности выполнения каждой работы, и чтобы каждая машина в любой момент времени выполняла не более одной работы. При этом срок выполнения всех работ должен быть минимальным.

Сформулируем еще две важные задачи. Первая из них - задача разбиения на треугольники. Задан граф Г = (1,и), число вершин которого V\ делится на три, то есть | = 3р для

некоторого числа р . Существует ли такое разбиение V на р непересекающихся подмножеств У1,¥2, ... ,¥р , содержащих по 3 элемента, что для каждого | = } три ребра

(л,уг2}, (л,угз} и V2,у33} принадлежат и ? Будем обозначать эту задачу (Д).

Второй является задача точного покрытия трехэлементными множествами. Задано конечное множество X , такое, что \Х\ = 3д , и семейство С трехэлементных подмножеств множества X . Верно ли, что семейство С содержит точное покрытие множества X , то есть такое подсемейство С'с С, что каждый элемент из X содержится ровно в одном элементе из C ? Обозначим эту задачу (ТП-3).

К сожалению, все попытки свести к задаче Р3ргес, р}. = 1|Стах некоторую ЫР--трудную задачу не увенчалось успехом. В нашей работе опробован подход поиска сложного подкласса задач Р3ргес, р} = 1\Стах . Схема следующая. Формулируем задачу

Р3ргес, р}- = 1\Стах (Р3) в терминах задачи Д . Сводимость это некоторая функция, которая

индивидуальной задаче из Р3 ставит в соответствие индивидуальную задачу из Д . В задаче Д получаем некоторый образ нашей задачи (рис. 1).

Рисунок 1: Образ задачи Р3 в Д

Теперь рассмотрим ЫР-трудность задачи Д . Эта ЫР-трудность осуществляется сведением задачи ТП-3 к Д [4]. Соответственно получаем образ задачи ТП-3 в множество индивидуальных задач Д , которое мы назовем ядром трудности (рис. 2).

Р:

Рисунок 2: Ядро NP-трудности задачи Л

NP-трудны не все задачи Л , но ядро это совокупность наиболее сложных задач. Если образы задачи Р3 и ТП-3 в Л пересекаются, то прообраз их пересечения даст наиболее сложные задачи Р3. Это еще не доказывает МР-трудность, но позволяет выделить подкласс перспективных для исследования задач Р3. Схема дана на рис. 3.

Рисунок 3: Подкласс перспективных для исследования задач P3 Выделим это подмножество индивидуальных задач. Сначала построим образ ТП-3 при сводимости к Л .

Теорема. Задача разбиение на треугольники трудна в сильном смысле. Доказательство [4]. Сведем МР-трудную задачу ТП-3 к задаче Л. Пусть множество х (X\ = 3ц) и семейство С его трехэлементных подмножеств образуют условие произвольной индивидуальной задачи из ТП-3. Построим граф Г = (У,и), такой, что = 3р и для

него существует искомое разбиение тогда и только тогда, когда С содержит точное покрытие.

Основными модулями рассматриваемой индивидуальной задачи из ТП-3 будут трехэлементные подмножества из С . Операция локальной замены "превращает" каждое такое подмножество Сг = {хг }е С в набор Ei, состоящий из 18 ребер, который изображен на

рис. 4. Таким образом, Г = (у,и) определяется так:

С| |С|

V = Хи{а. : 1 < ] < 9}, и = иЕг.

г=1 i=1

Рисунок 4: Компонента графа при сводимости задачи

Заметим, что только вершины из множества C могут быть инцидентны более чем одному множеству Ei . Отметим также, что V | = ¡X | + 9|С| = 3q + 9|С| , так что p = q + 3 |С |. Нетрудно видеть, что эту индивидуальную задачу Л можно построить, отправляясь от рассматриваемой индивидуальной задачи из ТП-3, за полиномиальное время.

Если c1,c2, ... ,стрехэлементные подмножества из C, которые образуют точное покрытие X , то соответствующее разбиение V = У1 У2 ... множества V определяется следующим образом. Если ci = } есть элемент точного покрытия, то из множества

Ei выбираются следующие подмножества: {аг1,аг2,хг}, {аг4,аг5,уг}, {а7,ai8,Zi}, {аг3,а6,аг9}, а если сг не является элементом точного покрытия, то из Ег выбираются подмножества: \ап ,аг2,аг3 },{аг 4 ,аг5,аг6 },{аг 7 ,а8,а9 }. Такой выбор подмножеств обеспечивает, что каждый

элемент из X содержится ровно в одном трехвершинном подмножестве рассматриваемого разбиения.

Обратно, если V = V1 ^ V2 ^... ^ Vp произвольное разбиение графа О на треугольники, то соответствующее точное покрытие получается, если выбрать те сг е С, для которых {аг 3, аг6, аг9 }= V] при некотором ], 1 < ] < р . Непосредственная проверка того, что два построенных разбиения обладают всеми нужными свойствами тривиальна.

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

Сформулируем задачу Рз\ргес, р^ = 1|Стах как задачу распознавания. На трех параллельных машинах требуется выполнить п работ единичной длительности, причем |п| = к для некоторого числа к . На множестве работ задано отношение предшествования. Существует ли расписание выполнения работ длины к при условии сохранения отношения предшествования? Заметим, что если существует расписание длины к , то в каждый момент времени выполняются три независимые работы. Таким образом, все работы разбиваются на тройки. Похожие задачи, связанные с выбором троек, рассмотрены в предыдущем параграфе. Важно исследовать связь между этими задачами.

28 "Проблемы оптимизации сложных систем - 2019"

Введем следующее соответствие между множеством всех частичных порядков и множеством неориентированных графов. Частичный порядок будем задавать графом О = (У,Е) , где V - множество вершин, а Е - множество дуг. Причем О не содержит контуров. Сопоставим частичному порядку неориентированный граф Г = (у,и), по следующему правилу. Множества вершин О и Г совпадают. Если в О вершины г и . зависимы (существует путь из одной вершины в другую), то ребро (г,.) £ и . Если вершины г и . в О независимы, то включаем ребро (г,.) в и . То есть, (г,.) е и тогда, и только тогда, когда (г,.) е и независимы в частичном порядке О . Пример такого сведения изображен на рис. 5.

Рисунок 5: Пример частичного порядка О = у,Е) и соответствующего ему графа Г = {у,и)

Утверждение 2.1. Если для графа О = (у,Ё) существует решение задачи Р3\ргее,р] = 1\Стах со значением целевой функции Стах = к, то в графе Г существует разбиение на треугольники.

Доказательство. Действительно, если Стах = к , то все уровни заполнены и в каждой

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

Обратное утверждение, что если в Г существует разбиение на треугольники, то в задаче Р3\ргес,р] = 1\Стах существует решение со значением целевой функции Стах = к показать или опровергнуть пока не удалось. Если взять разбиение на треугольники, то в графе О соответствующие тройки работ будут независимы и мы можем их уложить на одном уровне. Но требуется дополнительная проверка соблюдения частичного порядка выполнения работ разных троек.

Каждому частичному порядку О сопоставим граф Г . Тогда множеству всех частичных порядков соответствует некоторое множество неориентированных графов. Очень важным является вопрос, совпадает ли оно с множеством всех неориентированных графов. Если это так, то задача Р3\ргес, р. = 1|Стах и задача разбиение на треугольники сводятся

между собой. К сожалению, это не так. Покажем это.

Утверждение 2.2. К графу С5 (рис. 6) не сводится ни один частичный порядок.

Рисунок 6: Граф С 5 , для которого не существует соответствующего частичного порядка

Доказательство. Вершины графа Г и работы в О однозначно соответствуют друг другу. Поэтому работы будем называть по номеру вершин в графе Г . Работы (1) и (2) зависимы. Без ограничения общности, предположим, что раньше выполняется работа под номером (1) (обратный случай симметричен). Работы (3) и (2) также зависимы, но (1) и (3) не являются зависимыми, следовательно, возможен только один случай: работы под номерами (1) и (3) предшествуют работе (2), и между собой не связаны (рис. 7).

Рисунок 7: Взаимное расположение работ (1), (2) и (3)

Далее, работы (3) и (4) зависимы. Если (4)-я будет предшествовать работе (3), то работы (4) и (2) должны быть также зависимыми, что не так, следовательно возможен только один вариант, (3)-я предшествует (4)-й и независима с работами (1) и (2) (рис. 8).

Рисунок 8: Взаимное расположение работ (1), (2), (3) и (4)

Работа (5) зависима с работами (1) и (4), но работы (1) и (4) в свою очередь являются взаимно независимыми. Следовательно, возможны два варианта:

1. Обе работы, (1) и (4), предшествуют (5)-й, тогда (3)-я становится зависимой с работой (5), что не так (рис. 9).

Рисунок 9: Первый вариант расположение работы (5)

2. Работа (5) предшествует и (1)-й, и (4)-й работам, тогда получаем, что (5)-я и (2)-я должны быть зависимыми, что также не является правдой (рис. 10)

Рисунок 10: Второй вариант расположения работы (5)

Итак, получили, что к графу С 5 (рис. 6) не сводится ни один частичный порядок.

Важный вопрос: Содержит ли образ множества частичных порядков ЫР--трудную массовую подзадачу Л ? Если содержит, то Р3 тоже является ЫР-трудной.

Для ответа на этот вопрос рассмотрим доказательство ЫР-трудности задачи Л . Может оказаться, что семейство ЫР-трудных задач, Л полученных в результате сведения, пересекается с образом множества частичных порядков. Тогда это влечет ЫР-трудность нашей задачи.

В данной работе удалось показать, что это не так. Для подграфа, изображенного на рисунке 6 нет соответствующего частичного порядка. Это означает, что подкласс заведомо трудных задач Л не содержит задачи, к которым сводится частичный порядок. Покажем это.

Утверждение 2.3. Массовая подзадача, возникающая при сведении покрытия трехэлементными множествами к задаче разбиения на треугольники не пересекается с образом множества всех частичных порядков.

Доказательство. Рассмотрим подграф графа, изображенного на рис. 4 (рис. 11).

Рисунок 11: Подграф графа О

Работы А, В и С независимы. Без ограничения общности, в силу симметричности, можно считать, что X, У и 2 связаны следующим отношением предшествования (рис. 12).

Рисунок 12. Зависимость работX, У и 2

а , в и у также образуют цепь, но порядок работ в ней не определен. Рассмотрим множества работ {X ,У, 2} и {а, в, у}. Необходимо ориентировать дуги в следующем подграфе (рис. 13).

Рисунок 13: Связь работ множества {X У, Z, а, в, у} Пары {X а} , {У, в} и {Д у} должны быть независимы. При попытке ориентировать

дуги, получаем следующее:

X ^ у , так как иначе у ^ 2 ; У ^ у, так как иначе у ^ 2 ;

X ^ в , так как иначе в ^ У; а ^ У , так как иначе X ^ а ;

а ^ 2, так как иначе X ^ а; в ^ 2 , так как иначе У ^ в;

в ^ У, так как иначе у ^ 2 ; а ^ в , так как иначе в ^ У.

При удалении транзитивных дуг, получаем следующий частичный порядок (рис. 14)

Теперь рассмотрим работы А , В и С . Они независимы. Работа А связана с работой в . Возможно два случая: если в ^ А , то из полученного частичного порядка (рис. 14) получим а ^ А , что противоречит исходному графу (рис. 11). Значит А ^ в . С другой стороны, работа С связана с работой в . Здесь так же возможно два случая: если С ^ в, то из полученного частичного порядка (рис. 14) С ^ у , что противоречит исходному графу (рис. 11). Значит в ^ С , а это в свою очередь противоречит тому, что А ^ в , так как работы А и С должны быть независимыми. Получили что для подграфа графа, изображенного на рисунке 4, не существует соответствующего частичного порядка. Следовательно, и для всего графа так же не существует частичного порядка. Утверждение доказано.

Итак, образы Р3 и ТП-3 в А не пересекаются, что проиллюстрировано на рисунке 15. С помощью такого подхода не удалось выделить семейство сложных примеров в Р3, что косвенно говорит о том, что задача не является ЫР--трудной.

Рисунок 14: Итоговый частичный порядок работ {X, У, 2, а, в, у}

Рисунок 15: Образ задач P3 и ТП-3 в А

Заключение

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

Список литературы

1. Сервах В.В. Эффективно разрешимый случай задачи календарного планирования с

возобновимыми ресурсами // Дискретный анализ и исследование операций, Сер.2, 2000.

- Т. 7, N. 1. - С. 75-82.

2. Ulman J.D. NP-complete scheduling problems. J.Comput. And Syst.Sci., 1975. - V. 10,

N 3 - P. 384-393.

3. Goffman E.G., Graham R.L. Optimal scheduling for two processor systems. Acta Informal.

1972. - 1(3) - P. 200-213.

4. Rinnooy Kan, Lenstra J.K. Complexity of scheduling under precedence constraints // Oper.

Res. 1978. - 26. - P. 22-35.

Герасименко Наталья Вадимовна - аспирант Института математики им. С. Л. Соболева СО РАН;

email: nati@fto.com.ru

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