Научная статья на тему 'МЕТОД МАРШРУТИЗАЦії НА ОСНОВі БАГАТОКРИТЕРіАЛЬНОї ОПТИМіЗАЦії ТА НЕЧіТКОї ЛОГіКИ'

МЕТОД МАРШРУТИЗАЦії НА ОСНОВі БАГАТОКРИТЕРіАЛЬНОї ОПТИМіЗАЦії ТА НЕЧіТКОї ЛОГіКИ Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
141
66
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ОПТИМИЗАЦИЯ / МАРШРУТИЗАЦИЯ / НЕЧЕТКАЯ ЛОГИКА / OPTIMIZATION / ROUTING / FUZZY LOGIC

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Буханько О. М.

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

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

ROUTING METHOD BASED ON MULTICRITERIA OPTIMIZATION AND FUZZY LOGIC

In work there is presented a routing method based on multicriteria optimization and fuzzy logic apparatus. The program complex was developed for proposed method investigation

Текст научной работы на тему «МЕТОД МАРШРУТИЗАЦії НА ОСНОВі БАГАТОКРИТЕРіАЛЬНОї ОПТИМіЗАЦії ТА НЕЧіТКОї ЛОГіКИ»

■а о

В роботі представлено метод маршрутизації, що базується на багатокритеріальній опти-мізації та апараті нечіткої логіки. Розроблено програмний комплекс для дослідження запропонованого методу

Ключові слова: оптимізація, маршрутизація, нечітка логіка

□--------------------------------------□

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

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

□--------------------------------------□

In work there is presented a routing method based on multicriteria optimization and fuzzy logic apparatus. The program complex was developedfor proposed method investigation

Keywords: optimization, routing, fuzzy logic ---------------------□ □--------------------------

УДК 381.324:621.394.74

МЕТОД МАРШРУТИЗАЦІЇ НА ОСНОВІ БАГАТОКРИТЕРІАЛЬНОЇ ОПТИМІЗАЦІЇ ТА НЕЧІТКОЇ ЛОГІКИ

О.М. Буханько

Кандидат технічних наук, доцент Кафедра мереж зв’язку Харківський національний університет радіоелектроніки пр. Леніна, 14, м. Харків, Україна, 61166 Контактный тел.: 096-280-72-87 Е-mail: a borman@mail.ru

1. Вступ

Однією з основних задач маршрутизації є вибір раціонального маршруту з множини ймовірних, ґрунтуючись на сукупності показників якості кожного з маршрутів.

Порівняння всіх значущих критеріїв для вибору оптимального рішення з множини варіантів є досить складним завданням. Це пов’язано зі складними залежностями між даними критеріями і складністю побудови математичної моделі мережі.

Актуальні на сьогодні протоколи маршрутизації [1 - 2] при оцінці потенційних маршрутів найчастіше керуються лише одним критерієм або, у кращому випадку, певною загальною метрикою, значення якої знаходиться на основі функції від декількох параметрів стану вузлів і каналів зв’язку з ваговими коефіцієнтами, що задаються апріорі. Це робить такі протоколи відносно неприйнятними для мереж з топологією, що постійно змінюється, та для мульти-сервісних мереж, де функція розрахунку загальної метрики та значення вагових коефіцієнтів повинні змінюватися в залежності від типу сервісу. Також найбільш поширені на сьогодні протоколи і методи маршрутизації не враховують стан завантаженості мережних ресурсів (значення миттєвої пропускної спроможності, значення вільного розміру буфера маршрутизатора тощо), що призводить до нерівномірного розподілу трафіку між альтернативними маршрутами і, як наслідок, перенавантажень. Вирішення перелічених вище проблем є актуальною задачею багатошляхової маршрутизації.

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

Однією з задач дослідження є розробка програмного комплексу для реалізації запропонованого методу багатошляхової маршрутизації на основі знаходження підмножини непорівняльних за критерієм Парето маршрутів та її подальшого звуження за допомогою апарату нечітких продукцій.

2. Формування множини оптимальних маршрутів з урахуванням сукупності показників якості

