Научная статья на тему 'Технология работ с топографической информацией в имитационных моделях Actor Pilgrim'

Технология работ с топографической информацией в имитационных моделях Actor Pilgrim Текст научной статьи по специальности «Математика»

CC BY
259
84
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Прикладная информатика
ВАК
RSCI
Область наук
Ключевые слова
ИМИТАЦИОННЫЕ МОДЕЛИ / SIMULATION MODELS / СИСТЕМНЫЙ АНАЛИЗ / SYSTEM ANALYSIS / ГЕОИНФОРМАЦИОННЫЕ ПРОГРАММНЫЕ СРЕДСТВА / GEOGRAPHIC INFORMATION SYSTEMS

Аннотация научной статьи по математике, автор научной работы — Емельянов А.А., Емельянова Н.З.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

The technology of working with topographic information in Actor Pilgrim simulation models

The completeness and accuracy of the information content obtained by means of topographic maps, allow to solve a variety of regional economic, technical and environmental objectives and the civil protection tasks. System analysis of the rapidly changing situation in the solution of such problems requires to use powerful simulation tools. One such tool is a general-purpose simulation system Actor Pilgrim, which, unlike the other is uniquely modeling the financial and economic processes, and it does not need to acquire specialized geographic information systems. Technological properties of the GIS software modeling system presented in this article.

Текст научной работы на тему «Технология работ с топографической информацией в имитационных моделях Actor Pilgrim»

№ 4 (46) 2013

А. А. Емельянов, докт. экон. наук, профессор Национального исследовательского университета «МЭИ», гг. Москва, Смоленск

Н. З. Емельянова, канд. экон. наук, доцент Национального исследовательского университета «МЭИ», г. Москва

технология работ с топографической информацией в имитационных моделях Actor Pilgrim

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

введение

Экономические явления на территории страны или региона и их динамика основаны на различных закономерностях, в том числе на общих энергетических, поскольку для перемещения людей, товаров и услуг на протяжении длительных периодов времени по поверхности Земли необходимы затраты определенной энергии на единицу площади жизнедеятельности, — энергии, которую населению свойственно экономить. Поэтому имитационное моделирование региональных процессов должно опираться на топографию и топографические карты [2, 3, 4].

1. Модельное картографическое «хозяйство» и правила работы с ним

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

1 Электронный ресурс http://ru.wikipedia.org/wiki/.

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

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

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

№ 4 (46) 2013

Топографические карты в зависимости от масштабов условно подразделяют на следующие типы:

• планы с масштабами до 1:5000 включительно;

• крупномасштабные карты в масштабах от 1:10 000 до 1:100 000;

• среднемасштабные карты в масштабах от 1:200 000 до 1:1000 000;

• мелкомасштабные карты в масштабах менее 1:1000 000.

Наиболее точными считаются крупномасштабные топографические карты, выполненные в нормальной конической проекции. Однако в России для использования таких карт существуют ограничения: их применение в конкретном экономическом проекте на территории страны возможно только после получения разрешений от надзорных органов2 (Роскартогра-фии и других, в зависимости от характера проекта). Несмотря на то, что государства, £ вышедшие из состава СССР, разрешили а свободное обращение старых (до 1991 г.) ^ военных крупномасштабных карт, их ис-I пользование в проектах на территории § России запрещено и в настоящее время. й Причина этого запрета одна: в процессе I работы, посредством данных карт, благо-§ даря их подробности, может быть получе-§ на и проанализирована информация кон-I фиденциального характера, публиковать >s и распространять которую нельзя в соот-§ ветствии с Законом. ■1 Однако в последние годы, в связи с по-■§. явлением в свободной продаже GPS-навига-торов, внедрением систем ГЛОНАСС, а так-| же свободным распространением корпора-I цией Google Inc. космических фотоснимков ■Ц территории России и других стран через ¡5 Интернет, появились два новых семейства g крупномасштабных карт, обладающих вы-£ сокой относительной точностью, на которых отсутствуют условные обозначения оборон-

I -

О 9

g 2 Денисенцев С. Военно-промышленный курьер.

ВПК — Общероссийская еженедельная газета. 2012. Й № 15 (432). 18 апреля.

ных объектов и «сетки» военных карт, что способствует их внедрению:

• крупномасштабные атласы территорий России на бумажных носителях, периодически появляющиеся в свободной продаже;

• электронные растровые карты Госгис-центра (ГГЦ-карты).

ГГЦ-карты могут закачиваться, например, в GPS-навигаторы автомобилистов или использоваться в системах ГЛОНАСС, внедряемых на автомобильном транспорте в связи с решениями руководящих органов. Некоторые такие карты имеются в свободном доступе3. Их применение возможно и в экономических проектах. Но проведение с помощью ГГЦ-карт компьютерных измерений и вычислений невозможно без специальных компьютерных программ [4], поскольку привязка навигационных систем GPS и ГЛОНАСС к координатам Земли по умолчанию осуществляется по показаниям навигационных спутников Земли. Относительная точность такой привязки высокая, но абсолютная точность невелика из-за наличия временного «дрейфа» точки пересечения поверхности эллипсоида Земли «вертикалью» спутника — условной линии, соединяющей спутник с центром эллипсоида, причем у каждого спутника свой дрейф.

Номенклатура топографических карт

(в том числе и электронных ГГЦ-карт) регламентируется международными правилами разграфки поверхности Земли. Однако в России есть две особенности привязки карт к географическим координатам поверхности Земли:

1) точкой привязки отечественных карт является центр Круглого зала Пулковской обсерватории, расположенной рядом с Санкт-Петербургом, координаты которой известны с очень высокой точностью4;

3 Электронный ресурс: http://www.loadmap.net/ru.

4 В Англии, например, в качестве пункта привязки используется определенная точка в Гринвичской обсерватории недалеко от Лондона.

66 у

№ 4 (46) 2013

2) разграфка с 1946 г. была привязана к референц-эллипсоиду Земли (эллипсоиду Ф. Н. Крассовского [5]) с параметрами:

• экваториальная полуось равна 6 378 245,000 м;

• полярная полуось эллипсоида 6 356 863,019 м.

Пример разграфки территории России по международным правилам на карты масштаба 1:1 000 000 (в 1 см 10 км) показан на рис. 1.

4 карты масштаба 1:500 000, в 1 см 5 км (номера 1 ■ 4);

36 карт масштаба 1:200 000, в 1 см 2 км (номера 01 ■ 36);

144 карты масштаба 1:100 000, в 1 см 1 км (номера 001 ■ 144).

Этот лист находится между параллелями Северной широты 52° 00' 00"» и 56° 00' 00"» и между меридианами Восточной долготы 30° 00' 00"» и 36° 00' 00"».

N-36 СМОЛЕНСК

30°00' 31°00' 32°00' 33°00' 34°00' 35°00' 36°00' 30°30' 31°30' 32°30' 33°30' 34°30' 35°30'

Рис. 1. Разграфка поверхности Земли на листы масштаба 1:1 000 000

Рассмотрим подробнее эти правила применительно к территории России. Каждый лист карты-«миллионки» масштаба 1:1 000 000 захватывает определенный диапазон:

6° в направлении запад-восток, если участок Земли находится южнее 60-градусной параллели северной широты (или 12° в направлении запад-восток, если рассматриваемый участок находится севернее параллели 60° — так называемые «сдвоенные» карты);

