Pull to refresh

Comments 172

Это может быть, например, JSON или XML.

Во-первых, для этого потребовалось бы слишком много вычислительных ресурсов, то есть времени CPU.

Можно данные пересылать и хранить в аудио или видео формате, тогда вообще никаких ресурсов не хватит.

Простите за сарказм. Я Сишник, и возможно некультурный.

Мир, временами, преподносит интересные штуки.

Все знают что Unix - это про С и про файлы, но протоколы типа HTTP, FTP, SMTP, POP3 и многие другие - вполне себе человеко-читаемые. И, отчасти, именно по этой причине обрели популярность. Не надо зависеть от разрядности, Big- или Little- Endian'ности машины и каналов связи. Ну, а то, что С плохо работает со строками... На то и программисты, и разработчики аппаратуры. XML, HTML, JSON - это ягодки с того поля... Как и PNM, SVG для картинок.

С другой стороны, вся эта радость сейчас спрятана в обертку шифрования и в открытую почти нигде не используется, а системы инициализации типа systemd всячески проповедуют "простой двоичный" подход вместо классического текстового.

Мир меняется. Возможно что скоро мы сделаем круг и вернемся к двоичным форматам.

Уже сделали. Откройте, к примеру, Гугл-карты и посмотрите обмен между сервером и клиентом в консоли разработчика.

JSON и XML – в данном случае, примеры форматов исходных данных, которые поступают на вход сервису приема сигналов. А основной челлендж с производительностью у нас возникает позже, на этапе обработки (привязки, прогнозирования). Все взаимодействие между сервисами внутри нашей системы, конечно же, происходит в бинарном формате :)

Есть ли какая-то процедура обратной связи до автобусных парков? Например: обычно в будний день работает 100 автобусов (геометок), а если сегодня геометок только 50

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

А мне вот это непонятно:

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

Я думал, что в каждом сигнале от автобуса есть его ID и номер маршрута. Неужели нет??

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

Ну так м в чем проблема определить этот удлинённый маршрут, если в сигнале есть его номер?

UFO just landed and posted this here

Хоть какой маршрут, но если есть прямая инфа о нем с датчика или автопарка, то задачи определить номер маршрута нет вообще.

Номер маршрута - тот же, но физический маршрут по которому едет автобус может отличаться.

Ради бога. Задача была именно определить номер маршрута.

Там есть только абстрактный ID железяки. Все привязки к маршрутам и графикам делаются в софте на серверах, которые обслуживают город (а иногда не город, потому что закону требуется мониторинг, но деталей нет, и каждый город решает эту проблему по-своему).

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

В общем-то, оно так и делается. Просто некоторые не в курсе и занимаются велосипедоизобретением. :-)

UFO just landed and posted this here

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

UFO just landed and posted this here

Режим зануды:

"

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

"

А какие могут быть координаты в градусах широты и долготы, которые НЕ находятся в пределах земного шара?

Высота выше текущей высоты поверхности технически не будет находиться в пределах земного шара.

Например точка с координатами 95° широты и 184° долготы.

Думаю, текст писал человек, который в теме только поверхностно. Базовая проверка это скорее "реально ли на транспорте типа автобус проехать отрезок между текущим и предшествующим координатом за время между этими двумя координатами". Координаты из старых GPS-приёмников иногда очень сильно прыгали.

Действительно, не самая удачная формулировка! По факту речь о фильтрации очевидно некорректных данных – отрицательных координат, времени из будущего и т.п. Поправим, спасибо за фидбек!

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

И вот само по себе это задание - уже содержит подводные камни.

Потому что отбрасывать такие данные GPS приемников, которые содержат "странную высоту" - я бы не стал.

Кроме того многие GPS приемники, кажется, умеют прогнозировать погрешность определение координаты и высоты и скорости.

Короче говоря , мне кажется, фильтрация сырых данных GPS - уже такая увесистая тема для статьи.

А как образуются ситуации, когда на карте транспорт есть, а в реальности его на маршруте нет? Ну то есть вот едет метка автобуса, "прибыла" на остановку, "уехала" дальше, но реально на остановку ничего не приезжает, а приезжает только следующий автобус (со своей меткой).

Постоянно такое вижу, да. Фантомные автобусы.

Была такая ситуация, перестал доверять этим картам. В нашем городе были проблемы с общественным транспортом после 20 часов вечера. Например, маршрут по расписанию до 22 с чем-то часов, приходишь в 20:10 допустим на остановку, стоишь до 21 часов, по карте за это время проехало три твоих автобуса, а на самом деле за это время здесь проезжал только один троллейбус. ¯\_(ツ)_/¯

