www.volsu.ru
УДК 001.5: 519.6: 656.13 ББК З0в6
ИСПОЛЬЗОВАНИЕ КЛЕТОЧНОГО АВТОМАТА ДЛЯ МОДЕЛИРОВАНИЯ МНОГОПОЛОСНОГО УЛИЧНОГО
ДВИЖЕНИЯ ВОЛГОГРАДА
Марков Роман Валерьевич
Магистрант кафедры экспериментальной математики и компьютерного моделирования,
Волгоградский государственный университет
просп. Университетский, 100, 400062 г. Волгоград, Российская Федерация
Ключевые слова: транспортный поток, автомобильный затор, дорожная полоса, микромодель, клеточный автомат.
Актуальность
Проблема автомобильных пробок на дорогах крупных городов и пригородных трассах как никогда актуальна. С каждым годом машин на дорогах городов становится все больше и больше. При этом и к самим дорогам претензий много: плохое качество, неудобные автомобильные развязки, отсутствие надземных/подземных переходов и объездных дорог для грузовых фур. Идей и путей решения этой проблемы множество. Проблема пробок на дорогах требует решения, чем скорее, тем лучше как для отдельного человека, чье время тратится впустую, так и для экономики страны в целом. Компьютерное моделирование позволяет оценивать эффективность планируемых работ, а также выявлять потенциально проблемные участки для принятия оперативных мер по их устранению. В зарубежных странах достигнуты значительные успехи в разработке и применении современных программных комплексов, помогающих эффективно управлять д" транспортной сетью города. Так как в Вол-^ гограде наблюдается бурный рост числа автомобилей и тяжелая ситуация с пробками, ^ эта задача становится актуальной и для на© шего региона.
Цель работы: создать программное приложение для моделирования многополосного участка дороги.
Основные задачи работы:
а) изучить работы по данной теме, опубликованные в научных изданиях;
б) разработать микромодель дорожного движения на основе клеточного автомата;
в) реализовать разработанную модель в виде компьютерной программы;
г) провести ряд экспериментов с приложением, иллюстрируя различные процессы, происходящие на конкретном участке автомагистрали Волгограда.
Новизна и достоверность предложенных методов решения
Существует целый ряд математических моделей транспортных потоков [2; 3; 5; 6]. В 1992 г. впервые было предложено провести микромоделирование на участке автодороги при помощи клеточных автоматов. Клеточные автоматы являются перспективным направлением для научных исследований. Поэтому различные модели на основе клеточных автоматов в настоящий момент активно развиваются [1; 4].
В опубликованных к настоящему времени моделях дорожного движения на основе
клеточных автоматов используется множество из двух состояний для каждой конкретной клетки [7; 8]. В данной работе в модель добавлено третье состояние, позволяющее моделировать ситуации, более близкие к тому, что жители крупных российских городов ежедневно могут наблюдать на своих улицах. Наличие в модели этого состояния дает возможность изучать такие вопросы, как запрещение парковки в правом ряду автомагистрали, или исследовать зависимость средней скорости на участке автострады от вероятности ДТП на нем.
Практическая и научная значимость
Полученные результаты имеют теоретическое значение, заполняя пробел в теории моделирования транспортных потоков, а разработанное приложение помогает решить множество проблем с транспортным потоком на практике.
Положения, выносимые на защиту:
1. Разработана микромодель дорожного движения на основе клеточного автомата, которая близка к реальности Волгограда и более адекватно описывает ситуацию на наших автодорогах, чем существующие модели.
2. По описанию математической модели разработана и реализована программа, иллюстрирующая процессы, происходящие на автомагистрали.
3. При помощи разработанной программы проведены эксперименты, которые позволили описать эффекты, происходящие при различных ситуациях на дорогах Волгограда.
Структура и объем диссертации
Диссертация состоит из введения, трех глав, заключения и списка цитируемой литературы, изложена на 64 страницах (62 страницы основного текста и 2 страницы литературы).
Краткое содержание работы
Во введении описаны актуальность, цель и задачи работы, научная новизна, приведены сведения об объеме и структуре работы. Первая глава - обзор существующих математических моделей транспортных потоков - состоит из трех разделов. В первых двух разделах приводятся примеры макромоделирования и микромоделирования соответственно, в
третьем разделе обосновывается выбор типа модели для последующей ее разработки и программной реализации.
Вторая глава - модель многополосного участка дороги - состоит из десяти разделов. В этой главе подробно описывается разработанная модель: ее математические аспекты, состояния, динамика и функционалы.
Третья глава посвящена программной реализации разработанной модели и проведению экспериментов, которые позволяют и на качественном, и на количественном уровне описать эффекты, которые происходят на дорогах Волгограда, например, при:
- увеличении концентрации автомобилей на дороге;
- увеличении числа припаркованных в правом ряду автомобилей;
- изменении вероятности попадания автомобиля в ДТП.
В заключении приводятся результаты и выводы по проделанной работе. Ясны и направления дальнейших исследований в этой области. Эти исследования имеет смысл проводить и в рамках текущей модели, и в направлении изменения модели для более корректного описания конкретных эффектов.
Для построения модели многополосного участка проезжей части предлагается использовать двумерный вероятностный клеточный автомат (см. рисунок).
При моделировании дорожного движения с помощью клеточных автоматов в качестве модели дорожного полотна используется прямоугольная сетка размера т х п. При этом в определенные моменты времени каждая из клеток сетки может находиться в одном из состояний, которые входят в определение конкретного клеточного автомата. Математически описать каждую клетку в данной модели можно вектором из четырех переменных: ((у, х), 5, 0, где:
у - целое число, которое может принимать значение от 1 до т, описывает номер конкретной полосы автомагистрали;
х - целое число, которое может принимать значение от 1 до п, описывает текущую координату клетки вдоль направления автомобильного движения;
5 - описывает состояние конкретной клетки в клеточном автомате;
(1,1) (1,п)
(у >х)
1п,1; (п.п)
X
Схема разметки дорожного полотна
t - описывает конкретный момент времени с начала моделирования.
Данная схема разметки дорожного полотна в виде прямоугольной сетки проиллюстрирована на рисунке.
В предлагаемой модели множество допустимых состояний для каждой клетки автомата в конкретный момент времени представлено тремя следующими состояниями:
0 - участок дорожного полотна, соответствующий данной клетке, свободен; если слева от этой клетки присутствует автомобиль, то он может оказаться в данной клетке в один из следующих моментов времени, и клетка перейдет из состояния 0 в состояние 1;
1 - участок дорожного полотна, соответствующий данной клетке, занят автомобилем, который перемещается по автомагистрали. Это может быть либо движущийся автомобиль, в таком случае в следующий момент времени он переместится в одну из более правых клеток, либо это может быть автомобиль, который стоит перед светофором или в пробке с включенным двигателем, и который готов в любой момент поехать;
2 - участок дорожного полотна, соответствующий данной клетке, занят и недоступен для проезда по нему движущимися автомобилями. Многие клетки в крайнем правом ряду могут находиться в этом состоянии, что физически соответствует припаркованным автомобилям. Кроме того, некоторые клетки во втором справа ряду также могут находиться в таком состоянии, символизируя автомобили, припаркованные во втором ряду с включенным сигналом аварийной сигнализации. Возможны случаи, когда в таком состоянии находятся клетки и в более левых рядах - либо это препятствие на дороге, либо два столкнувшихся друг с другом автомо-
биля, которые ожидают приезда сотрудников ГАИ для оформления ДТП.
Существует несколько способов описать состояние клеточного автомата в рамках данной модели в любой конкретный момент времени t. При основном способе записи состояния автомата будем считать клеточный автомат совокупностью его клеток - совокупностью из т х п векторов вида ((у, х), 5, Если считать компоненту 5 двумерным массивом состояний клеток автомата, то клеточный автомат можно описать структурой вида А: 5[т х п]). Именно в таком виде автомат разумно хранить в памяти компьютера при реализации данной математической модели.
Время в нашей модели дискретно и измеряется в количестве шагов (итераций), в течение каждого из которых автомат изменяет свое состояние. В начальный момент времени отсчет количества шагов t = 0, в следующий момент времени, когда автомат изменяет свое состояние, величина t становится равна единице и т. д. Пусть в момент времени t клеточный автомат, моделирующий дорожное движение, находится в состоянии А: (^ 5[т х п]). Тогда при переходе к моменту времени t + 1 происходит изменение матрицы состояний дорожного полотна в соответствии с правилами перехода, которые задают конфигурацию клеточного автомата, а сам клеточный автомат в этот момент времени описывается уже так: А: ^ + 1, 5'[т х п]), где 5'[т х п] - это измененная матрица состояний дорожного полотна. Будем обозначать функцию, которая преобразует набор из т х п элементов дискретного пространства [0.2] в другой набор т х п элементов этого пространства в соответствии с правилами перехода, заданными конфигурацией клеточного автома-
та, как функцию F: 5[т х п] 5'[т х п]. Можно предположить, что в результате последовательного применения вероятностной функции F к начальному состоянию автомата 5[т х п] должен существовать шаг ¿0, начиная с которого значения основных функционалов модели либо сходятся к некоторому значению, либо начинают образовывать последовательность, которая с точностью до вероятностного разброса сколь угодно близко будет сходиться к некоторой последовательности-аттрактору.
Из приведенной гипотезы следует, что с момента начала итерирования функции F, весь процесс последовательного изменения состояний автомата можно разбить на два этапа:
1. Этап становления дорожного движения: 0 < ^ < ¿о. Этап, во время которого характер дорожного движения изменяется - это может быть, например, этап образования пробки в силу постоянно увеличивающегося числа машин, либо же наоборот, этап ее рассасывания.
2. Этап устойчивого дорожного движения: ^ >¿0. Не важно, пробка ли это, равномерное движение, или же движение волнами, важно, что модель способна дать адекватное описание того, что примерно будет происходить на автодороге, для любого I, сколь угодно сильно отличающегося от ¿0 в большую сторону.
Для описания функции F, которая изменяет матрицу состояний дорожного полотна, достаточно ограничиться рассмотрением изменений конфигурации движущихся автомобилей. Приведем иерархию таких изменений конфигурации в модели:
- появление новых движущихся автомобилей в левом столбце прямоугольной сетки;
- изменение уже движущихся автомобилей:
- переход из состояния 1 в состояние 2;
- переход в такое состояние в качестве жертвы ДТП;
- переход в такое состояние в качестве виновника ДТП, с инициированием такого перехода у жертвы;
- спонтанный переход в состояние 2 (двигатель сломался или водитель решил припарковаться);
- продолжение работы с включенным двигателем.
Пусть функция f определяет изменение конкретного движущегося автомобиля. В качестве аргументов эта функция принимает кортеж из вектора состояний нескольких соседних клеток, плюс бит «жертва ДТП», который мог быть назначен данному автомобилю одним из обработанных ранее, которые на дорожном полотне расположены слева от данного автомобиля. В нашей математической модели предлагается включить в вектор состояний соседних клеток состояния только тех клеток, которые находятся впереди по ходу движения (то есть слева) от данной клетки. Для клетки с координатами (у, x) это будут три соседних клетки с координатами (у - 1, x + 1), (y, x + 1) и (у + 1, x + 1). Каждая из этих клеток может находиться или в одном из трех состояний 0, 1 или 2, или же в псевдосостоянии -1. Псевдосостояние -1 вводится для обозначения участков по краям от дороги для корректного задания граничных условий. Таким образом, множество возможных аргументов функции f представляет собой четырехмерное дискретное пространство вида [-1..2, -1..2, -1..2, 0..1]. Для каждой из возможных конфигураций функция fзадается при помощи списка из k (k > 1) кортежей, состоящих из четырех элементов (P sj, cell., crash. ), i = 1..k. Этот список должен удовлетворять условию SUM( P | i = 1..k) = 1, которое определяет корректность задания вероятностных правил перехода.
Рассмотрим элементы кортежей из этого списка:
P - число от 0 до 1 (включительно) - определяет вероятность срабатывания именно правила i при вызове функцииf
sj - 1 или 2 - определяет состояние, в котором оказывается автомобиль при условии срабатывания правила i во время вызова функции f;
cell. - 0, 1, 2 или 3 - определяет номер клетки, в которой автомобиль оказывается после срабатывания правила i:
• cell = 0: автомобиль остается в текущей клетке;
• cell= 1: автомобиль в движении перестраивается в левую полосу, то есть оказывается в соседней клетке справа сверху;
• celli= 2: автомобиль движется вперед, то есть оказывается в соседней клетке справа сверху;
• cell.= 3: автомобиль в движении перестраивается в правую полосу, то есть оказывается в соседней клетке справа снизу;
crash. - 0, 1, 2 или 3 - определяет номер клетки в состоянии 1, для которой данный автомобиль стал виновником ДТП:
• crash. = 0: данный автомобиль спокойно продолжает движение - возвращается всегда, когда s't = 1, и довольно часто даже когда s't = 2;
• crash = 1: данный автомобиль стал виновником ДТП для автомобиля спереди в левой полосе;
• crash. = 2: автомобиль стал виновником ДТП для автомобиля спереди;
• crash = 3: данный автомобиль стал виновником ДТП для автомобиля спереди в правой полосе.
Таким образом, можно формально определить функцию F, задающую преобразование матрицы состояния дорожного полотна s[m х n] ^ s'[m х n] на каждом шаге прогона модели.
Конечной целью математического моделирования дорожного движения является выявление и исследование различных зависимостей и факторов, влияющих на качество движения. Наиболее просто охарактеризовать качество движения можно при помощи ряда важнейших цифр, описывающих модель - функционалов от модели.
Такие функционалы бывают двух типов: статические и динамические. Статические функционалы зависят только от матрицы состояния клеточного автомата s[m х n] в текущий момент времени, и не учитывают изменение дорожной ситуации с увеличением числа шагов. Важнейшие из статических функционалов:
cars = COUNTS | Sy,x = 1): этот функционал описывает число движущихся автомобилей в модели в конкретный момент времени;
cells = COUNT(S | Sy,x < 1): показывает, сколько клеток автомагистрали открыты для движения;
d = cars/cells: показывает среднюю плотность автомобилей на открытых для движения участках;
park = COUNT(S | Smx = 2) / n: описывает долю припаркованных в крайнем правом ряду автомобилей;
stay = COUNT(S | S^ = 1; S,x+1= 1) / cars: показывает долю машин, которые находятся в состоянии плотного движения.
В то же время динамические функционалы описывают, каким образом состояние клеточного автомата в модели изменяется. Условно можно разбить все динамические функционалы на три типа:
1. Те из них, которые описывают изменение дорожной картины за один шаг, например, средняя мгновенная скорость.
2. Тренды, которые описывают изменение дорожной ситуации на конкретном отрезке времени, например, среднее ускорение за последние k шагов.
3. Ключевые моменты времени, такие как момент стабилизации дорожной ситуации t0.
СПИСОК ЛИТЕРА ТУРЫ
1. Астафьев, Г. Б. Клеточные автоматы / Г. Б. Астафьев, А. А. Корновский, А. Е. Храмов. -Саратов : Колледж, 2003. - 24 с.
2. Гасников, А. В. Введение в математическое моделирование транспортных потоков / А. В. Гасников, С. Л. Кленов. - М. : МФТИ, 2010.- 362 с.
3. Bellomo, N. On the mathematical theory of vehicular traffic flow. I. Fluid dynamic and kinetic modelling / N. Bellomo, V. Coscia, M. Delitala // Math. Mod. Meth. App. Sc. - 2002. - Vol. 12, № 12.-P. 1801-1843.
4. Nagel, K. A cellular automaton model for freeway traffic / K. Nagel, M. Schreckenberg // J. Physique I France. - 1992. - № 2. - P. 2221-2229.
5. Nesterov, Yu. Stationary dynamic solutions in congested transportation networks: summary and perspectives / Yu. Nesterov, A. de Palma // Networks and Spatial Economics. - 2003. -№ 3. - P. 371-395.
6. Nesterov, Yu. Primal-dual subgradient methods for convex problems / Yu. Nesterov // Math. Program. Ser. B. - 2009. - № 120. - P. 221-259.
7. Schadschneider, A. Cellular automation models and traffic flow / A. Schadschneider, M. Schreckenberg // J. Phys. A: Math. Gen. - 1993. -№ 26. - P. 679-683.
8. Discrete stochastic models for traffic flow / M. Schreckenberg, A. Schadschneider, K. Nagel, N. Ito // Physical Review E (Statistical Physics, Plasmas, Fluids, and Related Interdisciplinary Topics). - 1995. -Vol. 51, № 4. - P. 2939-2949.
CELLULAR AUTOMATA FOR MODELLING MULTI-LANE ROADS IN VOLGOGRAD
Markov Roman Valerievich
Master Student, Department of Experimental Mathematics and Computer Sciences,
Volgograd State University
Prosp. Universitetsky, 100, 400062 Volgograd, Russian Federation
Key words: traffic flow, traffic jam, traffic lane, micro model, cellular automaton.