Визначення маршруту являє собою одну з основних задач маршрутизації. Визначення маршруту є складною задачею, особливо, коли конфігурація мережі є такою, що між парою взаємодіючих мережних інтерфейсів існує множина маршрутів. Найчастіше вибір зупиняють на одному оптимальному по деякому критерію маршруті (на практиці, для зниження обсягу обчислень, обмежуються пошуком не оптимального в математичному сенсі, а раціонального, тобто близького до оптимального, маршруту). В якості критеріїв оптимальності можуть виступати, наприклад, номінальна пропускна спроможність і завантаженість каналів зв’язку, затримки, внесені каналами, кількість проміжних транзитних вузлів, надійність каналів і транзитних вузлів тощо. Але навіть у тому випадку, коли між кінцевими вузлами існує тільки один шлях, для складної топології мережі його знаходження може являти собою нетривіальну задачу. Маршрут може визначатися емпірично адміністратором мережі на підставі різних не формалізованих міркувань. Однак емпіричний підхід до визначення маршрутів мало придатний для великої мережі зі складною топологією. У цьому випадку використовуються автоматичні методи визначення маршрутів. Для цього кінцеві вузли та інші пристрої мережі оснащуються спеціальними програмними за-

Е

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

Багатокритеріальний аналіз [3, 4] має ряд переваг перед однопараметричною оптимізацією, але цей підхід практично не використовується в задачах телекомунікацій.

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

Для розв’язання задачі одношляхової та бага-тошляхової маршрутизації можна використати відношення Парето [5, 6]. Аксіома Парето накладає певні вимоги на характер відношення переваги в багатокритеріальних задачах. А саме, бажано за кожним критерієм отримати, при можливості, найкраще значення.

Однак на практиці цей випадок зустрічається дуже рідко. Варто зазначити, що показники якості цільові функції [6] можуть бути трьох типів: нейтральними, узгодженими і конкурентними між собою. В третьому випадку досягти потенційного значення кожного з показників окремо не уявляється можливим. При цьому може бути досягнутий лише узгоджений оптимум введених цільових функцій

- оптимум за критерієм Парето.

Оптимуму за критерієм Парето в критеріальному просторі відповідає підмножина Парето-оптималь-них оцінок, що відповідають недомінуючим варіантам:

P(Y) = opt, Y = {k (ф°) є Y: 3k (ф) є Y: к(ф) > к (ф°)}, (1)

де к(ф) - показники якості маршруту.

Розглянута у даній роботі модель телекомунікаційної мережі (ТКМ) складається з 10-ти маршрути-заторів (вузлів) R1,R2,...,R10 та каналів u1,u2,...,u21, що з’єднують дані маршрутизатори між собою. Кожен канал характеризується вектором метрик:

u i = (di, ^i,ci,Pi,Bi),

де di - затримка i -го каналу, мс; ці - пропускна спроможність і -го каналу, Мбіт/с; ci - відносна вартість і -го каналу; Рі - ймовірність пакетної помилки; Ві - миттєва пропускна спроможність каналу, Мбіт/с.

Метрики маршрутів розраховуються на основі значень метрик каналів, що входять у склад даних маршрутів.