Становится очевидно, что данные "нарисованные" и уходишь пешком.

UFO just landed and posted this here

Это приезжает автобус 410 из Бесконечного Лета за Семёном.

Счас свалят всё на партнёров своих :)

Мне уже их поддержка отвечала, что они просто картинки рисуют по чужим данным и не при делах. :) Вот решил при случае спросить на хабре, вдруг тут что-нибудь более интересное расскажут.

А я вроде замечал что это может быть не автобус а маршрутка того же рейса.

а промо-код на таксо давали?

Время писать статью как простой водитель автобуса добивается, чтобы метка ехала по карте без самого автобуса :).

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

Это вообще боль! У меня была «любимая» остановка как раз на отрезке, на котором есть автобусный парк. Вечером автобусы и так ходят не часто, так ещё и половина уезжала в автобусный парк.
Выглядит это так: автобус есть в расписании, потом он «проезжает» мимо твоей остановки и через некоторое время исчезает.

В таких местах прямо боль-боль.

UFO just landed and posted this here

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

Они могут уйти с маршрута в депо. Причем с пассажирами, если им вдруг будет по пути.

Были случаи, когда на картах автобусы отображались, приезжали на остановку в лесу, но в действительности для них это была конечная и ехали они на "обед", о чём сообщала табличка, закрывающая номер. Дак вот однажды проехало три таких автобуса с промежутком в 10 минут, а за ними горящий мусоровоз.

Хотя на мусоровозах тоже есть gps приёмники, их на картах не отображают.

Хотя на мусоровозах тоже есть gps приёмники, их на картах не отображают.

http://transport44.ru/tbo

и ставите галочку «показать мусоровозы».

Была такая ситуация. По карте проехал мимо. Потом, кстати, доехал и все равно проехал мимо остановки, я догнал его на следующей — потом написал в Мосгортранс о том, что он проехал остановку, но меня бортанули.

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

С Мосгортрансом в принципе можно было бы еще пободаться (ситуация была регулярная), но в итоге так вышло, что я перестал теми маршрутами ездить и забил.

Естественно, что Мосгортранс и Яндекс берут данные из одних и тех же источников, так как с вероятностью в 99% данные получает какое нибудь структурное подразделение Дептранса, а только затем и тот, и другой, Мосгортранс, как и Пассажиравтотранс, ответственны только за установку и техническое обеспечение самих приборов, на данные им глубоко плевать, например в Питере за данные отвечает ГКУ "Организатор Перевозок", и только он, в то время как все перевозчики обязаны только лишь оборудовать автобусы приборами, следить за их техническим состоянием да включать при работе. У ОргП есть своя собственная карта ТС, на которой отображается их реальное положение, называется Портал городского транспорта СПб, там указываются чисто те данные, что пришли, безо всякой дополнительной обработки по предсказаниям.

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

В некоторых городах (и их все больше) транспорт работает так: все деньги за билеты собирает мэрия (или специальная госконтора), она же нанимает автобусы у частников и платит им за каждый круг, который проехал автобус по маршруту (по расписанию). Контролируется это все навигатором в автобусе, который постоянно сливает координаты в некую информационную систему, откуда берут данные и городские порталы слежения за автобусами, и всякие «Яндексы» с «Гуглами». Так вот, те частники, что поумнее, покупают нужное количество USB-модемов, втыкают в них симки и с помощью примитивных скриптов начинают гнать через них координаты автобусов на линии, благо протоколы там примитивные. Все это хозяйство стоит тихонько в углу офиса, по картам автобусы ездят, деньги за рейсы платят, а автобусов нет, солярку они не жрут, и платить водителям зарплату не надо. Точнее, автобусы-то по документам есть, но половина из них стала донорами для другой половины, которая еще ездит (совсем убирать автобусы с маршрутов нельзя, народ настучать может).

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

UFO just landed and posted this here

В моём городе (Самара) последнего муниципального перевозчика разорили в 2018, так что так мухлевать бессмысленно.

От принципов оплаты зависит. Если перевозчик получает деньги за билеты, то ему есть смысл ездить честно и даже больше, потому что он соберет себе больше денег. Если все деньги за билеты уходят в мэрию, а мэрия оплачивает пробег автобуса, то мухлевать не только можно, но и нужно. Автобус не ездит (нет расходов), а деньги перевозчик получил (а мэрия их потеряла).

