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

Regression

 

Reimers
Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 03.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.02.2009, 07:13     Titel: Regression
  Antworten mit Zitat      
Hallo Leute,

ich schreibe gerade an meiner Diplomarbeit, und muss zur Auswertung MatLab verwenden. Leider bin ich noch nicht so ganz drin und scheiter oft schon an den einfachsten Aufgaben.

Ich habe folgendes Problem:

Ich muss ein Programm schreiben, bei dem ich X-Werte zu findenhab. Ich habe grob einen Vektor (und beim Plot 60 Pieks) nun soll ich den Punkt finden, an dem die Pieks beginnen. Ich habe es schon mit mehreren diff-/ und find Funktionen probiert, hat auch soweit geklappt, aber mein Prof will, dass ich dass mit Hilfe von Regression mache.

Nochmal zum verstehen: Mein Versuch sieht so aus, dass jemand in einem Fahrsimulator sitzt und nachdem ein Bremslicht aufleuchtet, das Bremspedal drücken muss. Ich muss jetzt die Reaktionszeit berechnen. Der Bremslicht Vektor ist nur eine Logical-Vektor, stellt also kein Problem dar. Die Bremsbewegung wird mit Hilfe des Bremsdruckes dargestellt. Nun muss ich den Bremsdruckvektor mit Hilfe von Regression und durch berechnen des anschließenden Schnittpunktes mit einer Nullinie, mit dem Bremslichtvektor vergleichen und tada...soweit die Theorie

Ich weiß bereits, dass die Funktion polyfit für mich die Regression macht (komm aber trotzdem damit nicht zurecht)

Ich hoffe ich hab euch jetzt nicht erschlagen und es wäre super, wenn mir da jemand weiter helfen könnte. Danke schon mal

Reimers
Private Nachricht senden Benutzer-Profile anzeigen


Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 03.02.2009, 10:03     Titel:
  Antworten mit Zitat      
Ich glaube zu verstehen was die Aufgabe ist, kann aber nicht verstehen warum und wie Regression eingesetzt werden soll. Das Forum kann gewiss helfen bei Vorlage von Beispieldaten und -code die Regression zum Laufen zu bringen, aber ich würde schon gerne wissen, warum das in MATLAB und nicht in Simulink umgesetzt werden soll.

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Maddy
Ehrenmitglied

Ehrenmitglied



Beiträge: 494
Anmeldedatum: 02.10.08
Wohnort: Greifswald
Version: ---
     Beitrag Verfasst am: 03.02.2009, 10:16     Titel:
  Antworten mit Zitat      
Erstmal brauchst du Kriterien, wann ein Peak für dich ein Peak ist.
Wie sieht denn diese Funktion aus, also ist sie monoton oder gibt es starkes rauschen? Kannst du vll mal ein Beispiel hochladen? Eventuell muss man die Funktion erst glätten/filtern.

Wenn die Peakdetektion funktioniert, d.h. du kennst die Position des Anfangspunkt und die Position des lokalen Maximums, dann kannst du mittels polyfit einfach eine Gerade hineinfitten.



Code:


% Die Postion des Peaks wurde gefunden und in Anfang (Anfang des Peaks) und Maximum gespeichert, also z.B. Anfang=100; Maximum=150;

t(Anfang:Maximum); % Elemente des Zeitvektors vom Anfang des Peaks bis zum Maximum
y(Anfang:Maximum); % Elemente der Bremskurve v A. bis
z=polyfit(t,y,1); % fittet eine Gerade durch die angegebenen Punkte und liefert die Koeffizieten

SchnittIndex =(Offset-z(2))./z(1); % Offset = z(1)*x+z(2) Offset entspricht dem Wert der Nulllinie

t(SchnittIndex) % Zeitpunkt des Bremsvorgangsbeginns

 


Ich hoffe, dass ist so die Richtung die du haben wolltest.
_________________

>> why
The computer did it.
Private Nachricht senden Benutzer-Profile anzeigen
 
Reimers
Themenstarter

Forum-Newbie

Forum-Newbie


Beiträge: 3
Anmeldedatum: 03.02.09
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.02.2009, 10:45     Titel:
  Antworten mit Zitat      
Beim Bremsdruck soll ich eine Regression an der positiven Flanke des Pieks machen (habe es bereits bei meinen Versuchen mit einem Filter vershen und abgeleitet, um eben nur die pos. Flanke besser ermitteln zu können) und eine weitere Regression kurz vor der Flanke. Dann den Schnittpunkt der beiden Regressionsgeraden (soll nur erster Ordnung sein) ermitteln (soll eben den Zeitpunkt der Reaktion darstellen) und dann mit dem Vektor des Bremslichtes vergleichen.

Warum nicht Simulink...keine ahnung, mein prof steht anscheinend auf matlab.

und danke für die schnellen antworten, ich werde mich mal daran probieren, wenn es nicht klappen sollte, lade ich die beiden vektoren mal hoch
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 - 2024 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.