Якщо для деякої пари маршрутів із множини всіх маршрутів виконується нерівність к(ф') > к(ф") , то вважається, що перший маршрут переважніше другого. Це означає, що другий маршрут ні при яких обставинах не може бути оптимальним та його можна виключити із подальшого процесу прийняття рішень згідно (1).

Програма, що реалізує пошук Парето-оптималь-них маршрутів, була розроблена на мові програму-

вання С++ у середовищі розробки Embarcadero C++ Builder 2010 з наступними можливостями:

- знаходження множини усіх можливих маршрутів, що не мають петель, від одного вузла до іншого, по матрицям суміжності мереж, що містять від 3-х до 20-ти маршрутизаторів (вузлів);

- знаходження метрик маршрутів за значеннями метрик каналів, що входять у склад даних маршрутів;

- знаходження підмножини Парето-оптимальних маршрутів з множини усіх можливих маршрутів, що не мають петель, від одного вузла до іншого.

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

Рис. 1. Алгоритм програми пошуку множини Парето-оптимальних маршрутів

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

Інтерфейс розробленої програми представлено на рис. 2.

З

I Исследование многокритериальной многопутевой маршрутизации £

Файл Маршруты Параметры сети Маршруты

155 (1) ->(4) ->(б) ->(з) -> (5) -> (2)

156 (1) ->(4) ->(б) ->(3) -> (5) -> (7) >(2)

157 (1) *>(4) ->(6) ->(3) -> (5) -> (8)- >(7)- >(2)

158 (1) ->(4) ->(6) ->(з) -> (5) -> (8)- > (9) - >(Ю) -> (7) -> (2)

159 (» >(4) >(6) ->(3) > (5) -> (8) > (Ю) >(7) >(2)

(1) *>(4) *>(б) *> (5) -> (2)

161 (1) > (4) >(6) -> (5) >(3) > (2)

(1) ->(4) ->(б) *> (5) *> (7) -> (2)

163 (1) ->(4) ->(6) -> (5) ->(8) -> (7)- >(2)

164 (1) ->(4) ->(б) -> (5) ->(8) -> (9)- > (Ю) V 3 ->(2)

165 (1) ->(4) ->(б) -> (5) ->(8) -> (10) Є А ->(2)

Метрики маршрута №162 4,957 Задержка

44 Пропускная способность

3,06 Стоимость

0,3178793 Вероятность ошибки 12 Мгнов. проп. способность

Всего путей: 260

Оптимальных путей: 5

НИ

Скрыть метрики Оптимизировать і

Маршрут (1) -> (4) -> (6) -> (5) -> (2) добавлен в множество Парето Маршрут (1) -> (4) -> (6) -> (5) -> (7) -> (2) добавлен в множество Парето Всего во множество Парето добавлено: 5 путь(-и)(-ей)

Рис. 2. Програма Парето-оптимізації

Приклад множини Парето-оптимальних маршрутів від вузла 1 до вузла 2 (рис. 3), який було отримано у ході дослідження за допомогою розробленої програми, наведений у табл. 1.

Таблиця 1

Маршрут ^го^е , мс ^го^е , Мбіт/с с го^е Р го^е В го^е ’ Мбіт/с

1-2 2,314 37 0,22 0,11 8

1-3-5-2 3,902 42 1,93 0,2295 10

1-3-5-7-2 3,962 42 2,5 0,2549 14

1-4-6-5-2 4,897 45 2,49 0,2946 10

1-4-6-5-7-2 4,957 44 3,06 0,3149 12

І В ^ 3. Звуження множини

Парето-оптимальних маршрутів на основі правил нечітких продукцій

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

Нечітка логіка [7, 8] в сукупності з іншими математичними засобами дозволяє будувати адекватні аналітичні та імітаційні лінгвістичні моделі засобів управління ресурсами, що базуються на системах нечіткого виводу, які можна використовувати в перспективних протоколах маршрутизації.

У даному випадку нечітка логіка використовується як основа правил нечіткого виводу для звуження Па-рето-множини.

Як було показано вище, для формування Паре-то-множини непереважних маршрутів використовувалися показники якості каналів розглянутої моделі ТКМ в їх чіткому поданні. У якості нечітких лінгвістичних змінних (НЛЗ) для реалізації бази нечітких правил використовується фазіфікація показників якості буферів вузлів, що входять у маршрути отриманої Парето-множини. Розглянемо детальніше дані показники якості.

Миттєва пропускна здатність каналу. Формально представимо «миттєву пропускну здатність» як вхідну лінгвістичну змінну Р1 . У якості терм-множи-ни даної змінної розглянемо Т1 = {«мала», «невелика», «середня», «вище середньої», «велика»}. Функції приналежності для даної множини представлені на рис. 4.

Рис. 3. Парето-оптимальні маршрути

Рис. 4. Функції приналежності для Р4

Вільний об’єм буфера. У якості терм-множини даної змінної Р2 розглянемо Т2 = {«малий», «невеликий», «середній», «більше середнього», «великий»}. Функції приналежності для даних термів представлені на рис. 5.

Е

Таблиця 2

Рис. 5. Функції приналежності для Р2

Кожен маршрутизатор також характеризується алгоритмом обробки черги: FIFO, WRED, WRQ, який задається спочатку і більше не змінюється. Кожен з цих алгоритмів формує нечітке висловлювання для кожного маршрутизатора.

У табл. 2 наведені правила нечітких продукцій, що були розроблені на підставі перелічених вище особливостей.

Раціональними вважаються ті маршрути, у складі яких 80 або більше відсотків вузлів отримують значення вихідної змінної нечіткого виводу «Добре». У випадку, коли всі маршрути із множини Парето-опти-мальних маршрутів мають менше 80-ти відсотків вузлів із значенням нечіткого виводу «Добре», раціональним вважається маршрут з найбільшим відсотком.

Для реалізації запропонованого методу звуження множини Парето-оптимальних маршрутів було застосовано редактор систем нечіткого виводу FIS із Fuzzy Logic Toolbox, що входить у склад пакету прикладних програм математичного моделювання Matlab R2011b. Редактор FIS є основним засобом, який використовується для створення або редагування систем нечіткого виводу в графічному режимі.

Миттєва пропускна спроможність Вільний розмір буфера Алгоритм обробки черги Нечітка продукція

Мала Малий FIFO Добре

Мала Невеликий FIFO Добре

Мала Середній FIFO Добре

Невелика Малий FIFO Добре

Невелика Невеликий FIFO Добре

Невелика Середній FIFO Добре

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

Середня Малий WRED Добре

Середня Невеликий WRED Добре

Вище середньої Малий WRED Добре

Вище середньої Невеликий WRED Добре

Висока Малий WRED Добре

Висока Невеликий WRED Добре

Середня Середній WFQ Добре

Середня Більше середнього WFQ Добре

Середня Великий WFQ Добре

Вище середньої Середній WFQ Добре

Вище середньої Більше середнього WFQ Добре

Вище середньої Великий WFQ Добре

Висока Середній WFQ Добре

Висока Більше середнього WFQ Добре

Висока Великий WFQ Добре

Рис. 6. Реалізація правил нечітких продукцій

Редактор FIS дозволяє викликати всі інші редактори і програми перегляду систем нечіткого виводу.

Для реалізації нечітких продукцій використовується алгоритм Мамдані з приведенням до чіткості центроїд-ним методом [9]. Отримання результатів вихідної змінної, в залежності від значень вхідних змінних, здійснюється за допомогою підпрограми перегляду правил нечіткого виводу (рис. 6).

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

Раціональні маршрути від першого до другого вузла, які

З

було отримано з множини Парето-оптимальних маршрутів (табл. 1), представлені в табл. 3.

Таблиця 3

Маршрут Процент вузлів із значенням змінної нечіткого висновку «Добре» Раціональність маршруту

1-2 100 +

1-3-5-2 33,3

1-3-5-7-2 50

1-4-6-5-2 75

1-4-6-5-7-2 80 +

Висновки

В даній роботі розроблено метод рішення задачі маршрутизації в ТКМ, заснований на апа-

ратах багатокритеріальної оптимізації і нечіткої логіки.

Особливостями даного методу, у порівнянні з актуальними на сьогодення алгоритмами маршрутизації, є, по-перше, відмова від надання метрикам апріорних вагових коефіцієнтів важливості для знаходження раціонального маршруту, що надає можливість відкласти (або взагалі позбутися) вирішення про важливість того чи іншого параметра ТКМ; по-друге, прийняття до уваги завантаженості полоси пропускання каналів й буферів маршрутизаторів мережі, що повинно дозволити більш рівномірно розподілити навантаження між альтернативними маршрутами та забезпечити більш гнучку адаптацію до динамічних змін параметрів мережі.

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

Література

1. Олифер, В.Г., Олифер, Н.А. Основы компьютерных сетей [Текст] / В.Г. Олифер, Н.А. Олифер. - СПб.: «Питер». - 2009.

- 352 с.

2. Лемешко, О.В., Симоненко, Д.В., Дробот, О.А. Результати порівняльного аналізу потокових моделей маршрутизації в телекомунікаційних мережах [Текст] / О.В. Лемешко, Д.В. Симоненко, О.А. Дробот // Збірник наукових праць Харківського університету Повітряних Сил. - Харків. - 2007. - №1(130. - С. 66 - 69.

3. Березовский, Б.А., Барышников, Ю.М., Борзенко, В.И., Кепнер, Л.М. Многокритериальная оптимизация. Математические аспекты [Текст] / Б.А. Березовский, Ю.М. Барышников, В.И. Борзенко, Л.М. Кепнер. - М.: Наука. - 1986 - 186 с.

4. Безрук, В.М. Векторна оптимізація та статистичне моделювання в автоматизованому проектуванні систем зв’язку [Текст] / В.М. Безрук. - Харків: ХНУРЕ. - 2002. - 156 с.

5. Безрук, В.М., Варич, В.В. Многокритериальный подход к маршрутизации в сетях связи [Текст] / В.М. Безрук, В.В. Варич // Радиотехника. - Харьков, 2010. - Вып. 163. - С. 45 - 48.

6. Bezruk, V.M. Methods of Multi-criterion Information-System Optimization [Текст] / V.M. Bezruk // Telecommunications and Radio Engineering. - USA, 2001. - 55(8). - Р. 52 - 60.

7. Кофман, А. Введение в теорию нечетких множеств [Текст] / А. Кофман. - М.: Радио и связь. - 1982. - 432 с.

8. Яхъева, Г.Э. Нечеткие множества и нейронные сети [Текст] / Г.Э. Яхъева. - М.: БИНОМ. - Лаборатория знаний. - 2006.

- 316 с.

9. Леоненков, А.В. Нечеткое моделирование в среде MATLAB и FazzTECH [Текст] / А.В. Леоненков. - СПб.: БВХ - Петербург, 2005. - 736 с.

Е

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