UFO just landed and posted this here

Значит, у вас перевозчики сами собирают деньги.

А у нас (Липецк), как не удивительно, самые приличные (пусть некоторые уже не совсем свежие им лет по пять) и соблюдающие график автобусы - муниципальные. Только обслуживают они не все ходовые маршруты.

UFO just landed and posted this here

Бывает еще что автобус на линии есть а вот на карте его нет, хотя они железно оборудованны передатчиком. Ну я ещё видел маневр со сжиганием топлива когда не очень умный водитель врубает кондей и печку разом.

Бывает еще что автобус на линии есть а вот на карте его нет, хотя они железно оборудованны передатчиком.

Скорее всего, он на обеде. :-) Передатчик на автобусе действительно шлет сигнал всегда, его «ловит» какой-то центр обработки и думает, что с ним делать. Например, автобус опаздывает, дальше у него обед, и в нужное время софт просто убирает его из выдачи с сайта мониторинга. А по факту — автобус-то едет, ему до конечной и фактического обеда еще ехать и ехать...

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

Подскажите, а вы пользуетесь транспортом в таком городе, и если да - имеете ли опыт борьбы с этим явлением? Кажется, тут только видеофиксация может быть выходом из ситуации.

Моя сфера научных интересов вынуждает следить за транспортом в нескольких городах, и не только этой страны. Поэтому многое повидал. :-)

имеете ли опыт борьбы с этим явлением? Кажется, тут только видеофиксация может быть выходом из ситуации.

