Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лекция 7

.doc
Скачиваний:
20
Добавлен:
10.02.2016
Размер:
169.47 Кб
Скачать

Лекция 7

Математические модели

и методы оптимального синтеза связывающих сетей

Общее понятие о задачах синтеза и анализа

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

«Синтез» в переводе с греческого означает «соединение, составление».

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

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

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

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

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

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

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

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

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

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

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

Однако точные алгоритмы, как правило, довольно трудоемки с вычислительной точки зрения. Поэтому на практике часто используют более простые алгоритмы, обеспечивающие быстрое получение решения с приемлемой для практики точностью. Такие алгоритмы строятся с использованием рациональных, с точки зрения логики человека, правил выполнения вычислений. Эти правила называются эвристиками и, как показывает практика, позволяют получить решение, близкое к оптимальному. Например, задача определения замкнутого контура наименьшей длины, обеспечивающего обход всех пунктов сети, может быть решена путем полного перебора всех возможных контуров с выбором среди них контура наименьшей длины, т. е. точным алгоритмом. Известно, что для сети, содержащей n пунктов, количество возможных контуров составляет порядка n!, получение которых для сети, размером n>30, представляет значительные трудности. Однако использование эвристики: "на каждом шаге движемся только к ближайшему пункту" обеспечивает получение приемлемого решения за время, необходимое для построения всего лишь одного контура.

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

Модельное представление сети как объекта синтеза и анализа

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

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

Точки графа называются вершинами, а стрелкидугами. Граф математически обозначается как G(N,V), где N - конечное множество вершин мощностью n, а V – конечное множество дуг мощностью m.

Вершины можно обозначить строчными буквами (i, j, k, l, s) либо цифрами (1, 2, 3, 4, 5), а дуги соответственно парами: {(i, j), (j, k), (k, l) ... } либо {(1,2), (2,3), (3,4), ... }, где первый индекс определяет начало, а второй – конец дуги (см.рис.5.1).

Рисунок 1. Графовая модель сети

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

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

Одним из наиболее распространенных дискретных представлений графа является матрица смежностей. Это матрица А=[aij], размером (n´n) элементов, которые могут принимать значения:

аij = 1, если в графе G существует дуга (ребро) между вершинами i и j;

аij = 0, - в противном случае.

Матрица смежностей графа, приведенного на рис. 5.2, имеет вид:

A=

0 1 0 0 0

0 0 0 0 1

0 1 0 0 0

0 0 1 0 0

1 1 1 1 0


Рисунок 2. Матрица смежности

Для хранения в памяти ЭВМ матрицы смежности, как видим, необходимо n2 ячеек.

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

Если перенумеровать в произвольном порядке дуги (ребра) графа G и поставить эти номера в соответствие номерам строк некоторой матрицы В=[bij], а номера столбцов оставить по-прежнему соответствующими номерам вершин графа, то в такой матрице можно отобразить отношение инцидентности элементов графа G. Элементы матрицы Bij могут принимать значения {0, 1}.

Перенумеруем дуги для рассматриваемого графа: (i, j) - 1; (j,k) - 2; (k,l) - 3; (l,s) - 4; (s,i) - 5; (s,j) – 6; (s,k) - 7. Тогда матрица инцидентности будет иметь вид :

B =

1 1 0 0 0

0 1 1 0 0

0 0 1 1 0

0 0 0 1 1

1 0 0 0 1

0 1 0 0 1

0 0 1 0 1


Рисунок 3. Матрица инцидентности

Взвешенный граф (сеть) может быть в дискретном виде представлен матрицей весов W=[wij],где wij – вес дуги (ребра), если она существует в графе G. Веса несуществующих дуг (ребер) полагают равными ¥ или 0 в зависимости от условий задачи, в которой они рассматриваются.

Если граф является разреженным (имеет малое количество дуг (ребер)), то возможно более компактное представление графа G – списком дуг (ребер). Этот список может быть реализован двумя одномерными массивами размерностью m, в первом из которых записаны начальные вершины дуг (ребер), а во втором – конечные, либо двумерным массивом, размерностью (2, m).

