Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Корректность МНК

Доказано, что решение системы (3.12) существует и единственно, если столбцы матрицы Ф линейно независимы (строки могут быть любыми, даже могут повторяться – т.е. эксперименты могут проводиться при одинаковых значениях xi). Если столбцы линейно зависимы, то det (ФT Ф) = 0 и решения нет.

Если столбцы «почти» линейно зависимы, то система (3.12) плохо обусловлена со всеми вытекающими последствиями.

Пример 3.6. Пусть xi) = 101, 102, …, 106; f 1(x) = x; f 2(x) º 1. Тогда

ФT Ф = .

Поделим первый столбец на 103.5, получим матрицу

,

т.е. матрица почти вырождена. Это произошло потому, что xi относительно близки между собой. Чтобы этого не произошло, часто бывает полезно «отцентрировать» xi, т.е. сделать замену переменных , где

.

В данном случае = 103.5. Новые данные: xi = –2.5, –1.5, …, 2.5. Тогда

ФT Ф = ,

Система стала хорошо обусловленной.

Кроме того, при вычислении элементов матрицы Ф и при остальных действиях все операции надо выполнять с высокой точностью, т.к. плохо обусловленные системы очень чувствительны к погрешностям округления.

 

Приложение 1.

 

const nn=15; { МЕТОД ГАУССА. ПРОСТОЙ ВАРИАНТ }

type masA=array[1..nn,1..nn] of real;

masX=array[1..nn] of real;

var mtr:masA; x:masx;

i,j,n:integer;

s:real;

error:boolean;

procedure Gauss(var aa:masA; var b:masX;

n:integer; var error:boolean);

var i,j,k,m: integer;

a0,a1: real;

begin error:=false;

{ ПРЯМОЙ ХОД }

for k:=1 to n-1 do

begin { ПОИСК ВЕДУЩЕЙ СТРОКИ}

error:=true;

for i:=k to n do

if aa[i,k] <> 0 then {***}

begin error:=false; m:=i; break

end;

if error then exit;

if m<>k then

begin for j:=1 to n do { ОБМЕН }

begin s:=aa[m,j];

aa[m,j]:=aa[k,j]; aa[k,j]:=s;

end;

s:=b[m]; b[m]:=b[k]; b[k]:=s;

end;

{ ПРЕОБРАЗОВАНИЕ СТРОК }

a0:=aa[k,k];

for j:=k to n do aa[k,j]:=aa[k,j]/a0;

b[k]:=b[k]/a0;

for i:=k+1 to n do

if aa[i,k] <> 0 then

begin a1:=aa[i,k];

for j:=k to n do

aa[i,j]:=aa[i,j]/a1 - aa[k,j];

b[i]:=b[i]/a1 - b[k];

end;

end;

{ ОБРАТНЫЙ ХОД }

if aa[n,n]=0 then

begin error:=true; exit; end;

b[n]:=b[n]/aa[n,n];

for i:=n-1 downto 1 do

begin s:=b[i];

for j:=i+1 to n do s:=s-aa[i,j]*b[j];

b[i]:=s;

end;

end;

{ ГОЛОВНАЯ ПРОГРАММА }

begin readln(n);

for i:=1 to n do

begin for j:=1 to n do read(mtr[i,j]);

readln(x[i]);

end;

Gauss(mtr,x,n, error);

writeln;

if error then writeln(' СИСТЕМА ВЫРОЖДЕНА ')

<== предыдущая лекция | следующая лекция ==>
 | Конспект лекций. Теория экономических информационных систем
Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 270; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.021 сек.