Проблема тегирования

На днях в осмерском телеграмм-чатике пользователь Sergey Sinitsyn задал любопытный вопрос: «Из одной точки одновременно растут берёза, сосна и ель — расположите теги у точки в правильной последовательности». Можно отмахнуться, мол ставь как угодно, но вообще-то это вызов, который в приличном обществе принято принимать. Можно даже расширить вопрос до принципиального способа тегирования таких объектов.

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

1. Геометрический способ.
Семь знаков после запятой обеспечивают сантиметровую точность (вдоль меридиана 1.1 см, вдоль параллели Москвы около 0.5 см). Это позволяет наносить любые деревья, как бы близко они не росли друг к другу — нет смысла использовать одну точку для всех деревьев сразу.

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

2. Биологический способ.
Если сантиметровой точности недостаточно, выход есть. В OpenStreetMap я не встречал правила, согласно которому точка дерева на карте соответствует расположению комля. А поскольку третьей координаты нет, точкой дерева можно считать проекцию центра биомассы организма на поверхность земли. Таким образом, растущие из одного места наклоненные деревья, могут быть удалены на карте друг от друга на десятки метров.

3. Формальный способ.
Никто не мешает поставить на точку тег «группа деревьев». Строго говоря, это как раз один из случаев natural=wood. Представлять три дерева как лес непривычно, но в osm лес понимается по айтишному, как более одной воткнутой в землю толстой разветвленной палки.

4. Нечеткий способ.
Я не мог про это не сказать, сами понимаете. Способ аналогичен предыдущему, но позволяет не только указать на группу деревьев, но и дать пояснение о породе. Например так: natural=wood, species=betula …:0.3, species=pinus …:0.3, species=picea …:0.4. Нотация произвольная, характеристические числа соответствуют выраженности вида в группе (здесь все деревья одинаковы, только елка-picea чуть больше: 0.4 вместо 0.3).

5. Динамический способ.
Вернемся к natural=tree. Поскольку актуальность правки часто не отслеживается, есть смысл использовать порядок развития группы деревьев. Я бы расположил первой елку, как наиболее перспективную, последней сосну, которая доживает последние годы.

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

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

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

А вы говорите «проблема тегирования».

Новости культурной столицы

Комитет по энергетике разрешает героям бесплатно какать в туалетах Петербурга. Остальным велено слабиться в кустах.

Интересно, как это затегировать в OpenStreetMap? Access=victim_of_repression? Access=laborer_rear? Еще интереснее, как затегировать то, что жертве репрессий краснокхмерской Кампучии бесплатно покакать нельзя? И ветеранам вермахта. И срочникам Анголы. И бурским заключенным.

Объявление на туалете ставит принципиальный вопрос: как обозначать сущности, проверить которые можно лишь теоретически? Подобная проблема возникает в разных науках, вспомните шредингеровскую котокошку, гипотезу Гордягина или близнецов доктора Менгеле.

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

Как тегировать лесные кварталы в OpenStreetMap

Хорошо, что я отписался от всех чатов, иначе от прочтения OSM-RU у меня бы мозг воспалился. Я не знаю как обстоят дела с лесными кварталами на планете Нибиру, но у нас все завязано на лесоустройство и конторы в названии которых есть буквы «леспроект».

Теория такова: каждые десять лет лесхоз делят на кварталы, в европейской части чаще всего 1х1 км. В первый раз прорубают просеки, после этого границы стараются не изменять. В каждом углу квартала вкапывают столбы с номерами (номер смотрит в центр квартала). Нумеруются кварталы слева-направо сверху-вниз. Нумерация может быть неизменной очень долгое время, но если к лесничеству присоединили территорию или наоборот, часть леса вывели из фонда — добавляются/удаляются кварталы и нумерация «плывет». Пограничные кварталы часто имеют неправильную форму, поэтому их иногда могут объединять/разделять, что тоже влияет на нумерацию. Особенно если на таких кварталах нет леса (напомню, что лесной фонд и лесопокрытая территория — это разные вещи). Аналогичная ситуация происходит, если лесхоз пересекает линейный объект (газопровод, лэп, дорога и др.)

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

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

Но вот вам вишенка на торте — номера кварталов можно иногда найти в открытых проектах освоения лесов, но все это часть лесоустроительной документации, а последняя всегда грифована как ДСП. Это юридический казус, но формально он ставит под сомнение возможность внесения данных о кварталах в OpenStreetMap. Это значит, что всякие «открытые данные о лесах» можно скормить шредеру, а в базу вносить то, что указано на местности. Благо, столбиками до сих пор выделяют не только кварталы, но и границы рубки, на которых номер квартала тоже подписан. Причем на рубках самая актуальная информация: идешь по лесу — как свежую газету читаешь.

