• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Standardabweichung mittels calc berechnen

Hallo,

habe ein mathematisches Problem.

Ich will folgendes berechnen:

Eine Münze, deren eine Seite etwas schwerer ist, fällt theoretisch in ca. 60% der Fälle auf die schwerere Seite.

Nach einigen hundert Würfen, sagen wir mal 1000, stellt sich heraus, daß die Münze statt 600 mal nur 400 mal auf der schwereren Seite gelandet ist.

Bei wikipedia habe ich nun folgendes gefunden: http://de.wikipedia.org/wiki/Standardabweichung

Nur wie setze ich das in dem bestimmten Beispiel um? Bin leider kein Mathegenie, und man calc bzw. die Hilfe innerhalb von calc war auch nicht gerade aufschlußreich. Aber es kann wunderbar mit sehr großen Zahlen umgehen (sogar mit 10.000!).
 
Was genau willst Du berechnen?

Übrigens:
Nach einigen hundert Würfen, sagen wir mal 1000, stellt sich heraus, daß die Münze statt 600 mal nur 400 mal auf der schwereren Seite gelandet ist.
Je mehr Würfe Du machst, umso mehr nähert sich der Wert 600 an. Bei 1000 Würfen auf 400 zu kommen, ist schon sehr unwahrscheinlich. Willst Du diese (geringe) Wahrscheinlichkeit berechnen?
Wahrscheinlich hilft Dir Dein Kopf bei solchen Fragen mehr als Calc. ;)
 
A

Anonymous

Gast
Nur mal so nebenbei, also keine wirkliche Hilfe für eine Lösung

Systemcrasher schrieb:
Aber es (calc) kann wunderbar mit sehr großen Zahlen umgehen (sogar mit 10.000!).
Ein Programm zu haben das erfolgreich mit großen Zahlen umgehen kann, reicht leider hinten und vorne nicht aus. Das kann die Konsole auch. ;)
Folgendes berechnet dir die 10000! auch auf der Konsole
Code:
echo "define fact (n) {
auto c
c=1
if (n>0) c=n*fact(n-1)
return(c)
}
fact(10000)" | bc -l

Nur um solche statistischen mathematischen Probleme auf der Konsole zu berechnen, müsste man wahrscheinlich
  • 1. das Problem selbst mathematisch wirklich tiefgründig verstanden haben
    2. eine solche gegebene mathematische Formel mit wirren Mathematischen Sonderzeichen wenigstens ansatzweise auch mal per Hand selbst berechnen können
    und 3. ein ziemlicher Profi auf der Konsole sein.
sprich sich selbst irgendwo zwischen Genie und Professor einordnen können. ;) Tabellenkalkulation ist dort schon eine Hilfe, nur ohne den speziellen theoretisch mathematischen Hintergrund des Problems verstanden zu haben und die ansatzweise Fähigkeit eine solche gegebene mathematische Formel auch in eine der Tabellenkalkulation verständliche Formel oder Funktion zu übersetzen, geht wohl auch hierbei nicht wirklich viel, ob nun mit oder ohne "Hilfe-Funktion" :???:

robi
 
