МАТЕМАТИЧЕСКОЕ МОДЕЛИРОВАНИЕ И ОПТИМАЛЬНОЕ УПРАВЛЕНИЕ
УДК 519.8
ОБЩАЯ ЗАДАЧА ОДНОПРОЦЕССОРНОГО ОБСЛУЖИВАНИЯ ПРОСТРАНСТВЕННО РАССРЕДОТОЧЕННОЙ ГРУППЫ СТАЦИОНАРНЫХ ОБЪЕКТОВ
© 2007 г. Ю.С. Федосенко, А.Ю. Шлюгаев
Волжская государственная академия водного транспорта [email protected]
Пиступила вуедакцию 16.04.2007
Рассматривается дискретная математическая модель однофазного обслуживания автономно перемещающимся процессором пространственно рассредоточенной группы стационарных объектов. С каждым объектом ассоциирован индивидуальный штраф и продолжительность обслуживания, являющиеся монотонно возрастающими функциями от момента времени завершения и начала обслуживания соответственно; известны также продолжительности перемещений между объектами. Задача заключается в построении стратегии обслуживания, обеспечивающей минимум суммарного штрафа по всем объектам группы. На основе идеологии динамического программирования строится алгоритм синтеза оптимальных стратегий обслуживания и приводятся результаты вычислительных экспериментов.
Введение
Формулируется дискретная модель и решается задача синтеза оптимальной стратегии однофазного однократного обслуживания автономно перемещающимся процессором - mobile-процессором [1] группы стационарных объектов, расположенных в границах существенно протяженной рабочей зоны.
Принципиальным отличием рассматриваемой математической модели от ранее исследованных [2, 3] является двумерный характер зоны расположения объектов, представляемой односвязным неориентированным взвешенным графом. Вершины графа определяют точки расположения объектов, а веса ребер - расстояния между парами смежных точек, т.е. таких, между которыми осуществимо непосредственное перемещение процессора. Продолжительности перемещений процессора между парами смежных вершин графа известны.
На пути перемещения процессора в точку расположения очередного выбранного для обслуживания объекта могут располагаться точки расположения других объектов группы. Такие точки проходятся процессором транзитом, т.е. соответствующие им объекты не обслуживают-
ся; при этом количество транзитных проходов не ограничено.
Для каждого объекта известны момент времени готовности к обслуживанию и продолжительность обслуживания в зависимости от момента его начала. По прибытии в точку расположения объекта процессор ожидает наступление момента готовности объекта к обслуживанию, если этот момент еще не наступил, и затем выполняет его обслуживание без прерываний. В случае завершения обслуживания объекта позднее некоторого определенного для него момента времени начисляется штраф, величина которого зависит от величины запаздывания.
Задача заключается в построении стратегии обслуживания, обеспечивающей минимизацию суммарного штрафа по всем объектам группы.
На содержательном уровне рассматриваемая модель описывает технологию снабжения топливом группы разнотипных плавучих дизель-электрических комплексов, осуществляющих донную добычу нерудных строительных материалов в крупномасштабной акватории с разветвленной русловой топологией. В качестве примера такого производственного полигона укажем Камский грузовой район, протяженность которого от устья р. Камы до устья р. Бе-
лой порядка 400 км. В разные периоды навигации на полигоне работает от 8 до 20 и более плавучих добывающих комплексов (ПДК) с ежедневной суммарной потребностью в дизельном топливе от 100 до 500 тонн, которое доставляется к ПДК закрепленным за районом специализированным танкером-заправщиком. В условиях высоких расходов по содержанию ПДК и цен на дизельное топливо, сокращения возможностей предприятий по созданию его технологически значимых оперативных запасов основная задача диспетчера района заключается в минимизации экономических потерь, связанных с непроизводительными простоями ПДК. При этом существенное влияние на работу диспетчера оказывают жесткие ограничения на допустимую длительность штатного регламента формирования управляющих воздействий путем решения соответствующих экстремальных задач в (on-line) - (о£Нте)-режимах. В силу сказанного актуальной является проблема разработки достаточно быстрых (по условиям конкретного применения) алгоритмов синтеза стратегий снабжения топливом добывающих комплексов.
Постановка задачи
Имеется n-элементная группа On =
= {о(1), о(2), ..., о(и)} независимых стационарных объектов, расположенных в соответствующих вершинах i (i = 1, n) неориентированного односвязного графа G; граф G содержит также некоторую базисную вершину о. Все объекты группы On подлежат однократному обслуживанию автономно перемещающимся процессором P, для которого граф G является рабочей зоной. При этом в начальный момент времени процессор P расположен в базисной вершине о. Обслуживание объекта o(i) осуществимо, начиная
с момента t(i) (i=1, n ) готовности объекта к обслуживанию.
По каждому объекту o(i) заданы функции: Ti, t) - продолжительность обслуживания, если оно начинается в момент времени t (i =
= 1, n , t > t(i)), и q(i, t) - индивидуальный штраф за обслуживание, завершающееся в момент времени t (i = 1,n, t > 0). Обе функции являются монотонно возрастающими (в нестрогом смысле) по второму аргументу.
Считается известной матрица W = {w(i,j)} размерности (n+1)-(n+1), где w(i, j) - продолжительность перемещения процессора P из вершины i в вершину j непосредственно; если та-
кое перемещение недопустимо, то w(/,j) = да. Отметим, что продолжительность перемещения из вершины г в вершину j может оказаться меньше величины w(i, j), если перемещение осуществляется не непосредственно, а через некоторые промежуточные вершины графа G.
Стратегию обслуживания процессором Р объектов группы Оп определяем как перестановку р= (г1, г2, ..., ги) элементов множества {1, 2, ..., и}; объект группы Оп с номером гк согласно стратегии р обслуживается к-м по очереди (к = 1, и).
Обозначим через tнaч(p, 4) и t*(p, 4) соответственно моменты начала и завершения обслуживания объекта и(гк) при реализации стратегии р. Считаем, что все допустимые реализации р компактны, т.е. имеют место соотношения:
4ачр, г’1) = тах{1(0, г'0; ^г'О}; (1)
t*(p, гк) = tнач(p, гк) + ^(г'k, tнач(P, гк)),
k = 1, и ;
4ачр, 4) = тах{Г(р, г'кх) + 1(г'к1, 4); t(/k)}, (2)
к = 2, и .
В соотношениях (1), (2) через 1(г, j) обозначен^! элементы матрицы £={1(/, j)}, получаемой из Ж путем применения алгоритма Флойда [4]. Результатом работы алгоритма Флойда также является матрица А={а(г,j)}, необходимая для синтеза оптимальных по времени перемещения путей.
Совокупный штраф по всем объектам группы Оп, обслуживаемым согласно стратегии р, и * есть Q(р) = £<р(q, t (р,q)) .
д=1
Требуется найти стратегию р, которая доставляет минимальное значение функции Q (р), т.е. найти решение следующей однокритериальной проблемы
™п ^Р) . (3)
р
Задача (3) КР-трудна, поскольку к ней может быть сведена задача коммивояжера [5]. Также, как и в случае задачи коммивояжера, для решения (3) может быть применен метод динамического программирования [6].
Вывод соотношений динамического программирования
В соответствии с общей концепцией построение рекуррентных соотношений динамического программирования направлено на формирование вычислительной схемы синтеза
стратегии р как некоторой пошаговой процедуры. Каждый очередной шаг этой процедуры определяется множеством номеров обслуженных на данный момент времени объектов и номером последнего обслуженного объекта. При этом в прямой вычислительной схеме пошаговое продвижение реализуется в направлении от момента времени начала до момента завершения обслуживания группы объектов.
Пусть t - произвольный момент принятия решения (МПР), т.е. это либо момент времени
0, либо момент завершения обслуживания произвольного объекта группы Ои по синтезируемой стратегии. Решение, принимаемое в МПР, заключается в выборе объекта, который будет обслуживаться следующим.
Положим, что в момент времени t завершено обслуживание объекта и(г) (по состоянию на момент времени 0 считаем завершенным обслуживание формально вводимого объекта и(0)), а 5 - совокупность объектов из группы Оп, которые были обслужены раньше, чем и(г). Создавшуюся в рассматриваемый МПР ситуацию полностью описывает трехкомпонентный кортеж ^, г, 5). Тройки вида ^, г, 5) далее будем называть состояниями системы. При этом начальное состояние определяется как кортеж Ае = (0, 0, 0), а финальные состояния системы имеют общий вид (^ г, Ои\{и(г)}), где е(г) -произвольный объект из Оп.
Кортеж А = (^ , j, 51 ) относится к числу состояний, непосредственно предшествующих состоянию В = (12, г, 52), если: 52 = 51 о{и(/)}, объект и(г) множеству 52 не принадлежит и
12= t2 +т(г,t2 ), где t2 = тах{^ +1(/,г); ^)} . Для того чтобы из состояния А реализовать непосредственный (одношаговый) переход в состояние В, необходимо, начиная от момента времени ^, совершить два последовательных действия: 1) переместить процессор из вершины / в вершину г; 2) выполнить обслуживание объекта и(г).
Затраты на перевод системы из состояния А непосредственно в состояние В оказываются равными ^>(/, 12). Эти затраты именуем стоимостью перехода из состояния А в В. Если состояние А для В является непосредственно предшествующим, то состояние В для А относится к числу непосредственно следующих, т.е порождаемых состоянием А .
Минимально возможную величину суммарных затрат при переводе системы из ее началь-
ного состояния в состояние (і, і, S) обозначим через Е (і, і, S). Как очевидно,
Е (0, 0, 0) = 0. (4)
Одношаговый переход в произвольное, но отличное от начального состояние (і, і, 5) осуществляется из любого непосредственно предшествующего ему состояния. По функции Ті, 0 легко определяется используемая ниже функция О (і, і) - требуемый момент начала обслуживания объекта о(і), если его обслуживание должно завершиться в момент времени і. В случае когда
0 (і, і) = і(і), т.е. обслуживание объекта о(і) начинается непосредственно в момент его готовности, момент времени О (і, і) не обязательно совпадает с моментом времени прибытия процессора после завершения обслуживания предшествующего объекта о(/). Очевидно, что в такой ситуации процессор может прибыть в точку расположения объекта о(і), начиная от момента
времени їа о; / ) = ^) + Тj, t(/)) + \(j, і) и заканчивая моментом времени О (і, і). При этом
1 + Ті, і(/)) - наиболее ранний из возможных момент времени завершения обслуживания предшествующего объекта.
Учитывая данное обстоятельство, согласно принципу динамического программирования имеем:
Е (і, і, 5) = тіп {Ер (О*(і, і) -
(5)
0]е5
- 1(/, і),і, 5 \ {о(/)}) + дКі, і)}. В формуле (5)
Е( О* (і, і) -1 (і, и), і, 5 \{о( /)}, при О*(і, і) > і (і); тіп {Е(ір,і,5 \{о(/)})},
ір^Тр
при D (г,t) = t(i), где через Тр обозначен целочисленный отрезок
Ш + т, 0*^ t) - ^ 0].
Оптимальное значение Qоpt критерия Q (р) , соответствующее решению задачи (1), очевидно есть
Qиpt = тт Е (t, г, Ои \ {и(г)}).
ге{1,2,..., и}
Оценка временной вычислительной сложности процедуры синтеза оптимальной стратегии обслуживания
Обозначим через Д алгоритм, реализующий процедуру синтеза стратегии р по рекуррентным соотношениям (4), (5). Его вычислитель-
ная сложность определяется количеством наборов (t, i, S), на которых подсчитываются значения функции Е (t, i, S), и сложностью вычисления каждого значения. В рассматриваемых тройках (t, i, S) число значений первого аргумента ограничено максимальным значением момента времени завершения обслуживания tn , которое можно оценить сверху следующим неравенством:
n-1 n
tn - Y max l(i, j) + max t(j) + Y T(i, max tj).
i=0 j=1,n j=1,n i=1 j=1,n j *i
Общее количество различных пар значений второго и третьего аргументов в наборах (t, i, S),
как очевидно, не превышает n- 2n 1. Число элементарных операций, выполняемых при подсчете каждого отдельного значения функции Е (t, i, S), мажорируется линейной функцией параметра n.
Следовательно, временная вычислительная сложность алгоритма Д оценивается сверху величиной O(n2 2n 1 tn).
цы имеют следующий формат: [минималь-
ное значение; максимальное значение], среднее значение.
Таблица
n tc, с V, Kb
В [O,O78; O,656], O,334 [5,273; 24,416], 13,839
9 [O,892; 5,498], 2,256 [27,685; 78,799], 48,61O
1O [5,919; 82,929], 29,199 [79,664; 231,73O], 139,8O7
11 [66,957; 1168,51], 3O7,59 [2O4,38; 858,16], 4O7,77
12 [993,48; 92O9,O8], 2867,11 [818,64; 2446,53], 1186,45
Для решения большеразмерных задач (при п > 12) целесообразна разработка модификаций метода динамического программирования, активно использующих идеи метода ветвей и границ, а также поиск эффективных алгоритмов синтеза субоптимальных стратегий обслуживания, в частности использующих концепцию d-расписаний [7] и идеи «природных» вычислений [8].
Заключение
Результаты вычислительных экспериментов
Для проведения вычислительных экспериментов на языке Java была выполнена программная реализация алгоритма Д.
Эксперименты проводились для n = 8, 9, ..., 12 путем решения тестовых наборов, каждый из которых состоял из 100 задач. При этом, рассматривались функции-константы затрат времени на обслуживание T"(i, t) = dtг- и функции индивидуального штрафа вида
p(i, t) = <
O , при t < t(i) + т(і, t(i)) + tdi ; b . eaf[t-t(i)-r(i,t(i ))-tdi ],
при t > t(i) + т(і, t(i)) + tdt (i = 1,n).
Числовые характеристики решаемых задач генерировались по равномерному закону распределения из следующих диапазонов значений: t(і) є [20, 180], dti є [1, 10], tdi є [1, 10],
а( є [2, 10], Ь є [1, 10], wij є [4, 20].
В таблице приведена экспериментальная статистика по оценке временной (продолжительность синтеза Ґс) и объемной (требуемый в ходе вычислений объем памяти V) вычислительной сложности алгоритма Д. Ячейки табли-
1. Математическое описание технологии снабжения топливом группы плавучих разнотипных дизель-электрических комплексов, осуществляющих донную добычу нерудных строительных материалов в крупномасштабной акватории с разветвленной русловой топологией выполнено в работе на основе дискретизации пространственных, временных и других параметров модели. Очевидно, что степень адекватности принятого формализма реальным транспортно-технологическим процессам зависит от выбранного шага дискретности. В этом смысле повышение точности решения задачи синтеза оптимальной стратегии может быть выполнено за счет выбора единиц измерения координат и параметров рассматриваемой модели.
2. В качестве непосредственного обобщения исследованной задачи для приложений значимыми являются модели, учитывающие модификации:
а) заданы две базисные вершины: начальная
- он и конечная - ок; обслуживание всех объектов группы должно быть выполнено при перемещении процессора из точки он в точку ок;
б) заданы директивные сроки завершения обслуживания для всех или только для привилегированных объектов группы;
в) учет суммарных затрат процессора на перемещения, в том числе в бикритериальной постановке [9].
Список литературы
1. Коган, Д.И. Проблема синтеза оптимального расписания обслуживания бинарного потока объектов mobile-процессором / Д.И. Коган, Ю.С. Федосенко,
А.В. Шеянов // Труды III Международной конференции «Дискретные модели в теории управляющих систем», М. 1998 г. - М.: Изд-во МГУ, 1998. - С. 43-46.
2. Коган, Д.И. Задачи оптимального обслуживания группы стационарных объектов, расположенных в одномерной зоне / Д.И. Коган, А.В. Синий, Ю.С. Федосенко // Вестник ВГАВТ. Межвузовская серия: Моделирование и оптимизация сложных систем. -Н. Новгород: Изд-во ВГАВТ, 2004. Вып. 9. - С. 27-34.
3. Синий, А.В. Математические модели и алгоритмы синтеза оптимальных расписаний бункеровки добывающих комплексов в крупномасштабных русловых районах / А.В. Синий, Ю.С. Федосенко // Технологии Microsoft в теории и практике программирования: сб. материалов конф. Н. Новгород, 21-22 марта 2006 г.
- Н. Новгород: Изд-во Нижегородского госуниверси-тета им. Н.И. Лобачевского, 2006. - С. 276-279.
4. Асанов, М.О. Дискретная математика. Графы, матроиды, алгоритмы / М.О. Асанов, В.В. Баранский,
В.В. Расин. - Ижевск: НИЦ «Регулярная и хаотическая динамика», 2001. - 288 с.
5. Гэри, М. Вычислительные машины и труднорешаемые задачи / М. Г эри, Д. Джонсон. - М.: Мир, 1982. - 416 с.
6. Беллман, Р. Динамическое программирование / Р. Беллман, С. Дрейфус. - М.: ИЛ, 1960. - 400 с.
7. Коган, Д.И. Задача диспетчеризации: анализ вычислительной сложности и полиномиально разрешимые подклассы / Д.И. Коган, Ю.С. Федосенко // Дискретная математика. 1996. Т. 8. № 3. С. 135-147.
8. Макконнелл, Дж. Основы современных алгоритмов / Дж. Макконнелл. - М.: Техносфера, 2006. - 368 с.
9. Коган, Д.И. Динамическое программирование и дискретная многокритериальная оптимизация: Учебное пособие / Д.И. Коган. - Н. Новгород: Изд-во ННГУ, 2005.
GENERAL PROBLEM OF OPTIMAL SINGLE-PROCESSOR SERVICING OF A GROUP OF SPATIALLY-DISTRIBUTED OBJECTS
Yu. S. Fedosenko, A. Yu. Shlyugaev
We consider a discrete mathematical model of single-phase servicing of a group of spatially-distributed fixed objects by an autonomously-moving processor. Every object has its associated fine and service-duration functions which increase monotonically with the service completion and beginning time, respectively. In addition, durations of the processor motions between the objects are assumed known. The problem consists in constructing an object-servicing strategy which minimizes the value of the total fine criterion. Based on the dynamic-programming approach, we develop an algorithm for synthesizing optimal servicing strategies and present the results of computational experiments.