Маршруты общественного транспорта

Я ничего не понял. Нарисуй.

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

По традиции highway=bus_stop рисуется в месте физической остановки, т.е. в стороне от дороги. Нередко встречаю эту точку в составе тротуара highway=footway, да иногда и сам так рисую: для роутинга полезно. Положение на дороге тоже допустимо, но в процентном отношении, как кто-то считал, на дороге ставят дай бог 10% точек. Учитывая дополнительные теги (shelter, lit), считаю, что нужно ставить в месте, где остановка находится физически (павильон или знак автобусной остановки). Да и плагинам по автоматическому поиску остановок для маршрута проще.

Автобус 145 http://bus.ruz.net/routes/145 ходит только по кольцу и только в одну сторону. Конечной у него нет, но с м. Беляево автобус может уехать в парк.

Троллейбус Б раньше ходил в обе стороны но каждое направление по кольцу, сейчас внутренний переименовали в Бк http://trolley.ruz.net/routes/1000 http://trolley.ruz.net/routes/1100 . На обоих нет конечной станции, кроме тех случаев, когда троллейбус идёт в парк.

Троллейбус 34 http://trolley.ruz.net/routes/1034 имеет обычные конечные, однако у него диспетчерский пункт и конечная выхода с маршрута находится на ул. Кравченко. Когда троллейбус приезжает туда и встаёт в общую очередь, большинство пассажиров нередко переходят в первый из стоящих в очереди троллейбусов.

Описанные в базе OSM маршруты предназначены не только для обозначения топологической связности проезда по ним. Не надо рендерить под навигатор, существуют и другие применения. Например, чтобы писать списки остановок типа тех, что написаны на ruz.net, нужны совсем другие требования к предоставляемым данным.

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

Кроме того, рассматривая два разных отношения одного маршрута, мы, полагаясь на ref, будем постоянно натыкаться на маршруты с одинаковыми номерами. Помимо маршрутов в Москве, есть куча похожих маршрутов в других городах, в Мособласти и тд и тп. Например, в Москве есть маршрут 41, а у Мострансавто в области таких маршрутов аж 24, причём два из них одинаковы, но один из этой пары является коммерческим маршрутом того же самого перевозчика.

Сейчас в ОСМ России порядка 861 маршрутов. Из них только 71 пригоден для роутинга без какой-то либо предварительной подготовки.

Примеры можно посмотреть тут, в том числе и на карте: http://stud555.sbin.ru/busobl.php

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

Это довольно гнилая идея. В Томске, например, есть два маршрута #5, которые действуют в разных концах города и никак не пересекаются.

Интересно. И оператор один? Наверное, чтобы никто не догадался…

Чего только люди не придумают, лишь бы не придерживаться политики “один маршрут - одно отношение”. :3

AFAIK, там понятие оператора ничего не значит. Мэрия утверждает список маршрутов, а возят частные перевозчики. У каждого второго автобуса свой “оператор”. Дубликат, скорее всего, получился из-за того, что один из маршрутов сезонный дачный, а второй —городской. Просто кто-то обсчитался, но у нас-то truth on the ground.

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

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

А вот во всех маршрутках и автобусах, в которых я ездил, висит бумажка “Утвержденный машрут” и его (а не “их”) схема.

Через валидатор проходят маршруты в которых от первой точки первого вея нет разрывов до последней точки последнего вея.
Направление вея (или forward/backward) не учитывается. Веи без роли (т.е. туда и сюда) не дублируются.

Прежде всего, для читателей, хочу отметить, что мы обсуждаем граничные случаи применения схемы Oxomoa. Чтобы не получалось, как в анекдоте (а то уже опасно близко к тому).

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

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

Разумеется, если бы они не отличались, не было бы необходимости в такой схеме. Но все остановки у разных направлений маршрута разные. По разные стороны перекрёстков, порой с разными названиями и свойствами. Иногда даже количество остановок разное (пример есть недалеко от моего дома). Это легко заметить по «ленивыми» forward/backward-отношениям: все вместе остановки образуют мешанину, поэтому без явного указания роли forward:stop или backward:stop отношение маршрута не имеет смысла. В схеме Oxomoa маршруты линейны, и там достаточно роли stop, да и даже совсем без ролей грамотный парсер сможет допустить, что точки — это остановки, в отличие от веев. Схема с «backward/forward» такой вольности себе позволить не может.

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

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

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

Ты точно против схемы Oxomoa и за беспорядочную схему с двумя направлениями на отношение и остановками «forward:stop» и «backward:stop»? Потому что ты это написал не про Oxomoa. Последняя именно предназначена для роутинга, и пресловутые списки остановок получаются из неё элементарно. Я бы посоветовал перечитать страницу в вики ещё раз.

Если ввести тег, означающий, что маршрут полностью кольцевой (как cycle=yes, предложенный выше), то их можно будет различить. И это не относится к вопросу «сколько отношений на маршрут», потому что кольцевые маршруты любой степени полноты в любой схеме отмечаются одним отношением, вопрос только в упорядоченности и избыточности (последней нет у схемы Oxomoa, но есть у популярной здесь).

Конечно. Даже рассматривая два отношения двух маршрутов, как ты замечаешь, мы будем натыкаться на маршруты с одинаковыми номерами. Для этого предназначены теги to и from, значения которых написаны на маршрутных досках и по которым можно различить любую пару маршрутов, едут ли они по одним дорогам или по разным.

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

Вот тут все маршруты. http://stud555.sbin.ru/buserror.php Обращайте внимание на поле “Роутинг”. Если “1” - прошел проверку, если “0” - то нет.
Могу в принципе и покрасить строчки, если надо.

Надо просто разделять понятия “Маршрут” и “Трасса маршрута”. У кольцевых маршрутов обычно одна трасса. У стандартных - две (туда/обратно).
Поэтому логичнее использовать схему из нескольких relation: один для маршрута (с тегами ref/name/transport) и по одному relation на каждую трассу, который входит с соответствующей ролью в relation маршрута.

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

Вот приведу пример из моего личного опыта. Летом я ездил отдыхать на Азовское море. Поезд шел до Ростова-на-Дону, ну а дальше пришлось добираться на ОТ. Схема получилась такая(я ее примерно 2 месяца из местных жителей на форумах вытягивал). Сажусь в Р-н-Д в автобус, на нем доезжаю до г.Таганрог, в Таганроге сажусь на другой автобус и доезжаю до нужного хутора. Все вроде выглядит просто здорово, но вот например как сделать роутинг, который бы составил эту схему, если в Таганроге автобусы из Ростова приезжаю на один вокзал, а по району автобусы ходят с другого вокзала, которые физически находятся на приличном друг от друге расстоянии. Вот и опять задаю вопрос: что нам нужно от роутинга?

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

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

Я понимаю, что это давно уже топик религиозных войн… Но если отвлечься. Я тут маршрут попробовал нарисовать. Проверьте, пожалуйста. Хочу знать где-чего на будущее учитывать. )
http://www.openstreetmap.org/browse/relation/1283352