Systemcrasher schrieb:
Eine Münze, deren eine Seite etwas schwerer ist, fällt theoretisch in ca. 60% der Fälle auf die schwerere Seite.
Dann hast Du also bei einem Wurf die Chance 60/100 für die eine Seite und 40/100 für die andere Seite. Das kann man kürzen zu 3/5 und 2/5.
Systemcrasher schrieb:
Nach einigen hundert Würfen, sagen wir mal 1000, stellt sich heraus, daß die Münze statt 600 mal nur 400 mal auf der schwereren Seite gelandet ist.
Ok, sowas ähnliches habe ich mal vor 22 Jahren in der Schule gehabt. Wenn ich das noch richtig zusammenkriege, ging das ungefähr so: Du kannst für die Wahrscheinlichkeiten der einzelnen Würfe einen Baum zeichnen. Der erste Ast gabelt sich in 2/5 und 3/5. Der 2/5-Ast wieder in einen 2/5 und einen 3/5-Ast (2. Wurf). Der 3/5-Ast vom ersten Wurf ebenso. Usw..
Die Wahrscheinlichkeit, daß die Münze innerhalb von 2 Würfen genau einmal auf die schwere Seite fällt, ist dann also 2/5 * 3/5 (linker Ast) + 3/5 * 2/5 (rechter Ast).
Die Wahrscheinlichkeit, daß die Münze innerhalb von 2 Würfen zweimal auf die schwere Seite fällt, ist 3/5 * 3/5. Usw..
Den ersten Fall kann man dann noch zu 2 * 2/5 * 3/5 zusammenfassen. Kann sein, daß man schließlich nicht mehr alle Möglichkeiten in dem Baum einzeln auszählen muß, sondern das in eine allgemeine Formel packen kann.
Das Beispiel hatte ja nur 2 Würfe mit 4 Möglichkeiten. Bei 1000 Würfen dürfte es 2 hoch 1000 Möglichkeiten geben.
Da kann man ja nicht mehr die Möglichkeiten von Hand auszählen, die dazu führen, daß die Münze genau 400 mal auf die schwere Seite fällt.
Jedenfalls sieht man, daß Stochastik mehr mit Vorstellungsvermögen als mit Berechnung zu tun hat. Man muß sich vorstellen können, was die Formeln bedeuten. Das kann einem kein Programm abnehmen.

Edit: Jo, das Ding hieß Bernoulli-Kette.
Da ist auch die Formel angegeben.
Was war nochmal dieses "8 über 4"? Wie berechnet man das?
 
robi schrieb:
Nur mal so nebenbei, also keine wirkliche Hilfe für eine Lösung

schade.

Systemcrasher schrieb:
Aber es (calc) kann wunderbar mit sehr großen Zahlen umgehen (sogar mit 10.000!).
Ein Programm zu haben das erfolgreich mit großen Zahlen umgehen kann, reicht leider hinten und vorne nicht aus. Das kann die Konsole auch. ;)
Folgendes berechnet dir die 10000! auch auf der Konsole

ja, geht sogar schneller als mir calc.

Aber 1000! ist halt schneller eingetippt.

und "1000 über 400! ist halt mit calc auch schneller eingetippt als Dein script. Wobei Dein script mal weider darauf hinweist, wie mächtig die Konsole ist. :)

Nur um solche statistischen mathematischen Probleme auf der Konsole zu berechnen, müsste man wahrscheinlich
  • 1. das Problem selbst mathematisch wirklich tiefgründig verstanden haben


  • 1. Problem. Ich habe die benötigte Formel zwar größtenteils verstanden, aber ich weiß nicht, wie ich den Werteteil umsetzen muß.
    Solche Sachen habe ich halt seit über 20 Jahren nicht mehr gemacht. :???:

    Normalerweise wird das Summenzeichen ja verwendet, um Werte zu addieren, die irgendwie ermittelt wurden, z.B. Meßdaten.

    Aber wie gehe ich da vor, wenn ich eben nur 2 mögliche Werte habe (Kopf oder Zahl)? Da stehe ich irgendwie auf dem Schlauch.

    http://de.wikipedia.org/wiki/Summe

    Den ersten Teil davon habe ich noch verstanden, aber wie gehe ich da in dem speziellen Fall vor?


    http://de.wikipedia.org/wiki/Binomialkoeffizient

    Der Begriff "n über k" ist auch noch klar, dazu brauche ich die Fakultät - wäre dann n!/(k!*(n-k)!)

    Vielleicht habe ich auch irgendwie einen Denkfehler und mache es komplizierter als es ist.

    Fakt ist, daß ich im 2. Teil Werte bekomme, die m.E. zu weit von der tatsächlichen Wahrscheinlichkeit entfernt sind.


    2. eine solche gegebene mathematische Formel mit wirren Mathematischen Sonderzeichen wenigstens ansatzweise auch mal per Hand selbst berechnen können

    Naja, der Ansetz ist zumindest da. Ich habe nur irgendwo eine Denkblokade,

    weil ich den Anfang der betr. Formel nicht verstehe, also wie ich das umsetze.

    "Sigma" k bis n * 0,6^(n-k) * 0,4^k * n! / ( k! * (n-k)! )

    Schließlich haben die Meßwerte nur 2 Zustände.

    und 3. ein ziemlicher Profi auf der Konsole sein.

    Ich will ja kein Matheprogramm schreiben, sondern nur Werte in eine Formel einsetzen.

    Tabellenkalkulation ist dort schon eine Hilfe, nur ohne den speziellen theoretisch mathematischen Hintergrund des Problems verstanden zu haben und die ansatzweise Fähigkeit eine solche gegebene mathematische Formel auch in eine der Tabellenkalkulation verständliche Formel oder Funktion zu übersetzen, geht wohl auch hierbei nicht wirklich viel, ob nun mit oder ohne "Hilfe-Funktion" :???:

    robi

    Naja, die Tabellenkalkulation kann z.B. m.E. nicht mit Zahlen umgehen, die sich aus derart großen Fakultäten ergeben. Zumindest LibreOffice kann das nicht.
 