4° в направлении юг-север.

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

Обозначения карт более крупного масштаба получаются условным делением соответствующей карты-«миллионки» по правилам, показанным на рис. 2. В качестве примера выбран лист «Смоленск»:

31°30' 32°30' 33°30' 32°00' 33°00'

34°30' 35°30' 34 35°00' 36°00'

Рис. 2. Правила разграфки листа миллионной карты 1:1 000 000 на карты масштабов 1:500000, 1:200 000 и 1:100 000

Рассмотренная выше номенклатура, соответствующая международным правилам разграфки, позволяет найти Смоленск на картах:

N-36 Смоленск — карта масштаба 1:1000 000 (в 1 см 10 км);

N-36-1 Смоленск — карта масштаба 1:500 000 (в 1 см 5 км);

N-36-09 Смоленск — карта масштаба 1:200 000 (в 1 см 2 км);

N-36-041 Смоленск — карта масштаба 1:100 000 (в 1 см 1 км).

На практике используются и карты масштабов 1:50 000 (пятисот метровая) и 1:25 000 (двести пятьдесят метровая). Правила обозначения таких карт в преде-

Si

Щ

со Эй

еа §

2 5? I

щ <

67

-N ПРИКЛАДНАЯ ИНФОРМАТИКА

№ 4 (46) 2013 ' -

лах листов масштаба 1:100 000 показаны на рис. 3.

N-36-041 СМОЛЕНСК

32° 00' 00" 32° 15' 00" 32° 30' 00"

32° 07' 30" 32° 22' 30"

a b К a r. b ^

c У d u c У d

a _ о Смоленск,. b S a n b

c У d c У d

jS

С

CL ^

S

и ^

! S

i

g § »

s ¡

1

! ir

'S

5 §

«

6

о с o

£ SI

I

0 §

1

32° 07' 30" 32° 22' 30"

32° 00' 00" 32° 15' 00" 32° 30' 00"

Рис. 3. Правила разграфки карты 1:100 000 на карты масштабов 1:50 000 и 1:25 000

В соответствии с рис. 3 Смоленск можно найти на картах:

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

N-36-041-C Смоленск — карта масштаба 1:50 000 (в 1 см 500 м);

N-36-041-C-a Смоленск — карта масштаба 1:25 000 (в 1 см 250 м).

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

2. Программная привязка растровой топографической карты к географическим координатам Земли в Actor Pilgrim

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

ления недвижимостью с помощью компьютера, являются специальные программные комплексы — геоинформационные системы (ГИС).

ГИС имеют следующие свойства:

• в их состав входит база данных (и не одна), причем полная технология обработки информации в ГИС значительно шире, чем просто работа с базой данных;

• ГИС рассчитана не просто на обработку данных, а на проведение экспертных оценок во многих ситуациях. Другими словами, ГИС должна включать в свой состав экспертную систему (одну или несколько), а этого только на уровне базы данных достигнуть невозможно, так как экспертная система является более общей по отношению к базе данных;

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

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

Моделирующая система Actor Pilgrim и ее имитационные модели позволяют работать с различными базами данных, используя стандартный ODBC-интерфейс и другие средства, в том числе, с геоинформационными системами Arc View, Map Info. Кроме того, эта система имеет свои средства соз-

68 y

№ 4 (46) 2013

Р - Северный полюс 0,5 V|/

к = Ьт.ЬтНе!^ У i

Рис. 4. Схема привязки электронной растровой карты

Si

Щ

со эй

еа §

2 5?

I

>3

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

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

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

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

Рассмотрим методику привязки новой карты по эталонным точкам5 А1 и А2 на ней, координаты которых известны (рис. 4): например, это могут быть точки пересечения параллелей и меридианов.

Особенностью экономической географии Центральной России являются следующие параметры: расстояния между соседними населенными пунктами, являющимися объектами экономической деятельности, составляют несколько километров. Расстояния между альтернативными дорогами также зачастую менее 10 км. Поэтому точность работы с геоинформацией должна быть довольно высокой, а погрешности вычислений существенно меньше 1'.

5 Эта методика — авторская разработка А. А. Емельянова. Эталонные точки на ГГЦ-картах известны с высокой точностью (углы и центр), а для неизвестной карты их можно получить с помощью длительной серии опытов с йРЭ-навигатором (например, в течение года).

69

№ 4 (46) 2013

.6 »2 Г?

cl ^

S

u §

!

£ §

is i

!

! IT

Si

Si &

О С

О

£ SI

I

о §

л

Рассмотрим прямоугольник Растр.Ьтр — растровое представление образа карты в виде матрицы с прямоугольными координатами x и у. Левый верхний угол матрицы имеет координаты x = 0, у = 0. Ширина матрицы определяется как = bm.bmWidth, а высота — как h = bm.bmHeight, где Ьт. bmWidth и bm.bmHeight — это компьютерные параметры растра в оперативной памяти компьютера. Карта отображается на экране монитора в режиме скроллинга с помощью линеек прокрутки.

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

Предварительно рассмотрим угловое расстояние по долготе 8|оп между точками A1 и A2 — абсолютную разность |А2 -А^. Оно равно сумме:

8|о„ =Р1 +в 2.

Для углов и Р2, определяющих это угловое расстояние, справедливы следующие соотношения:

l (") = -

х2 -0,5w

, 0,5w - х, p1 = Arc tg1 ' 1

и P2 = Arc tg

m+y,

х2 - 0,5w lm + y 2

Искомая величина lm определяется методом итераций. В качестве начального значения lm можно задать, например, следующее «нулевое» приближение:

l(0) =

0,5 w

tg(0,5 -Х, I)

пиксель.

Далее полагаем, что выполняется шаг-итерация с номером п, п = 1, 2, .... Полученные соотношения определяют рекуррентное соотношение для получения п-го приближения тп), если известна величина 1'т-1), определенная на шаге-итерации с номером п - 1, п = 1, 2, ...:

tg

Son- Arc tg

0,5w - х,

lin-11 + y,

m У ,

- y,, 01

пиксель.

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

р = I(п) - I(п-1) I I(п) I т 'т I ■

т

Например, предположим, что допустимая относительная погрешность при определении 1тп) — это единица в 12 разряде после запятой. В этом случае выбор решения выполняется следующим образом:

• если выполняется неравенство р < 0,000000000001, то требуемая точность достигнута, и 1т = т ;

• иначе выполняется действие п = п + 1, и происходит переход к следующему шагу-итерации.

Угол симметрично обрамляющий матрицу, определяется из соотношения:

у = 2 Arc tg

0,5w I

2. Привязка карты по долготе. Угол у1, показывающий, насколько крайний западный меридиан уходит влево от линии 1А , получается по формуле:

у1 = 0,5¥-р1.

Аналогичный угол у2, показывающий, насколько крайний восточный меридиан уходит вправо от линии 1А , получается из соотношения:

у 2 = 0,5^-02.

Долгота левого края всей конической проекции равна:

А0 =А1 -У1, а долгота правого края этой же проекции определяется аналогичным соотношением:

Ат = А2 + У2 .

70

№ 4 (46) 2013

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

в = Arc tg

L =

sj(lm + h)2 + (0,5w)2 , пиксель.

Расстояния от Северного полюса до параллелей, проходящих через точки А1 и А2, определяются, соответственно, по формулам:

/ 1т + У1

I, = ——^ , пиксель,

l=

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

cos в 1

