Комментарии 20
Отличная статья!
Поддерживаю. Было интересно читать. Спасибо.
разработчики не понимают, что самая лучшая подача была в гугл картах — там просто показывали последнее местоположение автобуса, и время, когда оно было получено... на основе чего человек сам мог понять, где сейчас находится автобус
Зачем перекладывать на человека то, что может сделать компьютер? Он явно посчитает это лучше, учитывая все доступные ему данные.
В данном случае дилемма формулируется иначе: "Самообман или лучше пусть компьютер возьмёт на себя издержки по созданию близких к правде, но заведомо неверных данных".
Самообман это в природе человека, а генерацию фикции можно рассмотреть с точки зрения первого закона робототехники - поэтому пусть Робототехнический Суд решает.
Здравствуйте. Как говорил статистик Джордж Бокс: «В сущности, все модели неправильны, но некоторые полезны». В целом в системе отображения автобусов на карте есть много мест, где что-то может пойти не так. Низкая точность GPS на записывающем устройстве, задержки, ошибки притяжки, неточность прогноза и т. д. Мы стремимся минимизировать эти ошибки и показать максимально правдоподобную картину. В отличие от одного отдельного человека у нас есть преимущество в виде больших массивов данных. Отдельный человек просто не обладает достаточным количеством информации, чтобы в любой точке на карте определить текущую скорость и двигать автобус с ней. Не знает, сколько автобус обычно стоит на остановке, чтобы внести поправки. Тут та же ситуация, как с пробками на дорогах. Как бы хорошо отдельный человек ни знал город, он просто не может знать, с какой скоростью двигаются машины на всех дорогах города в данную конкретную минуту чтобы проложить оптимальный маршрут и предсказать время прибытия.
Мне, как пользователю, куда важнее не где автобус едет сейчас, а когда он будет на нужной мне остановке. Причём не среднее время, а минимальное, чтобы я на него точно не опоздал.
Здравствуйте. Предсказание времени прибытия автобуса на остановки это отдельная функциональность и она у нас тоже есть. За нее отвечает отдельная система.
Зачем вы мне рассказываете про "отдельные системы"? Меня, как пользователя, всё это не интересует. Я вам рассказал пользовательскую историю, которая у вас не продумана вообще. Ну и вот ещё одна: когда я еду в конкретном автобусе, мне важно знать максимальное время, когда я буду в нужной точке, чтобы понимать успеваю ли, и если нет, то на сколько опаздываю. Обратите внимание, что в одном случае меня интересует минимальное время, а в другом - максимальное, но никак не предсказание наиболее вероятного.
опять перемудрили
Вот откуда появляются фейковые автобусы, которые по карте проезжают, а по факту их нет.
Заключение прекрасно.
стали замедлять автобусы перед остановками
Автобусы не всегда останавливаются на остановках. К тому же в вечернее время они обычно ездят быстрее - это тоже можно попробовать как-то учесть.
И почему вечером большинство автобусов внезапно исчезает с карты?
Всегда, у экспрессов просто маршрут имеет меньше остановок, типо как е12/е10. Но время сколько остановился, и механизм открытия дверей (нужно ли нажать кнопку) меняется.
Здравствуйте. Действительно, автобусы не всегда останавливаются, а если останавливаются, то тратят на это разное время в зависимости от количества пассажиров, расписания и, возможно, других факторов. Проблема в том, что данные обновляются редко, и мы видим, например, что он в предыдущей известной позиции еще не доехал, а в текущей уже находится на остановке или за ней. Поэтому приходится, опираясь на метрику, описанную в статье, подбирать лучшее время остановки, чтобы угадывать в большинстве случаев. Мы специально измеряли с секундомером время остановки, и даже у одного и того же автобуса оно разное. Будем думать, как можно сделать это точнее. По поводу разной скорости в разное время: это частично уже учитывается. Но даже если ошибаемся и понимаем, что отстали от реального местоположения или перегнали его, пин ускорится или замедлится, чтобы догнать реальный автобус. По поводу пропажи автобусов: это, как правило, означает, что устройство, которое фиксирует и отправляет координаты на автобусе, отключили, и нам перестали приходить координаты, поэтому убираем его с карты.
Мы специально измеряли с секундомером время остановки, и даже у одного и того же автобуса оно разное.
Оно, конечно, разное. Невозможно предсказать, остановится автобус или нет и сколько будет стоять. Или возможно? Что вам нужно - так это эксперт в предметной области, который знает, как себя ведут автобусы водители.
Напр., если посчитать мин. и макс. скорость автобуса на определённых участках дороги до остановки, и сравнить с текущей скоростью (пусть даже неточной), то может оказаться, что близость текущей к мин. и макс. коррелирует со временем стояния. И это всего одна простая гипотеза, которую можно вот так сходу придумать.
Для оценки точности можно сидеть в автобусе и наблюдать, вместо ожидания на остановке, как вариант. Я так ваш функционал тестил :)
Спасибо за статью
Интересно было бы еще узнать о работе и об алгоритмах)
Всё отлично! Ваш труд очень важен! Пользуюсь только общественным транспортом.
Хорошо бы мне, как пользователю, знать с какой скоростью обновляется информация реальная информация у конкретного автобуса (Допустим, если я выбираю отдельный автобус на карте, хорошо бы отмечать пунктиром прогноз) Вы говорите, что этот период может быть полторы минуты (?)
И ещё, как можно измерять десятые доли секунд ы у такого события, как прибытие автобуса?)
Здравствуйте. Спасибо за тёплые слова. Период обновления зависит от поставщика данных. Мы, конечно, просим отправлять к нам данные как можно чаще, но не всегда у поставщиков есть такая возможность. В некоторых городах данные обновляются очень редко. Будем думать над тем, как выбрать только те данные, которые могут приносить пользу пользователям.
По поводу более подробного отображения — спасибо за идею, передам её нашим менеджерам. Что касается десятых долей секунд — они появляются после расчёта средней метрики по всем измерениям. Сами измерения проводятся в секундах.
Магия простоты: как мы улучшили отображение общественного транспорта на карте