Optimization of administrative units’ borders
Table of contents
Share
QR
Metrics
Optimization of administrative units’ borders
Annotation
PII
S207751800000035-7-1
Publication type
Article
Статус публикации
Published
Authors
Ilyas Galimov 
Affiliation:
Address: Russian Federation, Ufa,
Abstract
This article analyzes the computer program implementing the problem of optimization of administrative units’ borders. Different approaches to defining criteria of optimization in forming borders of administrative units are considered. Particular attention is paid to the methods of programming in solving tasks of forming structured space in the virtual world created by a computer program. The author conduct critical analysis of features of programming on Netlogo compared to known object-oriented programming languages .
Keywords
Netlogo, administrative units’ borders, forming borders of administrative units
Received
17.08.2014
Date of publication
30.11.2014
Number of purchasers
3
Views
3217
Readers community rating
0.0 (0 votes)
Cite Download pdf
1

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

2

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

3

Стремясь восполнить этот пробел, в этой статье я проанализирую компьютерную программу, разработанную Нафисом Гизатовым, научным сотрудником Института социально-экономических исследований Уфимского научного центра РАН несколько лет назад [2, 3, 4], с точки зрения особенностей реализации данной программы и путей её развития.

4

Модель использует реальную карту Республики Башкортостан с отраслями сельского хозяйства, крупными населёнными пунктами. На карте обозначены физические препятствия - реки и горы. Каждый элемент территории является отдельным агентом. Автор рассматривает три фактора, определяющих границы административных единиц: а) притяжение территории к крупному центру; б) однородность территории по степени преобладания отрасли сельского хозяйства; в) физические препятствия, такие как реки и горы (рис.1).

5

Программа, реализующая агент-ориентированную модель, написана в среде NetLogo. Сама среда NetLogo является распространённым и общепризнанным на сегодняшний день средством агент-ориентированного моделирования и широко используется учёными и практиками по всему миру. Среда NetLogo написана на языке программирования Java, так что является платформно-независимой и может работать как в Windows, так и в Mac и Linux.

6

Карта Республики Башкортостан взята автором, как обыкновенный растровый файл формата png. Сама карта представляет собой прямоугольную область. Территория Республики Башкортостан выделена белым цветом, а окружающая – чёрным. Крупные населённые пункты вводятся прямо в коде программы со своими координатами. Карты рек и гор также представлены png файлами.

7

Рис.1. Интерфейс модели оптимального районообразования по разным критериям, реализованная на языке NetLogo

8

Пользователь может выбирать, какие факторы учитывать, а какие нет. Обязательна только загрузка карты. Можно выбрать: учёт рек, учёт гор, учёт отраслей сельского хозяйства.

9

Алгоритм, заложенный в коде программы, представлен следующими шагами.

10
  1. Загрузка административной карты Башкортостана.
  2. Загрузка рек.
  3. Загрузка гор.
  4. Загрузка отраслей сельского хозяйства.
  5. Определение населённых пунктов с координатами.
  6. Процесс районирования с учётом:
11
  1. Притяжения к ближайшему центру.
  2. Обхода препятствий.
  3. Разворота приграничных с рекой территорий.
  4. Отраслевых зон.
  5. Поиска не отнесённых к районам территорий и прикрепления их к ближайшему центру.
12 При запуске программы, она показывает варианты районирования Республики Башкортостан в зависимости от выбранных факторов и параметров.
13 Безусловно, работа в NetLogo удобна с точки зрения программирования. Однако она имеет некоторые недостатки, которые преодолимы с помощью использования языков программирования высокого уровня, таких как C++, C# или Java.
14 Во-первых, определения данных о районных центрах и городах путём присваивания значений прямо в тексте кода программы ограничивает её универсальность. Без переделки невозможно эту программу применить к другим субъектам Российской Федерации, к Российской Федерации в целом, к регионам других стран. Поэтому, безусловно, задание крупных населённых пунктов целесообразно проводить извне. Например, используя современные подходы – с использованием геоинформационных систем. Более того, для получения точной картины, следует задавать не только крупные, а вообще все населённые пункты. Современные вычислительные мощности позволят обработать всю информацию, и модель получится точнее.
15

Во-вторых, задание карты Республики Башкортостан путём ввода растрового изображения также не является универсальным и точным решением. Здесь всё определяется набором пикселей и цветов, что в общем случае не верно. Существенные ограничения вводит разрешение изображения. С другой стороны, сами пиксели никакой ролью в качестве объектов не обладают. В реальности территориальные образования формируются вокруг населённых пунктов. Современным подходом к решению задач, связанных с географией, является применение геоинформационных систем. Языки программирования высокого уровня с помощью специальных библиотек позволяют обращаться к геоинформационным системам. В геоинформационной системе заложена информация и о границах субъектов Российской Федерации, муниципальных районов, сельских и городских поселений, городских округов, обо всех населённых пунктах. Также в геоинформационной системе могут храниться и другие данные. Подход к районообразованию необходимо начинать не с рассмотрения центров и территорий, а с рассмотрения всей совокупности населённых пунктов.

16

В-третьих, информация об отраслевой структуре местности в программе задана грубо. Гораздо более точным методом задания такой информации было бы использование информации Федеральной службы государственной статистики, а также информации с порталов Открытых Данных Российской Федерации и субъектов Российской Федерации. Данные об отраслевой структуре, месторождениях полезных ископаемых, водных ресурсах могут храниться и в специализированных геоинформационных системах. Более того, при дальнейшем развитии модели и программы, можно использовать данные о конкретных предприятиях, организациях, учреждениях с классификацией в соответствии с ОКВЭД, ОКОНХ и т.д.

17

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

18

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

19

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

20

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

21

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

22

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

23

С учетом высказанных соображений планируется написание программы на языке высокого уровня с учётом всех перечисленных замечаний и моделирование на примере субъектов Российской Федерации. Целесообразно в дальнейшем также изменение программы, путём распространения её на всю территорию Российской Федерации, путём включения в алгоритм разбиения территории страны на субъекты, расширение программы до континентального, планетарного масштабов. Особую актуальность это приобретает в связи с активизацией процессов интеграции в рамках Шанхайской организации сотрудничества, БРИКС.

24

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

Comments

No posts found

Write a review
Translate