matheraum.de
Raum für Mathematik
Offene Informations- und Nachhilfegemeinschaft

Für Schüler, Studenten, Lehrer, Mathematik-Interessierte.
Hallo Gast!einloggen | registrieren ]
Startseite · Forum · Wissen · Kurse · Mitglieder · Team · Impressum
Forenbaum
^ Forenbaum
Status Hochschulmathe
  Status Uni-Analysis
    Status Reelle Analysis
    Status UKomplx
    Status Uni-Kompl. Analysis
    Status Differentialgl.
    Status Maß/Integrat-Theorie
    Status Funktionalanalysis
    Status Transformationen
    Status UAnaSon
  Status Uni-Lin. Algebra
    Status Abbildungen
    Status ULinAGS
    Status Matrizen
    Status Determinanten
    Status Eigenwerte
    Status Skalarprodukte
    Status Moduln/Vektorraum
    Status Sonstiges
  Status Algebra+Zahlentheo.
    Status Algebra
    Status Zahlentheorie
  Status Diskrete Mathematik
    Status Diskrete Optimierung
    Status Graphentheorie
    Status Operations Research
    Status Relationen
  Status Fachdidaktik
  Status Finanz+Versicherung
    Status Uni-Finanzmathematik
    Status Uni-Versicherungsmat
  Status Logik+Mengenlehre
    Status Logik
    Status Mengenlehre
  Status Numerik
    Status Lin. Gleich.-systeme
    Status Nichtlineare Gleich.
    Status Interpol.+Approx.
    Status Integr.+Differenz.
    Status Eigenwertprobleme
    Status DGL
  Status Uni-Stochastik
    Status Kombinatorik
    Status math. Statistik
    Status Statistik (Anwend.)
    Status stoch. Analysis
    Status stoch. Prozesse
    Status Wahrscheinlichkeitstheorie
  Status Topologie+Geometrie
  Status Uni-Sonstiges

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
StartseiteMatheForenInterpolation und ApproximationCurve Approximation
Foren für weitere Schulfächer findest Du auf www.vorhilfe.de z.B. Informatik • Physik • Technik • Biologie • Chemie
Forum "Interpolation und Approximation" - Curve Approximation
Curve Approximation < Interpol.+Approx. < Numerik < Hochschule < Mathe < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Interpolation und Approximation"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Curve Approximation: kleinste Quadrate Methode
Status: (Frage) beantwortet Status 
Datum: 09:09 Fr 17.04.2009
Autor: Bluemchen09

Aufgabe
Gegeben sind n+1 Messpunkte [mm] Q_{k} (Q_{0},...,Q_{n}). [/mm] Gesucht ist die B-Spline-Kurve p-ter Ordnung mit h+1 Kontrollpunkte [mm] P_{i} (P_{0},...,P_{h}), [/mm] die die Punktmenge am besten approximiert. Es gilt: n>h und h>=p>=1. Bedingung:
-Kurve enthält den ersten und letzten Messpunkt d.h. [mm] Q_{0}=C(0) [/mm] und [mm] Q_{n}=C(1). [/mm]
-Kurve wird im Sinne der kleinsten Quadrate angenähert

Hallo Forum,

bei der Aufgabe bzw. dem Lösungsweg habe ich folgendes Verständnis-Problem. Vorweg erst einmal die Definition der Kurve:
[mm] C(t)=\summe_{i=0}^{h}N_{i,p}(t)*P_{i} [/mm]

1. letzter und erster Kurvenpunkt werden interpoliert (siehe Aufgabenstellung)
2. Die anderen Punkte werden wie folgt berechnet:
[mm] f(P_{1},...,P_{h-1})=\summe_{k=1}^{n-1}|Q_{k}-C(t_{k})|^2 [/mm]

dann setzt man:
[mm] R_{k}= Q_{k}-N_{0,p}(t_{k})*Q_{0}-N_{h,p}(t_{k})*Q_{n} [/mm]

dann folgt nach einsetzen:

[mm] f(P_{1},...,P_{h-1})=\summe_{k=1}^{n-1}[R_{k}*R_{k}-2*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i}*Q_{k})+(summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})*(summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})] [/mm]