В конечном итоге, какая разница под каким номером проходит этот участок в ГУЛФе, если на местности он обозначен как квартал 94? Откроют ГУЛФ — тогда и поговорим.

Подводная лодка в парке

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

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

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

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

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

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

О тегировании растений в OpenStreetMap

Тут в чатике OSM зашел разговор о тегировании трав, кустарников и деревьев. Мол, пальма — это трава, но вроде как дерево. Борщевик тоже будто не совсем трава. А, например, betula pumila вроде как береза, а на самом деле куст.

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

Если растение высшее, то оно либо имеет вторичную ксилему (читай «древесину»), либо нет. Если нет, то это трава. Если древесина есть, но на вид как трава, то это кустарничек (черника, брусника).

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

Ботаники меня за такой утрированный примитивизм сожгут на костре, но для тегирования пойдет. Я даже больше скажу. Все что севернее Краснодара можно тегировать по принципу:
есть годовые кольца, а стволы можно безошибочно сосчитать — дерево,
есть годовые кольца, но стволов так много, что считать сложно — кустарник,
есть годовые кольца, но высота обычно ниже колена, а внешний вид как у травы с жесткими листочками — кустарничек,
нет годовых колец и мягкие листочки — трава.

На картинке ниже — поперечный срез древесного (слева) и травянистого (справа) растения.

Леса юго-запада Ленинградской области на нечеткой карте

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

Я десятый год говорю о ценности нечеткости как технологического решения. И даже добился в этом немалого успеха, например, популярности стикера «нечеткое тегирование» в телеграмм-канале OpenStreetMapRu. Слово «нечеткое» у картографов имеет столь отрицательную коннотацию, что каждый раз мне приходится начинать свое объяснение заново. Может быть более правильным было-бы использовать такой термин как «фаззи-карта» или «континуальный стиль», но я не мастер в словесном жонглировании. Поэтому нечеткую карту обычно представляют себе так:

На мои протесты обычно отзываются предложением, мол если мы не правы, то покажи нам такую карту. И это справедливо. Давайте же раскрасим карту OpenStreetMap в нечеткие цвета. Возьмем сотню точек с присущими им данными о растительности:

Каждая точка находится в лесу и описывает его породный состав таким образом: С(s)Е(e)Б(b)О(o), где С,Е,Б,О — это основные преобладающие породы (сосна, ель, береза, осина), а буквы в скобках — коэффициенты истинности, которые отражают правдивость суждения о том, что лес состоит из данной породы. Например чистый сосновый бор будет выглядеть так: С(1)Е(0)Б(0)О(0). А вот пример обычного березняка с примесью осины и елки: С(0)Е(0,1)Б(0,7)О(0,2). Опытные люди сразу уловят в этой нотации формулу состава древостоя и будут абсолютно правы, поскольку в данном случае я рассматриваю самый простой подход, при котором суммарная истинность константна. Кроме того, каждой точке присвоены данные по запасу. Это не обязательно, но позволит сделать наш пример еще показательнее.

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

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

Нам потребуется пять таких растров. Четыре растра раскрасим по градиенту прозрачности цвета, принятого для обозначения породы на лесотаксационных картах (сосна — оранжевый, ель — фиолетовый, береза — синий, осина — зеленый). Пятый растр будет у нас интерполяцией по запасу. Его мы раскрасим по градиенту от белого с прозрачностью 60% до прозрачного белого. Это позволит нам отличать густые леса от редкостойных, даже если их состав одинаков.

Теперь очередь за данными OpenStreetMap. Просто подложка Mapnik-a, нам не подойдет если мы хотим сохранить на карте дороги, названия, гидрографию и прочие объекты. Поэтому скачиваем через оверпасс исходные данные и настраиваем черновой стиль.
данные OSM

Прежде чем мы начнем компоновку, нам придется удалить из всех слоев мелкие объекты, создающие лишний шум. Полигоны лесов мы будем использовать в качестве маски. Это можно сделать путем изменения геометрии, но хвала небесам, в QGis есть возможность инвертирования полигонов. Остается только наложить слои друг на друга в нужном порядке и немного поправить стиль:

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

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

Привет джипег!
легенда

