FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: holle75 am 21 März 2019, 17:28:32

Titel: [gelöst] Stochastik / Mathefuchs / Regenwahrscheinlichkeit über 24h berechnen
Beitrag von: holle75 am 21 März 2019, 17:28:32
Es ist einfach zu lange her ;)

Ich möchte aus 24 stündlichen Einzelwahrscheinlichkeiten (auf Regen) eine Gesamtwahrscheinlichkeit (für diese 24 Stunden) berechnen.
Ich denke die ganze Zeit es kann doch nicht so schwer sein, aber irgendwie finde ich in all den Wahrscheinlichkeitsformeln nicht die passende.
Die Würfel und Glücksräder und Fremdsprachenschüler haben alle nix mit Wetter zu tun :D

Einer von euch?

Danke und Gruß
H.

Titel: Antw:Stochastik / Mathefuchs
Beitrag von: audimax am 21 März 2019, 17:37:35
Hallo,
also nach der Definition der Regenwahrscheinlichkeit (relative Häufigkeit der Regentage bei ähnlicher Wetterlage) würde ich sagen, dass man dazu einfach den größten Einzelwert nehmen sollte...
Gruß max
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: hsepm am 21 März 2019, 17:48:04
Sei pN (N=1..24) die Wahrscheinlichkeit, dass es in Stunde N regnet. Dann ist (1-pN) die Wahrscheinlichkeit, dass es in Stunde N NICHT regnet.

Dann ist 1-((1-p1) * ... * (1-p24)) die Wahrscheinlichkeit, dass es irgendwann mal am Tag regnet.

Vielleicht sollte man aber die Nachtstunden ausklammern  ;)
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 18:49:50
Mmh, max´s Ansatz macht auch irgendwie Sinn (und so schön einfach).

hsepm, puh, ich muß es mir jetzt mal ganz blöd aufschreiben (mit dem Sternchen meinst du multiplizieren? Ich dachte irgendwo müsse man was addieren):

100-((100-WahrscheinlichkeitStunde1) * (100-WahrscheinlichkeitStunde2) * ..... * (100-WahrscheinlichkeitStunde24))

das meinst du?
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 19:01:53
Zitat von: hsepm am 21 März 2019, 17:48:04
Vielleicht sollte man aber die Nachtstunden ausklammern  ;)

Ich brauchs für die Beregnung, nicht die Dolce Vita :D
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: hsepm am 21 März 2019, 19:21:47
Zitat von: holle75 am 21 März 2019, 18:49:50
Mmh, max´s Ansatz macht auch irgendwie Sinn (und so schön einfach).

hsepm, puh, ich muß es mir jetzt mal ganz blöd aufschreiben (mit dem Sternchen meinst du multiplizieren? Ich dachte irgendwo müsse man was addieren):

100-((100-WahrscheinlichkeitStunde1) * (100-WahrscheinlichkeitStunde2) * ..... * (100-WahrscheinlichkeitStunde24))

das meinst du?

Wahrscheinlichkeit wird auf das Intervall [0,1] normiert. Ohne % Zeichen geht die Rechnung mit 100 schief. 100% ist gleich 1. * steht bei vielen Programmiersprachen für Multiplikation, dachte, das erklärt sich von selbst.

Natürlich ist die Rechnung nicht ganz korrekt, da die Regenwahrscheinlichkeiten nicht 100% unabhängig sind. Ist aber besser als die größte Wahrscheinlichkeit zu nehmen. Wenn die Regenwahrscheinlichkeit bei allen Stunden 50% ist, ist es so gut wie sicher (nahezu 100%), dass es mindestens in einer Stunde regnet.

Aber wenn du es für die Beregnung brauchst, warum nicht einfach die prognostizierten Niederschlagsmengen addieren? Das müsste dir doch mehr bringen als die Wahrscheinlichkeit. Mach doch sicher nen Unterschied, ob es 1 mm oder 50 mm regnet.

Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 19:32:50
Zitat von: hsepm am 21 März 2019, 19:21:47
* steht bei vielen Programmiersprachen für Multiplikation, dachte, das erklärt sich von selbst.

Klar, nur hatte ich ganz fest was mit Addition im Kopf.

Zitat von: hsepm am 21 März 2019, 19:21:47
Aber wenn du es für die Beregnung brauchst, warum nicht einfach die prognostizierten Niederschlagsmengen addieren?

Mach ich noch zusätzlich. Du hast nur recht wenig von zB 10mm Regen mit einer Wahrscheinlichkeit von 5%... später wird das was in Richtung:

Wenn Regenmenge über 8mm (die nächsten 24h) und die Wahrscheinlichkeit dass es dazukommt über 50% liegt, dann ......

Zitat von: hsepm am 21 März 2019, 19:21:47
Wahrscheinlichkeit wird auf das Intervall [0,1] normiert. Ohne % Zeichen geht die Rechnung mit 100 schief. 100% ist gleich 1.

Ok, dann muß ich die Einzelwahrscheinlichkeiten vorher durch 100 dividieren und später wieder hochrechnen. Danke!
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 20:31:09
So, ich als absoluter Perl-Laie als Beispiel für ein Userreading

Regenwahrscheinlichkeit24h:.*_precipProbability.*
{
my $hdmvalue = 0;;
my $hdmzwischen = 0;;
my $hdmklammerkomplett = 0;;
my $hdmtotal = 0;;
for (my $i=1; $i<=24; $i++)
{
$hdmvalue = ReadingsVal("WetterDarkSkyModul", "hfc".$i."_precipProbability",0);;
$hdmzwischen = 1 - $hdmvalue / 100;;
$hdmklammerkomplett = $hdmklammerkomplett * $hdmzwischen;;
};;
$hdmtotal = (1 - $hdmklammerkomplett) * 100;;
return sprintf("%2d",$hdmtotal);;
},


was haltet ihr davon? ... und ich kanns nichtmal testen, weil tatsächlich sogar für die nächsten 4 Tage überall 0% Regenwahrscheinlichkeit anliegt.
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 20:55:55
Mmh, jetzt gibt mir fhem nach dem ersten Readings-update Regenwahrscheinlichkeit24h -> 100

entweder total falsch oder irgendwo genau andersrum.


EDIT:
Ein anfängliches

my $hdmklammerkomplett = 1;;

macht schonmal Sinn und lässt die Regenwahrscheinlichkeit zu 0 werden. Jetzt warte ich mal auf Regen .....
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: hsepm am 21 März 2019, 21:25:36
Zitat von: holle75 am 21 März 2019, 20:55:55
Mmh, jetzt gibt mir fhem nach dem ersten Readings-update Regenwahrscheinlichkeit24h -> 100

entweder total falsch oder irgendwo genau andersrum.


EDIT:
Ein anfängliches

my $hdmklammerkomplett = 1;;

macht schonmal Sinn und lässt die Regenwahrscheinlichkeit zu 0 werden. Jetzt warte ich mal auf Regen .....

Bin auch nicht so der Perl-Crack, würde aber $hdmvalue / 100 zur Sicherheit mal klammern, auch wenn Punktrechnung vor Strichrechnung, und vielleicht durch 100.0 teilen, nicht, dass das eine Integer-Operation ist.

Du kannst aber einfach mal mit 2 Stundenwerten starten, dann lässt sich die Rechnung noch per Taschenrechner nachvollziehen. --> for (my $i=1; $i<=2; $i++)

EDIT:

Du kannst auf jeden Fall folgende "Edge-Cases" testen, wenn du die Werte aus einem Array befüllst:

a) 24 Mal 0% -> gesamt 0%
b) 23 Mal 0% und 1 Mal 100% -> gesamt 100%
c) 24 Mal 5% --> gesamt 70,8%

b), c) könnten etwas jenseits der Realität liegen, aber es würde zeigen, dass dein Code nach der von mir vorgeschlagenen Formel arbeitet.
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 21:34:37
Zitat von: hsepm am 21 März 2019, 21:25:36
Bin auch nicht so der Perl-Crack, würde aber $hdmvalue / 100 zur Sicherheit mal klammern, auch wenn Punktrechnung vor Strichrechnung, und vielleicht durch 100.0 teilen, nicht, dass das eine Integer-Operation ist.

Du kannst aber einfach mal mit 2 Stundenwerten starten, dann lässt sich die Rechnung noch per Taschenrechner nachvollziehen. --> for (my $i=1; $i<=2; $i++)

... über die Klammer bei $hdmvalue / 100 hatte ich auch nachgedacht. Wenns nicht schaden kann, mach ich das mal.
100.0 ist auch eine gute Idee.

Wenns doch nur mal regnen würde. Das ist so Murphy wie schon lange nicht mehr :D
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: hsepm am 21 März 2019, 21:47:05
Ich würde auch noch mal checken, wie die Regenmengenprognose zu interpretieren ist:

Angenommen, es besteht eine 50% Warscheinlichkeit auf 10 mm Niederschlag. Werden dann 10 mm (ungewichtet) oder 5 mm (gewichtet) prognostiziert?

