Решение поставленной задачи средствами MS Excel
ЛАБОРАТОРНАЯ РАБОТА № 9
(Обязательно выполнять все рассматриваемые Примеры)
Тема: Обработка результатов эксперимента
Цель работы: Изучение возможностей пакета MS Excel при решении задач обработки экспериментальных данных. Приобретение навыков обработки результатов эксперимента.
Одной из распространенных задач в науке, технике, экономике является аппроксимация[1] экспериментальных данных, алгебраических данных аналитическими выражениями. Возможность подобрать параметры уравнения таким образом, чтобы его решение совпало с данными эксперимента, зачастую является доказательством (или опровержением) теории.
Рассмотрим следующую математическую задачу. Известные значения некоторой функции f образуют таблицу:
Таблица 9.1 | ||||
x | x1 | x2 | . . . | xn |
f(x) | y1 | y2 | . . . | yn |
Необходимо построить аналитическую зависимость y = f(x), наиболее близко описывающую результаты эксперимента. Построим функцию y = f(x, a0, a1, ..., ak) таким образом, чтобы сумма квадратов отклонений измеренных значений yi от расчетных f(xi ,a0, a1, ..., ak) была наименьшей (см. рис. 9.1).
Рис. 9.1 |
Математически эта задача равносильна следующей: найти значение параметров a0, a1, a2, ...,ak, при которых функция принимала бы минимальное значение.
(9.1) |
Эта задача сводится к решению системы уравнений:
(9.2) |
Если параметры ai входят в зависимость y = f(x,ao, a1, …, ak) линейно, то мы получим систему линейных уравнений:
(9.3) |
Решив систему (9.3), найдем параметры ao, a1, ..., ak и получим зависимость y = f(x, ao, a1, ..., ak).
Линейная функция (линия регрессии)
Необходимо определить параметры функции y = ax+b. Составим функцию S:
(9.4) |
Продифференцируем выражение (9.4) по a и b, сформируем систему линейных уравнений, решив которую мы получим следующие значения параметров:
(9.5) |
Подобранная прямая называется линией регрессии y на x, a и b называются коэффициентами регрессии.
Чем меньше величина
тем более обосновано предположение, что табличная зависимость описывается линейной функцией. Существует показатель, характеризующий тесноту линейной связи между x и y. Это коэффициент корреляции. Он рассчитывается по формуле:
Коэффициент корреляции r и коэффициент регрессии a связаны соотношением:
где Dy, Dx - среднеквадратичное отклонение значений x и y.
Значение коэффициента корреляции удовлетворяет соотношению -1 ≤ r ≤ 1. Чем меньше отличается абсолютная величина r от единицы, тем ближе к линии регрессии располагаются экспериментальные точки. Если коэффициент корреляции равен нулю, то переменные x, y называются некоррелированными. Если r = 0, то это только означает, что между x, y не существует линейной связи, но между ними может существовать зависимость, отличная от линейной.
Для того чтобы проверить, значимо ли отличается от нуля коэффициент корреляции, можно использовать критерий Стьюдента. Вычисленное значение критерия определяется по формуле:
Значение t сравнивается со значением, взятым из таблицы распределения Стьюдента в соответствии с уровнем значимости a и числом степеней свободы n-2. Если t больше табличного, то коэффициент корреляции значимо отличен от нуля.
Решение поставленной задачи средствами MS Excel
Вычисление коэффициентов регрессии осуществляется с помощью функции ЛИНЕЙН():
ЛИНЕЙН(Значения_y; Значения_x; Конст; статистика)
Значения_y - массив значений y.
Значения_x- необязательный массив значений x, если массив х опущен, то предполагается, что это массив {1;2;3;...} такого же размера, как и Значения_y.
Конст - логическое значение, которое указывает, требуется ли, чтобы константа b была равна 0. Если Конст имеет значение ИСТИНА или опущено, то b вычисляется обычным образом. Если аргумент Конст имеет значение ЛОЖЬ, то b полагается равным 0 и значения a подбираются так, чтобы выполнялось соотношение y = ax.
Статистика - логическое значение, которое указывает, требуется ли вернуть дополнительную статистику по регрессии. Если аргумент статистика имеет значение ИСТИНА, то функция ЛИНЕЙН() возвращает дополнительную регрессионную статистику. Если аргумент статистика имеет значение ЛОЖЬ или опущен, то функция ЛИНЕЙН() возвращает только коэффициент a и постоянную b.
Для вычисления множества точек на линии регрессии используется функция ТЕНДЕНЦИЯ().
ТЕНДЕНЦИЯ(Значения_y; Значения_x; Новые_значения_x; Конст)
Значения_y- массив значений y, которые уже известны для соотношения y = ax + b.
Значения_x- массив значений x.
Новые_значения_x- новый массив значений, для которых ТЕНДЕНЦИЯ возвращает соответствующие значения y. Если Новые_значения_x опущены, то предполагается, что они совпадают с массивом значений х.
Конст - логическое значение, которое указывает, требуется ли, чтобы константа b была равна 0. Если Конст имеет значение ИСТИНА или опущено, то b вычисляется обычным образом. Если Конст имеет значение ЛОЖЬ, то b полагается равным 0, и значения а подбираются таким образом, чтобы выполнялось соотношение y = ax. Необходимо помнить, что результатом функций ЛИНЕЙН(), ТЕНДЕНЦИЯ() является множество значений - массив.
Для расчета коэффициента корреляции используется функция КОРРЕЛ(), возвращающая значения коэффициента корреляции:
КОРРЕЛ(Массив1;Массив2)
Массив1 - массив значений y.
Массив2 - массив значений y.
Массив1 и Массив2 должны иметь одинаковое количество точек данных.
ПРИМЕР 9.1. Известна табличная зависимость G(L)[2]. Построить график экспериментальных значений. Вычислить коэффициенты регрессиии коэффициент корреляции. Вычислить ожидаемые значения в точках x1=0; x2=0,75; x3=1,75; x4=2,8; x5=4,5 и построить линию регрессии. Настроить график.
L | 0,5 | 1,5 | 2,5 | 3,5 | |||||
G | 2,39 | 2,81 | 3,25 | 3,75 | 4,11 | 4,45 | 4,85 | 5,25 |
· Введем табличную зависимость в лист MS Excel и построим точечный график. Рабочий лист примет вид, изображенный на рис. 9.2.
Рис. 9.2 |
· Для того, чтобы рассчитать значения коэффициентов регрессии а и b выделим ячейки E3:F3, обратимся к мастеру функций и в категории Статистические выберем функцию ЛИНЕЙН(). Заполним появившееся диалоговое окно так, как показано на рис. 9.3 и нажмем Ок.
Рис. 9.3 |
· В результате вычисленное значение появится только в ячейке E3. Для того чтобы вычисленное значение появилось и в ячейке F3 необходимо выделить диапазон E3:F3, нажать клавишу F2, а затем нажать комбинацию клавиш CTRL+SHIFT+ENTER.
· Для расчета значения коэффициента корреляции в ячейку H3 была введена следующая формула: H3 = КОРРЕЛ(A2:A10;B2:B10),рис. 9.4.
Рис. 9.4 |
Как видно из рисункарис. 9.5, рассчитанный коэффициент корреляции высокий, а это значит, что экспериментальные точки расположены близко к линии регрессии. |
· Для вычисления ожидаемого значения в точках x1=0; x2=0,75; x3=1,75; x4=2,8; x5=4,5 занесем их в диапазон C2:C6. Затем выделим диапазон значений D2:D5и введем в ячейку D2формулу уравнения прямой Y=x*a+b, относительно заданных точек и рассчитанных коэффициентов регрессии (рис. 9.5). Скопируем формулу вниз.
Рис. 9.5
· Изобразим линию регрессии на диаграмме. Для этого выделим экспериментальные точки на графике, щелкнем правой кнопкой мыши и выберем команду Выбрать данные…. В появившемся диалоговом окне (рис. 9.5б), для добавления линии регрессии щелкаем по кнопке Добавить и в открывшемся окне Изменение ряда (рис. 9.5в) в качестве Имя ряда: введем Линия регрессии, в качестве Значения X: C2:C6, в качестве значения Y: D2:D6.
Рис. 9.5б
Рис. 9.5в
· Далее в полученной диаграмме (рис. 9.5г) выделяем линию регрессии, для изменения ее типа щелкаем правой кнопкой мыши и выбираем команду Изменить тип диаграммы для ряда и выбираем тип: Точечная с гладкими кривыми и маркерамии ОК (см. рис. 9.6).
Рис. 9.5г
Рис. 9.6 · Для форматирования линии регрессии (можно изменить толщину линии, цвет, тип маркера и т.п.), щелкаем по ней правой кнопкой мыши и выбираем командуФормат ряда данных (рис. 9.7). | |
Рис. 9.7 |
· После форматирования графика, рабочий лист примет вид, изображенный на рис. 9.8.
Рис. 9.8 |
Квадратичная функция
Необходимо определить параметры функции y = ao + a1x + a2x2.
Составим функцию:
Для этой функции запишем систему уравнений (9.2):
(9.6) |
Для нахождения параметров ao, a1, a2 необходимо решить систему линейных алгебраических уравнений (9.6).
Кубическая функция
Необходимо определить параметры многочлена третьей степени y = ao + a1 x + a2 x2 + a3 x3.
Составим функцию S:
Система уравнений для нахождения параметров ao, a1, a2, a3 имеет вид:
(9.7) |
Для нахождения параметров ao, a1, a2, a3 необходимо решить систему четырёх линейных алгебраических уравнений.
Если в качестве аналитической зависимости выберем многочлен k-й степени y = ao+a1x+...+ak xk, то система уравнений для определения параметров ai принимает вид:
(9.8) |
Подбор параметров функции y = a xb
Для нахождения параметров функции y = a xb проведем логарифмирование функции y: Ln y = Ln a + b Ln x
Сделаем замену Y = ln y; X = ln x. Получим линейную зависимость Y = A + b X. Найдем коэффициенты линии регрессии A и b.определяем a = eA. Мы получили значение параметров функции y = axb.
Подбор параметров функции y = aebx
Прологарифмируем выражение y = aebx: Ln y = Ln a + bx Ln e;
Проведём замену Y = Ln y, A = Ln a. Вновь получаем линейную зависимость Y = bx+A. Найдем A и b. Затем определим a = eA .
Ниже приведены замены переменных, которые преобразовывают функции вида y = f (x, a, b) к линейной зависимости Y = Ax+B.
Y = f(x,a,b) | Замена |
Подбор параметров функции y =axb ecx
Прологарифмируем выражение y = axb ecx, после логарифмирования оно принимает вид:
Ln(y) = Ln(a)+b Ln(x)+cx Ln(e) | (9.9) |
Сделаем замену Y=Ln(y), A=Ln(a). После замены выражение (9.9) принимает вид:
Y = A+b Ln(x)+cx | (9.10) |
Для функции (9.10) составим функцию S см. формулу (9.1):
(9.11) |
Параметры A, b и c следует выбрать таким образом, чтобы функция S была минимальной. Необходимым условием минимума S являются соотношения (2). Подставим (9.11) в (9.2), и после элементарных преобразований получим систему трёх линейных алгебраических уравнений для определения коэффициентов A, b и c.
(9.12) |
Решив систему (9.12), получим значения A, b, c. После чего вычисляем a=eA.