Смысла бороться нет. Эта ситуация прикрывается различными «организаторами» и «департаментами». Так у нас в городе провели очередную реформу. Народ начал писать жалобы, что транспорта нет, потому что обеспеченность (реальная) автобусами и водителями — около 40%, т. е. из десяти положенных машин на маршруте четыре, и вместо и без того диких интервалов по 20 минут они ездят раз 40 или даже 120. Типовой ответ: «в работе перевозчика выявлены отдельные несущественные недостатки, выдано предписание». И на следующий день — то же самое. А по всяким мониторингам они красиво ездят, даже троллебусы научились ездить без проводов... :-(

Как как.... Водитель забухал, лежит дома, отмокает. А его сын ездит по маршруту га велике с меткой от автобуса, чтобы все думали, что водитель на маршруте. 😎

Автобус мог ехать в гараж без остановок.

Тоже такое наблюдал, иногда прямо вживую в Питере смотрел как сращивались метки разных машрутов и так и перемещались, самого автобуса даже близко не было. Мне кажется могут мудрить и перевозчики. Стоит отметить что тенденция цифровизации маршрутов пошла на спад, пропали даже интерактивные табло со временем прибытия автобуса/трамвая. На старте все равно куда больше предсказуемо.

Вот да. В Смоленске полчаса простоял на остановке, мимо меня по картам "проехали" два нужных мне автобуса. А фактически несчётное количество маршруток. В итоге доехал именно на маршрутках с тремя пересадками по принципу садимся в то что приехало, а дальше смотрим по маршруту где выходить. Успел впритык, было неприятно.

А ещё был случай как в Петербурге "Яндекс Транспорт" (ныне почивший в бозе и переехавший в карты) предложил мне выйти из метро и полчаса идти пешком, при том что Яндекс Карты строили куда более адекватный маршрут.

В приложении 3 минуты ждать, один фантомный так проехал, второй, третий... в итоге реального автобуса аж 40 минут ждал! Опоздал к врачу из-за гребанного Я.транспорта! Знал бы, что нет автобусов, поехал бы на такси!

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

Про прогнозы и заглядывание в будущее хочется сказать. Редко пользуюсь Яндекс.Транспортом, поскольку достоверность того, что показывается на карте - слишком низкая для практического применения. Последний случай - когда я этой зимой полчаса простоял на остановке и мимо меня прошли два нужных мне виртуальных троллейбуса (они даже останавливались на этой остановке, но были невидимы!). Невидимый транспорт - довольно частое явление. Я пару-тройку раз писал в поддержку с указанием точных мест, времени и маршрута, но у них на всё один ответ - что виноваты партнёры.
Помимо невидимого транспорта (в т.ч. подолгу "стоящего" где-то, иногда почему-то под прямым углом к дороге) часты случаи когда, скажем, трамвай прямо на ходу меняет свой номер. Или едет один номер, а в реальности к остановке подъезжает в этот момент трамвай с другим номером.
На мой взгляд, лучше бы пусть там всё дёргалось, но зато можно было бы догадаться, стоит ли стоять на остановке, чем всё красиво и гладко (как сейчас), но недостоверно.
p.s. Питер.

По моему опыту, в Питере значительно лучше работал сервис Google Maps. Зачастую, когда в Яндекс Картах про нужный маршрут было указано «Каждые 15 минут» – на Гугл-картах отображалось положение транспорта по этому же маршруту в реальном времени.

К сожалению, недавно все маршруты ОТ в Google maps работать перестали. Видимо, закончились контракты, либо их отрезали от информации или же они сами закрыли этот функционал в России. Очень печально.

Да не обязательно что бы дергалось. У нас у городского перевозчика в приложении помимо прочего около времени прибытия показываются антены как значок WiFi - это значит что автобус "пингуется" и в этом случае так же показывается опоздание (если есть). Иногда бывает что и не "пингуется", но приходит. Реже что не "пингуется" и не приходит. Отмененные надо сказать показаны отдельно в списке.

Кстати да, все что я написал - это расписание списком для остановки, на карте автобусы не отображаются.

В общем достаточно было бы, что бы на карте можно было понять что автобус онлайн.

В Питере для Я более актуальная проблема, что информация о транспорте не доступна совсем или недоступна по части маршрутов. Фантомы есть, но это редкость в сравнении с отсутствием информации.

лучше бы пусть там всё дёргалось, но зато можно было бы догадаться,

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

UFO just landed and posted this here

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

UFO just landed and posted this here

Мне присылают регулярно такие пуши из яндекс карт. Притом с комичными сообщениями вроде "Ваши отзывы очень популярны, люди хотят знать ваше мнение", а у меня из отзывов - один на самомойку где вместо пены - вода, вместо воска - вода (ну хоть вместо воды - тоже вода, а не воздух), и на забегаловку в парке, где я советовал далеко от туалета не уходить.

А еще мне помнится, сбер одно время присылал пуши в стиле "вы около банкомата, не желаете денег снять?", ВК точно отслеживал местоположение, потому что реклама была ровно по геотаргетингу - у работы и у дома.

UFO just landed and posted this here

Мне на старый телефон приходило вот это вот "Оцените место" - "на днях вы были в бла-бла-бла", причем иногда я реально был, а иногда заходил куда-то рядом. Мне поэтому стало интересно, а людям, которые живут над интим-магазином "Сыграем в очко" кафе или маркетплейсом в цоколе жилого дома такое вообще каждый день приходит??

Оно то ли вообще отсекает конторки в жилых домах, то ли просто по поведению знает где живёт юзер и отсекает явных соседей

У меня такое регулярно. Я прошел мимо какого-то объекта, а Яндекс уже просит оценить, как там. Хотя я даже не останавливался.

Первый шаг в обработке сигнала — определить, по какому маршруту поедет транспорт. Тогда пользователи, нажав на автобус в приложении, увидят траекторию, по которой он движется.

Неужели данные о маршруте не передаются? Насколько помню старый (лет десять назад) сервис автобусного парка в своем городе, там даже госномера каждого автобуса были видны, не то что его маршрут. В чем смысл получать отправлять координаты каких-то объектов без подробностей, что это за объекты? Если из одной конечной много маршрутов отправляется, это же просто гадание получится. То ли тут описано как-то не так, то ли я чего-то не понял.

Поставщики данных могут быть разными. Кто-то даёт избыток информации, кто-то даёт самый минимум.

UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here
UFO just landed and posted this here

Я работал с reverse engineered airtag'ом (точнее собирал сам), уверяю, обновление местоположения там просто отвратительное. Текущие поставщики данных (gps в автобусе) гораздо надёжнее.

UFO just landed and posted this here

Безусловно, все, что вы предлагаете хорошо вкупе. Но это все выливается в деньги, за которые легче договориться с Мосгортрансом и установить хорошие трекеры, которые будут получать местоположение с высокой точностью.

Теоретически можно с дорожных камер изображения обрабатывать, но это может быть сложно по разным причинам.

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

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

Скажите, а вы хотя бы делите поставщиков на те, для которых всё просто и понятно, и те, для которых нужны эвристики? Просто в текущем виде это звучит максимально дико. О какой надёжности может идти речь вблизи депо и автопарков, если вы получаете только координаты и время? На решение такой задачи можно угробить десятки алгоритмов машинного обучения и всё равно сложно угадать, кто только что выехал из депо

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

Один и тот же автобус может в разные дни ездить по разным маршрутам, поэтому привязка к гос номеру не поможет

Может, конечно. Я не об этом, а о том, что если передается госномер - маршрут тоже можно передавать. Но я там уже получил ответ, почему не передают - иногда автобусному парку все это просто лень делать.

Первый шаг в обработке сигнала — определить, по какому маршруту поедет транспорт. 

Мне кажется, эта проблема должна решаться связкой передатчика с маршрутом. Или в передаваемых данных должен быть номер маршрута. Всё остальное выглядит костылями.

 Следующий шаг — оценить скорость автобуса. Так мы сможем предсказать, когда он приедет на каждую остановку на маршруте.

Опять же - а не проще воспользоваться статистическими данными и сопоставить их с пробками, чем считать что-то для автобуса? Есть максимальная скорость автобуса, есть скорость потока, берем минимальное значение, добавляем время на остановки из статистики.

И пара вопросов. Как обрабатывается прогноз для транспорта, который ещё не вышел на линию? Я стою на второй остановке маршрута, и мне надо знать, сколько ждать автобус. Я увижу прогноз для него только при выходе на линию или раньше?

Нормально ли обрабатываются кольцевые маршруты? Видел реализацию, где кольцевой был маршрутом от точки А через Б, В, Г ... до точки А, и когда ты стоишь на точке Б - прогноз прибытия отображался только при "выходе на маршрут" - проходе точки А.

UFO just landed and posted this here
В итоге за пару лет научился предсказывать время прихода транспорта точнее Яндекса со всей его бигдатой.

Ну так у вас нейронка ого-го-го сколько лет, поди, прогнозировать обучалась! :))

