Comments 58
Меня больше интересует вопрос, каким образом маршрут считается быстрым, если я, например, в определенной точке маршрута окажусь гораздо позже, чем данный момент, и ситуация к моменту моего появления там может сильно измениться.
Всегда считал странным, что построение маршрута оценивается по текущей обстановке на всем протяжении пути. По началу я понимал, что других данных то и нет, кроме как "текущее состояние" дорог. Но со зрелостью ресурса все более и более дожен учитываться факт предсказания ситуации на дороге. Например, через 1.5 часа по пути следования возникнет жуткая пробка (она всегда, к примеру, в этом месте там возникает в определенное время). Почему не используется такой механизм? Построение маршрутов с предсказанием могло бы этот сервис сделать гораздо более полезным, особенно в больших городах.
Я понимаю, что предсказание - дело ненадежное. Предсказание не должно быть основой в алгоритме, но все же, должно иметь определенный процент при выборе того или иного маршрута
Почему не используется такой механизм?
А он точно не используется? Данные-то статистические у сервиса есть(или были?). Помню что когда-то на ПК-шных картах(в браузере) даже был переключатель позволяющий посмотреть предсказание пробочной обстановки(и время в маршруте) не только с выбором времени старта, но и дня недели.
Точно используется. По моим наблюдениям время финиша предсказывается очень хорошо. Исключения - редкие коллапсу, которые тяжело предсказать.
Спасибо. Многое сделано, чтобы хорошо прогнозировать в среднем. Сейчас в планах постараться "полечить" как раз редкие коллапсы.
В целом всё хорошо. Но предлагаю пофиксить ситуацию, когда время меняется вправо-влево на 1 минуту каждую пару секунд. Например, сделайте так, чтобы коррекция отображаемого времени происходила не чаще 1 раз в минуту и только по стабильному изменению из расчёта. Т.е. не рассчитал и показал, а рассчитал и, если новые данные стабильны 1 минуту, показал.
Похожий механизм есть, хотя это работает не совсем так, как вы описываете. Мы пытаемся максимально точно сделать прогноз для финиша, но не для промежуточных точек.
Если интересно, можете видео с рассказом, как в яндексе устроен прогноз времени в пути. Прошло уже 3 года, поэтому каких-то нововведений не будет, но общая идея передается достаточно точно.
т.е. маршрут прокладывается по текущей свободности дорог, а вычисляется время конечной точки с учетом предсказаний?
Прокладывается N разнообразных маршрутов по текущей загруженности (и некоторой беспробочной загруженности), а потом происходит оценка времени в пути моделью
Но такой подход в принципе не позволяет увидеть действительно оптимальный маршрут с учетом пробок. Мы видим лишь некоторую флуктуацию вариантов вокруг текущей загруженности. Например, если все они проходят через участок дороги, который к моменту подъезда гарантированно в состоянии глубокого затора, хотя вероятно есть более лучшее решение, то такой поиск мягко говоря малополезен. Сам езжу по Москве, периодически встреваю с пониманием вопроса, что можно было объехать. В некотором смысле помогает перестройка маршрута по ходу следования, но участие водителя в этих процессах небезопасно.
в принципе не позволяет увидеть действительно оптимальный маршрут с учетом пробок.
Вы правы, что такой подход не дает гарантии, что найдется реально самый быстрый маршрут с учетом текущей дорожной ситуации.
Но с учетом того, что:
- между точками A и B не так много разумных способов проехать
- когда генерируется очередная альтернатива (из этих N) это происходит уже с учетом ML модели
это достаточно хороший способ получить желаемое. Особенно в контексте больших ошибок, а не оптимизации условно 30 секунд объезда.
Были работы в сторону честной time dependent дейкстры, но на тот момент по ряду причин не получилось. Думаю, мы к этому еще вернемся.
В некотором смысле помогает перестройка маршрута по ходу следования, но участие водителя в этих процессах небезопасно.
Все так, альтернативы в пути - способ сгладить проблему, но не желаемое целевое состояние
Немного в сторону от темы.
Я бы заменил в названии маршрутов "оптимальный" на "эргономичный" (ну или какой-нибудь менее пафосный синоним):
Точнее и лаконичнее отражает суть (если я правильно понял изложенное в статье).
"Оптимальный" у людей с техническим складом ума вызывает доп.вопрос "по какому критерию?", скорее всего с ноткой раздражения. Т.к. требует уточнения/запоминания ответа на этот вопрос, и, скорее всего, не будет иметь честного ответа, поскольку настройки периодически меняются, как следует из статьи.
Подозреваю что у большинства пользователей "оптимальный" вызывает ассоциации с "выгодное (продавцу) предложение" и прочим маркетинговым буллщитом, в том числе очень небезосновательно персонифицированно к данному бренду.
Если вдруг это не сделано, то в доп.настройках дать возможность пользователю выбирать на какой позиции какой из вариантов отображать. Меня бы раздражало когда за меня это решают, а тем более меняют по каким-то своим причинам (как виндовс с панелью задач).
1) Еще 100500 лет назад надо было наряду с галочкой "избегать платных дорог" добавить галочку избегать зон без GPS. Ну и да, я тоже из тех, что выбирает маршрут "попрямее" вместо побыстрее, ибо подвеска хрустальная... надо беречь... а в "попрямее" обычно дороги более крупные, целее и без лежачих.
2) Возможно мой кейс не самый распространённый... но можно что-то думать с дорогами разной степени платности. Очевидно, что я никогда в жизни в здравом уме не поеду по проспекту Багратиона, а маршрут-то строится... и галочка бы его отключила, но дальше начинается дешманская можайка, а по ней уже вполне нормально ехать платно.
Спасибо что хоть сделали цену проезда
1) Идея про зоны GPS и правда обсуждалась. Проблема в том, что в большинстве случаев все разумные маршруты проходят через зоны с нестабильным GPS (либо наоборот все не проходят). Там, конечно, могут быть градации того, насколько все плохо, но формально это уже не кнопка про "запрет" по аналогии с платными дорогами.
2) Идея интересная, передал в продуктовую команду. Спасибо!
не знаю насколько эта информация попадает под какие-нить секретные грифы... но можно было бы хотя бы просто вывести heatmap с зонами в виде слоя для оценки проблемности места, куда хочешь приехать.
Допустим, такая карта появилась в открытом доступе. И на ней видно все зоны с нестабильным GPS. Тогда этими зонами сразу начнут пользоваться как раз те, из-за кого в принципе и появилась нестабильность GPS. И к автору такой публичной карты будут серьёзные (и вполне обоснованные) претензии со стороны МО.
Не знаю, работает ли это сейчас, но в какой-то момент мне попадались в выдаче маршруты с пометкой «Плохо работает GPS» или что-то такое.
Подскажите, а в отделе Яндекс-карт нет идеи о разработке возможности добавления опции оптимального расчёта не по двум, а по трём и более точкам?
ну вот за это большой плюс, реально иногда навигаторы алгоритмически строят правильные маршруты, но с точки зрения реальной поездки идиотские
например, у меня в городе есть пара мест где перекресток без светофора, и ты поворачиваешь налево с второстепенной маленькой улицы на многополосную магистраль. с точки зрения алгоритма все ок, а по факту можно ждать поток машин и 5 и 10 минут, пока не удасться вклиниться
еще алгоритмы не объезжают квадрат из частного сектора по нормальным дорогам, а любят по диагонали строить маршрут насквозь. формально дорога там есть, а на практике ползешь 10 км/ч, молясь чтобы под колеса не ломанулись дети или собаки.
Ещё бы опцию "перестать меня распихивать на второстепенные дублёры и деревенские улочки". А то едешь в пробке: "найден более быстрый маршрут", ткнешь не посмотрев, и навигатор тебя засадит на лишнюю часовую пробку, которую сам же только что и создал.
Все делается для таксистов. Чтобы подольше поездка продолжалась
А зачем им поездка подольше? Им цена по прогнозу сформировалась и всё на этом, дальше пробка или не пробка - это проблемы таксиста.
Так ведь тариф же фиксированный. Если едешь на 10-15 минут дольше, то оплата остаётся та же, но теперь есть недовольный водитель и недовольный пассажир.
Так не работает. За простой в пробке же все равно берут?
Сколько пользуюсь такси - никогда цена в процессе поездки не менялась. В этом же и смысл фикспрайса. Иначе бы таксисты намеренно ездили медленно =)
Вы просто в пробку/занос не попадали
А вы попадали? Расскажите как это было, что цена во время поездки изменилась, и как это выглядело в приложении. Водители как раз жалуются, что порой прогноз не совпал (например когда глухая пробка, это навигатор видит как стоячие машины и не понимает как ее размечать), вместо 10 минут ехали 40 минут, но денег таксист получил как за 10.
Вы про какое такси говорите? Если про общепринятый сервис Яндекс.Такси, то никаких доплат за пробки и т.д. не бывает и быть не может. Цена поездки фиксируется в момент заказа. Разумеется, в пик или плохую погоду цена растёт, но вы в любом случае видите её до заказа. Если с вас в частном порядке потребовали доплату - вы можете жаловаться в Яндекс (типичный ответ - извинения и промокод на 100 рублей).
Я один раз проехался за сумму в 4 раза большую изначальной и на полтора часа дольше чем думал, хорошо хоть опоздание было не критичным, встряли в пробку в неудобном месте, так что добраться к метро пёхом был не вариант. А тариф типа был фиксированный.
Таксист от обычного водителя отличается. Ну точнее есть не-Я таксисты которые пользуются навигатором, но как понимаю с болью.
Я так раз нажал, побыстрее, не глядя завело в поле, где лужи по колено. Еще как на зло зарядка сгорела и телефон сел, еле выехал.
Теперь без просмотра всего маршрута не нажимаю, этот "быстрее".
"Найден более быстрый не для тебя маршрут". Да, стоит внимательно смотреть, но часто кроилово ведет к попадалову.
Бесит то что можно либо отключить все платные дороги, либо все оставить.
Хочется создать белый/черный списки платных дорог
А по теме, есть теория о том что среднее время в пути для всех участников движения будет минимальным только тогда, когда потоки распределяются в интересах всей системы, а не индивидуальных водителей.
Яндекс, как доминирующая система на рынке, мог бы думать о этом
Ну хотя бы оно само должно понимать, когда платная дорога бесплатная. Или спрашивать, ты готов заплатить такую то сумму?
Яндекс, как доминирующая система на рынке, мог бы думать о этом
Заметил, что Яндекс перестал предлагать объехать пробку по дворам и каким-то проездам. Подозреваю, что это эвристика сверху
Каких-то эвристик сверху скорее нет (если это не просто учет правил ПДД). Поэтому вы могли заметить одни из наших улучшений либо в ранжировании, либо в прогнозе времени в пути.
Мне кажется, объехать пробку по дворам - это вообще не про навигатор. Местные таксисты, газельеры и т.д. обычно знают такие возможности, которых нет на картах, и объезжают, но это не значит, что такие неофициальные тропы с сомнительной пропускной способностью (и не всегда законные по ПДД) должны предлагаться.
Под эвристикой сверху вы понимаете городские власти?
Я у себя на районе так же заметил такое место, когда Яндекс ведёт не по официальному(проезд автомобилей не запрещён и это не дворы) проезду, а делает скобку в объезд по более оживлённой улице удлиняя маршрут и в добавок выводит на более загруженный не регулируемый T - образный перекрёсток, такой-же как и при проезде более короткой дорогой.
Так вот говорят что это сделали из за жалоб местных жителей, знаки не ставили, но типа с Яндексом поработали, что бы не строил там маршруты, так что там ездят только местные кто знает дорогу без навигатора.
Звучит невероятно. Обычно маршрут строится через оживлённую улицу по той причине, что там банально быстрее, т.к. не зря же эта улица оживлённая.
Можете, пожалуйста, показать пример места, где Навигатор предлагает такой странный объезд сделать?
Про списки платных дорог идея интересная, спасибо
Что касается управления потоком, то вы правильно пишите, что польза будет для системы в среднем. А вот отдельные люди при этом могут сильно пострадать.
Я просто оставлю это здесь
Скрытый текст