Вот собственно и все. Осталось нарезать эту карту на тайлы и наслаждаться знанием о том, как сосняки сменяются ельниками, а березняки осинниками.

В полном размере карту можно посмотреть по этой ссылке.

— Но тут же не видно четких границ? Что толку от такой карты, если я никогда не пойму ельник в этом районе или березняк?
— В том-то и дело, что если по карте вы не можете однозначно назвать породный состав, то у вас это не выйдет и на местности. Что по карте? Какая-то смесь из елки, осины и березы? Ну так и в лесу тоже самое.

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

Водопой КРС

Аксайская картографическая экспедиция — ответы на вопросы

In English

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

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

Итак, погнали.

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

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

— Подготовка картографического материала для полевых работ с использованием OSM-редакторов;
— Выделение потенциальных POI, обследовать которые надлежало в реальности;
— Привлечение сообщества к оцифровке снимков и выделению объектов требующих визуальной проверки;
— Сплав по реке с наблюдением за намеченными объектами;
— Выделение объектов, которые не могут быть описаны существующей схемой тегирования;
— Добавление существующей схемы тегирования и информации о POI на карту (в базу данных);

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

Точные сроки зависели прежде всего от погодных условий и организационных моментов. Ближе ко времени «Х», стапель был назначен на первое мая. Общая продолжительность путешествия предполагалась равной семи-девяти дням. Компанию мне никто не составлял, что было вполне ожидаемо, учитывая безумие и авантюрность затеи.

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

река Аксай
Несмотря на название, Аксай является не притоком, а крупнейшим рукавом Дона. Он отделяется от него ниже станицы Мелиховской и снова впадает в Дон близ Ростова. На устье расположен город Аксай, известный стекольным заводом и одноименным мостом через Дон.

Карта сплава по реке Аксай


В действительности ситуация еще сложнее. До середины ХХ века Аксай представлял собой единый рукав.

Река Аксай на «Подробной карте земли войска Донского«, составленной под руководством генерал-майора Богдановича в 1833 году.
Карта земли войска Донского, река Аксай

А вот Аксай на карте Вермахта (оперативная обстановка на фронте 10 сентября 1942 года):
река Аксай, карта Вермахта

В 1965 году была запущена Новочеркасская ГРЭС, с созданием которой Аксай фактически был разделен на две независимые реки, которые даже получили различные названия. Верхняя часть русла была спрямлена и углублена, вода из нее поступала на электростанцию. Этот участок получил название «Холодный канал». Параллельно ему был прокопан еще один «Теплый канал», по которому вода с электростанции возвращалась обратно в Дон. Такая закольцовка привела к резкому падению стока на большей протяженности Аксая. Течение сразу за кольцом практически прекратилось, река стала напоминать вытянутое озеро, в результате чего получила название «Мертвый Аксай»:

Помимо этого, после войны, территория отмеченная немцами как болото, была приспособлена для разведения рыбы, а из Мертвого Аксая начался забор воды для полива прилегающих полей, что также сказалось на снижении объема водного потока.

Из примечательностей реки следует упомянуть ее этимологию, которая говорит о целебных свойствах «белой воды» («Ак-Су») и расположенный на правом берегу памятник природы «Золотые Горки», который является, по сути коренным берегом Дона и отступив перед станицей Бессергеневской вновь появляется после Мало-Мишкинской психиатрической больницы.

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

Пирог был порезан на сто сорок четыре маленьких кусочка, которые в дальнейшем использовались и при передвижении по маршруту. Перед отправкой, я скомпоновал в QGis атлас со спутниковой подложкой Mapbox-a и Bing-a и распечатав все в формате А5. Толщина полученного тома оказалось столь велика, что пришлось отказаться от половины страниц, отведенных под записи.

Изначально разворот атласа выглядел таким образом:

Страница атласа

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

Сшитый полевой дневник:

сшитый полевой дневник

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

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

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

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

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

У железнодорожной станции «Аксай» я вновь погрузился со всем скарбом в диавольскую пятнашку, где и провел остаток ночи с пивом и в приятной компании.

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

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

Первый участок — Холодный канал. Представляет собой наиболее блаженный с точки зрения сплава район. Он начинается от ограждения, которое установлено поперек Аксая в сотне метров от истока — ответвления рукава от Дона. Ограждение предназначено воспрепятствовать заходу судов в Аксай, воды которого имеют стратегической значение ввиду использования их на Новочеркасской ГРЭС. Однако в ограждении есть проход, позволяющий заплывать в Холодный канал лодкам:

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

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

