Вы находитесь на странице: 1из 32

Математическое моделирование. Т. 28.

2016

УДК 519.863

Статья приурочена к 60-и летию Ю.Е. Нестерова

Численные методы поиска равновесного распределения


потоков в модели Бэкмана и модели стабильной динамики
А.В. Гасников (ИППИ РАН, ПреМоЛаб МФТИ),
П.Е. Двуреченский (ПреМоЛаб МФТИ, WIAS, ИППИ РАН)
Ю.В. Дорн (Центр исследований транспортной политики, Институт экономики
транспорта и транспортной политики, НИУ ВШЭ, ПреМоЛаб МФТИ, ИППИ РАН)
Ю.В. Максимов (ИППИ РАН, ПреМоЛаб МФТИ)

Аннотация
В работе рассматриваются две модели транспортного равновесия: модель Бэкмана
(1955) и модель стабильной динамики (Нестеров–де Пальма, 1998). В статье описаны
эффективные численные процедуры поиска равновесия в этих моделях. Для модели
Бэкмана будет использован метод Франк–Вульфа, а для модели стабильной динамики
используется переход к двойственной задаче. Эта задача решается методом зеркального
спуска с евклидовой прокс-структурой с помощью “рандомизации суммы”. В работе
также приводится другой способ решения (сглаженной) двойственной задачи. Этот спо-
соб базируется на современных вариантах метода ускоренного блочно-покомпонентного
спуска. Такие подходы, насколько нам известно, представляются новыми. Кроме того,
даже при использовании классического метода Франк–Вульфа, мы исходим из совре-
менных результатов о его сходимости.
Ключевые слова: модели равновесного распределения потоков, равновесие Нэша–
Вардропа, модель Бэкмана, модель стабильной динамики, метод Франк–Вульфа, метод
зеркального спуска, метод двойственных усреднений, рандомизация, рандомизирован-
ный покомпонентный спуск.

1. Введение
В недавних работах [1, 2], посвященных сведению поиска равновесного распределе-
ния транспортных потоков на сетях к решению задач выпуклой оптимизации, было по-
ставлено несколько таких задач со специальной “сетевой” структурой. Это означает, что,
скажем, расчет градиента (стохастического градиента) функционала сводится к поиску
кратчайших путей в графе транспортной сети. Эта специфика задач с одной стороны гово-
рит о том, что в реальных приложениях размерность задачи может быть колоссально
большой. Это связано с тем, что число реально используемых путей даже в планарном
графе, как правило, пропорционально кубу числа вершин, а число вершин в реальных
приложениях обычно не меньше тысячи, отметим, что в худших случаях число путей мо-
жет расти экспоненциально с ростом числа вершин. С другой стороны, такого рода задачи
1
Математическое моделирование. Т. 28. 2016

имеют хорошую геометрическую интерпретацию, что позволяет эффективно снижать их


размерность.
В частности, в разделе 2 мы описываем метод Франк–Вульфа [3 – 5] поиска равно-
весного распределения потоков в модели Бэкмана, который на каждой итерации требует
решения задачи минимизации линейной функции от потоков на ребрах в сети (число ре-
бер порядка нескольких тысяч) на прямом произведении симплексов (симплексов столько,
сколько корреспонденций). Для реальных транспортных сетей (тысяча вершин) получает-
ся задача минимизации линейной функции в пространстве размерности миллиард, по-
скольку она зависит от распределения потоков по путям, число которых порядка милли-
арда. Ясно, что если смотреть на эту задачу формально с точки зрения оптимизации, то
все сводится к полному перебору миллиарда вершин всех симплексов (причем проработка
одной вершины – это расчет соответствующего скалярного произведения, то есть порядка
нескольких тысяч умножений). К счастью, транспортная специфика задачи позволяет с
помощью алгоритма Дейкстры и более современных подходов [6] (в том числе учиты-
вающих “планарность” сети: A*, ALT, SHARC, Reach based routing, Highway hierarchies,
Contraction hierarchies и т.п. – этому планируется посвятить отдельную работу) решать
описанную задачу делая не более десятка миллионов операций (типа умножения двух чи-
сел с плавающей запятой), что намного быстрее. Такого рода конструкции возникают не
только в связи с сетевой спецификой задачи [7], но именно для ситуаций, когда в задаче
имеется сетевая структура, возможность такой редукции наиболее естественна и типична.
В разделе 3 мы предлагаем другой способ поиска равновесия в модели Бэкмана и
аналогичных моделях (в модели стабильной динамики, в промежуточных моделях). Для
этого мы переходим (следуя Ю.Е. Нестерову) к двойственной задаче, в которой целевой
функционал оказывается зависящим только от потоков по ребрам, а не от распределения
потоков по путям. Таким образом, задача сводится к поиску равновесного распределения
потоков по ребрам. При этом в ходе вычислений потоков на ребрах, мы попутно (без до-
полнительных затрат) вычисляем порождающие их потоки по путям. Также в виду транс-
портно-сетевой специфики появляется возможность содержательной интерпретации [1]
(подобно интерпретации Л.В. Канторовичем цен в экономике [8]), возникающих двойст-
венных множителей, которые в ряде приложений представляют независимый самостоя-
тельный интерес (например, в задаче о тарифной политике грузоперевозок РЖД [2] двой-
ственные множители – тарифы, которые и надо рассчитывать). Также сетевая структура
задачи дает возможность не рассчитывать градиент целевой функции на каждой итерации
заново, а пересчитывать его, используя градиент, полученный на предыдущей итерации.
2
Математическое моделирование. Т. 28. 2016

Грубо говоря, найдя кратчайшие пути, и посчитав на их основе градиент, мы сделаем шаг
по антиградиенту, немного изменив веса ребер. Ясно, что большая часть кратчайших пу-
тей при этом останется прежними, и можно специально организовать их пересчет, чтобы
ускорить вычисления. Похожая философия используется в покомпонентных спусках и в
современных подходах к задачам huge-scale оптимизации [9, 10]. Однако сетевая структу-
ра задачи требует переосмысления этой техники, рассчитанной изначально в основном на
свойства разреженности матриц, возникающих в условии задачи.
Применимость современных вариантов рандомизированных покомпонентных спус-
ков к поиску равновесия в модели стабильной динамики, записанной в новой специальной
форме, предложенной недавно Ю.Е. Нестеровым, изучается в разделе 4.
В заключительном разделе 5 приводится краткий сравнительный анализ описанных
в статье методов.
Настоящая статья представляет собой одну из первых попыток авторов сочетать со-
временные эффективные численные методы выпуклой оптимизации с сетевой структурой
задачи, на примере задач, пришедших из поиска равновесного распределения потоков в
транспортных сетях и сетях грузовых перевозок РЖД [1, 2]. В последствие планируется
опубликовать еще несколько статей на эту тему, представляющую на, наш взгляд, боль-
шой интерес.

2. Метод Франк–Вульфа поиска равновесия в модели Бэкмана


Опишем наиболее популярную на протяжении более чем полувека модель равновес-
ного распределения потоков Бэкмана [1, 11 – 15]. Первая половина этого раздела во мно-
гом повторяет текст раздела 4 работы [1].
Пусть транспортная сеть города представлена ориентированным графом   V , E  ,

где V – узлы сети (вершины), E  V V – дуги сети (рѐбра графа), O  V – источники


корреспонденций ( S  O ), D  V – стоки. В современных моделях равновесного распре-

деления потоков в крупном мегаполисе число узлов графа транспортной сети обычно вы-
бирают порядка n  V  103  104 . Число ребер E получается в три четыре раза больше.

Пусть W  w   i, j  : i  O, j  D – множество корреспонденций, т.е. возможных пар

«источник» – «сток»; p  v1 , v2 ,..., vm  – путь из v1 в vm , если  vk , vk 1   E , k  1,..., m  1 ,

m  1; Pw – множество путей, отвечающих корреспонденции w W , то есть если

w   i, j  , то Pw – множество путей, начинающихся в вершине i и заканчивающихся в j ;


3
Математическое моделирование. Т. 28. 2016

P   wW Pw – совокупность всех путей в сети  (число “разумных” маршрутов P , кото-

рые потенциально могут использоваться, обычно растет с ростом числа узлов сети не бы-
стрее чем   n3  [12 – 14]); x p [автомобилей/час] – величина потока по пути p ,

x  x p : p  P ; f e [автомобилей/час] – величина потока по дуге e :


1, e  p
f e  x     ep x p , где  ep   ( f  x );
pP 0, e  p
 e  f e  – удельные затраты на проезд по дуге e . Как правило, предполагают, что это –

(строго) возрастающие, гладкие функции от f e . Точнее говоря, под  e  f e  правильнее

понимать представление пользователей транспортной сети об оценке собственных затрат