Um die Funktion jetzt zu minimieren, muss ich ja die partiellen Aleitungen nach den Unbekannten bilden, d.h. nach [mm] P_{i}. [/mm]
Und da liegt jetzt mein Problem!
Hier steht nämlich irgendetwas davon, dass die Funktion f() eigentlich ein elliptisches Paraboloid in den Variablen [mm] P_{1},...,P_{h-1}ist. [/mm] Und das man deshalb f() für jedes [mm] P_{g} [/mm] unterscheiden kann und die gemeinsamen Nullstellen finden kann.
Ich verstehe diese Aussage nicht, ich hätte jetzt die partiellen Ableitung nach [mm] P_{k} [/mm] gebildet. Aber das geht ja anscheind nicht. Warum?

Vielleicht findet sich ja jemand, der mir da helfen kann. Wäre ganz nett.
Gruß

        
Bezug
Curve Approximation: Antwort
Status: (Antwort) fertig Status 
Datum: 11:18 Sa 18.04.2009
Autor: rainerS

Hallo!

> Gegeben sind n+1 Messpunkte [mm]Q_{k} (Q_{0},...,Q_{n}).[/mm]
> Gesucht ist die B-Spline-Kurve p-ter Ordnung mit h+1
> Kontrollpunkte [mm]P_{i} (P_{0},...,P_{h}),[/mm] die die Punktmenge
> am besten approximiert. Es gilt: n>h und h>=p>=1.
> Bedingung:
>  -Kurve enthält den ersten und letzten Messpunkt d.h.
> [mm]Q_{0}=C(0)[/mm] und [mm]Q_{n}=C(1).[/mm]
>  -Kurve wird im Sinne der kleinsten Quadrate angenähert
>  Hallo Forum,
>  
> bei der Aufgabe bzw. dem Lösungsweg habe ich folgendes
> Verständnis-Problem. Vorweg erst einmal die Definition der
> Kurve:
>  [mm]C(t)=\summe_{i=0}^{h}N_{i,p}(t)*P_{i}[/mm]
>  
> 1. letzter und erster Kurvenpunkt werden interpoliert
> (siehe Aufgabenstellung)
>  2. Die anderen Punkte werden wie folgt berechnet:
>  [mm]f(P_{1},...,P_{h-1})=\summe_{k=1}^{n-1}|Q_{k}-C(t_{k})|^2[/mm]
>  
> dann setzt man:
>  [mm]R_{k}= Q_{k}-N_{0,p}(t_{k})*Q_{0}-N_{h,p}(t_{k})*Q_{n}[/mm]
>  
> dann folgt nach einsetzen:
>  
> [mm]f(P_{1},...,P_{h-1})=\summe_{k=1}^{n-1}[R_{k}*R_{k}-2*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i}*Q_{k})+(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})][/mm]
>  
> Um die Funktion jetzt zu minimieren, muss ich ja die
> partiellen Aleitungen nach den Unbekannten bilden, d.h.
> nach [mm]P_{i}.[/mm]
>  Und da liegt jetzt mein Problem!
>  Hier steht nämlich irgendetwas davon, dass die Funktion
> f() eigentlich ein elliptisches Paraboloid in den Variablen
> [mm]P_{1},...,P_{h-1}ist.[/mm] Und das man deshalb f() für jedes
> [mm]P_{g}[/mm] unterscheiden kann und die gemeinsamen Nullstellen
> finden kann.
>  Ich verstehe diese Aussage nicht, ich hätte jetzt die
> partiellen Ableitung nach [mm]P_{k}[/mm] gebildet. Aber das geht ja
> anscheind nicht. Warum?

Doch, das geht schon, aber es ist - wegen der recht einfachen Abhängigkeit der Funktion f von ihren Argumenten - nicht nötig.

Wenn du die Summen ein bischen umordnest:

[mm] f(P_{1},...,P_{h-1})= \summe_{k=1}^{n-1}R_{k}*R_{k} [/mm]

           [mm] -2\summe_{i=1}^{h-1} \left(\summe_{k=1}^{n-1}N_{i,p}(t_{k})*Q_{k}\right)*P_{i}[/mm]

           [mm] +\summe_{i=1}^{h-1}\summe_{j=1}^{h-1}P_{i} \left(\summe_{k=1}^{n-1}N_{i,p}(t_{k})*N_{j,p}(t_{k})\right)*P_{j}[/mm],

