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

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

CC BY
52
7
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
МАРШРУТИЗАЦИЯ ПЕРЕМЕЩЕНИЙ / СИСТЕМА ОГРАНИЧЕНИЙ / ДИНАМИЧЕСКОЕ ПРОГРАММИРОВАНИЕ

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

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

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

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

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

ON THE APPLICATION OF THE MINIMAX TRAVELING SALESMAN PROBLEM IN AVIATION LOGISTICS

We consider the problem of organizing a system of movement between the given points (cities) under conditions of resource constraints and in the presence of precedence conditions. The solvability conditions for this problem are extracted from the solution to the minimax traveling salesman problem (the bottleneck problem) without resource constraints. The solution to this extreme routing problem is determined on the basis of a broadly understood dynamic programming in its ``non-additive'' version. Possible applications may be related to the formation of the route of a vehicle (airplane or helicopter) in order to organize a transportation system in conditions of fuel shortage; it is assumed that in addition to the mandatory visits to all points, there are requirements for the passing movement of goods between some of the points, which creates additional restrictions (precedence conditions). To solve an auxiliary extremal problem, an optimal algorithm is constructed and implemented on a PC.

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

УДК 519.8

DOI: 10.14529/ mmp230302

К ВОПРОСУ О ПРИМЕНЕНИИ МИНИМАКСНОЙ ЗАДАЧИ КОММИВОЯЖЕРА К ПРОБЛЕМАМ АВИАЦИОННОЙ ЛОГИСТИКИ

А.Г. Ченцов12, А.А. Ченцов1, А.Н. Сесекин1'2

Институт математики и механики им. Н.Н. Красовского УрО РАН, г. Екатеринбург, Российская Федерация

2Уральский федеральный университет им. первого Президента России Б.Н. Ельцина, г. Екатеринбург, Российская Федерация

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

Ключевые слова: маршрутизация перемещений; система ограничений; динамическое программирование.

Введение

Настоящая работа продолжает исследования [1-4], связанные с минимаксными задачами маршрутизации (задачами на «узкие места>). К постановкам такого рода могут, в частности, приводить логистические задачи транспортного типа, возникающие при планировании авиационных перевозок одним транспортным средством (самолет, вертолет) в условиях дефицита топлива. Нетрудно свести (при естественных предположениях) данную содержательную задачу к постановке, когда дальность беспосадочного перелета ограничена заданной величиной, т.е. имеется допуск на значение упомянутой дальности перелета. Между тем соответствующее транспортное средство, т.е. заданный объект управления, имеет конечный набор заданий по посещению заданных пунктов (аэродромов, вертолетных площадок), которые следует упорядочить, имея в виду как перевозку пассажиров, так и транспортировку грузов. В последнем случае речь идет о заданной системе перемещений между некоторыми фиксированными пунктами; предполагается, что все такие перемещения грузов должны быть выполнены. Возникает задача с большим числом ограничений, включая условия на дальность беспосадочного перелета. Вполне естественным является вопрос о разрешимости упомянутой задачи. При положительном ответе на вопрос о разрешимости возникает следующий вопрос: как именно построить допустимое решение?

Для решения вышеупомянутой задачи, включая условия ее разрешимости, может быть применен аппарат широко понимаемого динамического программирования (ДП); здесь мы имеем в виду подход [4] (см. также общие конструкции в [1-3]). При этом ресурсные ограничения снимаются и строится вспомогательная минимаксная

задача маршрутизации; сами показатели, которые в исходной задаче были стеснены ресурсными ограничениями в переводе на язык условий, ограничивающих дальность беспосадочного полета, превращаются в компоненты критерия. Исходная задача разрешима в смысле соблюдения условий на дальность беспосадочных перелетов тогда и только тогда, когда экстремум вспомогательной задачи укладывается в заданный допуск. Если это последнее условие выполнимо, то решение исходной задачи можно определить в виде соответствующего оптимального решения вспомогательной задачи. Исходя из этих соображений, мы уделяем основное внимание решению последней задачи, предполагая в отличие от [1-4], что ее критерий может включать терминальную компоненту. На основании теоретических конструкций, связанных с ДП, построен оптимальный алгоритм решения минимаксной задачи и реализован в виде стандартной программы для ПЭВМ.

Естественным прототипом рассматриваемой экстремальной задачи маршрутизации является известная труднорешаемая задача коммивояжера (ЗК); см. в этой связи [5-14]. Особо отметим работу [14], в которой обсуждается минимаксная задача коммивояжера. Следует отметить, что, несмотря на актуальность данной тематики, соответствующих исследований в этом направлении сравнительно немного; в частности, это касается приближенных методов, которые активно исследуются в «аддитивной> ЗК и задачах типа ЗК с аддитивным критерием. Эвристики, традиционно используемые для решения «обычных> ЗК, в минимаксной задаче могут приводить к неудовлетворительным результатам уже в достаточно простых примерах. В этом смысле ДП для минимаксной ЗК с условиями предшествования является надежным инструментом решения и, на наш взгляд, заслуживает серьезного внимания. Более общие постановки, связанные с последовательным обходом мегаполисов с минимаксным критерием, рассматривались в [1-4]; мы сосредоточимся, однако, на минимаксной ЗК с условиями предшествования и матрицей затрат с зависимостью от списка заданий, имея в виду возможность практического применения в задачах авиационной логистики.

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