Как обрабатывается прогноз для транспорта, который ещё не вышел на линию?

По моим наблюдениям, до момента выхода на линию отображается просто расписание, которое заранее загружено. Но оно, конечно, не то, чтобы соблюдается в городе.

Опять же - а не проще воспользоваться статистическими данными и сопоставить их с пробками, чем считать что-то для автобуса?

Проще, но точность предсказания будет ниже.

Мне кажется, эта проблема должна решаться связкой передатчика с маршрутом. Или в передаваемых данных должен быть номер маршрута. Всё остальное выглядит костылями.

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

на самом деле спекулятивное отображение транспорта очень кривое - на экране что-то одно стремительно мимо тебя пролетает, другое вроде как стоит на светофоре. на самом же деле одному ещё два квартала ехать, а другого вообще нет

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

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

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

Прям погрешность была типа минута между метро и приехавшим автобусом.

Я как-то считал вечером, когда половина автобусов уже не ходила. И у меня маршрут выглядел так - три минуты пешком до остановки, десять минут на автобусе А до остановки такой-то, восемь часов ожидания (до утра, когда автобус Б выйдет на линию), пятнадцать минут на автобусе Б и вы на месте. Формально верно, а по сути издевательство.

Есть расписание автобусов. Есть автобусы - призраки, т.е. те, которые едут, но не дают отметок на карте. Иногда выходишь на остановку к расписанию (нет отметки автобуса) и возможны варианты:

а) приедет по расписанию автобус - призрак (сломался GPS или что-то небольшое у партнера яндекса);

б) по расписанию никто не приедет (сломался автобус или водитель).

Иногда когда "много чего" поломалось вижу что отметки есть (мало) и много автобус призраков, но при этом яндекс пишет, что что-то пошло не так у партнеров (сломалось "что-то большое у партнера" - раз об этом явно оповестили), но мы чиним.

По п. а) и б) - это случай, когда яндекс не пишет, что "что-то пошло не так" (т.е. вроде как "все хорошо"), конкретно маршрут 281 (москва, ясенево).

Как вариант предусмотреть данные от пассажиров: еду на "автобусе-призраке" номер такой -то с пометкой "это не точно". GPS с телефона пассажира снимать и обрабатывать или просто передавать на карту (как доп инфо).

Как вариант предусмотреть данные от пассажиров

С ходу вижу тут проблему достоверности данных. Сразу вспомнил историю про мужика, который сложил пачку телефонов в тележку, включил на них навигатор и прошёлся по дороге. В итоге карточные приложения решили, что там мёртвая пробка, т.к. "вон сколько водителей (а точнее - их телефонов) так медленно едут".