Завершается этот отрезок после станицы Бессергеневской. Проплывая автомобильный мост вы оказываетесь перед развилкой реки. Продолжение пути в прежнем направлении приведет вас на Новочеркасскую ГРЭС, но для этого необходимо преодолеть фильтрационные ограждения гидроэлектростанции:

Фильтрационные ограждения ГЭС

Поворот налево приводит к дамбе у которой приходится швартоваться и разгружать вещи:

Аварийная дамба

Здесь завершается Холодный канал. Для продолжения сплава по Аксаю следует перетащить лодку в Теплый канал, после чего проплыв примерно пол-километра вверх по течению пришвартоваться в заливе и второй раз перетащить лодку и вещи в Мертвый Аксай. Это одно из самых сложных препятствий на пути, особенно при путешествии в одиночку. Схема этого движения выглядит так:

Переход из Холодного Канала в Мертвый Аксай

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

Завал из бетонных блоков

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

Мертвый Аксай

Проход через рыборазводные бассейны формально запрещен и закрыт. Однако, есть возможность протащить лодку через правый коллектор.

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

Третий участок пути проходит почти на открытой местности. Прибрежные леса сменяются тростниковыми зарослями. Появляется едва заметное течение, которое усиливается у станицы Кривянской и приобретает полную силу перед Новочеркасском, где в воды Мертвого Аксая вливается река Тузлов. Напротив железнодорожной станции «Студенческая» даже есть быстрина, на которой скорость течения достигает 10-15 м/сек.

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

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

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

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

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

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

Судоходство на Аксае

Погода
С погодой чрезвычайно повезло: почти все время дул северо-восточный ветер 5-10 м/сек. Незначительные осадки были в первый день, большую же часть времени облачность не превышала трех баллов. Температура днем повышалась до +30 (на солнце), ночью опускалась до +8 градусов. Барическая тенденция положительная.

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

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

На следующую ночь конструкцию палатки решено было изменить. Я перевернул лодку и соорудил укрытие такого типа:

Устройство ночлега во второй день

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

Лодка
Сплав проходил на надувной ПВХ лодке Нептун 280 украинского производства. С помощью простого маркера название модельного ряда «Нептун» было изменено и у лодки появилось собственное имя «Не-Птун», под которым она существует в настоящее время и надеюсь еще долго будет существовать.

У данной лодки только два существенных недостатка. Первый — это ее вес. Второй — это ее размер в собранном виде. Из-за этого лодка на берегу лишает путешественника всякой способности к перемещению.

Зато на воде «Не-Птун» ведет себя идеально. Пайольный пол позволяет свободно вставать в лодке в полный рост, а свободного пространства хватит на месячный запас провианта на троих человек. За время эксплуатации лодка не вызвала нареканий.

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

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

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

Инвентарь в экспедицию

На воде все компактно складывалось в кормовую часть и под заднюю банку:
Укладка груза в лодке

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

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

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

Обед на Аксае

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

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

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

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

Рыбалка
Согласно пункту 47.3 раздела IV приказа №293 министерства сельского хозяйства РФ от 1 августа 2013 г. «Об утверждении правил рыболовства для Азово-Черноморского бассейна«, с первого апреля по тридцать первое мая любительское и спортивное рыболовство запрещено «в реке Аксай с впадающими в нее реками Тузлов, Грушевка и ериком Караич, рекой Черкасской с Махинским лиманом, реке Койсуг», что вызвано, в первую очередь, охраной рыбы шемаи (Alburnus mento) из семейства Карповых, в просторечии называемой шамайкой.

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

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

Сети на Аксае

Подавляющее количество сетей установлено в верховьях Мертвого Аксая, на втором участке пути.

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

Что дальше?
В 2017 году предстоит учесть полученный опыт и отработать методики в географической экспедиции по реке Чир Ростовской области. То что на Аксае делалось методом тыка нужно систематизировать, очистить от случайности и представить как прообраз технологии проведения полевых работ.

Приложение 1. Объекты неопределенного тегирования