Hallo,

Gemäss http://de.wikipedia.org/wiki/Standardabweichung

Ich sehe dies viel einfacher... und daher vielleicht auch falsch :D

Code:
Stichprobenumfang  = n = 1000
Wahrscheinlichkeit = p = 3/5 (dass die Münze auf die schwere Seite fällt.
"Münze fällt auf schwere Seite" = 600
Standardabweichung = s = sqrt[ np(1-p) ] = sqrt[ 1000 x 3/5 x 2/5 ] = 15.49

Der erwartete (theoretische) Mittelwert ist demnach = 600 +/- 15.49

Wird das Experiment mehrmals durchgeführt, dann kann also erwartet werden dass in 68% (= +/- eine Standardabweichung vom erwarteten Mittelwert) der Experimente (je 1000 Würfe pro Experiment) der eigentliche gemessene Mittelwert zwischen 584.51 und 615.49 sein wird.

In Deinem Experiment fallen jedoch (nur) 400 Würfe auf die schwere Seite.

Dies ist eine Abweichung vom erwarteten Wert von 200.

200 entspricht einer Abweichung von 12.91 Standardabweichungen (200 / 15.49).

Gruss,
Roland
 

framp

Moderator
Teammitglied
@Systemcrasher: Du siehtst, eine Menge Leute machen sich Gedanken die in teilweise ziemlich unterschiedliche Richtungen gehen. Du hast konkret danach gefragt, wie man den Binomialkoeffizient berechnen kann. Dann kommt Standardabweichung ins Spiel. Ich habe das Gefühl Du willst ein Problem lösen und hast Dich an der Berechnung des Koeffizienten festgebissen. Mach doch einfach einen Schritt zurück und beschreibe genau welches Problem Du eigentlich lösen willst. Häufig führen andere Wege erfolgreich nach Rom :roll:
 
Hab' mal die erste Formel für den Binomialkoeffizienten von hier zugrundegelegt und die Formel für die Wahrscheinlichkeit aus dem pdf, und es dann mal mit Perl versucht (damit können die meisten hier wohl was anfangen):
Code:
#!/usr/bin/perl

use warnings;
use strict;

my $n = 1000;
my $k = 400;
my $binomialkoeffizient = 1;
my $x = 0;
my $y = 1;

while ($y <= $k) {
    $binomialkoeffizient *= ($n - $x) / $y;
    $x++;
    $y++;
}

my $wahrsch = $binomialkoeffizient;
$wahrsch *= (3 / 5) ** 400;
$wahrsch *= (2 / 5) ** 600;

print "$wahrsch\n";
Wenn der Code richtig ist, und die Gleitkommavariablen so extreme Werte mitmachen sollten, dann müßte das die Wahrscheinlichkeit sein, bei genau 1000 Würfen mit 3/5 Wahrscheinlichkeit pro Wurf auf genau 400 Treffer zu kommen.
Ziemlich klein also. ;)
 
Hallo,

Alternativ zu meinem ersten Posting (aber gleiches Resultat):