Кажется, любую проблему можно решить при должном усилии (и какой-то ценой, соответственно), но вопрос - настолько ли эта проблема масштабна для всего сервиса?

А откуда берутся координаты автобусов? К кому за ними обращаться?

В некотором смысле плюсую. В цивилизованном мире данные о положениях транспорта публикуют в GTFS формате https://gtfs.org/

В городе или создается автоматизированная система оплаты проезда, откуда данные о транспорте можно передавать куда-то еще. Или на общественном транспорте устанавливают аппаратуру спутниковой навигации транспорта для диспетчеризации. Данные оттуда поступают в диспетчерский центр, откуда возможно передать еще куда-то.
Есть разработчики таких систем, которые внедрили во многих городах такие системы. Один из крупнейших — НПП «Транснавигация» www.transnavi.ru
Они получают данные от внедренных и обслуживаемых ими систем, и эти данные у них можно покупать.
У города купить данные малореально — там нет разработчиков или кого-то еще кто бы поддерживал передачу данных.

все реально,но просто нет общих правил.

На днях один чиновник сказал что Яндекс нарушает — "нельзя показывать реальное положение общественного транспорта на маршруте и время прибытия на остановку из-за введенного в регионе "желтого" уровня опасности ".

Ну да, и карты в приложениях тоже нельзя показывать, это ж находка для шпиона. Только бумажные, правильно скорректированные.

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

UFO just landed and posted this here

В комментариях уже высказывалась боль про фантомные автобусы. Ловите идею: добавить кнопку "еду в этом автобусе". Даже если из ста пассажиров трое нажмут то уже:

1 повысится точность геопозиции транспорта и как следствие общее качество услуги

2 при нуле пассажиров есть повод думать что транспорт фантомный

3 возможность быстрее строить маршруты с пересадками (на основе прошлых поездок)

Можно и в фоне проверять геолокацию не спрашивая юзера (она по факту и так проверяется и юзера никто не спрашивает)

UFO just landed and posted this here

Присоединяюсь к вопросу о фантомных автобусах. В Тбилиси тоже из наблюдаю.

В одном уездном городе N (областной центр в центре РФ) водители коммерческих перевозчиков сознательно иногда отрубают транспондер. То есть автобуса в приложении не видно, но он есть и приезжает примерно по графику. И это не неполадки, на обратном пути тот же автобус может быть уже виден на карте. Думаю, что у водителей тоже есть какая-то схема, может она на заработок влияет… С муниципальными автобусами такого никогда не замечал.

Возможно, конкурентная борьба. Зная положение конкурента, можно держаться в паре минут впереди него и собирать всех пассажиров.

В Питере сейчас почти все автобусы муниципальные, однако периодически на некоторых транспондер не передаёт информацию. Бывают еще провалы в геолокации из за высоких домов.

"Транспортом" пользуюсь ежедневно, привирает, конечно, часто — не тот номер, фантомный транспорт или наоборот, раз — и появился на маршруте. Но в целом ± пользоваться можно, только если не торопишься.
Мелочь, но раздражает — регулярно переезжающая кнопка:


на моей памяти уже в третий раз

image


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

UFO just landed and posted this here

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

UFO just landed and posted this here

А ещё отключить этот мусор с такси, самокатами и прочим, кому это не надо. В лесу или горах открываешь карту, а там самокаты.

В лесу или горах пользоваться якартами вообще довольно странно, они не про это. Там рулят всякие Локусы-Османды-МапсМи и прочие штуки для оффлайновой работы с OSM. Но отключить неиспользуемое было бы приятно, конечно. Я вот не пользуюсь каршерингом и самокатами, и с удовольствием отключил бы их, если б была такая возможность.

Кровати, скрипя, переезжали на новые места.

Выше уже говорили вскользь, спрошу прямо: а кто-то знает, куда делось отображение транспорта в Google Maps? Варианта два: Гугл сам отказался от этого рынка или его отрезали от данных. Соотв, вариант 2а - безопасность, 2б - конкуренция.

Кто-нибудь поделится инсайдами?

UFO just landed and posted this here

Оно разве было в России? По моему только расписание и номера маршрутов с остановками были.

Было! И не только маршруты-расписание, но и live-режим, по которому я и скучаю.

Вы как многие забывать начали русский язык? Чем не устраивает слово "текущий" вместо "реалтайм"? Глаза режет ваш текст

