Ich habe eine Matrix die 5X41 groß ist und einen Vektor der 5X1 groß ist. Es soll durch ein lokales Minimum herausgefunden werden wo der Vektor am besten in die Matrix passt. SOzusagen ein Minimum im fünfdimensionalen Raum. Am liebsten wäre mir wenn ich eine MatLab-Funktion von euch erfahren könnte denn ich habe schon gesucht und keine gefunden die passen würde.
Ich hoffe das ihr wisst was ich meine. Bei Unklarheiten der Fragestellung einfach fragen.
Ich habe eine Matrix die 5X41 groß ist und einen Vektor der
5X1 groß ist. Es soll durch ein lokales Minimum
herausgefunden werden wo der Vektor am besten in die Matrix
passt.
Dazu mußt Du „am besten“ erst einmal quantifizieren. Das macht man meistens über die Minimierung der Fehlerquadratsumme. Aber das ist ja nicht die einzige Möglichkeit.
Es soll durch ein lokales Minimum
herausgefunden werden wo der Vektor am besten in die Matrix
passt.
Keine Ahnung was Du meinen könntest. Die Matrix ist ein Schema von 5 mal 41 Zahlen. Der Vektor ein Schema von 5 Zahlen. Was soll da jetzt wo „am besten passen“? Und wo ist ein lokales Minimum? Von was denn bloß?
Gibt es da auch eine MatLab-Funktion?
Ich suche mir schon die Finger wund.
Bevor Du ne Formel suchst solltest Du Dir und uns erstmal klarmachen, worum es geht…
Also die Matrix stellt eigentlich 41 Punkte im fünfdimensionalen Raum dar Ich will nun wissen welchem Punkt der Vektor (der ein EIngangsvektor in einem System ist) am nächsten ist. Ist das nun verständlicher?
Keine Ahnung was Du meinen könntest. Die Matrix ist ein Schema
von 5 mal 41 Zahlen. Der Vektor ein Schema von 5 Zahlen. Was
soll da jetzt wo „am besten passen“? Und wo ist ein lokales
Minimum? Von was denn bloß?
Ich glaube er will wissen, welcher der 41 Zeilenvektoren seiner Matrix am besten zum Vektor paßt.
Ich glaube er will wissen, welcher der 41 Zeilenvektoren
seiner Matrix am besten zum Vektor paßt.
Genauso ist es.
Dann mußt Du Dir ein Vergleichskriterium definieren, den Wert für jeden der 41 Zeilenvektoren berechnen und dann denjenigen mit dem besten Wert wählen.
Ich habe es jetzt so gemacht das ich einfach den Vektor von jedem Zeilenvektor abgezogen habe dann habe ich den Ergebnisvektor quadriert um die größeren Abweichungen stärker zu gewichten und dann habe ich die Summe gebildet und das Ergebnis mit dem geringsten Wert ist die Zeile die am besten zu meinem Vektor passt.
Ist diese Überlegung richtig?
Mfg Stefan
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Also die Matrix stellt eigentlich 41 Punkte im
fünfdimensionalen Raum dar Ich will nun wissen welchem Punkt
der Vektor (der ein EIngangsvektor in einem System ist) am
nächsten ist. Ist das nun verständlicher?
Dazu müsstest du den Abstand des durch den Vektor bezeichneten Punktes zu jedem der anderen 41 Punkte berechnen. Das geht durch Berechnen der Differenzen in jeder Koordinate, Quadrieren der Differenzen, Addition dieser Quadrate und anschließendem Wurzelziehen von der Summe.
Da dich der tatsächliche Abstand ja nicht interessiert, sondern nur die Reihenfolge, kannst du dir die Wurzel auch sparen. Du musst also lediglich 41 Summen berechnen, wo jeweils die Differenzen der Koordinaten zwischen Punkt aus der Matrix und Punkt aus dem Vektor quadriert addiert werden.
Ich habe es jetzt so gemacht das ich einfach den Vektor von
jedem Zeilenvektor abgezogen habe dann habe ich den
Ergebnisvektor quadriert
wenn Du meinst dass Du immer jede der fünf Differenz-Koordinaten quadriert und diese 5 Quadrate dann addiert hast, stimmt es so. Das ist ja das, was Sebastian vorgeschlagen hat.
…und das
Ergebnis mit dem geringsten Wert ist die Zeile die am besten
zu meinem Vektor passt.
Ist diese Überlegung richtig?
Ja schon, nur Deine Ausdrucksweise ist eben sehr seltsam. Wann „passt“ denn ein Vektor zu einer Zeile? So spricht man vielleicht im „Lust & Liebe“ - Brett. Aber Du meinst doch, dass die Spitze des Vektors „am nächsten“ an dem durch diese Zeile definierten Punkt ist. Wobei „am nächsten“ wohl den euklidischen Abstand meint.