dann siehst du, dass du die Funktion auch mit Hilfe des Vektors [mm] $\mathbf{P} [/mm] = [mm] \vektor{P_{1}\\\vdots\\P_{h-1}}$ [/mm] schreiben kannst:

  [mm] f(\mathbf{P}) = c - 2 *\mathbf{B}^T*\mathbf{P} + \mathbf{P}^T*\mathbf{A}*\mathbf{P} \qquad[/mm],

und deren Minimum ist dann einfach die Lösung von

  [mm] \mathbf{A}*\mathbf{P} = \mathbf{B} [/mm]

(Nebenbei: die [mm] $Q_k$ [/mm] kommen nur in [mm] $\mathbf{B}$ [/mm] vor, und zwar linear.)

Viele Grüße
   Rainer


Bezug
                
Bezug
Curve Approximation: Fehler entdeckt
Status: (Frage) beantwortet Status 
Datum: 09:32 So 19.04.2009
Autor: Bluemchen09

Hallo Rainer,

ich habe gerade entdeckt, dass ich einen Fehler gemacht habe. Das eine [mm] Q_{k} [/mm] muss natürlich auch noch durch [mm] R_{k} [/mm] ersetzt werden.
Also kann ich nach [mm] P_{k} [/mm] ableiten und muss nicht [mm] P_{g} [/mm] einführen? Hab schon überlegt, ob das einfach heißt, dass ich sozusagen den g-ten Punkt P von gesamten Punkten [mm] P_{i} [/mm] ableite. Aber das sagt ja auch k.
Wie du merkst habe ich das noch nicht ganz so verstanden.
Also, A wäre die Modellmatrix, P der Vektor der Unbekannten und B=?
Ich hab das nämlich eine etwas andere Lösung gefunden:
[mm] (A^T*A)*P=B [/mm] (wobei mir dennoch nicht klar ist, was B ist).

Vielleicht kannst du mir dabei noch etwas helfen?

Gruß und schönen Sonntag noch.

Bezug
                        
Bezug
Curve Approximation: Antwort
Status: (Antwort) fertig Status 
Datum: 14:31 Mo 20.04.2009
Autor: rainerS

Hallo!

> Hallo Rainer,
>  
> ich habe gerade entdeckt, dass ich einen Fehler gemacht
> habe. Das eine [mm]Q_{k}[/mm] muss natürlich auch noch durch [mm]R_{k}[/mm]
> ersetzt werden.
> Also kann ich nach [mm]P_{k}[/mm] ableiten und muss nicht [mm]P_{g}[/mm]
> einführen? Hab schon überlegt, ob das einfach heißt, dass
> ich sozusagen den g-ten Punkt P von gesamten Punkten [mm]P_{i}[/mm]
> ableite. Aber das sagt ja auch k.

Berim Ableiten muss du die Indizes schon sauber unterscheiden. Du hast doch für die Funktion f die Form

[mm] f(P_1,\dots,P_{h-1}) = c -2\summe_{i=1}^{h-1} b_i \cdot P_{i} + \summe_{i=1}^{h-1}\summe_{j=1}^{h-1}P_{i} \cdot a_{ij}\cdot{}P_{j} [/mm].

Dabei ist [mm] $a_{ij} [/mm] = [mm] \summe_{k=1}^{n-1}N_{i,p}(t_{k})\cdot{}N_{j,p}(t_{k})$ [/mm] und [mm] $b_i [/mm] = [mm] \summe_{k=1}^{n-1}N_{i,p}(t_{k})\cdot{}R_k$. [/mm]

Wenn du das nach [mm] $P_g$ [/mm] ableitest, bleibt von der zweiten Summe nur der Term übrig, bei dem i = g ist. Bei der Doppelsumme musst du die Fälle i=j und [mm] $i\not=j$ [/mm] unterscheiden, daher gibt es drei Terme: (a) i=g, [mm] $j\not=g$, [/mm] (b) [mm] $i\not=g$, [/mm] j=g und (c) i=j=g. Da [mm] $a_{ij}$ [/mm] symmetrisch ist, fallen (a) und (b) zusammen, sodass folgendes übrigbleibt:

