Сформулируйте и докажите или опровергните следующую гипотезу: "Любую задачу расписания с фиксированным числом машин и ограничениями перестановки можно свести к задаче о минимизации суммарного штрафа и решить полиномиально, если граф зависимости задач является деревом"; опишите модель, сложность и приведите алгоритм или контрпример

5 Ноя в 13:53
3 +3
0
Ответы
1
Формулировка гипотезы (точно): «Для любого задания расписания с фиксированным числом машин mmm и требованием пермутационного порядка (или просто с предшествованиями-«перестановками») его можно свести к задаче минимизации суммарного штрафа и решить полиномиально, если граф зависимостей задач (precedence graph) является деревом».
Краткий ответ: гипотеза в этой общей форме неверна. Ниже — разбор, контрпример и краткие положительные и отрицательные результаты.
1) Модель, которую я беру для контр-примера
- mmm — фиксированное число одинаковых машин (в контрпримере возьмём m=2m=2m=2).
- Набор задач J={1,…,n}J=\{1,\dots,n\}J={1,,n} с обработками pj∈Z>0p_j\in\mathbb{Z}_{>0}pj Z>0 .
- Предшествования заданы ориентированным ацикличным графом; в контрпримере граф — дерево (конкретно: ин-дерево — все листья предшествуют корню).
- Цель: минимизировать время завершения последней задачи (makespan) Cmax⁡C_{\max}Cmax .
2) Контрпример (сведение из Partition)
Пусть дана задача Partition: даны числа a1,…,aka_1,\dots,a_ka1 ,,ak суммарно 2B2B2B. Нужно решить, можно ли разбить их на два подмножества с суммой BBB.
Построим инстанс расписания:
- Для i=1,…,ki=1,\dots,ki=1,,k создаём задачу AiA_iAi с pAi=aip_{A_i}=a_ipAi =ai .
- Создаём корневую задачу RRR с pR=1p_R=1pR =1.
- Предшествования: для каждого iii требуется Ai→RA_i \to RAi R (т. е. все AiA_iAi — предки RRR). Граф предшествований — дерево (звезда с корнем RRR).
- Машин m=2m=2m=2.
Любой расписание должно выполнить все AiA_iAi на двух машинах (в параллель), затем (после завершения всех AiA_iAi ) выполнить RRR. Пусть нагрузки (суммы времён) на две машины при выполнении AiA_iAi равны L1L_1L1 и L2L_2L2 ; пусть L=max⁡(L1,L2)L=\max(L_1,L_2)L=max(L1 ,L2 ). Тогда
Cmax⁡=max⁡(L, L+pR)=L+pR, C_{\max}= \max\bigl(L,\; L + p_R\bigr)= L + p_R,
Cmax =max(L,L+pR )=L+pR ,
поскольку RRR стартует только после завершения всех AiA_iAi . Поскольку pR=1p_R=1pR =1, существует расписание с Cmax⁡≤B+1C_{\max}\le B+1Cmax B+1 тогда и только тогда, когда существует разбиение aia_iai на два подмножества с максимальной суммы не более BBB, т. е. решение Partition. Следовательно задача P2∣prec(дерево)∣Cmax⁡\mathrm{P}_2\mid\mathrm{prec}(\text{дерево})\mid C_{\max}P2 prec(дерево)Cmax NP‑трудна (по крайней мере так же трудна, как Partition). Таким образом не может быть общего полиномиального алгоритма для всех таких задач, если P≠\ne=NP.
(Замечание: выбор pR=0p_R=0pR =0 тоже возможен в формулировках, допускающих нулевые времена; тогда Cmax⁡=LC_{\max}=LCmax =L и редукция ещё проще.)
3) Выводы и обсуждение
- Контрпример показывает: даже при фиксированном mmm (уже при m=2m=2m=2) и при том что граф предшествований — дерево, минимизация Cmax⁡C_{\max}Cmax остаётся NP‑трудной (по крайней мере слабонапряжённо через Partition). Следовательно утверждение «всегда сводится и решается полиномиально» — неверно.
- Причина: «дерево» предшествований не исключает комбинаторики распределения задач по машинам; балансировка нагрузок (Partition) остаётся подзадачей.
4) Положительные частные результаты (которые требуют дополнительных ограничений)
- Если все времена pj=1p_j=1pj =1 (единичные времена), то задача Pm∣prec(дерево)∣Cmax⁡\mathrm{P}_m\mid\mathrm{prec}(\text{дерево})\mid C_{\max}Pm prec(дерево)Cmax разрешима полиномиально (классический алгоритм Hu — level‑scheduling: размещать по уровням ориентированного дерева), получаем оптимальную длину равную высоте дерева в смысле уровней занятости.
- Для других целей или дополнительных ограничений (например, m=1m=1m=1 — одно машинное расписание, или только цепочки предшествований, или специальная структура весов/штрафов) возможны полиномиальные алгоритмы, но это сильно зависит от конкретной цели (ΣC_j, Σw_jC_j, L_max, число просроченных задач и т.п.).
- Напротив, многие стандартные объективы (минимизация Σw_jC_j, ΣU_j, L_max и т.д.) остаются NP‑трудными при довольно слабых допущениях на структуру графа.
5) Итог
Гипотеза в общей формулировке ложна. При дополнительных сильных ограничениях (единичные времена, специальные структуры целей) дерево предшествований даёт полиномиальные алгоритмы, но в общем случае даже для m=2m=2m=2 и дерева задача оптимизации (например, минимизация Cmax⁡C_{\max}Cmax ) остается NP‑трудной (контрпример через Partition).
Если нужно, могу:
- привести формальную и детальную редукцию с полным доказательством корректности и анализом сложности, или
- перечислить точные известные положительные и отрицательные теоремы по отдельным комбинациям обозначений (Graham‑style нотация) и дать ссылки на литературу.
5 Ноя в 14:17
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир