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

Interpolation von Zwischenwerten einer Zeitreihe (jeder 2.)

 

eemmzz

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2008, 11:27     Titel: Interpolation von Zwischenwerten einer Zeitreihe (jeder 2.)
  Antworten mit Zitat      
Liebe Matlabgemeinschaft,


Zur Zeit bin ich an einem kniffligen Problemchen noch einmal neu ausführlich formuliert:

Meine Telefonanlage gibt mir alle 30 Minuten einen Wert aus, wie viele Anrufe eingegangen sind.

Der erste Wert beginnt 8:00 und endet 8:29, der Zweite beginnt 8:30 und endet 8:59 usw…

8:00
8:30
9:00
9:30
10:00
10:30
11:00
11:30
12:00
12:30
13:00
13:30
14:00
14:30
15:00
15:30
16:00
16:30
17:00
17:30
18:00
18:30
19:00
19:30
Dazu gehörige Werte:

41
46
67
88
98
107
93
95
69
57
51
55
59
54
44
59
45
42
31
16
16
8
8
6

Zur Planung in zukünftigen Perioden benötige ich 15 Minuten- Werte, die ich interpolieren möchte. Der erste interpolierte Wert ist 8:15, der Letzte 19:45.

Dabei soll nicht einfach nur der Mittelwert errechnet werden, also nicht 8:15 => (41+46)=87/2= 43,5 also 8:15 => 43,5/2 = 21,75, da die Anzahl an Anrufen pro 30 Minuten schon feststeht (8:00 41 Anrufe). Bei Mittelwert würde 43,5 Anrufe herauskommen.

Zweitens soll die Anrufverteilung nicht gleich verteilt sein also 8:00 – 8:14 => 41/2 = 20,5 und von 8:15 – 8:29 = 20,5.

Die Summe der ersten halbe Stunde ist also 41 Anrufe. Die Verteilung könnte so aussehen:

8:00
8:15
8:30
8:45
9:00
9:15
9:30
9:45
10:00
10:15
Dazu gehörige Werte:

20
21 Summe 41
22
24 Summe 46
30
37 Summe 67
42
46 Summe 88
48
50 Summe 98

Wenn das Anrufvolumen der folgenden halben Stunde (z.B. 8:30) höher ist als das der ersten halben Stunde (z.B. 8:00), sollen in der ersten Viertelstunde (8:00 bis 8:14) weniger kalkulierte Anrufe angesetzt werden als in der zweiten Viertelstunde.

Wenn das Anrufvolumen sinkt, müssen in der ersten Viertelstunde mehr kalkulierte Anrufe angesetzt werden als in der zweiten Viertelstunde.

Hier einmal eine grafische Veranschaulichung: die blaue Linie zeigt die gegebenen Daten auf Viertelstundenbasis bei gleicher Verteilung der Gesamtanrufe auf die erste und die zweite Viertelstunde. Die gelbe Linie zeigt eine Möglichkeit, wie die Kurve aussehen könnte:



Hat jemand eine Idee, wie man dieses Problem am Besten in eine Funktion umsetzen könnte?

Vielen Dank

1.jpg
 Beschreibung:
Reale 30 min Daten (blau) und von mir per Hand eingestellte Werte (gelb)

Download
 Dateiname:  1.jpg
 Dateigröße:  100.38 KB
 Heruntergeladen:  539 mal


effa7
Forum-Anfänger

Forum-Anfänger


Beiträge: 12
Anmeldedatum: 01.08.08
Wohnort: ---
Version: R2007b, R2008a
     Beitrag Verfasst am: 05.08.2008, 13:53     Titel:
  Antworten mit Zitat      
Ich bin nicht sicher ob ich es richtig verstanden habe, aber was hälts du davon:

t_akt = Zeitspanne des betrachteten Zeitintervalls (z.B. 9:00-9:29)

t_vor= Zeitspanne des vorherigen Zeitintervalls (z.B. 8:30- 8:59)
t_nach= Zeitspanne des nachfolgenden Zeitintervalls (z.B. 9:30- 9:59)


t_Viertel1= t_akt * (t_vor/(t_vor+t_nach)); % 9:00-9:14
t_Viertel2= t_akt * (t_nach/(t_vor+t_nach)); % 9:15-9:29

im Beispiel ergäbe sich
t_Viertel1=67*46/(46+88 )=23
t_Viertel2=67*88/(46+88 )=44

Wobei mir grad auffällt, dass so die Viertelstunden-Werte recht stark schwanken können. Vielleicht gibt es dir ja trotzdem einen Ansatz wie du weitermachen könntest
Private Nachricht senden Benutzer-Profile anzeigen
 
Gast



Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 05.08.2008, 16:54     Titel:
  Antworten mit Zitat      
Ja so kann man das machen aber das Problem bleibt, dass die Werte sehr stark abweichen, so das im Endeffekt der Durchschnittswert einer Periode 67/2= 33,5 besser/ genauer sind.

Ich habe mir auch schon den Kopfzergrübelt und habe so was überlegt das 70% der Calls fix sind und 30% die Differenz zur vorigen und nachfolgenden Periode darstellt.
Das funktioniert so lang bis die Unterschiede zw. den Perioden nicht groß sind. Ansonsten kann es Ausreißer geben die in den erst 15 Minuten zu +150 Calls und danach zu Minuscalls führen, welche unmöglich sind.

Gibt es vllt. noch eine andere Möglichkei/ Methode das Problem zu lösen?

Kann man eventuell zu den Daten eine Kurve per Hand errechnen, die gut aussieht und davon eine Funktion errechnen lassen, die man dann allgemeingültig abstrahiert und vereinfacht?
 
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.