Code:
1 = leicht
2 = schwer

Stichprobenumfang  = n  = 1000
Wahrscheinlichkeit = p1 = 2/5 (dass Münze auf leichte Seite fällt; eine 1 zeigt).
Wahrscheinlichkeit = p2 = 3/5 (dass Münze auf schwere Seite fällt; eine 2 zeigt).
Mittelwert         = m  = [(p1 x n x 1) + (p2 x n x 2)] / 1000 = [(400 x 1) + (600 x 2)] / 1000 = 1.6

m = (p1 x 1) + (p2 x 2) = 2/5 + 6/5 = 8/5 = 1.6

Standardabweichung = s = sqrt[ (p1 x n)(1 - m)**2 + (p2 x n)(2 - m)**2 ]
                       = sqrt[ 400 x (-0.6)**2 + 600 x (0.4)**2 ]
                       = sqrt[ 400 x 0.36 + 600 x 0.16 ]
                       = sqrt[ 144 + 96 ] = 15.49

Erwartungswertwert = 1600 +/- 15.49
Resultat Experiment: 600 x leicht, 400 x schwer

Wert total: (600 x 1) + (400 x 2) = 1400

Abweichung vom Erwartungswertwert = 200

200 entspricht einer Abweichung von 12.91 Standardabweichungen (200 / 15.49).

Gruss,
Roland
 
Und nochmal schöner:
Code:
#!/usr/bin/perl

use warnings;
use strict;

# $p: Wahrscheinlichkeit des erwünschten Ergebnisses bei einem Wurf.
my $p = 1 / 6; 

# $n: Anzahl der Würfe insgesamt:
my $n = 2;

# $k: Anzahl der erwünschten Ergebnisse (z.B. Zwei Sechsen beim Würfeln):
my $k = 2;

my $binomialkoeffizient = 1;
my $x = 0;
my $y = 1;

while ($y <= $k) {
    $binomialkoeffizient *= ($n - $x) / $y;
    $x++;
    $y++;
}

print "Binomialkoeffizient: $binomialkoeffizient.\n";

my $wahrscheinlichkeit = $binomialkoeffizient;
$wahrscheinlichkeit *= $p ** $k;
$wahrscheinlichkeit *= (1 - $p) ** ($n - $k);

print "Wahrscheinlichkeit: $wahrscheinlichkeit (";
my @fraction = floatToFraction( $wahrscheinlichkeit );
print "$fraction[0]/$fraction[1]).\n";


sub floatToFraction {
    my $x = shift;
    my ($int, $frac) = split( /\./, $x );

    my $num = $frac;
    my $denom = $frac;
    $denom =~ s/\d/0/g;
    $denom = "1$denom";

    my ($zaehler, $nenner, $gcf) = reduce_fraction( $num, $denom );
    return ($zaehler, $nenner);
}

sub reduce_fraction
{
   # From http://www.classhelper.org
   # Copyright (c) 2009 Philip C. Paradis (philip.paradis@classhelper.org)

	# Get input values. -PCP
	my	$num = $_[0];
	my	$den = $_[1];
	my	$temp;
	my	$flag_swap_nd = 0;
	my	$div_counter;
	my	$gcf;

	# Check to see if the numerator equals the denominator. -PCP
	if ($num == $den)
	{
		# They are equal, so return the reduced fraction and the
		# GCF. -PCP
		$gcf = $num;
		return (1, 1, $gcf);
	}

	# Check to see if the numerator is greater than the denominator
	# (improper fraction). If so, swap them for reduction purposes and set
	# a flag so we know to swap them back before returning the result. -PCP
	if ($num > $den)
	{
		$temp = $num;
		$num = $den;
		$den = $temp;
		$flag_swap_nd = 1;
	}

	# Find the greatest common factor. -PCP
	for ($div_counter = $num; $div_counter > 0; $div_counter = $div_counter - 1)
	{
		unless ((($num / $div_counter) =~ /\./) || (($den / $div_counter) =~ /\./))
		{
			$gcf = $div_counter;
			last;
		}
	}

	# Reduce the fraction and swap the numerator and denominator, if
	# necessary. -PCP
	$num = ($num / $gcf);
	$den = ($den / $gcf);
	if ($flag_swap_nd == 1)
	{
		$temp = $num;
		$num = $den;
		$den = $temp;
	}		

	# Return the reduced fraction and greatest common factor. -PCP
	return ($num, $den, $gcf);
}
Der Code für die Umrechnung der Dezimalzahl in einen Bruch kommt von hier und hier (keine Gewähr, daß er immer das richtige Ergebnis liefert).
 