m+У2 cos в2

пиксель.

Определяем расстояние 8lat между параллелями, проходящими через точки А1 и А2:

= 11 -12, пиксель.

Установим коэффициент пересчета пиксельных расстояний по широте в радиан-ные расстояния между соответствующими параллелями:

t = v 2

pr = 8,,

0,5w - х

lm + У

Последнее, что осталось сделать, — это определить координаты точки А (широту фА и долготу XА), если известны ее координаты х и у:

1т + У

Фл =Ф m - Tpr

cos в

-l

Получаем широты ф0 (для южной границы региона) и фт (для северной границы), соответствующие расстояниям 10 и 1т:

ф0 =Ф1 - Трг (|0 - |1) и Фт = ф2 + Трг (|2 - т ).

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

и X A = X 0 + 0,5^ -в.

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

3. выбор и ввод растровой карты

Рассмотренные выше правила соблюдаются в программном обеспечении Actor Pilgrim. Итак, в распоряжении разработчика модели есть две возможности:

1) приобрести на хозрасчетной основе или скачать из бесплатного интернет-ресурса, рекомендованного Госгисцентром, нужные листы ГГЦ-карт, соответствующие рассмотренной выше номенклатуре;

2) отсканировать старую, но очень нужную карту, чтобы получить растровое электронное изображение.

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

• карта выполнена профессионально в нормальной конической проекции без сжатия или растяжки (это легко проверяется визуально, даже без линейки и транспортира);

• масштаб изображений на карте единый (тоже легко проверяется);

• есть возможность получения точных географических координат хотя бы двух

1

Щ

со a¿

еа §

2 5? I

щ <

71

№ 4 (46) 2013

Рис. 5. Изображение фрагмента ;

ориентирных точек на карте (на рис. 4 это точки A1 и A2).

Выравнивание образа карты с помощью растрового графического редактора. В качестве учебного образца ниже ис-£ пользуется топографическая карта N-36-1 а Смоленск (в 1 см 5 км) выпуска 2003 г. По-^ добные карты 1:500 000 имеются в свобод-| ном обращении и насыщены информацией 5 о географических координатах. Приобре-й тать и использовать карты ГГЦ масштаба I 1:50000 в учебных целях сложнее. Фрагмент | этой карты в окне графического редактора § показан на рис. 5.

I При наличии растровой карты, обла->s дающей большим разрешением, возника-§ ет практическая задача выравнивания изо-■s бражения. Дело в том, что это изображение, ■Ц при его высокой относительной точности,

* как правило, немного повернуто относи-| тельно какой-либо точки на листе вправо I или влево. В результате те линии, которые ■Ц должны быть строго вертикальными, тако-¡5 выми не являются, а горизонтальные линии g совсем не горизонтальны. Если карту не по-£ вернуть в исходное состояние, то измерения

с ее помощью делать нельзя. Для выравни-

* вания положения карты можно использовать is любой высокоточный редактор растровых § изображений, например, Adobe Photoshop iiS (версия не ниже CS-3).

;та N-36-1 Смоленск (в 1 см 5 км)

В качестве реперных линий или точек для выравнивания можно использовать:

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

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

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

Предположим, что мы используем для выравнивания Adobe Photoshop. Открываем исходную карту N-36-1 Смоленск. png6, которая захватывает участок 30°00'00" ■ 33°00'00" с запада на восток и с 54°00'00" ■ 56°00'00"

6 PNG (англ. portable network graphics) — растровый формат хранения графической информации, использующий сжатие без потерь по алгоритму Deflate // Электронный ресурс http://ru.wikipedia.org/wiki/.

№ 4 (46) 2013

в направлении с юга на север. Поэтому меридиан, который проходит через центр карты и должен быть расположен строго вертикально, имеет западную долготу 31°30'00".

Далее задаем максимальное увеличение с помощью инструмента масштабирования (zoom) Adobe Photoshop. Через ленту главного меню выходим на кнопку «Изображение», а затем на кнопку «Повернуть холст». После этого определяем направление поворота «по часовой стрелке» или «против часовой стрелки». Для выравнивания карты, показанной на рис. 5, достаточно было поворота на 0,02° по часовой стрелке. После выравнивания видно, что меридиан 31°30'00» выставлен строго вертикально — то есть по левому «срезу» экрана монитора. Меридиан правее 32°00'00», проходящий практически через Смоленск, уже не вертикален. В этом можно убедиться с помощью циркуля. А параллель 54°40'00» имеет форму дуги (точнее, отрезка окружности), — это видно без циркуля. Признаки нормальной конической проекции имеются.

После нивелирования карты сохраняем файл в формате bitmap под именем N-36-1 Смоленск.Ьтр. Далее копируем полученный bmp-файл под именем N-36-1 Смо-ленск.тар.

Теперь этот map-файл становится доступным для картографической подсистемы

Actor Pilgrim. Однако пока его можно только смотреть на экране, но проводить измерения станет возможным после привязки карты к поверхности Земли.

Привязка образа карты к географическим координатам. Далее нужно работать только средствами Actor Pilgrim. Полагаем для определенности, что подготовленная карта помещена в папку d:\Smolensk, т. е. состав этой папки такой:

N-36-1 Смоленск.Ьтр; N-36-1 Смоленск.тар.

Вызовем карту N-36-1 Смоленск.тар в первый раз с помощью программной оболочки любой Pilgrim-модели: через главное меню выходим на кнопку «Настройки», откуда нажимаем «Подключение растровой карты».

Далее автоматически вызывается «Проводник» Windows, с помощью которого попадаем в папку d:\Smolensk и делаем двойной щелчек по имени файла N-36-1 Смоленск. тар. В ответ получим сообщение: «Для привязки карты после появления изображения воспользуйтесь правой кнопкой мыши». — Отвечаем OK. Далее получим сообщение: «Для решения Вашей задачи необходимо провести съемку всех координат или приобрести файл с координатами». — Отвечаем OK. После этого увидим левый верхний угол карты (рис. 6).

§

lg SÍ

Щ

с> Э; еа lg 2 5? I

щ <

Рис. 6. Левый верхний угол карты N-36-1 Смоленск

73

№ 4 (46) 2013

Устанавливаем, как можно точнее, указатель мыши на реперную точку (это возможно, так как информация выведена на экран с большим увеличением) и нажимаем на правую кнопку мыши, после чего появится дополнительное диалоговое окно «Привязка карты к ГЕО-координатам». Вводим в соответствующие поля редактирования: +56°00'00» — широту реперной точки; +030°00'00» — долготу этой точки. Затем с помощью ползунков прокрутки подводим правый нижний угол карты с реперной точкой 54°00'00» Северной широты и 033°00'00» Западной долготы (рис. 7). Устанавливаем указатель мыши на эту реперную точку, нажимаем на правую кнопку мыши, в результате опять увидим диалоговое окно «Привязка карты к ГЕО-координатам». Далее вводим информацию в соответствующие поля редактирования:

+54°00'00» — широту реперной точки; +033°00'00» — долготу этой точки. После этого завершаем выполнение модельной оболочки Actor Pilgrim. В результате в папке d:\Smolensk появился файл с именем N-36-1 Смоленск^е^ так называемый set-файл с точными координатами двух ре-перных точек, в котором существуют только две строки конкретного формата:

The Triangulation Item 1 +056°00'00» +030°00'00» z 126 55

