Top Banner
171

kpi.uait-visnyk.kpi.ua/wp-content/uploads/2013/04/Issue-56.pdf · УДК 004 Вісник НТУУ «КПІ». Інформатика, управління та обчислювальна

Sep 30, 2020

Download

Documents

dariahiddleston
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
  • Міністерство освіти і науки України Національний технічний університет України «КПІ»

    ВІСНИК

    НАЦІОНАЛЬНОГО ТЕХНІЧНОГО УНІВЕРСИТЕТА УКРАЇНИ «КПІ»

    Інформатика, управління та обчислювальна техніка

    Заснований у 1964 р. Випуск 56

    Київ “ВЕК+” 2012

  • УДК 004 Вісник НТУУ «КПІ». Інформатика, управління та обчислювальна техніка: Зб. наук. пр. – К.:

    Век+, – 2012. – № 56. – 170 с. Рекомендований до друку Вченою радою факультету інформатики та обчислювальної техніки,

    протокол № 1 від 30.08.2012 Головний редактор: Луцький Г.М., д.т.н., проф. Заст. гол. ред.: Стіренко С.Г., к.т.н., доц., Пустоваров В.І., к.т.н., доц. Відповідальний секретар: Поспішний О.С. Редакційна колегія: Павлов О.А., д.т.н., проф., Теленик С.Ф., д.т.н., проф., Бузовський О.В., д.т.н., проф., Симоненко В.П., д.т.н., проф., Жабін В.І., д.т.н., проф.,

    Кулаков Ю.О., д.т.н., проф., Марковський О.П., к.т.н., доц., Стенін Н.А., д.т.н., проф., Томашевський В.М., д.т.н., проф.

    Описано результати дослідження і створення компонентів обчислювальних й інформаційних

    систем і комплексів, пристроїв автоматики та передавання даних, систем автоматизації програму-вання, контролю й діагностики, штучного інтелекту тощо.

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

    ISSN 0135-1729 Свідоцтво про державну реєстрацію № 16949-5719 Р від 17.06.2010 Збірник наукових праць українською, англійською та російською мовами Web-ресурс – http://it-visnyk.kpi.ua Підп. до друку 30.08.2012. Формат 60×84 1/16. Гарнітура Times. Папір офсетний № 1. Наклад 150 прим. Надруковано в ЗАТ “ВІПОЛ”, 03151 м.Київ, вул. Волинська, 60. © Національний технічний університет України “КПІ”, 2012

  • ЗМІСТ Широчин В.П., Перетятко Е.Н. Эффективный графический интерфейс системы моделлирования………. 4 Широчин В.П., Шилов Ю.Н. Минимизация объема управляющего списка для планирования событий в Petri-nets моделях…………………………………………………………………………………………………. 8 Кулаков Ю.А., Воротников В.В. Формирование оптимальных маршрутов в мобильных сетях на основе модифицированного алгоритма Дейкстры……………………………………………………………………… 13 Ясінський В.В., Болдак А.О. Методи та засоби моделювання "конфліктних" ситуацій в складних людиномірних системах………………………………………………………………………………………….. 20 Шантир Д.С., Невдащенко М.В., Болдак О.А. Середовище «швидкої» розробки систем комп’ютерної обробки зображень……………………………………………………………………………………………….. 25 Ролик А.И. Концепция управления корпоративной ИТ-инфраструктурой…………………………………… 31 Павлов А.А., Мисюра Е.Б., Халус Е.А., Сперкач М.О., Аракелян Г.А. Результирующая формализация пер-вого уровня трехуровневой модели оперативного планирования и принятия решений по критерию ми-нимизации суммарного опережения директивных сроков…………………………………………………….. 56 Павлов А.А., Мисюра Е.Б., Шевченко К.Ю. Побудова ПДС-алгоритму розв’язання задачі мінімізації су-марного зваженого запізнення виконання робіт на одному приладі………………………………………….. 58 Берендеев Е.А., Иванов А.В., Лазарева Г.Г., Снытников А.В. Эффективное использование суперэвм для решения больших задач физики плазмы методом частиц в ячейках…………………………………………. 71 Клименко І.А., Ткаченко В.В., Сторожук О.М. Мультипроцесорна система на базі програмованих про-цесорних ядер Nios II Altera…………………………………………………………………………………….. 78 Cеливанов В.Л., Воробйов В.В. Оптимальные структуры декодирующих сеток преобразователей код-ток двоично-десятичных систем счисления………………………………………………………………………… 88 Симоненко А.В., Пих С.В., Слуцкий Н.В., Воробйов В.В. Система пространственного распределения зада-ний в распределенных вычислительных системах……………………………………………………………. 94 Павлов А.А., Мисюра Е.Б., Халус Е.А. Исследование свойств задачи календарного планирования для одного прибора по критерию минимизации суммарного опережения заданий при условии допустимости расписании………………………………………………………………………………………………………… 98 Родічева О.С., Чемерис А.М., Тютюнник С.В. Математичні моделі задачі вибору оптимального набору запитів матеріалізації…………………………………………………………………………………………….. 103Норкин Б.В. Об актуарных вычислениях с использованием графических процессоров……………………. 113Симоненко А.В. Система оценки ресурсов в системе динамического планирования неоднородных Grid систем……………………………………………………………………………………………………………… 120Симоненко А.В., Щербина О.В. Система параметричної оцінки ресурсів в глобальних Grid системах…… 126Настенко М.Е., Стиренко С.Г. Распознавание и выделение границ однородных областей при паралель-ной обработке гистологических изображений………………………………………………………………….. 130Варфоломеев А.Ю. Усовершенствованный алгоритм медианного потока для визуального отслеживания объектов на видеопоследовательностях………………………………………………………………………… 134Поспешный А.С. Метод информационного дополнения на основе онтологий для повышения эффектив-ности информационных систем…………………………………………………………………………………. 143Молчановський О.І., Ковтун Д.І. Семантичний пошук текстів новин………………………………………... 151Федоречко О.І. Метод виправлення двократних помилок передачі даних в комп’ютерних системах управління реального часу………………………………………………………………………………………. 155Иванов Д.Г. Организация резервирования в системах распределенного хранения данных………………… 160Марковський О.П., Виноградов Ю.М., Косейкіна Г.С. Спосіб прискореного обчислення коренів на полях Галуа GF (2m) з використанням передобчислень………………………………………………………………. 165

  • УДК 004.94 ШИРОЧИН В.П., ПЕРЕТЯТКО Е.Н.

    ЭФФЕКТИВНЫЙ ГРАФИЧЕСКИЙ ИНТЕРФЕЙС СИСТЕМЫ МОДЕЛЛИРОВАНИЯ

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

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

    Based on the on-screen graphic means of communication between man and computer are widely included in the practice of working with many operating systems and applications. However, the effectiveness of the user with graphical information, graphs of varying complexity and connectivity remains low. The paper suggests ways to view graph-theoretic models with elevated levels of intuitive perception and cognitive relations of various elements in the formal structures.

    1. Экранное представление формальных структур

    На сегодняшний день информация часто представляется и обрабатывается в виде гра-фов[1-4]. Например: в информатике и програм-мировании для задания алгоритмов; в химии для описания различных структур и путей сложных реакций; в схемотехнике для пред-ставления различных соединений элементов на печатной плате; в различных транспортных и коммуникационных системах и т. д.

    Для различных задач графы могут быть как очень малыми, так и чрезмерно большими. От-сюда возникает задача построения изображения графа с лучшим визуальным восприятием его[3]. Под изображением графа необходимо понимать изображение множества вершин, свя-занных ребрами. При визуальном восприятии графа возникают проблемы[5-8], связанные с:

    – восприятием графа при большом количе-стве связей;

    – направлением дуг в ориентированном графе;

    – подписями на рёбрах; – слиянием рёбер, размещённых на одной

    линии. Далее в этой статье предложены некоторые

    решения этих проблем.

    2. Проблема восприятия графа с большим количеством связей

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

    графы содержат в себе настолько большое ко-личество рёбер, что изображенный граф визу-ально разобрать практически невозможно. Примером этого является граф, изображенный на Рис.1.

     Рис. 1. Граф зависимостей программной си-

    стемы Граф представляет собой дерево разбиения

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

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

  • Эффективный графический интерфейс системы моделлирования 5 (назовём его – метод «жгута») для рёбер. Рассмотрим прорисовку одного ребра: Необходимо провести ребро из вершины P0 в вершину P4.

     Рис. 2. Дуга в виде прямой линии между вер-

    шинами Для начала необходимо найти путь между

    этими вершинами (Рис.3).

     Рис. 3. Путь между вершинами Р0, Р4 Теперь проведем кривую через полигон,

    образованный точками P0, P1, P2, P3, P4:

    Рис. 4. Проведение кривой между вершинами

    Для визуализации лучше всего в качестве кривых подходят кусочно-заданные кубические B-сплайны (кубический B-сплайн – это просто набор кривых третьего порядка в двухмерном пространстве, для которых выполняется усло-вия сшивки первых и вторых производных на краях).

    Введём параметр λ для управления степе-нью связанности ребер, который принимает значения от 0 до 1 (0 – ребра представляют со-бой независимые прямые линии, 1 – ребра мак-симально связаны друг с другом).

    Математически это выглядит так: ∙ 1

    S(t) – точки сплайна, S'(t) – результирующая кривая, которая отображается на экран в виде ребра.

    После преобразований изображение графа (Рис.5) приобретает лучший вид для визуально-го восприятия.

     Рис. 5. Граф после преобразования с пара-

    метром λ = 0.85 За счет связки ребер проглядываются зави-

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

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

     Рис. 6. Граф с параметром λ = 0

    После применения метода связывания дуг по радианам визуальное восприятие графа улучшилось. Как видно с Рис.7, четко просле-живаются связи внутри пакетов и между ними.

  • 6 Вісник НТУУ «КПІ» Інформатика, управління та обчислювальна техніка №56 Метод связывания ребер можно сочетать с

    различными методами рисования деревьев, что является его большим преимуществом.

    3. Проблема представления направления

    дуг в ориентированном графе

    При довольно-таки сложных графах с большим количеством рёбер сложно опреде-лить направление каждого ребра, потому что либо эти стрелки будут очень маленькими и их не будет заметно, либо они будут сливать-ся[3,4]. Чтобы не рисовать стрелки направле-ния, ребра можно нарисовать в виде градиент-ных линий, где один цвет – это начало, а другой – конец ребра. Такое представление дает нам возможность однозначно определять начало и конец каждого ребра даже в очень загруженных графах.

     Рис.7. Граф с параметром связывания λ=0.85 

    4. Проблема восприятия подписей на

    рёбрах

    Часто возникает необходимость сделать маркировку ребер графа[4-6]: указать условия, вероятности переходов и т.д. Но при большой сложности графа, не всегда можно правильно установить отношение между конкретной мар-кировкой и ребром. Как одно из решений этой проблемы – метод построения таблицы связей между вершинами. Поскольку большинство графов являются довольно-таки массивными (чрезмерно много вершин и рёбер), часто воз-никает сложность в нахождении связей между ними.

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

    им маркировки. Это облегчит граф и сделает более удобным нахождение нужной вам марки-ровки.

    5. Проблема слияния дуг

    При отображении графов дуги часто изоб-ражаются в виде прямых линий[4]. Расположе-ние прямых дуг на одной линии приводит к их визуальному слиянию, что затрудняет анализ графа. Следовательно, нужно изменить форму рёбер так, чтобы они не сливались. Одно из решений – представление дуги в виде окружно-сти (метод изгиба дуг).

    Для этого у нас есть точки A(x1;y1) и B(x2;y2). Построение окружности возможно только в том случае если знать центр окружно-сти O(x0;y0) и его радиус R.

    Для этого можно выбрать радиус круга равным расстоянию между точками A и B. То-

    гда 22 1212 yyxxR , а треугольник ABO будет равносторонним (Рис.8).

    Рис.8. Построение дуги

    Тогда высота, проведенная из точки O к от-резку AB, будет равна R2

    3 , а точка пересече-

    ния P будет иметь координаты

    221;

    221 yyxx .

    Тогда для высоты получим следующее уравне-ние:

    22

    02

    2102

    2123

    yyyxxxR

    (1)

    Использовав уравнение прямой, которая проходит через 2 точки можно определить ко-эффициент наклона прямой AB как

    12121

    xxyyK

    .

    Поскольку произведение коэффициентов наклона перпендикулярных прямых равно -1, то коэффициент наклона прямой OP равен

    21122

    yyxxK

    .

  • Эффективный графический интерфейс системы моделлирования 7 Используя уравнение прямой, проходящей

    через одну точку и коэффициент наклона, по-лучим уравнение )(2 2 212

    21 xxyy xKy . Ес-ли учесть, что точка O также лежит на этой прямой уравнение примет вид

    )0(20 221

    221 xxyy xKy (2)

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

    6. Практическое применение метода изгиба дуг

    Для демонстрации метода изгиба дуг создан программный пакет MultiSim, который исполь-зует математику описанную выше. При постро-ении дуг прямыми, они часто сливаются. Пакет реализован на языке Java.

    Рис.9. Пример метода изгиба дуг

    Результат работы данной программы можно увидеть на Рис.9. Как видно, вершины (Р1, Р3, Р4) стоят на одной линии. Если бы не был при-менён метод изгиба дуг, то связи сливались бы в одну линю, и определить, какие вершины свя-заны практически не возможно.

    7. Заключение

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

    Метод «жгута» позволяет связать ребра для лучшей визуализации связей между определен-ными группами.

    Дуга в виде градиентной линии – удобное представление начала и конца ребра в массив-ных графах.

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

    Представление дуг в виде окружностей предотвратит слияние ребер графа.

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

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

    1. Брейер М. А., Теория и методы автоматизации проектирования вычислительных систем – Москва: Мир, 1977. – С. 108-205.

    2. Berge C. B., The Theory of Graphs and Its Applications, New York, Wiley, Inc., 1962 3. G. D. Battista, P. Eades, R. Tamassia, and I. G. Tollis. Graph Drawing: Algorithms for the Visualization of

    Graphs. Prentice Hall, 1999 4. Касьянов В. Н., Евстигнеев В. А., “Графы в программировании: обработка, визуализация и примене-

    ние”, 2003 5. Peterson, J. L., Petri Net Theory and the Modeling of Systems, Prentice-Hall, 1981 6. Kumar, D. and Harous, S., "Distributed Simulation of Timed Petri Nets: Basic Problems and Their Resolu-

    tion", IEEE Transactions on Systems, Man and Cybernetics, Vol. 24, No. 10, 2002 7. Holliday, M. A. and Vernon, M. K., "A Generalized Timed Petri Net Model for Performance Analysis",

    IEEE Trans. on Software Eng., vol. SE-13, No. 12, 2006, pp. 1297-131 8. Евстигнеев В.А., Применение теории графов в программировании, 2009 9. David Joyner, Minh Van Nguyen, Nathan Cohen, Algorithmic Graph Theory, 2010

  • УДК 004.946 ШИРОЧИН В.П., ШИЛОВ Ю.Н.

    МИНИМИЗАЦИЯ ОБЪЕМА УПРАВЛЯЮЩЕГО СПИСКА ДЛЯ ПЛАНИРОВАНИЯ СОБЫТИЙ В PETRI-NETS МОДЕЛЯХ

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

    Stochastic Petri net is a model of real parallel systems. Analysis of the processes occurring in such systems re-quires a large amount of time. Minimizing the control list in the simulation of the system reduces the required time for analysis. Modeling systems that use optimized control lists, will give a more accurate simulation result for the shortest possible time.

    Симуляция работы сети Петри

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

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

    Наиболее известными редакторами сетей Петри, использующимися сейчас, являются PIPE 2.0, WoPeD и инфраструктура PetriNet-Kernel. Несмотря на широкий выбор возможно-стей, их объединяет отсутствие четкого и стру-ктурированного управляющего списка. Это, во-первых, скрывает от пользователя важные дан-ные о реальных процессах, происходящих в сети, а, во-вторых, предоставляет систему «как есть», без возможности оптимизации и ускоре-

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

    Проблемы замедления анализа сети и

    способы их решения

    Для уменьшения времени анализа работы се-ти необходимо выяснить основные причины замедления данного процесса: 1) Необходимость сортировки списка по вре-

    мени. 2) Увеличение времени выборки с увеличени-

    ем списка. 3) Сложность отображение большого объема

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

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

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

  • Минимизация объема управляющего списка для планирования событий в Petri-nets моделях 9 жила возможность вставки элемента на нужное место в списки во время обработки события. На первый взгляд здесь кажется уместным исполь-зование бинарного дерева либо бинарного пои-ска. Однако следует учесть, что новое событие в списке не может опуститься в списке ниже, чем на m позиций от вершины, где m – количе-ство конфликтных групп переходов. Если при-нять длину списка за n, то бинарный поиск поз-волит вставить элемент на нужную позицию приблизительно за log2n, а последовательный обход элементов списка с конца – за m. Выхо-дит, что даже при наличии в сети 10 конфлик-тующих переходов последовательный обход будет быстрее бинарного при списке больше 1000 элементов.

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

    Выбор структуры данных для реализации управляющего списка

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

    Возможные структуры делятся на несколько основных групп – списки (Lists), наборы (Sets), множества (Maps), очереди (Queues) и стек (Stack). Из возможных структур в первую оче-редь исключено использование наборов, т.к. хоть они и поддерживают автоматическое упо-рядочивание, в них нельзя содержать объекты с одинаковыми характеристиками, а в управля-ющем списке гарантировано наличие событий с одинаковым временем выполнения. То же са-мое касается и множеств, список ключей для доступа к объектам которых тоже является на-бором. Упорядоченный стек или приоритетная очередь – наилучший по быстродействию вари-ант, за исключением необходимости сбора ста-тистики после каждого шага, что значительно

    замедляет выполнение. Остается использование списков.

    Рассмотрим два основных типа списка: ди-намический массив и связный список:

    Таблица 1. Время выполнения стандартных операций

    Произвольный доступ

    Вставка в конец

    Удаление

    ArrayList O(1) O(1) O(n) LinkedList O(n) O(1) O(1)

    В таблице использована О-нотация: О(1): время выполнения константно. О(log n): если n удвоено, то время увеличе-

    но на константу. О(n): если n удвоено, то время удвоено.

    Вставка значительно быстрее в связном спи-ске, а выбор по индексу – в динамическом мас-сиве. Также в связном списке быстрее удале-ние, что может пригодиться на этапе оптимиза-ции. Поэтому следует рассмотреть оба варианта.

    Реализация способов минимизации управляющего списка и выбор наилучшего

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

    UML-диаграмма подсистемы симуляции се-тей представлена на рисунке 1.

    Рис. 1. Упрощенная UML-диаграмма подсистемы симуляции сетей Петри

  • 10 Вісник НТУУ «КПІ» Інформатика, управління та обчислювальна техніка №56 Подсистема собирает статистику по состоя-

    ниям в процессе моделирования сети для каж-дой реализации управляющего списка. Рассмо-трим 4 способа минимизации списка на основе следующих процедур.

    1) Сортировка Очевидно, что, несмотря на оптимизированный способ сортировки, время работы все равно будет довольно большим, и оно будет экспоне-нциально расти с увеличением размера списка. Тем не менее, на этом этапе можно сравнить поведение структур ArrayList и LinkedList:

    Таблица 2. Время генерации списка с сортировкой

    Событий Время генерации списка, нс ArrayList LinkedList

    1000 89226790 9503836110000 7837538278 1130000115520000 32967832629 4983621144230000 78576589412 12572254305940000 160307454637 27572882197550000 289759595362 521567271651

     

     Рис. 2. Время генерации списка с сортировкой

    слиянием Из графика на рис.2 видно, что структура LinkedList не позволяет минимизировать время генерации управляющего списка. При количес-тве событий больше 50000 время генерации почти вдвое превышает время при использова-нии динамического массива. Далее будем расс-матривать варианты минимизации, использую-щие только ArrayList.

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

    Таблица 3. Время генерации списка с пря-мой вставкой

    Событий Генерация спи-ска, нс

    Сбор статисти-ки, нс

    1000 5845663 217363510000 40214713 2383409820000 108813695 4549621030000 159848742 6751793940000 237567861 9597039150000 279228181 115345045

    100000 845359073 2523357081000000 8900266852 3412606200

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

    Рис. 3. Время генерации с прямой вставкой

    Поэтому следующий шаг – непосредственное уменьшение размеров списка.

    3) Очищение списка При расчете оптимального использования дан-ного способа следует исходить из размера спи-ска N, требуемого для очищения списка време-ни M, коэффициента экспоненты k и искомого количества удаляемых записей x. Аналитически это можно записать в виде неравенства:

    Все параметры, кроме N, зависят от языка про-граммирования и способа реализации, поэтому рассчитывать по этой формуле нецелесообраз-но. К тому же, определение коэффициента k – тоже нетривиальная задача. Поэтому число х лучше искать опытным путем. Минимизация для малого количества событий не имеет смыс-ла, поэтому примем N = 100000 событий, а х от 100 до 2000..

  • Минимизация объема управляющего списка для планирования событий в Petri-nets моделях 11 Таблица 4. Время генерации списка для раз-ного количества очищаемых записей

    Число x Генерация спи-ска, нс

    100 727268279 200 663714751 500 659862872

    1000 646911651 1500 657634776 2000 663578382

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

    Таблица 5. Время генерации списка с оптимизацией очищением

    Событий Генерация спи-ска, нс

    Сбор статисти-ки, нс

    1000 25433949 23754610000 160658817 10*23754620000 340589676 20*23754630000 450885932 30*23754640000 604728491 40*23754650000 776026302 50*237546

    100000 1501107724 100*2375461000000 15529057904 1000*237546

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

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

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

    Таблица 6. Время генерации списка с ком-бинированным методом оптимизации

    Событий Генерация спи-ска, нс

    Сбор статисти-ки, нс

    1000 9650317 23754610000 70032712 10*23754620000 131040315 20*23754630000 201106569 30*23754640000 252545129 40*23754650000 316800955 50*237546

    100000 654746279 100*2375461000000 6314954473 1000*237546

    Перспективы

    Способы минимизации, рассмотренные в дан-ной статье, позволяют сократить время генера-ции и обработки управляющего списка. Так же сокращается и общее время моделирования, что позволяет получить результаты статистики по состояниям за меньший период времени, чем без минимизации. Для наглядности, изобразим на графике зависимости времени обработки списков событий от общего числа событий: диаграммы для 2, 3 и 4 способов:

     Рис.5. Три способа минимизации списка Было выявлено, что при небольшом количе-

    стве событий моделирования системы нет осо-бой необходимости в минимизации, но для мо-делирования реальных систем необходимо ко-личество событий 10 000 и более, что требует больших затрат времени.

    Для проведения данных исследований была разработана среда эмуляции стохастических

  • 12 Вісник НТУУ «КПІ» Інформатика, управління та обчислювальна техніка №56 сетей Петри на языке Java. В нее были внесены рассмотренные способы оптимизации и модуль проверки быстродействия. Программа разме-щена в свободном доступе на сайте https://sourceforge.net/projects/petrineteditor/, что дает право любому желающему изучить, моди-фицировать или дополнить исходные коды, а так же предложить свои варианты оптимизации на форуме этой программы.

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

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

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

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

    1. M. Ajmone Marsan, G. Balbo, G. Conte, S. Donatelli and G. Franceschinis «Modelling with Generalized Sto-chastic Petri Nets» John Wiley and Sons pp.117-155

    2. Molloy M. K. "Performance Analysis Using Stochastic Petri Nets", IEEE Trans. on Computers, vol. C-31. No. 9, pp. 913-917

    3. Peterson J.L. Petri Net Theory and the Modeling of Systems, Prentice-Hall, 1981 4. Kumar, D. and Harous, S., "Distributed Simulation of Timed Petri Nets: Basic Problems and Their Resolution",

    IEEE Transactions on Systems, Man and Cybernetics, Vol. 24, No. 10 5. Holliday, M. A. and Vernon, M. K., "A Generalized Timed Petri Net Model for Performance Analysis", IEEE

    Trans. on Software Eng., vol. SE-13, No. 12, pp. 1297-13

  • УДК 621.396.946.2 КУЛАКОВ Ю.О., ВОРОТНИКОВ В.В.

    ФОРМИРОВАНИЕ ОПТИМАЛЬНЫХ МАРШРУТОВ В МОБИЛЬНЫХ СЕТЯХ НА

    ОСНОВЕ МОДИФИЦИРОВАННОГО АЛГОРИТМА ДЕЙКСТРЫ

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

    In the article the modified method of Deykstry is considered for the construction of optimum routes in ad hoc

    networks. For the search of effective and semieffective decisions on columns with the vectorial scales of ribs the method of integral is used. As private criteria used criterion of change of general load a network; index of the rela-tive loading on a channel, brought in a concrete route; length of route. Programmatic realization of finding of opti-mum routes is offered in the conditions of change of geographical site of knots of network.

    Постановка проблемы

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

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

    Анализ последних исследований и публикаций

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

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

    Анализ литературы свидетельствует, что маршрутизация в беспроводных сетях имеет свои особенности [3]. «Узким местом» тут обычно является фиксированная инфраструкту-ра с ее ограничениями на передачу трафика между пользователями. В таком случае мо-бильные устройства должны функционировать в автономном режиме, самостоятельно проводя установление связи с другими узлами сети, тем самым выполняя некоторые функции маршру-тизатора. Усложнения их работы обусловлено характером рассмотренных нами сетей, где уз-лы-пользователи могут когда угодно изменять свое местоположение, тем самым постоянно

  • 14 Вісник НТУУ «КПІ» Інформатика, управління та обчислювальна техніка №56 изменяя топологию и общаясь между собой без создания каких-либо определенных стационар-ных путей передачи данных. Такие сети носят название MANET (mobile ad hoc networks) [4]. В этом случае узлы должны сотрудничать для обеспечения качественной маршрутизации, в отличие от традиционных WLAN, где абонент-ское оборудование централизованно управляет-ся точками доступа.

    Протоколы маршрутизации MANET делятся на две группы: проактивные (tabledriven/ proactive routing protocols) и реактивные (on-demand/ reactive routing protocols) [3-5]. Осо-бенность первой группы в том, что узлы сети постоянно собирают и обновляют информацию о ее состоянии, обмениваясь ею с соседями. Проактивные протоколы требуют от узла веде-ния таблиц маршрутизации, где указаны марш-руты, которые позволяют достичь любого або-нента сети. Специальные алгоритмы использу-ются для поддержки актуальности этой инфор-мации. В связи с этим все изменения в тополо-гии сети распространяются в ней. К проактив-ным протоколам относятся TBRPF (Topology Dissemination Based on Reverse-Path Forward-ing), OLSR (optimized link state routing), DSDV (Highly Dynamic Destination-Sequenced Distance-Vector Routing).

    В протоколах реактивной группы узел ищет путь к пункту назначения только при возникно-вении необходимости. Для этого существуют две основных операции: поиск маршрута и поддержка маршрута. Когда узел намерен уста-новить связь и начинает устанавливать марш-рут, информацию о доступных каналах он по-лучает по запросам. Для поддержки информа-ции о маршрутах узлы должны реагировать на изменения в топологии сети. Узел, у которого есть информация о каком-то канале, должен стремиться детектировать его отказ, если это происходит. Основные реактивные протоколы: DSR (Dynamic Source Routing protocol), AODV (Ad Hoc On-Demand Distance Vector), DYMO (Dynamic MANET On-demand) [3].

    Позднее были предложены другие протоко-лы для пакетных радиосетей, в которых были сделаны попытки соединить преимущества и избавиться от недостатков каждой из групп. Примером является протокол BVR (Beacon Vector Routing), который использует техноло-гии «жадного продвижения пакетов» (greedy forwarding) и построения системы логических

    координат, унаследованные от предыдущих протоколов. Его особенностью является созда-ние ряда «маяков» (beacons), случайно выбран-ных узлов, которые играют роль синхронизато-ров в сети. На их основе строится «дерево» се-тевой структуры, определяются показатели маршрутов и осуществляется построение путей к пунктам назначения: поиск ближайшего сосе-да, назначение его как следующего элемента маршрута и переход до его ближайшего соседа (реализация алгоритму «жадного продвиже-ния»). Отличием BVR является применение при этом не географических, а логических коорди-нат. Главное назначение протокола – поддерж-ка соединениий «точка-точка» (point-to-point). Позднее на его основе был разработан протокол LCR (Logical Coordinate Routing) [6].

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

    Формулировка задачи исследования

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

    K,...,,k),u,x(Сk 21 , образующих векторный вес ребра [7]

    ))u,x(С),...,u,x(С()u,x(С K1 (1)

    где u,x – вершины и переходы графа, соот-ветственно; K - количество частных критериев качества.

    В соответствии с этим, критерии качества пути становятся векторными:

    ))(W),...,(W()(W K 1 с компонентами )(Wk , для которых [7,8]

    g kk )g(C)(W , (2)

  • Формирование оптимальных маршрутов в мобильных сетях на основе модифицированного… 15 где g – ориентированные ребра графа.

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

    Целевая функция показывает необходимость минимимизации трех частных критериев: кри-терий изменения общей загрузки сети )(W 1 , показатель относительной нагрузки на канал, вносимой конкретным маршрутом )(W 2 , дли-на маршрута )(W 3 .

    ))(W),...,(W()(W K 1 Поэтому решение в задаче оптимизации с

    векторным критерием (многокритериальная оптимизация) будет сформулирована следую-щим образом:

    ),(W)(W)(W)(W 332211 (3)

    ,,,,

    0001

    321

    321

    где 321 ,, – весовые коэффициенты, учи-тывающие важность критериев.

    Способы определения весовых коэффициен-тов (коэффициентов важности критериев) мо-гут быть различны. Существуют в общем слу-чае несколько классов методов определение важности коэффициентов [8]:

    1. Методы поиска решения без участия ЛПР. 2. Методы, использующие предпочтения

    ЛПР для построения правила выбора един-ственного или небольшого числа парето-эффективных решений.

    3. Интерактивные (итеративные) процедуры решения задачи с участием ЛПР.

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

    Исходными данными для решения задачи оптимизации являются:

    информация о территориальном расположе-нии объектов (узлов сети);

    матрица информационных потоков; матрица пропускных способностей беспро-

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

    брать одно из альтернативных решений (марш-рутов), при котором достигается наиболее

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

    Цель оптимизации – достижение баланса за-грузки сети, контроль перегрузок.

    Изложение основного материала

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

    n – число узлов сети; D(k) – вес пути (сумма весов рёбер вдоль данного пути) от корневого узла нV до уз-ла кV ; w( нV , кV ) – вес ребра между нV -м и кV -м уз-лами; N – множество, элементами которого явля-

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

    Алгоритм Дейкстры является наиболее эко-номичным алгоритмом (с точки зрения вычис-лительной сложности), позволяющим опреде-лить вес и состав оптимального пути между заданной парой вершин [9]. Сущность его со-стоит в следующем.

    Обозначим начальную и конечную вершины пути символами нV и кV соответственно. Вна-чале все множество вершин }{ iVV графа раз-бивается на два подмножества. Первое из них содержит только вершину нV , а второе )(T – все остальные вершины: нi VVT /}{ . Затем путем последовательного перебора элементов множества Т определяется вершина ближайшая (в смысле заданного критерия оптимальности) к вершине нV . Выбранная вершина присоеди-няется к первому множеству вершин, которое уже будет состоять из двух элементов. Если присоединенная вершина ilV является конеч-ной, т.е. кil VV , то процесс построения опти-мального пути считается завершенным. Если же это условие не выполняется , то производит-ся сравнение весов путей от начальной верши-

  • 16 Вісник НТУУ «КПІ» Інформатика, управління та обчислювальна техніка №56 ны нV до всех вершин множества Т . При этом рассматриваются как однохоповые пути вида

    },{ TVV iн , так и двуххоповые вида },,{ TVVV jiн .

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

    Дадим формальное описание алгоритма Дейкстры с использованием тернарных опера-ций [9].

    Исходными данными для реализации алго-ритма являются: матрица весов ijwW ;

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

    Конечной целью является нахождение веса оптимального пути из нV в кV .

    Алгоритм состоит в последовательном вы-полнении следующих шагов.

    Шаг 1. Включение в множество Т всех вер-шин графа, за исключением нV :

    нi VVT /}{ . Шаг 2. Определение очередной вершины,

    исключаемой из Т . Определяется вершина ТVi , для которой

    выполняется равенство ij

    Vнj ww opt

    Tj

    (4)

    Шаг 3. Определение конца процесса поиска. Если Ki , то нiopt ww , конец процесса

    поиска. В противном случае перейти к следу-ющему шагу.

    Шаг 4. Корректировка матрицы весов. Исключить из Т вершину iV и для всех

    TV j выполнить тернарные операции вида )]w,w(,w[optw ijнiнjнj (5)

    Перейти к шагу 2. После завершения процесса вычислений

    элемент нкw матрицы весов будет равен весу оптимального пути из нV в кV .

    Пример. Рассмотрим эффективность мно-гокритериальной оптимальной маршутизации на основе анализа сети (рис. 1).

    1

    2

    3

    4

    5

    6

    7

    8

    Рис. 1. Пример сети, для которой реализуется механизм многокритериальной

    оптимальной маршрутизации Исходные данные. Пусть заданы: 1) матрица расстояний для сети (рис. 1):

    01358610225118121928113501031791381332352288610307617895150195

    102179760242139125217251138178242011222214218113395139112011710221923515012522211701262812281952171421021260

    ijd

    2) пропускные способности беспроводных

    каналов связи сети: 10 ijС пак/с; 3) матрица требований, которая задает

    трафик между узлами сети (пак/с):

    030709060102040810005070080307106006008010106709020050804030570506020040207049050205000808037080907050900602

    04060701070200187654321

    .............................................

    ......

    ij

  • Формирование оптимальных маршрутов в мобильных сетях на основе модифицированного… 17 4) интенсивность обслуживания беспровод-

    ными каналами связи зададим одинаковую: пак/с ij 5 .

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

    N,...,j,i 21 : оптijП)l,k( Общее количество рассмот-ренных маршру-

    тов – 512. Ограничим задачу и рассчитаем не-зависимые маршруты для каждой пары узлов «источник-адресат» (для примера выделим множество маршрутов, которое включает по 3 независимых маршрута для каждой пары):

    ;2)3(1,2)(1,)25674(1П 21912658412 ;3)4(1,3)2(1,3)(1П 25324210113

    };)476521(,)431(,)41{(П

    566

    21214014

    };)56741(,)521(,)531{(П

    456

    24823815

    37932319316 )6741(,)6521(,)631(П

    ;)76521(,)741(,)731(П

    425

    27523017

    };)8741(,)8521(,)8631{(П

    409

    34727718

    26422811723 )352(,)312(,)32(П

    };)47652(,)412(,)432{(П

    441

    26722824

    };)567412(,)532(,)52{(П

    583

    25412325

    };)67412(,)632(,)652{(П

    506

    20919826

    };)7412(,)7652(,)732{(П

    402

    30024627

    };)87412(,)8632(,)852{(П

    536

    29322228

    ;)473(,)413(,)43(П 27124411234 ;)523(,)563(,)53(П 24117013835 ;)673(,)653(,)63(П 2342139336 ;)(,)(,)( 24719513037 74376373 ;)873(,)853(,)863(П 26423717738

    };)5214(,)5674(,)534{(П

    393

    31725145

    };)65214(,)674(,)634{(П

    468

    24020646

    };)765214(,)734(,)74{(П

    570

    24313647

    };)85214(,)8634(,)874{(П

    492

    29027048

    ;)635(,)685(,)65(П 2341887656 ;)735(,)785(,)765(П 27123617857 ;)87325(,)865(,)85(П 50818810058 ;)736(,)786(,)76(П 22822110367 ;)876(,)856(,)86(П 2371778568 .)8537(,)867(,)87(П 37418913578

    Распределим потоки между узлами в соот-ветствии с критерием минимального расстоя-ния: /ff klklkl . Для этого будем считать, что каждый поток ij , распространяется по кратчайшему пути 3ij2ij1ijij П,П,ПminП :

    0000000072071031000

    0620700000600910091900

    032000800810826000080000064090051000013030

    .....

    ..........

    ....

    fkl

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

    На первом этапе по критерию, характеризи-рующем длину пути, из }П{П ij создадим d

    подмножеств dП , D,d 1 , где D – максималь-ное число транзитных участков для маршрутов

    N,1j,i;ППij . В результате к классу маршрутов, не имею-

    щих транзитных участков, включены:

    };)87(,)86(,)76(,)85(,)65(,)74(,)73(,)63(,)53(,)43(,)52(

    ,)32(,)41(,)31(,)21{(П

    135

    8510310076136

    13093138112123

    1171401011261

    Подмножества маршрутов, которые имеют один, два и три транзита, будут сформованы следующими элементами ijП :

  • 18 Вісник НТУУ «КПІ» Інформатика, управління та обчислювальна техніка №56

    ,)413(,)852(,)732(,)632(,)652(,)532(,)412(,)432(

    ,)352(,)312(,)741(,)731(,)631(,)521(,)531(,)431(

    ,)341(,)321(,)231{(П

    244222246209

    198254267228

    264278275230

    193248238212

    2532422192

    ,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(,)(

    234188270243

    240206251264

    237177247195

    234213241170

    635685874734674634534873853863743763673653523563

    };)765(,)867(,)876(,)856(,)736(,)786(,)865(,)735(,)785(,)473(

    178189

    237177228221

    188271236271

    };)8537(,)8634(,)5214(,)5674(,)8632(,)7412(,)7652(,)8741(,)8521(,)8631(

    ,)6741(,)6521{(П

    323

    290393317

    293402300

    409347277

    3793233

    };)65214(,)87325(,)85214(

    ,)65214(,)87412,)67412(,)47652(

    ,)76521(,)56741{(П

    468

    508492

    468536

    506441

    4254564

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

    Перед решением задачи рекомендуется провести нормирование критериев, определив диапазон их изменения от 0 до 1.

    Как показано в [7,8], для нормировки удоб-но использовать функцию вида :

    minijmaxij

    maxijijij

    wwww

    w

    (6)

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

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

    Система моделирования позволяет привязы-вать размещение узлов сети к цифровой карте (рис. 2)

     Табл. 1 Векторное значение веса ребра

    Маршрут

    Ном

    ер маршрута

    Общ

    ая нагрузка на

    на

    канал

    , пак

    Нагрузка на

    канал

    , которая обусловле-

    на маршрутом

    пак/с

    Расстояние

    Векторное значение

    веса

    2‐>5  1 4,60  0,70  125  0,32 

    1‐>4  2 3,10  0,10  142  0,63 

    1‐>2  3 3,00  0,20  126  0,62 

    3‐>7  4 2,80  0,50  95  0,58 

    7‐>8  5 2,70  0,00  135  0,7 

    6‐>7  6 2,60  0,60  103  0,54 

    4‐>7  7 2,30  0,50  138  0,54 

    5‐>6  8 1,90  0,20  76  0,78 

    2‐>3  9 0,90  0,90  117  0,53 

    5‐>8  10 0,70  0,70  102  0,64 

    3‐>6  11 0,60  0,20  95  0,85 

    2‐>6  12 0,90  0,90  150  0,48 

    3‐>8  13 0,90  0,90  181  0,43 

    5‐>7  14 0,90  0,90  179  0,43 

    2‐>7  15 0,80  0,80  235  0,38 

    1‐>3  16 0,70  0,70  102  0,64 

    1‐>5  17 0,70  0,70  217  0,46 

    2‐>8  18 0,70  0,70  281  0,35 

    4‐>8  19 0,70  0,70  251  0,4 

    1‐>6  20 0,60  0,60  195  0,54 

    4‐>6  21 0,60  0,60  178  0,56 

    2‐>4  22 0,50  0,50  222  0,54 

    3‐>5  23 0,50  0,50  139  0,67 

    1‐>7  24 0,40  0,40  228  0,57 

    4‐>5  25 0,20  0,20  242  0,64 

    6‐>8  26 0,10  0,10  86  0,93 

    1‐>8  27 0,00  0,00  281  0,66 

    3‐>4  28 0,00  0,00  112  0,94 

  • Формирование оптимальных маршрутов в мобильных сетях на основе модифицированного… 19 Система моделирования позволяет привязы-

    вать размещение узлов сети к цифровой карте (рис. 2)

    Для примера рассмотренного выше, сеть представленная в системе моделирования пока-зана на рис. 2.

    Рис.2. Представление мобильной эпизодиче-

    ской сети в системе моделирования На рис.3 представлены отсортированные

    по убыванию значения векторных весов ребер для 28 однохоповых маршрутов. Скалярное значение веса маршрутов изменяются в диапа-зоне от 0.3 до 0.9. Для таких значений при по-следующем выборе оптимальных маршрутов с целью избегания перегрузки сети предлагается

    включать, в первую очередь, в маршрут ребра с векторным значением веса меньше 0.5.

    Рис. 3. Векторные веса ребер сети

    Выводы

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

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

    Список литературы 1. Бахтин А.А. Метод локального восстановления маршрута в эпизодических сетях. / А.А. Бахтин, В.А.

    Меркушев/ // Инженерный вестник Дона [Электронный ресурс]. – ISSN 2073-8633. – 2011. – №3– Ре-жим доступу до журн.: http://www.ivdon.ru/magazine/archive/n3y2011

    2. Стекольников Ю. И. Живучесть систем. Теоретические основы [Текст] : [монография] / Ю.И. Сте-кольников. – СПб.: Политехника, 2002. – 155 с. – ISBN 5-7325-0652-7

    3. Dressler F. Self-Organization in A