Zunächst mal vielen Dank für die vielen ausführlichen Antworten. :thumbs:

Habe auch gleich die angebotenen Scripte probiert.

Da allerdings ein Problem:

- scrt kennt die Konsole nicht, aber "man sqrt", irgendwie komisch. Ich weiß mittlerweile, daß das für die "Wurzel steht. Ich verstehe nur nicht, wieso weder calc noch die Konsole den Befehl akzeptieren.

- Das erste Script habe ich zunächst nur in einen editor kopiert, gespeichert, ausführbar gemacht und gestartet. Leider hagelt es da nur Fehlermeldungen (Kommando nicht gefunden). Anscheinend geht das nicht einfach so mit copy&paste. Werde mich wohl demnächst mal ein wenig in perl-Grundlagen einlesen müssen.

@framp:
Genau genommen geht es um Wahrscheinlichkeiten beim Poker. Das Internet ist voll von Tabellen, die die Gewinnwahrscheinlichkeiten gegen bestimmte Starthände enthalten sowie von Programmen, die genau das und mehr berechnen können. Aber ich habe nirgens etwas gefunden, mit dem ich meine erspielten Ergebnisse auf ihre Wahrscheinlichkeit überprüfen kann.

Bsp. gewinnt man mit einer Starthand wie AA (2 Asse) in 80% der Fälle, wenn man nur einen Gegner hat. Bei mehreren Gegnern sinkt die Wahrscheinlichkeit, weil es dann mehr Möglichkeiten gibt, überholt zu werden.
Wenn ich nun z.B. in "nur" 75% der Fälle gewinne, hat das bei 10 gespielten AA wohl keine Aussagekraft. Bei 500 oder gar 1000 gespielten AA-Händen dagegen schon.

Ich möchte das einfach mal mit jeder Hand durchrechnen, bei der ich durchschnittlich gewinnen sollte. Um dann bei signifikannten Abweichungen nach den Ursachen suchen zu können und daraus zu lernen.
 
A

Anonymous

Gast
Die Perlscripte einfach als eine Datei "dateiname.pl" abspeichern
dann mit "chmod u+x dateiname.pl" die Ausführungsrechte dafür vergeben und
dann "./dateiname.pl" wie ein normales Shellscript starten.

Hab mir mal den Spaß gemacht eines der Pseudorechenbeispiele von RME in die Bash umzusetzen.

Code:
#! /bin/bash

#1 = leicht
#2 = schwer

Stichprobenumfang=1000
n=$Stichprobenumfang

Wahrscheinlichkeit_1="( 2 / 5 )" # (dass Münze auf leichte Seite fällt; eine 1 zeigt).
Wahrscheinlichkeit_2="( 3 / 5 )" # (dass Münze auf schwere Seite fällt; eine 2 zeigt).
p1=$Wahrscheinlichkeit_1
p2=$Wahrscheinlichkeit_2

Mittelwert=$(echo "( ( $p1 * $n * 1 ) + ( $p2 * $n * 2 ) ) /  $n " | bc -l)
m=$Mittelwert

Standardabweichung=$(echo "sqrt(( $p1 * $n )*( 1 - $m )^2 + ( $p2 * $n )*( 2 - $m )^2 )" | bc -l)
s=$Standardabweichung

Help=$(echo " $n * $m " | bc -l)
echo "Erwartungswertwert = $Help +/- $s"

eleganter geht das natürlich wenn man das komplett in awk oder bc rechnet und nicht den Umweg über die bashvariable und "echo | bc" geht, aber so ist es wohl ehr verständlich und Schritt für Schritt nachzuvollziehen und hoffentlich auch das eine oder andere in eigenen Scripten mal wiederverwendbar.