The Triangulation Item 2 +054°00'00» +033°00'00» z 3133 3521,

где z — параметр пункта (реперная точка триангуляции);

(126; 55) и (3134; 3522) — декартовы координаты реперных точек.

Замечание 1. На уникальных крупномасштабных картах, выполненных профессиональными топографами, где нет линий параллелей и меридианов, есть характерная длинная (не менее 10 см) прямая линия-стрелка, нанесенная топографом, показывающая направление «Юг-Север». Положение этой линии после поворота карты должно стать строго вертикальным.

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

• выбираются две характерные точки (например, отдельно стоящие памятники или

.S с

CL

а

U §

!

ig §

» Е

I

1 !

t 'S

5 g

s

6

о с о

£ SI

I

0 §

1

Рис. 7. Правый нижний угол карты N-36-1 Смоленск

№ 4 (46) 2013

сараи), как можно дальше расположенные на листе карты друг от друга в диагональном направлении;

• координаты этих точек снимаются вручную, либо с крупномасштабной карты, желательно масштаба 1:25000, либо посредством длительных экспериментов с GPS, в процессе которых можно определить и исключить влияние временного «дрейфа» точки пересечения поверхности эллипсоида Земли вертикалью спутника;

• далее эти точки вводятся как реперные по рассмотренной выше методике.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

Оцифровка элементов карты средствами Actor Pilgrim. Решение конкретных задач с привязкой к территории невозможно без съема координат каких-либо конкретных точек.

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

Через ленту главного меню нажимаем на кнопку «Настройки», откуда попадем на кнопку «Работа со SPACE-массива-ми», а затем — на кнопку «Начать заполнение SPACE-массива». В ответ получим сообщение проводника Windows, в котором он просит назвать имя файла для запоминания координат точек. Отвечаем «N-36-1 Смоленск», нажимаем кнопку «Сохранить». В ответ увидим сообщение «Создается новый SPA-файл» с именем N-36-1 Смоленск. spa.

Далее для определенности введем точку: центр здания главного вокзала в Смоленске

(точка «Смоленск-Центральный»). Для этого указатель мыши установим на центр здания вокзала и нажмем левую кнопку мыши. В ответ высветится дополнительное диалоговое окно (рис. 8).

Рис. 8. Ввод очередного пункта

Широта и долгота точки, соответствующей центру здания вокзала, вычислены автоматически. Декартовы координаты P1 и P2 тоже рассчитаны автоматически. Не автоматически вводится только название точки. Поэтому в поле редактирования Название: вместо слов «Название пункта местности» введем, как условились выше, «Смоленск-Центральный» и нажмем кнопку «Готово». Теоретически названия точек можно не вводить, так как у них есть уникальные идентификаторы: географические координаты и декартовы координаты. Но названия нужны конечному пользователю, чтобы разбираться в сути явлений, выявленных в процессе моделирования, с их привязкой к названиям на картах.

По аналогичному правилу вводим столько точек, сколько нужно. Ввод прекращается автоматически, если прекратить выполнение оболочки Actor Pilgrim. Для повторных вводов «Проводник» будет предлагать как создание нового файла, так и использование существующего. Лучше всего использовать уже существующие файлы. Если в них некоторые точки не нужны для решения задачи, то им можно проставить соответствующий статус, и они не будут использоваться моделирующими программами.

Индикация и простейшие измерения на карте. Рассмотрим фрагмент корты, где показан центр Смоленска (рис. 9).

I

Эй

еа §

2 5? I

щ

75

№ 4 (46) 2013

Т-ост. "Камерный театр"

.6 С

CL ^

S

и ^

I !

£ §

is i

! ! 1Г

Si

Si &

О С

О

£ si

I

о §

л

Рис. 9. Измерения расстояний в центре Смоленска

На углу ул. Николаева и ул. Багратиона есть остановка трамвая «Камерный театр». Покажем указателем мыши это место и нажмем левую кнопку мыши. В ответ выведется дополнительное диалоговое окно, в котором будут перечислены ближайшие точки (не более 30) к отмеченной указателем остановке трамвая, с упорядочиванием по степени близости к этой точке, имеющиеся в spa-файле N-36-1 Смоленск^ра, в котором содержатся координаты точек. Ближайшими (по прямой) оказались две точки:

• 966 метров на юг от остановки — крест перед часовней на границе территории СФ «Национальный исследовательский университет МЭИ»;

• 2854 метра на север — центр здания вокзала «Смоленск-Центральный» (здание выходит за границы показанного фрагмента).

Самое интересное, что можно заметить: листы карт для проведения измерений не нужно склеивать (бумажный вариант) или сливать в единый растровый образ (компьютерный вариант). Например, на рис. 9 в работе показан растровый образ листа N-36-041^ Смоленск из электронного атласа, имеющегося в свободной интернет-продаже. Более того, если нет карт крупного масштаба, то можно наряду с крупномасштабными картами временно использовать среднемасштабные. Географические координаты едины. Просто чем крупнее масштаб, тем они точнее определяются.

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

76

№ 4 (46) 2013

• корректный пересчет декартовых координат в географические координаты для первой точки;

• переход в географические координаты другой точки, в том числе и на другом листе, и в другом масштабе;

• автоматический пересчет географических координат в декартовы координаты для другой точки на данном или на другом листе.

С электронных топографических карт снимаются географические координаты точек, которые на самом деле находятся на поверхности эллипсоида вращения. Поэтому все расстояния между точками на поверхности Земли рассчитываются по точным координатам с применением формул сферической тригонометрии Ф. Н. Красовского [5].

Рассмотрим сферический треугольник PAB на сфере с центром в O. Вершина P — полюс Земли. Введем следующие обозначения:

Ф1 — географическая широта точки A;

Ф2 — географическая широта точки B;

Х1 — географическая долгота точки A;

Х2 — географическая долгота точки B.

Необходимо найти 1Ав — длину дуги AB на поверхности эллипсоида. Рассмотрим угол AOB, который обозначим g. Одна из основных формул сферической тригонометрии определяет косинус этого угла:

cos g = sin ф1 • sin ф2 + cosф1 • cosф2 • cos(2-А1). (2)

Радиус Земли Rx для широты фх вычисляется по эллипсоиду Красовского:

Rx = i =

-\А (cos Фx )2 + Z2 (sin Фx )2

(3)

где z1 = 6 3782 45,000 м — экваториальная полуось эллипсоида Земли; z2 = 6 356 863,019 м — малая полярная полуось.

Функция geoway, входящая в состав комплекса Actor Pilgrim, служит для определе-

ния расстояния между любыми точками A и B по их географическим координатам. Она использует формулы Красовского (2) и (3).

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

Муравьиные алгоритмы

В процессе создания имитационной модели растровые карты и технология работы с ними предназначены только для съема и ввода в spa-файл информации о точках, необходимых для решения конкретных хозяйственно-экономических задач:

• важные пункты местности (памятники, церкви, отдельные значимые здания, торговые центры, стадионы, здания вокзалов, здания аэропортов, здания морских или речных вокзалов, перекрестки, мосты,электростан-ции, трансформаторные подстанции, насосные станции газопроводов, АЗС, нефтехранилища, элеваторы и др.);

• ограничительные точки отрезков условных прямых линий на моделируемой территории;

• центры и радиусы условных окружностей на поверхности Земли;

• угловые точки сложных условных многоугольников типа «полигон»7.

