Введение 3
Глава 1. Анализ существующих проектов по построению пешеходных маршрутов 5
1.1. Существующие алгоритмы и приложения для построения пешеходных
маршрутов 5
1.2. Настольное приложение как инструмент планирования пешеходных
маршрутов с учетом достопримечательностей и факторов окружающей среды 7
1.3. Анализ и выбор программного обеспечения для разработки пилот-проекта 9
1.4. Источники исходных данных для построения пешеходных маршрутов 14
Глава 2. Модели и алгоритмы, использованные при создании веб-приложения 17
2.1. Получение и представление исходных данных в нужном формате для
дальнейшего использования 17
2.2. Автоматизированное создание «карты» шумового загрязнения тестовой
территории 21
2.3. Создание растровых данных весовых значений 25
2.4. Присвоение весовых значений пешеходным дорогам 32
2.5. Выбор алгоритмов для построения пешеходных маршрутов 35
2.6. Работа с базой данных 39
Глава 3. Разработка веб-приложения по построению пешеходных маршрутов 44
3.1. Построение клиент-серверной архитектуры приложения 44
3.2. Разработка функциональной части приложения на стороне клиента 45
3.3. Создание серверной части приложения 48
3.4. Примеры построений пешеходных маршрутов в приложении 50
Заключение 57
Список литературы 59
Известен факт, что почти каждый человек старается придерживаться здорового образа жизни. В крупных городах люди все чаще предпочитают гулять пешком или использовать велосипедный транспорт вместо автомобильного. Но добраться пешком как можно быстрее из пункта А в пункт Б не единственный вариант прохождения по маршруту. Его можно спланировать так, чтобы добраться до пункта назначения, максимально избегая шума автомобильных дорог. Или построить маршрут, проходящий через озелененные территории города. Пройти через наибольшее количество интересных объектов - популярный вид пешеходного маршрута для городов с богатым культурным наследием. Прохождение последним маршрутом привлекает не только туристов, но и жителей города. Отсюда возникает необходимость в создании веб-приложения, с помощью которого осуществлялись бы построения различных видов пешеходных маршрутов, определяемых пользователем, который в свою очередь мог бы просматривать объекты, встречающиеся по построенному маршруту, и задавать определенные параметры.
На сегодняшний день существуют несколько функционирующих приложений по построению пешеходных маршрутов. Однако все они имеют свои ограничения. Например, отсутствие возможности задать время для прогулки, построить несколько видов маршрутов в одном приложении или просмотреть встречающиеся по пути интересные объекты.
Целью дипломной работы являлось создание пилот-проекта веб-приложения, предоставляющее функцию построения пешеходных маршрутов с пользовательскими параметрами, такими как: выбор вида пешеходного маршрута, задание максимального времени для прогулки, обзор кофеен и достопримечательностей города по маршруту.
Для достижения поставленной цели необходимо было решить следующие задачи:
- проанализировать функциональные возможности существующих приложений по построению пешеходных маршрутов;
- подготовить исходные данные для проекта;
- выбрать алгоритмы для построения пеших прогулок с различными параметрами;
- создать базу данных для реализации построения пешеходных маршрутов с использованием запросов;
- разработать функционирующее приложение, основанное на клиент-серверной архитектуре;
Взаимодействие пользователя с приложением осуществляется с помощью веббраузера. Исходными данными для построения пешеходных маршрутов послужили материалы курсовой работы, которая выполнялась в прошлом году; данные об объектах, полученные с помощью запросов к поисково-картографической службе «Яндекс.Карты» и программные коды для определения шумового загрязнения. Тестовая территория пилот- проекта находится в городе Санкт-Петербург и расположена следующим образом: южная граница проходит вдоль Невского проспекта, северо-западная и северо-восточная границы - набережные рек Нева и Фонтанка соответственно.
В процессе создания пилот-проекта приложения по построению пешеходных маршрутов с пользовательскими параметрами было выполнено следующее:
- проанализированы существующие приложения по построению пешеходных маршрутов;
- собраны данные по 400 объектам, отображаемым вдоль строящихся пешеходных маршрутов;
- получена «карта» шумового загрязнения территории проекта с применением автоматизированных методов;
- разработаны три вида весовых значений для элементов сетевой модели данных пешеходных дорог;
- выбраны два алгоритма для построения маршрутов с различными входными параметрами: Дейкстры и k-кратчайших путей;
- создана реляционная база данных Postgis;
- составлены запросы к базе данных для решения задач маршрутизации и отображения объектов вдоль пешеходных маршрутов;
- разработана клиент-серверная архитектура приложения;
- написан программный код для функционирования клиентской части приложения средствами JS,CSS и HTML5;
- создана серверная часть приложения;
В результате проделанной работы был создан пилот-проект веб-приложения, позволяющего строить четыре вида пешеходных маршрутов на тестовом участке центра города Санкт-Петербург («самый интересный», «самый тихий», «самый экологичный» и («самый быстрый»). Дополнительно пользователь приложения имеет возможность выбирать параметры маршрута, такие как: задание максимально возможного времени для прогулки и отображение кофеен по пути следования. В процессе работы приложения пользователь получает информацию о необходимом для прогулки времени, длине пути и встречающихся на его пути: мостах, фонтанах, памятниках и архитектурных достопримечательностях, озелененных территориях. Разработанное приложение может функционировать на любом компьютере, где находится необходимая база данных и интерпретатор Python.
Одним из возможных вариантов развития созданного проекта является разработка мобильного приложения. Установка приложения на мобильное устройство позволит учитывать географическое положение пользователя, что, в свою очередь, обеспечит навигацию с помощью мобильного телефона в процессе прогулки. Другой вариант развития проекта - сохранить приложение в формате веб и обеспечить доступ к нему любого желающего.
1. Beaulieu A. Learning SQL. 2nd ed. Sebastopol, O'Reilly Media Publ., 2005, 405 p.
2. Dechter, R., Pearl, J. Generalized best-first search strategies and the optimality of A* // Journal of the ACM. - 1985. - Т. 32, No 3. - P. 505 - 536.
3. Fulton St., Fulton J. HTML5 Canvas. 1st ed. Sebastopol, O'Reilly Media Publ., 2011, 652p.
4. Gaston C. Hillar. Building RESTful Python Web Services. Birmingham, Packt Publ., Ltd, 2016, 412p.
5. Guo, Q., et al. The development of urban night tourism based on the nightscape lighting projects-a Case Study of Guangzhou. // Energy Procedia 5. 2010 International Conference on Energy, Environment and Development. -2011. -P. 477 -481. - ISSN 1876-6102.
6. Miura, H. et al. A Study on Navigation System for Pedestrians Based on Street Illuminations. // Knowledge-Based and Intelligent Information and Engineering Systems. -2011. -P. 49-55.
7. Mostafa Refat, I. A Parametric Study of the Effect of Building Distributions and Size on the Propagation of Sound in the Urban Environment. // Journal of Architectural Engineering Technology 3.1. -2014. -P. 1-8. -ISSN 2168-9717.
8. Mukhina, K., Rakitin, S., Visheratin, A. Detection of tourists attraction points using Instagram profiles. // Procedia Computer Science 108:2378-2382. - 2017. -P. 2378-2382. -ISSN 1877-0509.
9. Quercia, D., Rossano S., and Aiello L. M. The Shortest Path to Happiness: Recommending Beautiful, Quiet, and Happy Routes in the City. // Proceeding HT '14 Proceedings of the 25th ACM conference on Hypertext and social media. -2014. -P. 116-125.
10. Yasufumi, T. et al. Walking Route Recommender for Supporting a Walk as Health Promotion. // IEICE Transactions on Information and Systems. -2017. -P. 671-681.
11. Yen, Jin Y. Finding the K Shortest Loopless Paths in a Network. //Management Science 17.11. -1971. -P. 712-716.
12. Zhong, W., Chen, F. et al. SAFEBIKE: A Bike-sharing Route Recommender with Availability Prediction and Safe Routing. // arXiv:1712.01469. - 2017.
13. Доусон М. Программируем на Python. - СПб.: Питер, 2014, 416 с.
14. Кормен, Т., Лейзерсон, Ч., Ривест, Р., Штайн, К. Алгоритмы: построение и анализ. Под ред. И. В. Красикова. М.: Вильямс, 2005, 1296 с.
15. Кузнецов О. П., Адельсон-Вельский Г. М. Дискретная математика для инженера. М.: Энергия, 1980, 344 с., ил.
16. Левитин А. В. Введение в разработку и анализ. М.: Вильямс, 2006, 576 с.
... Всего источников –34.