Научная статья на тему 'Процедура формирования относительно полного множества задач защиты информации'

Процедура формирования относительно полного множества задач защиты информации Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
132
17
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЗАЩИТА ИНФОРМАЦИИ / СИСТЕМНЫЙ АНАЛИЗ / ОБЕСПЕЧЕНИЕ ИНФОРМАЦИОННОЙ БЕЗОПАСНОСТИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Корчев Алексей Владимирович

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

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

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

81,6м3 • 8760ч = 714 816 м3 в год. Рассчитаем количество часов работы насоса:

714 816/1600 = 446,76 часов работы насоса (1Д 1600-90 - 4 шт., с мощностью 630 кВт) 446,76 • 4 • 630 = 1 125 835,2 кВт*ч; При стоимости 3,87 руб. за кВт*ч, затраты составят: 1 125 835,2 • 3,87 = 4 356 982,2 руб.

Вывод: по результатам исследования было выявлено влияние, выраженное в рублевом эквиваленте, температуры обратной сетевой воды на затраты ТСО. Дополнительные затраты на дополнительный расход электроэнергии составили порядка 4,5 млн. руб. Помимо этого, была показана косвенная зависимость температуры обратной сетевой воды на КПД котла через температуру уходящих газов.

Литература

1. Постановление Правительства РФ от 8 августа 2012 г. № 808 «Об организации теплоснабжения в Российской Федерации и о внесении изменений в некоторые акты Правительства Российской Федерации».

2. Приказ Минэнерго РФ от 24.03.2003 N 115 «Об утверждении Правил технической эксплуатации тепловых энергоустановок» (Зарегистрировано в Минюсте РФ 02.04.2003 N 4358).

3. Тепловой расчет котлов (Нормативный метод) - Издание 3 перераб. и доп. - СПб.: Изд. НПОЦКТИ, 1998 - 256 с.

Процедура формирования относительно полного множества задач защиты информации Корчев А. В.

Корчев Алексей Владимирович /Когекву Л1вкзв] УЫттукк - магистрант, кафедра информационной безопасности, Институт информационных технологий и коммуникаций, Астраханский государственный технический университет, г. Астрахань

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

Ключевые слова: защита информации, системный анализ, обеспечение информационной безопасности.

Введение

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

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

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

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

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

Процесс формирования относительно полного множества задач опирается на системный подход. Близкий результат приведен в [1].

Описание процедуры формирования

При формировании относительно полного множества ОЗ функционирования СОИБ будем исходить из результатов анализа функциональных процессов защиты информации (ЗИ) в СОД [3], в результате которого выделены следующие функции защиты информации (см. также [2]).

1. Предупреждение условий, порождающих дестабилизирующее воздействие (ДВ) (ПУ).

2. Предупреждение проявления ДВ в процессе функционирования АСОД (ПП).

53

3. Обнаружения проявившихся ДВ (ОП).

4. Предупреждение воздействия ДВ на информацию (ПВ).

5. Обнаружения воздействия ДВ на информацию (ОВ).

6. Локализация воздействия ДВ на информацию (ЛВ).

7. Ликвидация последствий воздействия ДФ (ЛП).

8. Планирование (Пл).

9. Оперативно-диспетчерское руководство в процессе выполнения планов (ОДУ).

10. Календарно-плановое руководство выполнением планов (КПР).

11. Обеспечение повседневной деятельности системы управления (ОПД).

Процесс формирования классов задач состоит из следующих этапов.

Первый этап: формирование полного множества функций управления ЗИ.

Второй этап: для каждой из этих функций формируются совокупности

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

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

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

Критерием разбиения каждой функции управления ЗИ на макрозадачи является требование однородности в рамках одной задачи мероприятий и действий, проводимых с целью обнаружения или противодействия ДВ в соответствующих ситуациях. Основными мероприятиями, проводимыми при реализации функций обнаружения, является регистрация (фиксация) данных, контроль состояний всех компонентов СОИБ во всех режимах их работы и сигнализация о состоянии контролируемых объектов и процессов. Множество всех мероприятий по противодействию ДВ допустимо разделить на следующие два семейства:

- мероприятия, осуществляемые как ответная реакция на ДВ, т. е. апостериорно;

54

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

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

1. Ликвидация источника ДВ.

2. Изменение интенсивности и мощности ДВ, других его характеристик.

3. Локализация источника ДВ.

4. Направление ДВ в других направлениях, по другим путям.

5. Изолирование компонентов АСОД с целью защиты от ДВ.

6. Изолирование подвергшихся ДВ компонентов СОД.

7. Ликвидация подвергшихся ДВ элементов системы с их воссозданием заново или передачей их функций другим компонентам.

Возможные действия при проведении превентивных мероприятий:

- уничтожение ненужных элементов;

- изолирование отдельных частей и компонентов СОД друг от друга или от общей технологии;

- изменение состояний компонентов;

- дублирование и резервирование элементов;

- защитные преобразования в компоненте;

- адаптивные изменения в технологии и в структуре СОД;

- использование средства обеспечения защиты информации (СОЗИ).

В результате описанного анализа в [3] выделяется 98 макрозадач ЗИ.

Для формирования множества классов ОЗ ЗИ содержание полученных макрозадач уточняется по следующим признакам.

1. Компоненты системы (внешние факторы, аппаратно-программные средства, персонал и др.).

2. Территориально-временные характеристики и особенности рассматриваемого компонента (этапы жизненного цикла, статические и динамические характеристики и др.).

3. Средства и ресурсы, имеющиеся в АСОД и в СЗИ.

4. Условия функционирования компонента (характер ДВ, уровень нагрузки и др.).

5. Технология функционирования (возможные способы действий и мероприятий, процедура обработки информации).

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

ПВ 1.1. Распределение работ на разработку программных средств.

ПВ 1.2. Выбор тестовых задач.

ПВ 1.3. Выбор способа действий при проникновении злоумышленника.

Множество ОЗ, которые могут быть сформированы на основе рассматриваемой макрозадачи при проецировании по атрибутам «программные средства, этапы

55

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

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

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

Аналогично формируется множество классов ОЗ для других функций ЗИ. На основе сформированного относительно полного множества ОЗ ЗИ и совокупности соответствующих моделей может быть организована база данных по ОЗ ЗИ. Такая база данных позволит создать достаточно хорошие предпосылки для повышения эффективности решения и числа решаемых в процессе формирования и функционирования СЗИ оптимизационных задач. Это существенно повысит эффективность оптимизации в СЗИ. Структурная компонента такой базы должна содержать достаточно полную информацию о конкретном классе ОЗ.

Предлагается следующая структура информации, составляющей содержание компонента.

1. Нумерация и краткое наименование класса задач.

2. Формулировка типовой задачи класса в наиболее общей ее постановке.

3. Возможные дополнительные ограничения и условия в задаче.

4. Полный список требуемых исходных данных.

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

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

7. Статистические сведения о результатах использования и решения в процессе ЗИ задач из рассматриваемого класса.

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

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

1111 1. Резервирование информации в статических условиях функционирования. Пусть известны число информационных массивов в компоненте СОД и их объемы, объем внешней памяти для хранения информации, потери от простоя средств обработки информации, средние потери от отсутствия каждого массива, затраты на копирование информации. Найти такое распределение памяти на хранение копий массивов информации, при которой суммарные потери минимальны. Исходные данные:

- коэффициент эффективности, рj - вероятность успешного решения задачи с использованием j-го массива; ^ - вероятность того, что массив не будет разрушен при решении задачи в режиме использования; ZMj - стоимость j единиц машинного времени; ZBj - стоимость восстановления разрушенного j-го массива; ZHJ - стоимость

'-го носителя информации; у)- - плотность потока обращений к '-му массиву; Ж -

событие, заключающееся в том, что за время T массив не будет разрушен; Ж' -

дополнительное к Ж событие; Ж = Р(Ж); ^д у - стоимость дублирования j-го

массива информации; Tj - случайное время решения задачи с использованием _|-го массива; N число различных массивов информации; Ц - число создаваемых копий j-

го массива (1 < у < П); ^ - вероятность разрушения'-го массива или его копии за

единичный интервал; П(£/,..., Ц„) - средние затраты машинного времени на копирование данных при стратегии резервирования (£/,..., Ц„); - коэффициент готовности 1-го массива; - функция затрат при стратегии копирования Ц копий для 1-го массива; Р] - доля времени, затрачиваемого на работу с у'-ым массивом. Модели.

1) Все данные известны.

^/К г ~ ~ 1

я = ЪР] Жгм,М т / Ж)+(1 - Ж )1М м (Т / Ж')+(1 )2В,, уит+

1=1

+(1 - р1 )[2мМ(Т1 / Р]) + 2В, 1 + [т + (к1 + 1)2н. 1} ^тт

либо

Jj)^Mlv±\L j' Hjf^^ß.j^^ ppf и* ^ V"- j ^Ч^И. j >

k

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

N

ZpjWZM, jM (Tj / TT)

kч = —--;—> min

R k

при условии

X k, = k, XM(T) < T d)

i=1 i=1

2) Неизвестны часть из величин {ZMj, ZBj, ZHj}, но все ZMj однопорядковы по J:

N

XM (T ) —min и выполнено (1).

i=i

3). Неизвестны часть из величин {ZMj, ZBj, ZHj}, но известно, что ZMj>> ZBj + Zo6h и однопорядковы по j величины {ZMj, ZBj, ZHj}:

N

^ ^ —тах и выполнено (1).

з =1

4) Неизвестны часть из 2^}, но все эти величины однопорядковы и 2Н

<<

ZMj:

Bj, ZHj}, но все ли величины иднинирлдкиьы и ZHj

N

f ЪрМ T'W)

= --^ max

IМ (Tj)

j=1

и вынолнено (1), где kn,pr коэффициент полезной работы.

5) Неизвестны величины, требуемые для полного нахождения VuZMMT\ и V (1 )Zb :

N

I p. —^^ max и выполнено (1).

j=1

Отметим, что решению указанной задачи посвящена [4]. ММ 2. Выбор состава средств обеспечения защиты информации. Выбрать состав состава средств обеспечения защиты информации (СОЗИ) в СОД таким образом, чтобы суммарные издержки в компоненте были минимальны.

Исходные данные: т - число учитываемых дестабилизирующих воздействий (ДВ), п - число всех возможных СОЗИ, рi - вероятность проявления i-го ДВ; кр - вероятность предотвращения i-го ДВ при использовании р-го СОЗИ; sp - стоимость р-го СОЗИ, vi -средние потенциальные потери, порождаемые i-ым ДВ. Модели.

1. Все исходные данные имеются:

m n

II PiXj (kV + sj) —^ min

i=1 j=1

при условии

ISJ Xj < c и x = 0 V1. (2)

j=1

2. Неизвестны Vt (i = 1, n).

2.1. Все Vi (i = 1, n) однопорядковы

I Pi (1-П (1 - kj )X) —max

i=1 j=1

и выполнено (2).

2.2. V (i = 1, n) разнопорядковы

m _

{(1 - П(1 - kj)Xj ),i = 1, n} ———^max

и выполнено (2).

def

3. Отсутствуют V для i e I ^ T = {1,2,...,n}, а для i e T\Iзначения Vi известны:

n

m

__m

Z Z лх (1+^) —^ min'

геГ\I 1=1 1

m

Z л (1-П (1 - kj )1 ——^ max

iel j=1 1

и выполнено (2).

4. { л } случайны с известными распределениями:

d-> max,

х-

n m

P{ZZлх-(kyv,+ c) < d} >Y,

i=1 1=1

и выполнено (2), где / е (0;1) - число, близкое к 1 (уровень доверия).

5. { л, V } случайны с прогнозируемыми значениями

n m n

M (ZZ PiXj (kVi + Ci ) + Z^i (Pi - —min'

i=1 1=1 i=1 1 m n

Z<x+Zy < c, х =0 v 1, y >0,

1=1 i=1 *

где с - заданные ресурсы, { л }- статические оценки { л }.

6. {л V-} заданы функциями предпочтения (ФП). Надо найти ФП ц на множество {Ху }n=\ такую, что (см.(1))

min K —— > max,

и выполнено /-l({Xj }) > Я, где Х- заданный уровень.

7. Нет достаточных данных о {р, v} , но есть возможность получения экспертных оценок.

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

Заключение

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

Литература

1. Попов Г. А., Попова Е. А. Системный подход к формированию множества угроз

информационному и образовательному пространству. - Сборник трудов Межд.

научно-практ. конф. «Эволюция системы научных коммуникаций», Ассоциация

университетов прикаспийских государства. - Астрахань, 2008, с. 127-132.

2. Герасименко В. А., Таирян В. И., Попов Г. А. Основы оптимизации в системах

управления. Монография. - Деп. в ВИНИТИ 12.03.1989, № 213-В89-68.

3. Попов Г. А. Методологические основы комплексной оптимизации в системах защиты информации. Докт. дис. - М., РГГУ, 1991. - 406 с.

4. Кульба В. В., Ковалевский С. С., Шелков А. Б. Достоверность и сохранность информации в АСУ. - М., Синтег, 2003. - 500 с.

Разработка модификации алгоритма волновой трассировки

(алгоритма Ли) Михайлов И. Е.

Михайлов Илья Евгеньевич /М1ШаИоу 11уа Yevgenyevich - студент, кафедра компьютерных технологий и систем, факультет прикладной математики - процессов управления, Санкт-Петербургский государственный университет, г. Санкт-Петербург

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

Ключевые слова: алгоритм волновой трассировки, алгоритм Ли, алгоритм поиска кратчайшего пути, модификация алгоритма.

Использование алгоритма волновой трассировки (алгоритма Ли) является одним из способов нахождения кратчайшего пути на графах. Данный алгоритм показал свою эффективность в сравнении с алгоритмом А* [1], поэтому на его основе целесообразно разработать модификацию, которая улучшит показатели алгоритма.

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

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

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

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