Во время проведения экспериментов с моделями растровые карты используются как cредство наглядной индикации и источник дополнительной информации. В моделях используются векторные образы, привязанные к географическим координатам Земли. Эти образы создаются в оперативной памяти, выделенной для выполнения модели, средствами оболочки Actor Pilgrim на основе информации в space-файле, создаваемом с помощью растровых карт, и служат целям ориентации.

Эффективность многих алгоритмов принятия решений, связанных с оптимизацией взаимного расположения объектов на поверхности Земли, определением маршрутов передвижения, прокладкой линий элек-

1

Щ

с> Э;

еа §

2 5? I

щ <

Электронный ресурс http://en.wikipedia.org/wiki/.

77

7

№ 4 (46) 2013

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

Задача коммивояжера решается по-разному в зависимости от существующих ограничений.

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

2. Существуют ограничения на маршрут движения (одно или все):

• пункт старта движения коммивояжера ¡£ и пункт финиша проложенного маршрута — а это разные пункты;

• движение должно быть привязано к до-| рожной сети;

5 • элементы дорожной сети имеют раз-аз ные скоростные режимы и пропускные спо-| собности.

§ В этом случае статические методы и ди-§ намическое программирование могут не сра-I ботать. Возможно, что их применение сведется к полному перебору вариантов мар-§ шрута. Алгоритм полного перебора — также непростая задача, не имеющая стандартного ■Ц решения на все случаи жизни. Поэтому не* обходимо использовать какие-то алгоритмы | адаптивного поиска маршрута с использо-| ванием динамических моделей. ■Ц 3. Самое сильное ограничение — это ¡5 привязка к топографическим особенно-Ё стям местности. Такое ограничение возни-£ кает при решении задач, связанных:

• с планированием трасс линий элек-* тро-, энергоснабжения и выбора мест для ¡5 силовых подстанций, с учетом возможного стей существующих сетей и их состояния Й на территории;

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

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

Таким образом, в случаях 2 и 3 задача разбивается на две: конструирование кибернетического алгоритма и создание динамической модели системы управления. Поскольку мы договорились о том, что все алгоритмы оптимизации размещения на территории будем предварительно проверять на задаче коммивояжера, то введем два определения.

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

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

Выбор алгоритма поиска маршрута. Этот алгоритм должен обладать адаптивными свойствами, т. е. свойствами системы, управляемой в условиях частичного отсутствия информации. Типовые примеры есть в биологических системах [6]: генетические алгоритмы, муравьиные алгоритмы, алгоритмы роя пчел и некоторые другие.

№ 4 (46) 2013

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

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

Эти принципы проверены временем — удачная адаптация к окружающему миру на протяжении миллионов лет означает, что природа выработала очень удачный механизм поведения. Исследования в этой области начались в середине 90-х гг. XX в., автором идеи и математических методов является Марко Дориго из Университета Брюсселя [8, 9], опубликовавший вместе со своими коллегами более 200 работ по муравьиным и генетическим алгоритмам.

Биологические принципы поведения муравьиной колонии. Муравьи относятся к «социальным» насекомым, образующим коллективы [6]. В биологии коллектив муравьев называется колонией. Число муравьев в колонии может достигать нескольких миллионов, на сегодня известны суперколонии муравьев (formica lugubrus), протянувшиеся на сотни километров. Одним из подтверждений оптимальности поведения ко-

8 Муравьиные алгоритмы — алгоритмы оптимизации подражанием поведению муравьиной колонии, эффективные алгоритмы для нахождения приближенных решений задачи коммивояжера и аналогичных задач поиска маршрутов // Электронный ресурс http:// ru.wikipedia.org/wiki/.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

та

лоний является тот факт, что «сеть гнезд | суперколоний близка к минимальному ос- | товному дереву графа их муравейников» | [9]. Основу поведения муравьиной колонии ^ составляет самоорганизация, обеспечивающая достижения общих целей колонии | на основе низкоуровневого взаимодействия. | Колония не имеет централизованного управ- ^ ления, и ее особенностями является обмен ^ локальной информацией только между от- ^ дельными особями (прямой обмен — пища, визуальные и химические контакты) и наличие непрямого обмена, который и используется в муравьиных алгоритмах. Непрямой обмен — стигмержи дтегду), представляет собой разнесенное во времени взаимодействие, при котором одна особь изменяет некоторую область окружающей среды, а другие используют эту информацию позже, в момент, когда они в нее попадают. Биологи установили, что такое отложенное взаимодействие происходит через специальное химическое вещество — феромон (pheromone), секрет специальных желез, откладываемый при перемещении муравья. Концентрация феромона на тропе определяет предпочтительность движения по ней. Существует более 20 различных феромонов, посредством которых «общаются» муравьи. Самые нужные в нашем случае: феромон пищи и феромон опасности.

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

Решения задач ориентации в моделях можно проводить с использованием одного из двух муравьиных алгоритмов:

• алгоритм поиска и доставки пищи в муравейник;

№ 4 (46) 2013

• алгоритм раздела территории между двумя муравейниками.

Оба алгоритма имеют достоинства и недостатки.

Муравьиный алгоритм поиска и доставки пищи в муравейник — это поведение муравьев, связанное с их способностью быстро находить кратчайший путь от муравейника к источнику пищи и адаптироваться к изменяющимся условиям, находя новый кратчайший путь. При движении муравей метит свой путь феромоном пищи, и эта информация используется другими муравьями для выбора пути. Такое элементарное правило поведения и определяет способность муравьев находить новый путь, если старый оказывается недоступным. Дойдя до преграды, муравьи с равной вероятностью будут обходить ее справа и слева. То же самое будет происходить и на обратной стороне преграды. Однако те муравьи, которые случайно выберут крат-¡£ чайший путь, будут быстрее его проходить, а и за несколько передвижений он будет обо-^ гащен феромоном более. Поскольку дви-| жение муравьев определяется концентра-5 цией феромона, следующие будут предпо-й читать именно этот путь, продолжая обога-| щать его феромоном, до тех пор, пока он § по какой-либо причине станет недоступным § или не кратчайшим.

I Очевидная положительная обратная связь быстро приведет к тому, что кратчай-§ ший путь станет единственным маршрутом движения большинства муравьев. Модели-■§. рование испарения феромона — отрицательной обратной связи — гарантирует, | что найденное локально-оптимальное ре-| шение не будет единственным — муравьи ■Ц будут искать и другие пути. Если мы моде-¡5 лируем процесс такого поведения на неко-| тором графе, ребра которого представля-£ ют собой возможные пути перемещения муравьев в течение определенного времени, ^ то наиболее обогащенный феромоном путь ¡5 по ребрам этого графа и будет являться ре-§ шением задачи, полученным с помощью му-Й равьиного алгоритма.

Рассмотрим алгоритм [7, 8] в упрощенном изложении9. Изложим, как реализовать «самоорганизацию» муравьев при оптимизации маршрута коммивояжера. Многократность взаимодействия реализуется итерационным поиском маршрута коммивояжера одновременно несколькими муравьями. При этом каждый муравей рассматривается как отдельный, независимый коммивояжер, решающий свою задачу. За одну итерацию алгоритма каждый муравей совершает полный маршрут коммивояжера.

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

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

Использование только положительной обратной связи приводит к преждевремен-

9 Этот алгоритм реализовал С. Д. Штовба [7], используя теорию, основные математические формулы и соотношения М. Дориго. См.: [8, 9] и др. публикации М. Дориго.