Используем стандартную теоретико-множественную символику (кванторы, пропозициональные связки и др. используем для большей краткости в определениях); через 0 обозначаем пустое множество, = - равенство по определению. Семейством называем множество, все элементы которого - множества. Любым двум объектам х и у сопоставляем их неупорядоченную пару {х; у}, т.е. множество, содержащее х, у и не содержащее никаких других элементов. Тогда каждому объекту г отвечает синглетон (одноэлементное множество) {г} = {г; г} со свойством г € {г}. Множества - суть объекты. Поэтому для любых двух объектов р и д, следуя [15, с. 67], определяем упорядоченную пару (УП) (р, д) = {{р}; {р; д}} с первым элементом р и вторым элементом д. Если к - какая-либо УП, то через рг^к) и рг2(к) обозначаем соответственно первый и второй элементы к, однозначно определяемые равенством к = (рг1(к),рг2(к)) (см. [15, гл. II, §3, теорема 4]). Любым трем объектам х,у и г сопоставляем триплет (х, у, г) = ((х, у), г) с первым элементом х, вторым элементом у и третьим элементом г. В этой связи отметим, что (см. [16, с. 17]) А х В х С = (А х В) х С для любых трех множеств А, В и С; тогда при х € А х В, у € С имеем (х, у) € А х В х С.

Если Н - множество, то через Р(Н) (через Р'(Н)) обозначаем семейство всех (всех непустых) подмножеств Н, а через Ет(Н) - семейство всех конечных множеств из Р'(Н); итак, Ет(Н) - семейство всех непустых конечных подмножеств Н. Для любых непустых множеств А и В через ВА обозначаем (см. [15, гл. II]) множество

всех отображений (функций) из A в B; как обычно, при a £ A в виде f (a) £ B имеем значение f £ BA в точке a. Если же A и B - непустые множества, h £ BA и C £ P(A), то h1 (C) = {h(x) : x £ C} (образ C при действии h), h1(C) = 0 при C = 0. Если A,B, C и D - непустые множества, f £ DAxBxC, ß £ A x B и v £ C, то f (ß, v) £ D определено и f (pri(ß),pr2(ß), v) = f (ß,v).

В дальнейшем R+ = {£ £ R|0 < £} (R - вещественная прямая), N = {1; 2;...} £ P'(R+), No = {0} U N = {0; 1; 2;...} £ P'(R+) и

= {k £ No|(p < k)&(k < q)} £ P(No) Vp £ No Vq £ No

(ясно, что 1,0 = 0 и 1,п = {к £ 1Я\к < п} при п £ М). Непустому конечному множеству К сопоставляем его мощность |К| £ N и непустое множество (6г)[К] всех биекций [17, с. 87] дискретного интервала 1, |К| на К (тогда (6г)[К] определено при К £ Р'(Б), где Б - непустое конечное множество). Перестановка непустого множества А есть [17, с. 87] биекция А на себя; перестановке а данного множества А сопоставляется перестановка а-1 данного множества, обратная к а:

а(а-1(а) = а-1(а(а)) = а Уа £ А.

Как обычно, полагаем, что |0| = 0. Непустому множеству Б сопоставляем (непустое) множество [Б] = всех неотрицательных вещественнозначных (в/з) функций

на Б. Заметим, что в последующем изложении для любых х £ К и у £ К величина 8ир((х; у}) совпадает с наибольшим из чисел х,у.

2. Постановка задачи

Фиксируем непустое множество X, а также X0 £ Пп(Х). Элементы (конечного множества) X0 будут использоваться в качестве точек старта для перемещений, осуществляемых в X. Пусть N £ N N > 2 и заданы точки

Ш1 £ X, £ X, (1)

именуемые городами (традиция ЗК); пусть при этом

(гпг ф ту Уг £ Т^У V? £ 1^\{г})Цтк £ Х° Ук £ Т^ЛГ). (2)

Пусть Р = (Ы)[1, ]У]; элементы Р называем маршрутами. Мы рассматриваем далее вопросы организации перемещений

(х £ X0) —у ша(1) —> ... —У та(^), (3)

где а £ Р. Полагаем, что выбор а стеснен условиями предшествования. В этой связи фиксируем п £ N а также кортежи индексов

: —► МУ, (иг)геХЕ : —> МУ; (4)

при ] £ 1,п УП /л,) называется адресной, полагаем, что |Лj есть отправитель, а - получатель. Итак, в (4) введен кортеж отправителей и кортеж получателей адресных УП. В виде

К ^ : ^ £ МТ} £ Р'(МУ х МУ)

имеем (непустое) множество адресных пар. Полагаем, что перемещения (3) должны быть организованы так, чтобы

а-1(^) < а-1(^), ) < а-1(^);

