Научная статья на тему 'МИНИМАКСНАЯ ЗАДАЧА МАРШРУТИЗАЦИИ С СИСТЕМОЙ ПЕРВООЧЕРЕДНЫХ ЗАДАНИЙ'

МИНИМАКСНАЯ ЗАДАЧА МАРШРУТИЗАЦИИ С СИСТЕМОЙ ПЕРВООЧЕРЕДНЫХ ЗАДАНИЙ Текст научной статьи по специальности «Математика»

CC BY
11
1
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
динамическое программирование / декомпозиция / маршрут / dynamic programming / decomposition / route

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

Для минимаксной задачи маршрутизации при условиях предшествования и функциях стоимости, допускающих зависимость от списка заданий, исследуется постановка, в рамках которой предполагается выделенной часть заданий в качестве первоочередных. К выполнению прочих заданий можно приступить только после выполнения всех первоочередных заданий. Сами задания связываются с посещением мегаполисов и, в частности, «отдельных» городов (термины соответствуют работам в области решения задачи коммивояжера). Требуется найти экстремум возникающей двухэтапной задачи с минимаксным критерием, а также оптимальное композиционное решение. В работе обоснован и построен оптимальный алгоритм, реализованный на ПЭВМ, проведен вычислительный эксперимент. Возможные применения могут быть, в частности, связаны с некоторыми задачами авиационной логистики, в которых требуется обеспечить посещение одним объектом (самолет, вертолет) системы аэродромов при ограниченном запасе топлива на каждом этапе полетного задания с дозаправкой в пунктах посещения (предполагается также выделенным набор приоритетных заданий).

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

Похожие темы научных работ по математике , автор научной работы — Ченцов Александр Георгиевич, Ченцов Алексей Александрович

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

Minimax routing problem with a system of priority tasks

For a minimax routing problem with precedence conditions and cost functions that allow dependence on the list of tasks, we study the statement for which some of the tasks are allocated as first-priority ones. Other tasks can be started only after the fulfillment of priority tasks. The tasks themselves are connected with visiting megacities and, in particular, individual cities (terms corresponding to works in the field of solving the traveling salesman problem). One needs to find the extremum of arising two-stage problem with a minimax criterion, as well as the optimal compositional solution. In the paper, the optimal algorithm implemented on a PC is substantiated and built; a computational experiment is carried out. Possible applications may be related to some problems of aviation logistics in which it is required to ensure the visit of one vehicle (airplane or helicopter) to a system of aerodromes under a limited fuel reserve at each stage of the flight task; refueling is expected at points of visit (it is also assumed that a set of priority tasks is allocated).

Текст научной работы на тему «МИНИМАКСНАЯ ЗАДАЧА МАРШРУТИЗАЦИИ С СИСТЕМОЙ ПЕРВООЧЕРЕДНЫХ ЗАДАНИЙ»

Известия Института математики и информатики Удмуртского государственного университета

2023. Том 62. С. 96-124

УДК 519.8

© А. Г. Ченцов, А. А. Ченцов

МИНИМАКСНАЯ ЗАДАЧА МАРШРУТИЗАЦИИ С СИСТЕМОЙ ПЕРВООЧЕРЕДНЫХ ЗАДАНИЙ

Для минимаксной задачи маршрутизации при условиях предшествования и функциях стоимости, допускающих зависимость от списка заданий, исследуется постановка, в рамках которой предполагается выделенной часть заданий в качестве первоочередных. К выполнению прочих заданий можно приступить только после выполнения всех первоочередных заданий. Сами задания связываются с посещением мегаполисов и, в частности, «отдельных» городов (термины соответствуют работам в области решения задачи коммивояжера). Требуется найти экстремум возникающей двух-этапной задачи с минимаксным критерием, а также оптимальное композиционное решение. В работе обоснован и построен оптимальный алгоритм, реализованный на ПЭВМ, проведен вычислительный эксперимент. Возможные применения могут быть, в частности, связаны с некоторыми задачами авиационной логистики, в которых требуется обеспечить посещение одним объектом (самолет, вертолет) системы аэродромов при ограниченном запасе топлива на каждом этапе полетного задания с дозаправкой в пунктах посещения (предполагается также выделенным набор приоритетных заданий).

Ключевые слова: динамическое программирование, декомпозиция, маршрут. 001: 10.35634/2226-3594-2023-62-08

Введение

Настоящая работа продолжает исследования [1-3] и посвящена распространению подхода [4-6] на минимаксные задачи маршрутизации (задачи на узкие места). В общей постановке исследуется задача о посещении мегаполисов при наличии условий предшествования и функций стоимости, допускающих зависимость от списка заданий. Оптимизируется очередность выполнения циклов работ при оценивании всей системы циклов стоимостью наиболее затратного этапа. Среди всех циклов, как и в [4-6], выделено множество первоочередных, которые должны быть выполнены прежде чем начнется выполнение прочих заданий; каждый цикл включает внешнее перемещение и внутренние работы, соответствующие стоимости суммируются. Подробное обсуждение постановки см. в [2]. Данная минимаксная задача маршрутизации может быть полезной для исследования вопросов разрешимости задачи по реализации циклов работ в условиях ограничений ресурсного характера, действующих при выполнении каждого цикла. Так, в частности, может рассматриваться случай, когда для выполнения каждого цикла работ выделяется фиксированный объем финансирования; в этом случае маршрутизацию с выделением системы первоочередных заданий следует осуществить так, чтобы на каждом этапе «уложиться» в соответствующий допуск, определяемый выделяемым поэтапно финансированием.

В упомянутой общей постановке фактически реализуется декомпозиция полной маршрутной задачи с построением двух частичных задач или подзадач: предваряющей и финальной. Первая связана с обслуживанием циклов, отвечающих первоочередным заданиям, а вторая — с обслуживанием циклов, соответствующих всем прочим заданиям. Оптимизируются совокупности, именуемые маршрутными процессами и включающие каждый перестановку индексов заданий (маршрут), траекторию перемещения по занумерованным с помощью маршрута мегаполисам и точку старта. Для построения оптимального композиционного решения используется широко понимаемое динамическое программирование (ДП)

в неаддитивной версии, соответствующей [1,2,7]. Общий вариант постановки может быть полезен при организации систем управления многоэтапными процессами с ограничениями ресурсного характера.

Представляется важным частный случай постановки, представляющий собой усложненную версию минимаксной задачи коммивояжера (ЗК); в связи с решением минимаксной ЗК см. [8]. Фактически можно говорить о минимаксной задаче курьера [9], имея в виду ЗК с условиями предшествования. Здесь также выделена часть заданий, рассматриваемых в качестве первоочередных. Представляется, что данная более частная постановка может быть полезной при решении задач авиационной логистики, связанных с последовательными перелетами самолета или вертолета между различными пунктами с целью перевозки пассажиров и доставки грузов. В этом случае приходится сталкиваться с ограничениями на дальность беспосадочного перелета, что связано с дефицитом топлива. Для ответа на вопрос о разрешимости задачи, связанной с перелетами одного транспортного средства (самолет, вертолет) между заданными пунктами, может быть использована вспомогательная минимаксная задача курьера, в которой ограничение на дальность беспосадочного перелета отсутствует. В этой последней задаче может быть эффективно использован аппарат ДП. Сравнивая экстремум вспомогательной задачи с допуском на дальность беспосадочного полета, можно получить ответ на вопрос о разрешимости исходной задачи. Это может оказаться полезным при планировании авиаперевозок. Далее, при выбранном плане, обеспечивающим принципиально возможность выполнения всех заданий с соблюдением комплекса ограничений, можно, применяя аппарат ДП, найти и конкретное решение, включающее маршрут и точку старта.

Следует отметить, что в задаче маршрутизации на узкие места нелегко указать удачную эвристику уже в случае умеренной размерности. Типичные варианты типа «иди в ближайшую точку» приводят нередко к ощутимому проигрышу в качестве (авторы сталкивались с примерами, где данный проигрыш превосходил 300%). В этой связи ДП при всей его трудоемкости является надежным инструментом исследования минимаксных задач маршрутизации; положительную роль играют при этом условия предшествования.

В связи с исследованиями по ЗК отметим [8-15]. Основное число работ посвящено ЗК с аддитивным критерием; тем не менее, ЗК является естественным прототипом задач маршрутизации, исследуемых в настоящей статье, и определенные аналогии в плане используемых методов здесь имеют место. Отметим в этой связи, что применяемая версия ДП имеет своим прототипом вариант [14]; в связи с минимаксным вариантом ДП отметим [8]. В то же время в задаче, исследуемой ниже, возникает целый ряд особенностей качественного характера (прежде всего отметим эффект ограничений и функций стоимости с зависимостью от списка заданий). В то же время трудности вычислительного характера, присущие ЗК, здесь сохраняются. В этой связи полезно отметить, что декомпозиционный подход, применяемый в работе, позволяет существенно продвинуться в вопросе повышения размерности задач маршрутизации, допускающих решение за приемлемое время (возможно с потерей оптимальности). Примеры решения «аддитивных» задач (см. [4-6]) подтверждают этот вывод. Таким образом, оптимизация композиционных решений, подобная [4-6], может быть полезной и в плане построения оптимизирующих алгоритмов в ситуации, когда каких-либо первоочередных заданий в исходной задаче не предусмотрено.

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

§ 1. Общие сведения

Используется стандартная теоретико-множественная символика (кванторы, пропозициональные связки и др.); 0 — пустое множество, = — равенство по определению. Семейством называем множество, все элементы которого — множества. Любым двум объектам х и у сопоставляется их неупорядоченная пара {х; у}, т.е. непустое множество, содержащее х, у и не содержащее никаких других элементов. Тогда каждому объекту т сопоставляется син-

глетон {т} = {т; т} со свойством т € {т}. Множества являются объектами. Поэтому для любых двух объектов и, V определяем, следуя [16, с. 67], упорядоченную пару (УП) (м,^) = {{и}; {и; V}} с первым элементом и и вторым элементом V. Для каждой УП к через рг^к) и рг2(к) обозначаем соответственно первый и второй элементы к, однозначно определяемые равенством к = (рг1(к),рг2(к)). Если же х, у и г — три объекта, то

(см. [17, с. 17]) (х,у,г) = ((х,у),г) есть упорядоченный триплет с первым элементом х, вторым элементом у и третьим элементом г. В этой связи отметим, что (см. [17, с. 17]) для трех любых множеств А, В и С

А х В х С = (А х В) х С;