80 у

№ 4 (46) 2013

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

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

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

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

Видимость — величина п, обратная расстоянию10

n j = 1/D,

(4)

где Dj — расстояние между городами i и ¡.

Видимость — это локальная статическая информация, выражающая эвристическое

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

Виртуальный след феромона на ребре (I,¡) представляет подтвержденное муравьиным опытом желание посетить город ¡ из города I. В отличие от видимости след феромона является более глобальной и динамичной информацией — она изменяется после каждой итерации алгоритма, отражая приобретенный муравьями опыт. Количество виртуального феромона на ребре (I, ¡) на итерации t обозначим через т¡.Важ-ную роль в муравьиных алгоритмах играет вероятностно-пропорциональное правило, определяющее вероятность перехода муравья к из города I в город ¡ на итерации ^

j(t) = М]>)РР, если j е Jlk, * SK (t)] (n) ik (5)

l eJlk

10 Видимость показатель линейный, зависит от расстояния. Не следует путать с яркостью — энергетическим показателем, зависящим от квадрата расстояния.

Pm(t) = 0 , если j g J(k,

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

Обратим внимание, что правило (5) определяет лишь вероятности выбора того или иного города. Собственно выбор города осуществляется по принципу «колеса рулетки»: каждый город на ней имеет свой сектор с площадью, пропорциональной вероятности (5). Для выбора города нужно бросить шарик на рулетку — сгенерировать случайное число и определить сектор, на котором этот шарик остановится.

Заметим, что, хотя правило (5) не изменяется на протяжении итерации, значения

I

эй

еа §

2 5? I

щ

81

№ 4 (46) 2013

вероятностей Рк (0 для двух муравьев в одном и том же городе могут отличаться, так как Рк(0- Рк(0 — функция от Jik — списка еще не посещенных городов муравьем к.

После завершения маршрута каждый муравей к откладывает на ребре (/,¡) такое количество феромона:

К. (t) =

Q

если (i, j) е T(t)

L (t)

0 , если (i, j) eTk(t)

(6)

.6 »2

cl ^

S

u ^

g !

£ §

is l

1

! IT

Si §

! О С

О

£ si

I

о §

л

где Тк (0— маршрут, пройденный муравьем k на итерации ^ Lk (t) — длина этого маршрута; Q — регулируемый параметр, значение которого выбирают одного порядка с длиной оптимального маршрута.

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

Допустим, что m — общее число муравьев в колонии. Коэффициент испарения феромона за одну итерацию обозначим через p:

p е [0, 1]. (7)

Тогда правило обновления феромона примет вид:

т ¡^ + 1) = (1 - p) -т + А ¡(t), (8)

m

где А ¡. (t) = (t) — количество феромона,

k=1

отложенного всеми муравьями на ребре (/, ¡) за время итерации t.

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

потери кооперативности поведения через ограниченное взаимодействие и быстрое испарения феромона.

Достоинства алгоритма заключаются в том, что в формулах 4-8 заложены адаптация и обратные связи. Эти формулы легко видоизменяются при усложнении алгоритма в различных применениях [1].

У алгоритма есть недостатки, которые при желании легко могут быть исправлены автором [7] или подготовленным читателем.

1. Автор алгоритма число муравьев приравнивает к количеству городов — каждый муравей начинает маршрут из своего города.

2. В соотношении (7) определен коэффициент испарения феромона р. Автор справедливо полагает, что он постоянен во времени. На самом деле он стабилен при выполнении двух условий:

• температура окружающей среды не изменяется;

• время является абсолютным (астрономическим) и измеряется часами.

Однако время в этом алгоритме измеряется в числе итераций, т. е. является относительным. Длительность одной итерации — это время прохождения по вновь найденному маршруту. Но маршрут с каждым разом становится короче, соответственно, время итерации уменьшается, и, если время измеряется в итерациях, то на последующих итерациях фероромона будет испаряться меньше, чем на предыдущих. Поэтому р уменьшается во времени, чего не может быть! Из-за этой методической ошибки действие отрицательной обратной связи снижается, а в формуле (8) количество феромона тг ^ +1) становится несколько больше, благодаря усилению положительной обратной связи. В результате число возможных итераций может сократиться, и будет меньше возможностей выйти на кратчайший маршрут.

3. Непонятно, по какому правилу распределено начальное количество феромона т0 на ребрах графа; из приведенных

82

№ 4 (46) 2013

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

4. Правило, по которому число муравьев равно числу городов, введено только для снижения трудозатрат на программирование. Однако не исследовано, влияет ли такая примитивизация на качество алгоритма.

5. Сходимость алгоритма довольно медленная.

Автор [7] привел пример итерационной эволюции при решении задачи коммивояжера в отсутствие каких-либо ограничений. Пример хорош тем, что его можно легко проверить.

Всего в этом примере рассмотрено 80 этапов эволюции алгоритма (рис. 10). Итерация t = 20 привела к очень рациональному, но неоптимальному маршруту (рис. 10а). После итерации t = 40 появился первый субоптимальный алгоритм (рис. 106). Наилучшее субоптимальное решение достигнуто автором [7] после итерации t = 80. Далее эволюцию продолжить не удается, однако этому есть следующее объяснение: либо действительно построен оптимальный маршрут, либо эволюционный процесс завершился из-за не совсем правильной регулировки параметров а и в.

<5

Пример. Вертолетному экипажу постав- | лена задача — пролететь над территорией | Смоленской области и посетить конкретные | пункты: £

1) нужно побывать в 28 населенных пунк- эй тах Смоленской области по списку: Велиж, | Верхнеднепровский, Вязьма, Гагарин, Глин- | ка, Демидов, Десногорск, Дорогобуж, Ду- ^ ховщина, Ельня, Ёршичи, Кардымово, Крас- ^ ный, Монастырщина, Новодугино, Озёрный, ^ Починок, Рославль, Рудня, Сафоново, Смоленск, Сычёвка, Тёмкино, Угра, Хиславичи, Холм-Жирковский, Шумячи, Ярцево;

2) посетить областной центр г. Брянск, вокзал «Брянск-Льговский»;

3) посетить г. Ржев Тверской обл., вокзал «Ржев-Балтийский»;

4) посетить г. Волоколамск Московской обл., станцию «Волоколамск-Привокзальный»;

5) побывать на трех вокзалах в городах Болоруссии по списку: Витебск, Могилёв, Орша;

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

6) пункт отправления: г. Брянск, вокзал «Брянск-Льговский»;

7) пункт назначения: пгт. Кардымово, вокзал «Кардымово», который находится в 28,190 км от вокзала «Смоленск-Центральный»;

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

Векторная развертка территории с населенными пунктами, географические ко-

Итерация f = 20 Итерация f = 40

Рис. 10. Итерационная эволюция маршрутов коммивояжера: а) неоптимальный маршрут; б) субоптимальный маршрут

№ 4 (46) 2013

35e57'20w

Велиж о

Л Витебск

Демидов

Кардымово

О

Смоленск О

Рудня

Красный

О Орша

Монастырщи!- а о

° Могилёв

Озёрный