Уже очень давно первым выдаётся не самый быстрый маршрут. Более того, он подставляется автоматом при нажатии кнопки «домой» на карплэе. Выбор вариантов при этом не выполняется
На карплее вообще много чего не работает.
Хочешь заехать на заправку по пути? Нет. Хочешь ткнуть точку, чтобы через неё построить маршрут? Нет. Хочешь работать с избранным? Нет. Навигация по шагам без GPS? Нет.
Очень любит навигатор разворачивать, прямо мания какая-то. И еще посылать на дублер, чтобы потом повернуть налево через 4 полосы. А комбо это дублер, 4 полосы и "развернитесь"
Ваши друзья из Дубль-ГИС уже учитывают тип ТС "мотоцикл" (который может быстрее пробираться по пробкам), когда это у вас появится?
Когда появится учет ЖД переездов при расчетах маршрутов, особенно для такси?
Когда ML начнет понимать, что пользователь не хочет ехать по предложенному маршруту, не ушел, а передумал и надо тихо перестроить, а не задалбывать разворотами? А если пользователь решил подъехать к магазину?
Как насчет предложения выбора платной дороги даже если она дольше по расстоянию, но банально комфортнее и со значительно меньшим риском пробок? Ну как минимум возможностью выбра вручную не устанавливая точку посреди дороги?
И ещё немного раздражает, что навигатор постоянно предлагает перестроить маршрут на платную дорогу с сомнительной экономией времени.
Ну, я обычно перед поездкой строю маршрут и прикидываю, готов ли я заплатить или могу подольше поехать по бесплатной.
И в такие моменты не хочется видеть, что появился платный маршрут на 5 минут быстрее.
Но если по дороге случилось дтп и платный становится сильно быстрее, то это хотелось бы видеть



Не «как быстрее», а «как лучше»: новое ML-ранжирование маршрутов в Яндекс Картах