поэтому при х € А х В и у € С имеем включение (х, у) € А х В х С. Если Н — множество, то через Р(Н) (через Р'(Н)) обозначаем семейство всех (всех непустых) подмножеств Н; через Пп(Н) обозначаем семейство всех конечных множеств из Р'(Н) (если Н конечно, то Пп(Н) = Р'(Н)). Для любых двух непустых множеств А и В через ВА обозначаем (см. [16, гл. II]) множество всех функций из А в В; при f € ВА и а € А в виде f (а) € В имеем значение f в точке а. Будем использовать индексную форму записи функций (см. семейство с индексом в [18, с. 11]). Если А и В — непустые множества, к € ВА и С € Р(А), то

к1 (С) = { к(х): х € С} € Р(В) есть образ множества С при действии к; к1 (С) = 0 при С = 0, к1(0) = 0. Для непустых множеств А, В и С, функции к € САхВ и точек а € А,

Ь € В, как обычно, к(а, Ь) = к((а,Ь)) € С. Если же А, В, С и Б — непустые множества, д € БАхВхС, и € А х В и V € С, то в виде д(и^) € Б имеем значение функции д в точке (и^) € А х В х С, для которого используем также естественное обозначение

д(рг1(и) рг2(и),,у) = д(и^).

Пусть К+ = { £ € К| 0 ^ £}, где К — вещественная прямая, N = { 1; 2;...}, N = = {0}и N = { 0; 1; 2; ...} и

рТд = { к € N01 (р ^ к)&(к ^ д)} € Р(N0) Ур € N0 Уд € N0; 170 = 0 и 1, га = { /с е /с ^ га} при га € N. Если X е Р'(М) и е М, то

К 0 5 = { к + 5: к € К} € Р'(^

есть сдвиг Непустому конечному множеству К сопоставляем его мощность К б N и непустое множество (Ы) [К] всех биекций [19, с. 87] дискретного интервала 1, |К | на К; ясно, что (Ы)[К] определено при К € Р'(Б), где Б — непустое конечное множество. Полагаем, как обычно, что |0| = 0. Перестановка произвольного непустого множества А есть [19, с. 37] биекция А на себя; каждой перестановке а данного множества А сопоставляется перестановка а-1 того же множества, обратная к а: а-1(а(а)) = а(а-1(а)) = а при а € А.

Непустому множеству Б сопоставляем множество ^+[Б] всех неотрицательных ве-щественнозначных (в/з) функций на Б. В дальнейшем часто используется свойство: при

и е к, V е к и w е к

8ир({вир({и; V}); и} = вир({и; 8ир(^;

здесь 8ир({а; Ь}) — наибольшее из чисел а е К и Ь е К (данное толкование точной верхней грани широко используется в дальнейшем). Кортежами называем далее функции, определенные на непустых подмножествах N0, а отношениями — подмножества декартовых произведений пары множеств.

§2. Задача на узкие места с первоочередными заданиями (посещение мегаполисов)

Мы рассматриваем задачу последовательного обхода множеств с ограничениями и функциями стоимости, допускающими зависимость от списка заданий. В трех последующих разделах мы кратко напомним некоторые построения [2].

Фиксируем далее непустое множество X, а также его подмножество X0 е Пп(Х). Пусть п е N 4 ^ п, и заданы множества

м1 е Пп(х), ..., мп е Пп(х),

именуемые мегаполисами; М = { мг: г 6 1, п}. Полагаем далее, что

Г\Х° = 0Vj е 1^)&(МР г\ мд = 0 Ур еТ^Уд \ {р}).

С каждым мегаполисом связывается непустое отношение; фиксируем

м1 еР'(м1 х м1), ..., мп еР'(мп х мп). (2.1)

В терминах фиксированного числа N £ 2, п — 2 определяем разбиение семейства Л4 в сумму непустых подсемейств

(Мх = { Мг: геТ^})к(М2 = { Мг: г е 1,п});

итак, М = М1 и М2, М1 П М2 = 0. Рассматриваем задачу о посещении всех мегаполисов из М, в которой прежде посещения мегаполисов из М2 должно быть реализовано аналогичное посещение всех мегаполисов из М1. Соответственно, возникающая М-задача является композицией М1- и М2-задачи. В двух последних задачах задаются условия предшествования, для введения которых фиксируем два множества УП, именуемых адресными:

(К1 е Р(МУ х Т^У))&(К2 е Р(1, п - N х 1, п - Ы), (2.2)

со следующими свойствами (см. [20, часть 2])

(УК0 е Р'(К1) Зг0 е К0: рг1(г0) = рг2(г) Уг е К0) (2 3)

&(УК е Р'(К2) З^ е К0: рг^) = р^г) Уг е К0); ( .3)

обсуждение (2.3) см. в [20, разделы 2.2,2.5]. При = (Ы)[МУ] и Р2 = (Ы)[1,п- Щ имеем, что

А = { а е Р1| а-1(рг1(г)) < а-1(рг2(г)) Уг е К1} е Р'(Р1), (2.4)

Л2 = { а е Р2| а-1(рг1(г)) < а-1^^)) Уг е К2} е Р'(Р2); (2.5)

перестановки из А1 (из А2) рассматриваем как допустимые по предшествованию маршруты в М1 -задаче (в М2-задаче). Используем склеивание маршрутов, подобное применяемому

в [2-6]: полагая Р = (Ы)[1, п], мы при а Е Р1 и /3 Е Р2 определяем ск<>/3 Е Р правилами

((аО/3)(к) = а(к)Уке 1^)ЩаО/3)(I) =/3(1 - X) + N V/ ЕХ+1,п). (2.6)

В частности, (2.6) может применяться к маршрутам из (2.4),(2.5); перестановки из множества

Р = { рг1(г)0рг2(г): г € А х Л2} = { аОв: а € Дь в € А2} € Р'(Р) (2.7)

рассматриваем как допустимые маршруты в М-задаче (см. обсуждение в замечании 1 работы [6, раздел 2.1]). Стандартным для [1-7] способом вводим траектории в М-задаче, согласованные с выбранным наперед маршрутом и стартующие из заданной точки множества Х°. Итак, пусть 3 = (X х Х)°'п; тогда при х Е Х° и 7 € Р в виде

ад = е 31(^0 = (х,х)Щгт е М7(т) Ут е Т^)} € Ет(3) (2.8)

имеем требуемое множество всех траекторий, стартующих из х и согласованных с 7. Тогда

при х € X0

Щх] = {(7, е р X 31 е ад} е Пп(Р х 3) (2.9)

имеем множество всех допустимых УП маршрут-траектория в условиях фиксации х в качестве точки старта. Точки (2.9) (а это — УП) называем допустимыми решениями (ДР) (М,х)-задачи, т.е. М-задачи со стартом в х. Наконец, элементы множества

о = {(7, (гЖдая) е Р X з X Х°| (7, (г^) Е В[х]} Е Пп(Р х 3 х Х°), (2.10)

именуемые далее маршрутными процессами (МП), используем ниже в качестве ДР М-задачи, т. е. нашей основной задачи задачи маршрутизации, для формулировки которой требуется определить функции стоимости; чтобы сделать это в меру экономно, введем ряд вспомогательных множеств. Так, при ] Е 1, п

(М, = { рг1(г): г € М,} € Пп(М,-))&(М, = { рг2(г): г € М,} € Пп(М,-)). (2.11) Кроме того, имеем, что

п п-М

ММ= и Мг = ^ Мм+г € Пп(Х). (2.12)

г=М+1 г=1

Легко видеть (см. (2.7), (2.12)), что при х Е Х°, 7 е Р и £ -2-у [ж] непременно

рг2(гп) € М. Учитывая (2.11), введем также множества

пп

(Х= уштг е Гт(Х))&(Х= (умг) их0 е Гт(Х))&(^ = Р'(Т^)); (2.13)

г=1 г=1

элементы (см. (2.13)), т. е. непустые подмножества 1, п, именуем ниже списками заданий. С учетом (2.13) введем функции

с €^+ [X х X х Эт], С1 €^+[М1 х ЭТ], ..., Сп €^+ [Мп х Эт], f € [М], (2.14)

Функция c используется для оценивания внешних перемещений, функции ci,..., cn — для оценивания внутренних работ, связанных с посещением мегаполисов, а f — для оценивания терминального состояния; в этой связи заметим, что траектории в (2.8) отвечают (при x G X0 и y G P) реализации схем

x ^ (pri(zi) G M7(1) ^ (zi) G M7(1)) ^ ... ^ (pri(zn) G M7(n) ^ pr2(zn) G M7(n)),

где прямые стрелки соответствуют внешним перемещениям, волнистые — перемещениям, связанным с внутренними работами, а pr2(zn) определяет терминальное состояние. В (2.14) функции c,ci;..., cn допускают зависимость от списка заданий (имеется в виду элемент ÜT (2.13)); в этой связи напомним, что при 7 G Р и / G 1.11 упомянутым образом оценивается список 71(í, п). В связи с вопросом о разрешимости системы неравенств

(c(pr2(zí_1),pr1(zí),71(MÍ)) + c7(t)(2:í,71(MÍ)) ^d Vi G MÏ)&(/(pr2(zn)) ^ d) (2.15)

при том или ином значении d G R+ (имеется в виду разрешимость в классе маршрутных процессов) введем минимаксную задачу маршрутизации. Для этого при x G X0, y G P и (zt)teö^ G Z1\x\ введем в рассмотрение

£y[(zt)teö^] = sup({max[c(pr2(zí_i),pr1(zí),71(Vñ)) + c7(í)71(^п))];/(pr2(zn))}) G E+. te i,n

(2.16)

Посредством (2.16) определяем критерий в задаче маршрутизации с элементами декомпозиции. Итак, при x G X0 рассматриваем (M, x)-задачу

£j[(zt)t&¿ñ —> min, (7, (zt)t&hñ) е Ь[ж] (2.17)

(заметим, что (2.16) определено при (7, (zt)teô^) G D|.r в силу (2.9)), которой сопоставляются экстремум V[x] и (непустое) экстремальное множество (sol)[x] :

V[x]= min _ £7[(zt)teS^]GR+, (2.18)

(sol)И = {(7, (zt)t&ôï) e DH|£7[(zt)te^] = V[x]} G Fin(DH). (2.19)

Наряду с (2.17) используем (2.16) в полной задаче маршрутизации (основная M-задача)

—> min, (7, (zt)teö^>x) е D> (2-20)

которой сопоставляется экстремум V и непустое экстремальное множество:

V = min еДЫ^] = min V[x] G R+, (2.21)

(7 ,(zt)teö^,x)€ü xÇX°

SOL ^ {(7, (zt)te^,x) G D| = V} G Fin(D). (2.22)

Наконец, в связи с (2.21) естественно возникает задача оптимизации старта

V7[x] —► min, x G X0; (2.23)

экстремум задачи (2.23) совпадает с V, а (непустое) экстремальное множество есть

X00pt = { x G X0| î>[x] = V} G Fin(X0). (2.24)

В терминах (2.24) получаем теперь понятную связь задач (2.17) и (2.20):

(7, x) G SOL \/х G Xo0pt V(7, (zt)t^) G (sol) [ж]. (2.25)

§ 3. Декомпозиция полной задачи, 1

В настоящем разделе рассматриваются M ^задача и М2-задача в последовательности, отвечающей логике алгоритма на функциональном уровне в духе [2]. Нужные построения начинаем с определения множества точек старта М2-задачи. Итак, при K1 = = { pri(h): he Ki} имеем (см. [20, (4.9.9), предложение 4.9.3]) свойство 1,Х \ К^ Е Е P'(l, X) и, как следствие,

Х00 = (J Mj G Fin(X); (3.1)

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

i€mv\ki

рассматриваем (3.1) в качестве множества возможных точек старта в М2-задаче. Кроме того, имеем при j G 1, п — X множества

M(j) = MN+ G Fin(X), M(j) = MN+ G P'(M(j) x M(j)), (3 2)

A A (3.2)

M(j) = MN+ G Fin(M(j)), M(j) = MN+ G Fin(M(j));

ясно, что M(j) = { pr1(z): z G M(j)} и M(j) = { pr2(z): z G M(j)}. C маршрутами из A2 (допустимыми по предшествованию в М2-задаче) связываем пучки траекторий с фиксированным стартом, полагая предварительно 3* = (X х X)°'n~N. При х G X00 и /3 G Д2 в виде

ЩА = е 31 (zo = (x,x))k(zt G Vt G 1, n - N)} G Fin(3*)

имеем пучок траекторий М2-задачи, стартующих из х и согласованных с в- Далее, при

х Е X00

В*[х] = {(/3, (*)4ео^=лг) бЛх 31 (*)«=0^=ЛГ е ^И} Е Гт(Д2 X з*)

есть множество всех ДР в (М2, х)-задаче, т.е.в М2-задаче со стартом в х. В виде N = = Р'(1, п — X) имеем семейство всех списков заданий в Л12-задаче, причем

К 0 N Е N УК Е N. (3.3)

Легко видеть, что справедливы следующие свойства:

n-N n-N

U M(i) G P'(X))&(X* = ( ^ M(i)) и X00 G P'(X)). (3.4)

¿=1 ¿=1

С учетом (3.3), (3.4) определяем функции стоимости в М2-задаче. При этом функция

+ [

c* G R+ [X* x X* x N*] определяется правилом

с*(х, у, К) = с(х, у, К 0 N) Ух Е X* Уу Е X* УК Е N. (3.5)

Далее, при j е 1,п — N вводим функцию с* Е 71 , |М':/) х посредством правила

с* (г, К) = (*, К 0 N) Уг Е УК Е N.

Терминальную компоненту критерия М2-задачи отождествляем с /. Завершили построение кортежа (с*, с*,..., сП_м,/) функций стоимости М2-задачи. При х Е X00, в Е А2 и (-^)гбо,п-лг е -2-/3 N определено значение

^[Ыкео^глг] = тах [с*(рг,и_1), рг1 Ы, /З1^ п - X))

*€1,п-ЛГ (3.6)

+ /3\г, п - X))]; /(рг2(гп_м))}) Е Е+.