Aber fragt mich nicht was ich da gerechnet habe, von dem theoretischen Zeugs hab ich keine Ahnung, für mich hört die Mathematik dort auf wo man mit 10 Fingern nicht mehr mit zählen kann. ;)

robi
 

framp

Moderator
Teammitglied
Systemcrasher schrieb:
...Genau genommen geht es um Wahrscheinlichkeiten beim Poker. Das Internet ist voll von Tabellen, die die Gewinnwahrscheinlichkeiten gegen bestimmte Starthände enthalten sowie von Programmen, die genau das und mehr berechnen können. Aber ich habe nirgens etwas gefunden, mit dem ich meine erspielten Ergebnisse auf ihre Wahrscheinlichkeit überprüfen kann.
Interessante Fragestellung.
Bsp. gewinnt man mit einer Starthand wie AA (2 Asse) in 80% der Fälle, wenn man nur einen Gegner hat. Bei mehreren Gegnern sinkt die Wahrscheinlichkeit, weil es dann mehr Möglichkeiten gibt, überholt zu werden.
Wenn ich nun z.B. in "nur" 75% der Fälle gewinne, hat das bei 10 gespielten AA wohl keine Aussagekraft. Bei 500 oder gar 1000 gespielten AA-Händen dagegen schon.
Irgendwie stehe ich noch auf dem Schlauch... Willst Du Deine realen Ergebnisse mit den theoretischen vergleichen? Willst Du Simulationen durchführen weil ich mir vorstellen könnte, dass das Durchrechnen ziemlich aufwendig bzw unmöglich ist?
Ich möchte das einfach mal mit jeder Hand durchrechnen, bei der ich durchschnittlich gewinnen sollte. Um dann bei signifikannten Abweichungen nach den Ursachen suchen zu können und daraus zu lernen.
Bist Du sicher dass man das durchrechnen kann? Wenn ja ist das eine sportliche Aufgabe :roll:
 
Systemcrasher schrieb:
- scrt kennt die Konsole nicht, aber "man sqrt", irgendwie komisch. Ich weiß mittlerweile, daß das für die "Wurzel steht. Ich verstehe nur nicht, wieso weder calc noch die Konsole den Befehl akzeptieren.
Weil Dein "man sqrt" wahrscheinlich "SQRT(3)" zeigt, die Dokumentation der C-Funktion "sqrt();". ;)
Systemcrasher schrieb:
- Das erste Script habe ich zunächst nur in einen editor kopiert, gespeichert, ausführbar gemacht und gestartet. Leider hagelt es da nur Fehlermeldungen (Kommando nicht gefunden). Anscheinend geht das nicht einfach so mit copy&paste. Werde mich wohl demnächst mal ein wenig in perl-Grundlagen einlesen müssen.
Oh, welches Skript jetzt genau?
Ich hatte versucht, mit Perl die genaue Wahrscheinlichkeit für 400 "Treffer" auszurechnen, RME dagegen die Standardabweichung (Pseudocode?).

Bei 1000 Würfen mit 400 Treffern kann man das Ergebnis praktisch nicht nachprüfen. Daher bezieht sich mein zweites Skript erstmal nur auf 2 Würfe eines Würfels und die Wahrscheinlichkeit, dabei 2 Sechsen zu würfeln.
Man kann die Werte in dem zweiten Skript aber auch ganz einfach ändern. Hab' ja dazugeschrieben, was die Variablen $p, $n und $k bedeuten.
 
Hallo,

Nur eine Bemerkung (und vielleicht liege ich ganz falsch):

Ich will folgendes berechnen:

Eine Münze, deren eine Seite etwas schwerer ist, fällt theoretisch in ca. 60% der Fälle auf die schwerere Seite.

Nach einigen hundert Würfen, sagen wir mal 1000, stellt sich heraus, daß die Münze statt 600 mal nur 400 mal auf der schwereren Seite gelandet ist.
Eigentlich eine machbare Aufgabe, aber:

