Ausgleichsgerade durch Punktmenge

08/01/2008 - 15:03 von Christian Schmitz | Report spam
Neues Problem: Ich suche eine Ausgleichsgerade durch eine Punktmenge, bin
aber mit der "normalen Regressiongeraden" unzufrieden, da einzelne Punkte
das Ergebniss stark verfàlschen können. Zudem kann der Fehler in x und in y
passieren.
Daher Ansatz
Punkte x[i],y[i], i=0..n
gesucht y=a+b*x
Zur Vereinfachung:
Die Punkte werden so verschoben, daß xm=sum(x[i])/n=0 und ym=sum(y[i])/n=0
Ich behaupte dann mal einfach y=b*x (ohne a)
Ich möchte erreichen, daß:
(1) sum(d^2)=sum((x-x[i])^2+(y-y[i])^2) (Abstand Punkte-Gerade) minimal wird
für den einzelnen Punkt gilt:
(2) d^2=sum((x-x[i])^2+(y-y[i])^2) mit y=b*x sollte die Gleichung ein
(vernünftiges) Minimum bei
(3) x=(x[i]+b*y[i])/(b^2+1) haben, wenn Mupad mich nicht veralbert.
Dieses eingesetzt in (1) und y=b*x in (1)
(4)
sum(((x[i]+b*y[i])/(b^2+1)-x[i])^2+(b*((x[i]+b*y[i])/(b^2+1))-y[i])^2) ->
Minimal, gesucht b
(5) b=(-sxx+syy+sqrt(sxx^2-2*sxx*syy+4*sxy^2+syy^2))/(2*sxy) mit
sxx=sum(x[i]^),syy=sum(y[i]^2),sxy=sum(x[i]*y[i])
Insofern man wieder eine Verschiebung (xm!=0 und ym !=0) einführt, hat man
a=ym-b*xm

Dummerweise habe ich damit wieder das gleiche Problem wie bei der normalen
Regressionsgerade:
Es ist nicht die beste Anpassung:
Folgender Datensatz:
4.00;29.47
6.89;25.00
7.25;25.00
7.60;25.00
7.94;25.00
8.27;25.00
8.59;25.00
8.91;25.00
9.22;25.00
9.52;25.00
9.82;25.00
10.12;25.00
10.41;25.00
10.71;25.00
11.00;25.00
11.29;25.00
11.59;25.00
11.88;25.00
12.18;25.00
12.48;25.00
12.78;25.00
13.09;25.00
13.41;25.00
13.73;25.00
14.06;25.00
14.40;25.00
14.75;25.00
15.11;25.00
15.49;25.00
15.88;25.00
a&.656501015289336
b=-0.13605942560692713
Fehler sum(d^2)=sum((y[i]-y)^2+(x[i]-x)^2) für alle x=x[i]
184
Dahingegen: Gerade duch 25.0 mit b=0, Fehler750

Und nun zum Schluß die Frage:
Was mache ich falsch?
 

Lesen sie die antworten

#1 Christian Schmitz
08/01/2008 - 15:40 | Warnen spam
"Christian Schmitz" schrieb im Newsbeitrag
news:fm001q$ulj$00$
Neues Problem: Ich suche eine Ausgleichsgerade durch eine Punktmenge, bin
aber mit der "normalen Regressiongeraden" unzufrieden, da einzelne Punkte
das Ergebniss stark verfàlschen können. Zudem kann der Fehler in x und in


y
passieren.
Daher Ansatz
Punkte x[i],y[i], i=0..n
gesucht y=a+b*x
Zur Vereinfachung:
Die Punkte werden so verschoben, daß xm=sum(x[i])/n=0 und ym=sum(y[i])/n=0
Ich behaupte dann mal einfach y=b*x (ohne a)
Ich möchte erreichen, daß:
(1) sum(d^2)=sum((x-x[i])^2+(y-y[i])^2) (Abstand Punkte-Gerade) minimal


wird
für den einzelnen Punkt gilt:
(2) d^2=sum((x-x[i])^2+(y-y[i])^2) mit y=b*x sollte die Gleichung ein
(vernünftiges) Minimum bei
(3) x=(x[i]+b*y[i])/(b^2+1) haben, wenn Mupad mich nicht veralbert.
Dieses eingesetzt in (1) und y=b*x in (1)
(4)
sum(((x[i]+b*y[i])/(b^2+1)-x[i])^2+(b*((x[i]+b*y[i])/(b^2+1))-y[i])^2) ->
Minimal, gesucht b
(5) b=(-sxx+syy+sqrt(sxx^2-2*sxx*syy+4*sxy^2+syy^2))/(2*sxy) mit
sxx=sum(x[i]^),syy=sum(y[i]^2),sxy=sum(x[i]*y[i])
Insofern man wieder eine Verschiebung (xm!=0 und ym !=0) einführt, hat man
a=ym-b*xm

Dummerweise habe ich damit wieder das gleiche Problem wie bei der normalen
Regressionsgerade:
Es ist nicht die beste Anpassung:
Folgender Datensatz:
4.00;29.47
6.89;25.00
7.25;25.00
7.60;25.00
7.94;25.00
8.27;25.00
8.59;25.00
8.91;25.00
9.22;25.00
9.52;25.00
9.82;25.00
10.12;25.00
10.41;25.00
10.71;25.00
11.00;25.00
11.29;25.00
11.59;25.00
11.88;25.00
12.18;25.00
12.48;25.00
12.78;25.00
13.09;25.00
13.41;25.00
13.73;25.00
14.06;25.00
14.40;25.00
14.75;25.00
15.11;25.00
15.49;25.00
15.88;25.00
a&.656501015289336
b=-0.13605942560692713
Fehler sum(d^2)=sum((y[i]-y)^2+(x[i]-x)^2) für alle x=x[i]
184
Dahingegen: Gerade duch 25.0 mit b=0, Fehler750

Und nun zum Schluß die Frage:
Was mache ich falsch?







Einen Fehler habe ich schon mal: Gerade duch 25.0 mit b=0 geht nicht durch
ym (Ansatz), aber auch mit Gerade durch a%.15 und b=0 komme ich auf 18974.

Ähnliche fragen