УДК 656.02
ПЕТРЕНКО Т.Г., к.т.н., доцент (ДонНУ);
ТИМЧУК О.С., аспирант, старший преподаватель (ДонНУ);
ЕРШОВ А.А., студент (ДонНУ).
Выбор комфортного маршрута между точками на карте города на основе нечеткой информации
Введение
Поиск маршрута для проезда общественным транспортом - задача, которая решается пассажирами ежедневно. На выбор маршрута оказывает влияние множество факторов. Наиболее часто главным критерием является выбор кратчайшего пути (по времени, по расстоянию, по стоимости). Данная задача неоднократно решалась методами динамического программирования, исследования операций, алгоритмами поиска на графах. Решение задачи существенно изменилось с появлением известных сервисов по работе с картами местности - Easy Way, Яндекс Карты, Google Maps. Особенно привлекательными для пассажиров ожидаются мобильные версии - Easy Way Mobile 1.7 [1], Яндекс Карты [2], Google Maps [3]. Высокая информативность сервисов по объектам города (магазинам, театрам, автовокзалам, больницам и т.д.) способствует увеличению спроса на программы навигации. Однако построение маршрута для проезда общественным транспортом или вообще не выполняется сервисами для городов Украины, либо выполняется частично, исходя из критерия кратчайшего по расстоянию пути. Информация о дополнительных факторах, влияющих на выбор пути (например, данные о пробках на дорогах в Яндекс Карты), предоставляется в режиме отображения и не участвует в автоматическом выборе пути.
Наиболее подробную информацию о построении маршрута предоставляет сервис Easy Way. Построение маршрута выполняется по 3-м критериям (оптималь-
ный, дешевый, быстрый), причем каждый из критериев может рассматриваться с уточнением «без пересадок». Информация о каждом выбранном маршруте (обычно предлагаются и все возможные варианты по разным видам общественного транспорта) выводится с указанием цены, расстояния и необходимого времени как на проезд, так и на пешеходный переход. Для наиболее соответствующего выбранным условиям маршрута приводится информация об остановочных пунктах и периодичности движения транспорта. Выбор маршрутов формируется на основе созданной базы данных. Полученные результаты скорее являются справочными и не отражают текущие условия проезда.
Анализ условий поиска маршрута сервисами показывает, что сервисы дают неудовлетворительный результат по следующим причинам:
1. не позволяют учитывать факторы различной природы;
2. не позволяют гибко менять параметры известных факторов;
3. не позволяют решать задачу в реальном времени в случае попытки учесть многообразие факторов и их параметров.
Перечисленные причины приводят к тому, что предложенный сервисами маршрут является в итоге не лучшим.
В данной работе выбор маршрута между выбранными точками на карте выполняется с учетом дополнительных факторов различной природы на основе теории дискретных интервальных нечетких множеств и систем второго типа. Спроектирован и реализован модуль навигации для выбора маршрута проезда общест-
венным транспортом, как часть системы поддержки пассажира в городской среде.
Постановка задачи
Разработать информационную мобильную систему on-line поддержки пассажира при выборе маршрута проезда общественным транспортом из одной точки на карте города в другую. Основным критерием выбора маршрута рассматривать комфортность проезда пассажиром по данному маршруту.
Решение задачи
Анализ подходов к решению задачи выбора маршрута пассажиром позволяет ввести понятие комфортности поездки с точки зрения пассажира. В работе [4] описаны факторы, влияющие на выбор маршрута водителем автомобиля, однако в большинстве систем навигации требования пассажиров сводятся только к выбору кратчайшего пути, а факторы комфортности проезда не рассматриваются. Пассажир может считать поездку комфортной, если выполнены частично или полностью требования к:
1. стоимости проезда;
2. времени, затраченного на поездку;
3. виду и состоянию транспортного средства;
4. типу и состоянию дороги;
5. эстетичности территории, примыкающей к дороге;
6.загруженности дороги транспортными средствами;
7. объему пассажирооборота;
8. безопасности движения;
9. информированности при проезде;
10. провозу багажа;
11. погодным условиям;
12. уровню квалификации водителя транспортного средства;
13. соблюдению требований для людей с ограниченными физическими возможностями.
Обеспечение некоторых требований входит в правила перевозки пассажиров в соответствии с законодательством. Оценка некоторых из перечисленных требований затруднена отсутствием данных. Многие из перечисленных требований (факторов) не могут быть описаны точными значениями по причине невозможности точного описания параметров этих факторов либо субъективности отдельных мнений. Параметры рассмотренных факторов зависят от времени суток, дней недели, праздничных и выходных дней и сезонов года. Многие из факторов взаимосвязаны, причем нелинейно. Использование традиционных подходов к задаче выбора маршрута не позволяет учесть особенности входных и выходных данных этой задачи. В работе [5] предложен подход с использованием нечетких интервальных чисел для описания веса пути между двумя остановками. Такой подход ограничивает решение задачи операциями над нечеткими числами и не позволяет учесть экспертные знания о взаимосвязях между влияющими факторами.
Так как выделенные влияющие факторы обладают значительной неопределенностью, в данной работе предлагается использовать средства теории дискретных интервальных нечетких множеств (Б1Т2Е88) и систем (БтЕЬБв) второго типа.
Пусть на карту города нанесено N остановочных пунктов. Через каждый остановочный пункт проходит определенное количество маршрутов общественного транспорта
^ =(п = = Щп ,
где Жп - набор маршрутов, проходящих через п-й остановочный пункт,
Qn - количество маршрутов, проходящих через п-й остановочный пункт.
Каждый маршрут ^ представляется в виде набора пар
< =((snq,IN е N,
IN = iind (t )\d = 1D,t = l?, (1)
i = й,1 < N,
где s^ - остановочный пункт, через
который проходит маршрут w'n,
I - количество остановочных пунктов на wqn маршруте,
IN - набор числовых значений экспертной оценки факторов, влияющих на комфортность маршрута, проходящего
через остановочный пункт sinq в период суток t,
D - количество факторов, влияющих на комфортность маршрута,
T - количество временных периодов в одних сутках.
Пусть пассажир находится в точке A и ему необходимо попасть в точку B. Рядом с точками A и B находятся остановочные пункты Sa е N и Sb е N соответственно. Через остановочный пункт Sa проходят маршруты Wa , а через остановочный пункт Sb - маршруты Wb .
Пассажир из точки A в точку B может добраться как с помощью прямых маршрутов, так и с пересадками. Пусть P' - это множество прямых маршрутов перемещения из точки A в точку B, а P" -множество маршрутов с пересадками перемещения из точки A в точку B.
P' формируется из набора всех маршрутов
P' = ( wp'),k = 1K, которые удовлетворяют условию
wP" е WA AND wP" е WB :
P' P'
Sa е Wk AND Sb е Wk ,
где К' - количество прямых маршрутов, проходящих через остановочные пункты
и Эв.
Р" формируется из набора таких маршрутов
Р" = ^(уР А = 1Н, к = 1К",
которые удовлетворяют условию
eWлЛNDw%'k еЖв: Эл е лт Эв е урк ,
где К - количество маршрутов с пересадками, проходящих через остановочные пункты Эл и Эв,
Н - количество пересадок.
Пусть Р - это множество всех маршрутов, с помощью которых можно добраться из остановочного пункта Эл в остановочный пункт Эв
Р = Р' и Р", Р = ( Рт),Рт е Р'ОЯрт е Р", т = 1,К + К".
Комфортность каждого маршрута Рт определяется с помощью нечеткой логической модели
Ут (/ )=F (т,и,ю,я), (2)
где Ш - набор четких входных значений (1),
Ь1 - набор входных лингвистических переменных для описания факторов, которые влияют на комфортность маршрута (функции принадлежности термов переменных представлены в виде В1Т2Б88; пример лингвистических переменных представлен в Приложении А),
ЬО - результирующая лингвистическая переменная для описания комфортности маршрута,
Я - набор нечетких правил для нечеткого вывода комфортности маршрута (пример базы правил представлен в Приложении А),
Е - операции нечеткого логического вывода (алгоритм Мамдани).
Из всех маршрутов Р для пассажира выбирается маршрут с максимальным значением комфортности
yres = F* (Ут (t)))
где F - функция выбора комфортного для пассажира маршрута (например, функция поиска маршрута с максимальной комфортностью).
Программная реализация
Программная реализация для выбора комфортного для пассажира маршрута реализована для города Донецка (DIT2FLS "Donetsk Guide") и имеет клиент-серверную архитектуру.
Клиентская часть приложения обеспечивает: ввод данных пользователем; передачу команд серверу; отображение полученной от сервера информации.
Серверная часть приложения обеспечивает: обработку запросов к базе данных, в которой хранится информация о маршрутах общественного транспорта; выполнение операции по поиску пути между двумя точками; нечеткий выбор комфортного маршрута с помощью пакета библиотек поддержки нечетких логических систем второго типа DIT2FLS Package Library [6, 7].
Использование клиент-серверной архитектуры обеспечивает:
1. хранение данных, объем которых значительно превосходить объем встроенной памяти мобильного устройства, на котором установлено клиентское приложение;
2. решение задач с высокой вычислительной сложностью, а именно выбор
маршрута, проходящего через два остановочных пункта;
3. централизованное управление информацией о маршрутах общественного транспорта.
Основные модули клиентской части приложения:
1. модуль сетевого взаимодействия;
2. модуль по работе с картой города;
3. модуль отображения информации о различных объектах города;
4. модуль отображения информации о маршрутах общественного транспорта;
5. модуль настроек приложения.
Основные модули серверной части
приложения:
1. модуль сетевого взаимодействия;
2. модуль выполнения команд;
3. модуль обработки запросов;
4. модуль поиска пути;
5. библиотека по работе с данными формата JSON [8];
6. библиотека по работе с базами данных SQLite [9];
7. библиотека поддержки нечетких логических систем второго типа DIT2FLS Package Library [7].
Команды от клиента к серверу передаются в строковом формате. Результат выполнения команды сервер передает клиенту в виде JSON строки. Пример JSON строки, содержащей информацию о маршруте общественного транспорта, представлен на рис.1.
{"id":<id маршрутам "type_id":<id типа маршрутам 'Чуре":<название типа маршрута>, "питЬег":<номер маршрута>, "komfort":<Koiv]c|DopTi-iocTb маршрута>, "interval":<HHTepBan движения>, "time_begin":<BpeMfl начала работы маршрутам
"time_end":<Bpeivm окончания работы маршрута>}
Рис.1. Представление результата выполнения сервером команды в виде JSON строки.
Для разработки информационной системы использовались Eclipse 4.2 (Juno) SR1 with ADT Plugin, язык программирования Java. Для отображения исходной карты города Донецка и результирующей карты (с указанием выбранного пути) использовался сервис Google Map View (режим отображения - "схема").
Минимальные требования для эксплуатации клиентской части приложения:
1. мобильное устройство на базе ОС Android 2.1 и выше;
2. разрешение экрана мобильного устройства: 320х480 px и выше;
3. центральный процессор мобильного устройства: ARM v6 600 MHz и выше;
4. RAM: от 256 MB;
5. свободное место во внутреннем хранилище мобильного устройства: 10 МБ и выше;
6. доступ в сеть Internet.
Минимальные требования для эксплуатации серверной части приложения:
1. операционная система: Windows XP, Vista, 7, 8; Linux; OS X 10.6 и выше;
2. RAM: 1024 МБ и выше;
3. центральный процессор: 1700 MHz и выше;
4. объем свободной памяти на жестком диске: 30 МБ и выше;
5. JRE 1.7.
Выводы
1. Разработана модель информационной поддержки пассажира при выборе маршрута для проезда общественным транспортом в городе (DIT2FLS "Donetsk Guide"). Выбор маршрута строится на базе анализа факторов, влияющих на комфортность проезда пассажира. Для оценки влияющих факторов в работе предлагается использовать методы теории дискретных интервальных нечетких множеств и систем второго типа.
2. Выполнена программная реализация DIT2FLS "Donetsk Guide" с клиент-серверной архитектурой. Такое программное решение обеспечивает кросс-
платформенность клиентского приложения и увеличивает скорость обработки запросов пассажира за счет вынесения логики работы системы в серверную часть приложения. Архитектура разработанного приложения позволяет подключать его к существующим популярным системам навигации с целью расширения их функциональности.
3. Текущая версия приложения содержит информацию о маршрутах общественного транспорта города Донецка. Реализованы функции отображения списка маршрутов общественного транспорта, поиск комфортного маршрута для пассажира.
Список ссылок
1. Easy Way. [Электронный ресурс]. Режим доступа к ресурсу: http://www.eway.in.ua/ - Дата доступа: 15.03.2013.
2. Яндекс Карты. [Электронный ресурс]. Режим доступа к ресурсу: http://maps.yandex.ua/ - Дата доступа: 15.03.2013.
3. Google Maps. [Электронный ресурс]. Режим доступа к ресурсу: https://maps.google.com/ - Дата доступа: 15.02.2013.
4. Chiaradia A. Emergent route choice behaviour, motorway and trunk road network: the Nantes conurbation // Proceedings of the 6th International Space Syntax Symposium, 2007, istanbul. - pp. 078/01 -078/18.
5. Amit Kumar. A New Algorithm for Solving Shortest Path Problem on a Network with Imprecise Edge Weight. / Amit Kumar, Manjot Kaur // Applications and Applied Mathematics: An International Journal (AAM), 2011. - Vol. 6, No. 2. - pp. 602 -619.
6. Петренко Т.Г. Пакет библиотек и среда поддержки нечётких дискретных интервальных логических систем второго типа / Т.Г. Петренко, О.С. Тимчук // Системы обработки информации. Сборник
научных работ. - 2011. - № 8 (98). - С. 151-156.
7. Cognitive&Uncertainty Research Group. [Электронный ресурс]. Режим доступа: http://dit2fls.com/projects/ — Дата доступа: 03.02.2013.
8. Библиотека google-gson. [Электронный ресурс]. Режим доступа к ресурсу: https://code.google.com/pZgoogle-gson/ -Дата доступа: 15.03.2013.
9. Библиотека SQLite4java. [Электронный ресурс]. Режим доступа к ресурсу: https://code.google.com/p/sqlite4java/ -Дата доступа: 15.03.2013.
Приложение А. Пример
Рассмотрим на примере работу предложенной в данной статье модели в режиме ограниченной функциональности (с целью компактного представления результатов).
Для проведения эксперимента пользователем были выбраны две точки на карте города Донецка. С помощью сервиса Google Map View были получены координаты выбранных точек: (48.004090, 37.798965), (47.958793, 37.775744). Данные координаты соответствуют остановочным пунктам sj -"Донецкий национальный университет" и sB - "ул. Кирова".
В результате, было выбрано 8 маршрутов (77, 73A, 73Б, 54, 37, 25, 17, 5), проходящих через sj и Sß. Для каждого маршрута определяется его комфортность (2).
При выборе комфортного маршрута в примере учитываются два критерия: загруженность дорог и пассажиропоток. Критерии были выбраны как наиболее влияющие на время перемещения пассажира из одной точки в другую общественным транспортом. Большое количество машин на дорогах является причиной пробок. При большом пассажиропотоке время ожидания транспорта со свободным местом в салоне может превышать время, затраченное на поездку (общее время поездки состоит из времени ожидания сво-
бодного транспорта и времени, затраченного непосредственно на саму поездку).
Опишем параметры нечеткой логической модели определения комфортности маршрута (2) (входные лингвистические переменные - "загруженность дороги", "пассажиропоток", результирующая переменная - "комфортность маршрута", база нечетких правил). Входная лингвистическая переменная LI1 описывает загруженность дороги; содержит 3 терма: низкая (low), средняя (medium) и высокая (high) загруженности дороги. LIi определена на универсальном множестве Xi = [0;l], где 1 соответствует полной загруженности дороги, а 0 характеризует отсутствие автотранспорта на дороге (рис.А.1а).
Входная лингвистическая переменная LI2 описывает пассажиропоток; LI2 содержит 3 терма: небольшой (low), средний (medium), большой (high) объемы. LI2 определена на универсальном множестве X2 = [0;1], где 0 соответствует отсутствию людей, а 1 характеризует полную загрузку общественного транспорта (рис.А.1б).
Результирующая лингвистическая переменная LO описывает комфортность маршрута. Переменная содержит три терма: низкая (low), средняя (medium), высокая (high) комфортности. LO определена на универсальном множестве Xres = [0;1]
(рис.А.1в).
Для такого примера база правил нечеткой логической модели R будет состоять из 9 нечетких правил (табл. А.1).
Таблица А.1 База правил определения комфортности маршрута
Термы LI1 Термы LI2
Low Medium High
Low High Medium Medium
Medium Medium Medium Low
High Medium Low Low
На вход нечеткой логической модели подаются четкие экспертные значения факторов, влияющих на комфортность маршрута (хранятся в базе данных), при этом учитывается период времени, в который был сделан запрос.
В данной работе выделено 5 временных периодов в одних сутках (табл. А.2).
В данном примере, пользователь выполнил запрос в период с 15.00 до 19.59, что соответствует 4-му интервалу.
Рис.А.1. Лингвистические переменные нечеткой логической системы определения комфортного маршрута. (а) (б) -входные, (в) - результирующая.
Результаты расчета комфортности каждого найденного маршрута представ -лены в табл. А.3.
Используя полученные результаты, программа выбирает путь с максимальным уровнем комфорта (маршрут № 77, рис. А.2а).
Таблица А.2 Временные периоды суток
Время начала Время окончания
0.00 5.59
6.00 9.59
10.00 14.59
15.00 19.59
20.00 23.59
Сервис Easy Way [1] с включением маршрутов автобусов, троллейбусов и трамваев (настройка: "оптимальный маршрут") порекомендовал воспользоваться маршрутом № 73 А (рис. А.2б).
Сервис Yandex Карты [2] также порекомендовал воспользоваться маршрутом № 73А (рис. А.2в).
Таблица A.3 Комфортность маршрутов (77, 73A, 73Б, 54, 37, 25, 17, 5) в период времени с 15.00 до 19.59
Маршрут in2 Комфортность
77* 0.3 0.4 0.475 (medium)
73А 0.7 0.8 0.2 (low)
25 0.7 0.7 0.1 (low)
17 0.5 0.9 0.05 (low)
54 0.7 0.5 0.35 (medium)
37 0.6 0.6 0.35 (medium)
5 1.0 1.0 0.35 (medium)
73Б 0.9 0.6 0.225 (low)
Различия в результатах можно объяснить тем, что сервисы Easy Way и Yandex при выборе маршрута используют критерий длины маршрута для оценки оптимальности маршрута, а в разработанной модели - загруженность дорог и пассажиропоток. В результате, комфортность маршрута №77 составила 0,475 (medium), а для маршрута №73 а - 0,2 (low).
(а) (б) (в)
Рис. А.2. Отображение найденного маршрута между двумя заданными точками на карте. (а) - с помощью DIT2FLS "Donetsk Guide", (б) - с помощью сервиса Easy Way, (в) -
с помощью сервиса Yandex Карты
Аннотации:
В статье предложена модель поиска маршрута для проезда общественным транспортом с учетом факторов, влияющих на комфортность проезда пассажира. Созданная информационная система предназначена для мобильных устройств, обеспечивая on-line поддержку пассажира при выборе маршрута проезда из одной точки на карте города в другую.
Ключевые слова: маршрут общественного транспорта, комфортность маршрута, дискретная интервальная нечеткая логическая система второго типа.
У статп запропонована модель пошуку маршруту для пройду громадським транспортом з
урахуванням факторiв, що впливають на комфорт-шсть пройду пасажира. Створена шформацшна система призначена для мобшьних пристро!в, за-безпечуючи on-line тдтримку пасажира при вибо-рi маршруту пройду з одше! точки на карп мюта в шшу.
Ключовi слова: маршрут загального транспорту, комфортшсть маршруту, дискретна штер-вальна нечiтка логiчна система другого типу.
This paper presents the model of route choice in urban transport. The model takes into account factors which have influence on travel comfort. The software is designed for mobile devices and provides choice of travel route for passengers in on-line mode.
Keywords: public transport, passenger comfort, discrete interval type-2 fuzzy logic system.