- •Составители: с. П. Соколова, е. А. Кузьмина
- •Содержание
- •Лабораторная работа № 1. Работа в системе matlab
- •1. Методические указания
- •1. Структура и возможности пакета
- •2. Структура данных системы нечеткого вывода
- •3. Разработка нечеткой системы типа Мамдани
- •3.1. Процесс нечеткого вывода
- •3.2. Алгоритм Мамдани (Mamdani)
- •4. Порядок выполнения работы
- •Лабораторная работа № 3. Нечеткая модель оценивания финансовой состоятельности клиентов
- •1.1. Содержательная постановка задачи оценивания финансовой состоятельности клиентов
- •1.2. Нечеткая модель оценивания финансовой состоятельности клиентов
- •1.3. Фаззификация входных и выходных переменных
- •1.4. Формирование базы правил систем нечеткого вывода
- •1.5. Построение нечеткой модели средствами Fuzzy Logic Toolbox и анализ полученных результатов
- •Лабораторная работа № 4. Нечеткая система для анализа и прогнозирования валютных цен на финансовом рынке
- •2. Порядок выполнения работы
- •3. Оформление отчета
- •4. Рекомендованная литература
- •Лабораторная работа № 5. Работа с точечными, многомерными данными в системе matlab
- •1. Деловая графика в системе matlab
- •2. Основные действия над точечными матрицами в системе matlab
- •3. Основные действия над интервальными матрицами
- •4. Многомерные матрицы (массивы)
- •5. Сингулярное разложение многомерной матрицы
- •6. Порядок выполнения работы
- •7. Оформление отчета
- •8. Контрольные вопросы
- •9. Рекомендованная литература
- •Лабораторная работа № 6. Построение интеллектуального модуля симулятора для анализа динамики фондового рынка
- •1. Технический анализ в оценке динамики фондового рынка
- •2. Симулятор для оценивания динамики фондового рынка
- •2.1. Формирование обучающих классов
- •2.2. Формирование таблицы индикаторов на основе «японские свечи»
- •2.3. Формирование многомерной таблицы с различными периодами наблюдений
- •. Формирование многомерной интервальной матрицы индикаторов
- •3. Порядок выполнения работы:
- •4. Контрольные вопросы
- •5. Рекомендованная литература
4. Многомерные матрицы (массивы)
Система MATLAB позволяет вводить матрицы динамической размерности, пример задания трехмерной матрицы представлен ниже.
Пример
>> F = 5*ones(3,3,2)
F(:,:,1) =
5 5 5
5 5 5
5 5 5
F(:,:,2) =
5 5 5
5 5 5
5 5 5
Сумма многомерных матриц равна:
|
Операция нахождения суммы двух данных p-мерных матриц одного и того же порядка называется сложением этих матриц: A+B=C. Операция сложения многомерных матриц обладает коммутативным и ассоциативным свойствами:
A+B=B+A, (A+B)+C=A+(B+C), |
где A, B, C ‑ любые матрицы одного и того же числа измерений и одного и того же порядка.
Произведением матрицы A на число t называется матрица:
|
Таким образом, имеем: tA=B. В частности, если t=1 или t=0, то 1A=A, 0A=0. Из определения умножения многомерной матрицы на число вытекают следующие свойства этой операции:
t(A+B)=tA+tB,(t+u)A=tA+uA,t(uA)=(tu)A, |
где A и B — произвольные матрицы одного и того же числа измерений и одного и того же порядка над полем P, а t и u ‑ числа из поля P.
5. Сингулярное разложение многомерной матрицы
Можно представить произвольную исходную многомерную матрицу через компоненты сингулярного разложения в виде:
A=s1Z1BX1Y1T+ s2Z2BX2Y2T+…+ sPZPBXPYPT, |
где
si=XiTAYiZiB, YiTYi=1, XiTXi=1, ZiTBZiB=1, i=1,2,…p, |
p — ранг матрицы, s1 s2 s3 … sp0 — ранжированные сингулярные числа матрицы A; Yi,Xi,Zi — соответственно нормированные левый, правый и глубинный сингулярные векторы.
При помощи следующей сходящейся итеративной процедуры можно вычислить сингулярные векторы Y, X, Z:
|
где p=0,1,2… номер итерации, — выбранная норма. При этом для любого p=0,1,2… выполняется равенство:
spZB=XpTApYp. |
После вычисления максимального сингулярного числа и соответствующих сингулярных векторов формируется соответствующая многомерная матрица
A(1)=A-s1Z1BX1Y1T,
для которой с использованием вышеприведенной вычислительной процедуры определяются максимальное сингулярное число и соответствующие сингулярные векторы.
Эти же итерации используются и для матрицы A(p), равной:
A(p)=A-s1Z1BX1Y1T-…-spZpBXpYpT . |
Рассмотрим на примере сингулярное разложение заданной трехмерной матрицы.
Пример
Пусть задана исходная двухмерная матрица вида:
|
Для определения максимального сингулярного числа матрицы A, правого, левого и глубинного сингулярных векторов использована вышеприведенная итеративная процедура. В результате вычисления получены следующие результаты:
|
Первая компонента в разложении равна:
|
Сформируем вспомогательную матрицу A2=A1-s1Z1BX1Y1T:
|
Аналогично предыдущему случаю, вычисляем соответствующие максимальное сингулярное число, правый, левый и глубинный сингулярные векторы матрицы A2:
|
С учетом найденных сингулярных компонент их произведение равно:
|
Аналогично предыдущему сформируем вспомогательную матрицу A3=A2-s2Z2BX2Y2T которая имеет вид:
|
Сингулярное разложение многомерной матрицы осуществляется при помощи описанного выше алгоритма, представлено в файле mainSVD3d.p. Для того, чтобы получить сингулярное разложение многомерной матрицы, необходимо ознакомиться с документацией данной функции (например, при помощи команды help mainSVD3d), вызвать данную функцию, передавая ей соответствующие параметры.

.