6. Выводы
Рассмотренный подход к управлению многостадийными процессами позволяет реализовать в реальном масштабе времени процедуру координации локальных цифровых регуляторов. В зависимости от размерности задачи, характера уравнений подсистем и наличия дополнительных ограничений структура матриц и трудоемкость алгоритма изменяются.
Полученные результаты с незначительными модификациями могут быть использованы при реализации схем адаптивного управления достаточно широким классом многосвязных детерминированных и стохастических систем.
Литература: 1. БодянскийЕ.В., Удовенко С.Г. Субоптимальное управление стохастическими процессами. X.: Основа, 1997. 140с. 2. Kulhavy R. Recursive bayesian estimation under memory limitation // Kybernetika. 1990. v 26, №1. P.1—
УДК 51: 330.115
О ВЫЧИСЛИТЕЛЬНОЙ СЛОЖНОСТИ СОСТАВЛЕНИЯ НЕПРЕРЫВНОГО РАСПИСАНИЯ ЗАДАЧИ ДЖОНСОНА
ПАНИШЕВА.В, СКРИПИШ И.В,ФАСТОВЕЦВ.И.
Приводится доказательство NP- полноты задачи трех станков при включении в условие задачи требования, запрещающего прерывание работы каждого станка.
При решении задач упорядочения работ в многопроцессорных системах основная про блема заключается в нахождении быстрых или эффективных алгоритмов оптимизации целевых функционалов.
Понятие эффективности алгоритма неразрывно связано с его “сложностью”. Под сложностью алгоритма понимают максимальное число элементарных операций, которые он должен выполнить при решении задачи размерности n в худшем случае.
Сложность можно задать функцией fa(n), которая входной последовательности длины n ставит в соответствие максимальное время, затрачиваемое алгоритмом на решение задачи.
Алгоритм называют полиномиальным, если f(n) растет быстрее, чем некоторый полином Pk(n) от переменной n фиксированной степени к, что обозначают f(n)=0(Pk(n)). Каждый полиномиальный алгоритм имеет свои коэффициенты Pk(n). Понятие временной сложности присуще только алгоритму и не зависит от реализующей программы.
Эффективным называют полиномиальный алгоритм. Мерой его эффективности служит время и память, необходимые для решения задачи. К классу Р-полиномиально разрешимых, относятся задачи, решаемые с помощью таких алгоритмов [1]. Большинство задач теории расписаний точно может быть решено только с помощью переборных алгоритмов. Такие задачи называют труднорешаемыми, так как объем вычислений экспоненциально растет с ростом размерности задачи.
РИ, 2000, № 1
16. 3. Kyo Б. Теория и проектирование цифровых систем управления. М.: Машиностроение, 1986. 448 с. 4. О.Г. Руденко, С.Г. Удовенко, Б.В. Шамша. Разработка системы идентификации химико—технологических комплексов // В сб. “Методы и средства автоматизации процессов проектирования”, К: ИК АН УССР, 1976. С.51-56.
Поступила в редколлегию16.12 99
Рецензент: д-р физ.-мат. наук, проф. Яковлев С.В.
Удовенко Сергей Григорьевич, канд. техн. наук, доцент кафедры ЭВМ ХТУРЭ. Научные интересы: теория адаптивных систем. Увлечения: иностранные языки, поэзия. Адрес: 310726, Украина, Харьков, пр. Ленина, 14, тел. 40-93-54.
Кирияк Роман Дмитриевич, инженер кафедры ЭВМ ХТУРЭ. Научные интересы: идентификация стохастических систем. Увлечения: компьютеры, Internet. Адрес: 310202, Украина, Харьков, пр. Л. Свободы, 35в, тел. 36-41-20.
Основным направлением в теории расписаний является поиск именно эффективных алгоритмов. Это объясняется прикладным характером задач, диктуемых современным производством и требующих получения ответа в жестком режиме “реального времени“.
Особое значение приобретает вопрос о том, является ли принципиально возможным получение полиномиально точного алгоритма решения задачи.
Использование теории сложности вычислений позволяет отличить полиномиально разрешимые задачи от переборных (трудноразрешимых). Основным в теории сложности является понятие NP-полноты.
Теория NP-полноты - важный инструмент для исследования моделей теории расписаний. Задача NP-полна, если ее невозможно решить никаким известным детерминированным алгоритмом за полиномиальное время [6]. Под детерминированным понимается такой алгоритм, в котором для любого состояния существует не более одного вполне определенного следующего состояния.
Задачи, которые можно решить за полиномиальное время с помощью недетерминированного алгоритма, образуют класс P. Он содержится в классе NP.
Предполагается, что если существует детерминированный полиномиальный алгоритм для какой-либо одной NP-полной задачи, то и все задачи этого класса будут полиномиально решены этим алгоритмом.
Для отдельных NP-полных задач, в условиях которых содержатся числовые параметры, удается построить псевдополиномиальный алгоритм. Под псевдополиномиальными понимаются алгоритмы, временная сложность которых оценивается значением О(р(пВ)), где р(иВ)-величина, которая не ограничена никаким полиномом от длины входа.
Однако существует целый ряд задач, решение которых не может быть получено даже псевдополиномиальным алгоритмом. Их называют NP-полными в сильном смысле.
К числу NP-полных относятся многие классические задачи исследования операций. Многие из задач
49
составления расписаний в общем случае являются NP-полными. Однако для частных случаев могут быть получены полиномиальные алгоритмы.
Известно, что решение задачи трех станков, которая является модификацией задачи Джонсона, состоит из минимизации функции
, v k l
TW- max ETij + aik + Enij + aij , (1)
1<k<l<nj=1 J j=1 J J w
где n = (ii, i2, ..., in) — некоторая перестановка элементов множества {1, 2, ... , n};
у,- = a-,- -Cj- , a,, = Cj, , n= bj- -Cj.,aj, = c;,
Mj ij ij > ik 4c’ l;j ij j ;1 ч.
В общем случае с^ — целые числа, а aпринимает значения из множества неотрицательных чисел.
Задача минимизации Т (л) в пределах теории NP — полноты не может быть решена за полиномиальное время [4]. Проведем доказательство того, что включение в условие задачи трех станков требования, запрещающего прерывание работы каждого станка, оставляет задачу NP — полной.
С этой целью рассмотрим вспомогательную задачу, сформулированную в терминах распознавания свойств: существует ли такая перестановка pf = (f1,
f2,,fn) компонент (1, сі, 1), i = Гщ, что
k + Cfk ^l + Cfpk Ф l, r,lє{1,2,...,п}.;
Р(п) = max(k + cfk +Г) = 2n , (2)
1<k<n
для любых двух компонент (1, Ck , 1) и (1, Cl , 1) в Pf k + Cfk ^ l + Cfl,k ф l, k,l є {1,2,..., n}.
Очевидно, что задача (2) состоит в построении такой функции f: (1,2,...,n)^{n+1,n+2,...2n}, что для каждого элементас., l = 1,n, f(i) = i + c. +1, и все n значений функции f различны [3].
Воспользуемся следующими результатами.
Утверждение 1 [5]. Функция f существует тогда и только тогда, когда
l l _____
ЕCs <Еds = l(2n-1-1), l = 1,n-1;
s=1 s=1
E Cl =E dl = n(n -1),
l=1 l=1
где dl = 2(n-1), l = 1, n .
Пусть выполняются необходимые и достаточные условия существования f .
Утверждение 2 [5]. Задача построения функции f является NP-полной в сильном смысле.
Таким образом, вопрос нахождения перестановки pf с помощью полиномиального алгоритма остается открытым и, следовательно, относится к области NP-полных проблем [2]. Покажем, что к задаче постро-
*
ения непрерывного расписания п f минимальной
длины Т(п *) сводится задача (2).
Рассмотрим частный случай задачи (1), для которого
Еcs < i(2n-i -1), i = 1,n-1;
s=1
n
ai = b, = c, + 1,i = рФ; E ci = n(n-1).
i=1
Тогда у, = n, = 1,i = 1,n. Перестановка п = (ij,i2,...,in)
компонент (1, сі,1, сД, ...,ci=ai, i = 1, n задает допустимое расписание для частного случая трех станков, и
Т(п) = max (k + c,. +1 - k +1 + c,.).
1<k<l<n k 1
Пусть построена перестановка pf, состоящая из n компонент (1,сі, 1,ci). Рассмотрим последовательность
п0 = (0, f1, f2, . , fn), полученную присоединением
к пf слева компоненты (1,с0,1,с0), где с0 =2n. На основании утверждения 1 заключаем, что
Р(п^)= 1 + Co +1= 2п + 2,
и Co >k + Cf.,k = 1,n тогда и только тогда, когда компонента (1,с0,1,с0) занимает крайнюю левую
позицию в п 0 . Время простоя третьего станка при обработке последовательности деталей п0 равно
Т(п°) = max (k + Cf. +1 -k + Cf.) + 2,
1 °<k<1<n k 1
где cf° = 2n > k + cfk,k = 0, n;
Cf° > 1 + Cf. > 1 - k + Cf., 1 > k.
Поэтому Т(п °) = 2c° + 2 = a° + b° = 2n + 2, откуда следует, что при выполнении последовательности деталей п° третий станок с момента времени
Т(п°) работает без простоев. Но уi, ni > ° в любой из
n+1 компонент (у і, a і, п,, a i), i = 0, n , определяющих допустимое расписание для рассматриваемого
частного случая задачи трех станков. Величина Т(п °)
равна нижней границе Tmin длины оптимального по
*
быстродействию расписания п . Здесь
50
РИ, 2000, № 1
Tmin = max(y. + a. + n. + a.) = 2cq + 2.
0<i<n
Следовательно, п0 = п*, а значит п0 = п* •
Остается заметить, что при выполнении деталей в последовательности п 0 второй станок до момента завершения последней детали работает непрерывно. Действительно, в расписании п = (іі5І2,..., in) исключены простои второго станка, если
k k-1 ___
Zaij ^ai1 + Zbij,k = 1,n. j=1 j=i
В случае построения перестановки п 0 приведенные
неравенства имеют вид ak <a0,k = 1,n ,и выполняются для всех к, поскольку ak < 2n -1, a0 = 2n +1. Теперь можно утверждать, что если построено расписание п0 , то построена и перестановка п0, и наоборот, если определено решение задачи (2), то получено
расписание п 0 • Результат приведенных рассуждений представим в виде теоремы.
Теорема. Задача трех станков, содержащая требование непрерывной работ ы каждого станка до момента завершения на нем последней детали, NY-полна в сильном смысле.
Пусть сі =8, 7, 7, 4, 2, 2. Значения c удовлетворяют условиям утверждения 1. Поэтому существует функция f(i), заданная, например, так: f(1) = 1 + 8 + 1, f(2) = 2 + 4 + 1, f(3) = 3 + 7 + 1, f(4) = 4 + 7 + 1, f(5) = 5 + 2 + 1, f(6) =6+2 +1.
Ей ставится во взаимно-однозначное соответствие
перестановка пf = (f1,f4,f2,f3,f5,f6).
В соответствующей задаче трех станков
со=2п = 12, ai = bi = Сі +1, і = Дф .
Присоединив к пf слева компоненту (1 ,с, 1), получим перестановку п0 = (0, A, f4, f2, f3, f5, f6),
являющуюся решением задачи (2). Вместе с тем перестановка п 0 компонент (1, сі, 1, ci), i = 0,6 задает расписание минимальной длины в задаче трех станков, поскольку
T( п 0 ) = T . = 2с 0 + 2 = 26 .
4 Iу min 0
Из равенства
Т(п °) = max(y. + a. + n. + a.) = 2c0 + 2.
f 0<i<n .
следует, что перестановка п0 обеспечивает непрерывную работу третьего станка. Ясно, что при выбранной последовательности обработки деталей п 0 второй станок также работает без прерываний.
Литература: 1. Танаев В.С., Шкурба В.В. Введение в теорию расписаний. М: Наука, 1975. 256 с. 2. Белецкий С.А., Данильченко А.М., Панишев А.В. Перестановочный прием в задаче трех станков: Кибернетика, 1985. №2. С. 106109. 3. Lawler E.L., Lenstra J.K., Rinnoy Kan A.H. G. Recent developments in deterministic sequencing & scheduling: a survey. In: M.A.H. Dempster et al. (EDS.). Deterministic & stochastic scheduling. D.Reidel publishing Company. Amsterdam, 1982. Р. 35-73. 4. Данильченко А.М., Левченко С.Н., Панишев А.В. Приближенный алгоритм решения задачи трех станков / Автоматика и телемеханика, 1985, №7. С. 133-135. 5. ПанишевА.В., Левченко С.Н. К вопросу о построении непрерывных расписаний для двухуровневых систем // АСУ и приборы автоматики, 1986. Вып.77. С. 106-109. 6. Гэри М, Джонсон Д. Вычислительные машины и трууднорешаемые задачи. М. 1982. 416с.
Поступила в редакцию 16.01.2000
Рецензент: д-р техн. наук, проф. Евдокимов А.Г.
Панишев Анатолий Васильевич, д-р техн. наук, профессор, заведующий кафедрой информатики ХГАДТУ. Научные интересы: математическое моделирование, теория расписаний и ее применение. Адрес: Украина, 61002, ул. Петровского, 25, тел. 10-77-53.
Скрипина Ирина Валентиновна, старший преподаватель кафедры информатики ХГАДТУ. Научные интересы: математическое моделирование, теория расписаний и ее применение. Адрес: Украина, 61002, ул. Петровского, 25, тел. 10-77-53.
Фастовец Валентина Ивановна, канд. техн. наук, доцент кафедры информатики Харьковского государственного автомобильно-дорожного технического университета. Научные интересы: математическое моделирование, теория расписаний и ее применение. Адрес: Украина, 61002, ул. Петровского, 25, тел. 10-77-53.
РИ, 2000, № 1
51