Программа Wolfram Mathematica как универсальная среда для обработки и анализа географической информации

Картография и геоинформатика

УДК: 91

А.В. Мартыненко

ПРОГРАММА WOLFRAM MATHEMATICA КАК УНИВЕРСАЛЬНАЯ СРЕДА ДЛЯ ОБРАБОТКИ И АНАЛИЗА ГЕОГРАФИЧЕСКОЙ ИНФОРМАЦИИ4*

Уральский государственный университет путей сообщения, г. Екатеринбург Уральское отделение Российской академии наук, г. Екатеринбург

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

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

Ключевые слова: геоинформационная система, программа Wolfram Mathematica, транспортные сети, гравиметрические аномалии.

А. V. Martynenko

PROGRAM WOLFRAM MATHEMATICA AS A UNIVERSAL TOOL FOR PROCESSING AND

ANALYSIS GEOGRAPHIC INFORMATION

Ural State University of Railway Transport, Yekaterinburg;

Institute of Economics of the Ural Branch of the Russian Academy of Science, Yekaterinburg

The rapid development of information technology over the last few decades has led to a widespread occurrence of geographic information systems. The application of cartographic methods in geography and many other sciences has been raised to a new quality level. The most popular geographic information systems allow one to solve a very wide range of standard cartographic problems, however, in many cases their capabilities are insufficient for implementing various mathematical and statistical methods for processing spatial data.

This paper is devoted to the selection of information and analytical tools for solving any problems arising when handling and analyzing spatial (geographical) information. It is shown that the program Wolfram Mathematica possesses the appropriate functionality. The methodological basis of this program is demonstrated by concrete examples. In particular, the example of transport network shows peculiarities of processing vector data, the example of work with raster information is provided with a detailed description of processing gravimetric and topographic data.

Keywords: geographic information system, program Wolfram Mathematica, transport network, gravimetric anomalies.

doi 10.17072/2079-7877-2016-4-128-138

Введение

В настоящий момент широкое распространение получили различные программные продукты, специально предназначенные для работы с географической (картографической) информацией. Речь

© Мартыненко А.В., 2016

* Работа выполнена при поддержке РФФИ, проект №_16-06-00324

Картография и геоинформатика

идет о таких программах, как QGIS, MapWindow GIS, ArcGIS, gvSIG и многих других популярных геоинформационных системах. В этих программах реализованы базовые инструменты для создания и обработки карт, а также, как правило, инструменты для анализа и элементарной математической обработки пространственной информации. Причем указанные программы имеют интуитивно понятный интерфейс и не требуют каких-то специальных навыков для своего использования.

Такая простота и эффективность в реализации основных инструментов обусловливают возрастание сложности при выполнении чего-то лежащего за пределами базового инструментария, реализованного в программе: расширение функциональности возможно только путем написания соответствующего программного кода на каком-либо языке программирования. Например, MapWindow GIS является программой с открытым кодом на языке C#, а QGIS допускает создание дополнительных модулей на языке Python. Производителями и сторонними разработчиками для всех перечисленных выше программ разработаны библиотеки модулей и функций, реализующие многие «нестандартные» инструменты. Однако это не устраняет имеющихся сложностей. Если необходимый инструмент отсутствует в стандартном наборе и в дополнительных библиотеках, то для реализации какой-либо «нестандартной» функции пользователю необходимо написать соответствующую программу, что требует непропорционально больших затрат ресурсов.

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

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

Указанных сложностей и ограничений полностью лишена программа Wolfram Mathematica (WM), которая, являясь универсальной и чрезвычайно гибкой средой для обработки любой научной информации, хорошо подходит для работы с географическими данными. Эта программа пользуется значительной популярностью среди специалистов по прикладной математике, однако мало известна представителям других наук. Данная статья посвящена описанию основных аспектов использования программы WM для обработки и анализа пространственных (географических) данных. В первом разделе коротко излагаются основные особенности WM. Во втором разделе демонстрируются возможности WM для обработки и анализа дискретных пространственных структур (на примере транспортной сети). Третий раздел посвящен вопросам визуализации и анализа непрерывных пространственных структур (на примере топографических и гравиметрических данных).

Основные особенности программы WM

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

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

Картография и геоинформатика

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

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

В WM есть функции, позволяющие осуществлять взаимодействие со всеми устройствами компьютера, операционной системой, компьютерными сетями и т.п.

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

