методические указания. методичские указания МОДЕЛИРОВАНИЕ В МАТКАДЕ 1. Методические указания для проведения лабораторных работ по дисциплине Моделирование систем и процессов
![]()
|
ЛАБОРАТОРНАЯ РАБОТА № 13. РАСПОЗНАВАНИЕ ОБРАЗОВ ПО КОЭФФИЦИЕНТУ КОРРЕЛЯЦИИ. Как известно, коэффициент корреляции rvw является мерой статистической связи меж- ду случайными величинами и определяется по формулам: 9 5 3 4 1 w 4 i 4 1 vi Mvw Mw 7 i 1 1 vi i w 2 v Mw 4 i1 Kvw i1 8 1 4 Mv ![]() ![]() v w rvw 4 Kvw vw Рис.1 Коэффициент корреляции. Здесь Mv , Mw – математические ожидания случайных величин v и w, v, w – среднеквадратические отклонения этих величин, Kvw- корреляционный момент. В Маткаде коэффициент корреляции вычисляется встроенной функцией corr(v,w). Коэффициент корреляции меняется в пределах от –1 до +1. Чем он, тем сильнее связь между двумя случайными величинами. Таким образом, ко- эффициент корреляции является мерой сходства между двумя случайными величинами. Су- ществуют и другие меры сходства. Условие задачи. Даны три группы частотных спектров по четыре спектра в каждой группе бензинов: бензина А-76, бензина АИ-95 и бензина АИ-98. Поступает спектр неизвестного бензина. Нужно вычислить коэффициенты корреляции между неизвестным спектром и каждым из заданных, найти максимальный и отнести посту- пивший бензин к соответствующей марке. Решение. Перед началом решения командой файл- настройка страницы зададим альбомный формат ( landscape). Все спектры расположены в папке Маткад- данные для лаб. работы. В ней созданы три папки для известных марок бензина и папка « неизвестных» спектров. Для начала счета с единицы введем ORIGIN: =1 Сначала необходимо ввести все известные (опорные) спектры в Маткад. Это произ- водится с помощью команд меню- вставить- данные-ввод файла. После ввода этих команд открывается окно file options (опции файла), в котором имеется кнопка « browse» (искать). Нажав на эту кнопку, откроем окно read from file (читай из фай- ла) и укажем путь: Маткад-данные для лаб. Работы- бензин А-76- спектр1.Потом нажмем кнопку открыть. Затем нажмем два раза кнопку готово в окне file options. В Маткаде появится рамка с надписью А-76 …….txt. Присвоим ему имя F11. Аналогично введем остальные спектры бензина А76, присвоив им имена F12, F13, F14, и все спектры бензинов АИ-95, присвоив им имена F2i, и все спектры бензина АИ-98, при- своив им имена F3i.Здесь индексы i меняются от 1 до 4. Ввод данных закончен. 3 . Введенные спектры представляют собой матрицу из 7462 строк и 3 столбцов: пер- вый столбец – порядковый номер, второй – частота и третий – амплитуда спектра ( см. рис.2)
Рис.2 Вид введенного спектра. Затем сформируем сами матрицы как показано на рис.2. Цифра или буква в уголках в показателе матрицы обозначает соответствующий столбец данной матрицы. Нас интересует только амплитуда. Поэтому сформируем из амплитуд всех введенных спектров три матрицы из четырех столбцов каждая: для бензина А-76 матрицу S1, для бен- j 1 3зина АИ-95 матрицу S2 и для бензина АИ-98 матрицу S3. Cначала введем заголовок «Формирование матриц». Для этого нажав одно- временно кнопки shift и Э ( в английском шрифте), откроем окно надписей. Перейдя на рус- ский и введя в меню шрифт Arial cyr, запишем этот заголовок. Затем сформируем сами матрицы как показано на рис.3 Формирование матриц i 1 4 i 3 i S2 F2 3 i S3 F3 3 i S1 F1 i i Рис.3 Формирование матриц. Спектры введены в формате текстов. Их следует перевести в цифровой формат с по- мощью встроенной функции str2num. (string – строка, num- число). Перевод показан на рис.4 k 1 7462 S1 str2numS1 S2(k i) str2numS2 S3 str2numS3 k i k i k i k i k i Рис.4. Перевод текстовых файлов в цифровые. Подготовим «неизвестные» спектры. На самом деле спектры, которые мы называем «неизвестными» нам известны. Первый из этих спектров принадлежит бензину А-76, второй – бензину АИ-95, третий – бензину АИ-98. Мы должны проверить, правильно ли распознает их формируемая нами программа. Введем «неизвестные» спектры, как мы это делали для известных спектров, дав им имена X1, X2, X3,выделим третьи столбцы и переведем их в цифровую форму ( см.рис.4). X 1 ![]() C:\Ìîè äî j 3 X 2 ![]() C:\Ìîè äîê ![]() C:\Ìîè äîêó Y Xj Y str2numY k j k j Рис.5. Ввод исследуемых спектров. Составим программу поиска максимального коэффициента корреляции каждым из ![]() ![]() K for j 1 3 max 0 1 max 0 2 max 0 3 for k 1 4 ![]() ![]() k j ( см рис.6). Так как у нас три «неизвестных» спек- тра, то мы организуем цикл по j от 1 до 3. Переменными max1,max2,max3 мы обо- значим максимальные коэффициенты корреля- ции между спектрами бензинов А-76, АИ-95 и АИ-98, соответственно. В начале мы присвоим им нулевые значения . corr S11 Y В каждой марке бензинов мы имеем max 1 1k if 1 max k S21 Y 1 четыре известных спектра. Поэтому организу- 2k corr k j ем цикл по «к» от 1 до 4-х. В этом цикле мы ищем максимальные коэффициенты корреля- max 2 2k if 2 max k 2 ции между каждым из «неизвестных» спек- S31 Y 3k corr k j тров и спектрами каждой марки. Эти вычисленные макси- max 3 k 3k if 3 max k 3 мальные коэффициенты корреляции циклом по «i» мы помещаем в вектор MAX. MAX j 0 Следующим циклом по «i» мы помещаем в вектор «К» условный номер марки бензина. ![]() for i 1 3 j MAX max i i i 1 3 if MAX j max i Группа 1 – бензин А-76, группа 2 – бензин АИ- 95, группа 3 – бензин АИ-98. Наконец, для большей наглядности присваиваем группе 1 имя «76», а остальным, соответственно, имена «95», «98». ![]() i Kj "76" Kj "95" Kj "98" j K if MAX max ![]() j i ![]() ![]() ![]() ниже приведен вектор ответа. Видим, что распознавание произведено правильно. "76" ![]() "98" Рис.6. Маткад - программа определения марки бензина по максимальному коэффици- енту корреляции. |