Описание объектаФотография
Завалы из бетонных блоков;Завал из бетонных блоков
Закоряженные участки реки;Закоряженные участки реки
Фильтрационные ограждения ГЭС с разделением на понтонные и сетчатые;Фильтрационные ограждения ГЭС
Аварийные дамбы ГЭС;Аварийная дамба
Водозаборы;Водозабор
Опасные для судоходства точечные объекты;Опасные для судоходства точечные объекты;
Водопой крупного рогатого скота;Водопой КРС
Участки реки, заросшие водорослями;Участки реки, заросшие водорослями
Земляные ступеньки к которым не ведет тропинка или тротуар;Земляные ступеньки к которым не ведет тропинка или тротуар
Периодически затапливаемые острова;Периодически затапливаемые острова
Трубы используемые в качестве моста;Трубы используемые в качестве моста

Приложение 2. Опубликованные статьи
Водопой КРС

Аксайская картографическая экспедиция — ответы на вопросы

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

1 комментарий

К слову об источниках русловой динамики степных рек с малым течением

В наш просвещенный век каждый знает о таком явлении, как меандрирование рек. Чем сильнее изгибается русло, тем выше разность скоростей течения воды у берегов. По внешнему радиусу водный поток движется быстрее, соответственно там быстрее проистекают процессы эрозии еще более изгибая направление русла и повышая разность скоростей водного потока. Это, если хотите, прекрасный пример системы с […]

1 комментарий

Демонические лики идиотизма

Так подготовка к экспедиции еще никогда не проходила. Хотя, что уж греха таить, ко многим экспедициям люди сейчас вообще не готовятся: обсудят за пару дней детали маршрута, покидают в рюкзак вещи и в путь. В этом даже есть некий шарм вольности, мол настоящий профессионал готов к работе всегда. Но все-таки это безответственность, а в моем […]

2 комментария

Фрюлинг блютет ин Аксай

Я вот сейчас в Домодедово. И знаете, что думаю? Если уж мировой прогресс дошел до такого уровня, что можно в Шахтах пить в гараже «Дон классику», а через несколько часов слушать через бесплатный вайфай пресс-конференцию Чичваркина, то просто грех не рассказать вам историю о том, как я в Аксайской картографической экспедиции плыл на героическом надувном […]

1 комментарий

Аксайская картографическая экспедиция (анонс)

In English Я давно вынашивал идею открытой картографической экспедиции. С этой целью, даже приобрел несколько лет назад отличную лодку из пвх, на которой прошлой весной проводил экскурсии по Грушевскому водохранилищу за двести рублей в час. И даже планировал сплавиться по реке после завершения летних экспедиционных работ. Но летние экспедиционные работы закончились для меня травматически, отчего […]

1 комментарий

формула

Тегирование универсальных морфодинамических свойств объектов

Да ебись оно все конем. Выкладываю настоящий картографо-философский экзерсис в его первоначальном виде, пришедшем в мой воспаленный мозг после восьми часов беспрерывного прослушивания песни «Крановщик шестой бригады Волопасов Михаил».

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

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

