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

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам
65
исключить противоречивость информации за счёт реализации следующих
моментов:
– хорошей визуализации и графического редактора;
для точной идентификации местоположения будут использоваться
географические координаты: широта, долгота, высота – и путейские
железнодорожные координаты: километр, пикет, метр;
при наличии точной идентификации местоположения объекта
становится возможным обеспечить экспорт информации в любой из
требуемых форматов;
– предполагается перевод специалистов хозяйства инфраструктуры на
работу в новой системе – это автоматически обеспечит всех
железнодорожников актуальной информацией о состоянии всей железной
дороги.
3.3. Математическая основа будущей единой геоинформационной
системы железных дорог
Наиболее важной математической задачей при построении карты
железных дорог является нанесение прямых и кривых линий [52],
обозначающих оси железнодорожных путей.
Вначале предполагалось строить оси путей из прямых отрезков,
задаваемых формулой (y
1
– y
2
) x + (x
2
– x
1
) y + (x
1
y
2
– x
2
y
1
) = 0, и кривых
Безье, задаваемых формулой
n – количество опорных точек,
i – номер опорной точки,
t – шаг (например, при построении по 10 точкам шаг равен 0,1),
P – координата опорной точки,
B(t) – полином Бернштейна, базисная функция кривой Безье.
66
Этот полином определяет вес опорной точки:
Кривую Безье можно строить для любого числа точек, но вычислять
полиномы, например, 10-тысячной степени очень сложно.
Чтобы упростить задачу, можно разбить точки на группы по 4 штуки,
для каждой группы построить свою кривую Безье и затем соединить
сегменты в одну кривую.
Однако возникает проблема, заключающаяся в том, что кривая не
гладкая, а ломаная (рисунок 16).
Рисунок 16 – Составная кривая Безье
Источник: официальный сайт Новосибирского государственного
технического университета
Чтобы составная кривая Безье была геометрически непрерывной,
необходимо, чтобы каждые три точки в месте стыковки лежали на одной
прямой. Для этого в середину между двумя точками вставляем
дополнительную точку (x’; y’) и строим составную кривую Безье через неё
(рисунок 17).
Несмотря на то, что с помощью кривых Безье возможно построить
непрямые отрезки пути нужной кривизны, проблемой является то, что кривая
Безье не проходит через заданные точки.
67
Рисунок 17 – Геометрически непрерывная составная кривая
Безье
Источник: официальный сайт Новосибирского государственного
технического университета
В случае, когда имеется геодезическая съёмка с локомотива или с
«поля», требуется получить кривую, которая пройдёт через заданные
(полученные в ходе съёмки) точки, при этом по-прежнему оставаясь
геометрически непрерывной. Для решения данной задачи наилучшим
образом подходит интерполяционная кривая Catmull-Rom (рисунок 18).
Рисунок 18 – Интерполяционная кривая Catmull-Rom
Источник: официальный сайт Новосибирского государственного
технического университета
По заданному массиву точек P
0
, P
1
, P
2
, P
3
сплайновая кривая Catmull-
Rom определяется при помощи следующего уравнения:
Как и в случае с кривой Безье, для упрощения расчётов кривую
Catmull-Rom лучше всего строить из сегментов. Каждый сегмент строится на
68
основе 4-х точек. Построение кривой осуществляется исключительно между
двумя внутренними (второй и третьей) точками каждой четвёрки.
Для того, чтобы построить кривую между двумя первыми и двумя
последними точками, нужно создать дополнительные точки-копии
соответственно первой и последней точек.
Четвёрки выбираются с перекрытием, то есть первой точкой текущей
четвёрки выбирается вторая точка предыдущей четвёрки. Например,
сегмент 1 строится на основе точек 0, 1, 2, 3, а сегмент 2 – на основе точек
1, 2, 3, 4.
Кривая определяется набором базовых функций, поэтому изменить её
форму нельзя. Но в случае имеющихся данных навигационной съёмки такой
вариант наиболее предпочтителен, чем регулирование кривизны при помощи
кривых Безье, так как всегда для более точного отображения изгиба пути
можно добавить географическую точку из навигационной съёмки.
При помощи формулы Catmull-Rom возможно получать плавные
переходы между прямыми и кривыми участками пути. Кроме этого, можно
строить прямые отрезки, используя эту же формулу, что значительно
упростит программное обеспечение, исключив из него формулу расчёта
прямого отрезка и логический модуль оценки, прямым или кривым является
отрезок пути. Достаточно будет лишь задать точки, через которые пройдёт
линия пути.
Для вычисления железнодорожной координаты точки объекта,
расположенного сбоку от пути (например, светофора), требуется рассчитать
географические координаты точки-проекции, которая находится на оси пути
и через которую проходит нормаль (перпендикуляр) из точки объекта к оси
пути [56].
Чтобы решить задачу, нужно определить минимальное расстояние p от
точки с известными координатами x
0
; y
0
до линии оси пути, заданной
69
формулой: y = ƒ (x). Уравнение для решения данной задачи будет выглядеть
следующим образом:
P
2
= (x – x
0
)
2
+ (ƒ (x) – y
0
)
2
→ min
Вместо ƒ (x) в формулу нужно подставить формулу построения
сегмента кривой Catmull-Rom.
Вычислив минимальное расстояние и подставив его в формулу, станет
возможно рассчитать координаты точки-проекции, принадлежащей оси пути.
Кроме описанного, существуют другие способы расчёта нормали и
точки-проекции, находящейся на кривой линии [32].
Графический пример построения нормалей для расчёта
железнодорожных координат объектов показан на рисунке 19.
Рисунок 19 – Графический пример расчёта железнодорожных
координат объектов
Источник: выгрузка пользовательских данных в Google Earth
Чтобы исключить сбои в работе программы следует предусмотреть
блокирование вычислений координат точки-проекции, если расстояние от
точки объекта до оси пути более 1000 м, с выдачей ответа, что точка не
принадлежит выбранному железнодорожному участку.
70
Тот же самый ответ следует выдавать, если уравнение не имеет
решения, то есть невозможно построить нормаль на заданную линию оси
пути (например, если объект находится за тупиком).
Обязательным сервисом создаваемой геоинформационной системы
должен быть расчёт расстояний. Расчёт должен выполняться двумя
способами:
– по кратчайшему расстоянию (на плоскости – по прямой);
– по оси пути (повторяя все изгибы пути).
Кратчайшее расстояние в декартовых координатах является прямой
линией. Расчёт между точками по прямой линии в декартовых координатах
выполняется по формуле:
d
2
= (x
2
– x
1
)
2
+ (y
2
– y
1
)
2
.
Но планета Земля имеет форму сферы. Если быть совсем точным, то
наиболее правильно описывает форму Земли не сфера, а эллипсоид. Однако
применение формул расчёта расстояний для сферы даёт максимальную
погрешность не более 0,5%, что можно считать приемлемым.
Кратчайший путь между двумя точками на поверхности Земли будет
представлять из себя дугу, являющуюся частью большого круга,
проходящего через геометрический центр Земли (рисунок 20) [45].
Рисунок 20 – Кратчайший путь на поверхности Земли
Источник: Географические информационные системы и
дистанционное зондирование (GIS LAB), официальный сайт
71
Для расчёта кратчайшего пути нужно применить формулу
гаверсинусов:
– широта и долгота двух точек в радианах.
– разница координат по долготе.
– угловое расстояние.
Широта и долгота для северной широты и восточной долготы
принимаются со знаком «+», а для южной широты и западной долготы – со
знаком «–».
Для пересчёта градусов в радианы используется формула:
ά =
π n
, в которой
180
n – значение широты или долготы в десятичных градусах.
Предыдущая формула гаверсинусов подвержена проблеме точек-
антиподов (точек, расположенных на Земле прямо противоположно друг
другу, из-за чего через них можно провести бесконечное множество больших
кругов). Чтобы решить такую проблему, используется следующая
модификация формулы:
.
Перевод углового расстояния в метрическое выполняется по формуле:
S = R
,
где R – средний радиус Земли.
Средний радиус Земли равен:
– в системе координат ПЗ-90 – 6371000 м [34];
– в системе координат WGS-84 6371008 м [36].
При расчётах расстояний в квадрате местности, не превышающем
20×20 км, погрешности измерений настолько незначительны, что в геодезии
72
такой участок земной поверхности считается плоскостью, на которой
расчёты выполняются в декартовой системе координат.
В случае расчёта расстояния по траектории оси пути общее расстояние,
как правило, будет вычисляться суммированием длин сегментов прямых и
кривых отрезков пути, длины которых в реальности редко превышают 1 км.
Следовательно, кривизной земной поверхности можно пренебречь и
рассчитывать длины сегментов на плоскости через производные.
В предположение о непрерывности производной ƒ′(x) на отрезке [a; b]
(рисунок 21) длина кривой между точками A и B по оси пути выражается
формулой [49]:
или компактнее
Рисунок 21 – Непрерывность производной ƒ′(x) на отрезке [a; b]
Источник: официальный сайт Новосибирского государственного
технического университета
Расчёты следует выполнять отдельно для каждого сегмента кривой
Catmull-Rom. Чтобы значительно сократить время отклика программы на
73
запрос о вычислении расстояния, нужно исходить из условия, что
местоположение оси железнодорожного пути изменяется крайне редко.
Следовательно, координаты точек оси пути можно считать статичными.
Тогда расчёты расстояний лучше всего выполнять клиентским программным
обеспечением в процессе построения кривой Catmull-Rom и готовые данные
сохранять на центральном сервере в базе данных, как атрибуты объекта, а
затем использовать при расчёте длин по оси пути. Это приведёт к тому, что в
ответ на клиентский запрос для большинства сегментов нужно будет
выполнить лишь операции сложения, в редких случаях прибегая к
использованию более сложных формул. Соответственно, возрастёт
быстродействие программы.
Очень часто требуется знать реальную физическую длину
железнодорожного километра и железнодорожного пикета (их длины редко
бывают равны точно 1000 м и 100 м), расчёт их длин следует также
выполнять в процессе построения системой километража и пикетажа
железнодорожного участка, а затем готовые данные о длинах километров и
пикетов хранить в виде свойств объектов.
3.4. Разработка интерфейса и блок-схем алгоритмов действия единой
геоинформационной системы железных дорог
Перед тем, как перейти к непосредственному описанию алгоритмов
Единой геоинформационной системы управления безопасностью движения и
перевозочным процессом железных дорог, следует выбрать способ
отображения алгоритмов, по которому впоследствии будет возможно
написать программу.
Текстовое описание оказалось весьма неудобным, само описание
занимает много времени и в нём легко допустить ошибку, выявить которую
при последующей проверке очень непросто. Гораздо более наглядным и
понятным оказался способ построения блок-схем. Из общедоступных
74
предлагаемых способов самым удачным пришёлся язык построения блок-
схем под названием «Дракон» [35].
Условные обозначения (иконы) языка блок-схем «Дракон» [35]
представлены в приложении Ж.
Интерфейс новой ГИС должен иметь вид карты земной поверхности,
имеющей подкладку в виде спутникового снимка. На этой карте будут
нанесены все железнодорожные пути и все объекты железнодорожной
инфраструктуры. Для исключения нагромождения на карте железных дорог
различных надписей все объекты, их точки и линии будут иметь на карте
сокращённые условные обозначения, а также различные типы объектов для
быстрого поиска будут обозначаться различным цветом. Пример такого
отображения показан на рисунке 22.
В случае загрузки в систему слоя топографических карт вид карты
местности должен соответствовать требованиям Инструкции по развитию
съёмочного обоснования и съёмке ситуации и рельефа с применением
глобальных навигационных спутниковых систем ГЛОНАСС и GPS, ГКИНП
(ОНТА)-02-262-02 [2].
Скачать из интернета спутниковые снимки высокого разрешения [50]
для использования в единой ГИС железных дорог возможно при помощи
программы «SAS.Планета» [53].
В соответствии с данным описанием при запуске единой ГИС
железных дорог должно открываться окно карты земной поверхности с
изображением спутникового снимка данного участка Земли, а поверх снимка
должны накладываться условные изображения железнодорожных путей и
объектов инфраструктуры, оказавшихся в границах рассматриваемого
квадрата карты (рисунок 22). Пример блок-схемы алгоритма запуска
программы показан в приложении З на рисунке З1.
Для просмотра свойств объектов и путей следует отвести отдельную
зону в общем окне программы, а также возможно применить всплывающие

Смотрите также:

"Автоматизация обработки заявок ООО "Проектно-Строительная Компания"
"Автоматизация процесса аттестации персонала для ООО "Нэт Бай Нэт Холдинг"
"Анализ интернет-активности конкурентов ( на примере конкурентов "Газпром нефть")
"Бухгалтерский учёт и аудит расчётов с подотчётними лицами в организации на примере ООО "ЛОЦ 10""
«Психологическое сопровождение персонала в организации на примере ООО «Крокус»
Cовершенствование деловой оценки персонала в организации (на примере ООО "Даймонд кейтеринг развитие")
PR как средство продвижения организации (на примере ПАО "Тамбовский завод "Комсомолец им. Н.С. Артемова")
PR-коммуникации в сфере общественного питания (на примере кафе-кондитерской «Cream Cheese»)
SMM как средство повышения эффективности работы учреждений социокультурной сферы (на примере Малого театра)
Value-based education: ценности в системе образования и способы их реализации на уроке английского языка. Опыт Европейских стран