это соответствует требованию об обязательной перевозке «грузов> в следующих направлениях:

) —> ),(шМп) —> ). (5)

Итак, в (5) имеем план перевозок. На выбор кортежей (4) накладываем условие, исключающее зацикливание маршрутов:

УЯоеГ'(1,п)ЗреЯо:^р^и11УдеЯо. (6)

С учетом определения К получаем в силу (6), что

УКо € Р'(К) З^о € Ко : рг^о) = рг2(г) Уг € К„. (7)

Обсуждение (6), (7) см. в [18, часть 2], где указаны конкретные классы задач, для которых данные условия выполняются. Из (7) вытекает, что

А = {ае Р\а-1(рп(г)) < а~1(рг2(г)) У г еК}= = {ае Ща~\ц3) < а-\р3)) У? е 1, п} е Р'(Р); 1 ;

в (8) введено множество всех маршрутов, допустимых по предшествованию: а € Р принадлежит А тогда и только тогда, когда все перевозки (5) выполняются (для каждой адресной пары ее отправитель посещается раньше получателя, что и означает реализуемость соответствующей перевозки). Итак, в рассматриваемом далее случае (6), (7) допустимые по предшествованию маршруты существуют. Если х € X0 и а € А, то имеем траекторию

у[х;а]; О, N—> X, (9)

определяемую по следующему правилу:

(у[ж; а]{0) = х) (у[ж; а]Ц) ± тф) V* € М\Г). (10)

С учетом (3) и (10) видно, что траектория у нас - это, по сути дела, переобозначенный маршрут. Пусть Л4 = \ ] Е Л^} и = Р'(1, ./V); элементы называем списками (заданий). Пусть

X = ми X0.

Предполагаем, что задана функция

с [X хМх ЭТ] (11)

(фактически - объемная матрица; итак, мы допускаем зависимость от списка заданий). Кроме того, фиксируем функцию

/ [М]. (12)

Мы полагаем, что с (11) используется для оценки перемещений, а / (12) - для оценивания терминального состояния. Если х € X0 и а € А, то

Ба[х] ^8ир({тахс(у[ж;а](*- 1),у[ж; а]^), О!1^));/(у[ж; а]^))}) е Е+ (13)

используем в качестве оценки УП (x,a). Ниже в качестве основной рассматривается следующая задача:

Ba[x] —> min, (x, a) G X0 х A, (14)

которой сопоставляется экстремум ¥0 и непустое множество SOL всех оптимальных решений:

Vo = min Ba[x] G R+, (15)

(x,a)ex0 xA

SOL 4 {(x, a) g X0 х A|Ba[x] = ¥0} G P'(X0 х A) (16)

(напомним, что X0 х A - непустое конечное множество). В интересах решения задачи (14) (т.е. для нахождения ¥0 (15) и SOL (16)) будем использовать вспомогательные задачи. Так, если x G X0, то возникает задача курьера [8-10]

Ba[x] —> min, a G A, (17)

которой сопоставляется экстремум V0[x] и (непустое) множество (so/)[x] оптимальных маршрутов:

V0[x] = min Ba[x] G R+, (18)

a€A

(so1)[x] = {a G A|Ba[x] = V0[x]} G P'(A). (19)

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

V0[x] —► min, x G X0, (20)

экстремум которой совпадает с ¥0: в силу (15), (18)

V0 = min V0[x]; (21)

x€X 0

X^ 4 {x G X0|V0[x] = ¥0} G Fin(X0). (22)

Вполне очевидно следующее общее свойство:

(x*,a*) G SOL Vx* G X°pt Va* G (so/)[x*]. (23)

Замечание 1. Проверим (23), фиксируя x* G X^ и a* G (so1)[x*]. Тогда в силу (19) Ba* [x*] = V0[x*], где V0[x*] = ¥ согласно (22). Получаем при этом, что (x*, a*) G X0 х A есть УП со свойством Ba* [x*] = ¥. Из (16) следует теперь требуемое свойство (x*, a*) G SOL. Итак, (23) установлено.

3. Динамическое программирование

В настоящем разделе мы используем «неаддитивный> вариант ДП [1-4] для решения задач (14), (17), (20). Отметим, однако, что в [1-4] рассматривались фактически процедуры ДП для исследования последовательного обхода мегаполисов при нулевой терминальной компоненте f критерия. В настоящей работе мы отказываемся от этого предположения. Однако данное обстоятельство, как нетрудно убедиться, не разрушает структуру процедур [1-4] на основе ДП. Поэтому мы ограничимся совсем кратким перечислением основных положений [1-4], относящихся к ДП (см., например, [1, гл. 3, 5]) и реализуемых для частного случая посещения городов (1) (не мегаполисов), опуская доказательства и отсылая к аналогам из [1, гл. 3, 5]), где

нужные выкладки приведены со всей подробностью (отмеченная выше особенность, связанная с / (12), не разрушает схему рассуждений).

Сначала введем частичные задачи, в которых допускается старт из точек X и требуется посещение не всех, вообще говоря, городов. Рассматриваем УП (х, К),х € X, К € N как позиции. Тогда на множестве

