Нечеткое программирование.
Нечетские системы в Matlab

Тип работы:
Реферат
Предмет:
Общие и комплексные проблемы естественных и точных наук


Узнать стоимость

Детальная информация о работе

Выдержка из работы

16 декабря 2011 г. 18: 01
Т-Сотт #10−2010
(Технологии информационного общества)
Нечеткое программирование. Нечетские системы в МАТЬАВ
Приведена программная реализация системы нечеткого вывода Мамдани в среде МЛ ТІ. АВ для решения задачи оценки качества обслуживания нагрузки в /Р-сетях.
Соколов Д. П. ,
МТУ СИ каф. СУ ПС
Рассмотрев средства нечеткого программирования в [ 1 ] остановимся более подробно на реализации нечетких систем в среде МАТ|_АВ. Рассмотрим задачу реализации нечеткой системы оценки качества обслуживания голосового трафика в 1Р-сстях. Система будет оперировать четырьмя лингвистическими переменными, три входные — задержка, джиттер, потери — и одна выходная — качество обслуживания. Как было указано в [2], лингвистические переменные описываются вектором (14. Т. и, в. М), где
• N — имя переменной-
• Т — терм-множество, элементы которого задаются нечеткими множествами на универсальном множестве
и:
• О — синтаксические правила, порождающие название термов-
• М — семантические правила, определяющие функции принадлежности нечетких термов, порожденных синтаксическими правилами из в.
Для краткости все переменные сведены в табл. 1.
Таблица 1
Определения лингвистических переменных
имя переменной^! & gt- задержка (ТР)
Х| терм-множество (Т) {низкая, средняя, высокая}
пределы значений (Ц) |0. 450]_мс
имя переменной (Ы) джиттер (РУ)
Х-. терм-множество (Т) {низкий, высокий}
пределы шачений (1)" [0. 90] мс
имя переменной (Ы) потери (ЬЮ
терм-множество ^Т) {низкие, высокие)
пределы значений (и) |10 10 '1
имя переменной? Ы) качество обслуживания (ОоЯ)
V терм-множество (Т) {низкое, среднее, высокое}
пределы значений ГШ И —
Правила системы можно записать в символической форме как:
1. (задержка-низкая) & amp- (джиттер-низкий) & amp- (потери-низкие) -& gt- & amp- (качество-высокос)
2. (задержка-средняя) & amp- (джиттер-низкий) & amp- (потсри=низкис) =& gt- & amp- (качсство=срсднсс)
3. (задержка-низкая) & amp- (джиттер-высокий) & amp- (потери-низкие) =& gt- & amp- (качество"низкое)
4. (задержка-средняя) & amp- (джиттер_высокнй) & amp- (потери-низкие) -& gt- & amp- (качсство-низкое)
5. (задержка-высокая) & amp- (джиттср-высокий) & amp- (потери-низкие) «& gt- & amp- (качество-низкос)
6. (потери-высокис) -& gt- & amp- (качество^низкое)
Семантические правила М зададим функциями принадлежности, определив степени принадлежности определенных элементов множества и к элементам из множества '-Г и интерполировав значения. Степени принадлежности, в свою очередь, определим как соответствующие координаты вектора собственных значений матриц парных сравнений, оценивая для каждой пары
элементов универсального множества И преимущество щ (и,) одного элемента над другим по отношению к свойству нечеткого множества. Уровень преимущества определим по девятибалльной шкале Саати:
1 — если преимущество элемента и, над элементов и, отсутствует-
3 — если преимущество элемента и, над и, слабое- р,|(и,) =
5 — если преимущество элемента и, над и, существенное-
7 — если преимущество элемента и, над и, явное-
9 — если преимущество элемента и, над и, абсолютное.
& gt-
(1)
Согласно табл. 1 всего необходимо задать 7 функций принадлежности (матриц парных сравнений). В среде МАИ. А В матрица парных сравнений задается в виде двумерного массива. Степени принадлежности проще всего вычислить оператором собственных значений мат-
6. 1
Т-Comm #10−2010
(Технологии информационного общества)
Используя перечисленные свойства матриц парных сравнений можно существенно упростить составление семантических правил. Из (4) и (3) получаем
U^kj/Ukj ijjc=l. ji (5)
Таким образом, можно восстановить все значения матрицы по известной k-той строке. Степени принадлежности нечеткого множества можно вычислить по формуле:
p (U,)=l/(U,)+U5+U1,+ … +U|») (6)
С учетом изложенного вычислим функции принадлежности для переменной «джиттер» на интервале 0−90 мс по опорным точкам с шагом 10 мс в виде:
% DV 1 (низкий джиттер)
А (1,1)= I: А<- 1.2)= 1- Л (1,3)= I -Л& lt- 1,4)= 1: А (1.5 & gt-=¦ 1: А<-! .6)"3: Л (1.7 И 7: Л (1,8)=9: А (1. 9)=9:А<- 1. 10)=9: for i=2: 10 for j=1: 10 A (i, j)=A (l. j) A (l. i): end end
V = zeros! 1. 10):
Гог j= 1: 10
V (lj) —
I (A (1 j)+A (2j)+A (3. j)+A (4j)+A (5j)+A (6,j)+A (7j)+A (8. j)+A (9.j)+A (I0. j": end
DV_l=V/max (V) —
% LR 2 (высокий джиттер)
A (1.1)= I: Л (1. 2)= I -Л (1. 3)= I: A (1. 4)= I: Л (1. 5)= 1: Л (1. 6)= I /3: A (1.7)= I 7: A (l, 8)=l /9-A (1. 9)= I 9: A (1. 10)= I У: fori=2: IO for j=I: 10 A (ij)=A (l j) A (l. i): end end
V — zeros! 1. 10): for j=l: 10
V (lj) =
I (A! l. j)+A (2. j)+A (3j)+A (4j)+A (5. j)+A (6. j)+A (7j)+A (8j)+A (9j)+A (l0j)): end
DV2=V max! V):
={0 10 20 30 40 50 60 70 80 90]: plo"x. DV_l, x. DV2)
Функции принадлежности нечетких множеств «низкий джиттер» и «высокий джиттер» приведены на рис. 2.
Окончательно рассчитаем функции принадлежности для переменной «потерн» с применением кубической
интерполяции (Piecewise Cubic Hermite Interpolating Polynomial. PCHIP) на интервале от 10& quot-'-ло I О'-1.
% LR I (низкие потери)
V = zeros! 1. 10):
A = zeros (IO. IO):
A (1,1: 10) = [1 МММ 379) — for i=2: 10 lor j= 1: 10 A (i. j)=A (l. j) A (l. i) — end end
for j=l: IO d=0: for j-1: 10 d=d+A (i, j): end
VO)-I/d: end
LR_l=V7max (V):
% LR 2 (высокие потери)
V = zeros (1. 10):
A = zeros! 10. 10):
A (I. I: I0) = [I II II II 13 19 1/9): for i-2: 10 for j=l: 10 A (ij)=A (lj) A (l. i) — end end
forj 1: 10 d-0- for i=l: IO d=d+A (i. j): end
VO) = l/d: end
LR 2-V max! V):
x-l-10 -9 -8 -7 -6 -5 -4 -3 -2 -I):
XX-10:0. l:-l-
a=inierpl (x. LR_l. xx., pchip'): b=inlerpl (x. LR 2, xx,'-pehip'-): plol (xx.a.x. b)
Соответствующие функции принадлежности приведены на рис. 3.
После того, как все лингвистические переменные заданы. воспользуемся инструментом MATLAB FIS Editor и сформируем нечеткую систему вывода Мамдани так. как это показано на рис. 4.
Рис. 2. Функции принадлежности множеств: Ў низкий джиттер. А — высокий джиттер
65

ПоказатьСвернуть
Заполнить форму текущей работой