КлючЗначениеОписание
virtuality1Реальные объекты, с четкими границами, например, здания
virtuality2Реально существующие объекты с неоднородными, размытыми границами провести которые точно невозможно, например, болота
virtuality3Объекты, существующие согласно документам, как единое целое, но в реальности имеющие фрагментированную структуру, например некоторые заброшенные дороги
virtuality4Объекты, существующие в исключительно в виде документов, но связанные с реально существующими объектами, например, проходящие по рекам административные границы
virtuality5Объекты, существующие исключительно в виде документов, никак не связанные с объектами местности, например проектируемая дорога
КлючЗначениеОписание
naturalness1Объекты, созданные путем кардинальной модификации окружающей среды и эксплуатируемые человеком, например, работающие предприятия
naturalness2Объекты, созданные путем кардинальной модификации окружающей среды, но в настоящее время не используемые, что приводит к их возвращению в естественную среду, например, заброшенные населенные пункты
naturalness3Объекты, созданные путем значительной модификации окружающей среды, но с сохранением основных природных компонентов, например луга и леса лесохозяйственного значения
naturalness4Объекты естественной среды, подвергшиеся заметному человеческому вмешательству, но не используемые в промышленности или лесном/сельском хозяйстве, например, национальные парки
naturalness5Объекты естественной среды, не претерпевшие заметного влияния человека, например, заповедники
КлючЗначениеОписание
acceleration1Объекты, стремительно замедляющие скорость, например реки при впадении в крупный водоем
acceleration2Объекты, скорость которых постепенно замедляется
acceleration3Неподвижные объекты, либо объекты, передвигающиеся с равномерной скоростью
acceleration4Объекты, скорость которых постепенно увеличивается
acceleration5Стремительно ускоряющиеся объекты, например, водопады
КлючЗначениеОписание
rate1Объекты с неизмеримо малыми скоростями, либо неподвижные объекты, например здания
rate2Объекты, о движении которых можно сделать ввод только после многодневных наблюдений, например, некоторые ледники
rate3Объекты, движение которых заметно только при внимательном рассмотрении или постановке простого опыта, например некоторые реки с очень слабым течением
rate4Объекты движение которых заметно с первого взгляда
rate5Объекты со стремительным движением, скорость которого может служить отличительным признаком объекта
КлючЗначениеОписание
chaotic1Объекты с хаотичной динамикой без прослеживаемых закономерностей изменения, например лесные дороги, которые в любой момент могут оказаться непроезжими из-за поваленных деревьев или работы специальной техники
chaotic2Объекты динамика которых хаотична, но имеет прослеживаемые в ходе долговременных наблюдений пространственные или временные закономерности, например грунтовые дороги с песчаным покрытием в степной зоне
chaotic3Объекты со стабильной и управляемой динамикой, например, водохранилища
chaotic4Объекты с управляемой динамикой, изменения на которых происходят в известные сроки, например, ремонтируемые мосты
chaotic5Стабильные объекты, не претерпевающие заметные изменения, например здания
КлючЗначениеОписание
naming1Объекты без собственного имени, для которых указание имени нарицательного нецелесообразно ввиду их редкости либо по иной причине, например, остатки от упавших ступеней космических ракет
naming2Объекты без собственного имени, для которых целесообразно указать имя нарицательное, например, ряд вкопанных автомобильных покрышек во дворах или на детских площадках
naming3Объекты без собственного имени, для которых однозначно можно выделить имя нарицательное, например, колодцы
naming4Объекты с нарицательным именем, собственное имя которых неоднозначно, или недостоверно, например, если получено со слов местных жителей («река Кундрючка«)
naming5Объекты имеющие собственное имя
КлючЗначениеОписание
decomposition1Однородные, чистые по составу объекты
decomposition2Однородные объекты с несущественными включениями, не влияющими на свойства объекта
decomposition3Объекты с разнородным составом, влияющим на свойства объекта и заметно выраженным главным компонентом
decomposition4Объекты с разнородным составом и наличием доминирующей группы из нескольких элементов
decomposition5Объекты с разнородным составом, среди которого невозможно выделить доминирующую группу элементов
КлючЗначениеОписание
formpointТочка — объекты с пренебрежимо малыми размерами
formcloudОблако — группа объектов с пренебрежимо малыми размерами
formlineЛиния — объект двумя размерами которого можно принебречь
formnapkinСалфетка — объект с одним пренебрежимо малым размером и перфорированной структурой
formplaneПлоскость — объект с одним пренебрежимо малым размером и цельной структурой
formspongeГубка — кавернозный полноразмерный объект
formvolumeОбъем — цельный полноразмерный объект

P.S. Формула на рисунке не в тему — просто файл этот надоел, вот и решил его куда-нибудь пристроить.

Нечеткое тегирование это просто

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

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

Итак, как говорил Сократ: «Точное логическое определение понятий — условие истинного знания». Тегирование в OpenStreetMap это присвоение набору геоданных некоего смысла и пояснения, которое выражается в виде присвоенного ключа (тега) и его значения. Например, дорога внутри жилых зон обозначается как highway=living_street. Здесь слева от знака равенства в теге прописано отнесение геоданных к классу (класс дорог), а справа дано пояснение (дорога вдоль жилых зон).

Можно ошибочно подумать, что схема тегирования OSM представляет собой примитивный аналог иерархических классификаций, состоящий всего из двух уровней. На самом деле это большое заблуждение, поскольку в верно построенной иерархической классификации два элемента относящиеся к разным надмножествам элементов не могут быть похожи до степени смешения, или говоря более строго, близость элементов различных подмножеств иерархической системы всегда меньше близости содержащих их надмножеств. Практически это выражается в том, что два объекта, относящиеся к разным образцам надклассов не могут быть более близки, чем сами эти надклассы. В OSM такое встречается сплошь и рядом: мой любимый пример natural=wood и landuse=forest. Близкие и часто взаимозаменяемые значения относятся к разным тегам. Такое в иерархической системе невозможно.

Впрочем, в этом нет ничего плохого. Как показывает эмпирический опыт, иерархические классификации подходят для искусственных, либо абстрактных геоданных. Объекты же «чисто конкретные», которые и содержит в себе база OSM в иерархическую систему не укладываются ибо для таких объектов характерен избыточный диатропизм.