X = (X х ЭТ) и (М х {0})

может быть определена функция экстремума V0 € [X]. Для ее построения используется специальное отображение I, действующее в N по следующему правилу: при К € N

1(К) 4 К\{рг2(г): г € ^[К]}, (24)

где

£0[К] 4 {г € К|(рп(г) € К)&(рг2(г) € К)}.

Данное определение является общим и соответствующим [1-4]. В нашем случае определяемое парой кортежей (4) оно может быть преобразовано к следующему виду: если К € N то

1(К) = К: ^ € Е[К]}, (25)

где Т,[К] = {] Е 1,п\(/13 Е € К)}. Итак, в нашем случае (24) и (25) опреде-

ляют одно и то же отображение. Легко видеть, что при (х, К) € X х N ] € 1(К) и у € М

(у, К}) € X. (26)

Вернемся к определению V0. Для этого потребуются частичные задачи. В первую очередь введем в рассмотрение частичные маршруты: при К € N полагаем, следуя [1-4], что

(1-Ы)[К] = {а Е (Ы)[К]\а(з) Е 1(а\8,\К\)) Ув Е 1, \К\}, (27)

получая (см. [18, с. 33]) непустое множество. При этом (см. [18, теорема 2.2.1])

А= (1-Ы)[1,М]. (28)

В (27) введена фактически допустимость частичных маршрутов по вычеркиванию (заданий из списка); в (28) указано, что для полной задачи «запасы> маршрутов, допустимых по предшествованию и по вычеркиванию, совпадают. Теперь логично ввести и частичные траектории.

Итак, если К € N х € X и а € (I — 6г)[К], то полагаем, что

УК[х; а] : 0, |К| —^ X (29)

определяется следующим правилом:

(ук[х-, а](0) = хЩук[х-, а](1) = та(4) V* € 1, \К\). (30)

Из (9), (10), (29) и (30) вытекает, в частности, что (см. (28))

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

у[х] а] = Ут^г[х] а] Ух Е Х° У а Е А. (31)

Теперь введем аналог (13) для частичных маршрутов: если К € N х € X и а € (I — Ы)[К], то

Ва[х\К] 4 _

= 8ир({тах4еу^к| с(Ук[х~, а] (г - 1), ук[х; а] (г), \К\)); ¡(ук[х; а](\К\))})Е Е+.

Ясно, что (13) является частным случаем (32). С учетом (32) вводим при x £ X и K £ N задачу

B«[x|K] —► min, а £ (I - bi)[K], (33)

которой сопоставляется экстремум v0(x,K) £ R+ и (непустое) множество оптимальных частичных маршрутов; для наших целей сейчас существенно v0 (x, K):

v0(x, K) 4 min Ba [x|K] £ R+. (34)

«e(i-bi)[K ]

Мы дополняем (34) краевым условием, полагая, что

v0(x, 0) 4 f (x) Vx £M. (35)

Итак, посредством (34), (35) определена искомая функция v0 на множестве X, совпадающем с объединением двух дизъюнктных подмножеств X х N и M х {0}. Легко видеть, что при (x, K) £ X х N и j £ I(K)

К, K\{j}) £ X, а тогда определено v0(m,j, K\{j}) £ R+. Предложение 1. Если (x, K) £ X х N, то

v0(x, K)= min sup({c(x,mj, K); v0(m,j, K\{j})}). jei(K)

Доказательство предложения повторяет по существу обоснование [1, теорема 5.2.1] в случае, когда a =1 в упомянутой теореме [1]; имеется особенность в сравнении с [1, теорема 5.2.1], связанная с возможным использованием ненулевой, вообще говоря, терминальной функции f, но не влияющая на схему доказательства. Поэтому доказательство предложения 1 опустим по соображениям объема. Заметим, что согласно (13), (28), (32) при x £ X0 и а £ A

едСТ] = ва[х]. (зб)

Как следствие, (см. (18), (28), (34), (36)) при x £ X0

VQ[x] = v°(x,TJf). (37)

Тогда из предложения 1 и (37) следует, что

V0[x]= mi^ sup({c Ух £ Х°. (38)

¿€1(1,iV)

4. Реализация процедуры на основе динамического программирования

Мы имеем в (14), (20) варианты задачи курьера [12] на узкие места; все хорошо известные трудности вычислительной реализации, возникающие в теории ЗК, здесь сохраняются, а потому, следуя [1-4], мы обращаемся к подходу, в рамках которого не предполагается построение всего массива значений функции Беллмана, а используется лишь некоторая <часть> этих значений, формализуемая посредством слоев. Прежде всего введем в рассмотрение существенные списки заданий: в виде

£ 4 {К £ £ К (рг^г) £ К) (рг2(г) £ К)} = , ,

= {К £ m\УJ £ 1, п (^ £ К) (и, £ К)} К '

имеем семейство всех таких списков; пусть, кроме того

д

£, 4 {к е £|з = \К\} (40)

(ранжируем существенные списки по мощности). Ясно, что = {1, N} и

¿^т-ле!,^^}, (41)