Слово "текущий" тоже опасное. Я однажды спросонья не переключился с английского и в деловой переписке, подразумевая "current partner" написал что-то типа "мои текущие китаяночки". Уж лучше бы написал "кэрэнт"...

Льва Толстого тогда лучше не пробуйте читать никогда. Очень быстро глаза вытекут.

опоздали. уже прочел и Каренину, и ВиМ. про Л.Т. вы что-то навыдумывали

Ваша система - дерьмо. Сколько раз были сообщения, что стоишь зимой на остановке, а мимо проезжает невидимый автобус. Это прямые риски для здоровья, например, особенно для пожилых или детей.

Подозреваю преступный сговор яндекса с ...

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

Мне кажется, это от города зависит.

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

у меня по статистике хоть и редко пользуюсь вменяемая весьма точность и вполне устраивает. а про фантомы - баги и человеческий фактор нигде не исключены. с мтз если есть выше 95% точности - значит система не зря создана, а по мне эта точность или близкая есть в среднем.

В Питере по большей части всё чётко было. Настолько чётко, что я из дома выходил ровно к подъезжающему трамваю. С огрехами конечно работает, но 9 из 10 случаев довольно точно.

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

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

В этом одна из проблем. Если в городе закрывают дорогу на ремонт и пускают транспорт в объезд — метки в Картах пару недель утыкаются в невидимую стену и топчутся там. То есть у вас даже аларма нет "в этом городе транспорт уже вторую неделю ходит по альтернативному маршруту — наверное, надо его исправить в нашем ПО". Потом, наконец, исправляется, всё хорошо, потом дорогу дочинили и открыли — а транспорт в Картах ещё неделю норовит ехать в объезд. Причём сами же карты показывают на участке дороги "закрыто на ремонт до...", но совместить эти 2 события у вас не догадались.

Да, с изменяющимися маршрутами вообще беда. Не умеет в них яндекс. Я понимаю, исходя из пессимистичного варианта "есть только геометка раз в минуту, маршрут не указан" и нормального (когда метки летят потоком, и в каждой есть помимо координат всё остальное, включая номер маршрута и гос. номер автобуса) наклёвывается компромисс "делаем вид, что метки редкие и никаких данных нет. Маршрут угадываем". И тут очевидно, если метка вне всех маршрутов - просто её удалить как мусорную.

Но задача то практическая, а не сугубо айтишная! Удалить данные можно ВСЕГДА; в конце концов можно галочку для "сырых геометок" завести.

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

А ещё весело в пробках. Ниже реальный пример. Еду в автобусе 141. Где моя геометка, а где геометка автобуса?

UFO just landed and posted this here

Пользуюсь 2GIS. Не могу сказать, что намного точнее, данные, видимо, те же самые. Но гораздо понятнее на интерфейсе. Фантомного транспорта не видал, хотя, наверное, он есть. Транспорт, не отмеченный на карте, встречается, так же встречается мерцающий транспорт. Скорее всего, это как раз сглаживание и прогнозинг не такие агрессивные.
По ощущениям на Яндексе гораздо больше автобусов на маршруте за счёт фантомов.

Не по содержанию статьи.
Просто функция отображения транспорта - это космически удобно. Лучи добра и восхищения всем причастным!

Наконец то можно задать вопрос, который мечтал задать, да не было компетентного человека в поле зрения. Почему на картах транспорт отображается с большим упреждением? Например: автобус движется и может на карте уже проехать до километра, хотя по факту, он даже не доехал до того места где физически стоишь со смартфоном. С чем это связано? Такая большая погрешность? Вернулся, перечитал. Понял то же самое, что и после первого и второго прочитывания. Явно не хватает какого то промежуточного инструмента для определения фактического определения транспорта. Может по сотовым вышкам, что ли.

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

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

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

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

А какой источник данных?

Используется ли GTFS в каком-либо виде?

Уже много чего было высказано и предложено, вставлю свои пять копеек. Меня почти всегда устраивает работа прогноза транспорта (сейчас я понимаю, что это просто чудо, что мне не нужно было стоять около депо), но поймите такую вещь: ну не могу я телепортироваться из своего текущего местоположения к автобусной остановке! Из-за этого при использовании Я.Карт приходится регулярно перезапускать построение маршрута от текущего местоположения

Т.е. датчики на автобусах не отправляют ничего кроме времени и координат? Я думал, что сами датчики сообщают и о маршруте, и о номере автобуса... Да и делают это почаще, чем раз в минуту...