Что это значит в переводе на язык бытового жанра? Это значит, что в нотации «ключ»=»значение», знак равенства абсолютно избыточен и выполняет карго-функцию. Это не более чем формализм и ничем необоснованное усложнение нотации. А значит и вся схема тегирования данных проекта OpenStreetMap сводится к присвоению геоданным пояснительного текста, содержащего в себе знак равенства. С таким же успехом можно было подписывать данные в виде «natural_wood», «naturalwood» или просто «wood» (забыл сказать, каждый тег содержит только уникальные значения, а это еще один довод против иерархичности схемы тегирования OSM). Говоря еще проще: никакой схемы тегирования в OSM нет, есть лишь набор странно оформленных подписей для каждого набора геоданных. Если вы сможете переступить через себя настолько, что признаете этот вывод, дальнейшее пояснение будет для вас совсем легким.

Повторюсь: данные OSM не имеют схемы тегирования, это лишь набор геоданных со странно оформленными подписями. но не подумайте, что это недостаток, как раз наоборот, это наиболее сильное преимущество проекта. Проблема в том, что преимущество это используется не до конца. Если-бы каждому объекту был присвоен только один тег, то можно было бы в полной мере говорить о примитивном булевом тегировании, которое безусловно давно устарело. Но тегов можно присвоить огромное количество. Например, не просто указать, что это здание и оно является магазином, но и дополнить информацию о нем часами работы, инженерными параметрами здания и еще чем в голову взбредет. Значит ли это, что объекту можно присвоить любое сочетание тегов (разумеется соответствующее действительности)? Нет. Каждый из тегов, присваиваемых объекту должен однозначно и независимо характеризовать какое-либо из свойств объекта. Есть у улицы свойство в виде ее названия — пожалуйста, тег «name». Есть у той же улицы свойство в виде покрытия дороги — пожалуйста, тег «surface». Для каждого свойства свой тег.

Но вот она, квинтэссенция моей сегодняшней речи. Одно и то-же свойство объекта можно (и нужно) выражать не посредством одного тега, а с помощью любого количества необходимых тегов. Зачем выбирать каким тегом обозначить лес с густым подлеском: natural=wood или natural=scrub, если можно использовать оба этих тега одновременно? А для большей ясности можно присвоить каждому тегу характеристическое значение истинности, от нуля до единицы. Ноль означает, что это свойство отсутствует, единица означает наличие этого свойства (не будем здесь поднимать дискуссию о критерии определений значений характеристических функций нечетких тегов и области значений таких функций). Конечно, придется изменить нотацию, но выглядеть это будет примерно так:
Лес с редким подлеском: wood(0.9),scrub(0.2);
Кустарниковые заросли с редким пологом леса: wood(0.4),scrub(1.0);

Так можно смешивать между собой абсолютно любые теги, что даст осмерам необычайно гибкий инструмент для описания реальной обстановки на местности. Вот несколько реальных примеров:
Юго-Запад Ленинградской области, дорога к базе охотников и рыбаков «Кривая Лука». Пять месяцев назад осмер под ником Sergey Astakhov отрисовал эту дорогу, обозначив ее как highway=track. На большем протяжении так оно и есть, но в паре мест, как бы вам это сказать… в паре мест то, что сейчас иначе кроме как highway=track не назовешь, в системе нечеткого тегирования выглядело бы как track(0.5),water(0.5). Или может вам больше по душе обозначение surface=water?

Другой пример из Кингиссепского района. Нарисованные по космосу тем же осмером дороги являются не чем иным как минерализованными противопожарными полосами и в системе нечеткого тегирования выглядели бы как road(0.2),ditch(1,0),forest(1.0) в том смысле, что это слабо похожая (0.2) на дорогу траншея используемая в лесном хозяйстве:

 

Другой похожий пример из Любанского района. На карте он не обозначен и честно говоря, не уверен, что есть отдельные теги для лесных волоков. Это один из главных недостатков привычной булевой классификации объектов по сравнению с нечетким тегированием. Пока старообрядцы будут выдвигать пропозалы с миллионами новых тегов, новое поколение картографов, владеющих знанием о нечетком тегировании легко опишет любой ранее невиданный объект. Например так: road(0.3),log(1,0),forest(1.0) — подобие дороги (0.3), устланное бревнами для целей лесного хозяйства.DSCN9054