* A

В терминах (3.6) при х € X00 вводим (М2, х)-задачу

задаче (3.7) сопоставляются экстремум V*[х] и непустое экстремальное множество (во1)*[х]:

П*] п.г,е (3.8)

(во1)*И = {(/3, € В*[х]\ = У*[х]} Е Ет(Б*И). (3.9)

Итак, определена функция V*[•] = (V*[х])жеХоо € Р+[Х°°]. Эта функция и множество (3.9) играют роль своеобразных результантов М2-задачи. Функция, определяемая посредством (3.8), будет использована при построении терминальной компоненты критерия М1 -задачи.

В качестве допустимых (по предшествованию) маршрутов М1-задачи используются

элементы А\. Полагая, что = (X х Х)°'м, введем в рассмотрение при х Е Х° и а Е А\ множество

2\\х\ = € 3*| (¿о = (х,х)Щгт Е Ма(т) Ут € 1^)} Е Ет(3*)

всех траекторий М1 -задачи, стартующих из х и согласованных с а. Тогда при х € X0

Л

I ^ 1 I ^ /I . ЧХ .44 1 / ^ 1 ___ с ^^

есть множество всех ДР (М1;х)-задачи, т.е. М1-задачи со стартом в х. Из определений легко следует, что

рг2(зд) € X00 Ух Е Х° У(а, Е Ъ\х]. (3.10)

В интересах введения функций стоимости в М1-задаче отметим, что

N N N

(Xй = и Шг € Пп(Х))&(Х^ = Мг) и Х° € Е1п(Х))&(М* = ^ Мг).

г=1 г=1 г=1

В терминах V*[■] определяем терминальную компоненту критерия М1-задачи: полагаем, что функция ¥ € Р+[Мй] такова, что

(£(х) = V*[х] Ух € X°°)&(¥(х) = 0 Ух € \ X°°). (3.11)

Т>*[х] = {(а, {ъ)^) елгх 3*| {ъ)^ € € Ип(Л х 3*)

Итак, функция ¥ привязана к V*[■], т.е. к функции экстремума М2-задачи. Для N

Т"(1, X) имеем, что С 91. Тогда функцию с1* € хХ11 х^] определяем условиями

= УгеХ^хХ^ УХ е (3.12)

Далее вводим функции с\,... Итак, при ] Е 1, N определяем с^ € 7£+[М.,- х посредством правила

с) (г,К) = С3 (г, К и 1,п) У г Е М,- УК ЕШК

Итак, получили кортеж (C,c1,...,cN, ¥) функций стоимости М1-задачи. В его терминах определяем критерий минимаксной задачи маршрутизации: при х € Xа € А1

и (¿^еолг е -2-аИ с учетом (3.10) и (3.11) имеем

(3.13)

+ с^^, X))]; ^[рг2Ы]}) € Е+. 103

Ясно, что при х G Х° значение (3.13) сопоставляется каждому ДР (си, (<Zt)te(yv) е D: При x G X0 определяем (Mi, х)-задачу в следующем виде:

—> min> К е D*M; (З-14)

ей сопоставляется экстремум V*[x] и (непустое) экстремальное множество (sol)*[x]:

V*[x]= min £l[(zt)t(^] G E+, (3.15)

(sol)Hx] = {(а, G D"M| = V*[x]} G Fin(DHx]).

Посредством (3.15) определяется функция экстремума М1-задачи в виде

V*[■] = (V^[x])xexo GR+ [X0], (3.16)

которая используется в качестве критерия задачи

V* [x] —> min, x G X0,

оптимизации старта (предваряющей задачи), которой сопоставляется экстремум V и непу-

opt :

стое экстремальное множество X}

= min VG R+, (3.17)

x

ex0

Х0р1 = {х Е X0| V*[х] = У*} Е Рт(Х0).

Итак, наряду с основной задачей, введены предваряющая и финальная задачи маршрутизации, связываемые посредством (3.10) и (3.11).

§ 4. Декомпозиция полной задачи, 2

В настоящем параграфе рассматривается связь полной, предваряющей и финальной задач; мы используем построения [2, § 6] и аналогии с [6, раздел 4] (в [6] исследовалась аддитивная задача). Прежде всего наметим алгоритм на функциональном уровне (см. [2, § 5]), элементы которого будем далее обосновывать. Отметим сейчас следующие основные этапы.

1. С использованием (3.1) построить множество X00 возможных точек старта М2-зада-

чи.

2. Сформировать М2-задачу в виде системы (М2,х)-задач (3.7), х Е X00.

3. Определить функцию экстремума V*[■] М2-задачи.

4. С использованием V*[■] создать терминальную компоненту критерия М1-задачи.

5. Сформировать М1-задачу в виде системы (М1,х)-задач (3.14), х Е X0, используя терминальную компоненту критерия пункта 4.

6. Найти функцию экстремума V* [■] М1-задачи, экстремум У* и множество X(*pt, либо какую-то его точку.

7. Для найденной точки х0 Е X0pt построить оптимальное решение (М1, х0)-задачи в виде УП маршрут-траектория.

8. На траектории, соответствующей найденному в пункте 7 решению (М1, х0)-задачи, зафиксировать финишную точку х00 Е X00, используя второй элемент УП, отвечающей терминальному состоянию.

9. Используя х00 в качестве точки старта М2-задачи, построить оптимальное решение (М2, х00)-задачи в виде УП маршрут-траектория.

10. Склеить найденные ранее оптимальные решения (М1, х0)-задачи и (М2, х00)-задачи (раздельно склеиваются маршруты и траектории); после добавления к получившейся УП точки х0 реализуем (в виде триплета) оптимальный МП из множества (2.22).

В связи с 1-10 напомним ряд положений [2, §§6, 7], опуская доказательства. Так (см. [2, § 6]) при а Е А и в Е А2 маршрут аОв Е Р обладает свойствами:

((аО/З)1^, п) = а1 (г, ЛГ) и N + 1, п V* € 1, ЛГ)

Ща0р)\т^п) = (3\т - X, п - X) 0 N Ут Е N + 1, п).

Наряду со склеиванием маршрутов используем склеивание траекторий: при 7' Е 3* и 7'' Е 3* кортеж Е 3 определяем правилами

((г'Пг'ОИ = г'(г) Ут € 0, Х)&((2/П2//)(0) = г"(0 - ЛГ) У0 € ЛГ + 1, п); (4.1)

тогда, в частности, имеем (см. [2, предложение 6.3]) при х Е X0, а Е А, в Е А, 7' Е [х] и 7'' Е ¿в*[рг2(7'(Х))] включение

¿'□¿'' Е^ [х]. (4.2)

Свойства (4.1), (4.2) используем далее без дополнительных пояснений. При этом (см. [2, следствия 6.1, 6.2]) справедливо следующее положение.

Предложение 4.1. Если х Е X0, а Е А, 7' Е ^ [х] и (в, 7'') Е (во1)*[рг2(7'(Х))],

то