Q Холм-) (ирковский

о

Духовщи Э „

Ярцев э

Глинка о О Починок

О Хиславичи Рославль

Шумячи о

Ёршичи °

Сычёвка

Новодугино

Вязьма о О Сафоново О Верхнеднепровфий ^Дорогобуж

О^гра

О Ельня

О Десногорск

Волоколамск

О Гагарин

О Тёмки но

Брянск

.6 С

cl ^

S

и §

!

i §

is ¡

1

!

ir §

i

! О С

О

£ SI

I

0 §

1

Рис. 11. Векторная развертка территории

ординаты которых были сняты с разных листов карт масштаба 1:500 000, показана на рис. 11.

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

Муравьиный алгоритм поиска и размежевания территории пока редко применяется, поскольку для его реализации сложно использовать аналитические методы, и нужны специальные инструментальные средства акторного имитационного моделирования (например, Actor Pilgrim), с помощью которых этот алгоритм сравнительно легко реализуется11. Рассмотрим этот киберне-

11 Авторский алгоритм. А. А. Емельянов. В ранних модификациях он применялся автором без привязки к поведению муравьиных колоний под названием горитм двух вертолетов» [3].

«ал-

тический алгоритм поиска применительно к нашему примеру.

Допустим, имеется множество M населенных пунктов, которые нужно посетить. Сначала сделаем предварительные замечания о способах измерения расстояний между населенными пунктами. Для простоты будем считать, что их два. При планировании вертолетных работ расстояния по поверхности Земли вычисляется с помощью функции geoway.

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

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

84

№ 4 (46) 2013

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

пунКт Астарт поставить на место 1 а ^финиш —

на место M в массиве space.

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

• между зонами можно было демаркировать условную границу;

• в процессе размежевания муравьи из разных колоний держатся дальше друг от друга под воздействием фероромона опасности;

• внутри каждой зоны во время каждой итерации строится свой субоптимальный маршрут;

• прокладка маршрута проходит в виртуальном абсолютном времени (но не во времени, измеряемом числом итераций);

• только в конце каждой итерации представители разных колоний оказываются ближе всего друг к другу (до этого они стараются держаться подальше друг от друга);

• для простоты полагаем, что гнезда метят феромоном опасности для последующего освоения по одному муравью из каждой колонии;

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

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

Если муравьи-«землемеры» при построении маршрута «находятся» в пунктах А1 и А] (в процессе составления расписания) и можно считать, что они имеют одинаковую среднюю скорость, то введем экспертное определение вероятности (или относительного веса) того, что непосещенный пункт Ак принадлежит к зоне ответственности вертолета А, находящегося в пункте А, по формуле

Pk =1-

d„.

dk + dkj

(9)

где dк и dk] — это соответствующие расстояния между пунктами12 А,, Ак и А¡.

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

Si

Щ

со Эй

еа §

2 5? I

щ <

12 При составлении маршрута для действий с привязкой к дорожной сети (автомобили, речные суда, железнодорожный транспорт) Л и <1^ — это элементы специальной матрицы достижимости.

85

-N ПРИКЛАДНАЯ ИНФОРМАТИКА

№ 4 (46) 2013 ' -

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

max ! p

keQ I ' i JgQ I

= 1--

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

d k + dkl.

.6 »2

cl ^

S

u §

!

£ §

is i

!

!

IT §

§

! О С <3

£ SI

I

0 §

1

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

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

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

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

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

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

Динамическая модель системы управления. Рассмотрим имитационную модель (рис. 12), предназначенную для моделирования системы адаптивного управления при поиске субоптимальных маршрутов. Модель построена в соответствии с внутренним графическим стандартом обозначения структурных схем в системе Actor Pilgrim [2] и в операторах языка этой системы моделирования [3]. В данной модели оператор setanalysis выполняет обращения к функции, реализующей рассмотренный выше алгоритм поиска и размежевания территории двумя муравьями. Чтобы читателю было легче разобраться с работой модели, отметим некоторые ее особенности.

Главной особенностью модели является наличие динамической памяти, состоящей из трех элементов:

«Массив space» — структурный массив пунктов; фактически — это маршрутное расписание с заданным порядком, но неизвестными временами;

«Журнал Ant 1 » — узел типа dynamo, динамическая очередь [3], выполняющая функции маршрутного журнала муравья-«землемера» Ant1 первой колонии;

«Журнал Ant2 » — также узел типа dynamo, маршрутный журнал муравья-«зем-лемера» второй колонии.

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

Астарт — на первом месте помещен пункт старта вертолета (Брянск-Льговский); в модели это место расположения главного му-

86 у

№ 4 (46) 2013

Массив space

Широта Долгота

lat[1] lat[1]

lat[2] lat[2]

lat[3] lat[3]

íat[M] iat [Ai]

Множество Сортировка

~~ д Ant i key

queue J

8 /

Муравьи

i Ant i

^ Журнал

Ant\

1

Щ Pi

a¿

60 §

2 5?

I

>3

release

release

^ Муравьи

Ant 2

Формирование, анализ и настройка множества Г0

X

Итерация п в виртуальном времени t:

построение маршрутного расписания для колонии Ant\ и Anti

Рис. 12. Имитационная модель адаптивной системы. «Муравьиная колония»

равейника первой колонии, откуда начинает движение муравей Ant 1;

Л

финиш

— на последнее место (в нашем случае это позиция 34 — Кардымово) помещен пункт финиша вертолета; в модели это место расположения главного муравейника второй колонии, откуда начинает движение муравей Ant2.

При подготовке очередной итерации функция setanalysis разыгрывает минимаксную игровую задачу двух партнеров. Исходные данные в это время из массива space помещены в рабочую очередь «Множество T0 » — узел № 6 queue, которая заблаговременно закрыта ключом № 7. В этой очереди

все пункты находятся в том же порядке, какой был установлен в массиве space.

Отличительной особенностью Actor Pilgrim является развитая система динамических приоритетов, используемая функцией setanalysis, которая записывает информацию о решении игровой задачи в виде динамических приоритетов в соответствующие информационные элементы акторов, находящихся в очереди «Множество T0 ». Назначение акторов следующее: каждый актор — это запрос на посещение конкретного пункта, причем в запросе имеется информация, предназначенная для последующей адаптации.

87

№ 4 (46) 2013

Далее, в соответствии с этими приоритетами акторы рассортировываются на два множества: «Множество Т1» и «Множество T2». Далее акторы поступают в распоряжение узлов модели «Муравьи Ant 1» и «Муравьи Ant2 », где происходит собственно имитация во времени поведения муравьев Ant 1 и Ant 2. Отработанные акторы поступают постепенно в «Журнал Ant 1 » и «Журнал Ant 2, где порядок уже иной: он соответствует результатам решения игровой задачи

и маршруту, выполненному каждым из муравьев.

Далее, если маршрут не вполне устраивает конечного пользователя, с его разрешения «Массив space» модифицируется: в него помещается итоговое маршрутное расписание муравьев Ant 1 и Ant 2. Так же, как и прежде, пункт Aстарт находится на первом месте, а помещен на последнее 34-е место.

Рассмотрим текст модели (листинг 1).

Листинг 1

// Виртуальное время: часы

// Квант установки масштаба вре-

// Пункт старта

// Пункт финиша

// Два системных журнала (2): 14

#include <Pilgrim.h>

double Modtime = 2 0.0;

double Slow = 0.15;

мени

long Start = 1;

long Finish = 15;

long Journal[] = {2,14,15};

и 15

