Восемь минут до магазина, обещает телефон, и синяя линия уверенно идёт наискосок через двор, между двумя корпусами, прямо к нужным дверям. Через триста метров дорогу перегораживает забор. Ворота открывает шлагбаум по пропуску, калитки рядом нет, и вместо обещанных восьми минут выходит двадцать — в обход всего квартала.
Так ведёт себя не сломанный навигатор, а совершенно исправный. Города он не видит и про забор не знает: путь он ищет по графу — набору линий и точек, где линия означает дорожку, а точка утверждает, что две дорожки соединены. Если такое соединение записано там, где его нет, алгоритм честно строит невозможный маршрут и рисует его ровно с той же уверенностью, что и настоящий. Проверять приходится ногами, и ногами вашими.
Откуда берутся ложные связи
А причин у ложного соединения несколько, и почти каждая выглядит безобидно. Проход когда-то действительно был открыт, потом двор перекрыли, а данные никто не поправил. Забор нарисовали линией, но не отметили в нём калитку — или отметили ту, которую заварили три года назад. Две дорожки пересекаются на плане, хотя одна из них идёт по мосту над другой. Вход в поликлинику поставлен в геометрический центр корпуса, потому что рисовать точнее было некогда.
Каждая такая мелочь стоит дороже, чем выглядит со стороны. Руководство по пешеходной навигации открытой народной карты предупреждает прямо: неаккуратно поставленный барьер способен закрыть или, наоборот, открыть целый перекрёсток графа. Одна точка решает судьбу десятка маршрутов. Честная навигация держится не на красоте линий, а на точности их стыков.
Как проверить сомнительный маршрут
Но подозрение должна вызывать прежде всего слишком прямая линия там, где город обычно заставляет петлять: сквозь промзону, через территорию школы или больницы, наискосок по кварталу со шлагбаумом на въезде. Спутниковый снимок покажет забор. О том, есть ли в нём калитка и до которого часа она работает, снимок не скажет ничего.
Поэтому, упёршись в тупик, потратьте минуту и запишите шесть вещей:
- точную координату разрыва — где именно кончается проход;
- что стоит поперёк: забор, шлагбаум, дверь, откос, канава;
- кто всё-таки проходит — жильцы, сотрудники, никто;
- часы, если препятствие открывается по расписанию;
- реальный обход и его длину в метрах;
- проходим ли обход с коляской и чемоданом.
Разница между двумя сообщениями об ошибке огромна. «Маршрут неправильный» обработать невозможно: неясно, какой участок, чем он плох и что с ним делать. «Калитка между домами 14 и 16 заперта с 22:00 до 6:00, обход — четыреста метров вдоль проспекта» превращается в правку, которую внесут за вечер.
Карта всегда немного отстаёт
При этом даже безупречно выверенная база стареет, потому что город меняется каждый день. Стройка съедает тротуар. Магазин переносит вход с проспекта во двор, управляющая компания вешает на калитку новый замок, подрядчик закрывает подземный переход до весны — и ни один из этих людей не собирается сообщать о своём решении картографам.
Поэтому обратная связь от жителей не любезность, а часть механизма. Та же открытая карта хранит входы отдельными объектами и позволяет описать главный вход и его доступность: ступени, домофон, ширину проёма. Чем точнее наблюдение одного человека, тем реже навигатору приходится угадывать за всех остальных.
Лучший сигнал ошибки появляется в тупике
При этом самый ценный сигнал человек подаёт молча. Когда десятки людей в одной и той же точке разворачиваются и уходят назад тем же путём, это почти наверняка не свободный выбор красивой дороги, а маршрут, упёршийся в забор. Такие развороты видны в данных ещё до того, как кто-нибудь напишет жалобу.
Значит, требовать от карты стоит не безошибочности — её не будет ни у одной базы. Требовать стоит возможности показать конкретный разрыв: вот эта точка, вот это препятствие, вот кто через него не проходит. Завтра, когда навигатор снова выведет вас не туда, не ругайтесь и не сворачивайте молча. Потратьте минуту, опишите калитку одной фразой с координатой и часами — и человек с коляской, который пойдёт здесь через неделю, вашего забора уже не встретит.
