Московский физико-технический институт
Опубликован: 25.10.2007 | Доступ: свободный | Студентов: 3791 / 1086 | Оценка: 4.50 / 4.33 | Длительность: 24:00:00
ISBN: 978-5-9556-0065-9
Специальности: Программист, Математик
Лекция 4:

Численное решение переопределенных СЛАУ. Метод наименьших квадратов

< Лекция 3 || Лекция 4: 123456 || Лекция 5 >
Аннотация: В лекции рассматриваются методы решения переопределенных систем уравнений. Обсуждается вопрос о выборе базиса на погрешность результата. Вкратце описываются итерационные методы решения плохо обусловленных систем линейных уравнений.

3.1. Пример использования метода наименьших квадратов (МНК)

Приведем простой пример получения переопределенной системы линейных уравнений. Такого рода задачи часто встречаются, например, при обработке результатов экспериментов.

Пусть f — линейная (или близкая к линейной) функция аргумента x: f(x) = u1x + u0. В точках xk известны значения функции f(xk). Тогда u0, u1коэффициенты, которые необходимо подобрать так, чтобы выполнялись условия u1xk + u0 = fk, k = 0,1,2,3,4, fk = f(xk).

Получим систему пяти уравнений относительно двух неизвестных. Это — переопределенная система. Она не имеет классического решения, так как в общем случае не существует прямой, проходящей через все 5 точек (это возможно только тогда, когда какие - либо три уравнения полученной системы линейными преобразованиями сводятся к двум другим — система линейно зависима).

Рассмотрим общий случай. Пусть коэффициенты {u0, u1} необходимо определить по результатам n + 1 измерения. Введем функцию, равную сумме квадратов невязок rk = u1xk + u0 - fk

\Phi (u_1,u_0) = \sum\limits_{k = 0}^n {r_k^2} = 
\sum\limits_{k = 0}^n {(u_1 x_k + u_0 - f_k)^2} . ( 3.1)

Примем за обобщенное решение переопределенной СЛАУ такие {u0, u1} для которых \Phi (u_{0}, u_{1}) принимает наименьшие значение. Для определения обобщенного решения из условия минимума суммы квадратов невязки получаем систему двух уравнений, имеющую классическое решение:

$ \frac{\partial \Phi }{\partial u_0} = 0, \frac{\partial \Phi }{\partial u_1} = 0. $

Выбор функции \Phi (u_{0}, u_{1}) имеет некоторый произвол. Например, возможно каждому измерению придать некоторый вес bk. От набора таких весовых множителей зависело бы решение системы. В этом случае функция \Phi будет

\Phi (u_0,u_1) = \sum\limits_{k = 0}^n {b_k{(u_1 x_k - u_0 - f_k)}^2}.

Если в качестве невязки выбрать rk = | u1xk + u0 - fk |, то получим задачу линейного программирования на отыскании минимума функции

\Phi (u_1 u_2) = \sum\limits_{k = 0}^3 \left|{u_1 x_k + u_0 - f_k}\right|.

Получившийся таким образом функционал, вообще говоря, не дифференцируем. Для решения задачи нельзя использовать метод наименьших квадратов.

Произвол имеется и в выборе базисных функций. Вообще говоря, можно было бы записать невязку rk в виде

r_k = \sum\limits_{j = 0}^p {u_j\varphi_j (x_k)} - f(x_k), k = 1, \ldots, n,

где \varphi_j (x) — некоторые функции, образующие базис, например, тригонометрические: \varphi_j (x) = \sin (jx). Выражение \sum\limits_{j = 0}^p {u_j \varphi_j (x)} называется обобщенным полиномом. В приведенном выше примере в качестве базисных функций были выбраны степенные функции \varphi_j (x) = x^j . Обобщенный полином превратился в алгебраический.

В случае выбора произвольной системы базисных функций переопределенная СЛАУ и функционал \Phi (u_{0}, \dots , u_{p}) будут

\begin{gather*}
u_0 \varphi_0 (x_0) + \ldots + u_p \varphi_p(x_0) = f_0, \\ 
\ldots \\ 
u_0 \varphi_0 (x_n) + \ldots + u_p\varphi_p (x_n) = f_n,\\ 
\Phi (u_0,\ldots,u_n) = \sum\limits_{i = 0}^n (\sum\limits_{j = 0}^p u_j \varphi_j(x_i) - f_i)^2
\end{gather*}

Отыщем обобщенное решение методом наименьших квадратов. Приравнивая все частные производные по компонентам обобщенного решения к нулю

$ \frac{\partial \Phi }{\partial u_k} = 0 $
(условия минимума) и изменяя порядок суммирования, получаем СЛАУ

\sum\limits_{j = 0}^p {\left({\sum\limits_{i = 0}^n{\varphi_j (x_i)\varphi_k (x_i)}}\right)u_j = \sum\limits_{i = 0}^n {f_i\varphi_k (x_i)}}, k = 0, \ldots, p,
< Лекция 3 || Лекция 4: 123456 || Лекция 5 >