Исследование методов моделирования транспортных потоков на микроуровне и реализация имитатора транспортных потоков в среде AnyLogic, страница 2

üВозможность исследования моделей относительно дополнительных характеристик

üВозможность исследования моделей при наличии других объектов в транспортной сети

üСбор статистики для исследования и проведения сравнительного анализа моделей

Математическая модель Видеманна

(1/2)

ü Модель описывается с помощью ускорения объекта следующего за лидером

Bmax: Максимальное ускорение для небольших ТС в режиме свободного вождения

B(I): Кинематический расчѐт торможения для подвижного ТС процесс приближения

Математическая модель Видеманна

(2/2)

ü Поведение и реакция водителя определяется порогами и расстоянием до лидера

SDV: Порог осознания разницы скорости на большом расстоянии SDX: Порог осознания, что расстояние увеличивается

CLDV: Порог осознания маленькой разницы в скорости на малом расстоянии

OPDV: Порог осознания маленькой разницы в скоростях на малом уменьшающемся расстоянии

AX: Желаемое расстояние для неподвижного транспортного средства

Математическая модель следования за лидером Гиппса


üМодель описывается с помощью ускорения объекта следующего за лидером

üПоведение и реакция водителя базируется на соблюдении безопасного расстояния

: скорость свободной модели Гиппса

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

: желаемое безопасное расстояние до лидера

Математическая модель Гиппса смены маршрута

ü Модель основывается на расчѐте трѐх зон до поворота (AIMSUN)

DistanceZonen forvehiclevinsection s(inmeters) 

DistanceZonen(inseconds)*Vallowed,v *CoefficientV;

Реализованные возможности имитатора транспортных потоков (1/3)

•  Позволяет задавать транспортную сеть разной конфигурации

•  Определяет расположение дорожных знаков

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

•  Поддерживает математические модели следования за лидером Видеманна и Гиппса

Реализованные возможности имитатора транспортных потоков (2/3)

•  Позволяет задавать параметры для 3-х видов автомобилей: легковые, средние и грузовые

•  Позволяет задавать процентное отношение видов автомобилей в сети

•  Позволяет описывать маршруты

•  Позволяет управлять параметрами встроенных моделей в процессе симуляции

Реализованные возможности имитатора транспортных потоков (3/3)

•  Позволяет настроить сбор статистики и отображает еѐ в процессе работы модели

•  Поддерживает модель смены полосы Гиппса

•  Поддерживает расчѐт зон Гиппса относительно активного объекта

•  Позволяет исследовать модели на изменение внешних факторов

Алгоритмы, встроенные в имитатор

ü Алгоритм смены полосы

ü Алгоритм выбора маршрута

ü Алгоритм движения по перекрѐстку без знаков

ü Алгоритм движения по перекрѐстку со знаками главных дорог

ü Алгоритм съезда со второстепенной полосы

ü Алгоритм съезда на второстепенную полосы

ü Алгоритм выезда на главную дорогу

ü Алгоритм взаимодействия с окружающими объектами

Перечень некоторых классов

•  Auto: поведение водителя

•  NavigatSystem: информация об объектах

•  RoadSystem: информация о транспортной сети

•  Road: транспортная сеть

•  Routes, ChangeRoute, SecondR, MainR: классы для задания возможных маршрутов

•  Stat, StatDB, StatPoint: классы сбора статистики

•  Traffic_Generator: классы для генерации потока

•  Zoom: класс задания масштаба

•  Network: класс основных параметров модели

cd Class Model

Диаграмма реализованныStat х классов cd Class Model

MainR+ EndPoint:  Stat_Point


cd Class Model

CarData

+ xs:  double

+ ys:  double                 +

AutoData                         + xe:  double                +

+ ye:  double  + + xs:  double         SecondR+ ts:  Auto  +

++  ys:  doublexe:  double + road:  Road++  v:  doublesize:  double           +

+ left:  Road + ye:  double

+ right:  Road + a:  Auto

+ Network:  Network + r:  Road

+ X:  double

+ in:  integer

+ start_point:  double + v:  double

+ Y:  double

+ size:  double

+ RS:  RoadSystem

+ saveInDB() : void

+ returnRoute() : route Anylogic:Message

Stat_Info                                             Class

+ A_av:  double

+ V_av:  double

+ D_av:  double

crossroad_routes

+ route:  Road

+ direct:  String

RoadData

+ RPointer:  Road

+ RName:  String

+ road:  Road+ StartPoint:  Stat_Point + SourceRoad:  Road+ Timeout:  double

+ Network:  Network

+ Main:  boolean+ Network:  Networkroutesblocks    CrossObject

+ start_point:  int+ StatDB:  Stat_DB route+ RS:  RoadSystem+ Point1:  Point+ roudb:  Vector + road1_name:  string

+ sroad:  Road            + Network:  Network

left:  Road+ saveInDB() : void+ Point2:  Point+ x:  double + road2_name:  string