Карта пешеходного трафика Москвы

Всем привет! Хочу рассказать, как я строил карту пешеходного трафика Москвы и как эта карта помогла найти подходящее помещение для нового коворкинга.

Задача

Один мой товарищ со своей командой решили открыть коворкинг в Москве в районе метро Динамо, Аэропорт или Сокол. И им нужно было помещение. Требований к помещению было много, одним из них был высокий пешеходный трафик. Возник вопрос, как дешево и быстро оценить объем этого трафика.

Идея решения

Во время обсуждения пришла в голову простая идея:

  1. Взять все жилые дома в районе.
  2. От каждого дома построить маршрут до ближайшей станции метро.
  3. Наложить все маршруты друг на друга с правильными весами, в качестве весов взять количество квартир в домах.
  4. В итоге для каждой дороги получим примерную оценку, жители скольки квартир ходят по этой дороге.

Суть метода показана на этом рисунке:

Метро в Москве — основной вид транспорта (ссылка), поэтому строить маршруты именно до станций метро показалось нам разумным.

Недостатки подхода

Конечно, у этого подхода есть свои недостатки и ограничения:

  • учитываются только жители района: если человек живет в другом районе, а сюда приезжает, например, по работе, то этот трафик учтен не будет.
  • учитывается только трафик дом-метро-дом: если человек решил сходить до супермаркета и обратно, такой трафик учтен не будет.
  • не все ходят пешком до метро: кто-то добирается до работы или учебы пешком, кто-то ездит на авто или автобусе, кто-то работает из дому и так далее, это влияет на трафик, мы это влияние не учитываем.
  • не все ходят до ближайшей станции: кому-то удобнее пройти чуть дальше, чтобы сесть на удобную ветку, мы это опять же не учитываем.
  • люди могу выбирать разные маршруты: от точки А до точки Б обычно есть более одного маршрута, и разные люди в разное время могут выбирать разные маршруты — я, например, выбираю один маршрут, когда иду от метро сразу домой, и другой, когда хочу зайти в супермаркет.

Почему мы решили, что подход оправдан в нашем случае

Мы посчитали, что в нашем случае подход оправдан, так как влияние большинства описанных выше факторов некритично для нашего случая:

  • учитываются только жители района: коворкинг был рассчитан на людей, которые проживают рядом. Значит, учитывать тех, кто приезжает из другого района, было не нужно.
  • учитывается только трафик дом-метро-дом: это по сути означает, что оценка будет занижена, что не очень критично — если удастся найти помещение с большим трафиком согласно расчету, этого будет достаточно, так как в реальности трафик может оказаться еще больше;
  • не все ходят пешком до метро: почти от любого жилого дома в районе Динамо / Аэропорт / Сокол до ближайшей станции можно дойти за 15 минут максимум. Поэтому, если человек ездит на работу на метро, то до метро он, скорее всего, идет пешком. Кроме того, мы предположили, что процент людей, которые регулярно ездят на метро, примерно одинаковый для каждого дома. Сам процент мы не знаем, то есть абсолютные значения трафика будут неточными, но относительным значениям внутри района в таком случае верить будет можно.
  • не все ходят до ближайшей станции: вторые по близости станции метро в интересных нам районах располагаются на той же зеленой ветке, что и ближайшие. Значит, нет большого смысла идти пешком не до ближайшей станции, а дальше.
  • люди могу выбирать разные маршруты: кажется, что этот фактор наиболее сильно может исказить результаты, оценить влияние сложно, поэтому мы решили построить карту и посмотреть, что в итоге из этого выйдет.

В общем говоря, нам показалось, что этот способ может дать нам неплохую оценку. И, что важно, полученные цифры будут прозрачны и легко объяснимы.

Реализация

Я программист, идея мне показалась интересной, поэтому я решил помочь ребятам реализовать ее. Для реализации нужно было собрать следующие данные:

  1. Базу жилых зданий Москвы с координатами и количеством квартир.
  2. Маршруты от этих зданий до ближайших станций метро.

1. База жилых домов

Для начала я взял открытые данные OpenStreetMap, там есть координаты домов, многие дома размечены как жилые или нежилые. По некоторым домам есть данные о количестве квартир. К сожалению, этих данных было недостаточно, и я начал искать альтернативные источники.

Искал я недолго. Оказалось, есть готовый онлайн-сервис, который содержит информацию о жилом фонде Российской Федерации. В базе содержится информация о 733 тысячах жилых домов в 80 регионах, нужно было лишь спарсить данные по Москве с сайта и соотнести их со зданиями на картах OSM, что я и сделал. Вот пример карточки дома с этого сайта:

2. Маршруты до ближайших станций метро

Есть множество платных и бесплатных API для построения маршрутов. Я остановился на Mapbox, так как там высокие лимиты бесплатного использования. Из недостатков Mapbox — маршруты не всегда соответствуют тем, по которым ходит большинство людей, часто построенные маршруты слишком сложные и проходят через дворы. Пример:

Наиболее адекватные маршруты, как мне показалось, у «Яндекса». Но чтобы пользоваться API Яндекса, нужно купить лицензию, которая стоит от 120 тысяч рублей в год. Для первой итерации решил использовать Mapbox.

Строим карту

После того, как я определился с источниками, я построил маршруты от всех жилых домов до ближайших станций метро и наложил их друг на друга с правильными весами. Полученные результаты отобразил на карте:

Так как изначально интересны были только районы Динамо, Аэропорт, Сокол, карту я построил только для них. В целом результаты выглядят адекватно, хотя есть проблемы, связанные с наличием более одного маршрута от точки А до точки Б, — не всегда был выбран наиболее популярный маршрут, часто выбранные маршруты проходят через дворы.

Результаты можно посмотреть здесь. Можно кликнуть на любую точку трафика и получить точное количество квартир, маршрут от которых до ближайшей станции метро проходит через эту точку:

Что в итоге с коворкингом?

Подходящее помещение для коворкинга нашли, и, как утверждает мой товарищ, эта карта пешеходного трафика сыграла ключевую роль, так как изначально на помещение внимания не обращали, считая, что оно находится в месте, где никто не ходит. Карта показала, что люди ходят. Ребята приехали на просмотр и убедились, что это действительно так.

Но коворкинг в этом помещении так и не открыли, так как команда пока не нашла инвестора, а помещение уже снял кто-то другой.

Что можно улучшить?

Есть три направления:

  1. Полностью достроить карту Москвы. Сейчас на карту добавлены всего пара районов Москвы. Добавить другие районы несложно, нужно потратить немного времени на расчет и немного денег на оплату API по построению маршрутов.
  2. Ослабить ограничения. У описанного метода сейчас много ограничений, но есть идеи, как их ослабить. Во-первых, можно перейти на более качественный источник для построения маршрутов, во-вторых, можно учитывать все альтернативные маршруты вместо одного единственного, как это делается сейчас. Также можно добавить трафик до ближайших магазинов и трафик из нерезидентов района.
  3. Построить карту для других городов России. К сожалению, применить без изменений этот подход к другим городам России, где метро не является основным видом транспорта, не получится. Но можно пробовать заменить станции метро другими объектами — в голову пока приходят автобусные остановки, но с ними будут свои сложности.

Заключение

В интернете уже есть несколько сайтов, которые продают данные о пешеходном трафике. Я не знаю деталей о том, откуда берутся эти данные и насколько они точные и полезные. Если у вас есть опыт работы с ними — напишите в комментариях.

Подход, описанный выше, на мой взгляд, достаточно прозрачный и с понятными ограничениями. Его можно развивать, но сначала я бы хотел понять, есть ли интерес к такой карте со стороны бизнеса, особенно сейчас в это непростое для оффлайна время.

На vc.ru много умных и знающих людей, в том числе владельцев бизнесов. Видите ли вы пользу в такой карте для себя или для своих знакомых? Если нет, почему нет? Если да, расскажите о своем кейсе.

Буду признателен за любой конструктивный фидбек. Хорошего всем дня!

0
83 комментария
Написать комментарий...
Asf

Интересный подход. 
Но я присоединюсь,  к комментаторам писали выше, факт генерации маршрута, ещё не говорит о том, что им пользуются хотя бы 95% популяция этого района (как и любого другого ), поскольку Вы не учитывайте некоторые социальные статусы (к примеру, пенсионер , маловероятно ходит этой дорогой каждый день, ровно как и школьник) , к тому же нет понимания об объёме населения, проживающих в этих квартирах (возможно Вы указали, но я упустил).
Работа интересная, но достоверность исследования,   я думаю, будет за рамками статистически значимых величин, поскольку генерация маршрута , как и любые предположения в этом контексте,  куда менее правдоподобно данным от операторов.

PS: скрвис с БД жилого фонда , позволяет тащить анные по api?

Ответить
Развернуть ветку
Vitaly Shaydurov
Автор

Спасибо за фидбек! Данных о количестве людей, проживающих в квартирах, нет. Социальные статусы тоже не учитываются. Все верно.

API с БД жилого фонда не нашел. Но искал не долго, так как спарсить было несложно. Может, и есть где-то.

Ответить
Развернуть ветку
Владимир Жаринов

Подскажите, а парсили как? В лоб? Ограничений на парсинг у этого сайта нет?

Ответить
Развернуть ветку
Vitaly Shaydurov
Автор

Парсил в лоб без прокси, но в один поток. Забанен не был.

Ответить
Развернуть ветку
Alexey Ivanov

Без анализа качества трафика смысла нет делать. 20 пенсионеров или 2 программиста фигачаших на аутсорс за границу.

Ответить
Развернуть ветку
80 комментариев
Раскрывать всегда