где К! = {/¿у : ] е 1, п} = {рг^г) : г е К}. Напомним, наконец (см. [18, раздел 4.9]),

что

£з_1 = {К\{*} : К € £з, I € 1(К)}. (42)

Получили рекуррентную процедуру £дг —> £м-1 —> ••• —> £1, начальный элемент которой есть {1,]У}, а регулярный шаг определяется в (42). После реализации данной процедуры переходим к построению слоев пространства позиций (позицией называется УП (х, К), где х Е X и К С 1, АГ) Д0, Дъ..., Ддг. Так, полагаем, что

Ди 4 X0 х{1,Ж} = {(х, ): х € X0}. (43)

Далее, при М 4 {т : 3 € 1, N\К1} полагаем, что

Д, 4 М х {0} = {(х, 0) : х €М}. (44)

Введены крайние слои. Если в € 1, N — 1 и К € £3, то последовательно определяем

аа{к) 4 {3 е 1, н\к|Ш и к е £3+1},

Мз[К] 4 {т : з € ^в(К)}, Ов[К] 4 Мв[К] х {К} = {(х, К) : х € Мз[К]},

реализуя процедуру Js(K) —> М3[К] —> 03[К]. Тогда при в € 1,N — 1 полагаем, что

Дз 4 у ОЛК]. к е£3

Все построенные множества непусты (см. [18, раздел 4.9]): Д0 = 0, Д1 = 0,..., Д^ = 0. Ясно, что

Д0 С М х {0} С X, Дз С X х £3 С X

при 8 Е 1, N. Поэтому при 8 € О, N и (х, К) Е Д3 определено значение у°(х, К) Е С учетом этого полагаем, что при в Е О, N функция у3 Е Л+[И3] определяется в виде сужения V0 на Д3 :

Уз(х, К) 4 у0(х, К) У(х, К) € Дв. (45)

Заметим, что (см. (35)) у0(х, 0) = /(х) при х € М (см. (44)) Далее, из (37) и (43)

вытекает, что ___

ум(х,Т^) = у°(х,Т^) = у0[х] ухех0. (46)

Итак, функция у0 полностью определяется посредством /, а функция у^ есть, по существу, искомая функция экстремума, определенная на х°.

Напомним, что (см. [19, (6.11)])) при в Е (х,К) Е Д3 и ] Е ЦК)

к-, К\{з}) € Дз_1. (47)

С учетом этого получаем (см. предложение 1 и (45), (47)) следующее положение.

Предложение 2. Если в € 1, N, то преобразование в ь3 определяется правилом

у8(Я,К) = шт вир({с(ж, тз-, К); })}) У(я,К) € .

з е1 (к)

Доказательство очевидно. Таким образом, построена рекуррентная процедура

У0 —» VI —» ... —» , (48)

начальный элемент которой полностью определяется терминальной функцией f, а регулярный шаг - предложением 2; финальная функция (см. (46)) есть функция экстремума, определенная на X0. Заметим, что, располагая функцией Ум, мы можем определить У0 и Х^: в силу (46)

У0 = mmvN(x, 1,Х), (49)

x€X°

Х^ = {хе Х°\ь„(х, 1, X) = Уо}). (50)

Если для нас достаточно определений (49) и (50), то при реализации процедуры (48) можно воспользоваться вариантом процедуры с перезаписью слоев (здесь имеется в виду аналогия с [20], где рассматривалась другая задача). Речь идет о следующей

процедуре. _

Функция г>о определяется по функции / непосредственно. Пусть в £ и функция (см. (48)) уже построена. Используя предложение 2, определяем у3. При в = N считаем процедуру (48) завершенной. Если в < N то массив значений уничтожается и заменяется аналогичным массивом после чего определяется по у3 в соответствии с предложением 2 при очевидных переобозначениях. Данный вариант (48) (схема с перезаписью слоев) позволяет найти (49) (50) при некоторой экономии ресурсов памяти вычислителя (см. [21]).

5. Построение оптимального решения

Рассмотрим кратко схему построения элемента множества (16), предполагая, что процедура (48) реализована «в полном объеме>, т.е. все функции у0, у1, ..., построены и находятся в нашем распоряжении (схема с перезаписью слоев здесь недостаточна). Следуем [4, §5]. Мы знаем уже У0 (49) и множество (50). С учетом этого выбираем х° £ Х^. Тогда (х°, 1, X) £ Ум(х°, 1, X) = У0 и согласно предложению

2 _ _

У0 = гшп_ 8ир({с(ж°,т,,1,ЛГ);г;лг_1(т,,1,ЛГ\{^})}). (51)

¿€1(1,Л0

С учетом (51) находим £ I(1, N), для которого

Уо = 8пр({ф°,тШ1, MV);%_iK, М\Г\{ил})}). (52)

В силу (47) (тШ1,1, N\{ui}) £ Ду-ъ а потому (см. предложение 2)

ум_1(тШ1,1,Х\{ил}) = min sup({c(mwi, m^l, N\{u}i}); X\{ui, j})}). (53)