Документ WM, в котором производятся все манипуляции с данными, представляет собой последовательность функций, примененных к каким-либо внешним данным или к результатам применения других функций в данном документе. Результат применения функции может быть отображен в документе WM, который называется блокнотом (notebook). Такое название хорошо отражает идеологию использования WM для научных исследований, которая заключается в том, что документ WM представляет собой интерактивный блокнот исследователя, позволяющий в любом месте получить необходимую справочную информацию, выполнить математический расчет, провести статистическую обработку данных, построить график и т.д.

Подчеркнем, что WM может работать с практически любыми данными. Это возможно благодаря тому, что WM «понимает» различные форматы файлов, т.е. в WM есть функция, которая может загрузить содержимое файла определенного формата прямо в блокнот. Всего WM поддерживает около 7000 различных форматов, среди которых есть как широко распространенные (doc, xls, jpeg и т.д.), так и достаточно редкие. В частности, WM поддерживает многие форматы хранения геоданных, например, shape-файлы (shp).

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

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

Обработка и анализ дискретных пространственных структур (векторных данных) в

программе WM

В работах автора [1; 2] изучалась сеть автомобильных дорог Свердловской области. В частности, для всех элементов сети были рассчитаны показатели центральности и доступности, позволяющие выявить и описать некоторые структурные свойства сети. В качестве исходного материала в этих работах использовались данные OpenStreetMap в формате shape-файлов [3], а обработка и анализ производились в WM. На наш взгляд, технические аспекты использования программы WM в указанных работах хорошо демонстрируют основные особенности применения WM для исследования транспортных сетей, поэтому ниже мы детально опишем использование WM для всех этапов обработки, анализа и расчета используемых показателей.

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

Картография и геоинформатика

Загруженные в блокнот слои могут быть представлены в виде карты. Для этого можно воспользоваться функцией GeoGraphics, которая рисует геометрические объекты, заданные координатами своих элементов (точки, ломаные, полигоны, окружности и т.д.) в соответствии с указанной картографической проекцией (в WM реализованы около 500 стандартных проекций и есть возможность задавать пользовательские проекции). Собственно говоря, функция GeoGraphics является основной функцией для работы с картами. С ее помощью, в частности, можно загружать в блокнот карты с сервера компании Wolfram.

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

Программа WM позволяет упростить линейный слой, сохранив при этом информацию, которая важна для проводимого анализа. Упрощенная сеть содержит 1616 звеньев и 1405 узлов. Полученный результат наглядно представлен на рис. 1.

Рис. 1. Фрагмент транспортной сети Свердловской области: а - исходная сеть автомобильных дорог;

б - упрощенная сеть автомобильных дорог

В работах [1; 2] были рассчитаны показатели доступности и центральности для всех элементов сети

Е N (и) Ь ЯР

ф

Е N

UGV

WBC (e) =

r >2

V ueV У

где ((V) - показатель доступности узла V; V- множество всех узлов транспортной сети; Ы(и) -людность населенного пункта и; ЬЯР (V, и) - длина кратчайшего пути между узлами и и V; ЖВС(е) -показатель центральности звена е; <Ут (е) - индикатор, равный единице, если кратчайший путь

между узлами и и V содержит звено е, и нулю в противном случае.

Показатели типа (1) и (2) широко используются для анализа транспортных сетей [4]. Их вычисление в WM можно осуществить, используя функции для работы с графами. В частности, транспортную сеть можно представить в виде весового графа (на рис. 2 изображен граф, соответствующий фрагменту транспортной сети, изображенной на рис. 1, б).

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

U,VGV

Картография и геоинформатика

Рис. 2. Фрагмент транспортной сети Свердловской области, представленный в виде графа

Данные о людности населенных пунктов в работах [1; 2] были взяты из результатов Всероссийской переписи населения 2010 г. [5], которые представлены в виде электронной таблицы Microsoft Excel. Информация из электронной таблицы легко импортируется в блокнот WM, после чего значения людности можно использовать для проведения расчетов.

После вычисления всех величин, входящих в формулы (1) и (2), и расчета по ним показателей доступности и центральности (непосредственно для расчета используются математические функции) необходимо проанализировать и визуализировать полученные результаты. Для анализа могут быть использованы статистические инструменты WM. Например, в работах [1; 2] построены гистограммы для заданных выборок, определены параметры заданной нелинейной модели по методу наименьших квадратов, построены эмпирические распределения по заданной выборке и т.д.

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

Рис. 3. Пространственное распределение населенных пунктов Свердловской области по показателю ф : Населенные пункты, для которых,- а - ф < 150 км, б - 150 км < ф < 200 км, в - 200 км <ф < 250 км,

г - 250 км <ф < 300 км

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

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

Картография и геоинформатика

Рис. 4. Пространственное распределение автодорог Свердловской области по показателю центральности.

Показаны участки сети автодорог, для которых показатель центральности больше: а - 7%, б - 3%, в - 1%,

г -0,5%

Визуализация и анализ непрерывных пространственных структур (растровых данных) в

программе WM

Здесь будут продемонстрированы возможности WM для обработки непрерывных структур на примере топографических и гравиметрических данных. В качестве источника исходной информации будем использовать данные Международного гравиметрического бюро (International Gravimetric Bureau) [6]. В частности, на сайте IGB имеются детальные данные по гравитационным аномалиям (в свободном воздухе, Буге и изостатической), а также данные по рельефу. Такая информация находит применение в самых различных исследованиях (см. например, [7; 8]).

Данные IGB являются достаточно детализированными. Значения аномалий и высоты над уровнем моря даны для сетки с шагом 2', покрывающей всю поверхность Земли, и доступны для загрузки в виде текстовых файлов. Каждый файл представляет собой список из троек чисел, где два первых числа - это географические координаты, а третье число - соответствующая гравитационная аномалия (для файла с рельефом - высота над уровнем моря).

Особенность обработки указанных файлов заключается в том, что они имеют очень большой размер (2620572 Кб), и для того, чтобы открыть любой из таких файлов в каком-либо приложении (например, в текстовом редакторе), требуется значительный объем оперативной памяти. Однако в WM есть средства для удобной работы с подобными файлами. Таким образом, из исходного файла можно извлечь данные, относящиеся к какой-либо части земной поверхности.

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

1) использовать функцию GeoGraphics (этот подход описан выше);