Например,

R1 = (1, 3, 4, 5, 5, 2, 5)

R2 = (2, 2, 3, 4, 1, 5, 3)

R =

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

1 : 2 4 : 3

2 : 5 5 : 1, 2, 3, 4

3 : 2

Синтез сети минимальной стоимости

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

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

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

О п р е д е л е н и е. Дерево, в которое включены все вершины, называется покрывающим.

Математически задача синтеза сети минимальной стоимости формулируется следующим образом.

Пусть задан неориентированный граф G(N,V), где множество вершин N соответствует множеству пунктов сети, общее число которых равно n, а множество ребер V – расстояниям {lij} между парами пунктов. Известна стоимость Сij организации 1 километра линии связи между пунктами i и j .

Необходимо найти некоторое покрывающее дерево G'(N,V'), для которого достигается минимум целевой функции:

Для решения поставленной задачи существует ряд эффективных алгоритмов. Приведем один из них, который известен как алгоритм Прима и носящий имя автора. Алгоритм реализуется путем присвоения пометок вершинам, которые вводятся в искомый граф G'(N,V'), и последовательного введения в него, наиболее коротких ребер, общее количество которых не должно превышать (n-1) и обеспечивать связность между всеми n вершинами покрывающего дерева.

Пошаговая форма алгоритма имеет следующий вид:

Шаг 0. Искомая сеть G'(N,V') в исходном состоянии содержит n вершин и не содержит ребер. Выбирается одна произвольная вершина i и помечается как "выбранная". Остальные (n-1) вершин помечаются как "невыбранные".

Шаг 1. Отыскивается ребро (i, j), принадлежащее G(N, V) с минимальным весом, у которого вершина i принадлежит подмножеству "выбранных" вершин, а вершина j к подмножеству "невыбранных" вершин.

Шаг 2. Ребро (i, j) включается в искомую сеть G'(N,V'), а вершина j исключается из подмножества "невыбранных" вершин и включается в подмножество "выбранных" вершин. Если подмножество "невыбранных" вершин оказалось пустым – конец работы алгоритма. В противном случае – переход к шагу 1.

Проиллюстрируем работу алгоритма Прима на примере. Пусть задано семь пунктов сети, расстояния между которыми сведены в матрицу L = ||lij||, а именно:

L =

0 10 5 12 9 3 9

10 0 7 2 8 4 6

5 7 0 3 1 5 11

12 2 3 0 10 15 10

9 8 1 10 0 12 9

3 4 5 15 12 0 17

9 6 11 10 9 17 0

На шаге 0 искомый граф G'(N,V') содержит 6 вершин и не содержит ребер. Выберем вершину 3 и пометим ее как выбранную (рис. 4).

На шаге 1 выбираем ребро (l35) как ребро с наименьшим весом, у которого вершина i = 3 принадлежит подмножеству "выбранных" вершин (оно пока содержит всего лишь одну вершину 3), а вершина j = 5 - подмножеству "невыбранных" вершин (сейчас это все остальные вершины). На шаге 2 ребро l35 вводится в искомый граф G', а вершина 5 включается в подмножество "выбранных" вершин (рис. 5

Поскольку подмножество "невыбранных" вершин не пустое, повторяем шаг 1. Для этого отыскиваем ребро минимального веса, перебирая сочетания каждой пары "выбранной" и "невыбранной" вершин. Таким оказалось ребро l34 (рис. 6). Оно вводится в граф G', а вершина 4 становится "выбранной".

Рисунок 4 Рисунок 5

Рисунок 6 Рисунок 7

Следующими выбираются ребра: l26 (рис. 7); l31 (рис. 8); l27 (рис. 9). На этом работа алгоритма заканчивается, так как все вершины оказались помеченными как "выбранные" (т. е. подмножество "невыбранных" вершин – оказалось пустым подмножеством).

Рисунок 10

Получен искомый граф G'(N, V'), представляющий собой покрывающее дерево, так как он включает все вершины, содержит число ребер на единицу меньшее числа вершин (n = 7, v = 6) и обеспечивает связность каждой пары вершин.

7

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]