jei(i,JV\{^i}>

С учетом (53) находим £ I(1, N\{ш1}) со свойством

Ум-1(тШ1,1, N\{wi}) = sup({c( 1, iV\{a;i}); уМ-2(тШ2,1, Х\{шi, a;2})}), (54)

получая в силу (47), что (тШ2,1, N\{uji, u;2}) G DN_2. Из (52) и (54) получаем равенство

Vo = sup({sup({c( 1, iV); с(тШ1,тШ2,1, N\{ui})})] yw_2(mW2,1, N\{wi, w2})}), (55)

где (mW2,1,NШ2}) G -2 в силу (47). Замечание 2. В случае N = 2 из (53) следует равенство

¥0 = вир ({ вир ({ с ( 1, Ж); с(тШ1,тШ2,1, М^с^})}); /(тШ2)}); (56)

при этом = £ А в силу (27), (28). Заметим, что из (5), (13) и (56)

вытекает равенство = Уо- Это означает (см. (16)), что в данном случае

(х0,(шг)г&щ) = (х0,(шг)геТ^)е8ОЬ.

В общем случае N > 2 процедуры выбора индексов, подобные (52), (54), следует продолжить вплоть до исчерпания 1, N .В результате будет построен маршрут

ш - (^)гему) е А

со следующим свойством

Vo = sup({m_ax с(у[ж , uj]{t — 1),у[ж , uj](t), 1, N)\u) (l,t — 1)); f(y[x , u;](iV))}) tei.iv