2) использовать средства WM, предназначенные для визуализации функций от двух переменных.

Более подробно рассмотрим второй подход. Чтобы использовать математические инструменты

WM, необходимо пересчитать географические координаты в соответствии с выбранной картографической проекцией. После преобразования географических координат в декартовы прямоугольные координаты можно выполнить интерполяцию данных. Таким образом, исходные данные о гравиметрических аномалиях и высотах могут быть представлены в виде функции двух переменных. Это позволяет, в частности, использовать средства математического анализа для обработки исходной информации, а также визуализировать геоданные как графики функций двух переменных. Основные возможности подобной визуализации представлены на рис. 5 и 6. На рис. 5, а построен график линий уровня (горизонталей), а на рис. 5, б - линии стока.

Программа WM также позволяет построить трехмерную карту рельефа (рис. 6). Разумеется, WM допускает различные комбинации визуализаций, представленных на рис. 5 и 6, а также цветовое оформление, нанесение текстовых и графических маркеров, выделение части изображаемой поверхности и т.д.

а) б)

Рис. 5. Двумерная визуализация рельефа г. Екатеринбург: а - с помощью горизонталей; б - с помощью

линий стока

Рис. 6. Трехмерная визуализация рельефа г. Екатеринбурга

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

еэ.о еэ.2 еэ.4 еэ.е еэ.в 70Д

О) б)

Рис. 7. Профили рельефа г. Екатеринбурга (точка на графике - центр города) по направлению: а - Восток-

Запад; б - Север-Юг

В качестве иллюстрации возможностей WM для анализа непрерывных пространственных данных рассмотрим вопрос о корреляции между различными гравиметрическими аномалиями и рельефом. Например, вычислим соответствующие коэффициенты корреляции для Большого Урала (территория от 50° до 69° с.ш. и от 49° до 87° в.д.). Этой территории соответствуют около 500000 точек, снабженных гравиметрическими аномалиями и значениями высот над уровнем моря. Мы не будем формировать случайную выборку из этих точек, а будем использовать все имеющиеся данные. Полученные таким образом результаты представлены в виде корреляционной матрицы (таблица).

Коэффициенты корреляции

Аномалия Аномалия в Аномалия Буге Изостатическа Высота над

свободном воздухе я аномалия уровнем моря

Аномалия в 1 0,56 0,93 0,31

свободном воздухе

Аномалия Буге 0,56 1 0,65 -0,6

Изостатическая 0,93 0,65 1 0,13

аномалия

Высота над 0,31 -0,6 0,13 1

уровнем моря

Коэффициенты корреляции дополним изображением корреляционных полей для наибольшего и наименьшего значений коэффициента корреляции (рис. 8). Необходимо подчеркнуть, что в данной работе мы не обсуждаем смысл полученных результатов, а только демонстрируем технические возможности программы \¥М.

Рис. 8. Корреляционные поля для: а - изостатической аномалии и аномалии в свободном воздухе; б - изостатической аномалии и высот над уровнем моря

Картография и геоинформатика

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

Выводы

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

Библиографический список