Genau genommen geht es um Wahrscheinlichkeiten beim Poker. Das Internet ist voll von Tabellen, die die Gewinnwahrscheinlichkeiten gegen bestimmte Starthände enthalten sowie von Programmen, die genau das und mehr berechnen können. Aber ich habe nirgens etwas gefunden, mit dem ich meine erspielten Ergebnisse auf ihre Wahrscheinlichkeit überprüfen kann.
etc. etc.
Dies ist nun schon eine ganz andere Sache; will heissen, Du hättest die Problemstellung gleich zu Beginn etwas konkreter beschreiben sollen/können. :D

Was Du möchtest (wenn ich denn jetzt richtig verstanden habe) ist nicht mit einem einfachen Script oder so machbar. Du suchst etwas wo Du die "Spiel-Geschichte" eingeben kannst und dann eine Analyse bez. Deinem sowie des Gegeners Stärken und Schwächen erhältst -- mit Ideen wie Dein Spiel verbessert werden kann (Taktik, Wahrscheinlichkeiten, etc.).

Interessante Fragestellung.
Genau! Aber nicht einfach.

http://www.holdemmanager.com/
http://www.pokertracker.com/

Gruss,
Roland
 
RME schrieb:

Stimmt. Daneben gibt es noch Pokerreader (wird zur Zeit nicht weiterentwickelt) und Elephant.

Alle machen im Prinzip das gleiche: Nämlich die gespielten Hände statistisch auswerten. Also mit welcher Hand habe ich wie oft gewonnen / verloren, gegen wen usw.

Alle haben ihre Stärken und Schwächen. Aber keine vergleicht die gespielten Ergebnisse mit der theoreischen Erwartung.

Nun gibt es auch Programme, die eine Simulation durchlaufen lassen (mehrere Millionen Hände) gegen bestimmte "Ranges" (das ist eine Vorauswahl, welche Hände von Gegnern möglicherweise gespielt werden können) oder eine zufälllige Hand (Gegner spielt alles). Auch damit bekommt man Ergebnisse, wie es theoretisch aussehen müßte.

Ich habe durch diese Programme einerseits die Theorie, anderersets die Praxis in Zahlen ausgewertet. :)

Und mit Euren obigen Scripten kann ich die jetzt vergleichen. Denn wenn ich z.B. Abweicheungen habe, die unwahrscheinlich sind, dann muß ich mir überlegen, woran das liegen könnte, und damit hilft es Fehler zukünftig zu vermeiden.
 
abgdf schrieb:
Weil Dein "man sqrt" wahrscheinlich "SQRT(3)" zeigt, die Dokumentation der C-Funktion "sqrt();". ;)

Wie es aussieht, kennt bash diesen Befehl bzw. die Funktion bei mir gar nicht.
Zwar gibt "SQRT()" eine Eingabeerwartung, aber egal was ich eingebe, es kann damit dann nichts anfangen.

Bsp:

Code:
SQRT
bash: SQRT: Kommando nicht gefunden.

SQRT()
> 3
bash: Syntaxfehler beim unerwarteten Wort `3'

Wahrscheinlich klappte es deshalb nicht mit den Scripts bei mir.


s[TAB-TAB] sagt:

Code:
                                   ...                         sprof
servertool               signcode                 sqlite3
sessreg                  signtool                   sqlmetal
set                          signver                    sqlsharp
setarch                   sim_client                srptool
setcap                    simpdftex                ...

Aber die Version scheint neu zu sein.

Code:
bash --version
GNU bash, Version 4.2.20(2)-release (i686-pc-linux-gnu)
Copyright (C) 2011 Free Software Foundation, Inc.
Lizenz GPLv3+: GNU GPL Version 3 oder jünger <http://gnu.org/licenses/gpl.html>


Edit:


in calc heißt "SQRL" "root (n,2)" für die 2. Wurzel aus n

Nur was das
Code:
| bc -l
bedeutet, habe ich noch nicht rausgefunden, also wie ich das in calc umsetze.

Also für was das "Pipe"-Zeichen in der Gleichung steht
 
Oben