Тут, пожалуй, наступило самое подходящее время, что-бы рассказать о потрясающей конструкции со вложенными нечеткими тегами, которая позволяет описывать реальность еще гибче, проще и правдоподобнее, но увы. Время уже позднее, а мне еще в деревню за трактором идти. Надо же как-то выбираться из этого track(0.3),water(0.7).

Недосягаемый космос

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

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

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

Хорошо, что зима не длится вечно. Я был самый трезвый из кочегаров и все-равно пил так, что написал монографию, философский трактат, программу на С++ для ввода и анализа геоботанических данных и обошел в Морровинде вокруг Красной горы. Фактически, вся теория живых систем, методы расчета важности информации, понимание красоты как строгой (в математическом смысле) функции системы и диатропический подход к классификации объектов возникли во время безделья между подброской в печь дров и угля.

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

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

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

Что произошло? Два класса, абсолютно разные во всем, содержат в себе один и тот же тип объекта. В нормальной иерархической классификации такое абсолютно невозможно. У нас, вместо иерархии образуется сеть из типов объектов, в которых классы всего-лишь представляют собой группы типов с определенным набором признаков. Иерархия пропадает, возникает диатропизм. В ботанике и зоологии та же хрень описана еще палеоботаником С.В. Мейеном и его учеником Ю.В. Чайковским (смотри лучшее чтиво 1990-го года: «Элементы эволюционной диатропики»).

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

Мы рисуем контур конкретного объекта с редкостоящими дервьями, после чего решаем: отнести его к лесу, скверу или вообще к газону? Мы рисуем линию и решаем: отнести ее к ручью или ограждению (ров вокруг замка это ограждение или водоем?). Мы рисуем точку и думаем, обозначать ли этот канализационный люк как преграда на дороге, если с него раз в два месяца какие-то пидарасы снимают крышку? Возьмите OSM-мовские natural=wood и landuse=forest. Всегда ли легко установить разницу, особенно если речь идет о стране в которой лесное хозяйство официально отменено с 2007 года? А ведь это разные классы, объекты в них должны быть отличимы между собой как тротуар и ручей. Но что делать, если по тротуару уже второй год течет ручей водопроводного порыва, не мешая гулять пешеходам? Что это за объект-то такой?

Кстати, в России landuse=forest и при действующем лесном хозяйстве нельзя было трактовать однозначно. Например северные гористые леса, принадлежащие лесхозу, который ввиду бессмысленности или отсутствия дорог не проводил там хозяйственные мероприятия.

Примитивная классификация данных OpenStreetMap позволяет отображать на карте огромное количество нюансов. Новый объект? — не вопрос, вот новое значение тега. Что-то совсем странное? — не вопрос, вот новый тег. Выбери в свое время Кост многоуровневую классификацию, мы получили бы сейчас головную боль в виде действия закона Ципфа: имели бы пять-шесть верхних классов, включающих 80-90 процентов всех объектов и овердохуя классов, содержащих по одному-два объекта. А в таком виде, классификация OSM сродни низкоуровневому языку или безработному без долгов: постоянно требуется вникать во множество деталей, зато никаких ограничений для творчества.

Лучше нынешней классификации OSM может быть только полный отказ от иерархии. Объединяем существующие теги и их значения в единые свойства и указываем наличие этих свойств у любого объекта. А поскольку свойства выражены в разной степени, добавляем значение истинности. Так для густого леса, вместо natural=wood мы получаем naturalwood=0.9, а для редкостойного, вместо natural=wood мы получаем naturalwood=0.3.

— Эй, бля! С твоей классификацией, мы получим таких монстров, что хер кто их распознает! Вот что это например за хуйня такая:  natural_wood=0.3, natural_scrub=0.2, natural_wetland=0.2, highway_construction=0.5,  highway_path=0.9,  barrier_ditch=1.0, landuse_construction=0.5, landuse_fill=0.7?

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

Я тут не буду намекать о том, что допуск отображения значения тегов через другие теги дает вообще космические возможности. Например, этот же объект можно в упрощенном виде записать как barrier: {natural_wood=0.3, natural_wetland=0.2, barrier_ditch=1.0}. Хотите увековечить на карте топиарное искусство? -говно вопрос: historic_memorial:{natural_scrub=1.0}. Обратите внимание, что в данном случае, natural_scrub относится именно к памятнику, то есть является его неотделимой частью. Если бы мы хотели обозначить могилу в кустах, то поступили бы по другому: historic_memorial=1.0, natural_scrub=0.4.

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