Wenn du kannst, solltest du die Prognose auch mal im Nachhinein über ein paar regnerische Tage mit der Ist-Menge vergleichen.
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: KernSani am 21 März 2019, 21:47:42
Wirf doch per serteading einfach mal manuell eine Regenwahrscheinlichkeit in irgendein reading


Kurz, weil mobil
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 22:04:04
Zitat von: hsepm am 21 März 2019, 21:47:05
Ich würde auch noch mal checken, wie die Regenmengenprognose zu interpretieren ist:

Angenommen, es besteht eine 50% Warscheinlichkeit auf 10 mm Niederschlag. Werden dann 10 mm (ungewichtet) oder 5 mm (gewichtet) prognostiziert?

Wenn du kannst, solltest du die Prognose auch mal im Nachhinein über ein paar regnerische Tage mit der Ist-Menge vergleichen.

Wikipedia rebelliert gerade, sinnvollerweise, gegen Artikel 13. Von daher kann ich nicht mal inhaltlich gewichtet/ungewichtet recherchieren ;)
Ich weiß auch nicht, wie DarkSky ihren Regenwert einschätzt/definiert. Leider sind die Buben nicht besonders antwortfreudig, denn was wir hier gerade mühevoll aufarbeiten hatte ich mir, mit besonders freundlicher Mail vor Monaten, von DarkSky gewünscht. Ebenfalls einen Sonnenstunden-Wert. Keine Antwort.

Zitat von: KernSani am 21 März 2019, 21:47:42
Wirf doch per serteading einfach mal manuell eine Regenwahrscheinlichkeit in irgendein reading


Kurz, weil mobil

gute Idee. setreading
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: holle75 am 21 März 2019, 22:09:32
habe jetzt mit setreading einen Wert auf 50 und einen Wert auf 25 gesetzt. Alle anderen bekanntlich 0. Dann bekomme ich 62 als Ergebnis geliefert. Hört sich für mich nicht zu falsch an. hsepm?
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: hsepm am 22 März 2019, 11:53:42
Zitat von: holle75 am 21 März 2019, 22:09:32
habe jetzt mit setreading einen Wert auf 50 und einen Wert auf 25 gesetzt. Alle anderen bekanntlich 0. Dann bekomme ich 62 als Ergebnis geliefert. Hört sich für mich nicht zu falsch an. hsepm?

100% - ((100% - 50%) * (100% -25%)) = 100% - 37,5% = 62,5%

Müsste stimmen.

Stochastik ist nicht intuitiv. Wir behandeln das Szenario als ob das Wetter ein Glücksspiel mit bekannten Gewinnchancen ist. Ob die Formel sinnvolle Ergebnisse bringt, hängt natürlich davon ab, wie genau die angegebenen a priori-Wahrscheinlichkeiten sind. Ich nehme an, die kommen aus einem Wettermodell (black box).

Du müsstest das - wie gesagt - mit deinen Ist-Werten (hat heute geregnet oder nicht) abgleichen und ggf. mit einem Faktor korrigieren.
Titel: Antw:Stochastik / Mathefuchs
Beitrag von: hsepm am 22 März 2019, 12:04:44
Zitat von: audimax am 21 März 2019, 17:37:35
Hallo,
also nach der Definition der Regenwahrscheinlichkeit (relative Häufigkeit der Regentage bei ähnlicher Wetterlage) würde ich sagen, dass man dazu einfach den größten Einzelwert nehmen sollte...
Gruß max

relative Häufigkeit der Regentage bei ähnlicher Wetterlage ... was ist eine ähnliche Wetterlage? Gleicher Luftdruck, gleiche Bewölkung? Auf jeden Fall wäre das dann ein statistisch (a posteriori) ermittelter Wert.

Meiner Meinung nach kommt die Regenwahrscheinlichkeit eher aus einem oder mehreren Niederschlagsprognosemodell(en) eines großen Wetterdienstes (mit Supercomputer, z.B. DWD). Diese Modelle rechnen heute mit einer Maschenweite von 500 Metern. Wenn um den angegebenen Ort Maschenknoten mit errechnetem Niederschlag und ohne Niederschlag liegen, kann man eine a priori-Regenwahrscheinlichkeit für den angegebenen Ort berechnen.

Titel: Antw:[gelöst] Stochastik / Mathefuchs / Regenwahrscheinlichkeit über 24h berechnen
Beitrag von: holle75 am 22 März 2019, 19:27:50
hsepm, Danke für deine Unterstützung. Ich werde schauen, wie akkurat die Praxis sich an der Berechnung orientiert.