1. Мартыненко А.В. Взаимосвязь функциональных классов автомобильных дорог с показателем центральности (на примере автодорожной сети Свердловской области) // Вестник УрГУПС. 2015. №4. (28). C. 9-16.

2. Мартыненко А.В., Петров М.Б. Влияние начертания транспортной сети на показатели доступности (на примере Свердловской области) // Региональные исследования. 2016. № 2 (52). С. 2130.

3. Основные геоданные GIS-Lab. [Электронный ресурс]. URL: http://gis-lab.info/qa/data.html (дата обращения: 20.09.2016).

4. Barthelemy M. Spatial networks // Physics Reports-review Section of Physics Letters. 2011. №1 (499). P. 1-101.

5. Результаты Всероссийской переписи населения 2010г. URL: http://www.gks.ru/perepis2010/perepis_itogi1612.htm (дата обращения: 20.09.2016).

6. Официальный сайт Международного Гравиметрического Бюро. URL: http://bgi.obs-mip.fr/ (дата обращения: 20.09.2016).

7. Литовский В.В. Гравиогеография, проблемы инфраструктуры и размещения производительных сил // Глубинное строение, геодинамика, тепловое поле Земли, интерпретация геофизических полей: мат. конф.: Екатеринбург: УрО РАН, 2011. С. 232-235.

8. Литовский В.В. Проблемы пространственного формирования опорного транспортного каркаса Урала: мегапроект «Урал промышленный - Урал Полярный» // Транспорт Урала. 2011. №2. С. 21-29.

References

1. Martynenko, A.V. (2015), "Relationship between functional classes of motor roads with centrality factor (by the example of road network of Sverdlovsk oblast)", Vesrnik UrGUPS [Herald of USURT], No 4(28), pp. 9-16.

2. Martynenko, and A.V., Petrov, M.B. (2016), "Influence of surface transportation network on accessibility of settlements (by the example of Sverdlovsk oblast)", RegionaFnye issledovaniya [Regional research], No. 2 (52). pp. 21-30.

3. "Basic geodata of GIS-Lab" available at: http://gis-lab.info/qa/data.html

4. Barthelemy, M. (2011), "Spatial networks", Physics Reports-review Section of Physics Letters, No. 1(499). pp. 1-101.

5. "The results of Russian Census of 2010" available at: http://www.gks.ru/perepis2010/perepis_itogi1612.htm

6. "The official website of the International Gravimetric Bureau", available at: http://bgi.obs-mip.fr/

7. Litovsky, V.V. (2011), "Graviogeography, the problems of infrastructure and productive forces" [Deep structure, geodynamics, thermal field of the Earth, interpretation of geophysical fields],[ The proceedings of Fifth scientific readings in memory of Y. P. Bulashevich], Ekaterinburg, Russia, pp. 232-235.

8. Litovsky, V.V. (2011), "Problems of spatial formation of the Urals Key transport frame: Megaproject "Ural Industrial - Ural Polar"", Transport Urala [Transport of the Ural], No. 2, pp. 21-29.

Поступила в редакцию: 03.10.2016

Картография и геоинформатика

Сведения об авторе

Мартыненко Александр Валериевич

кандидат физико-математических наук, доцент кафедры высшей и прикладной математики Уральского государственного университета путей сообщения;

Россия, 620034, г. Екатеринбург, ул. Колмогорова, 66;

старший научный сотрудник центра развития и размещения производительных сил Института экономики УрО РАН;

Россия, 620014, г. Екатеринбург, ул.

Московская, 29;

e-mail: amartynenko@rambler.ru

About the author

Alexander V. Martynenko

Candidat of Physical and Mathematical Sciences; associate professor, Higher and applied mathematics department, Ural State University of Railway Transport, Russia, 620034, Ekaterinburg,. 66 Kolmogorova Str;

senior researcher of Center of production forces development and placement, Institute of Economics of the Russian Academy of science (the Ural Branch), Russia, 620014, Ekaterinburg, 29 Moskovskaya Str. e-mail: amartynenko@rambler.ru

Просьба ссылаться на эту статью в русскоязычных источниках следующим образом:

Мартыненко А.В. Программа Wolfram Mathematica как универсальная среда для обработки и анализа географической информации // Географический вестник = Geographical bulletin. 2016. № 4 (39). С. 129-138. doi 10.17072/2079-7877-2016-4-128-138 Please cite this article in English as:

Martynenko А. V. Program Wolfram Mathematica as a universal tool for processing and analysis geographic information // Geographical bulletin. 2016. № 4 (39). P. 129-138. doi 10.17072/2079-7877-2016-4-128-138