Сов [^'Ч = Св[7].

Следствие 4.1. При х Е X0, (а, 7') Е (во1)*[х] и (в, 7'') Е (8о1)*[рг2(7(Х))]

Сов [з'^''] = V * [х]. Из определений вытекает, что при х Е Х°, а 6 Л, ¡3 Е А и £ Д*о/зМ

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

Предложение 4.2 (см. [2, §7]). Пусть х Е Х°, а Е Л(3 Е А и е

€ 2а(:ф[х\. Кроме того, пусть п_м Е 3* имеет вид

(4 = (рг2(^),рг2(^)))&(< = ¿т+м Уг € 1,п - ЛГ).

Тогда

С учетом этих положений установлено [2, теорема 7.1] важное положение. Предложение 4.3. Справедливо равенство У = У*. Кроме того, имеем (см. [2, предложение 7.3]), что

у[х] = V*[х] Ух Е X0. (4.3)

Из (4.3) вытекает равенство функций У[-] = V*[■], где У[-] = (у[х])жеХо. Наконец (см. [2, (7.21)]),

Xo0pt = XV (4.4)

§ 5. Динамическое программирование (двухэтапный вариант)

Возвращаемся к этапам 1-10 предыдущего параграфа, учитывая предложение 4.3, (4.3) и (4.4). В силу (3.1) мы располагаем множеством X00 возможных точек старта М2-задачи; тем самым реализуется этап 1. Этап 2 реализуется посредством (3.6)-(3.9). Следующий шаг, отмеченный в 3, связан с построением 1/*[•], для чего привлекается аппарат ДП.

Прежде всего вводим оператор I*: N —> N посредством правила [2, (8.1)]: при К € N

1*(К) = К \{ рг2(г): г € ~*[К]}, (5.1)

где 2*[К] = {г € К2| (рг:(г) € К)&(рг2(г) € К)}; далее используются свойства отображения [20, (2.2.27), (2.2.28)]. Полагаем, что

е* = { К € Уг € К2 (рг^г) € К) (рг2(г) € К)}, (5.2)

получая семейство всех существенных (для дальнейших построений) списков М2-задачи; пусть &*3 = { К £ (5*| ^ = \К\} при ^ € 1,п — N (множество всех ^-элементных существенных списков). Ясно, что (см. [20, раздел 4.9]) = {1>п ~~ и

е1 = т:ге1,п-м\к*2},

где К2 = { рг^г): г € К2}; кроме того, имеем равенства

е*-1 = {К \ {г} : К € е*, г € 1*(К)} У в € 2, п - N. (5.3)

Итак, реализуется рекуррентная процедура е*п-м ^ е*п_м-1 ^ ... ^ е*, регулярный шаг которой соответствует (5.3). Далее строим слои пространства позиций М2-задачи. Вводим

М* = и М(Л (5.4)

и полагаем Д* = {(х, 0): х € М*}; кроме того, полагаем, что

Б*п_м = {(х,1,п-Х):х е X00}, (5.5)

завершая построение крайних слоев. В целях последующего построения промежуточных слоев мы при й £ 1,п — N — 1 и К £ &*3 последовательно вводим множества

Г, {К) = {з е\,п-м\к\ Ш и к е е:+1}, М*3[к] ± и м^,

зеЯ(к) (5.6)

О*[К] = {(х, К): х € М*[К]}

(реализуем схему ^*(К) ^ М*[К] ^ О* [К]). Теперь при в € 1, п - N - 1 полагаем

Д** = и О*[К]. (5.7)

к ее;

Итак (см. (5.4)-(5.7)), построены слои ..., , являющиеся (см. [20, предложе-

ние 4.9.3]) непустыми множествами;

{Б* С X* х {0})&(Д* С X* х в* У] е 1, п — Ы).

Следующий шаг — построение слоев функции Беллмана М2-задачи (см. [2, (8.9)-(8.14)]).

v* g R+ [D*]

Определяем v* G R+ [D*] явно, полагая, что (см. (5.4))

v0*(x, 0) = f (x) Vx GM*. (5.8)

Далее, используем (см. [20, предложение 4.9.4]) свойство [2, (8.10)]: при s G 1, n — N,

(x, K) G D**, j G I*(K) и z G M(j)

(pr2(z), K \{j}) G D*-!. (5.9)

Далее, строим функции Е ,..., С ], используя рекуррентную про-

цедуру

ь0 ^ ^ ... ^

v* ^ V* ^ ... ^ , (5.10)

начальный элемент которой соответствует (5.8), а регулярный шаг определяется следующим предложением (см. [2, (8.11)]).

Предложение 5.1. Если s G 1, n — N, то преобразование 1 в v* определяется правилом

v*(x,K) = min min sup({c*(x, pr:(z), K)+c*(z, K); i(p^z), K\{j})}) V(x,K) G D*.

jei*(K) zeM(j)

Заметим (см. [2, (2.33), (2.34)]), что все функции в (5.10) суть сужения единой функции Беллмана М2-задачи; тогда, в частности,

у*п_м(х,1,п- М) = У*[х] УхеХш. (5.11)

Тем самым завершается этап 3.

Замечание 1. В случае, когда нам требуется определить только экстремум V и множество Х°р1., процедуру (5.10) достаточно реализовать, используя вариант с перезаписью слоев (см. [2, замечание 2.1]). Если же требуется найти оптимальный МП, то данный вариант недостаточен, и в памяти вычислителя следует сохранять все слои функции Беллмана, участвующие в (5.10).

Этап 4 реализуется посредством (3.11), что позволяет ввести систему (М 1 , х)-задач, х Е X0, т. е. М 1-задачу с множеством X0 возможных точек старта. Тем самым реализуется этап 5, поскольку критерий М1-задачи теперь полностью определен.

Приступаем к реализации этапа 6, используя аппарат ДП. Прежде всего введем оператор I: N —> N посредством следующего правила: при К Е N

I*(K) = K \{ pr2(z): z G S"[K]}

где 3[K] = {z G Ki| (pr^z) G K)&(pr2(z) G K)}. В этой связи см. [20, (2.2.27), (2.2.28)]. Кроме того, пусть

= {K G N Vz G Ki (pr1(z) G K) (pr2(z) G K)} (5.12)

((5.12) — семейство всех существенных списков М1-задачи); SS = {K G Sö| s = |K|} при

s g 1, N. Ясно, что ©5v = {!) N} (синглетон) и

&\ = {{t}-.tehN\Ki} (см. § 3). Отметим также, что (см. [20, раздел 4.9])

^ . = { k \ rn: k G eb t G I

&l-i = {K\{t}: Ke&l tel\K)} Wse2,N. (5.13)

Получили (см. (5.12), (5.13)) рекуррентную процедуру е^ — е^_1 — ... — е1, регулярный шаг которой соответствует (5.13). После реализации данной процедуры мы располагаем семействами е1,..., е^, определяющими разбиение е1 (5.12). Создаем слои пространства позиций М1-задачи. Полагаем

I1 △ и гг. гг. Г- У00\\$т( П1 △

{Dl = {{х, 0):хе Xw})k{D% = {{х, 1, N): х Е Хи}), (5.14)

получая крайние слои. Если же 5 € 1, N — 1, то сначала при К Е создаем последовательно (см. [20, раздел 4.9]) множества

з ел"(к)

О« [К] = {(х, К): х € М«[К]} (итак, ^¡(К) — М«[К] — О« [К]); затем полагаем

Б« = и О«[К]. (5.15)

' s ,_,

K&eS

Посредством (5.14), (5.15) определены слои б0, Б. Все они являются непустыми множествами (см. [20, предложение 4.9.3]), причем в случае 5 € (х,К) Е 0\, 2 € ^(К) и г € Мз

(рг2(г),К \{2}) € £>¡-1. (5.16)

Рассмотрим формирование слоев функции Беллмана М1-задачи в виде функций

€ [Б0], V1 € [Б1 ],... , у% € ]. (5.17)

Итак, полагаем, что (см. (5.11), (5.14))

г;}(ж, 0) = У*[х] = у*п_м(х, 1, п - X) УхеХ00. (5.18)

Далее с учетом (5.16) полагаем при в € 1, N что преобразование в V« имеет следующий вид:

vS(x,K)= min min sup({c^(x, pr1(z),K)+ cj(z, K); vS-1(pr2(z), K \ {j})}) V(x,K) G DS.

jeih(K) zeMj j

(5.19)

Получили рекуррентную процедуру

vj ^ vi ^ ... ^ vN, (5.20)

регулярный шаг которой указан в (5.19). Подчеркнем, что все функции в (5.20) суть сужения единой функции Беллмана М1-задачи (см. [2, (2.34)]); тогда, в частности,

v'%(x,T^N) = V\x] УхеХ0. (5.21)

К процедуре (5.20) вполне применимо замечание 1. В силу (3.16) получаем функцию V^[•j. Как следствие (см. (3.17), предложение 4.3) определяем

¥ = У^ = min vUx, MV), (5.22)

xex° 108

а также множество (3.14), (4.4), поскольку

К* = х1ь = {хе Х°\ Л(^СТ) = (5.23)

Итак (см. (5.21)-(5.23)), этап 6 из §4 завершен, что является результатом построения склеенной процедуры

^ (^ ^ V5 ^ ... ^ <) (5.24)

на основе ДП (условие стыковки в (5.24) обеспечивается посредством (5.18)). Напомним, что в случае, когда нам достаточно найти V и можно использовать реализацию процедур (5.10) и (5.20) с перезаписью слоев [2, замечание 2.1], что доставляет некоторую экономию ресурсов памяти (см. [21]).

§ 6. Оптимизация маршрутного процесса

Приступаем к реализации этапа 7, располагая (см. (5.22), (5.23)) экстремумом V и множеством Х0р1 (далее нам достаточна любая точка множества (5.23)). Более того, в этой части нам требуются все функции, участвующие в (5.24); процедура с перезаписью слоев функции Беллмана здесь недостаточна. Фиксируем точку старта

х0 е Хр (6.1)

и полагаем у0 = (х°,х°), получая в силу (5.14) свойство (х°, € Далее используем процедуру [2, §9], излагаемую совсем кратко. Из упомянутого свойства УП (ж0, вытекает в силу (5.16), что (рг2(г), 1, N \ {_;'}) € при ] и. г Е М.,-, причем

(см. (5.19), (5.21)-(5.23), (6.1))

¥ = min_ min supdc^x0, pr^z), 1,N) + Ä(z, 1, iV); v'°N_1(pr2(z), 1,N\ {j})})- (6.2)

С учетом (6.2) выбираем G I^l, N) и y\ E M^, для которых

где (pr2(j/i), 1, N \ ^ -Djv-i- Поэтому согласно (5.19) имеем равенство

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

^_i(pr2(yi), 1, Л^ \ {Ci}) = min minsup({c«(pr2(yi),pr1(z),l,iV\{^i})

_¿&KhN\{M) zeMi __(6 4)

+ c)(z, 1, N \ fö}); ^_2(pr2(z), 1, N \ fö; j})}),

где (pr2{z)XN \ {6; Л) ^ Dn-2 ПРИ 3 G I\ {6}) и z G M, в силу (5.16). С учетом (6.4) выбираем £2 G I^l, N \ {£i}) и у2 Е М?2 со свойством

<-г(рт2(У1), 1, N \ {£}) = sup({d(pr2(y1),pr1(ya), 1, N \ {&}) + с\2(у2,1 ,N\ fö})

(6.5)

где (pr2(y2), 1 ,N \ fö; £2}) G D\_2. Из (6.3), (6.5) следует равенство

¥ = sup({max[cHpr2(yi_i),pr1(yi),l,^V \ { 0 : 3 G 1, t — 1>)

h _ h _ (6.6)

+ c\t(yt, 1..Y.U,:./-: 1./ 1})]; <_2(pr2(y2), 1 ,N\ fö; 6})})

(при N = 2 из (6.6) легко следует оптимальность УП ((¿¡jOjgi^, (iJjjjcjrj) как ДР fA7! i. .г")-задачи). В общем случае 2 ^ N процедуры выбора, подобные (6.3), (6.5), следует продолжать

вплоть до исчерпания 1, X; итогом будет построение маршрута £ = (^)7-^тт?^ £ А\ и траектории (г/г)г€сру ^ со свойством

(е, Ыда) е (8о1)Нх°]. (6.7)

Итак (см. (6.7)), этап 7 завершен. В частности, ум € X х X и (см. (3.10))

х00 = рг2(ум) € X00; (6.8)

посредством (6.8) реализуется этап 8, состоящий в конкретизации старта М2-задачи: мы получили (М2,х00)-задачу и приступаем к этапу 9 (напомним, что функции Ц, ^,...,

нам известны). Полагаем у0 = (ж00,ж00), где (ж00,1,п —X) е £>*_дг в силу (5.5). Тогда (см. предложение 5.1)

v^_N(x00,1, п - X) = min min sup({c*(x , pr1(z), 1, n — X) + c*(z, 1, n — X);

j€l*(l,n-N) гёMü)

<_N_1(pr2(z),M^X\{j})}),

____(6-9)

где (pr2(z), 1, n - X \ {j}) G при j E I*(l, n - N) и z e M(i). Здесь же отметим,

что в силу (5.11) и (6.8)

v*n_N(x00,l,n- X) = У*[ж00]. (6.10)

С учетом (6.9) и (6.10) выбираем щ Е I*(l, n — X) и у\ Е М^1), для которых

= зир({с V", рг^ух), 1, п - Х)+С;1(уь 1, п - X); ^.^(ш), 1, п - ЛГ\Ы)});

_ (6-11)

при этом (рг2(у1), 1, п — Л/ДЫ) Е Тогда с учетом предложения 5.1 имеем равен-

ство

v*n_N_1{pr2(y1),l,n - N\ {щ}) = min min sup({c*(pr2(y1),pr1(z),

j£i*(i,n-N\{m})zeM(j) __(6.12)

1, n - X \ {щ}) + c*(z, 1, n - X \ {щ}); v*n_N_2(pr2(z), 1, n - X \ {Vuj})}),

где (pr2(z),l,n- X \ G P*n_N_2 при j G Г(1,п-Х\ {щ}) и z E М(Л. С уче-

том (6.12) выбираем щ Е I*(l, п — X \ {щ}) и у2 G М^2) со свойством

<_jv_i(pr2(yi), 1, п - X \ {щ}) = sup({c*(pr2(yi), рГ1(у2), 1, п - X \ {г71>) , .

+ C;(y2,l,n-X\{r?1});<_w_2(pr2(y2),l,n-X\{r?1;r?2})}), 1 ' ;

получая включение (рг2(у2), 1, п — X \ {щ; r]2})}) G D^_N_2. Из (6.11) и (6.13) имеем

У*[ж00] = sup({max[c*(pr2(yi_1), рГ1(у4), 1, п - X \ {щ : j Е 1 ,t - 1})

iei,2

+ c*vt(yt, 1, n - X \ {Vj : j E 1, t - 1})]; <_w_2(pr2(y2), 1, n - X \ {щ-r]2})})

(6.14)

(при п = X + 2 из (6.14) легко следует оптимальность УП как ДР

(М2, х00)-задачи). В общем же случае N + 2 ^ п следует продолжать процедуры выбора, подобные (6.11), (6.13), вплоть до исчерпания 1, п — X. В результате будут построены маршрут г] = Е Л2 и траектория (///)/^0 п_Л: С 2*[х00] со свойством (аналогич-

ным (6.14))

что означает (см. (3.9)) справедливость включения

(чЛш)«^) ^ (6.15)

Тем самым завершается этап 9. Итак (см. (6.1), (6.7), (6.8)),

g К*> & (Vt)«¡w) G (V, dh)t^=N) G (soin*00]. (6.16)

Из (2.24), (4.3), (6.16) и следствия 4.1 вытекает, что

= ЛА = V[X°] = v,

(6.17)

где согласно (2.7) G Р и (yt)teó¿vü(yt)teó^r:Ñ G zî()v[x°l Итак (см- (2-9)> (6-17))>

(СО'П, (to)t&^(ih)t&ï=N) G D[:r0] : Wfo = V[x% (6.18)

поэтому имеем, что ñ) е (sol) [ж0] и (см. (2.25),(6.16))

Итак, оптимальный МП построен, чем и завершается этап 10, а, стало быть, и вся процедура 1-10. Заметим, что уже после выполнения этапа 6 мы располагаем (см. предложение 4.3) ответом на вопрос о разрешимости системы неравенств (2.15) при заданном допуске d G R+: упомянутая система разрешима тогда и только тогда, когда V ^ d (см. (2.21)). Построение МП (6.19) имеет смысл при положительном ответе: в (6.19) мы указываем тогда и конкретный способ разрешения неравенств (2.15); впрочем реализация 1-10 может представлять и самостоятельный интерес.

§ 7. Программная реализация (плоский случай)

Рассмотрим применение алгоритма на основе 1-10 для решения плоской минимаксной задачи маршрутизации с системой первоочередных заданий. Итак, рассмотрим вариант общей постановки, полагая, что X = М хМ; таким образом, в данном разделе мегаполисы суть непустые конечные плоские множества. Будем рассматривать случай, когда Mj = Mj х Mj при j G 1, п; ясно, что X" — непустое конечное плоское множество. Стоимости внешних перемещений будем (для простоты) оценивать евклидовым расстоянием. Внутренние работы определяем одинаково для всех мегаполисов: предполагаем, что с каждым из мегаполисов связывается точка из его выпуклой оболочки, в которую следует переместиться из пункта прибытия, после чего из этой точки следует переместиться в пункт отправления; по смыслу упомянутая точка является местом выполнения какого-либо действия, связанного с посещением данного мегаполиса. Качество выполнения упомянутых работ оцениваем посредством суммирования соответствующих евклидовых расстояний (имеются в виду расстояние от выбранного пункта прибытия до места выполнения упомянутого действия и расстояние от данного места до выбранного пункта отправления). Напомним, что при j G 1, N отношение Mj есть декартов квадрат Mj. Как видно из сказанного, в рассматриваемом сейчас случае функции стоимости не содержат зависимости от списка заданий. Полагаем заданными условия предшествования, влияющие на порядок посещения мегаполисов. В связи с упомянутой модельной задачей см. [4, §6]. Терминальная компонента (аддитивного) критерия определяется функцией евклидова расстояния до заданного непустого конечного множества на плоскости.

Исследуемые в данной работе алгоритмические конструкции были реализованы в виде программы для ПЭВМ, написанной на языке C++ и работающей под управлением 64-разрядной операционной системы Windows (начиная с версии Windows 7). Данная программа позволяет хранить исходные данные и результаты работы в текстовом файле специальной структуры, а для случая решения плоской задачи (мы такую задачу сейчас и рассматриваем) имеется возможность графического представления результатов в виде траектории

(ÍOv, (yt)t&Ñ^(yt)t&^Ñ,x°) G SOL.

(6.19)

посещения мегаполисов, увеличения отдельных участков графика и сохранения изображения в файл графического формата bmp; вычислительная часть программы реализована в отдельном от интерфейса пользователя потоке. Вычислительный эксперимент проводился на ПЭВМ с центральным процессором Intel Core i7 с объемом ОЗУ 64 ГБ с установленной операционной системой Windows 7 Максимальная SP1.

Рассматривалось решение следующего примера. Задано 68 мегаполисов (итак, n = 68). В качестве первоочередных выделены 34 мегаполиса, т. е. N = 34. В предваряющей задаче выделено 77 адресных пар, формирующих условия предшествования, а в финальной задаче, соответственно, 76 адресных пар. Множество возможных точек старта шестиэлементно: |X0| = 6. Все мегаполисы двенадцатиэлементны: |Mj | = 12. Их описание не приводится по соображениям объема (подробности см. на рисунке). Найдено значение задачи (экстремум) V = 134, 495208740234. Был найден оптимальный МП, включая (оптимальную) точку старта, указана точка финиша Mi-задачи. Время счета (это самое существенное) — 24 ч 16 мин 0 с.; оно вполне соответствует размерности М1-задачи и М2-задачи при их раздельном решении.

Рис. 1. Траектория решения задачи о посещении 68 мегаполисов при наличии 34-элементного семейства первоочередных заданий

Рассмотрим теперь пример со сравнением временных затрат на решение задачи с выделением и без выделения системы первоочередных заданий, имея в виду решение по методу ДП. Итак, в первом случае рассматривается решение минимаксной задачи маршру-

тизации с «равноправными» мегаполисами, при этом находится экстремум и оптимальный МП в постановке, не использующей декомпозицию. Такое решение требует, конечно, умеренной размерности полной задачи: у нас рассматривается случай 35 шестиэлементных мегаполисов. Во втором случае выделена система первоочередных заданий (используется декомпозиция исходной полной задачи). При этом в число первоочередных включены 18 мегаполисов, определяющих предваряющую задачу. Функции стоимости и тип внутренних работ аналогичны используемым в задаче с 68 мегаполисами (т. е. в уже рассмотренной «большой» задаче). Мы сравниваем значения экстремума и времена счета в обоих случаях. При этом в обоих вариантах применяемые процедуры выбрали одну и ту же точку старта х0 е X0. Итак, в случае «равноправных» мегаполисов был найден экстремум 79,8258819580078 (имеется в виду экстремум в смысле [2, (2.16)]). Время счета составило 37 ч 20 мин 29 с.

-

-100 -90 -80 -70 -60 -50 -40 -30 -20 -10 0 10 20 30 40 50 60 70 80 90

Рис. 2. Траектория, полученная при решении минимаксной задачи маршрутизации без

элементов декомпозиции

В случае варианта задачи с выделением системы первоочередных заданий (18 мегаполисов) экстремум равен 112,288604736328 (имеется в виду V (2.21)), а время счета — 1 с. Итак, допуская некоторый (умеренный) проигрыш по результату, мы кардинально выигрываем во времени вычисления. Данный пример показывает, что предлагаемый в работе подход может с успехом применяться и в тех случаях, когда по постановке исходной задачи не выделено какой-либо специальной системы первоочередных заданий, т. е. в ситуации,

когда все мегаполисы равноправны. Здесь целью применения может быть решение исходной задачи ощутимой размерности за приемлемое время, и в этой связи мы используем декомпозицию. В частности, такой подход может помочь в ситуации, когда требуется дать ответ на вопрос о разрешимости системы неравенств (2.15).

Рис. 3. Траектория, полученная при решении задачи умеренной размерности

с применением декомпозиции

Ограничиваясь данными примерами в вопросах вычислительной реализации, в следующих параграфах мы обсудим общие конструкции предыдущих разделов в применении к минимаксной задаче курьера [9] с элементами декомпозиции. Основной целью здесь является получение более простых представлений для упомянутых общих процедур.

§ 8. Минимаксная задача курьера с системой первоочередных заданий

В настоящем параграфе рассматривается весьма частный, но полезный для приложений, случай задачи (2.20), отвечающий ситуации, когда все мегаполисы одноэлементны. Итак, мы обращаемся к построениям [1, § 5], считая заданными пункты

т1 е X,

тп е X

(8.1)

и полагая, что Mj = {т:/} при ] Е 1,п. Сами пункты именуем городами, следуя традиции ЗК. Полагаем, конечно, что тр / т„ при р е 1,п и д 6 1,п \ {р}. Кроме того, полагаем, что т^ ф X" при ] Е 1,п (напомним, что € Пп(Х)). Заметим также, что в

нашем случае Шj = при ] € 1, п; итак, все отношения (2.1) в дальнейшем одно-

элементны. Мы сохраняем предположения раздела 2 относительно М1 и М2 при заданном №£2,11-2. Сохраняем также множества К^ и К2 (2.2).

Замечание 2. В части определения К1 и К2 можно использовать следующий вариант: фиксируем здесь числа п1 € N и п2 € М, а также кортежи

-^МУ, (Уг)^Т^ : МУ,

(^)гет^: 1, П2 —^ 1, П - ЛГ, : 1, п2 —► 1, п - М, ( " >

полагая, что К1 = : г € 1, п\} и К2 = {(е^, ¿¿): г е 1, п2}. Условия (2.3) в этом случае могут

быть переформулированы в следующем виде, использующем (8.2):

(У5 € € ц8 Ф щ Ví € Б)к(УН € Р'(М^) ЗЛ € Я: ^ V* € Я).

В данном случае (8.2) в виде условий предшествования имеем фактически планы следующих перевозок:

{тн т^. V? € тдг+г,. V? € 1,п2).

Итак, первые два кортежа из (8.2) «работают» в 1, N, а вторые два — в 1, п — N.

Мы сохраняем, однако, в дальнейшем обозначения (2.4), (2.5) и толкование (2.2), (2.3) (допускающие, в частности, случай, когда какое-то из множеств К1, К2 или оба эти множества являются пустыми), а вариант замечания 2 рассматриваем в качестве частного случая. Итак, А1, А2 и Р соответствуют §2.

Заметим, что в силу (2.11) имеем в рассматриваемом случае цепочки равенств Жу = = = {ттг,-} при ] € 1,п. При этом X = {т^: г € 1,п} есть множество всех городов, подлежащих посещению, X = X и X0. Напомним, что при упомянутых множествах X и X определена функция с € [X х X х N В отношении функций с1,..., сп полагаем далее, что каждая них тождественно равна нулю (итак, мы рассматриваем задачу без внутренних работ, что соответствует постановке задачи курьера в [9]). Отметим, что в нашем случае М = {mj■. ] € N + 1,п}. Мы сохраняем определение /. Сейчас введем в рассмотрение несколько иной тип траекторий: при х € X0 и 7 € Р полагаем, что

у [ж; 7]: 07п —> X (8.3)

определяется следующими правилами: у[ж;7](0) = х и у|.г: 7) (7.) = m7(t) при / G 1,п. Мы введем оценку качества траекторий вида (8.3), полагая при x G X0 и 7 G P, что

тг[ж;7] = sup({maxc(y[x;7](i- 1), у [ж; 7](i), 71(М*)); /(у [х\ т](п))}) (8-4)

te i,n

(здесь мы заметим, что в силу (2.7) mY(n) G M; поэтому определено значение f (y[x; 7](n))). Заметим, что во многих случаях нас интересует вопрос: разрешима ли для заданного допуска d G R+ система неравенств

(с(у[ж;7](*- l),y[x;i](tW(t^)) < d Vi G MÏ)&(/(у[ж;7](п)) ^ d) (8.5)

при рациональном выборе x G X0 и 7 G P. Вводя (8.4), мы стремимся привлечь для ответа на этот вопрос (а также на вопрос, для каких именно x и 7 реализуется (8.5)) вспомогательную экстремальную задачу

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

п[x; 7] —» min, x G X0, 7 G P, (8.6)

которой сопоставляем экстремум v G R+ и непустое множество sol всех оптимальных (композиционных) решений:

v = min n[x; y] = min min n[x; y] G R+, (8.7)

(x,7)ex0xP xex0 7eP +

sol = {(x,Y) G X0 x P| n[x; y] = v} G Fin(X0 x P). (8.8)

Заметим, что (8.7), (8.8) могут быть извлечены из построений предыдущих параграфов. Рассмотрим данные конкретизации. Так, в нашем случае при x G X0 и y G P в виде [x] реализуется одноэлементное множество: [x] = {Z7[x]}, где ZY[x] G Z определяется условиями

(Z7[x](0) = (x, x))L(Z1[x](t) = (m7(t), m7(t)) Vi G l,n).

Соответственно, D[x] = {(y,Zy[x]): y G P} G Fin(P x Z) при x G X0. Наконец, в нашем случае

D = {(y, Z7[x], x) : (y, x) G P x X0}.

Возвращаясь к (2.16), заметим, что при x G Xo, 7 G Р и (zt)teo^ G Z1\x\ в рассматриваемом случае

£i[{zt)t&^\ = C7[ZtN] = sup({max[c(pr2(Z7[ж](t - 1)),pr1(Z7[x](í)),^(t/ñ))};

tei.ii (8.9)

f (pr2(Z7 [x](n)))});

учтем теперь тот факт, что Z7[:z](£) = (у [ж; 7] (С), У [ж; т](£)) ПРИ С G 0, п. Тогда в силу (8.9) имеем (в рассматриваемом случае «нулевых» функций ci,...,cn) при x G X0, 7 G Р и (zt)tGQ^ G Z1\x\ следующую цепочку равенств

= sup({max[c(y[x;7](í- 1), у[ж; 7](í), 7^^))];/(pr2(Z7[:r](n)))}) = tt[x-,j\.

te i,n

_ (8.10)

Данная цепочка равенств реализуется, конечно, при x G Xo и (7, (zt)teô^) G D[x]. В итоге из (2.18) получаем при x G X0, что

V\x] = min min CK^îWïttt 1 = min7rí:z; y1 G R+; (8.11)

-reP (zt)te^z~f[x] 7eP

итак, в рассматриваемом случае V[x] есть экстремум задачи (курьера)

n[x; y] —> min, y G P, для которой через Popt[x] обозначим множество всех оптимальных маршрутов:

Popt[x] = {y g P| n[x; y] = V/[x]} G P'(P). (8.12)

Далее, из (2.21), (8.7) и (8.11) получаем равенство

v = min V[x] = V. (8.13)

iex0

Заметим, что система неравенств (8.5) разрешима тогда и только тогда, когда v ^ d или, что то же самое (см. (8.13)),

V ^ d. (8.14)

В этой связи уместно рассмотреть в первую очередь конкретизацию конструкций, связанных с процедурой 1-10 и реализующих V (см. этап 6 и предложение 4.3). Итак, рассмотрим конкретизацию процедуры построения слоев функции Беллмана в предваряющей и финальной задачах. Прежде всего отметим, что согласно (3.1) в нашем случае

X00 = {ту. 3 £ 1,ЛГ\К1}, (8.15)

где определение К1 соответствует § 3 (если К1 определено в духе замечания 2, т. е. К1 = = {(цг,1/г): г Е 1,щ}, Т0К1 = г Е 1,щ}). Далее, используем I* (5.1) и в* (5.2), после чего получаем в* при в Е 1,п — N. Используем также (5.4) и (5.5); тогда (см. (3.2))

М* = {mN+j: 3 Е l,n- N\K*2}, (8.16)

Щ и соответствуют § 5. При в Е 1, п - X - 1 и К Е 6* используем К) (5.6),

и при этом

М*[К] = {т*+3: 3 € )}; (8.17)

Ю*[Х] соответствует (5.6) при условии (8.17). Как следствие I)* определяем посредством (5.7) при ^ € 1, п — X — 1. В итоге все слои Б{,..., определены и являются непустыми множествами. Используя (5.8) и (8.16), определяем V* € При этом согласно (5.9) в нашем случае при в € 1,п — X, (х,К) Е Б*3 и 3 Е 1*(К) имеем включение

(т*,к \{з}) € я*-.

Для построения слоев функции Беллмана используем рекуррентную процедуру с начальным элементом (5.8). Однако, сначала мы конкретизируем функцию с*. Точнее, отметим, что в рассматриваемом случае X* = {тм+]'- 3 Е 1, п — X}, а X* = X* и X00. Тогда с* € [X* х X* х Ш*] определяется посредством (3.5) при упомянутых конкретизациях X* и X*. Полагаем, что функции с*,..., СП_* тождественно равны нулю. Вернемся к построению слоев функции Беллмана, располагая функцией V).

Итак, если з € 1,п —X и функция £ И+[Б*8_]\ уже построена, V* Е 71+\Б*]

*

в

определяем условием, вытекающим из предложения 5.1: при (x, K) Е Б

v*(x,K) = min sup({c*(x, mN+j, K); v*-1(mN+j,K \ {j})}). (8.18)

j ei*(K)

Посредством v**-N определяем функцию У*[-] = (y*[x])xeXoo Е R+ [X00]: см. (5.11). Итак, конкретизируется процедура (5.10), доставляющая функцию экстремума V*[■]. Регулярный шаг процедуры указан в (8.18), а финальная функция соответствует (5.11).

Располагая функцией V*[■], начинаем построение слоев функции Беллмана в предваряющей задаче, следуя § 5 при условии одноэлементности мегаполисов (см. (8.1)). Напомним, что в исследуемом сейчас случае = {т»: г £ 1, X} и X' = X' U Х°. При этих условиях функция c} Е R+[X} х X} х N}] определяется посредством (3.12). Функции c1,..., cN в рассматриваемом сейчас случае тождественно равны нулю каждая. Мы сохраняем определение отображения I} § 5, а также семейства S}. Последнее допускает разбиение в сумму подсемейств ..., при этом = {1, X} (см. § 5), определяется в (5.12), где Ki соответствует § 3, а преобразование SS в SS-1 соответствует (5.13).

После построения , ©дг конструируются слои пространства позиций. Исполь-

зуя (5.14) и (8.15), определяем Б\ и Б\. После этого при s Е 1, N — 1 я К Е реализуем D,s| |. учитывая, что (в рассматриваемом случае) Л4Ц К \ = {rrij: 3 Е JI (К)}. Затем при s Е 1, X — 1 используем (5.15) для построения Б\. Тем самым определяются все слои Б0, Б1},..., Б^, являющиеся непустыми множествами.

Далее, определяем слои (5.17) функции Беллмана Mi-задачи. Здесь определяется по найденной ранее функции (см. (5.18)), определенной на множестве X00 (8.15). По функции У*[-] определяем f (3.11), учитывая, что в данном случае

М^ = {m¿: геЩ.

Используя (5.16), получаем из (5.19), что при s Е 1, X преобразование v'l_1 в v\ имеет вид

vS(x,K) = min sup({cs(x,mj,K); v¡-1(mJ-\ {j})}) V(x,K) G D. (8.19)

Наконец, посредством (5.21) определяется функция Vs[-] экстремума предваряющей задачи; итак, процедура (5.20) в рассматриваемом конкретном варианте (см. (8.19)) приводит (см. (4.3)) к построению У[-] и, как следствие, к нахождению V (см. (2.21)) и X0pt (2.24). В случае (8.14) (и только в этом случае) система неравенств (8.5) разрешима: УП (x, y) G G X0 x P со свойством (8.5) существует тогда и только тогда, когда выполнено неравенство (8.14); данное неравенство мы можем проверить после реализации склеенной процедуры (5.24) в упомянутом ее частном варианте. Подчеркнем, что данная процедура в упомянутом варианте может быть реализована с перезаписью слоев функции Беллмана (см. за-

s s s

мечание 1, а также аналогичное свойство для v0,vi,...,vN), т.е. с некоторой экономией ресурсов памяти.

Обсудим теперь вопрос о построении (оптимального) решения из множества (8.8), используя рассматриваемый здесь вариант процедуры (5.24). Здесь мы полагаем, что данная процедура реализована в полном объеме (схема с перезаписью слоев здесь недостаточна) и мы, в результате, располагаем всеми функциями

v0, < ..., , v0, vS .

Итак, рассмотрим вариант построений § 6 для минимаксной задачи курьера с оптимизацией точки старта, имея уже V и множество X°pt. Заметим, что в силу (8.10) и одноэлементности пучка траекторий [x] при x G X0 и y G P имеем равенство

C7[Z7[x]] = n[x; y]. (8.20)

Вернемся к (6.19) и (8.10), получая при этом следующее равенство:

SOL = {(y, Z7[x], x): (x, y) G sol}. (8.21)

Замечание 3. Проверим (8.21). Пусть Л — множество в правой части (8.21). Выберем произвольно триплет (к, (í¿t)te0~H, ж*) £ SOL. Тогда

(«> Mteö^*) е D (8-22)

и при этом справедливо следующее равенство

Из (2.10) и (8.22) вытекает, что (к, (ut)t£öTi) е 0[ж*], а потому (см. (2.10), (8.22))

MteSU G 2к[х*], где к G P и ж* G X0. Но ZK[x*] = {ZK[x*]}, а тогда имеем равенство

(ut)íeS^ = ZK[ ж*]. (8.23)

В этом случае согласно (8.20) и (8.23) имеем, что

тг[ж*; к] = о^] = V = v

(учли (8.13)). Тогда

(ж*,к) € X0 х P: п[ж*; к] = v. В силу (8.8) (ж *, к) € sol. Получили, что (см. (8.23))

(к, («t)teo^T>х*) = ^ге[ж*], ж*): (ж*, к) € sol.

Иными словами, (к, {v,t)t&о~п,ж*) € Л. Установлено вложение

SOL с Л. (8.24)

Пусть Л € Л. Тогда для некоторой УП (ж *, х) € sol справедливо равенство

Л = (х, Zx[ж *],ж*). (8.25)

Поскольку х* € X0 (см. (8.8)), имеем очевидное равенство ^Х[х *] = {^Х[х *]}. В частности,

1т * 1

^Х1х ] € ^Х

Г/г> * А Г~ 'ОГ™ * 1 гт т

Х

При этом согласно (8.20) имеем равенство

Zx[x *] ezx[x*],

а тогда в силу (2.9) (х, Zx[x *]) € D[x *], т.к. х € P в силу (8.8). Но тогда согласно (2.10)

(X, Zx[x *],x *) € D. (8.26)

Cx[Zx[x * ]]= n[x *; х]. (8.27)

л*.

Но по выбору (х, ж *) получаем из (8.8), что п[ж *; х] = v. Тогда в силу (8.13) и (8.27) имеем равенство

Cx[Zx [ж * ]]= V. (8.28)

Поэтому из (8.26) и (8.28) получаем следующее свойство

(X, ^х[ж*],ж *) € D: Cx[Zx[ж*]] = V. (8.29)

Как следствие (см. (2.22), (8.29)) имеем включение (х, ^х[ж *], ж *) € SOL. С учетом (8.25) получаем, что Л € SOL, чем и завершается проверка вложения Л с SOL, откуда (см. (8.24)) следует равенство SOL = Л. В силу определения Л это означает справедливость (8.21).

Согласно (8.21) построение элемента SOL сводится к построению элемента sol. Заметим, что последнее достигается применением процедуры § 6 с очевидными упрощениями и мы обсудим ее предельно кратко, фиксируя ж° (6.1). Напомним, что экстремум V = v уже найден. По выбору x° мы приходим к следующему равенству, вытекающему (в нашем случае) из (6.2)

¥ = тш_ sup({c\x°,mj,l^Ñy,v)4_1(mj,T^Ñ\{j})}), j&KhN)

с учетом которого реализуем следующий частный случай (6.3): выбираем ^ е ГО- N) со свойством

y = suP({cV,™?1,CT);^-iK1,CT\{£i})}) (8.30)

(напомним, что в нашем случае y1 в (6.3) есть УП (m^ , m^)). При этом (m^, 1, N \ {^1}) Е Е Б^-1 и в силу (6.4)

j€l4l,W\{?l})

а тогда реализуем (6.5) в следующей форме: находим £2 € 1^(1, X \ {£1}) со свойством

<-1(т€1,1, N \ {&}) = 8пр({е«(т?1, , 1, N \ {&}); <-2(шСа, 1, N \ {£; &})}) (8.31)

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

(роль у2 в (6.5) исполняет УП (т?2, т?2)). При этом (т?2,1,Х \ {£ь£2}) £ -0^-2 • Далее, процедуры выбора индексов, подобные (8.30) и (8.31), следует продолжать вплоть до исчерпания 1, АГ. В итоге будут реализованы маршрут £ = (ц,;).,^— € А\ и сопутствующая траектория

Ь -—► (ш^ ): 1, N —► X х X, (8.32)

которая в построениях общей части дополнялась УП у0 = (х0, х0) и обозначалась через (ЫгеолЬ а в данном построении однозначно определяется маршрутом ц. Мы сохраняем для кортежа (8.32), дополняемого УП у0, упомянутое обозначение, получая свойство (6.7). Как и в общей части (см. (6.8)), фиксируем

х00 = РГ2^) = е X00 (8.33)

в качестве точки старта финальной задачи. При этом 1, п — X) Е и полагаем

у0 = (х00,х00) = (ш^, т^). Далее, из (3.2), (6.9) и (6.10) имеем в рассматриваемом случае цепочку равенств

У*[ж00] =<_м(ж00,1,п-Х) = гшп 8ир({с*(ж00, 1, п - X);

7п-ЛМ _

;/€1*(1,п-Л0

где ж00 соответствует (8.33). С учетом этого выбираем щ Е 1*(1, п — X) со свойством

У*[хт] = ь* 1,п -X) =

пп 1 _!__ ; __(8.34)

= 8ир({е*(ж , 1, п - N); ^(т^, 1, п - N \ {П1})})

и полагаем ух = (т^+П1 +П1). Это соответствует (см. (8.34)) реализации (6.11). При этом, поскольку (ж00,1, п — X) € £>*_дг,

(тм+т, 1,п-М\{щ}) ЕО*п_м_1. С учетом этого (см. (6.12)) имеем следующее равенство

Уп-м-1(тм+т, 1, п - X \ {щ}) = гшп тр({с*(тм+Г11,тм+у, 1, п - X \ {щ});

^{^п-М^гц})

1, п - X \ {г]ь Л)}).

С учетом этого выбираем индекс щ Е 1*(1, п — X \ {/71}) со свойством

(8.35)

<-лг-1 (тм+т, 1, П - X \ {щ}) = тр({с*(тм+Г11,тм+Г12,1,п - X \ {щ});

^П-М-2(тМ+П2 ) 1, п - N \{пх; П2})})

и полагаем у2 = (тМ+П2 ,тМ+П2); это соответствует реализации (6.13). При этом, конечно,

(тм+П2,1,п - N \ {П1; П2}) е -2.

Далее, процедуры выбора, подобные (8.34) и (8.35), следует продолжать вплоть до исчерпания 1,п — X. В итоге будет построен маршрут // = Е Д2 и сопутствующая траектория

£ |—> (771^+774,^^+774): 1,п — X —> X х X, (8.36)

которая в построениях общей части дополнялась УП = (x°°,x00) и обозначалась через {yi)iso.n-jV) а в Данном конкретном случае полностью определяется маршрутом //. Сохраняя для кортежа (8.36) упомянутое обозначение, мы получаем (6.15). Таким образом, мы реализовали (6.16), где (yt)t&од? есть дополненный УП (ж0, ж0) кортеж (8.32), а (■yt)t& п_дг есть кортеж (8.36), дополненный УП (x°°,x00). Как следствие получаем (6.19). Теперь заметим, что при вышеупомянутых конкретизациях £0п € P и

(см. (2.9), (2.19), (2.22), (6.19)), а потому

(yt)teo^B(yt)teQ^w = ZiCjv[x°]. (8.37)

При этом маршруту £0п сопоставляется сопутствующая (по смыслу) траектория

11—> (ще<>г,)(г),ще<>г,№)-- 1,п —>1x1, дополняемая УП (x°,x°). При этом, конечно, согласно (8.10)

[Zfon[x°]] = n[x°; £0п], (8.38)

где (согласно (2.22), (6.19)) (£0п,Z?on[x°],x°) € D, кроме того,

Qon [Z?on [x° ]] = V. С учетом (8.13) и (8.38) получаем, следовательно, равенство

n[x°; £0п] = v. (8.39)

Вместе с тем справедливо (6.18), а тогда из (8.37) и (8.38) вытекает равенство n[x°; £0п] = = ]. Это означает (см. (8.12)), что £0п € Popt[x°]. В свою очередь, из (8.8) и (8.39) имеем, что

(x°,£0п) € sol.

Итак, требуемое оптимальное решение задачи (8.6) построено; ключевыми моментами здесь являются процедуры, реализующие £ и п (см. (8.30), (8.31), (8.34), (8.35)). В связи с вопросами вычислительной реализации решений в минимаксной задаче курьера см. [3].

СПИСОК ЛИТЕРАТУРЫ

1. Ченцов А. Г., Ченцов А. А. Динамическое программирование и вопросы разрешимости задачи маршрутизации «на узкие места» с ресурсными ограничениями // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. 2022. Т. 32. Вып. 4. C. 569-592. https://doi.org/10.35634/vm220406

2. Ченцов А. Г. Задача маршрутизации «на узкие места» с системой первоочередных заданий // Известия Института математики и информатики Удмуртского государственного университета. 2023. Т. 61. С. 156-186. https://doi.org/10.35634/2226-3594-2023-61-09

3. Ченцов А. Г., Ченцов А. А., Сесекин А. Н. Динамическое программирование в задаче курьера на узкие места с применением в авиационной логистике // Управление и обработка информации в технических системах: Материалы XVIII Всероссийской научно-практической конференции; XIV молодёжной школы-семинара, 3-7 апреля 2023, Домбай, Карачаево-Черкесская Республика. Таганрог, 2023. С. 34-44.

4. Ченцов А. Г., Ченцов П. А. Динамическое программирование в задаче маршрутизации: декомпозиционный вариант // Вестник российских университетов. Математика. 2022. Т. 27. № 137. С. 95-124. https://doi.org/10.20310/2686-9667-2022-27-137-95-124

5. Ченцов А. Г., Ченцов П. А. Экстремальная двухэтапная задача маршрутизации и процедуры на основе динамического программирования // Труды Института математики и механики УрО РАН. 2022. Т. 28. № 2. С. 215-248. https://doi.org/10.21538/0134-4889-2022-28-2-215-248

6. Ченцов А. Г., Ченцов П. А. Двухэтапное динамическое программирование в задаче маршрутизации с элементами декомпозиции // Автоматика и телемеханика. 2023. Вып. 5. С. 133-164. https ://www. mathnet. ru/rus/at 16064

7. Ченцов А. Г., Ченцов А. А., Сесекин А. Н. Задачи маршрутизации перемещений с неаддитивным агрегированием затрат. М.: URSS, 2020.

8. Сергеев С. И. Алгоритмы решения минимаксной задачи коммивояжера. I. Подход на основе динамического программирования//Автоматика и телемеханика. 1995. Вып. 7. С. 144-150. https://www.mathnet.ru/rus/at3684

9. Меламед И. И., Сергеев С. И., Сигал И. Х. Задача коммивояжера. Вопросы теории // Автоматика и телемеханика. 1989. Вып. 9. С. 3-34. https://www.mathnet.ru/rus/at6414

10. Gutin G., Punnen A. P. The traveling salesman problem and its variations. New York: Springer, 2007.

11. Cook W.J. In pursuit of the traveling salesman: Mathematics at the limits of computation. Princeton: Princeton University Press, 2012.

12. Гимади Э.Х., Хачай М. Ю. Экстремальные задачи на множествах перестановок. Екатеринбург: УМЦ УПИ, 2016.

13. Литл Дж., Мурти К., Суини Д., Кэрел К. Алгоритм для решения задачи о коммивояжере // Экономика и математические методы. 1965. Т. 1. Вып. 1. С. 94-107.

14. Беллман Р. Применение динамического программирования к задаче о коммивояжере // Кибернетический сборник. М.: Мир, 1964. Т. 9. С. 219-228.

15. Хелд М., Карп Р. М. Применение динамического программирования к задачам упорядочения // Кибернетический сборник. М.: Мир, 1964. Т. 9. С. 202-218.

16. Куратовский К., Мостовский А. Теория множеств. М.: Мир, 1970.

17. Дьедонне Ж. Основы современного анализа. М.: Мир, 1964.

18. Варга Дж. Оптимальное управление дифференциальными и функциональными уравнениями. М.: Наука, 1977.

19. Кормен Т., Лейзерсон Ч., Ривест Р. Алгоритмы: построение и анализ. М.: МЦНМО, 2000.

20. Ченцов А. Г. Экстремальные задачи маршрутизации и распределения заданий: вопросы теории. М.-Ижевск: Ижевский институт компьютерных исследований, 2008.

21. Ченцов А. Г., Ченцов А. А. К вопросу о нахождении значения маршрутной задачи с ограничениями // Проблемы управления и информатики. 2016. № 1. С. 41-54.

Поступила в редакцию 04.09.2023

Принята к публикации 05.10.2023

Ченцов Александр Георгиевич, д. ф.-м. н., член-корреспондент РАН, главный научный сотрудник, отдел управляемых систем, Институт математики и механики им. Н. Н. Красовского УрО РАН, 620108, Россия, г. Екатеринбург, ул. С. Ковалевской, 16;

профессор, кафедра информационных технологий и систем управления, Уральский федеральный университет, 620002, Россия, г. Екатеринбург, ул. Мира, 19. ORCID: https://orcid.org/0000-0001-6568-0703 E-mail: chentsov@imm.uran.ru

Ченцов Алексей Александрович, к. ф.-м. н., научный сотрудник, отдел управляемых систем, Институт математики и механики им. Н. Н. Красовского УрО РАН, 620108, Россия, г. Екатеринбург, ул. С. Ковалевской, 16. ORCID: https://orcid.org/0000-0002-0646-9147 E-mail: chentsov.a@binsys.ru

Цитирование: А. Г. Ченцов, А. A. Ченцов. Минимаксная задача маршрутизации с системой первоочередных заданий // Известия Института математики и информатики Удмуртского государственного университета. 2023. Т. 62. С. 96-124.

A. G. Chentsov, A. A. Chentsov

Minimax routing problem with a system of priority tasks

Keywords: dynamic programming, decomposition, route.

MSC2020: 49L20, 90C39

DOI: 10.35634/2226-3594-2023-62-08

For a minimax routing problem with precedence conditions and cost functions that allow dependence on the list of tasks, we study the statement for which some of the tasks are allocated as first-priority ones. Other tasks can be started only after the fulfillment of priority tasks. The tasks themselves are connected with visiting megacities and, in particular, individual cities (terms corresponding to works in the field of solving the traveling salesman problem). One needs to find the extremum of arising two-stage problem with a minimax criterion, as well as the optimal compositional solution. In the paper, the optimal algorithm implemented on a PC is substantiated and built; a computational experiment is carried out. Possible applications may be related to some problems of aviation logistics in which it is required to ensure the visit of one vehicle (airplane or helicopter) to a system of aerodromes under a limited fuel reserve at each stage of the flight task; refueling is expected at points of visit (it is also assumed that a set of priority tasks is allocated).

REFERENCES

1. Chentsov A. G., Chentsov A. A. Dynamic programming and questions of solvability of route bottleneck problem with resource constraints, Vestnik Udmurtskogo Universiteta. Matematika. Mekhanika. Komp 'yuternye Nauki, 2022, vol. 32, issue 4, pp. 569-592 (in Russian). https://doi.org/10.35634/vm220406

2. Chentsov A. G. A bottleneck routing problem with a system of priority tasks, Izvestiya Instituta Matematiki i Informatiki Udmurtskogo Gosudarstvennogo Universiteta, 2023, vol. 61, pp. 156-186 (in Russian). https://doi.org/10.35634/2226-3594-2023-61-09

3. Chentsov A. G., Chentsov A. A., Sesekin A.N. Dynamic programming in the task of a courier to bottlenecks with application in aviation logistics, Management and processing of information in technical systems: Proceedings of the XVIII All-Russian scientific and practical conference and the XIV youth school-seminar, April 3-7, 2023, Dombai, Karachay-Cherkess Republic. Taganrog, 2023, pp. 34-44.

4. Chentsov A. G., Chentsov P. A. Dynamic programming in the routing problem: decomposition variant, Vestnik Rossiiskikh Universitetov. Matematika, 2022, vol. 27, no. 137, pp. 95-124 (in Russian). https://doi.org/10.20310/2686-9667-2022-27-137-95-124

5. Chentsov A. G., Chentsov P. A. An extremal two-stage routing problem and procedures based on dynamic programming, Trudy Instituta Matematiki i Mekhaniki UrO RAN, 2022, vol. 28, no. 2, pp. 215-248 (in Russian). https://doi.org/10.21538/0134-4889-2022-28-2-215-248

6. Chentsov A. G., Chentsov P. A. Two-stage dynamic programming in the routing problem with decomposition, Automation and Remote Control, 2023, vol. 84, no. 5, pp. 609-632. https://www.mathnet.ru/eng/at16064

7. Chentsov A. G., Chentsov A. A., Sesekin A. N. Zadachi marshrutizatsii peremeshchenii s nead-ditivnym agregirovaniem zatrat (Routing problems with non-additive cost aggregation), Moscow: URSS, 2020.

8. Sergeev S. I. Algorithms for solving the minimax problem of the traveling salesman. I: An approach based on dynamic programming, Automation and Remote Control, 1995, vol. 56, no. 7, pp. 1027-1032. https://zbmath.org/0917.90252

9. Melamed 1.1., Sergeev S. I., Sigal I. Kh. The traveling salesman problem. I: Theoretical issues, Automation and Remote Control, 1989, vol. 50, no. 9, pp. 1147-1173. https://zbmath.org/0705.90070

10. Gutin G., Punnen A. P. The traveling salesman problem and its variations, New York: Springer, 2007. https://doi. org/10.1007/b101971

11. Cook W. J. In pursuit of the traveling salesman. Mathematics at the limits of computation, Princeton: Princeton University Press, 2012. https://zbmath.org/1236.00007

12. Gimadi E.Kh., Khachai M. Yu. Ekstremal'nye zadachi na mnozhestvakh perestanovok (Extreme problems on sets of permutations) Yekaterinburg: UMC UPI, 2016.

13. Little J. D. C., Murty K. G., Sweeney D. W., Karel C. An algorithm for the traveling salesman problem, Operations Research, 1963, vol. 11, issue 6, pp. 972-989. https://doi.org/10.1287/opre.11.6.972

14. Bellman R. Dynamic programming treatment of the travelling salesman problem, Journal of the ACM, 1962, vol. 9, issue 1, pp. 61-63. https://doi.org/10.1145/321105.321111

15. Held M., Karp R. M. A dynamic programming approach to sequencing problems, Journal of the Society for Industrial and Applied Mathematics, 1962, vol. 10, issue 1, pp. 196-210. https://doi.org/10.1137/0110015

16. Kuratowski K., Mostowski A. Set theory, Amsterdam: North-Holland, 1967.

17. Dieudonne J. A. Foundations of modern analysis, New York: Academic Press, 1960. https://zbmath.org/0100.04201

18. Warga J. Optimal control of differential and functional equations, Academic Press, 1972. https ://zbmath. org/025 3.49001

19. Cormen T. H., Leiserson C.E., Rivest R. L., Stein C. Introduction to algorithms, Cambridge: MIT Press, 1990. https://zbmath.org/1158.68538

20. Chentsov A. G. Ekstremal'nye zadachi marshrutizatsii: voprosy teorii (Extreme tasks of routing and distribution of tasks: theory questions), Moscow-Izhevsk: Regular and Chaotic Dynamics, Institute of Computer Science, 2008.

21. Chentsov A. G., Chentsov A. A. On the question of finding the value of the route problem with constraints, Journal of Automation and Information Sciences, 2016, vol. 48, issue 2, pp. 11-27. https://doi.org/10.1615/jautomatinfscien.v48.i2.30

Received 04.09.2023 Accepted 05.10.2023

Aleksandr Georgievich Chentsov, Doctor of Physics and Mathematics, Corresponding Member, Russian Academy of Science, Chief Researcher, N. N. Krasovskii Institute of Mathematics and Mechanics, Ural Branch of the Russian Academy of Sciences, ul. S. Kovalevskoi, 16, Yekaterinburg, 620108, Russia; Professor, Ural Federal University, ul. Mira, 19, Yekaterinburg, 620002, Russia. ORCID: https://orcid.org/0000-0001-6568-0703 E-mail: chentsov@imm.uran.ru

Aleksei Aleksandrovich Chentsov, Candidate of Physics and Mathematics, Researcher, N. N. Krasovskii Institute of Mathematics and Mechanics, Ural Branch of the Russian Academy of Sciences, ul. S. Ko-valevskoi, 16, Yekaterinburg, 620108, Russia. ORCID: https://orcid.org/0000-0002-0646-9147 E-mail: chentsov.a@binsys.ru

Citation: A. G. Chentsov, A. A. Chentsov. Minimax routing problem with a system of priority tasks, Izvestiya Instituta Matematiki i Informatiki Udmurtskogo Gosudarstvennogo Universiteta, 2023, vol. 62, pp. 96-124.

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