WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Zweidimensionale Optimierung

 

Johnny1991
Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 15.08.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.08.2014, 14:08     Titel: Zweidimensionale Optimierung
  Antworten mit Zitat      
Hallo zusammen,

ich stehe gerade etwas auf dem Schlauch, aber ich denke, dass die Lösung ganz einfach ist. Ich habe einen Vektor mit Spannungswerten (V_ist) und dieser soll durch die Rechenvorschrift a*(V_ist + b) an den Vektor V_soll angenähert werden mit dem Skalar a und dem Vektor b. Dabei darf der Vektor b nur gleiche einträge besitzen. Sozusagen Skalar*Einheitsvektor.

Anders ausgedrückt: Ich suche das Minumum von a*(V_ist + b*Einheitsvektor) - V_soll.

Leider bin ich sehr unerfahren mit Matlab und kenne mich mit passenden Befehlen nicht aus. Crying or Very sad Google hat schon viele Ideen gebracht, jedoch bin ich nie auf das gekommen was ich suchte. Kennt jemand einen passenden Befehl? Ein Minimalbeispiel sollte ich dann schnell finden.

Vielen Dank im Voraus und ein schönes Wochenende Smile
Private Nachricht senden Benutzer-Profile anzeigen


Nras
Forum-Meister

Forum-Meister


Beiträge: 608
Anmeldedatum: 21.02.12
Wohnort: ---
Version: 7.12.0.635 (R2011a)
     Beitrag Verfasst am: 15.08.2014, 16:03     Titel:
  Antworten mit Zitat      
Hallo,

Ist b wirklich ein Vektor oder nicht vielleicht doch ein Skalar?
Möchtest du vielleicht eine Gerade durch einen Scatterplot von V_ist und V_soll legen? Das ginge so:
Code:
V_ist = sort(rand(10,1)); % gegebene Messwerte
a = 0.6;
b = 1.5;
V_soll = a*V_ist + b + (rand(size(V_ist))-0.5)*0.2;

p = polyfit(V_ist, V_soll, 1); % p(1) ist das geschätzte a, p(2) ist das geschätzte b
figure
plot(V_ist, V_soll, 'ko')
hold on
plot(V_ist, polyval(p,V_ist),'rx--')


Ansonsten bitte Beispiele für V_ist V_soll angeben und was a und b sein könnte.
Private Nachricht senden Benutzer-Profile anzeigen
 
Johnny1991
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 2
Anmeldedatum: 15.08.14
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.08.2014, 16:38     Titel:
  Antworten mit Zitat      
Danke für die fixe Antwort Smile

Also ich dachte, dass b ein Vektor sein muss, weil ich ja nicht auf einen Vektor ein Skalar addieren kann, oder macht der das Komponentenweise (jeder Eintrag von V_ist wird mit b addiert)?

V_Soll stellt in meinem Fall sin(2x) dar. V_ist ist eine Spannung mit einem Offset von ~1.6V und hat einen Spannungsbereich von ca. 0,8 bis 2,4V. Insgesamt also etwas was näherungweise so aussieht: V_ist = 0.8V*sin(2x) + 1.6V.

Der Bereich für x liegt zwischen 0° und 360° und ich habe 100 Messwerte (3,6° Schritte).

Ich werde dein Beispiel gleich bzw. morgen einmal ausprobieren und sagen wie es geklappt hat. An die Geschichte mit Polyfit hatte ich gar nicht gedacht. Einfache Lösungen mag ich Laughing
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2025 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.