Головна Головна -> Реферати українською -> Математика -> Побудова кривих регресій методом парабол

Побудова кривих регресій методом парабол

Назва:
Побудова кривих регресій методом парабол
Тип:
Реферат
Мова:
Українська
Розмiр:
24,56 KB
Завантажень:
32
Оцінка:
 
поточна оцінка 5.0


Скачати цю роботу безкоштовно
Пролистати роботу: 1  2 
Теоритичні відомості

Лінійна залежність є найпростішою і в більшості випадків є початковим, першим наближенням до істини. Часто потрібно встановити більш адекватну залежність між компонентами наприклад двомірного випадкового вектора, яка як правило не лінійна.

Так як у вибіркових данних присутні випадковості, то початковий вигляд нелінійної залежності можна приблизно уявити побудувавши на міліметровому папері сукупність точок

Ми будемо шукати залежність у вигляді y = a0 + a1x + … + akxk , де а0, …, аk – початкові моменти.

Ця передумова обумовлюється теоремою Вейерштраса про наближення будь-якої функції многочленом відповідного степеня (многочленом Берштейна).

Складність полягає в тому, що як правило в статистиці многочлени степеня k > 4 не використовуються, а початкові моменти вище четвертого дають великі похибки, а експериментальних данних багато, отже не можна провести многочлен який би проходив через всі вибіркові точки. Тому параболу будемо будувати таку, щоб сума квадратів відхилень вибіркових значень була найменшою.

Розглянувши пари (xi,yi) скористаємося формулами:

Розв'язавши дану систему, отримаємо рівняння шуканої параболи.

Найбільшу величину похибки при апроксимації початкових данних шукатимемо за наступною формулою:

Приклад дії програми

Початкові данні:

x o 1 2 3 4

y 1 1.5 1.7 2.1 5.9

При виборі степеня k=1 результат отримано наступний:

а0 = 0.36

а1 = 1.04

d = 4.776

Графік:

При k=2:

a0 = 1.3314; a1 = -0.9029; a2 = 0.4857; d= 1.4731

При k=3:

a0 = 0.9614; a1 = 1.7488; a2 =-1.3643; a3 =-0.3083; d= 0.1041

При k=4:

a0 = 1.2250; a1 = -0.1381; a2 =-0.0495; a3 =0.090; a4 =-0.0002; d= 0.7906

Текст програми (Borland Pascal 7.0):

uses crt, graph;

var xn,yn:array[1..30] of real; n:integer; chr:char; a: array [1..5] of real;

function stepin (x:real; i:integer):real;

var j:integer; temp:real;

begin

temp:=1;

for j:=1 to i do

begin

temp:=temp*x;

inc (i);

end;

stepin:=temp;

end;

procedure xyread;

var fl:text; i:integer;

begin

TextBackground(3);

TextColor(0);

clrscr;

assign (fl,'3.txt');

reset (fl);

writeln ('Програма знаходження кривих регресiй методом парабол');

writeln ('Шевчук А., Ковальський Д. ПМП-32, 1998');

{ writeln ('Esc for Exit');}

writeln;

writeln;

writeln (' x', ' y');

writeln ;

i:=1;

while not EOF (fl) do

begin

read (fl,xn[i]);

read (fl,yn[i]);

writeln ('x[',i,']=',xn[i]:0:2,' ',' y','[',i,']=',yn[i]:0:2);

inc (i); n:=i-1;

end;

writeln;

writeln ('Тиснiть ENTER для продовження');

close (fl);

repeat

chr:=readkey;

if ord(chr)=13 then break;

until false;

end;

procedure obchysl;

var k :integer; i,j,h:integer;

sx: array [1..6] of real;

sy: array [1..2] of real;

sxy: array [1..3] of real;

matr: array [1..5, 1..5] of real;

b: array [1..5] of real;

s: real;

d:real;

m,v:word;

gd,gm,ch,cv:integer;

x,y:real;

chr:char;

ex:boolean;

{процедура ўнўцўалўзацў• системи кординат}

procedure initgrah(m:word);

var i:integer;

begin

setbkcolor(white);

setcolor(magenta);

ch:=getmaxx div 2 ;

cv:=getmaxy div 2 ;

line(1,cv,getmaxx,cv);

line(getmaxx,cv,getmaxx-6,cv-3);

line(getmaxx,cv,getmaxx-6,cv+3);

line(ch,1,ch,getmaxy);

line(ch,1,ch-3,6);

line(ch,1,ch+3,6);

i:=0;

while ch+i*m

Завантажити цю роботу безкоштовно
Пролистати роботу: 1  2 



Реферат на тему: Побудова кривих регресій методом парабол

BR.com.ua © 1999-2017 | Реклама на сайті | Умови використання | Зворотній зв'язок