МУ к лабораторным работам (1238837), страница 13
Текст из файла (страница 13)
Именно, произвольной симметричной и положительно определенной матрице B B* 0, т. е. (Bf , f ) 0, длялюбого вектора f 0, соответствует скалярное умножение(f , g) B (Bf , g);f, g Rn.(6.5)Известно, что любое скалярное произведение в пространстве R n можно записать формулой (6.5), подобрав соответствующий самосопряженный оператор B B* 0.Система (6.1), как правило, не имеет классического решения, т. е. не существует такого набора чисел b1, , bs , которыйобращает каждое из n уравнений (6.1) в тождество.Определение.
Фиксируем B B* 0, В: R n R n . Введем функцию от b R s , положив(b) ( Ab f , Ab f )B .(6.6)Примем за обобщенное решение системы (6.1) вектор b R s ,придающий наименьшее значение квадратичной форме (6.6).За м еча ние. Выбор B B* 0 зависит от исследователя. Матрица В имеет смысл «весовой» матрицы и выбирается из техили иных соображений о том, какую цену придать невязке системы (6.1) при заданном (b1, b2 , , bs ).Т еор ем а 1.
Пусть столбцы матрицы А линейно независимы, т. е. ранг матрицы А равен s. Тогда существует одно итолько одно обобщенное решение b системы (6.1). Обобщенноерешение системы (6.1) является классическим решением системы уравнений89A*BA b A*B f ,(6.7)которая содержит s скалярных уравнений относительно s неизвестных b1 , b2 , , bs .В дальнейшем будем иногда использовать обозначениеC A *BA.6.3. Геометрический смыслметода наименьших квадратовПереопределенную систему Ab f , где A || aij ||, 1 i n,1 j s, n s, можно записать в виде:b1V1 b2 V2 bs Vs f ,гдеVi R n—i-йстолбецматрицыA,f ( f1 , f 2 , , f n ) т R n , а вектор b (b1 , b2 , , bs ) т R s .Требуется найти коэффициенты b1, b2 , , bs линейнойкомбинации b1V1 b2 V2 bs Vs так, чтобы эта линейнаякомбинация наименее отличалась от f:f bk V k min .BОбозначим через R s ( V ) R n подпространство размерности sпространства R n , состоящее из всевозможных линейных комбинаций векторов V1, …, Vs .Пусть b1, b2 , , bs — обобщенное решение переопределенной системы.
Тогда линейная комбинация bk Vk— ор-тогональная в смысле скалярного умножения (, )B проекциявектора f R n на подпространство R s ( V ), так как любой вектор из R s ( V ) имеет вид:Aδ 1V1 1Vs R s ( V ),Наименее уклоняется от f элементδ Rs. bkVkподпростран-ства R s ( V ), имеющий вид Ab B , где b B — решение системы(6.7) методом наименьших квадратов (МНК).90В силу ( Ab B f , Aδ) B (B ( Ab B f ), Aδ) ( n) 0 элементf Ab B ортогонален любому элементу Aδ R s ( V ).Если в пространстве R s вместо базиса V1, …, Vs выбрать какой-либо другой базис V1, …, Vs , то система (6.7)заменится системойC b f (6.8)с матрицей C || cij ||, где c ij ( Vi , V j ) B , i , j 1, 2, , s, иправой частью i-я компонента которой f i (f , Vi ) B .Вместо решения b B системы (6.7) получим новое решениеbB системы (6.8), но проекция f на R s останется прежней.Если нас интересует проекция заданного вектора f на заданное подпространство R s R n , то естественно стремиться к выбору базиса V1, V2 , …, Vs этого подпространства, по возможности мало отличающегося от ортонормированного.
Искомая проекция от выбора базиса в R s не зависит, а система МНК (6.7) вслучае такого базиса будет иметь хорошо обусловленную матрицу.6.4. Оценка обусловленности матрицы системы МНКОбусловленность линейной системы (6.7) определяется числом || C || || C1 ||, которое определяет относительную погрешность решения системы в зависимости от погрешности правой части f:|| x |||| x |||| f |||| f ||,s|| C ||2 max | cij |,j i 1|| C 1 ||2 || z ||2|| y ||2s,|| z ||2 | zi |,i 1где векторы y и z определяются из решения следующих двухсистем уравнений:91C т y e,Cz y ,где C т — транспонированная матрица, е — вектор с компонентами 1, выбираемые так, чтобы обеспечить максимальныйрост || y ||2 на этапе обратной подстановки.6.5. Метод ГауссаРеализованный в программе прямой метод решения системыМНК (6.7) является вариантом метода Гаусса последовательного исключения неизвестных с частичным выбором ведущегоэлемента (по столбцу). Исключение по методу Гаусса состоит издвух этапов: прямого хода и обратной подстановки.
В прямомходе на k-м шаге k-е уравнение вычитается из оставшихся с целью исключения k-ого неизвестного. Обратная подстановка состоит в решении последнего уравнения относительно xn , предпоследнего — относительно xn 1 и т. д. до x1.6.6. Метод сопряженных градиентовЭто прямой метод, но может применяться и как итерационный.Подробнее см. работу [4] и библиографию к ней. Используется,если матрица линейной системы самосопряженная и положительно определенная. Матрица системы МНК как раз такая (см.п.
6.2). Метод неустойчив, если обусловленность системы достаточно велика. Обозначим матрицу системы МНК через C.s1 r1 Cb 0 f ,r n r n1 anCsn,b n b n 1 an s n ,s n 1 rn g ns n ,an (rn 1 , rn 1 )(Cs n , s n ),gn ( rn , rn )(rn 1 , rn 1 ).Существенным преимуществом метода является отсутствие необходимости знания границ спектра. В точной арифметике метод сходится не более чем за n итераций, где n — размерность матрицы.926.7. Полиномы ЛежандраМногочленыP0 ( x) 1,Pi 1 P1 ( x) x,1i 1P2 ( x) 3x 2 12((2i 1) x Pi ( x) iPi 1 ( x )),,P3 ( x ) 5x 3 3xi = 3, 4, …2, …,(6.10)называют многочленами Лежандра.
Они ортогональны на отрезке 1 x 1, т. е.1Pk ( x) Pl ( x) dx 0,k l;111Pk2 ( x) dx 22k 1.В программе используются многочлены, ортогональные наотрезке [a, b], a min xi , b max xi , получающиеся из (6.10.)iiсоответствующей заменой переменных; xi , i = 1, …, N — абсциссы точек исходных данных.6.8. Порядок выполнения работы1.
В окне «Данные и их аппроксимация» маркерами отмеченыточки с координатами ( x k , y k ), k = 1, 2, …, 5, записанные вфайле данных. По умолчанию это файл DATA\LSQ1.DAT.В этом файле записаны результаты замеров какой-либо зависимости y (x). Расположение точек позволяет приближенносчитать, что зависимость y (x ) является линейной, т. е. имеетвид y ( x) b0 b1x. Числа b0 , b1 желательно подобрать так,чтобы при x xk получались значения y k .
Так как измеренийбольше, чем неизвестных b0 , b1, то соответствующая системалинейных уравнений будет переопределенной и в общем случаене имеет классического решения, поскольку не существует прямой, проходящей сразу через все экспериментальные точки.93Для аппроксимации данной зависимости в меню «Параметры/Выбор системы функций» выберите строку «Полиномы1, x, x 2 , …» и в строке «количество базисных функций» установите число 2.Если считать все измерения равноправными, то весовуюматрицу В следует выбрать единичной.
Для этого в меню «Параметры/Выбор Евклидовой нормы» выберите строку «Матрица В Единичная».Если Вы сочтете разумным придать каждому измерениюсвой вес, то в меню «Параметры/Выбор Евклидовой нормы»выберите строку Матрица B произвольная и строку «редактирование матрицы».
Задайте диагональным элементам В неравные значения. Запустите задачу на счет и сравните результатырасчетов. Коэффициенты b0 , b1 можно посмотреть, активизировав меню «Окна/Полная информация».Если заранее известен вид зависимости y y (x ), то тот женабор данных можно интерпретировать как результат нескольких измерений для уточнения коэффициентов b0 , b1.2. Выберите базис из полиномов Лежандра («Параметры/Выборсистемы функций/Полиномы Лежандра») для представлениятого же набора экспериментальных данных ( x k , y k ), т. е. будем искать зависимость y(x) в виде y ( x) b0 P0 ( x) b1P1( x).Установите, зависит ли аппроксимирующий полином от выбора базиса (см.
п. 6.2).3. Введите набор данных из файла LSQ2.DAT («Параметры/Данные/Ввод данных из файла»). Он отвечает более сложной,чем в предыдущем задании, зависимости y (x ) и для хорошейаппроксимации нужно выбрать полином более высокой степени.Установите число базисных функций 10 и базис-полином 1, x,x 2 , … в меню «Параметры/Выбор системы функций».Для решения системы МНК в меню «Метод» выберите «Метод сопряженных градиентов» и установите число итераций 8.Следующий расчет выполните для базиса из полиномовЛежандра. Сравните полученные результаты. Обратите внимание на оценку числа обусловленности в обоих случаях.
Опишите, как изменяются результаты, если уменьшить точность про94межуточных вычислений. Для этого в меню «Параметры» встроке «Длина мантиссы» введите вместо установленной поумолчанию (53) цифру 24, а затем 12.4. Данные в LSQ3.DAT соответствуют замерам зашумленногосигналаy ( x) c1 sin 2x c2 sin 4x.Найти c1 , c 2 .У ка з а ние. Используйте базис из тригонометрических полиномов («Параметры/Выбор системы функций/Полиномы тригонометрические»).5. Введите таблицу функции из файла LSQ4.DAT. Приблизьтеэту функцию тригонометрическими многочленами степени m иm + r, r > 0, m + r < N, где N — число точек в таблице. Сравнитепервые m коэффициентов. Объясните полученный результат.6. Используя мышь, введите произвольный набор данных с экрана терминала («Параметры/Данные/Ввод данных с экрана»).Аппроксимируйте их полиномами различной степени.
Проанализируйте влияние выбора базиса, выбора матрицы В, задающейскалярное произведение, способы решения системы МНК («Метод Гаусса, Метод сопряженных градиентов»).6.9. Некоторые рекомендации по работе с программойГлавное меню/Окна/График функции. При нажатии клавишиEnter открывается или закрывается окно с графиком функции(«Данные и их аппроксимация»), на котором отображаются данные и построенные графики.Главное меню/Окна/График невязки. При нажатии клавишиEnter открывается или закрывается окно с графиком невязки, накотором отображаются в виде вертикальных прямых разностьмежду значением аппроксимирующего полинома и ординатойточки данных.