(обычно временных в случае личного транспорта и комфортности пути (с учетом времени
в пути) в случае общественного транспорта) при прохождении дуги e , если поток же-
лающих проехать по этой дуге будет f e .

Рассмотрим теперь G p  x  – затраты временные или финансовые на проезд по пути

p . Естественно считать, что G p  x    e  f e  x    ep .


eE

Пусть также известно, сколько перемещений в единицу времени d w осуществляется

согласно корреспонденции w W . Тогда вектор x , характеризующий распределение по-


токов, должен лежать в допустимом множестве:

 

X  x  0 :

x p  d w , w W  .

 pPw 
Рассмотрим игру, в которой каждой корреспонденции w W соответствует свой,
достаточно большой ( d w  1 ), набор однотипных “игроков”, осуществляющих передви-

жение согласно корреспонденции w . Чистыми стратегиями игрока служат пути, а выиг-


рышем – величина G p  x  . Игрок “выбирает” путь следования p  Pw , при этом, делая

выбор, он пренебрегает тем, что от его выбора также “немного” зависят Pw компонент

вектора x и, следовательно, сам выигрыш G p  x  . Можно показать (см., например, [1]),

что отыскание равновесия Нэша–Вардропа x*  X (макро описание равновесия) равно-


сильно решению задачи нелинейной комплементарности (принцип Вардропа):


для любых w W , p  Pw выполняется x*p  G p  x*   min Gq  x*   0.
qPw 
4
Математическое моделирование. Т. 28. 2016

Действительно допустим, что реализовалось какое-то другое равновесие x *  X , ко-


торое не удовлетворяет этому условию. Покажем, что тогда найдется водитель, которому
выгодно поменять свой маршрут следования. Действительно, тогда


существуют такие w W , p  Pw , что x*p  G p  x*   min Gq  x*   0 .
qPw 
Каждый водитель (множество таких водителей не пусто, так как x*p  0 ), принадле-

 W , и использующий путь p  Pw , действует не разумно, по-


жащий корреспонденции w

скольку существует такой путь q  Pw , q  p , что Gq  x*   min Gq  x*  . Этот путь q более
qPw

выгоден, чем p . Аналогично показывается, что при x*  X никому из водителей уже не


выгодно отклоняться от своих стратегий.
Условие равновесия может быть переписано следующим образом [11 – 15]

для всех x  X выполняется G  x*  , x  x*  0 .

Рассматриваемая нами игра принадлежит к классу, так называемых, потенциальных


игр [16, 17], поскольку Gp  x  xq  Gq  x  x p . Существует такая функция
fe  x 

  f  x       z  dz    f  x   ,
e e e
eE 0 eE

fe  x 

где  e  f e      z  dz ,
e что   x  x p  G p  x  для любого p  P . Таким образом,
0

x*  X – равновесие Нэша–Вардропа в этой игре тогда и только тогда, когда оно достав-
ляет минимум   f  x   на множестве X .

Теорема 1 [1, 12 – 15]. Вектор x* будет равновесием Нэша–Вардропа тогда и


только тогда, когда
 
x  Arg min   f  x     e  f e  x   : f  x, x  X  .
x
 eE 
Если преобразование G    строго монотонное, то равновесие x единственно. Если

 e     0 , то равновесный вектор распределения потоков по ребрам f – единственный


(это еще не гарантирует единственность вектора распределения потоков по путям x
[15]).
Итак, будем решать задачу (  * – оптимальное значение функционала)

5
Математическое моделирование. Т. 28. 2016

  f     e  f e   min
f x
eE x X

методом условного градиента [18 – 21] (Франк–Вульфа).


Начальная итерация
Положим te0    0  fe   e  0  и рассмотрим задачу

 t
eE
0
f  min .
e e
f x
x X

Эту задачу можно переписать, как


 
min  t  
e
0
ep xp  d w min   epte0    d wTw  t 0  ,
xX
eE pP wW
pPw
eE  wW
где Tw  t 0  – длина кратчайшего пути из i в j (где w   i, j  ) на графе, ребра которого

взвешены вектором t 0  te0 eE . Таким образом, выписанную задачу можно решить с

  Sn  (здесь и далее 
учетом того, что n  V  E , за       с точностью до ло-

гарифмического фактора) и быстрее современными вариациями алгоритма Дейкстры [6,


23 – 25]. Обозначим решение этой задачи через f 0 .
Можно интерпретировать ситуацию таким образом, что в начальный момент води-
тели посчитали, что все дороги абсолютно свободны и выбрали согласно этому предпо-
ложению кратчайшие пути, соответствующие их целям, и поехали по этим маршрутам
(путям). На практике более равномерное распределение водителей по путям в начальный
момент может оказаться более предпочтительным.
Поняв, что в действительности из-за наличия других водителей время в пути не со-
ответствует первоначальной оценке, выраженной весами ребер te0 , доля  k водителей

(обнаруживших это и готовых что-то менять) на следующем  k  1 -м шаге изменят свой

выбор исходя из кратчайших путей, посчитанных по распределению водителей на преды-


дущем k -м шаге. Таким образом, возникает процедура “нащупывания” равновесия. Если
выбирать специальным образом  k (в частности, необходимо  k 
k 
 0 , чтобы избе-

жать колебания вокруг равновесия (minority game [22]), и 
k 0
k
  , чтобы до равновесия

дойти), то система, действительно, сойдется в равновесие. Опишем теперь более фор-


мально сказанное.
Итерации k  0,1, 2,...

6
Математическое моделирование. Т. 28. 2016

Пусть f k – вектор потоков на ребрах, полученный на предыдущей итерации с номером

k . Положим tek    f k  fe   e  f k  и рассмотрим задачу

 t
eE
e
k
ye  min .
y x
x X

Так же, как и раньше задача сводится к поиску кратчайших путей на графе, ребра кото-
рого взвешены вектором t k  tek  .
eE

Обозначим решение задачи через y k . Положим

f k 1  1   k  f k   k y k ,  k 
2
.
k 1
Заметим, что возникающую здесь задачу поиска кратчайших путей на графе можно
попробовать (этому планируется посвятить отдельную работу) решать быстрее, чем за
  Sn  . Связано это с тем, что мы уже решали на предыдущей итерации аналогичную за-

дачу для этого же графа с близкими весами ребер [6, 23 – 25] (веса ребер графа с ростом k
меняются все слабее от шага к шагу, поскольку  k 
k 
 0 ). Тем не менее, далее в статье
  Sn  .
мы будем считать, что одна итерация этого метода занимает 

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

Строго говоря, нужно найти вектор y k , а не кратчайшие пути. Чтобы получить век-
  Sn  стоит для каждого из S источников построить (например, алгоритмом
тор y k за 

Дейкстры) соответствующее дерево кратчайших путей (исходя из принципа динамическо-


го программирования “часть кратчайшего пути сама будет кратчайшим путем” несложно
понять, что получится именно дерево, с корнем в рассматриваемом источнике). Это мож-
  n  . Однако, главное, правильно взвешивать ребра
но сделать для одного источника за 

(их не больше   n  ) такого дерева, чтобы за один проход этого дерева можно было вос-

становить вклад (по всем ребрам) соответствующего источника в общий вектор y k . Ребро
должно иметь вес равный сумме всех проходящих через него корреспонденций с задан-
ным источником (корнем дерева). Имея значения соответствующих корреспонденций (их
также не больше   n  ) за один обратный проход (то есть с листьев к корню) такого дере-

ва можно осуществить необходимое взвешивание (с затратами не более   n  ). Делается

7
Математическое моделирование. Т. 28. 2016

это по правилу: вес ребра равен сумме корреспонденции (возможно, равной нулю), в со-
ответствующую вершину, в которую ребро входит и сумме весов всех ребер (если таковые
имеются), выходящих из упомянутой вершины.
Теорема 2 [18 – 21]. Имеет место следующая оценка
2 Lp Rp2
 f N
   f N
  , f N     f  x : x  X  ,
N 1
* N

где


 N  max   f k     f k  , y k  f k
k  0,..., N
,

h,diag  e  fe  h , 1  p   .
2 2
R p2  max y k  f k  max
 ff , Lp  max max
k  0,..., N p f , f  p 
h p 1 f conv f 0 , f 1 ,..., f N 
Замечание 1. Из доказательства этой теоремы [18 – 21] можно усмотреть немного
более тонкий способ оценки Lp , в котором вместо f  conv  f 0 , f 1 ,..., f N  можно брать

f  conv  f 0 , f 1   conv  f 1 , f 2   ...  conv  f N 1 , f N  .

Однако для небольшого упрощения выкладок мы будем использовать приведенный в


формулировке теоремы огрубленный вариант.
К сожалению, в приложениях (см., пример о расщеплении потоков на личный и об-
щественный транспорт в разделе 3) функции  e  f e  могут иметь вертикальные асимпто-