[mm] \bruch{\partial f(P_1,\dots,P_{h-1})}{P_g} = - 2 b_g +2 \summe_{i=1}^{h-1} P_i a_{ig} [/mm].

>  Wie du merkst habe ich das noch nicht ganz so verstanden.
>  Also, A wäre die Modellmatrix, P der Vektor der
> Unbekannten und B=?

Siehe oben.

>  Ich hab das nämlich eine etwas andere Lösung gefunden:
>  [mm](A^T*A)*P=B[/mm] (wobei mir dennoch nicht klar ist, was B
> ist).

Hier ist dein A ein anderes als meines; dein A ist die Matrix der  [mm] $a_{ik}=N_{i,p}(t_{k})$. [/mm]

Viele Grüße
    Rainer


Bezug
                                
Bezug
Curve Approximation: Frage (beantwortet)
Status: (Frage) beantwortet Status 
Datum: 10:14 Di 21.04.2009
Autor: Bluemchen09

Hi Rainer,
also ganz habe ich das immer noch nicht verstanden.
Ich verstehe auch zum Teil deine Formel nicht, weil da plötzlich [mm] P_{j} [/mm] auftaucht, was ich garnicht habe.
Ich versuche es nochmal soweit zu erklären, wie ich es verstanden habe und dann kannst du mir vielleicht sagen, ob es korrekt ist oder nicht?

Erst mal zu den Matrizen, über das andere muss ich nochmal nachdenken.
Folgende Gleichung habe ich:

[mm] f(P_{1},...,P_{h-1})=\summe_{k=1}^{n-1}[R_{k}*R_{k}-2*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i}*R_{k})+(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})] [/mm]

Jetzt leite ich nach den unbekannten Kontrollpunkten ab, d.h.

[mm] \bruch{\partial f}{\partial P_{g}} [/mm] = [mm] \summe_{k=1}^{n-1}(-2*N_{g,p}(t_{k})*R_{k} [/mm] + [mm] 2*N_{g,p}(t_{k})*\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i}) [/mm]

dann erhält man:
[mm] \summe_{i=1}^{h-1}(\summe_{k=1}^{n-1}N_{g,p}(t_{k})*N_{i,p}(t_{k}))*P_{i}=\summe_{k=1}^{n-1}N_{g,p}(t_{k})*R_{k}) [/mm]

Und die Matrizen:

[mm] N=\pmat{ N_{1,p}(t_{1}) & \ldots & N_{h-1,p}(t_{h-1}) \\ \vdots & \ldots & \vdots } [/mm]

[mm] R=\pmat{ N_{1,p}(t_{1})*Q_{1}& \ldots & N_{h-1,p}(t_{n-1})*Q_{n-1} \\ \vdots & \ldots & \vdots } [/mm]

[mm] P=\vektor{P_{1} \\\vdots} [/mm]

daraus folgt:

[mm] (N^T*N)*P=R [/mm]

P ist also der Unbekanntenvektor
R der Beobachtungsvektor
N dachte ich die Designmatrix, aber bin mir absolut nicht sicher.

So, über die Ableitung nach g muss ich mir noch mal gedanken machen.
Später. Vielleicht kannst du mir sagen wie N heißt, und ob das andere richtig ist?

Vielen Dank schon mal für die bisherige Mühe.


Bezug
                                        
Bezug
Curve Approximation: Antwort
Status: (Antwort) fertig Status 
Datum: 10:42 Di 21.04.2009
Autor: rainerS

Hallo!

> Hi Rainer,
>  also ganz habe ich das immer noch nicht verstanden.
>  Ich verstehe auch zum Teil deine Formel nicht, weil da
> plötzlich [mm]P_{j}[/mm] auftaucht, was ich garnicht habe.

Ich habe nur in einer Summe den Summationsindex i durch j ersetzt, damit ich die Summationen beliebig vertauschen kann.

