Pull to refresh

Моё видение дорожных событий

Reading time 3 min
Views 15K
Являясь пешеходом, я всегда с интересом смотрел на терзания коллег по поводу того, как, когда и по какому маршруту ехать домой на их личном автомобиле — ведь информация с Яндекс.Пробки не всегда отражает действительность. И тут мне показалась интересной возможность немного по-другому посмотреть на то, что происходит на дорогах города. Что из этого получилось — можно увидеть ниже.



Что к чему


Яндекс.Карты предоставляют пользователю интерактив в виде возможности создавать метки событий или просто текстовые сообщения на карте. Все эти сообщения я и решил использовать в качестве информационного потока для визуализации. Поток нужно как-то структурировать. Путей структуризации тут немного — координаты и время. Как правило, метки ставят там, где что-то происходит. Соответственно, если сгруппировать метки по близости друг к другу и отсортировать по времени публикации, можно получить что-то вроде чатика по конкретной зоне. И в последствии из этого хаоса меток можно вычленить вполне осмысленную информацию о том, кто виноват и когда это всё закончится.

Что можно с этим делать?


После группировки сообщений открывается непаханое поле возможностей по анализу данных (поиск путей объезда, своевременное оповещение о том, что на запланированном вами пути что-то происходит… и много-много другого). Но, так как еще непонятно, во что это всё выльется, а, может быть, и зря начиналось… я решил это всё отложить до лучших времен. Дабы не усложнять проект, который, еще даже не опубликовав, хочется переписать.

Один день из жизни Москвы (понедельник 14.07.2015)


Хочу больше интересных циферок


Однажды я рассказал своему коллеге-пешеходу о том, что собираюсь сделать, и он мне подкинул идею. А почему бы не ввести некий индекс (назовем его «Индекс паршивости»), который бы символизировал чисто субъективный показатель некомфортности нахождения на улицах города. Загруженности города, разницы между температурой и «ощущаемой» температурой, силе ветра, влажности… На поиск информации о том, что считать комфортными показателями, я потратил множество часов. Особенно большое затруднение у меня вызвала формула вычисления «ощущаемой температуры» (Apparent temperature). Как я успел выяснить, эталонной формулы не существует, и на протяжении долгого времени с регулярной периодичностью появляются научные труды, которые вносят свои корректирующие коэффициенты и новые варианты вычислений. Да и после более тщательного размышления я отказался от этого показателя вовсе. Зачем он нужен. Зато я наткнулся на другой интересный индекс Heat Index. Собственно, по поводу индекса («Паршивости») больше вопросов, чем ответов, и тут бы хотелось услышать мнение людей. Нужен ли он, если нужен, то что и как должно на него влиять?



Занимательные факты из жизни городов


За то долгое время, пока я любовался происходящим на дорогах Москвы и Санкт-Петербурга, я успел выяснить, что больше всего интересует автомобилистов, и что они не любят.

Москвичи больше всего интересуются: когда закончится ремонт (в том месте где он (она) стоит в пробке), что там произошло, где стоят барышни всем известной профессии. А не любят жители города дачников, Яндекс (причем чаще всего упоминается, что он им в чём-то солгал) и некоего «Царя».

В Санкт-Петербурге ситуация немного другая, жители города очень интересуются, когда разводят мосты и развели ли их. И негодуют по поводу спецопераций правоохранительных органов по выявлению веселящих веществ на дорогах.
«А как же в обстоят дела в моем (не)любимом <поставить название города>?» — спросите вы?
Увы, ничего интересного по городам, отличным от Москвы и Санкт-Петербурга, увидеть нельзя. Хотя иногда случается…

И, наконец, техническая сторона


Стек. Ничего особенного. Node.Js, express.js, React.Js, mongodb, socket.io. Слабым местом архитектуры приложения является WebSocket, вернее количество одновременно открытых соединений. Провел небольшие нагрузочные тесты и ожидаю от минимального droplet на digital ocean, что он вытянет 4 тыс (как минимум) одновременных соединений. В любом случае будет интересно. И, если что, повод заморочится с настройкой load balancing и autoscaling. Но это будет(?) совсем другая история.

Спасибо


Компании Яндекс, информацией из сервисов которой я воспользовался
Компании Ростелеком, а именно sputnik.ru. Которая любезно предоставила cdn для карт в России (http://sputnik-maps.github.io/).
Vladimir Agafonkin за плагин Leaflet.heat

Ссылки


Проект
GitHub

P.S. Если мои идеи каким либо образом копируют чей-то проект, было бы интересно с ним ознакомиться.
Only registered users can participate in poll. Log in, please.
Интересно?
82.29% да 144
17.71% нет 31
175 users voted. 55 users abstained.
Tags:
Hubs:
+5
Comments 12
Comments Comments 12

Articles