1) А им больше и не надо, все это ставится для контроля наличия автобуса на линии. Раньше вообще по рации с диспетчером связывались при проезде определенных остановок, и «координаты» проверялись, грубо говоря, раз в час.

2) А как датчик узнает о маршруте? Автобус за сутки может на нескольких маршрутах по расписанию работать...

Ну мне кажется, что перенастроить датчики на более частую отправку легче, чем пилить такой сложный ИИ.

А датчик можно было бы связать с другими системами автобуса. Информатор и табло, например, всё равно связываются с маршрутом

В этой стране по законодательству должен быть девайс для мониторинга. Вот его и ставят. Все информаторы/табло/реклама — это другой девайс. Система оплаты, отслеживающая остановки на пригороде, — это третий девайс. Между собой никак не связаны, ибо разные производители, разные техзадания, и прочее, и прочее, и прочее. Оно, конечно, лучше поставить одно что-то умное, но все тут же упрется в пункт 1, который массово растиражирован по стране. Ну и не все города смогут поставить такой супернаворочанный девайс — дорого.

Здесь рассказываю, какие данные передаются в Питере. Там много интересного

Используется ли для предсказания времени


  1. Текущая дорожная ситуация (те же пробки яндекса)?
  2. Время прохождения участка предыдущим автобусом этого маршрута?
  3. Время прохождения участка последним автобусом другого маршрута?

Пассажирам понятно, штука удобная. Спасибо, было интересно почитать про то как все это работает.

А сами водители или парк автобусный вообще хоть как-то на всю эту геолокацию обращают внимание? А то регулярно вижу ситуации когда по 2-3 автобуса одного номера просто друг за другом ездят вплотную а потом пустота на маршруте и никакой интервал движения и близко не соблюдается.

А расскажите пожалуйста, как специалист, откуда и как на картах появляются 'автобусы-призраки' - стою на остановке, жду троллейбус, по картам он едет, вот уже на предыдущей остановке, еще немного и карты рисуют что он едет мимо меня... в реале, ни в этот момент ни ранее, ни еще втечение не менее 10 минут никаких троллейбусов нет... как объяснить сей феномен?! (По карте за это время он дальше преспокойно 'едет')

1) В систему изначально отдается ложь о перемещениях транспорта. Т. е. машины нет, а кто-то системе говорит, что он едет.

2) Система показывает плановые перемещения, а машина по факту сломана или на другом маршруте.

Почему Яндекс полагается на низкокачественные устройства партнеров, а не разрабатывает свои?
Постоянно сталкиваюсь с изменением маршрута во время движения. Водитель не может повлиять на это из-за ограничений в установленном у него устройстве.

Потому что такие устройства сейчас по закону должны быть в каждом автобусе. Другие никто ставить не будет, потому что это:
1) противозаконно;
2) надо много денег на переоборудование;
3) начнут всплывать интересные вещи, которые сейчас хорошо скрываются.

О, мне это знакомо. Занимался раньше транспортом в Челябинске. За все города не скажу, но у нас сырые данные можно взять здесь - https://www.stops.lt/chelyabinsk/readdata.php

В городе-миллионнике работает не так много транспорта. 150 автобусов, 100 трамваев, 70 троллейбусов. Соответственно, с получением и обработкой такого объёма информации легко справляется старый двухядерник на Python без всякой загрузки.

В основном мне это было нужно чтобы опровергнуть ложь правительства региона о том, что благодаря их мерам резко повысится скорость общественного транспорта. Нет, скорость не хочет расти пока проблема с сетью дорог не решается комплексно, что и было неоднократно доказано на моём канале - https://t.me/t_bus/2095 В этом посте динамически рассчитывается средняя скорость движения транспорта и его интервал. Кстати, данных об интервале движения на маршруте достаточно для среднего пользователя для понимания того, когда придёт транспорт. Зачем следить за определённой машиной, если ты знаешь, что в среднем на этом маршруте транспорт прибудет в течении 5 или 12 минут? Ну а точные координаты машины, получаемые через системы GPS Яндекс заменит на расчётные внеся свою погрешность. Тогда уже проще смотреть неискажённые данные с местного портала - https://www.stops.lt/chelyabinsk/#bus/map

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

В результате мы имеем инструмент, работающий в любом городе, но несколько искажающий информацию.

Спасибо за вашу работу и описание практик.

Sign up to leave a comment.