ты, что не позволяет равномерно по N ограничить Lp (даже если более тонко оценивать

Lp , см. замечание 1). Такие случаи мы просто исключаем из рассмотрения для метода,

описанного в этом разделе. Другими словами, мы считаем, что функции  e  f e  заданы на

положительной полуоси. К таким функциям относятся, например, BPR-функции (см. раз-


дел 3).
Обратим внимание на то, что сам метод никак не зависит от выбора параметра p , от

того какие получаются Rp2 и Lp , в то время как оценка на число итераций, которые необ-

ходимо сделать для достижения заданной по функции (функционалу) точности, от этого


выбора зависит. Как следствие, от этого выбора зависит и критерий останова (значение
 * нам априорно не известно.

Будем считать p  2 (сопоставимые оценки, получаются и при выборе p   ):

L2  f 0 , f 1 ,..., f N   max

f conv f , f ,..., f N
0 1
 eE eE

max  e  f e   max  e max f ek , R22  max


ff
k  0,..., N
 f , f 
2

2
.

8
Математическое моделирование. Т. 28. 2016

Величину R22 мы можем оценить априорно (при это, к сожалению, получается довольно

грубая оценка), т.е. можно считать еѐ нам известной. Труднее обстоит дело с L2 . Далее
предлагается оригинальный способ запуска метода Франк–Вульфа, критерий останова ко-
торого не требует априорного знания L2 .

Задаемся точностью   0 . Оцениваем R22 . Полагаем L2  1 (для определенности).

Запускаем метод Франк–Вульфа с N  L2   2 L2 R22  . На каждом шаге проверяем условие

(это делается за   n  )


L2  f 0 , f 1 ,..., f k   max  e max f el  L2 .
eE l  0,..., k

Если на всех шагах условие выполняется, то сделав N  L2  шагов, гарантированно

получим решение с нужной точностью. Если же на каком-то шаге k  N  L2  условие на-

рушилось, т.е. L2  f 0 , f 1 ,..., f k   L2 , то полагаем L2 : L2  f 0 , f 1 ,..., f k  , пересчитываем

N  L2  и переходим к следующему шагу. Таким образом, по ходу итерационного процесса

мы корректируем критерий останова, оценивая необходимое число шагов по получаемой


последовательности  f  . Специфика данной постановки, которая позволила так рассуж-
k

дать, заключается в наличии явного представления



L2  f 0 , f 1 ,..., f k   max  e max f el ,
eE l  0,..., k
 


fe

и независимости используемого метода от выбора L2 (шаг метода Франк–Вульфа

 k  2  k  1 вообще ни от каких параметров не зависит).


1

На практике, однако, приведенный способ работает не очень хорошо из-за исполь-


зования завышенных оценок для L2 и R22 . Более эффективным оказался другой способ,

который использует неравенство (см. теорему 2)   f N    N   . В этом способе важно,

что  k , k  0,..., N – автоматически рассчитываются на каждой итерации без дополни-

тельных затрат, а   f k  может быть рассчитано на каждой итерации по известному f k

  n  . Однако нет необходимости проверять этот критерий на каждой итерации, можно


за 

это делать, например, с периодом  1 , где  – относительная точность по функции (ска-
жем,   0.01 – означает, что   0.01  f 0  ),   1 подбирается эвристически, исходя из

9
Математическое моделирование. Т. 28. 2016

задачи. Следуя [18], можно еще немного упростить рассуждения за счет небольшого уве-
личения числа итераций. А именно, можно использовать оценки (при этом следует пола-

гать  k  2  k  2  )
1

  f k   *    f k  , f k  y k ,

7 L2 R22
min   f k  , f k  y k  .
k 1,..., N N 2
Таким образом, в данном разделе был описан способ поиска равновесного распре-
деления потоков по ребрам f , который за время
  SnL R2  
 2 2

находит такой f N   , что

 
 f N     *   .

3. Рандомизированный метод двойственных усреднений поиска


равновесия в модели стабильной динамики (Нестерова–де Пальма)
В ряде постановок задач вместо функций затрат на ребрах  e  f e  заданы ограниче-

ния на пропускные способности fe  fe и затраты на прохождения свободного (не загру-

женного fe  fe ) ребра te . В модели стабильной динамики это сделано для всех ребер [1,
26], а в модели грузоперевозок РЖД – только для части [2]. Согласно работе [1], такую
новую модель можно получить предельным переходом из модели Бэкмана, с помощью
введения внутренних штрафов в саму модель. А именно, будем считать, что (как и в моде-
ли Бэкмана) у всех ребер есть свои функции затрат  e  f e  , но для части ребер e  E (ка-

кой именно части, зависит от задачи) осуществляется предельный переход



 te , 0  f e  f e
 e  f e    ,
 te ,   , f e  f e
 0 

d e  f e  df e 
 0
 0, 0  f e  f e .

Обозначив через x    – равновесное распределение потоков по путям в модели

Бэкмана при функциях затрат на ребрах  e  f e  , получим, что при e  E

 e  fe  x      
 0
 te ,

f e  x     
 0 
 fe ,
10
Математическое моделирование. Т. 28. 2016

где пара  t , f  – равновесие в модели стабильной динамики и ее вариациях [1, 2, 26] с тем

же графом и матрицей корреспонденций, что и в модели Бэкмана, и с ребрами e  E , ха-


рактеризующимися набором  t , f  из определения функций  e  f e  . Заметим, что если

te  te , то te  te можно интерпретировать, например, как время, потерянное в пробке на

этом ребре [1, 26].

Согласно разделу 2 равновесная конфигурация при таком переходе   0  должна


находиться из решения задачи
fe fe

 f       z  dz  lim      z  dz 
eE \ E  0
e

0 
eE  0
e min .
f x , xX

Считая, что в равновесии не может быть lim  e  f e    (иначе, равновесие просто


 0

не достижимо, и со временем весь граф превратится в одну большую пробку), можно не


учитывать в интеграле вклад точек f e (в случае попадания в промежуток интегрирова-
ния), то есть переписать задачу следующим образом
   
 
fe fe fe
   
min     e  z  dz    te   fe  z  dz   min     e  z  dz   f e te  ,

f x , xX f x , xX

eE \ E 0 eE  0 
 f e  f e , eE  
eE \ E  0 eE  

где
0, 0  z  f e
 f  z   , e  E .
e
 , z  f e

Теорема 3 [1, 26, раздел 4 ниже]. Двойственная задача к выписанной выше задаче
может быть приведена к следующему виду:
  t     d wTw  t   f , t  t    he  te   min , (1)
te  te , eE 
wW eE \ E 
te  dom he  te , eE \ E 

где Tw  t  – длина кратчайшего пути из i в j ( w   i, j  W ) на графе, ребра которого

взвешены вектором t  te eE , а функции he  te  – гладкие и вогнутые.

При этом решение изначальной задачи f можно получить из формул:

fe  fe  se , e  E , где se  0 – множитель Лагранжа к ограничению te  te ;

 e  fe   te , e  E \ E .
Приведем пример модели (типа стабильной динамики) расщепления пользователей
на личный и общественный транспорт [1], в которой каждое ребро e  E изначального

11
Математическое моделирование. Т. 28. 2016

графа продублировано для личного (“л”) и общественного (“о”) транспорта, при этом для
общественного транспорта [26]
 f eo 
 e  f   te  1   o
o o
,
f e  f eo 
e

а для личного транспорта был осуществлен предельный переход   0  в аналогичных
формулах
 f eл 
 e  f eл   te л  1   .
 f eл  f eл 

Поиск равновесного расщепления на [личный] и [общественный] транспорт приво-


дит к следующей задаче [1]:
 tо  t о 
wW
 
  d w min Twл  t л  , Twо  t о   f л , t л  t л
 f о , t о  t о    f eо  te о  ln 1  e о e   min
eE  te   t л t л
,
t  t 1  
о о

при этом f л  f л  s л , где s л – вектор множителей Лагранжа для ограничений t л  t л ,

 t o  
f eo  f eo  1  o e o 
.
 te  1    te 
Для упрощения рассуждений далее будем считать, что E   E , т.е. на всех ребрах
перешли к пределу   0  . Если это не так, то надо будет далее использовать не метод
зеркального спуска [19] (см. формулу (2) ниже), а его композитный вариант [27] с сепара-
бельным композитом  
eE \ E 
he  te  . Возникающая на каждой итерации задача (поиска

градиентного отображения, см. формулу (2)), в виду сепарабельности ограничений, распа-


дается в E    n  одномерных задач выпуклой оптимизации, которые можно решить за
  n  с машинной точностью. Интересно заметить, что в случае, когда

 1

  fe  

 e  f e   te  1     

 
  fe  
 
– BPR-функции с   0.25 (наиболее часто встречающаяся на практике ситуация [15]), то

имеются явные формулы, поэтому итерацию можно сделать быстрее – за   n  .

Численно решать задачу негладкой выпуклой оптимизации (1) с E   E будем с по-


мощью специальным образом рандомизированных вариантов метода зеркального спуска
[19, 28 – 31] с евклидовой прокс-структурой. Выбор такой прокс-структуры, прежде всего,
связан с наличием ограничения t  t [28].
12
Математическое моделирование. Т. 28. 2016

Пусть известно такое число R , что


1 2
R2  t*  t 0 ,
2 2

где t* – решение задачи (1). Выберем N – число шагов алгоритма (далее, см. формулу (3),

мы опишем, как можно выбирать N исходя из желаемой точности  ). Положим началь-


ное приближение t 0  t . Пусть на шаге с номером k получен вектор t k и стохастический
субградиент   t k ,  k  , зависящий от случайного вектора  k , и удовлетворяющий усло-

вию несмещенности Ek   t k , k     t k  . Здесь и далее под   t  мы имеем в виду

какой-то измеримый селектор [32] многозначного отображения   t  (субдифференциала

функции   t  ). Следующая точка вычисляется из соотношения

t k 1  arg min    t k    k   t k ,  k  , t  t k
1
,
2
 t  tk k  0,..., N . (2)
tt   2 2
можно
не писать  
 t k , k - стохастический субградиент

Здесь

R 2
k  ,
Mk N 1
где


max   t k ,  k  ,   t k 
2 2
 M k M.

Отметим, что такой выбор  k обусловлен решением задачи

2R2    N  1 M 2  min , где M  max M k ,


 0 k  0,..., N

возникающей при доказательстве теоремы 4, см. ниже.


В виду сепарабельности ограничений t  t и сепарабельности выражения, стоящего
в фигурных скобках в (2), задача (2) на каждом шаге итерационного процесса декомпози-
руется на E    n  одномерных подзадач, каждая из которых представляет собой задачу

минимизации параболы на полуоси. Следовательно, каждая такая подзадача решается по


явным формулам, т.е. на каждой итерации за   n  можно решить задачу (2) в предполо-

жении, что мы нашли стохастический субградиент   t k ,  k  . Чтобы оценить насколько

много потребуется итераций N  N   для достижения заданной точности

 
 t N    *   , где *  min   t  , сформулируем теорему о сходимости метода (2).
tt

13
Математическое моделирование. Т. 28. 2016

Теорема 4 [19, 28 – 31]. Пусть


N N
1
t N

SN
  k t k , SN    k , f N  f  s N ,
k 0 k 0

где s N – есть множитель Лагранжа к ограничению t  t в задаче


1 N
S N  k 0

  k   t     t , k  , t  t
k k k
  12 t  t 0 2
2

  min
 t t
.

Тогда с вероятностью  1  

16 2MR  4 N 
0    t N   *  ln  
N   
с
1 2
R2  t*  t 0
2 2

и с вероятностью  1  

16 2MR  4 N 
0  t N    f N   ln   (3)
N   
с
1 2 1 2
R 2  max  t*  t 0 , t N  t 0  ,
2 2 2 2

 
t N  arg max   d wTw  t   f N , t  t  .
t 0
wW 
Доказательство. Согласно [19, п. 3.4 29]
0    t N   * 

1 1 1 N 2 2
 k    * 2  k M k  
N
1
  *
SN  2
t  t 0 2
2

2
t*  t N 1 2
2
 
k 0
 k  t k
,    t k
, t k
 t 
k 0 
R2 R2
  k  t k , k    t k  , t*  t k 
N
1 2 1
  t*  t N 1  
S N 2S N 2 SN k 0 SN

  t k ,  k     t k  , t*  t k .
N
2MR 1
 
N  1 SN

k 0
k (4)

При формировании последнего слагаемого предпоследнего неравенства было учтено оп-


ределение  k .

1 2
Считая, что t*  t k  R2 для всех k  0,..., N с вероятностью  1   2 , получим из
2 2

неравенства Азума–Хефдинга [33, 34] для ограниченной мартингал–разности


14
Математическое моделирование. Т. 28. 2016

  t k ,  k     t k  , t*  t k    t k ,  k     t k  t*  t k  2 2 M k R
2 2

следующее неравенство
 N 
P    k   t k ,  k     t k  , t*  t k  2 2 R  M k2   exp    2 2    2.
N

 k 0  2
k 
 k 0 
Следовательно,
 N 
P    k   t k , k     t k  , t*  t k  4 2R R ln  2      ,
 k 0 
 1 4MR ln  2   
  k  t k , k    t k  , t*  t k 
N
P   . (5)
 SN N 1 
 k 0

Из неравенства (4) имеем
k 1
 2 R 2    l   t l , l     t l  , t*  t l .
1 2
t*  t k
2 2
l 0

Неравенство (5) представим в виде k  1,..., N

 k 1 
P    l   t l , l     t l  , t*  t l  4 2R R ln  2      .
 l 0 
Отсюда по неравенству Буля (вероятность суммы событий, соответствующих k  1,..., N ,
не больше суммы вероятностей событий) имеем с вероятностью  1   для всех
k  0,..., N
1
 2 R 2  4 2 R R ln  2 N   .
2
t*  t k
2 2

Положим R2  2 R 2  4 2 R R ln  4 N   . Отсюда получаем следующую оценку


R  4 R 1  2 ln  4 N   . 
Следовательно, из неравенств (4), (5) имеем с вероятностью  1   неравенство

0    t N   * 
2MR
N 1
 
1  8 2 1  2ln  4 N    ln  2     16 2MR  4 N 
N
ln  .
  
Положим теперь (см. также конец п. 3 статьи [35])
1 2 1 2
R 2 : max  t*  t 0 , t N  t 0  ,
2 2 2 2

где
 
t N  arg max   d wTw  t   f N , t  t  .
t 0
wW 
15
Математическое моделирование. Т. 28. 2016

Тогда

t   S1    t   2S1  
N N
N
k
k 2
k M k2 
N k 0 N k 0

N

min   k   t k     t k , k  , t  t k   12 t  t  N
1 1

S N t  t  k 0
0 2
2

 2S N

k 0
2
k M k2 

t
 1 N
 S N  k 0

 min    k   t k     t k ,  k  , t  t k   12 t  t 0 2
2
 
 s ,t t  

N

 1 N 0 2
  k   t ,  k     t  , t  t  t  t 2  
N
1 1
   k2 M k2  min  k k k

2S N k 0
t 0
 S N  k 0 2 

  t   s N , t  t 
  t k ,  k     t k  , t N  t k  t t  f .
N N
1 1 1 N 0 2

2S N
  k2 M k2 
k 0 SN
k 0
k
2S N 2
N

К сожалению, в данном случае неравенство Азума–Хефдинга уже не будет выполняться,


поскольку t N зависит от k – нарушается условие, что последовательность

 k   t k ,  k     t k  , t N  t k  будет последовательностью мартингал-разностей. Тем

не менее, аналогично рассуждая, можно показать, что существует такое


1 2 1 2
R 2  max  t*  t 0 , t N  t 0  ,
2 2 2 2

что с вероятностью  1  

16 2MR  4 N 
0  t N    f N   ln  . □
N   
Замечание 2. Выписанная в теореме 4 оценка (3) была получена с помощью теоремы
3 работы [29] и замечания 4 работы [36]. Более аккуратный способ рассуждений позволяет
немного улучшить оценку (3). Для практических приложений метода (2) удобнее записать
его не в терминах неизвестного R , а сразу в терминах другого неизвестного
 2 1 2
R 2  max  max t*  t k , t N  t 0  .
k 0,..., N 2 2 2

Речь идет о выборе шагов

R 2
k  ,
Mk N 1
и об оценке [31]

16
Математическое моделирование. Т. 28. 2016

0  t N    f N  
2MR
N

1  8ln  2   
с вероятностью  1   . С практической точки зрения от этого ничего не меняется, и даже
становится лучше (оценка улучшается). Этот параметр как был априорно неизвестным,
так и остался таковым, поменялась немного только его интерпретация. Тем не менее,
оценка (3) представляет определенный теоретический интерес, поскольку является хоро-
шей демонстрацией тех теоретических трудностей, которые возникают при описанном
выше способе восстановления решения прямой задачи.
Замечание 3. Пусть   t k , k     t k  , т.е. вместо стохастического субградиента в

алгоритме (2) используется обычный субградиент. Тогда вектор равновесного распреде-


ления потоков по ребрам f можно считать по-другому (при таком способе подсчета воз-

можно нарушение неравенств f N


 
 f и 0   t N   f N ):  
f k    d wTw  t k  , f
N
1
wW
N

SN

k 0
k fk.

Решая возникающие здесь задачи поиска кратчайших путей, мы находим (одновременно,


т.е. без дополнительных затрат) не только вектор распределения потоков по ребрам f k , но

и разреженный вектор распределения потоков по путям x k (при этом f k  x k ). При этом

  t N     f N   2 2R  f N  f 
2 2MR
 ,
 2
N
где
1 2
R2  t*  t 0 .
2 2

Отсюда можно получить, что

0    t N   * 
2MR
,
N

  f N   * 
2 2MR
,
N

f N
f   2

2M
N
.

Из теоремы 4 и слабой двойственности ( *  * ) имеем

  t N   *    f N   *    t N     f N    .

Это обосновывает следующее следствие теоремы 4.


17
Математическое моделирование. Т. 28. 2016

Следствие. В условиях теоремы 4


0    t N   *   , 0    f N   *   .

Осталось описать, как можно случайно выбирать быстро вычислимый, равномерно


ограниченный по норме, стохастический субградиент функции   t  со свойством несме-

щенности.
Прежде всего, опишем, как формируется субградиент функции   t  . Заметим, что

субградиент выпуклой негладкой функции   t  – есть выпуклое множество, превра-

щающееся в точках гладкости   t  в один вектор – обычный градиент   t  . Из опреде-

ления   t  (см. формулу (1)) имеем

  t     d wTw  t   f ,
wW

где Tw  t  – супердифференциал негладкой вогнутой (как минимум выпуклых, в нашем

случае аффинных) функции Tw  t   min   epte (следует сравнить с задачами, возникаю-


pPw
eE

щими на каждом шаге метода Франк–Вульфа из раздела 2). Супердифференциал Tw  t 

представляет собой выпуклую комбинацию векторов с компонентами  ep , отвечающих

кратчайшим путям (если их несколько) для заданной корреспонденции w на графе, ребра


которого взвешены вектором t  te eE . Каждый такой вектор (с числом компонент рав-

ным числу ребер) можно описать следующем образом: если ребро входит в кратчайший
путь, то в компоненте вектора, отвечающего этому ребру, стоит 1, иначе 0.
Теперь опишем два варианта (первый вариант был сообщен нам Ю.Е. Нестеровым в
2013 г.) выбора несмещенного стохастического субградиента (мы вводим случайность,
говорят также рандомизацию, чтобы за счет этого сократить стоимость вычисления)
Вариант 1
  t ,    d T  t   f ,

где с.в.   w с вероятностью d w d , w W , T  t  – произвольный элемент супердиф-

ференциала T  t  .

Вариант 2
d j
  t ,     d 
j:  , j W
 d 
T j  t   f ,

18
Математическое моделирование. Т. 28. 2016

где с.в.   i с вероятностью di  d , di   


j:  i , j W
dij , i V , T  t  – произвольный эле-

мент супердифференциала T  t  .

Заметим, что в варианте 2   t ,   может быть вычислен алгоритмом Дейкстры за


  n  в силу особенность алгоритма Дейкстры поиска кратчайших путей, заключающейся

  n  он находит кратчайшие пути из заданной вершины во все ос-
в том, что за время 

тальные [6]. Однако подсчет суммы в определении   t ,   , если это делать напрямую,

может занять время   n3 2  , поскольку число слагаемых равно   n  , а число ненулевых

компонент в векторах T j  t  (число ребер в соответствующем кратчайшем пути) может

быть порядка   n  (сеть типа двумерной решетки). Однако можно по-другому органи-
зовать вычисление компонент вектора   t ,   . Алгоритм Дейкстры строит (ориентиро-
  n  . Для каждой вершины этого дере-
ванное) дерево кратчайших путей с корнем в  за 

ва j   , припишем ребру, ведущему в эту вершину вес d j . Получим таким образом

взвешенное дерево. Далее припишем листьям дерева веса, равные весам ребер, ведущим в
эти листья. А далее по индукции: припишем вершине дерева сумму весов всех потомков.
Припишем теперь ребрам дерева новые веса: вес ребра равен весу вершины, в которую
это ребро входит. Далее нужно просто пробежаться по ребрам этого дерева, считывая веса
и нормируя их на  d d  . С точностью до f получим таким образом   t ,   . Все это

  n  . Аналогичные конструкции позволяют вычислять   t  и   t N 


можно сделать за 

  Sn  .
за 

Заметим также, что в варианте 2 оценка константы M (см. теорему 4) получается


заметно лучше, чем в варианте 1.
Таким образом, вариант 2 кажется более предпочтительным. В чем может быть ми-
нус использования варианта 2 – в возможности использовать более быстрые алгоритмы
поиска кратчайших путей, которые находят кратчайший путь ровно между двумя верши-
  n  для ре-
нами. Хотя нижняя оценка затрат на поиск кратчайшего пути здесь также 

альных (почти планарных) транспортных (и не только) сетей эта оценка может быть су-
 1 . Как правило,
щественно редуцирована. В частности, в определенных ситуациях до 
  n  на подготовку специальной структуры
это, в свою очередь, требует затрат порядка 
19
Математическое моделирование. Т. 28. 2016

данных [6] (будем называть такой процесс препроцессингом). Тем не менее, учитывая, что
веса ребер меняются от шага к шагу не сильно, такой препроцессинг не обязательно осу-
ществлять на каждой итерации. К тому же совершенно не обязательно находить всегда
кратчайшие пути, считая таким образом точный субдифференциал. Желая решить задачу с
точностью  по зазору двойственности   t N     f N    достаточно вычислять     -

субдифференциал на каждой итерации [37].


Выше мы пояснили, что нельзя однозначно, исходя из теоретических оценок, отдать
предпочтение одному из описанных вариантов выбора   t ,   . Более того, в контексте

проводимого выше анализа методов может быть не очевидна и сама необходимость в ран-
домизации.
Действительно, на первый взгляд кажется, что если считать полностью   t  (такой

подход с методом двойственных усреднений [29] вместо зеркального спуска предлагался


Ю.Е. Нестеровым в 2012 г.), то оценка (3) примет вид (заметим, что с точностью до мно-
жителя 2 эта оценка – не улучшаема [19, 28, 37])

t N    f N  
2MR
,
N
  Sn  операций (в определенных ситуациях воз-
Поскольку вычисление   t  требует 

можно и быстрее), то, кажется, что при таком подходе мы просто теряем фактор n в
оценке сложности метода. Однако в действительности это не совсем так. Во-первых, кон-
станта M здесь может быть заметно меньше своего аналога в варианте 2. Во-вторых, по-
скольку на каждой итерации мы должны пересчитывать все кратчайшие пути, то в этой
постановке также как и в разделе 2 на передний план выходит пересчет кратчайших путей
вместо расчета, что с учетом допустимости использования приближенно вычисленных
  Sn  [6, 23 – 25].
кратчайших путей может редуцировать оценку сложности итерации 

Далее мы, тем не менее, ограничимся рассмотрением рандомизированных методов,


 n .
считая стоимость одной итерации равной 

Свойство несмещенности стохастических субградиентов следует из построения (ва-


риант 1 и 2). Сложнее обстоит дело с определением параметра метода R (или R , см. за-
мечание 2; далее мы ограничимся рассмотрением случая, когда в качестве параметра вы-
бран R , с помощью замечания 2 можно провести аналогичные рассуждения и для R ),
который явно входит в итерационный процесс (2) (следует сравнить с методом Франк–

20
Математическое моделирование. Т. 28. 2016

Вульфа, для которого параметры метода не входили в сам метод, только в один из вариан-
тов критерия останова).
Критерий останова можно задавать явной формулой для числа итераций (см. теоре-
му 4 и замечание 2), в которую входит неизвестный параметр R (или R ), но лучше его
задавать немного по-другому (см. ниже).
Прежде всего, отметим, что если известна оценка (сверху) на M , то ее можно ис-
пользовать при выборе шага метода

R 2 R 2
k  или  k  ,
M N 1 M N 1
при этом теорема 4 и замечание 2 останутся верными. Далее сконцентрируемся на замеча-
нии 2. В формуле для  k стоит неизвестное R , которое исчезает при подстановке сюда

зависимости N  ; R, M ,   , определяемой в замечании 2 из условия

2MR
N  ; R, M ,  
1  
8ln  2     .

Таким образом, шаг метода не зависит от неизвестного R . В качестве, критерия остановки


  Sn  )
