НАУЧНО-ТЕХНИЧЕСКИЙ ВЕСТНИК ИНФОРМАЦИОННЫХ ТЕХНОЛОГИИ, МЕХАНИКИ И ОПТИКИ май—июнь 2019 Том 19 № 3 ISSN 2226-1494 http://ntv.itmo.ru/
SCIENTIFIC AND TECHNICAL JOURNAL OF INFORMATION TECHNOLOGIES, MECHANICS AND OPTCS May—June 2019 Vol. 19 No 3 ISSN 2226-1494 http://ntv.itmo.ru/en/
ИНШОРМАЦИОННЫХ ТЕХНОЛОГИЙ, МЕХАНИКИ И ОПТИКИ
УДК 004.8 doi: 10.17586/2226-1494-2019-19-3-499-507
ИНТЕЛЛЕКТУАЛЬНАЯ СИСТЕМА ПОМОЩИ ТУРИСТУ: СЕРВИС-ОРИЕНТИРОВАННАЯ АРХИТЕКТУРА И РЕАЛИЗАЦИЯ
С.А. Михайлов^
аУниверситет ИТМО, Санкт-Петербург, 197101, Российская Федерация
ьСанкт-Петербургский институт информатики и автоматизации Российской академии наук (СПИИРАН), Санкт-Петербург, 199178, Российская Федерация
Адрес для переписки: sergei.mikhailov@iias.spb.su Информация о статье
Поступила в редакцию 05.03.19, принята к печати 12.04.19 Язык статьи — русский
Ссылка для цитирования: Михайлов С.А. Интеллектуальная система помощи туристу: сервис-ориентированная архитектура и реализация // Научно-технический вестник информационных технологий, механики и оптики. 2019. Т. 19. № 3. С. 499-507. doi: 10.17586/2226-1494-2019-19-3-499-507
Аннотация
Предмет исследования. Выполнено исследование в области поддержки туризма с применением современных информационных технологий. Предметом исследования является интеллектуальная система помощи туристу. Проведен анализ существующих систем поддержки туриста и представлены их достоинства и недостатки. Разработана архитектура системы и представлены детали ее реализации. Был разработан способ генерации туристических оценок для достопримечательностей региона, на базе которых автор провел эксперименты. Метод. Для проведения анализа систем поддержки туриста используется метод описания и сравнительного анализа соответствующих систем. Для создания рекомендаций по посещению достопримечательностей используются методы машинного обучения. Для построения маршрутов среди достопримечательностей используются методы теории графов. Основные результаты. Выделены достоинства и недостатки существующих туристических систем поддержки туриста. Сформулирована сервис-ориентированная архитектура предлагаемой интеллектуальной системы помощи туристу. Описан способ генерации информации о туристическом регионе на основе открытых специализированных источников. Выполнены эксперименты для оценки работы системы помощи туристу. Практическая значимость. Применение результатов исследования позволит разработать интеллектуальную систему помощи туристу, которая удовлетворяет современным требованиям и превосходит существующие аналоги. Ключевые слова
информационная система, туризм, контекст, сервисы, рекомендующие системы Благодарности
Представленные результаты исследований являются частью проектов № 18-37-00337 и № 17-29-03284, финансируемых Российским фондом фундаментальных исследований, а также бюджетной темой № 0073-2019-0005.
doi: 10.17586/2226-1494-2019-19-3-499-507
INTELLIGENT TOURIST ASSISTANCE SYSTEM: SERVICE-ORIENTED ARCHITECTURE AND IMPLEMENTATION
S.A. Mikhailovab
aITMO University, Saint Petersburg, 197101, Russian Federation
bSt. Petersburg Institute for Informatics and Automation of the Russian Academy of Sciences (SPIIRAS), Saint Petersburg, 199178, Russian Federation
Corresponding author: sergei.mikhailov@iias.spb.su Article info
Received 05.03.19, accepted 12.04.19 Article in Russian
For citation: Mikhailov S.A. Intelligent tourist assistance system: service-oriented architecture and implementation. Scientific and Technical Journal of Information Technologies, Mechanics and Optics, 2019, vol. 19, no. 3, pp. 499-507 (in Russian). doi: 10.17586/2226-1494-2019-19-3-499-507
Abstract
Subject of Research. The paper presents research of the tourism support systems performed with modern information technologies. The subject of research is the intelligent tourist assistance system. The analysis of the existing tourist support
systems is carried out and their advantages and disadvantages are given. The system architecture and implementation details are developed. A generation method for tourist attraction ratings is developed and experiments are carried out. Method. The method of description and comparative analysis of relevant systems was used for tourist support systems analysis. Machine learning methods were used to create recommendations for sightseeing. The methods of graph theory were used to build routes for places of interest visiting. Main Results. The advantages and disadvantages of the existing tourist support systems have been highlighted. The service-oriented architecture of the proposed intelligent tourist assistance system has been formulated. An attraction information generation method for the specific region based on the open specialized sources has been described. Experiments have been performed aimed at the work evaluation of the tourist assistance system. Practical Relevance. Application of the research results provides for the development of an intelligent tourist assistance system that meets modern requirements and surpasses the existing analogues. Keywords
information system, tourism, context, services, recommending system Acknowledgements
The presented results are part of the research carried out within the project funded by grants No. 18-37-00337, 17-29-03284 of the Russian Foundation for Basic Research. The work was partially supported by the Russian State Research No. 0073-2019-0005.
Введение
Согласно данным Всемирной туристической организации при ООН UNWTO1, общее количество международных туристических поездок увеличилось с 25 млн в 1950 году до 674 млн в 2000 году и до 1235 млн в 2016 году. Доходы от международного туризма увеличились с 2 млрд долларов в 1950 году до 495 млрд долларов в 2000 году и до 1220 млрд долларов в 2016 году. Ожидается, что количество международных путешествий увеличится на 3,3 % в год в период между 2010 и 2030 годами и достигнут 1,8 млрд. Туристическая индустрия начала активно использовать интернет-технологии начиная с середины 1990-х годов. На текущий момент времени планирование туристических путешествий и поддержка принятий решений туриста является объектом значительного научного интереса [1, 2].
За последние десять лет наблюдается взрывной рост использования мобильных технологий среди туристов. Системы электронного туризма предоставляют хорошую возможность для мобильных услуг, которые помогают туристам, предлагая рекомендации, основанные на их предпочтениях и контексте [3]. С другой стороны, производители автомобилей постоянно совершенствуют встроенные мультимедийные системы, которые сделали большой шаг вперед в развитии за последнее время. Данные системы превратились из простых аудиоплееров в сложные решения, называемые «информационно-развлекательные системы» («infotainment systems»). Такие информационно-развлекательные системы обеспечивают не только интеграцию и связь со смартфонами, но и обмен информацией с различными датчиками транспортных средств и представление информации через автомобильный экран (визуальная информация) или мультимедийную (аудио/видео информация).
Существующие туристические системы в недостаточном объеме используют контекстную информацию, которая может улучшить качество предлагаемых персонифицированных маршрутов. Информация о регионе, в котором находится турист, как правило, берется из социальных сетей, что может приводить к проблемам валидации данных, так как полученная информация не сформирована экспертами. Также стоит отметить, что рассмотренные системы также не описывают взаимодействие внутренних сервисов в рамках онтологий, что исключает возможность автоматического взаимодействия между сервисами системы и сторонними сервисами. Представленные выше недостатки могут помешать получению туристом положительного опыта при использовании туристических систем. Предлагаемая туристическая система планирования маршрутов является сервисно-ориентированной. Система предоставляет туристу рекомендованные для него/нее достопримечательности, мультимодальную информацию о них, а также маршрут посещения. Туристическая система использует контекстно-ориентированный подход для составления маршрута. Контекстная информация о туристе и ситуации в городе задается согласно созданной онтологии [4]. Система может хранить информацию о регионе (список достопримечательностей, мультимедийная информация и т. д.) в базе данных и предоставлять ее туристу для последующей автономной работы на смартфоне. Информация о регионе автоматически создается на основе данных из различных специализированных открытых источников. Для построения маршрута посещения достопримечательностей используется теория графов.
Интеллектуальная система помощи туристу формирует маршрут на основе анализа персонального расписания и основана на ранее разработанном персонализированном туристическом сервисе (TAIS) [5]. В отличие от TAIS предложенная система:
— работает с информацией о регионе без использования интернет-соединения, что позволяет оперативно получать информацию о достопримечательностях;
— туристический маршрут генерируется на основе предпочтений, сохраненных в профиле туриста, ситуации в регионе и его возможном развитии (например, можно легко предсказать регулярные пробки
1 http://www.e-unwto.org/doi/pdf/10.18111/9789284419029
в часы пик) и доступной информации о достопримечательностях (данный набор показателей позволяет создавать маршрут, который лучше соответствует ожиданиям туриста);
— турист может использовать свои персональные мобильные электронные устройства во время следования по маршруту для получения текстовой, аудио и видео информации, которая синхронизируется с местоположением транспортного средства, его скоростью и ориентацией;
— во время следования по маршруту система генерирует проактивные рекомендации, которые формируются на основе информации о местоположении туриста и достопримечательности, а также расчетного времени прибытия к достопримечательности.
Обзор литературы
Статья [6] описывает рекомендующую систему для туристов, которые путешествуют на своем собственном автомобиле. Система может работать при составлении маршрута c данными, которые предоставляют системы общения различных транспортных средств (Vehicle to vehicle communication system, V2VCS). Предполагается, что водитель в автомобиле может получать от окружающих его транспортных средств данные в реальном времени о дорожном движении вокруг него. Для подбора маршрута используется генетический алгоритм, который использует для работы предпочтения пользователей, данные о дорожном движении и оценки о построенных маршрутах. Разрабатываемая авторами система состоит из трех основных модулей. Модуль сбора данных коллекционирует установки пользователей к туристическому туру и текущие данные о дорожной ситуации через V2VCS. Модуль оценивания маршрута подбирает маршруты на основе входных параметров, а потом выставляет к ним оценки, которые могут охарактеризовать полезность данных маршрутов. Модель составления маршрута пытается оптимизировать предложенные маршруты.
Авторы статьи [7] предлагают рекомендующую туристическую систему, в которой классификация Points of Interests (POI) производится на основе возможных ограничений пользователей с точки зрения здоровья, а также с точки зрения эмоционального состояния туриста. Саму рекомендующую систему можно описать, как гибридную, так как применяются различные техники для оценивания достопримечательностей и получения новых знаний. Сами рекомендации строятся на возможности постижения туристом POI (например, лицам с ограниченными возможностями по перемещению не стоит предлагать), типу и тэгам POI, эмоциональному состоянию туриста и похожести предпочтений туриста на предпочтения, схожие с ним, пользователей системы.
В статье [8] представлена рекомендующая платформа POST-VIA 360, целью которой является удерживание туриста после первого использования системы. Система предназначена для сбора данных о первоначальном посещении и дальнейшего анализа полученной информации. В результате платформа предлагает соответствующие рекомендации, основанные на системах определения местоположения. Также для создания рекомендаций используется система, основанная на концепте искусственного иммунитета (Artificial immune recommender system). Данные системы являются распределенными и адаптивными и используют модели и принципы, которые схожи с иммунной системой человека.
Авторы статьи [9] предлагают подход к персонализированному созданию туристических маршрутов, основываясь на гетерогенных предпочтениях групп пользователей (семьи, друзей и т. д.). Проблему оптимизации маршрута авторы решают эвристически, путем использования муравьиного алгоритма и дифференциальной эволюции с учетом оптимальности решения по Парето. При построении маршрута алгоритм учитывает временные ограничения на работу достопримечательностей и предпочтения групп пользователей.
Статья [10] описывает туристическую систему SigTur/E-Destination, которая может предоставлять персонализированные рекомендации туристам. Система учитывает множество различных видов данных: демографическая информация, мотивы путешествий, действия пользователя в системе, рейтинги, предоставленные пользователем, мнения пользователей со схожими демографическими характеристиками или схожими вкусами. Пользователь и его возможные действия в системе записаны в виде онтологии.
В работе [11] авторы представляют систему PlanTour, которая создает персонализированные туристические маршруты, используя информацию, собранную из социальных сетей путешественников MINUBE1. Система использует подход автоматизированного планирования для создания многодневного плана с наиболее интересными достопримечательностями посещаемого города/региона. Разработанная система собирает информацию о пользователях и точках интереса от MINUBE, группирует эти точки, используя методы кластеризации, чтобы разделить проблему на подзадачи. После этих шагов система использует независимый от туристической зоны автоматический планировщик, который находит туристические планы. В отличие от других систем туристических рекомендаций планировщик PlanTour может организовать потенциальные достопримечательности с учетом ожидаемого путешествия пользователя и оценок пользователей из социальной сети.
В статье [12] авторы предлагают алгоритм построения персонализированных рекомендаций с учетом больших скоплений людей. Туристические предпочтения извлекаются с помощью коллаборативной
1 https://www.minube.net/
фильтрации. Модифицированный муравьиный алгоритм используется для генерации маршрутов среди достопримечательностей, которые могут совместить туристические интересы с популярностью POI. Оценка алгоритма была сделана с использованием информации, полученной из данных пешеходных датчиков, и опыта туристических поездок, извлеченного из набора фотографий Flickr.
Все рассмотренные решения предоставляют в той или иной форме маршрут среди достопримечательностей, однако построение маршрута идет либо по не очень большому количеству параметров [7, 9, 12], либо не учитывается контекстная ситуация [8, 10, 11], либо методы, при помощи которых собирается информация, широко не распространены [6]. Предлагаемая автором система может учитывать ситуацию на дороге, включая пробки, текущую погоду и сезон, привлекательность достопримечательностей и расписание их работы. Другими словами, метод построения маршрута должен использовать текущую контекстную информацию. Также предлагается использовать профиль пользователя для построения маршрута с запоминанием истории посещений с учетом оценок и предпочтений пользователей по достопримечательностям.
Архитектура интеллектуальной системы помощи туристу
Архитектура туристической системы планирования маршрутов представлена на рис. 1. Турист использует смартфон для просмотра достопримечательностей в регионе и получения мультимодальной информации. Устройство хранит в себе профиль пользователя, который включает общую информацию и его/ее предпочтения относительно понравившихся ранее достопримечательностей. Система является сервис-ориентированной и состоит из следующих сервисов: сервиса построения маршрута, рекомендующего сервиса, сервиса контекста, сервисов погоды и дорожной ситуации (трафика) и сервиса достопримечательностей.
Информация, которая находится в сервисах системы, хранится в интеллектуальном пространстве, к которому имеют доступ как сервисы (внутренние и внешние), так и туристы. Сервисы и туристы могут загружать информацию в базу знаний сервиса контекста, а также реагировать на изменения информации. Данные в сервисе контекста хранятся согласно онтологии, что обеспечивает семантическую интеропера-бильность между сервисами в системе.
Рекомендующий сервис использует туристический профиль, оценки достопримечательностей и медиа-информацию для генерации персонифицированных рекомендаций. За создание рекомендаций пользователям отвечает система SCoR (Synthetic Coordinate based Recommendation system) [13, 14]. Подход к генерации рекомендаций в системе заключается в присвоении пользователям и достопримечательностям
Рекоме
Онтология для рекомендаций
В
Оценки
Сервис управления достопримечательностями
[-"■""Онтология города*" и достопримеча-т
тельностей _
В В В
Wikipedia Ореп8й"ее1Мар8 База данных
(описание, категории, (геоданные) регионов изображения)
Устройство
Сервис
Компонент
Рис. 1. Архитектуратуристической системы планирования маршрута
синтетических координат, на основании которых можно высчитать расстояние между ними. Данное расстояние можно считать отражением предпочтения пользователя той или иной достопримечательности.
Сервис управления достопримечательностями хранит всю информацию о регионах и достопримечательностях. Информация может передаваться туристу либо по прямому запросу (например, турист запрашивает информацию о конкретной достопримечательности), либо в виде архива для последующей автономной работы на смартфоне. Сервис позволяет администраторам в интерактивной форме взаимодействовать с базой данных достопримечательностей.
Пользователи, используя сервис управления достопримечательностями, могут добавлять, удалять или изменять информацию о них для каждого из городов. Сервис поддерживает возможность добавлять как текстовую информацию, так и медиа файлы (аудио и видео) для тех или иных достопримечательностей. Пользователи сервиса могут просматривать информацию о текущем городе с подробной статистикой о достопримечательностях, ключевых словах и медиа файлах, которые включены в базу данных; изменять информацию и удалять информацию о городе из сервиса.
Сервис управления достопримечательностями производит автоматический анализ информации о достопримечательностях региона, используя открытые сервисы. В данный момент в качестве источника географической информации используются данные проекта OpenStreetMap (OSM). Географическая информация сопоставляется с данными о достопримечательностях из открытых источников, таких как Wikipedia/WikiVoyage для получения дополнительной медиаинформации (детального описания, изображений, категорий достопримечательностей). Процесс сбора данных может быть разделен на две части: сбор географической информации о достопримечательностях города и поиск детальной информации о достопримечательностях в доступных информационных сервисах.
Сервис контекста обрабатывает поступающую контекстную информацию от туристов, сервисов системы и внешних сервисов, таких как сервис погоды, дорожный сервис и т. д. Контекст был разделен на два типа: туристический и региональный. Туристический контекст включает в себя информацию о местоположении пользователя системы, способе передвижения пользователя, ограничения по времени. Региональный контекст включает данные о текущей дорожной ситуации, расписание работы достопримечательности, информацию о времени года и текущей погоде и т. д.
Сервис построения маршрута ориентирован на создание эффективного по времени маршрута, который стремится удовлетворить потребности туриста. В качестве входных параметров сервис принимает требования от пользователя (начальная и конечная точки предполагаемого маршрута, временные ограничения и т. д.). В результате работы сервис передает туристу список достопримечательностей с указанием порядка посещения и времени, которое тратится на проезд к достопримечательностям. Для построения маршрута посещения достопримечательностей используются методы и алгоритмы теории графов, поскольку объекты города и дороги между ними можно представить в виде графа. Город может быть представлен как ориентированный граф (V, E), где каждая вершина v € Vпредставляет собой достопримечательность и каждое ребро e € E является путем между достопримечательностями. Контекстная информация из интеллектуального пространства представляет собой набор модификаторов, которые могут применяться к ребрам графа. Данные от рекомендующего сервиса могут быть использованы, как дополнительные значения, применяемые к весу вершин. Сервису необходимо составить маршрут, используя алгоритмы нахождения пути с минимизацией потраченного времени и максимизацией общего удовлетворения от маршрута с учетом контекстной ситуации (городского трафика, погоды, расписания работы достопримечательностей и т. д.).
Реализация туристической системы планирования маршрутов
Представленные сервисы разработаны на языках программирования Python и Java. Для организации web-интерфейса использовался микрофреймворк Flask1 в качестве серверной части приложения и фреймворк Vue.js2 был использован для построения клиентской части приложения. Взаимодействие между сервисами и клиентом со смартфоном выполнено при помощи платформы по построению интеллектуальных пространств Smart-M3 [15], которая позволяет обеспечить совместный доступ к информации и знаниям различных сервисов на основе механизма публикации/подписки.
Сервис управления достопримечательностями использует разработанный поисковый модуль для обработки и агрегации полученных данных. Первоначально производится поиск географической информации, используя данные проекта OpenStreetMap. При помощи Overpass API производится поиск достопримечательностей внутри города. На текущий момент времени производится поиск по историческим местам, музеям, театрам, памятникам и паркам. Данные виды достопримечательностей кодируются в системе OSM при помощи тэгов. На вход поискового модуля подаются название достопримечательности и его координаты (если достопримечательность была представлена, как полигон из точек и линий, то предоставляется географический центр данного объекта). Для улучшения качества поиска следующие действия были предприняты.
1 http://flask.pocoo.org/
2 https://vuejs.org/
Во-первых, из названия достопримечательности убираются ненужные слова из заранее созданного словаря ненужных для обработки слов, такие как «монумент», «статуя» и т. д. Во-вторых, производится поиск в открытых информационных системах, таких как Wikipedia и Wikivoyadge как на основе географической привязки, так и на основе измененного названия.
Модуль агрегирования данных сохраняет данные о достопримечательностях согласно ORM-модели. Данный подход позволяет сохранять данные в различных базах данных, работая с едиными концептами и объектами. Один из возможных способов представления базы данных - работа с sqlite-форматом, который представляет собой файл, который может быть обработан на персональном устройстве туриста, предоставляя тем самым возможность работы с информацией без использования сети Интернет. В самой базе данных хранится только текстовая информация, медиа-информация хранится в отдельных файлах. В совокупности все данные предоставляются единым zip-архивом.
Основными ORM-классами являются Attraction, Media, Keyword и District. Класс Attraction представляет собой достопримечательность и содержит информацию о названии (как на английском языке, так и на языке оригинала из данных OpenStreetMaps), координатах (широты и долготы), тэгах (таких как «музей», «мемориал» и т.д.), источнике дополнительной информации (Wikipedia, WikiVoyage и т.д.), оценке достопримечательности, URL-ссылке и прочей служебной информации (например, о факте перевода). Класс Keyword хранит в себе информацию о ключевых словах, которыми можно дополнительно охарактеризовать достопримечательность. Из-за того, что одно и то же ключевое слово можно привязать к различным объектам, класс Attraction_Keyword является вспомогательной таблицей-связкой между достопримечательностями и ключевыми словами.
Класс Media содержит информации о медиа-контенте, связанном с достопримечательностью. На текущий момент времени данный класс включает в себя текстовое описание (кодируется полями type = 'tts' и text) и данные об аудио/видео файлах и фотографиях (type = "audioWideoV'image', поле mimetype представляет собой тип данных, поле primary необходимо для обозначения главной фотографии, которая будет показываться пользователю при просмотре достопримечательности). Класс District представляют данные об областях в выбранном городе. Каждую область можно представить, как замкнутый прямоугольник в 2D-пространстве при помощи класса District_polygon. Используя данное обозначение области и текущее местоположение пользователя, можно определять принадлежность к той или иной области без использования сети Интернет.
Для работы рекомендующей системы SCoR необходимо получить пользовательские оценки достопримечательностям города, в котором будет находиться турист. Для города Санкт-Петербург была собрана информация о достопримечательностях на основе данных проектов OpenStreetMap и Wikipedia. Основным источником оценок является проект Google Places, который позволяет пользователям получать разнообразную информацию о достопримечательностях по всему миру. С данного сервиса были собраны геоданные достопримечательностей, а также доступные пользовательские оценки к ним. Для уменьшения количества обращений к сервису Google Places были взяты несколько точек в городе с наибольшей концентрацией достопримечательностей вокруг них. Для каждой из точек был выполнен поиск в определенном радиусе на наличие достопримечательностей. С целью увеличения объема покрытия данных в итоговый результат включался поиск как на русском, так и на английском языках. После извлечения оценок был произведен дополнительный поиск данных о достопримечательностях с использованием семантической сети Google Knowledge Graph. Общий запрос к семантической сети включал поиск по названию из достопримечательностей Google Places, указанию возможных языков результатов и уточнения типов искомых сущностей ('Places', 'Tourist Attractions'). Автор отбирал сущности с наибольшей степенью соответствия запросу, которая определяется на основе данных самой семантической сети. В итоге был получен общий массив данных о достопримечательностях и оценках к ним, над которым была произведена операция по сопоставлению достопримечательностей из существующей базы данных для города Санкт-Петербург. Первым шагом в сопоставлении был поиск соответствующих ссылок на достопримечательности из проекта Wikipedia на основе данных из Google Places и Knowledge Graph. Данные ссылки позволяют сопоставить записи из двух вышеупомянутых источников. Вторым шагом было сопоставление достопримечательностей по географическим координатам и отсевом кандидатов по схожести названий на основе расстояния Левенштейна.
Для тестирования интеллектуальной системы помощи туристу были сгенерированы группы пользователей с оценками достопримечательностей. Произведенный анализ среди существующих научных работ и открытых туристических порталов показал, что реальных баз данных, содержащих подобную информацию на сегодняшний день, не существует. На основе существующих данных было сформировано 8 групп пользователей по 10 человек. Каждая группа обладает собственным паттерном выставления оценок и предпочтений по достопримечательностям. В таблице представлены сами группы и способы их формирования.
Переменная rating в таблице представляет собой итоговую оценку и находится в границах. Если в результате генерации оценка выходит за пределы, то она должна быть приведена к минимальному или максимальному значению. Группы I—III выставляют свои оценки на основе данных из Google Places. Переменная Gr несет в себе изначальную оценку из проекта Google Places и принимает значения в диапазоне [0; 5]. Группа I берет неотрицательную оценку и добавляет ей значение от функции Sr() = random(—0,5; 0,5),
Таблица. Принципы генерации тестовых групп
Группа пользователей Формула вычисления рейтинга
I fcr+srOJfgrating>o rating - < (None,otherwise
II \5-Gr,ifgrati >0 rating = < (None,otherwise
III (Gr /2,ifgrati >0 rating = < (None,otherwise
IV (Rr + Sr (), iftag - 'museum' rating = < {None, otherwise
V (Rc + Sr (), iftag = 'theatre' rating = < (None,otherwise
VI [ None, otherwise
VII (Rc+Sr (), iftag = 'monument' rating = < [None,otherwise
VIII f Rc+ SrQ, iftag = ' bridge' rating = < (None,otherwise
которая выдает случайное значение из заданного диапазона. Группа II выбирает противоположную оценку Gr, а группа III делит получаемый рейтинг на 2. Группы IV-VIII работают с оценками на основе типов достопримечательностей из данных OpenStreetMap. Переменная Rc = 4,5 является константой, tag является представлением типа достопримечательности. Для подходящей достопримечательности добавляется значение функции Sr( ), которая выдает случайное значение в указанном ранее диапазоне.
Для реализации прототипа было использовано Android-приложение, описанное в статье [16]. Рекомендации достопримечательностей генерируются на смартфоне туриста. Оценки с сервиса Google Places хранятся в локальной sqlite базе данных, коллекция сгенерированных оценок хранится в JSON-файле внутри APK-файла (Android Package file). Файл хранит в себе массив объектов, чей ключ - это внутренний идентификационный номер достопримечательности в локальной базе данных, а значение - оценка пользователя. Детальную информацию о реализации туристической системы можно найти в статьях [17].
Обучение рекомендующей модели производится один раз при запуске приложения в отдельном потоке для улучшения пользовательского опыта работы с приложением, так как в таком случае не будет замедляться работа с графическим интерфейсом. В качестве входного параметра рекомендующая система принимает массив данных, которые содержат оценки достопримечательностей. После обучения рекомендующая система может предсказывать подходящие к туристу достопримечательности на основе полученных данных. В случае, если были добавлены новые оценки, то модель заново тренируется «на лету», основываясь на новых предпочтениях.
Тестирование было произведено на Android-эмуляторе. Спецификация компьютерного стенда следующая: процессор Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz, 16 Gb оперативной памяти, 1 TB жесткого диска. Каждый набор данных был сгенерирован на основе положений, изложенных в таблице. В каждом наборе находится различное количество людей в группе: 10, 100, 250, 500, 750 и 1000 людей соответственно. Время
Первоначальная тренировка модели
S 5
S я-
еа рр
е
200 400 600 800 Количество людей в группе
1000
о S
я"
я ки
мв
ео рр
е
ерт
Повторная тренировка модели 40000
70000
Г
0 500 1000 1500 Количество людей в группе
Рис. 2. Зависимость времени первоначальной тренировки модели (а) и повторной тренировки модели (б)
от количества участников тестовой группы
0
0
начальной тренировки (рис. 2, а) и переподготовки набора рекомендаций после добавления пользовательского рейтинга (рис. 2, б) были измерены при работе прототипа. Скорость переподготовки значительно выше, чем начальная скорость обучения, однако для улучшения взаимодействия с приложением, рекомендуется использовать модель в фоновом потоке.
Заключение
В статье была представлена интеллектуальная система помощи туристу, которая позволяет на основе данных и предпочтений пользователя, а также контекстной информации построить персонифицированный маршрут среди достопримечательностей. Данная система является сервисно-ориентированной, что позволяет облегчить разработку и последующую поддержку системы. Использование контекста позволяет более точно создавать маршруты в зависимости от информации о туристе и его окружающей ситуации. Представленная система может предоставлять мультимодальную информацию о достопримечательностях в зависимости от состояния туриста (для тех, кто перемещается пешком, система предоставляет аудиоинформацию, для тех, кто едет в машине как пассажир - видеоинформацию и фотографии). В рамках работы представлены детали реализации системы и внедрения рекомендующей системы БСоК Выполнены эксперименты, показавшие, что разработанную систему интеллектуальной помощи туристу целесообразно использовать в реальных условиях, так как время отклика приложения даже при большом количестве участников системы является вполне приемлемым для туристической столицы России — города Санкт-Петербурга.
Литература
1. Huang C.D., Goo J., Nam K., Woo Y.C. Smart tourism technologies in travel planning: The role of exploration and exploitation // Smart Tourism: Traveler, Business, and Organizational Perspectives. 2017. V. 54. N 6. P. 757-770. doi: 10.1016/j.im.2016.11.010
2. Ulrike G., Marianna S., Zheng X., Chulmo K. Smart tourism: foundations and developments // Electronic Markets. 2015. V. 25. N 3. P. 179-188. doi: 10.1007/s12525-015-0196-8
3. Borras J., Moreno A., Valls A. Intelligent tourism recommender systems: a survey // Expert Systems with Applications. 2014. V. 41. N 16. P. 7370-7389. doi: 10.1016/j.eswa.2014.06.007
4. Mikhailov S., Kashevnik A. An ontology for service semantic interoperability in the smartphone-based tourist trip planning system // Proc. 23rd Conference of Open Innovations Association FRUCT. Bologna, Italy, 2018. P. 239-245. doi: 10.23919/fruct.2018.8588027
5. Smirnov A., Kashevnik A., Ponomarev A. Context-based infomobility system for cultural heritage recommendation: tourist assistant - TAIS // Personal Ubiquitous Computing. 2017. V. 21. N 2. P. 297-311. doi: 10.1007/s00779-016-0990-0
6. Long L., Jin X., Stephen S.L., Huaping C. A real-time personalized route recommendation system for self-drive tourists based on vehicle to vehicle communication // Expert Systems with Applications. 2014. V. 41. N 7. P. 3409-3414. doi: 10.1016/j.eswa.2013.11.035
7. Santos F., Almeida A., Martins C., Gonfalves R., Martins J. Using POI functionality and accessibility levels for delivering personalized tourism recommendations // Computers, Environment and Urban Systems. 2017. (in press) doi: 10.1016/j.compenvurbsys.2017.08.007
8. Colomo-Palacios R., Garcia-Penalvo F.J., Stantchev V., Misra S. Towards a social and context-aware mobile recommendation system for tourism // Pervasive and Mobile Computing. 2017. V. 38. P. 505-515. doi: 10.1016/j.pmcj.2016.03.001
9. Zheng W., Liao Z. Using a heuristic approach to design personalized tour routes for heterogeneous tourist groups // Tourism Management. 2019. V. 72. P. 313-325. doi: 10.1016/j.tourman.2018.12.013
10. Moreno A., Valls A., Isern D., Marin L., Borras J. SigTur/E-destination: ontology-based personalized recommendation of tourism and leisure activities // Engineering Applications of Artificial Intelligence. 2013. V. 26. N 1. P. 633-651. doi: 10.1016/j.engappai.2012.02.014
11. Cenamor I., Rosa T., Nez S. Borrajo D. Planning for tourism routes using social networks // Expert Systems with Applications. 2017. V. 69. P. 1-9. doi: 10.1016/j.eswa.2016.10.030
12. Xiaoting W., Christopher L., Jeffrey C., Hui L.K., Tharshan V. Improving personalized trip recommendation by avoiding crowds // Proc. 25th ACM Int. Conf. on Information and
References
1. Huang C.D., Goo J., Nam K., Woo Y.C. Smart tourism technologies in travel planning: The role of exploration and exploitation. Smart Tourism: Traveler, Business, and Organizational Perspectives, 2017, vol. 54, no. 6, pp. 757-770. doi: 10.1016/j.im.2016.11.010
2. Ulrike G., Marianna S., Zheng X., Chulmo K. Smart tourism: foundations and developments. Electronic Markets, 2015, vol. 25, no. 3, pp. 179-188. doi: 10.1007/s12525-015-0196-8
3. Borras J., Moreno A., Valls A. Intelligent tourism recommender systems: a survey. Expert Systems with Applications, 2014, vol. 41, no. 16, pp. 7370-7389. doi: 10.1016/j.eswa.2014.06.007
4. Mikhailov S., Kashevnik A. An ontology for service semantic interoperability in the smartphone-based tourist trip planning system. Proc. 23rd Conference of Open Innovations Association FRUCT. Bologna, Italy, 2018, pp. 239-245. doi: 10.23919/fruct.2018.8588027
5. Smirnov A., Kashevnik A., Ponomarev A. Context-based infomobility system for cultural heritage recommendation: tourist assistant — TAIS. Personal Ubiquitous Computing, 2017, vol. 21, no. 2, pp. 297-311. doi: 10.1007/s00779-016-0990-0
6. Long L., Jin X., Stephen S.L., Huaping C. A real-time personalized route recommendation system for self-drive tourists based on vehicle to vehicle communication. Expert Systems with Applications, 2014, vol. 41, no. 7, pp. 3409-3414. doi: 10.1016/j. eswa.2013.11.035
7. Santos F., Almeida A., Martins C., Gonçalves R., Martins J. Using POI functionality and accessibility levels for delivering personalized tourism recommendations. Computers, Environment and Urban Systems, 2017. (in press) doi: 10.1016/j. compenvurbsys.2017.08.007
8. Colomo-Palacios R., Garcia-Penalvo F.J., Stantchev V., Misra S. Towards a social and context-aware mobile recommendation system for tourism. Pervasive and Mobile Computing, 2017, vol. 38, pp. 505-515. doi: 10.1016/j.pmcj.2016.03.001
9. Zheng W., Liao Z. Using a heuristic approach to design personalized tour routes for heterogeneous tourist groups. Tourism Management, 2019, vol. 72, pp. 313-325. doi: 10.1016/j.tourman.2018.12.013
10. Moreno A., Valls A., Isern D., Marin L., Borras J. SigTur/ E-destination: ontology-based personalized recommendation of tourism and leisure activities. Engineering Applications of Artificial Intelligence, 2013, vol. 26, no. 1, pp. 633-651. doi: 10.1016/j.engappai.2012.02.014
11. Cenamor I., Rosa T., Nez S. Borrajo D. Planning for tourism routes using social networks. Expert Systems with Applications, 2017, vol. 69, pp. 1-9. doi: 10.1016/j.eswa.2016.10.030
12. Xiaoting W., Christopher L., Jeffrey C., Hui L.K., Tharshan V. Improving personalized trip recommendation by avoiding crowds. Proc. 25th ACM Int. Conf. on Information and
Knowledge Management. Indianapolis,USA, 2016. P. 25-34. doi: 10.1145/2983323.2983749
13. Papadakis H., Panagiotakis C., Fragopoulou P. SCoR: a synthetic coordinate based recommender system // Expert Systems with Applications. 2017. V. 79. P. 8-19. doi: 10.1016/j.eswa.2017.02.025
14. Kashevnik A., Mikhailov S., Papadakis H., Fragopoulou P. Context-driven tour planning service: an approach based on synthetic coordinates recommendation // Proc. 24th Conference of Open Innovations Association FRUCT. Moscow, Russia, 2019.
15. Korzun D., Kashevnik A., Balandin S. Novel Design and the Applications of Smart-M3 Platform in the Internet of Things: Emerging Research and Opportunities. IGI Global, 2017. 150 p. doi: 10.4018/978-1-5225-2653-7
16. Smirnov A., Kashevnik A., Ponomarev A., Teslya N., Sche-kotov M., Balandin S. Smart space-based tourist recommendation system // Lecture Notes in Computer Science. 2014. V. 8638. P. 40-51. doi: 10.1007/978-3-319-10353-2_4
17. Mikhailov S., Kashevnik A. Smartphone-based tourist trip planning system: a context-based approach to offline attraction recommendation // MATEC Web Conf. 2018. V. 161. Art. 03026. doi: 10.1051/matecconf/201816103026
Knowledge Management. Indianapolis,USA, 2016, pp. 25-34. doi: 10.1145/2983323.2983749
13. Papadakis H., Panagiotakis C., Fragopoulou P. SCoR: a synthetic coordinate based recommender system. Expert Systems with Applications, 2017, vol. 79, pp. 8-19. doi: 10.1016/j.eswa.2017.02.025
14. Kashevnik A., Mikhailov S., Papadakis H., Fragopoulou P. Context-driven tour planning service: an approach based on synthetic coordinates recommendation. Proc. 24th Conference of Open Innovations Association FRUCT. Moscow, Russia, 2019.
15. Korzun D., Kashevnik A., Balandin S. Novel Design and the Applications of Smart-M3 Platform in the Internet of Things: Emerging Research and Opportunities. IGI Global, 2017, 150 p. doi: 10.4018/978-1-5225-2653-7
16. Smirnov A., Kashevnik A., Ponomarev A., Teslya N., Sche-kotov M., Balandin S. Smart space-based tourist recommendation system. Lecture Notes in Computer Science, 2014, vol. 8638, pp. 40-51. doi: 10.1007/978-3-319-10353-2_4
17. Mikhailov S., Kashevnik A. Smartphone-based tourist trip planning system: a context-based approach to offline attraction recommendation. MATEC Web Conf., 2018, vol. 161, art. 03026. doi: 10.1051/matecconf/201816103026
Авторы
Михайлов Сергей Андреевич — аспирант, Университет ИТМО, Санкт-Петербург, 197101, Российская Федерация; младший научный сотрудник, Санкт-Петербургский институт информатики и автоматизации Российской академии наук (СПИИРАН), Санкт-Петербург, 199178, Российская Федерация, Scopus ID: 56719229300, ORCID ID: 0000-0002-3738-0639, sergei.mikhailov@iias.spb.su
Authors
Sergey A. Mikhailov — postgraduate, ITMO University, Saint Petersburg, 197101, Russian Federation; Junior scientific researcher, St. Petersburg Institute for Informatics and Automation of the Russian Academy of Sciences (SPIIRAS), Saint Petersburg, 199178, Russian Federation, Scopus ID: 56719229300, ORCID ID: 0000-0002-3738-0639, sergei.mikhailov@iias.spb.su