= sup({maxc(y[xu;o;](í-l),y[xu;a;](í),a;i(í,iV);/(y[xu;a;](iV)))} (57)

(в последнем равенстве учтена биективность ш). С учетом (13) и (57) получаем равенство

Бш [x0] = Vo, (58)

означающее требуемое свойство (x0, ш) G SOL.

6. Задача с ограничениями ресурсного характера

Сейчас мы вернемся к проблеме, намеченной во Введении и связанной с разрешимостью задачи маршрутизации с ограничениями на величину затрат на каждом этапе перемещений. Итак, пусть d G R+ есть заданный допуск на уровень затрат. Требуется найти x G X0 и a G A со свойствами

(с(у[x;a](t-l), у[х; a](t), a1 (ÇN)) < d Vi G T^Ñ)$¿(f(y[x-, a](N)) < d). (59)

Возникающий при этом вопрос о разрешимости системы неравенств (59) имеет очень простой ответ: система неравенств (59) разрешима тогда и только тогда, когда

V0 < d. (60)

Для проверки (60) можно при нахождении V0 ограничиться процедурой (48) с перезаписью слоев (см. раздел 4). Еще один вопрос, связанный с (59), состоит в следующем: как именно определить УП (x, a) G X0 x A со свойством (59). Для ответа на данный вопрос в ситуации (60) заметим, что в силу (13) свойство (59) эквивалентно неравенству

Ba [X] < d. (61)

В этой связи нам следует использовать (48) в полной версии, т.е. найти все функции vo, v1,..., vN, после чего выполнить построения предыдущего раздела: фиксируя x0 G X<0pt, реализовать построение ш G A со свойством (57), получая при этом равенство (58), из которого в силу (60) будет следовать надлежащий вариант (61): x = x0, a = ш. Таким образом, наш вариант широко понимаемого ДП доставляет исчерпывающий ответ на вопрос о реализуемости (59).

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

7. Вычислительный эксперимент

Заданы 35 точек на плоскости. Функция затрат - евклидово расстояние, используется критерий агрегирования затрат за «узкие места>. Количество адресных пар (условия предшествования) - 74. Множество X0 имеет вид

{(90, 35); (-10, -10); (70, 70); (-30, 70); (-70, -95); (-90, 25); (80, -90)}.

Терминальная функция определяется как евклидово расстояние до множества

{(115, -80); (105, -110); (110, 70); (65, -125); (-45, -125); (110, -20)}. (62)

Вычислительный эксперимент проводился на ПЭВМ с центральным процессором Intel Core i7 с объемом ОЗУ 64гБ с установленной операционной системой Windows 7 x64 Sp1 Максимальная.

Задача без перехода в финальную точку (задача с нулевой терминальной функцией): величина совокупных затрат: 63,63. Выбрана начальная точка: (80,-90). Траектория, реализующаяся на построенном маршруте (рис. 1):

(80, -40), (85, -64), (43, -90), (-20, -94), (6, -96), (-10, -45), (-63, -30), (-96, -55),

(-95, -90), (-70, -65), (-90, -25), (-65, 20), (-19, 58), (-40, 5), (-55, 65), (-90,55), (-40, 50), (10, 60), (30, 40), (52, 60), (80, 55), (80, -5), (20, -25), (-30, -50), (-40, -80), (16, -62), (50, -45), (65, -65), (60, -15), (10, 5), (65, 21), (35, 0), (0, 40), (-30, 32), (-85, 0). Время вычисления: 36 ч 54 мин 2 с.

Рис. 1. Маршрут и трасса для задачи без перехода в финальную точку

Задача с ненулевой терминальной функцией (терминальная функция - расстояние до точки из выделенного множества (62)): величина совокупных затрат: 82,01.

Выбрана начальная точка: (90,35). Выбрана конечная точка на выделенном множестве: (115, -80). Траектория реализуется на построенном маршруте (рис. 2):

(80, -40), (16, -62), (50, -45), (43, -90), (6, -96), (-20, -94), (-95, -90), (-96, -55),

(-65, 20),(-19, 58),(10, 60),(-55, 65),(-40, 50),(30, 40),(52, 60),(80, 55),(80, -5),(85, -64), (20, -25), (10, 5), (-63, -30), (-90, -25), (-40, 5), (-70, -65), (-40, -80), (-10, -45), (60, -15), (65, 21), (0, 40), (-30, 32), (-90, 55), (-85, 0), (-30, -50), (35,0), (65, -65). Время вычисления: 37 ч 22 мин 39 с.

Литература

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

2. Ченцов, А.Г. Маршрутизация перемещений при динамических ограничениях: задача «на узкие места> / А.Г. Ченцов, А.А. Ченцов // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. - 2016. - Т. 26, № 1. - С. 121-140.

3. Ченцов, А.Г. Динамическое программирование в «обобщенной задаче на узкие места> и оптимизация точки старта / А.Г. Ченцов, А.А. Ченцов, А.Н. Сесекин // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. - 2018. - Т. 28, № 3. - С. 348-363.

4. Ченцов, А.Г. Динамическое программирование и вопросы разрешимости задачи маршрутизации «на узкие места> с ресурсными ограничениями / А.Г. Ченцов, А.А. Ченцов // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. -2022. - Т. 32, № 4. - С. 569-592.

5. Gutin, G. The Traveling Salesman Problem and its Variations / G. Gutin, A.P. Punnen. -Berlin: Springer, 2002.

6. Cook, W.J. In Pursuit of the Traveling Salesman. Mathematics at the Limits of Computation / W.J. Cook. - Princeton, New Jersey: Princeton University Press, 2012.

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

8. Меламед, И.И. Задача коммивояжера. Вопросы теории / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - № 9. - С. 3-34.

9. Меламед, И.И. Задача коммивояжера. Точные методы / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - № 10. - С. 3-29.

10. Меламед, И.И. Задача коммивояжера. Приближенные алгоритмы / И.И. Меламед, С.И. Сергеев, И.Х. Сигал // Автоматика и телемеханика. - 1989. - № 11. - С. 3-26.

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

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

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

14. Сергеев, С.И. Алгоритмы решения минимаксной задачи коммивояжера. I. Подход на основе динамического программирования / С.И. Сергеев // Автоматика и телемеханика. -1995. - № 7. - C. 144-150.

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

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

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

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

19. Ченцов, А.Г. К вопросу о маршрутизации комплексов работ / А.Г. Ченцов // Вестник Удмуртского университета. Математика. Механика. Компьютерные науки. - 2013. -№ 1. - С. 59-82.

20. Lawler, E.L. Efficient Implementation of Dynamic Programming Algorithms for Sequencing Problems / E.L. Lawler // CWI Technical Report. Stichting Mathematisch Centrum. Mathematische Besliskunde-BW. - 1979. - V. 106, № 79. - P. 1-16.

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

Александр Георгиевич Ченцов, член-корреспондент РАН, главный научный сотрудник отдела управляемых системы, Институт математики и механики им. Н.Н. Красовского УрО РАН (г. Екатеринбург, Российская Федерация); кафедра информационных технологий и систем управления, Уральский федеральный университет им. первого Президента России Б.Н. Ельцина (г. Екатеринбург, Российская Федерация), [email protected].

Алексей Александрович Ченцов, кандидат физико-математических наук, научный сотрудник, отдел управляемых систем, Институт математики и механики им. Н.Н. Красовского УрО РАН (г. Екатеринбург, Российская Федерация), [email protected].

Александр Николаевич Сесекин, доктор физико-математических наук, профессор, кафедра прикладной математики и механики, Уральский федеральный университет им. первого Президента России Б.Н. Ельцина (г. Екатеринбург, Российская Федерация); отдел оптимального управления, Институт математики и механики им. Н.Н. Красовского УрО РАН (г. Екатеринбург, Российская Федерация), [email protected].

Поступила в редакцию 13 июля 2023 г.

MSC 90C39 DOI: 10.14529/mmp230302

ON THE APPLICATION OF THE MINIMAX TRAVELING SALESMAN PROBLEM IN AVIATION LOGISTICS

A.G. Chentsov1,2, A.A. Chentsov1, A.N. Sesekin1,2

1Krasovskii Institute of Mathematics and Mechanics UrB RAS

2Ural Federal University, Yekaterinburg, Russian Federation,

E-mail: [email protected], [email protected], [email protected]

We consider the problem of organizing a system of movement between the given points (cities) under conditions of resource constraints and in the presence of precedence conditions. The solvability conditions for this problem are extracted from the solution to the minimax traveling salesman problem (the bottleneck problem) without resource constraints. The solution to this extreme routing problem is determined on the basis of a broadly understood dynamic programming in its "non-additive" version. Possible applications may be related to the formation of the route of a vehicle (airplane or helicopter) in order to organize a transportation system in conditions of fuel shortage; it is assumed that in addition to the mandatory visits to all points, there are requirements for the passing movement of goods between some of the points, which creates additional restrictions (precedence conditions). To solve an auxiliary extremal problem, an optimal algorithm is constructed and implemented on a PC.

Keywords: movement routing; constraint system; dynamic programming.

References

1. Chentsov A.G., Chentsov A.A., Sesekin A.N. Zadachi marshrutizacii peremeshchenij s neadditivnym agregirovaniem zatrat [Motion Routing Problems with Non-Additive Cost Aggregation]. Moscow, URSS, 2020. (in Russian)

2. Chentsov A.G., Chentsov A.A. [Routing of Displacements with Dynamic Constraints: "Bottleneck Problem"]. Vestnik Udmurtskogo universiteta. Matematika. Mekhanika. Komp'yuternye nauki, 2016, vol. 26, no. 1, pp. 121-140. (in Russian)

3. Chentsov A.G., Chentsov A.A., Sesekin A.N. [Dynamic Programming in the Generalized Bottleneck Problem and the Start Point Optimization]. Vestnik Udmurtskogo universiteta. Matematika. Mekhanika. Komp'yuternye nauki, 2018, vol. 28, no. 3, pp. 348-363. (in Russian)

4. Chentsov A.G., Chentsov A.A. [Dynamic Programming and Issues of Solvability of the Problem of Routing "to Bottlenecks" with Resource Constraints]. Vestnik Udmurtskogo universiteta. Matematika. Mekhanika. Komp'yuternye nauki, 2022, vol. 32, no. 4, pp. 569-592. (in Russian)

5. Gutin G., Punnen A.P. The Traveling Salesman Problem and its Variations. Berlin, Springer, 2002.

6. Cook W.J. In Pursuit of the Traveling Salesman. Mathematics at the Limits of Computation. Princeton, New Jersey, Princeton University Press, 2012.

7. Gimadi E.H., Khachay M.Yu. Ektremalnye zadachi na mnogestvah perestanovok [Extreme Problems on Permutation Sets]. Ekaterinburg, UMC UPI, 2016.

8. Melamed I.I., Sergeev S.I, Sigal I.Kh. The Travelling Salesman Problem: Issues in Theory. Automation and Remote Control, 1989, vol. 50, no. 9, pp. 1147-1173.

9. Melamed I.I., Sergeev S.I, Sigal I.Kh. The Traveling Salesman Problem. Exact Methods. Automation and Remote Control, 1989, vol. 50, no. 10, pp. 1303-1324.

10. Melamed I.I., Sergeev S.I, Sigal I.Kh. The Traveling Salesman Problem. Approximate Algorithms. Automation and Remote Control, 1989, vol. 50, no. 11, pp. 1459-1479.

11. Little J., Murthy K., Sweeny D., Karel C. An Algorithm for the Travelling Salesman Problem. Operation Research, 1963, vol. 11, no. 6, pp. 972-989. DOI: 10.1287/oper.11.6.972.

12. Bellman R. Dynamic Programming Treatment of the Travelling Salesman Problem. Journal of the Association for Computing Machinery, 1962, vol. 9, pp. 61-63. DOI: 10.1145/321105.321111.

13. Held M., Karp R.M. A Dynamic Programming Approach to Sequencing Problems. Journal of the Society for Industrial and Applied Mathematics, 1962, vol. 10, no. 1, pp. 196-210. DOI: 10.1137/0110015.

14. Serveev S.I. Algorithms for 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.

15. Kuratowski K., Mostowski A. Sets Theory. Amsterdam, North-Holland Publishing Company, 1967.

16. Dieudonne J. Foundations of Modern Analysis. New York, Academic Press, 1960.

17. Cormen T.H., Leiserson Ch.E., Rivest R.L. Introduction to Algorithms. MIT Press and McGraw-Hill, 1990.

18. Chentsov A.G. Ekstremal'nye zadachi marshrutizatsii i raspredeleniya zadanii: voprosy teorii [Extremal Problems of Routing and Distribution of Tasks: Questions of Theory]. Izhevsk, NIC, 2008. (in Russian)

19. Chentsov A.G. [To Question of Routing of Works Complexes]. Vestnik Udmurtskogo universiteta. Matematika. Mekhanika. Komp'yuternye nauki, 2013, no. 1, pp. 59-82. (in Russian) DOI: 10.20537/vm130107

20. Lawler E.L. Efficient Implementation of Dynamic Programming Algorithms for Sequencing Problems. CWI Technical Report. Stichting Mathematisch Centrum. Mathematische Besliskunde-BW, 1979, vol. 106, no. 79, pp. 1-16.

21. Chentsov A.G., Chentsov A.A. [To the Question of Finding the Value of a Route Problem with Restrictions]. Problemy upravleniya i informatiki, 2016, no. 1, pp. 41-54. (in Russian)

Received July 13, 2023

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