forward {

modbeg ("Жизнь муравьёв", 20, Modtime, (long)time(NULL), earth, 6, Journal, 20,

2);

actor ("Создание поля", 1, none, none, 0.001, zero, zero, 2); actor ("Часы", 19, none, none, 1.0/60.0, zero, zero, 20);

timescale (Slow); // Масштаб виртуального времени

sknot (15); // Просматриваем параметры узла

network (dummy, standard) {

top(2): hold(7); hold(10); hold(11); hold(16); hold(17);

create("Момент 1", 1, npoints, none, 6, 3); place;

top(3): serve ("Момент 2", 1, none, none, 0.001, zero, zero,4); agent

customize(1, none, none, Modtime, zero, zero, 5);

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

place; top(4):

serve ("Момент 3", 1, none, none, 0.001, zero, zero,5);

agent {

setanalysis (Start,Finish); //Решение минимаксной задачи release(7);

} place;

top(5): release (10); release(11);

term ("Момент 4"); place;

top(6): queue ("Множество T0", none, 7); place;

top(7): key ("Выбор", t->path); place;

top(8): queue ("Множество T1", prty, 10); place;

top(9): queue ("Множество T2", prty, 11); place;

top(10) :key ("Ключ для Ant1", 12);

agent

if (addr[8]->tn)

sewt(t->ant); place;

top(11) :key ("Ключ для Ant2", 13);

88 у

№ 4 (46) 2013

Окончание листинга 1

top(12 top(13 top(14 top(15 top(16 top(17 top(18 top(20

fault }

modend ("Из

return 0;

}

agent

if (addr[9]->tn) sewt(t->ant); produce("Муравьи Antl produce("Муравьи Ant2

dynamo(' dynamo(' key key term term (12 3),

; place;

,dummy,Start, earth,zero,50.0,zero,14); place; ,dummy,Finish,earth,zero,5 0.0,zero,15);place; Журнал Antl", 16); place

Журнал Ant2", 17); place

("Клапан 1", 18); place

("Клапан 2", 18); place

("Финиш"); place

("Бой часов"); place;

жизни муравьёв.doc", 1, 20, page)

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

30°11'51"

Рассмотрим результаты первой итерации поиска маршрута (рис. 13): 1) найден рациональный неоптимальный маршрут; 2) территория не поделена.

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

35°57'20"

Рис. 13. Результат первой итерации размежевания

№ 4 (46) 2013

.6 С

CL ^

S

и §

!

£ §

is l

1 ! IT

Si g

! О С

О

£ SI

I

о

is

Л

маршрута решение, которое явно неоптимальное: во-первых, есть петля; во-вторых, это петля пересечения разных муравьев, поэтому провести границу между зонами ответственности нельзя.

В результате первой итерации получен маршрут длиной 1 696,810 км, включая отрезок прямой 46,790 км, на границах которой муравьи завершили работу и остановились.

Рассмотрим подробнее качество построенного маршрута. В маршрутном расписании муравья Ant 2 есть явный изъян на завершающей стадии: последний отрезок проведен из Смоленска в Угру с пересечением маршрута муравья Ant 1, который раньше «проследовал» из Глинки в Доро-гобуж. Для исправления нужно провести маршрутную линию муравья Ant2, например, из Смоленска в Глинку (или, другой вариант, из Смоленска в Дорогобуж). Но это приведет к необходимости корректировки маршрута Ant 1. Можно, конечно, перепла-

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

Результат второй итерации представлен на рис. 14: 1) найден субоптимальный путь; 2) территория поделена (пунктирная линия). После второй итерации маршрут на 34,542 км короче, имеем суммарную длину 1662,268 км, включая отрезок прямой 47,605 км, на концах которой муравьи остановились по завершении итерации.

Можно убедиться, что функция setanalysis исправила обнаруженную несуразицу. Более того, петель нет вообще, а территорию можно четко демаркировать (т. е. поделить), что и сделано пунктирной линией. Итак, получен

35°57'20"

Рис. 14. Результат второй итерации размежевания

90

№ 4 (46) 2013

субоптимальный маршрут. Сеть пунктов немного более густая, чем на рис. 10 (там было 29 пунктов, а здесь 34). Кроме этого, наложены серьезные ограничения на алгоритм решения. И тем не менее, в данном случае получен примерно такой же результат, который достигнут только после итерации t = 40 при использовании алгоритма поиска пищи. Это говорит о несколько более высокой сходимости рассмотренного алгоритма.

Заключение

В заключение можно сделать некоторые выводы.

1. На основе топографической информации с помощью оболочки Actor Pilgrim в модели создаются векторные «образы» пространства, элементы которых и участвуют в модельных расчетах. Далее, в процессе эксперимента с моделью, когда вся необходимая информация снята в spa-файл, растровые карты нужны только для наглядной справочной индикации. Соответствующая технология опубликована впервые.

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

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

3. Динамический алгоритм оптимизации маршрутов на основе «муравьиной» методологии М. Дориго при наличии существенных ограничений на состав и конфигурацию маршрутного расписания — алгоритм размеже-

s

вания территории опубликован впервые. Ал- |

горитм обладает более быстрой сходимостью |

по сравнению с ранее известными. Однако |

он имеет общий для подобных алгоритмов ^

недостаток: при достижении конечного ва- ^

рианта маршрута, когда новые итерации пе- |

рестают выдавать улучшенные варианты, нет |

возможности доказать, достигнут ли кратчай- ^ ший алгоритм либо это тупиковый вариант,

полученный из-за неправильной настройки ^ параметров а, в и p. Единственная возможность — полный перебор вариантов маршрута, которые построить проблематично.

Список литературы

1. Гимаров В. В., Глушко С. И., Дли М. И. Конфигурирование информационных и транспортных сетей в условиях неопределенности // Прикладная информатика. 2012. № 6 (42). С. 81-85.

2. Емельянов А. А. Концепция и возможности ак-торно-ориентированной системы имитационного моделирования Actor Pilgrim. Часть I // Прикладная информатика. 2012. № 6 (42). С. 49-66.

3. Емельянов А. А. Концепция и возможности ак-торно-ориентированной системы имитационного моделирования Actor Pilgrim. Часть II // Прикладная информатика. 2013. № 1 (43). С. 41-53.

4. Емельянов А. А., Власова Е. А., Дума Р. В., Емельянова Н. З. Компьютерная имитация экономических процессов / под ред. А. А. Емельянова. М.: Маркет ДС, 2010. — 464 с.

5. Красовский Ф. Н. Избранные сочинения. Т. 1. М.: Геодезиздат, 1953. — 374 с.

6. Макконнелл Дж. Основы современных алгоритмов. М.: Техносфера, 2004. — 368 с.

7. Штовба С. Д. Муравьиные алгоритмы // Exponen-ta Pro. 2003. № 4 (4). С. 70-75.

8. ColomiA., Dorigo M., Maniezzo V. Distributed Optimization by Ant Colonies. In: European Conference on Artificial Life, Paris, France: Elsevier Publishing, 1994. Vol. 3/4. Р. 134-142.

9. Dorigo M., Birattari M., Stutzle Th. Ant Colony Optimization: Artificial Ants as a Computational Intelligence Technique. Bruxelles: Institut de Recherches Interdisciplinaires et de Développements en Intelligence Artificielle, Université Libre de Bruxelles, Technical Report № TR/IRIDIA/2006-023, Sept., 2006. — 12 p.

i Надоели баннеры? Вы всегда можете отключить рекламу.