метода используется условие (проверяемое за 

t N    f N    .

Если априорно оценка константы M не известна, то процедура усложняется. Снача-


ла предполагается, что M  M 0 . Далее предлагается следующая процедура адаптивного

подбора неизвестного параметра R (отчасти являющаяся оригинальной, см., например,


[36]). Задаем какое-то начальное значение, скажем, R  t 0 2 , запускаем итерационный

процесс (2) с этими параметрами. В какой-то момент мы либо обнаружим, что M  M 0 ,


либо будет сделано предписанное (теоремой 4) для выбранных значений параметров чис-
ло итераций. Предположим, что имеет место вторая альтернатива. Далее проверяем усло-
вие
t N    f N    .

Если оно выполняется, то мы нашли решение с требуемой точностью. Если не вы-


полняется, то запускаем процесс заново, полагая R : 2 R (такой выбор константы также
оптимален, см. [38]). Это дополнительно может привести к не более чем логарифмиче-
скому (от отношения истинного значения R к t 0 2 ) числу перезапусков. Здесь в рассуж-

21
Математическое моделирование. Т. 28. 2016

дениях мы пренебрегли вероятностными оговорками, поскольку  можно считать очень


малым (см. формулу (3)).
Если мы вышли из описанного цикла из-за того, что на каком-то шаге получили
M  M 0 , то полагаем M : 2M (такой выбор константы также оптимален, см. [38]) и за-
пускаем итерационный процесс заново с новым значением M . Это дополнительно может
привести к не более чем логарифмическому (от отношения истинного значения M к M 0 )
числу перезапусков.
  nM 2 R 2  2  .
В итоге, ожидаемая оценка времени работы метода (2) – есть 

4. Рандомизированный покомпонентный спуск для модели стабиль-


ной динамики в форме Ю.Е. Нестерова
Предположим, что число источников намного меньше числа вершин
S  O  V n.

Описанные в разделах 2, 3 методы не сильно учитывают такую разреженность. В мае 2014


года Ю.В. Дорном и Ю.Е. Нестеровым была предложена следующая эквивалентная пере-
формулировка (см. Теорему 5 в Приложение) двойственной задачи (1) для модели ста-
бильной динамики [26, 39] (т.е. при E   E )
 
   
min   d wTw  t   f , t  t   min   d sk  Tsk  Tss    fij max Tsj  Tsi  tij , 0  , (6)
tt
 wW  T
 ssO,k,kWD i , j E
sO

 
которая, по-видимому, позволяет в большей степени учесть свойство S  n . По решению
задачи (6) можно восстанавливать решение двойственной задачи (1):

 
tij  max max Tsj  Tsi  , tij ,  i, j   E ,
sO

но, к сожалению, нельзя восстанавливать вектор равновесного распределения потоков по


путям x . Учитывая что
 
min
f  , f  f
ft
eE
e e  min
f x , xX
ft
eE
e e  min max  f e   te   e   f ,  
f x , xX   0
 eE 
ff

  t  t   
 max   d wTw  t     f ,    min   d wTw  t   f , t  t  ,
 0
wW  t t
 wW 
можно получить по формуле Демьянова–Данскина–Рубинова [1, 28] и решение прямой
задачи

22
Математическое моделирование. Т. 28. 2016

  
    
f   t  min  f e te    t   min   d sk  Tsk  Tss    f ij max  Tsj  Tsi  tij , 0    .
 f  , f  f
eE  
T
 ssO,k,kWD  i , j E
sO

  
Следуя [39, 40], с помощью техники двойственного сглаживания, запишем функционал,
равномерно аппроксимирующий целевой функционал задачи (6) (здесь
ij    4nfij ln  S  1  ,  – точность, с которой хотим решить задачу (1)) в виде

 1   Tsj  Tsi  tij  


  d sk  Tsk  Tss    fijij ln   exp 
 S  1  sO
  1   min , (7)
 ij   
T
sO , kD i , j E  

 exp  T  T  t   
sj si ij ij
fij
fij  fij sO
 ,  i, j   E .
 exp
sO
  T  T 
sjt     1
si
1
 ij ij

  exp Tsj  Tsi  tij 

ij 
1

 sO 
Решая задачу (7) с точностью  4 по функции прямо-двойственным методом (недавно
было установлено [41], что при правильном взгляде любой разумный численный метод
является прямо-двойственным, точнее имеет соответствующую модификацию) можно
восстановить t N и f N так, чтобы зазор двойственности был меньше 

 
  t N    f N   .

Таким образом, достаточно научиться эффективно решать задачу (7). Это можно сделать,
например, с помощью ускоренного покомпонентного спуска Ю.Е. Нестерова, или более
современных вариантов ускоренных покомпонентных спусков APPROX, ALPHA [42 –

44]. Разобьем все компоненты Tsk sO ,kV  


на блоки T k 
kV
, где T k   Tsk sO . Чтобы по-

лучить оценку скорости сходимости, нужно оценить Lij ,k – константу липшица в 2-норме

градиента функции (по переменным блока T k  )

 1   Tsj  Tsi  tij  


fijij ln   exp    1  
 S  1  sO  ij   
 

 
 fij max  Tsj  Tsi  tij  us  ij u0 ln u0  ij  us ln us  .
 s  sO
u0  u 1
sO 
sO
u0 ,us  0, sO

Из выписанного представления и теоремы 1 работы [40] имеем, что


Lij ,k  fij ij , k  i, j ; Lij ,k  0 , k  i, j .

Введя

23
Математическое моделирование. Т. 28. 2016

1 0 2
RT2  T  T* ,
2 2

Cij  10 – число “соседей” в транспортном графе у вершин i и j ,

получим, что алгоритм 2 APPROX из работы [43] с n блоками (размер каждого блока S ),
с евклидовой прокс-структурой в композитном варианте, с композитом
 
sO , kD
d sk  Tsk  Tss  ,
 s , k W

имеет, согласно теореме 3 [43], следующую оценку (в среднем) общей сложности решения
задачи (7) с точностью по функции  4 ( L , C – специальным образом “взвешенные сред-

ние” констант fij  ij , Cij , причем L  max fij ij , C  max Cij )
 i , j E  i , j E

 CLR 2   CLRT2 
 n T
    СS     СSn .
      

  стоимость 
число итераций итерации

Если бы мы использовали не APPROX, а быстрый градиентный метод в композит-


ном варианте [27, 40], то оценка была бы хуже

 nLRT2 
 Sn .
  
 
Заметим, что алгоритм можно распараллелить на   n C  процессорах, каждый

процессор при этом должен сделать


 CLRT2 
  С 2S 
  
 
арифметических операций. При S  n получается довольно оптимистичная оценка.

5. Заключение
В статье были описаны различные способы поиска равновесного распределения по-
токов в моделях Бэкмана (раздел 2), в модели стабильной динамики Нестерова–де Пальма
(раздел 4) и промежуточных моделях (раздел 3). Промежуточные модели получаются из
модели Бэкмана при предельном переходе   0  по части ребер (см. раздел 2). Модель
стабильной динамики получается, когда предельный переход осуществлен на всех ребрах
(см. раздел 3). Подход раздела 2 не применим к моделям разделов 3, 4, поскольку (см. раз-
дел 2)
24
Математическое моделирование. Т. 28. 2016

 
L2  max  e f e   при   0  .
eE

Подход раздела 4 не применим к моделям Бэкмана, поскольку, по сути, ограничивается


только решением специальной задачи линейного программирования. Подход раздела 3
применим ко всем рассмотренным в статье моделям.
Введя относительную точность по функции  (см. раздел 2), с которой мы хотим
искать равновесие (в реальных приложениях относительной точности   0.01  0.05 ока-
зывается более чем достаточно), запишем оценки общего времени работы методы из раз-
делов 2 – 4:

метод / модель Бэкман Нестеров–де Пальма Промежуточная


Франк–Вульф K 2  S , n  Sn   

Зеркальный спуск K3  S , n  n  2 K3  S , n  n  2 K3  S , n  n  2

Покомпонентный спуск  K 4  S , n  Sn  

Таблица 1

К сожалению, константы K этих методов могут существенно отличаться и зависеть,


в частности, от n . В худших случаях может быть K    n  .


 max n, W 3 поиска равновесия
Заметим, что ожидаемую (среднюю) сложность  
в модели стабильной динамики дает симплекс метод [45 – 47] (для прямой задачи – зада-
чи линейного программирования). Из таблицы 1 можно заключить, что симплекс метод
будет конкурентоспособным лишь при небольшом числе корреспонденций W  n . Отме-

  n3  имеет заметно более простая транспортная


тим при этом, что общую сложность 

задача линейного программирования с n пунктами производства и потребления, причем


эта оценка является не улучшаемой [48, 49].
Интересно сравнить приведенные в таблице 1 оценки с оценками сложности реше-
ния задачи поиска стохастического равновесия в модели Бэкмана из работы [50].
В заключение сделаем существенную для практики оговорку. На полученные в дан-
ной статье оценки следует смотреть исключительно с точки зрения качественного пони-
мания сложности того или иного метода, но ни коим образом не с точки зрения отбора
лучшего метода. В данной работе отсутствуют сравнительный анализ констант методов из
таблицы 1. Такой анализ требует проработки некоторых технических деталей, связанных с
дополнительным погружением в специфику постановки. При выбранном в данной статье
25
Математическое моделирование. Т. 28. 2016

уровне грубости получения оценок можно считать, что все три метода (из разделов 2 – 4)
конкурентоспособны. Помочь отобрать наилучший метод здесь могут численные экспе-
рименты. Этому планируется посвятить отдельную работу.

Авторы выражают благодарность А.С. Аникину, А.С. Немировскому, Е.А. Нурмин-


скому, Н.Б. Шамрай, А.А. Шананину, С.В. Шпирко за ценные замечания, а также студен-
там ФУПМ МФТИ Александру Бондаренко, Марине Казначеевой, Даниилу Меркулову,
Ильнуре Усмановой и студенту факультета компьютерных наук ВШЭ Антону Родоманову
за помощь в работе.
Особую благодарность авторам хотелось бы выразить проф. Юрию Евгеньевичу Не-
стерову, за постоянное внимание к работе и ценнейшую обратную связь.

Исследование в разделе 2 выполнено в ИППИ РАН за счет гранта Российского науч-


ного фонда (проект № 14-50-00150), исследование в разделе 3 выполнено при поддержке
гранта 15-31-20571-мол_а_вед, исследование А.В. Гасникова в разделе 4 выполнено при
поддержке гранта РФФИ 15-31-70001 мол_а_мос.

Приложение
Приведем с доказательство использованного нами в п. 4 результата (6) (Дорна–
Нестерова, 2014).
Теорема 5. Задача (1) эквивалентна задаче
 
 
min   d sk  Tsk  Tss    fij max Tsj  Tsi  tij , 0   . (8)
sO
 ssO,k,kWD 
T
 i , j E
 
Решение задачи (8) связано с решением задачи (1) следующим образом

 
tij  max max Tsj  Tsi  , tij ,  i, j   E .
sO
(9)

Доказательство. Двойственная задача для задачи (1) имеет вид



 

min   d sk  Tsk  t    f ij   tij  tij   . (10)
tt
  s ,k W
  i , j E 

Введем набор переменных Tsk – время проезда по кратчайшему пути из вершины s в

вершину k . Тогда для любых трех вершин s , i , j , таких, что существует ребро  i, j   E

выполнено соотношение

26
Математическое моделирование. Т. 28. 2016

Tsj  Tsi  tij .

Следовательно, задачу (10) можно переписать в виде



 

min   d sk  Tsk   fij   tij  tij  t  t ; Tsj  Tsi  tij , s V ,  i, j   E  . (11)
t ,T

  s ,k W  i , j E 

Это задача ЛП. В еѐ целевом функционале все компоненты вектора t неотрицательны,
при этом ограничение на каждую компоненту имеет вид

 
tij  max max Tsj  Tsi  , tij .
s
(12)

Следовательно, задача (11) может быть явно решена относительно вектора t – в (12) име-
ет место равенство, т.е. имеет место (9). Исключая вектор t , приходим к задаче (8), что
завершает доказательство. □

Литература
1. А.В. Гасников, Ю.В. Дорн, Ю.Е. Нестеров, С.В. Шпирко О трехстадийной версии модели ста-
ционарной динамики транспортных потоков // Математическое моделирование. 2014. Т. 26:6.
C. 34–70. arXiv:1405.7630
A. Gasnikov, Yu. Dorn, Yu. Nesterov, S. Shpirko, “On the three-stage version of stable dynamic mod-
el”, Matem. Mod., V. 26:6 (2014), 34–70.
2. М.П. Ващенко, А.В. Гасников, Е.Г. Молчанов, Л.Я. Поспелова, А.А. Шананин Вычислимые мо-
дели и численные методы для анализа тарифной политики железнодорожных грузоперевозок.
М.: ВЦ РАН, 2014. arXiv:1501.02205
Analysis of tariff policy of a railway cargo transportation. Eds. A.A. Shananin. Preprint CCAS,
2014. [in Russian]
3. M. Frank, P. Wolfe An algorithm for quadratic programming // Naval research logistics quarterly.
1956. V. 3. № 1-2. P. 95–110.
4. L.J. LeBlanc, R.V. Helgason, D.E. Boyce Improved efficiency of the Frank-Wolfe algorithm for con-
vex network programs // Transportation Science. 1985. V. 19. № 4. P. 445–462.
5. H. Bar-Gera Origin-based algorithm for the traffic assignment problem // Transportation Science.
2002. V. 36. № 4. P. 398–417.
6. H. Bast, D. Delling, A. Goldberg, M. Müller-Hannemann, T. Pajor, P. Sanders, Wagner, D. Wer-
neck R.F. Route Planning in Transportation Networks // Microsoft Technical Report. 2015. ar-
Xiv:1504.05140
7. B. Cox., A. Juditsky, A. Nemirovski, Decomposition Techniques for Bilinear Saddle Point Problems
and Variational Inequalities with Affine Monotone Operators on Domains Given by Linear Minimi-
zation Oracles // e-print, 2015. arxiv:1506.02444

27
Математическое моделирование. Т. 28. 2016

8. Л.В. Канторович Математические методы организации и планирования производства. Изда-


ние Ленинградского государственного университета. Ленинград, 1939.
Kantorovich L.V. Mathematical methods of organizing and planning production // Management
Science. 1960. V. 6, №. 4. P. 366–422.
9. Y.E. Nesterov Efficiency of coordinate descent methods on large scale optimization problem // SIAM
Journal on Optimization. 2012. V. 22. № 2. P. 341–362.
10. Y.E. Nesterov Subgradient methods for huge-scale optimization problems // Math. Program., Ser. A.
2013. V. 146. №. 1-2. P. 275–297.
11. M. Beckmann, C.B. McGuire, C.B. Winsten Studies in the economics of transportation. RM-1488.
Santa Monica: RAND Corporation, 1955.
12. П.А. Стенбринк Оптимизация транспортных сетей. М.: Транспорт, 1981.
P. Steenbrink Optimization of transport networks. John Wiley & Sons, 1974.
13. Y. Sheffi Urban transportation networks: Equilibrium analysis with mathematical programming me-
thods. N.J.: Prentice–Hall Inc., Englewood Cliffs, 1985.
14. M. Patriksson The traffic assignment problem. Models and methods. Utrecht, Netherlands: VSP,
1994.
15. А.В. Гасников, С.Л. Кленов, Е.А. Нурминский, Я.А. Холодов, Н.Б. Шамрай Введение в матема-
тическое моделирование транспортных потоков. Под ред. А.В. Гасникова с приложениями
М.Л. Бланка, К.В. Воронцова и Ю.В. Чеховича, Е.В. Гасниковой, А.А. Замятина и В.А. Ма-
лышева, А.В. Колесникова, Ю.Е. Нестерова и С.В. Шпирко, А.М. Райгородского, с предисло-
вием руководителя департамента транспорта г. Москвы М.С. Ликсутова. М.: МЦНМО, 2013.
427 стр., 2-е изд.
Introduction to the mathematical modelling of traffic flows. Eds. A.V. Gasnikov. Moscow:
MCCME, 2013. [in Russian]
16. D. Monderer, L.S. Shapley Potential games // Games and economic behavior. 1996. V. 14. №. 1. P.
124–143.
17. W. Sandholm Population games and Evolutionary dynamics. Economic Learning and Social Evolu-
tion. MIT Press; Cambridge, 2010.
18. M. Jaggi Revisiting Frank–Wolfe: Projection-free sparse convex optimization // Proceedings of the
30th International Conference on Machine Learning, Atlanta, Georgia, USA, 2013.
https://sites.google.com/site/frankwolfegreedytutorial/
19. S. Bubeck Theory of convex optimization for machine learning // In Foundations and Trends in Ma-
chine Learning. 2015. V. 8. no. 3-4. P. 231–357. arXiv:1405.4980
20. Z. Harchaoui, A. Juditsky, A. Nemirovski Conditional gradient algorithms for norm-regularized
smooth convex optimization // Math. Program. Ser. B. 2015. V. 152. P. 75–112.
http://www2.isye.gatech.edu/~nemirovs/ccg_revised_apr02.pdf

28
Математическое моделирование. Т. 28. 2016

21. Yu. Nesterov Complexity bounds for primal-dual methods minimizing the model of objective func-
tion // CORE Discussion Papers. 2015/03. 2015.
https://www.uclouvain.be/cps/ucl/doc/core/documents/coredp2015_3web.pdf
22. D. Challet, M. Marsili, Y.-C. Zhang Minority Games: Interacting Agents in Financial Markets. Ox-
ford University Press, 2005.
23. I. Abraham, A. Fiat, A.V. Goldberg, R.F. Werneck Highway dimension, shortest paths and provably
efficient algorithms // In Proceedings of the twenty-first annual ACM-SIAM symposium on Discrete
Algorithms. 2010. P. 782–793.
24. M.A. Bender, M. Farach-Colton, G. Pemmasani, S. Skiena, P. Sumazin Lowest common ancestors in
trees and directed acyclic graphs // Journal of Algorithms. 2005. V. 57 (2). P. 75–94.
25. J. Fischer, V. Heun Theoretical and practical improvements on the rmq-problem, with applications to
lca and lce // In Combinatorial Pattern Matching. Springer, 2006. P. 36–48.
26. Y. Nesterov, A. de Palma Stationary dynamic solutions in congested transportation Networks: Sum-
mary and Perspectives // Networks Spatial Econ. 2003. № 3(3). P. 371–395.
27. Yu. Nesterov Gradient methods for minimizing composite functions // Math. Prog. 2013. V. 140. №
1. P. 125–161.
28. A. Nemirovski Lectures on modern convex optimization analysis, algorithms, and engineering appli-
cations. Philadelphia: SIAM, 2013.
http://www2.isye.gatech.edu/~nemirovs/Lect_ModConvOpt.pdf
29. Y. Nesterov Primal-dual subgradient methods for convex problems // Math. Program. Ser. B. 2009.
V. 120(1). P. 261–283.
30. A. Juditsky, G. Lan, A. Nemirovski, A. Shapiro Stochastic approximation approach to stochastic pro-
gramming // SIAM Journal on Optimization. 2009. V. 19. № 4. P. 1574–1609.
31. А.В. Гасников, Ю.Е. Нестеров, В.Г. Спокойный Об эффективности одного метода рандомиза-
ции зеркального спуска в задачах онлайн оптимизации // ЖВМ и МФ. Т. 55. № 4. 2015. С. 55–
71. arXiv:1410.3118
A. Gasnikov, Yu. Nesterov, V. Spokoiny On the Efficiency of a Randomized Mirror Descent Algo-
rithm in Online Optimization Problems // Computational Mathematics and Mathematical Physics,
2015, Vol. 55, No. 4, pp. 580–596.
32. A. Shapiro, D. Dentcheva, A. Ruszczynski Lecture on stochastic programming. Modeling and theory.
MPS-SIAM series on Optimization, 2014.
33. G. Lan, A. Nemirovski, A. Shapiro Validation analysis of mirror descent stochastic approximation
method // Mathematical Programming. V. 134. № 2. 2012. P. 425–458.
34. S. Boucheron, G. Lugoshi, P. Massart Concentration inequalities: A nonasymptotic theory of inde-
pendence. Oxford University Press, 2013.

29
Математическое моделирование. Т. 28. 2016

35. А.В. Гасников, П.Е. Двуреченский, Д.И. Камзолов, Ю.Е. Нестеров, В.Г. Спокойный, П.И. Сте-
цюк, А.Л. Суворикова, А.В. Чернов Поиск равновесий в многостадийных транспортных моде-
лях // Труды МФТИ. 2015. Т. 7. № 4. С. 143–155.
A. Gasnikov, P. Dvurechensky, D. Kamzolov, Yu. Nesterov, V. Spokoiny, P. Stetsyuk, A. Suvorikova,
A. Chernov Searching for equilibriums in multistage transport models // Proceedings MIPT. 2015. V.
7. No. 4. P. 143–155.
36. А.В. Гасников, П.Е. Двуреченский, Ю.Е. Нестеров Стохастические градиентные методы с не-
точным оракулом // Труды МФТИ. 2016. Т. 8. Т. 1. С. 41–91. arxiv:1411.4218
A. Gasnikov, P. Dvurechensky, Yu. Nesterov Stochastic gradient methods with inexact oracle // e-
print, 2014. arxiv:1411.4218
37. Б.Т. Поляк Введение в оптимизацию. М.: Наука, 1983.
B.T. Polyak Introduction to optimization. Hardcover, 1987.
38. А.В. Гасников, Е.В. Гасникова, Ю.Е. Нестеров, А.В. Чернов Об эффективных численных ме-
тодах решения задач энтропийно-линейного программирования // ЖВМ и МФ. Т. 56. № 4.
2016. С. 523–534. arXiv:1410.7719
A.V. Gasikov, E.V. Gasnikova, Yu.E. Nesterov, A.V. Chernov, “Entropy-linear programming” Comp.
Math. and Math. Phys. 2016. V. 56. No. 4.
39. Yu. Dorn, A. Gasnikov, Yu. Maximov, Yu. Nesterov Computational methods for the stochastic equili-
brium stable dynamic model // Book of Abstracts ECCOMAS. Thematic Conference CM3 – Compu-
tational Multi Physics, Multi Scales and Multi Big Data in Transport Modeling, Simulation and Op-
timization New Challenges for the Greening of Transport University of Jyväskylä. May 25-27, 2015.
P. 83–86.
http://www.mit.jyu.fi/scoma/cm3/downloads/CM3_Book%20of%20Abstracts_electronic.pdf
40. Y. Nesterov Smooth minimization of non-smooth function // Math. Program. Ser. A. 2005. V. 103.
№ 1. P. 127–152.
41. A. Nemirovski, S. Onn, U. Rothblum Accuracy certificates for computational problems with convex
structure // Mathematics of Operations Research. 2010. V. 35:1. P. 52–78.
42. Y.E. Nesterov Efficiency of coordinate descent methods on large scale optimization problem // SIAM
Journal on Optimization. 2012. V. 22. № 2. P. 341–362.
43. O. Fercoq, P. Richtarik Accelerated, Parallel and Proximal Coordinate Descent // e-print, 2013. ar-
Xiv:1312.5799
44. Z. Qu, P. Richtarik Coordinate Descent with Arbitrary Sampling I: Algorithms and Complexity // e-
print, 2014. arXiv:1412.8060
45. K.-H. Borgwardt The simplex method: A probabilistic analysis. Algorithms and Combinatorics
(Study and Research Texts). Berlin: Springer-Verlag, 1987.
46. A. Schrijver Theory of Linear and Integer Programming. John Wiley & sons, 1998.

30
Математическое моделирование. Т. 28. 2016

47. D. Spielman, S.-H. Teng Smoothed analysis of algorithms: why the simplex algorithm usually takes
polynomial time // Proceedings of the Thirty-Third Annual ACM Symposium on Theory of Compu-
ting. ACM. 2001. P. 296–305.
48. R.K. Ahuja, T.L. Magnati, J.B. Orlin Network flows: Theory, algorithms and applications. Prentice
Hall, 1993.
49. O. Pele, M. Werman Fast and robust earth mover’s distances. In ICCV’09, 2009.
http://www.cs.huji.ac.il/~werman/Papers/ICCV2009.pdf
50. А.В. Гасников, Е.В. Гасникова, Е.И. Ершов, П.Е. Двуреченский, А.А. Лагуновская Поиск сто-
хастических равновесий в транспортных моделях равновесного распределения потоков //
Труды МФТИ. 2015. Т. 7. № 4. С. 114–128. arXiv:1505.07492
A. Gasnikov, E. Gasnikova, E.I. Ershov, P. Dvurechensky, A. Lagunovskaya Efficient calculation of
stochastic equilibrium in the Beckmann's model // e-print, 2015. arXiv:1505.07492

Подана 2 июня 2015 г.

31
Математическое моделирование. Т. 28. 2016

Numerical Methods for the Problem of Traffic Flow Equilibrium in


The Beckmann and the Stable Dynamic Models

Gasnikov A.V.
(PreMoLab MIPT, IITP RAS)
gasnikov.av@mipt.ru
Dvurechensky P.E.
(WIAS, IITP RAS)
dvurechensky@iitp.ru
Dorn Yu.V.
(Research Centre for Transport Policy Studies, Institute for Transport Economics and Transport Policy Studies,
National Research University Higher School of Economics, PreMoLab MIPT, IITP RAS)
dorn.iuv@mipt.ru
Maximov Yu.V.
(PreMoLab MIPT, IITP RAS)
yury.maximov@phystech.edu

Abstract
In this work we propose new computational methods for transportation equilibrium problems.
For Beckmann's equilibrium model we consider Frank–Wolfe algorithm in a view of modern
complexity results for this method. For Stable Dynamic model we propose new methods. First
approach based on mirror descent scheme with euclidean prox-structure for dual problem and
randomization of a sum trick. Second approach based on Nesterov's smoothing technique of
dual problem in form of Dorn–Nesterov and new implementation of randomized block-
component gradient descent algorithm.
Key words: equilibrium transportation models, Nash–Wardrop equilibrium, Stable Dynamic
model, Beckmann's model, Frank–Wolfe algorithm, Mirror descent algorithm, dual averaging,
randomized component gradient descent algorithm.

32

Вам также может понравиться