ключается в том, что для построения параметрического пространства рассматриваются только те точки изображения, в которых направление нормали к образам линий совпадает с направлением вектора градиента линии, по которой выполняется интегрирование, в той же точке.
Обобщим теперь понятие интегрального преобразования на случай, когда известно несколько признаков образа линий на изображении Дх,у). Пусть |Б1(х,у)} - множество функций некоторых к (к<т) признаков образа линии (например, угол наклона нормали, кривизна и др.); Ь - тот же признак линии ф(х,у,а)=0 с параметрами а1,а2,...,ат в точке (х,у).
Преобразование, ставящее в соответствие изображению Дх,у) его спектр параметров по правилу
Ь(а)=^(х,у)П5[В((х,у)-Ь(№ ,
назовем производным интегральным преобразованием по кривой ф.
В этом случае мы имеем систему к уравнений
Шх,у)-Ь1(х,у;аьа2,...,ат) =0},
из которой выразим (если это возможно аналитически) к+1 параметров кривой ф: ат-к =У1(х,у;аьа2,...,ат-к-1), ат-к+1 =У2(х,у;аьа2,...,ат-к),
ат=Ук+1(х,у;аьа2,... ,ат-1).
Алгоритм преобразования сократится на к+1 циклов:
У(х,у)к(х,у)>0, Уа, (1=1,...,т-к-1),
Ь(а1,а2,.,ат)=Ь(а1,а2,.,ат)+Г(х, у^хау I ат-1 = ^к-1+1(х,у;а1,а2,.,ат-к-1) (1=к,.,0).
Назовем такой способ построением интегрального преобразования с разрешением параметров через дополнительные признаки.
В заключение отметим, что построенные способы были применены для программной реализации алгоритмов преобразований по различным линиям. Программы апробированы на реальных изображениях и встроены в контрольно-измерительную систему технического зрения.
МЕТОДЫ ОПТИМИЗАЦИИ РАСПИСАНИЙ ПАРАЛЛЕЛЬНЫХ ОБСЛУЖИВАЮЩИХ СИСТЕМ
Л.Н. Иванов, д.т.н.; Ю.А. Мезенцев, к.э.н. (Новосибирский государственный технический университет)
Основной задачей теории расписаний (ТР) является разработка методов синтеза расписаний работы обслуживающих систем (ОС). Наиболее актуальны применения ТР в управлении многопроцессорными вычислительными системами, а также в календарном планировании и регулировании производственных процессов.
Среди различных разновидностей ОС [1] особое место занимают параллельные системы. Существует ряд подходов к синтезу расписаний массово параллельных систем [2-4]. Однако алгоритмы, учитывающие специфику конкретных предметных областей, например предназначенные для составления расписаний вычислительных систем, не всегда эффективны при синтезе расписаний ОС другого профиля, в частности, производственных объектов. Наивысшую актуальность разработка подобных алгоритмов обретает при синтезе расписаний параллельно-последовательных дискретных ОС, каковыми являются большинство производственных (технологических) объектов и процессов.
Простейшим примером модели неоднородной одностадийной параллельной ОС является классическая задача о назначениях. Для синтеза расписаний параллельных (многоканальных) ОС в
общем случае используются более сложные модели, описание и анализ которых составляют предмет рассмотрения настоящей статьи.
Формальная постановка задачи синтеза расписаний параллельных динамических систем
Естественным обобщением статической задачи о назначениях является учет динамики поступления в ОС заявок для обслуживания.
Пусть известно расписание поступления заявок в параллельную ОС. В этом случае необходимо учитывать величины задержек поступления заявок. Обозначим задержку поступления И-й заявки в ОС через т0 и упорядочим заявки по возрастанию т0.
Тогда динамическая модель оптимизации расписаний параллельной ОС будет иметь вид:
£жщ =1, ]=Ц, (1)
1е1
J ___
Ь * Ехи * Ь, , 1=1,1, (2)
И=1
х ={1, если заявка И назначается на прибор 1; (з и _|0 - в противном случае; ( )
уц >0 , непрерывные переменные, обнуляющие отрицательные задержки т.:
t.. =К> если Tij >0 (4)
1j 1,0 - в противном случае'
Tij=т0- Ё(т„ + ti,)xu , 1=Ц, j=1J , (5)
1=1
т.. =т.+ у.. >0, 1=Ü, j=1J, (6)
(7)
Ш + , ¡=и,
л=1 j=l
Z=Х^га1п. (8)
Отрицательная задержка Тц имеет смысл фактической задержки начала выполнения j-й заявки 1-м прибором после завершения обслуживания им предшествующей заявки. Переменные Уц вводятся для того, чтобы избежать появления отрицательных задержек Тц. Критерий суммарного времени выполнения работ:
J I
Z2=ЕЕ(т.+Vxi ^m1n •
Ц=1 1=1
Приведем (1)-(8) к нормальному виду задачи математического программирования. Условия (4)-(7) содержат рекурсивные функции фактических задержек (расписание поступления заявок в ОС) Ту. В явном виде Тц как рекурсивные функции относительно переменных хц определяет (5).
Раскрытие рекурсий (5) приводит к выражениям:
i-i i-i .0 ^ (Tj. -
k=1 1=k+1
j -*- J _____
Tij=т0 - E(Tk + tik) x.k П xii , 1=1,1, j=1J, (9)
где хи = 1-хи,У1,1.
При подстановке (9) в (6) и (7), получается задача, сложность которой в представлении (1)-(8) не адекватна возможностям современных алгоритмов оптимизации.
Вместе с тем можно предложить различные способы ее редукции.
Суть первого, заслуживающего внимание подхода состоит в приведении булевых функций У-1 _
типа х1к П хн к линейному виду посредством ис-1=к+1
пользования вспомогательных переменных, а также системы дополнительных неравенств. Подробно подобная процедура представлена в [5].
У-1 _
Обозначим: Г,ук (х1к ,Х1к+1 >-,Хц ) = ХцХ1к П хи ,
1=к+1
1=1,1, у=1Д и введем в рассмотрение переменные Ццк, значения которых истинны только тогда, когда истинны значения Ц. Соответствующие условия истинности можно задать посредством системы ограничений:
j-1
-K+2< x.j+x.k - Е x.i -Kuijk < 1,
1=1Д , у=1Д , к=1Д, К = у-к .
Тогда неравенства (7) примут вид:
J J У-1 J
1т0Ху- ЕЖ + 1,к)и„к + ЕМу.
у=1 у=1 к=1 у=1
Окончательно динамическая модель синтеза оптимального по быстродействию расписания (1)-(8), с учетом использованных преобразований, редуцируется в частично целочисленную линейную модель с булевыми переменными:
I _
!х„=1, у=и,
ь < Ex« < Ь. , i=ц,
j=1
!1, если заявка j закрепляется
за прибором i; 0 - в противном случае;
(10) (11) (12)
uijk =
1, при истинности выражения
j-1 _
fijk (xik ,xik+1 ,—,xij-1)=xijxik Пxn ' (13) 1=k+1
0 - в противном случае, j=1J, i=1Д
j-1
K+2< x.j + xft - E x.i -Kuijk < 1,
=1Д , j=1,J , k=1,J, K=j-k+1,
(14)
Tij=y.j+Tj - E(Tk + tik)Uijk > 0 ,
или
j-1
- У ij + E(Tk+tik )Uijk <.0 1=1Д , j=1,J , (15) k=1
J J J j-1
E(t0+tu)xu+Eyij - EE(Tk+tik) uijk <A,
j=1 j=1 j=1 k=1
1 = 1,1 , _ _ (16)
y.j >0 1=1Д, j= 1J , (17)
Z = min • (18)
Таким образом, задача (1)-(8) сводится к задаче линейного программирования с булевыми переменными.
Несмотря на формальную разрешимость редуцированной относительно (1)-(8) задачи (10)-(18), предложенный подход можно считать лишь начальным этапом общего решения [6]. Очевидно, что число булевых переменных в редуцированной задаче, как и число ограничений, увеличивается примерно в J/2 раз по сравнению с (1)-(8). Тем самым формальная сложность (1)-(8) редуцируется в вычислительную сложность (10)-(18).
Второй возможный подход заключается в максимальном упрощении условий задачи. Его суть можно пояснить, модифицировав исходную задачу следующим образом.
l=k+1
1=1
1=k+1
k=1
^=1, j=i,J,
i=i
j _ _
b < Zxu < bi, i=1I
j=i
11, если заявкаj назначается
на прибор i; 0 - в противном случае;
j _
Xx0jx„ <ß, i=1,1 ,
(19)
(20)
(21)
(22)
j=i
j _
^tijXij <A , i=1,I, (23)
j=i
Z = min, Zi = ß^min . (24)
Из контекста понятно, что второй подход к распределению заявок между приборами предполагает компромиссное решение по чистому быстродействию ОС без учета задержек и по равномерности распределения задержек между приборами.
Линеаризовать векторный критерий Z={Z,Zi} можно посредством линейной свертки:
Z=aA+(i-a)ß, (25)
где 0 <a< i - параметр модели.
Данную идею можно критиковать, однако модель (19)-(25) обладает неоспоримым преимуществом в размерности перед рассмотренной выше точной редукцией модели (1)-(8), а следовательно, по крайней мере на текущий момент времени, имеет большую практическую ценность. Численные эксперименты с обеими моделями подтверждают эффективность второго подхода, так как при использовании (19)-(25) наблюдается падение быстродействия синтезируемых расписаний ОС не более чем на 8 % от оптимального уровня, что для рассматриваемых объектов вполне приемлемо.
Проиллюстрируем использование рассмотренных моделей для синтеза расписаний параллельных ОС на небольшом примере. Рассмотрим параллельную ОС, состоящую из двух неидентичных приборов, в которую на обслуживание неодновременно поступает семь заявок.
Данные о нормах времени обслуживания заявок и задержках (расписании) поступления заявок в систему приведены в таблице.
Номер заявки (j) Время обслуживания (tij) Задержка по-
(номер прибора®) ступления за-
1 2 явки ( т0 )
1 2 4 0
2 3 2 0
3 5 4 2
4 2 4 3
5 4 2 4
6 3 3 5
7 4 3 6
Результатом решения задачи (10)-(18) с данными таблицы является вектор х1*, на котором
определены значения критериев 721* и 71*. Сформируем также матрицу времени завершения операций Т1*. С учетом задержек поступления зая-
вок
Tj будем иметь:
xF =
0 i 0 i i0 0i i0 0i
T i* =
0 8 8 0 0 ii
Z2i* =i8, Zi* =11.
Отметим, что данный результат является наилучшим по всем рассматриваемым критериям.
Для задачи (19)-(25) с данными таблицы также
T
Z2* и Z2
определим: х , >0 ,
Применение модели (19)-(25) при разных значениях параметра а приводит к следующим результатам: 0 *а* 0.66
'0 i^ 0 i i0 i0 0i i0 0i
ч
Z,
=21, Z2* =12, T
0 0 7 9 0 i2
/
6 0 0 8 0
0 ii
0.66 <a< i
' i 0N i 0 0i i0 0i i0 , 0 i
Z
=19, Z2* = 11, TD(
2 5 0 7 0
0 0 6 0 8
i0 0 0 ii
Анализ результатов применения предложенных моделей для синтеза расписаний параллельных ОС подтверждает вывод о существенном преимуществе в размерности модели (19)-(25) перед (10)-(18) и о незначительном проигрыше в эффективности синтезируемых расписаний при тех же обстоятельствах.
Список литературы
1. Левин В.И. Структурно-логические методы исследования сложных систем с применением ЭВМ. - М.: Наука, 1987. -304 с.
2. Иванов Л.Н., Корчагин И.Я. Проблемно-ориентированная концепция построения структур массово параллельных вычислительных систем. // Автометрия. - Новосибирск. - 2002. - Т. 38. - № 5 - С. 68-75.
3. Коффман Э.Г. и др. Теория расписаний и вычислительные машины. - М.: Наука, 1984. - 336 с.
4. Корчагин И.Я. Использование метода аналогий в задачах распределения ресурсов и маршрутизации сообщений в массово параллельных вычислительных системах. / Вест. Хакасского гос. ун-та. - Абакан. - 2003. - Вып. 5, Сер. 1. - С. 53-58.
5. Иванов Л.Н., Мезенцев Ю.А. Модели синтеза расписаний параллельных обслуживающих систем. / Омский науч. вест. - Омск, Изд-во ОГТУ, 2006. - №9(46). - С. 164-167.
6. Мезенцев Ю.А. Декомпозиционный метод решения одного класса задач оптимального проектирования. / Науч. вест. НГТУ. - Новосибирск, Изд-во НГТУ, 2006. - №3(24). - С. 67100.
x