Содержание к диссертации
Введение
Глава 1. Анализ известных методов решения задач маршрутизации и расписания движения городского транспорта. общая постановка задачи 5
1.1. Актуальность работы 5
1.2. Цель диссертационной работы, её научная новизна, достоверность и практическая ценность 7
1.3. Научная новизна и практическая ценность работы, её достоверность 8
1.4. Общая постановка задачи 10
Глава 2. Разработка алгоритма определения траектории движения одного ТС между двумя остановками с учетом ограничений проезда в городе 14
2.1. Постановка задачи построения траектории проезда автобуса между двумя остановками в городском квартале 14
2.2. Описание алгоритма определения множества допустимых точек траектории проезда с помощью метода вороного (диаграмма вороного) 17
2.3. Выбор траектории проезда между двумя остановками по критерию минимального пути 22
2.4. Моделирование на эвм алгоритма определения траектории движения тс, проходящий через выбранное множество допустимых точек 33
Глава 3. Решение задачи маршрутизации движения группы ТС при заданной матрице расстояний между остановками 37
3.1. Анализ известных алгоритмов маршрутизации и выбор метода дейкстры для определения оптимального маршрута 37
3.1.1. Метод ветвей и границ 37
3.1.2. Метод ближайшего соседа 44
3.1.3. Волновой алгоритм 45
3.1.4. Алгоритм поиска в глубину (ширину) 46
3.1.5. Алгоритм Беллмана-Форда 49
3.1.6. Алгоритм Дейкстры 52
3.1.7. Алгоритм Джонсона 64
3.1.8. Алгоритм Флойда-Уоршелла 67
3.2. Модификация алгоритма дейкстры для задачи многомерной маршрутизации 69
Глава 4. Определение графика движения тс по заданным маршрутам, обеспечивающего максимальную прибыль 75
4.1 Постановка задачи оптимизации составления расписания 75
4.2. Формирование параметрического критерия оценки дохода от пассажирских перевозок 77
4.3. Идентификация параметров критерия оценки прибыли пассажирских перевозок при одновременном выезде транспортных средств 80
4.4. Выбор опорного решения задачи определения оптимальных моментов выезда в рейс в линейной постановке задачи 82
4.5. Уточненное субоптимальное решение задачи на базе линейного программирования 84
4.6. Описание численного алгоритма приближенного решения задачи составления расписания 88
4.7. Оценка эффективности предложенного алгоритма с помощью моделирования на эвм 89
Заключение 93
Приложение 94
Список литературы 107
- Цель диссертационной работы, её научная новизна, достоверность и практическая ценность
- Описание алгоритма определения множества допустимых точек траектории проезда с помощью метода вороного (диаграмма вороного)
- Модификация алгоритма дейкстры для задачи многомерной маршрутизации
- Формирование параметрического критерия оценки дохода от пассажирских перевозок
Введение к работе
Актуальность работы. Задача организации маршрутного движения нескольких транспортных средств (ТС) является практически важной для различных видов пассажирского транспорта. В эту задачу входит планирование маршрутов ТС и составление расписания движения, определяемого моментами выхода каждого ТС в рейс. Планирование маршрутов осложняется двумя обстоятельствами - необходимо обеспечить безопасную дистанцию от сооружений городского района, сделав нужное число остановок в заданных пунктах, и кроме того, требуется составить несколько маршрутов одновременного движения транспорта. В настоящее время методы многомерной маршрутизации, в отличие от одномерной задачи коммивояжера, развиты недостаточно. Также не существует точного аналитического решения задачи составления расписаний, тем более необходимо предварительно сформировать критерий эффективности пассажирских перевозок с точки зрения получения максимальной прибыли.
Поэтому тема данной диссертационной работы, посвященная обеим задачам маршрутизации и планирования расписания движения ТС, является актуальной.
Целью данной работы является повышение эффективности планирования движения городского транспорта путем разработки таких численных алгоритмов маршрутизации и составления графика движения ТС, которые обеспечили бы максимальную прибыль.
К числу особенностей решаемых задач относятся:
- необходимость составления многомерных маршрутов для нескольких
ТС, причем в отличие от задачи коммивояжера в некоторых оживленных
остановках необходимо прибытие ТС более, чем один раз;
- при составлении графика движения ТС необходимо учесть
различные статистические данные о скорости накопления очередей
пассажиров на разных остановках;
- начальные и конечные пункты движения для каждого ТС могут не
совпадать друг с другом.
Предлагаемый подход к достижению поставленной цели состоит в поэтапном решения следующих задач:
выбрать с учетом расположения городских сооружений и улиц траектории движения от одной заданной остановки к другой:
решить задачу маршрутизации движения заданного числа ТС так, чтобы пассажиры на каждой остановке была обслужены заданное число раз:
- составить оптимальный график движения ТС путем выбора
оптимальных моментов их выезда в рейс так, чтобы обеспечить максимальную
прибыль.
В данной работе на защиту выносятся следующие основные положения:
Эвристический алгоритм многомерной маршрутизации безопасного движения нескольких ТС при обслуживании заданного множества остановок в городском районе.
Численный алгоритм параметрической оптимизации моментов выхода в рейс нескольких ТС по выбранным маршрутам для обеспечения максимальной прибыли пассажирских перевозок.
Результаты моделирования на ЭВМ, подтверждающие эффективность предложенных алгоритмов.
Научная новизна полученных результатов состоит в следующем.
В алгоритме маршрутизации при оценке времени движения между соседними пунктами потери определяются не через расстояние между ними по прямой, а из условия равноудаленности трассы от окружающих сооружений, при использовании диаграммы Вороного.
Последовательное планирование нескольких маршрутов для разных ТС предложено осуществлять в порядке их предварительного ранжирования, при котором более приоритетным является маршрут априорно наименьшей кривизны с потенциальным обслуживающем максимального числа пассажирских остановок. При этом допускается попадание одной остановки в разные маршруты заданное число раз.
3. При составлении расписания эффективность каждого
маршрута предложено оценить через число остановок, когда
ТС приходит первым, вторым или одновременно с другим ТС,
что позволяет оценить неодинаковые доходы и затем найти
опорную точку в оптимальном выборе моментов выезда ТС в
рейс.
4. При покоординатном поиске численного улучшения
доходности пассажирских перевозок последовательность
оптимизации моментов выезда в рейс определяется с
помощью приоритетов, найденных при использовании метода
линейного программирования.
Практическая ценность работы определяется тем, что
разработанные алгоритмы позволили сформировать компьютерную программу, которая при заданном числе ТС и множестве начальных, промежуточных и конечных пунктов в городском районе автоматически определяет все маршруты и расписание движения по ним в близком к оптимальному режиме. Кроме того, предложенный подход позволяет решать задачи на случай обслуживания некоторых оживленных остановок не одним, а несколькими транспортными средствами.
Достоверность полученных результатов обусловлена, во-первых, использованием научно-обоснованных численных поисковых методов параметрической оптимизации и линейного программирования, и во-вторых, подтверждается результатами моделирования на ЭВМ, показавшими повышение доходности на 20-30% пассажирских перевозок за счет предложенного подхода.
Диссертация состоит из четырех глав, заключения и списка литературы из 62 наименований и содержит 47 рисунка и 3 таблицы. В диссертации делается попытка одновременно рассмотреть процессы планирования работы ТС как во времени, так в пространстве с учетом топологии расположения остановок и сооружений в городском районе. Предложенный подход ориентирован на автоматизацию процессов оптимизации и повышение эффективности обслуживания пассажиров в целом.
Цель диссертационной работы, её научная новизна, достоверность и практическая ценность
Целью данной диссертационной работы является повышение эффективности планирования движения городского транспорта путем разработки таких численных алгоритмов маршрутизации и составления графика движения ТС, которые обеспечили бы максимальную прибыль. К числу особенностей решаемых задач относятся: - необходимость составления многомерных маршрутов для нескольких ТС, причем в отличие от задачи коммивояжера в некоторых оживленных остановках необходимо прибытие ТС более, чем один раз; - при составлении графика движения ТС необходимо учесть различные статистические данные накопления очередей пассажиров на разных остановках; - начальные и конечные пункты движения для каждого ТС не совпадают друг с другом. Предлагаемый подход к достижению поставленной цели состоит в поэтапном решения следующих задач: - выбрать с учетом расположения городских сооружений и улиц траектории движения от одной заданной остановки к другой: - решить задачу маршрутизации движения заданного числа автобусов так, чтобы пассажиры на каждой остановке была обслужены заданное число раз: - составить оптимальный график движения автобусов путем выбора оптимальных моментов их выезда в рейс так, чтобы обеспечить максимальную прибыль.
Научная новизна полученных результатов состоит в следующем. 1. В алгоритме маршрутизации при оценке времени движения между соседними пунктами потери определяются не через расстояние между ними по прямой, а из условия равноудаленности трассы от окружающих сооружений, при использовании диаграммы Вороного. 2. Последовательное планирование нескольких маршрутов для разных ТС предложено осуществлять в порядке их предварительного ранжирования, при котором более приоритетным является маршрут априорно наименьшей кривизны с потенциальным обслуживающем максимального числа пассажирских остановок. При этом допускается попадание одной остановки в разные маршруты заданное число раз. 3. При составлении расписания эффективность каждого маршрута предложено оценить через число остановок, когда ТС приходит первым, вторым или одновременно с другим ТС, что позволяет найти опорную точку в оптимальном выборе моментов выезда ТС в рейс. 4. При покоординатном поиске численного улучшения доходности пассажирских перевозок последовательность оптимизации моментов выезда в рейс определяется с помощью приоритетов, найденных с помощью линейного программирования.
Практическая ценность работы определяется тем, что разработанные алгоритмы позволили сформировать компьютерную программу, которая при заданном числе ТС и множестве начальных, промежуточных и конечных пунктов в городском районе автоматически определяет все маршруты и расписание движения по ним в близком к оптимальному режиме. Кроме того, предложенный подход позволяет решать задачи на случай обслуживания некоторых оживленных остановок не одним, а несколькими транспортными средствами. Достоверность полученных результатов обусловлена, во-первых, использованием научно-обоснованных численных поисковых методов параметрической оптимизации и линейного программирования, и во-вторых, подтверждается результатами моделирования на ЭВМ, показавшими повышение доходности на 20-30% пассажирских перевозок за счет предложенного подхода. Диссертация состоит из четырех глав.
В главе 1 проведен анализ известных методов решения задачи маршрутизации и расписания движения транспортных средств. Показана актуальность работы, сформулирована цель диссертационной работы, её научная новизна, достоверность и практическая ценность. Приведена общая постановка задачи. В главе 2 представлен алгоритм определения траектории движения одного транспортного средства с учетом ограничений при использовании диаграммы Вороного для определения множества возможных точек маршрута транспортного средства. Предложен алгоритм выбора траектории движения транспортного средства между двумя остановками по критерию минимального пути. Проведено моделирование на ЭВМ данного алгоритма на множестве допустимых точек.
Описание алгоритма определения множества допустимых точек траектории проезда с помощью метода вороного (диаграмма вороного)
Даны п точек P,(xj,yj) на плоскости. Рассмотрим разбиение плоскости на п областей Vt (называемых многоугольниками Вороного или ячейками Вороного, иногда — многоугольниками близости, ячейками Дирихле, разбиением Тиссена), где V,- — множество всех точек плоскости, которые находятся ближе к точке Pt, чем ко всем остальным точкам Р : Само разбиение плоскости называется диаграммой Вороного данного набора точек Рк. Здесь p(p,q) — заданная метрика, обычно это стандартная Евклидова метрика: р(р,q) = J(xp -х„)1 + {ур -Уп) , однако ниже будет рассмотрен и случай так называемой манхэттенской метрики. Здесь и далее, если не оговорено иного, будет рассматриваться случай Евклидовой метрики Ячейки Вороного представляют собой выпуклые многоугольники, некоторые являются бесконечными. Точки, принадлежащие согласно определению сразу нескольким ячейкам Вороного, обычно так и относят сразу к нескольким ячейкам (в случае Евклидовой метрики множество таких точек имеет меру нуль; в случае манхэттенской метрики всё несколько сложнее). Такие многоугольники впервые были глубоко изучены русским математиком Вороным (1868-1908 гг.). Свойства Диаграмма Вороного является планарным графом, поэтому она имеет 0(п) вершин и рёбер. Зафиксируем любое i=l....п. Тогда для каждого j = \...n,jФі проведём прямую — серединный перпендикуляр отрезка (PitPj); рассмотрим ту полуплоскость, образуемую этой прямой, в которой лежит точка Р, . Тогда пересечение всех полуплоскостей для каждого у даст ячейку Вороного Р,-. Каждая вершина диаграммы Вороного является центром окружности, проведённой через какие-либо три точки множества Р. Эти окружности существенно используются во многих доказательствах, связанных с диаграммами Вороного. Ячейка Вороного Vt является бесконечной тогда и только тогда, когда точка Pi лежит на границе выпуклой оболочки множества Р&. Рассмотрим граф, двойственный к диаграмме Вороного, т.е. в этом графе вершинами будут точки Рг, а ребро проводится между точками Р,- и Pj, если их ячейки Вороного Vj и Vj имеют общее ребро. Тогда, при условии, что никакие четыре точки не лежат на одной окружности, двойственный к диаграмме Вороного граф является триангуляцией Делоне (обладающей множеством интересных свойств). Диаграмма Вороного представляет собой компактную структуру данных, хранящую всю необходимую информацию для решения множества задач о близости. Нахождение ближайшей точки для каждой. Отметим простой факт: если для точки Р, ближайшей является точка Р,-, то эта точка Р, имеет "своё" ребро в ячейке V,-. Отсюда следует, что, чтобы найти для каждой точки ближайшую к ней, достаточно просмотреть рёбра её ячейки Вороного. Однако каждое ребро принадлежит ровно двум ячейкам, поэтому будет просмотрено ровно два раза, и вследствие линейности числа рёбер мы получаем решение данной задачи за 0(п). Нахождение выпуклой оболочки. Вспомним, что вершина принадлежит выпуклой оболочке тогда и только тогда, когда её ячейка Вороного бесконечна. Тогда найдём в диаграмме Вороного любое бесконечное ребро, и начнём двигаться в каком-либо фиксированном направлении (например, против часовой стрелки) по ячейке, содержащей это ребро, пока не дойдём до следующего бесконечного ребра. Тогда перейдём через это ребро в соседнюю ячейку и продолжим обход. В результате все просмотренные рёбра (кроме бесконечных) будут являться сторонами искомой выпуклой оболочки. Очевидно, время работы алгоритма - 0(п). Нахождение Евклидова минимального остовного дерева. Требуется найти минимальное остовное дерево с вершинами в данных точках Р, соединяющее все эти точки. Если применять стандартные методы теории графов, то, т.к. граф в данном случае имеет 0(п ) рёбер, даже оптимальный алгоритм будет иметь не меньшую асимптотику. Рассмотрим граф, двойственный диаграмме Вороного, т.е. триангуляцию Делоне. Можно показать, что нахождение Евклидова минимального остова эквивалентно построению остова триангуляции Делоне. Действительно, в алгоритме Прима каждый раз ищется кратчайшее ребро между двумя множествами точек; если мы зафиксируем точку одного множества, то ближайшая к ней точка имеет ребро в ячейке Вороного, поэтому в триангуляции Делоне будет присутствовать ребро к ближайшей точке, что и требовалось доказать.
Триангуляция является планарным графом, т.е. имеет линейное число рёбер, поэтому к ней можно применить алгоритм Крускала и получить алгоритм с временем работы 0(п log п). Нахождение наибольшей пустой окружности. Требуется найти окружность наибольшего радиуса, не содержащую внутри никакую из точек Р{ (центр окружности должен лежать внутри выпуклой оболочки точек Pi ). Заметим, что, т.к. функция наибольшего радиуса окружности в данной точке f(x,y) является строго монотонной внутри каждой ячейки Вороного, то она достигает своего максимума в одной из вершин диаграммы Вороного, либо в точке пересечения рёбер диаграммы и выпуклой оболочки (а число таких точек, не более чем в два раза больше числа рёбер диаграммы). Таким образом, остаётся только перебрать указанные точки и для каждой найти ближайшую, т.е. решение за 0(п). Простой алгоритм построения диаграммы Вороного за 0(п4) Диаграммы Вороного — достаточно хорошо изученный объект, и для них получено множество различных алгоритмов, работающих за оптимальную асимптотику 0( п log п), а некоторые из этих алгоритмов даже работают в среднем за 0(п). Однако все эти алгоритмы весьма сложны. Рассмотрим здесь самый простой алгоритм, основанный на приведённом выше свойстве, что каждая ячейка Вороного представляет собой пересечение полуплоскостей. Зафиксируем і. Проведём между точкой Pi и каждой точкой Pj прямую — серединный перпендикуляр, затем пересечём попарно все полученные прямые — получим О(п) точек, и каждую проверим на принадлежность всем «полуплоскостям. В результате за 0(п3) действий мы получим все вершины ячейки Вороного Vt (их уже будет не более п, поэтому мы можем без ухудшения асимптотики отсортировать их по полярному углу), а всего на построение диаграммы Вороного потребуется 0(п4) действий.
Модификация алгоритма дейкстры для задачи многомерной маршрутизации
Классический вариант алгоритма Дейкстры предполагает задание начальной и конечной точки одного маршрута и критерия эффективности этого планирования маршрута. Предлагается рассмотреть использование данного алгоритма для задачи многомерной маршрутизации, которая имеет множество начальных и конечных точек маршрута для различных транспортных средств. При этом транспортные средства однотипны и задача заключается в том, чтобы определить маршруты движения каждого транспортного средства таким образом, чтобы суммарная эффективность выбранных маршрутов движения транспортных средств была оптимальна. Однако при многомерной маршрутизации важно либо правильно распределить пункты назначения между автобусами, чтобы потом решать N одномерных задач, либо угадать порядок планируемых маршрутов, чтобы по остаточному принципу последовательно сокращать список необслуженных пунктов. Возникает вопрос — как это распределение пунктов рационально осуществить и насколько это важно? Чтобы ответить на этот вопрос, обратимся к иллюстрации 4-мерной задачи маршрутизации, представленной нарис. 3.21. На данном рисунке из 14 остановок шесть из них, обведенные кружочком, является оживленными, и их надо обслужить дважды - это пункты 1,3,5,7,10,11 при «посещении» каждого из них двумя автобусами. Попутно заметим, что именно эти 6 остановок требуют составления такого расписания, чтобы автобусы к ним одновременно не прибывали. Первоначальная нумерация транспортных средств произвольная, номер j каждого автобуса обозначен в индексах AJH,AJK начального и конечного пунктов, т.е. у=./,..4. Пример выбора четырех маршрутов движения при обслуживании 14 пассажирских остановок Поэтому, если применить к первому автобусу алгоритм Дейкстры, то будет получен маршрут, показанный пунктирными линиями и проходящий через пассажирские остановки 1-7. Второй и третий маршруты, показанные непрерывными прямыми линиями, проходят соответственно через остановки 1,2,3,10 и 7,6,5,11. Тогда по остаточному принципу непосещенные нужные число раз остановки 8,3,9,11,12,5 должен обслужить четвертый автобус. При этом маршруты первого и четвертого автобуса не привлекательны из-за множества крутых поворотов, при которых теряется скорость и возрастает расход топлива. Чтобы избежать этого недостатка, воспользуемся следующей идеей — мысленно соединим прямой линией каждую пару точек А-н и А-к, окружим эту прямую коридором, и все остановки, которые попали в этот коридор будут главными претендентали на их включение в у-тый маршрут. В этом случае время их посещения будет близко к минимальному за исключением, относящихся к последнему маршруту. В связи с этим возникает идея оценить и сравнить потенциальные возможности каждого маршрута, если предварительно воспользоваться простейшим алгоритмом «ближайшего» соседа (весьма эффективным для расположения остановок в узком коридоре) и априорно оценить длину Lj каждого рейса и число п- попавших в/-тый маршрут остановок. Ясно, что чем больше априорное число п- остановок, тем привлекательнее у -тый маршрут, и его приоритет І?. повышаться. Также стоит включать в первую очередь в общий план тот маршрут, который ближе к прямой линии как более эффективный. Самым простым способом оценить эту эффективность можно через отношение --, где Sj- расстояние по прямой между начальным и конечным пунктами AjH и AjK. Чем ближе отношение -- к единице, тем лучше, т.к. меньше времени и топлива потребуется для поездки. Объединяя показатели п и -jf- в одну формулу, можно предложить J следующую оценку приоритета Rj при предварительном ранжировании ТС: RJ=YHJ (3-6) где Sj = -и , -хАк)2 + (уАн -yAKf - расстояние по прямой между начальным и конечным пунктами, Lj - длина маршрута, найденного алгоритмом «ближайшего» соседа, п - число остановок, попавших в маршрут. Поясним применение формулы (3.6) на примере, иллюстрированном на рис 3.21. Изображенные на рисунке первоначальные маршруты обладают следующими параметрами: Таким образом, на первое место вышли второй и четвертый маршруты, третий маршрут остался на своем месте, а последним оказался первый маршрут. После ранжирования и последующего в нужном порядке планирования рейсов получаются маршруты, показанные на рис 3.21 тремя непрерывными прямыми линиями и одним контуром, которому соответствует движение по кольцу. Полученный ответ не содержат лишних поворотов и может быть принят как удовлетворительный. Аналогичная ситуация возникает и при другой конфигурации расположения остановок, как это, в частности, показано на рис 3.22.
Формирование параметрического критерия оценки дохода от пассажирских перевозок
Рассмотрим сначала формулу оценки получения дохода на каждой остановке. Будем считать, что на /г-ую остановку приходит только один автобус, тогда на этой остановке будет максимальное число пассажиров, ожидавших автобус и доход dh равен d0, когда время ожидания т автобуса велико, т.е. г — оо.
Следуем уточнить, что данное допущение соответствует ситуации, что при значительном времени г ожидания количество пассажиров расти не будет, а будет отдано предпочтение другому транспорту, например, коммерческому.
Количество пассажиров, появившихся после того, как уехал один автобус, будет зависеть от времени т ожидания другого автобуса. В данной работе принята экспоненциальная модель дохода: где а - показатель скорости появления числа пассажиров на остановке, т - время ожидания автобуса пассажирами. Если на остановку приходят несколько автобусов, то формулу (4.1) нужно скорректировать, учтя, что автобусы в общем случае начинают движение в разное время. Время между прибытием / или у -того автобусов на /z-тую остановку таково, что будем считать, что каждый автобус может задержаться на начальной остановке, т.е пусть это время равно т,- или ту . Например, формула дохода на остановке двух автобусов, когда автобусу приехал первым, имеет вид: где rh и rhl -расстояния до h-ой остановки от начала маршрута j-го и і-го автобусов соответственно. Для получения формулы в общем случае введем следующие обозначения: m} - количество станций, куда/-ый автобус приехал позже п - количество станций, кудау -ый автобус приехал первым 1; - количество станций, куда автобусы приходят одновременно, либо интервал между двумя автобусами невелик ( рис. 4.2 ) где К ,К2К3 - коэффициенты достижения различных доходов на
остановках трех типов. Заметим, что время задержки TJ ВХОДИТ В слагаемые формулы (4.3) с разными знаками, т.к. в первом случае выгодно отправляться в рейс позже, а во втором случае раньше других автобусов. Проведем дополнительные упрощение критерия (4.3), поскольку при большом числе ТС учесть в общем виде все попарные значения г1} практически невозможно.
Поэтому примем допущение о том, что интервалы Arv движения между прибытием двух автобусов примерно одинаковы для каждой из трёх ситуаций их появления на остановке. Так, еслиу-ый автобус пришёл первым, когда у- А, допустим, что - = Д, « 2 Д, что соответствуем получению максимального дохода. Если у-тый автобус пришел вторым, т.е -Аи будет получена меньшая прибыль, допустим, что - = -А2 « -д. Если два автобуса пришли одновременно, то учитывал факт, что один из них ничего не получит, примем в среднем, что К3= 5 При этих допущениях формула (4.3) примет вид В дальнейшем потребуются дополнительные упрощения формулы путем представления дохода в виде ограниченного ряда Тейлора. При учете членов второго порядка и при положительных значениях степеней экспонент, стоящих под знаком модуля (интервалы движения А между автобусами больше чем времена г, задержки их выхода в рейс), получим Также понадобится формула оценки дохода при линеаризации выражения (4.4), и при г, = г = г„ = 0, т.е, когда автобусы выходят в рейс одновременно, получим
Последняя формула показывает, что чем больше число остановок т}, куда автобус приходит вторым, и чем меньше число остановок и;, куда он приходит первым, тем позже его выезд в рейс, чтобы накопить на остановках очереди при ту 0. Особую неприятность составляют ситуации в 1} случаях, когда автобусы приходят на остановку одновременно и один их них уходит в рейс пустым. Поэтому желательно «развести» их в разные стороны любым путем, увеличивая \и} I. Приведенных формул достаточно, чтобы провести оптимизацию расписания движения автобусов по сформированному критерию.