>  Ich versuche es nochmal soweit zu erklären, wie ich es
> verstanden habe und dann kannst du mir vielleicht sagen, ob
> es korrekt ist oder nicht?
>  
> Erst mal zu den Matrizen, über das andere muss ich nochmal
> nachdenken.
>  Folgende Gleichung habe ich:
>  
> [mm]f(P_{1},...,P_{h-1})=\summe_{k=1}^{n-1}[R_{k}*R_{k}-2*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i}*R_{k})+(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})*(\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})][/mm]
>
> Jetzt leite ich nach den unbekannten Kontrollpunkten ab,
> d.h.
>  
> [mm]\bruch{\partial f}{\partial P_{g}} = \summe_{k=1}^{n-1}(-2*N_{g,p}(t_{k})*R_{k} + 2*N_{g,p}(t_{k})*\summe_{i=1}^{h-1}N_{i,p}(t_{k})*P_{i})[/mm]
>  
> dann erhält man:
>  
> [mm]\summe_{i=1}^{h-1}(\summe_{k=1}^{n-1}N_{g,p}(t_{k})*N_{i,p}(t_{k}))*P_{i}=\summe_{k=1}^{n-1}N_{g,p}(t_{k})*R_{k})[/mm]
>  
> Und die Matrizen:
>  
> [mm]N=\pmat{ N_{1,p}(t_{1}) & \ldots & N_{h-1,p}(t_{h-1}) \\ \vdots & \ldots & \vdots }[/mm]

Eher so:

[mm]N=\pmat{ N_{1,p}(t_{1}) & \ldots & N_{h-1,p}(t_{\red{1}}) \\ \vdots & \ddots & \vdots \\ N_{1,p}(t_{h-1}) & \ldots & N_{h-1,p}(t_{h-1})}[/mm]



>  
> [mm]R=\pmat{ N_{1,p}(t_{1})*Q_{1}& \ldots & N_{h-1,p}(t_{n-1})*Q_{n-1} \\ \vdots & \ldots & \vdots }[/mm]

Hmm in deinem Gleichungssystem stehen aber die [mm] $R_k$, [/mm] nicht die [mm] $Q_k$. [/mm]
  

> [mm]P=\vektor{P_{1} \\\vdots}[/mm]
>  
> daraus folgt:
>  
> [mm](N^T*N)*P=R[/mm]

Genauso. In meiner Notation wäre [mm] $A=N^T*N$, [/mm] und R hatte ich B genannt.

> P ist also der Unbekanntenvektor
>  R der Beobachtungsvektor
>  N dachte ich die Designmatrix, aber bin mir absolut nicht
> sicher.

Schau doch die Definition der Designmatrix nach! (Ich bin mir auch nicht sicher ;-))

Viele Grüße
   Rainer

Bezug
                                                
Bezug
Curve Approximation: Mitteilung
Status: (Mitteilung) Reaktion unnötig Status 
Datum: 11:29 Di 21.04.2009
Autor: Bluemchen09

Hallo!

> > [mm]R=\pmat{ N_{1,p}(t_{1})*Q_{1}& \ldots & N_{h-1,p}(t_{n-1})*Q_{n-1} \\ \vdots & \ldots & \vdots }[/mm]
>  
> Hmm in deinem Gleichungssystem stehen aber die [mm]R_k[/mm], nicht
> die [mm]Q_k[/mm].
>    

uupps, ja da hat sich wieder ein Fehler eingeschlichen. Heißt natürlich [mm]R_k[/mm].

>
> Schau doch die Definition der Designmatrix nach! (Ich bin
> mir auch nicht sicher ;-))

MMh mit [mm] A=N^T*N [/mm] habe ich noch nie gerechnet. Da muss ich aber noch mal nachschauen. Ich kenne nur [mm] N=A^T*A [/mm] und A wäre dann die Designmatrix und N die Normalgleichungsmatrix. In A stehen die Partiellen Ableitungen der Beobachtungen nach den Unbekannten. Könnte vielleicht sein, dass die Buchstaben nur vertauscht sind.

Erstmal vielen Dank.
Grüße
Blümchen


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Interpolation und Approximation"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.unimatheforum.de
[ Startseite | Forum | Wissen | Kurse | Mitglieder | Team | Impressum ]