Wie lange dauert ein Block?

Ja, aber es ist eben auch nur ein Beispiel. Wenn du in diesem Intervall gleichverteilt Punkte streust wirst du aber trotsdem im Durchschnitt auf die 5 Minuten Abstand im Durchschnitt kommen. Klar ist in dem größerem Intervall der Abstand größer und die chance dass ein zufälliger Punkt in diesem Intervall liegt ist größer, dafür gehen in dem Ein-Minuten Intervall die Punkte aber auch mit sehr kleinen Werten ein die den Durchschnitt auch wieder senken.

Wie gesagt ich sehe den Entstandenen widerspruch in der nicht vorhandenen Zeitinvarianz des Systems. Also je nach Wissensstand des Analysierenden kommt man auf verschiedene Ergebnisse. Komplett ohne wissensstand über die Punktreihe kann man zu den 20 Minuten im Durchschnitt kommen, umso mehr Informationen man in das betrachtete System fließen lässt muss 10 Minuten herrauskommen.

Ich glaube nur der Statistik, die ich selbst gefälscht habe! — Hat so’n Bart, aber immer wieder richtig. :grin:

1 „Gefällt mir“

Aber ich habe doch gleichverteilt Punkte gestreut, nämlich einen auf jede einzelne Minute, und im Durchschnitt haben diese Punkte einen Abstand von 25 Minuten in jede Richtung zum nächsten Block.

Na wenn du das glaubst, dann schauen wir uns doch einfach die echten Daten an. Das ist dann 100% Wissen, also müsste nach deiner Behauptung Mitternacht durchschnittlich in einem 10-Minuten-Block liegen. Ich behaupte, es ist durchschnittlich ein 20-Minuten-Block.

Gehen wir doch einmal dein Beispiel durch und werfen 60 Millionen Punkte gleichverteilt in deine Blockverteilung. Damit teilen sich alle Punkte so auf:

Block Anzahl Punkte in %
1 1/60
2 1/60
3 1/60
4 55/60
5 1/60
6 1/60

Da die gewürfelten Punkte gleichverteilt sind befinden sie sich auch in jedem Intervall gleichverteilt was bedeutet für jeden Punkt am einen Rand kann man einen gleichweiten Punkt am anderen Intervallsrand finden. Somit liegen alle Punkte im Durchschnitt genau in der Mitte.
Das heisst der Abstand für die Einerblöcke ist im Durchschnitt 0,5 und für den einen großen Block ist der Durchschnitt 27,5.
Der Gesammtdurchschnitt ist also:

Summe(Abstand zum Block * Anzahl der Ereignisse in diesem Intervall(hier normiert auf 1))/Anzahl Blöcke

(5 * (0,5 * 1/60)+(27,5 * 55/60))/6 = 4,2083…

Also in deinem Beispiel ist man im Durchschnitt sogar nach nur 4,2 Minuten Wartezeit in einem Block bzw. der Block war dann vereinfacht gesagt nur im Durchschnitt 8,4 Minuten nach seinem Vorgänger. Ich weiß grad nicht ob man das einfach mal 2 nehmen kann, aber die Größenordnung von 2 sollte zumindest stimmen.
Oder hab ich an der Rechnung was falsch?

1 „Gefällt mir“

Wer mit Realdaten spielen möchte, sind ja nicht nur für @mowtan reserviert:

Passwort für Zip-Datei: Blocktrainer

Download-Link ist ca. 6 Tage gültig.

1 „Gefällt mir“

Erst einmal: Spannende Frage und interessante Auflösung. Ich glaube das meiste verstanden zu haben und zweifle dennoch an der Schlussfolgerung (lasse mich aber gern darüber aufklären).

Es erscheint zunächst kontraintuiitiv dass der Block 20 Minuten benötigen soll. Deine Erklärung fand ich soweit auch gut. Bei 2 Punkten muss ich aber nachhaken, weil sie für mich noch nicht plausibel sind:

Das wir in die Zukunft 10 Minuten zu jedem Zeitpunkt annehmen war mir bekannt und finde ich auch vollkommen nachvollziehbar.
Doch warum soll das rückwirkend auch gehen? Rein statistisch müsste ich doch genau bei der Entstehung eines neuen Blocks rauskommen, wenn der letzte vor 10 Minuten geminet wurde - warum soll das denn der Ausgangspunkt sein?

Außerdem finde ich es unschlüssig, dass das 20 Minutenintervall für einen fixen Zeitpunkt zutreffen soll. Denn dann würde das ja für alle zutreffen, was im Umkehrschluss dazu führt, dass die durchschnittliche Blockzeit ja final auch bei 20 Minuten liegen müsste (was ja bekanntlich nicht so ist). Schließlich könnte ich das Experiment doch für jede Uhrzeit (00:01, 00:02, 00:03…) wiederholen und müsste auch hier auf die 20 Minuten kommen.

Bin aber kein Statistiker oder ähnliches und kann hier durchaus Denkfehler und blinde Flecken haben :grin::see_no_evil_monkey:

1 „Gefällt mir“

Ich mache Transaktionen ja auch zu random Uhrzeiten. Grade eben wurden 4 Blöcke innerhalb von 10 min gefunden. Ich hatte nie das Gefühl, dass es ewig dauert. Eher das Gegenteil war bei mir der Fall.

1 „Gefällt mir“

((5 * 0,5)+(27,5 * 55))/60

Hm? Ich könnte genauso sagen, dass wir über dem ganzen Zug eine Apfelkette bilden und wir alle Äpfel gleichzeitig runter fallen lassen…

1 „Gefällt mir“

Bin mir nicht sicher, was du da eigentlich genau ausrechnest, aber du dividierst am Schluss durch 6, also ist es ein Durchschnitt über alle Blöcke, und damit eine Aussage über Blöcke.

Damit es sich irgendwie auf meine tatsächliche Frage beziehen kann, müsste es aber eine Aussage über Zeitpunkte sein.

Das ist ein guter Punkt, ich habe das nicht besonders verständlich erklärt.

Überleg es dir mal so: Wenn du zu irgendeinem zufälligen Zeitpunkt einen Blockchain-Explorer aufmachst, was würdest du erwarten, wie lange der letzte Block her ist? Manchmal 1 Minute, manchmal 1 Stunde, aber was würdest du sagen, ist es durchschnittlich? Es sind 10 Minuten. Und gleichzeitig dauert es aber auch noch 10 Minuten bis zum nächsten Block, wie du ja auch selbst sagst, also insgesamt 20.

Die Vergangenheitsrichtung ist irgendwie schwieriger zu veranschaulichen als die Zukunftsrichtung, aber stell dir mal einen Würfler vor, der so vor sich hin würfelt und die Ergebnisse aufschreibt. Zu jedem beliebigen Zeitpunkt, an dem du ihm über die Schulter schaust, würdest du korrekt erwarten, dass er die nächste 6 in durchschnittlich 6 weiteren Würfen würfelt.

Wenn du jetzt die Aufzeichnungen seiner Würfe nimmst und sie umdrehst, was ändert sich dann? Eigentlich nichts, es sind immer noch einfach nur Zufallszahlen mit der gleichen Verteilung. Warum sollte deine Erwartung in die andere Richtung also anders sein? Was für einen Unterschied macht die Richtung bei Zufallszahlen? Offensichtlich keinen. Zu jedem Zeitpunkt, an dem du ihm über die Schulter schaust, würdest du korrekt erwarten, dass seine letzte 6 durchschnittlich 6 Würfe her ist.

Haha, ja, genau so ist es. Cool, oder? Für jede beliebige Uhrzeit, die du dir ausdenken kannst, gilt: Diese Uhrzeit liegt durchschnittlich in einem 20-Minuten-Block. Trotzdem sind Blöcke durchschnittlich nur 10 Minuten lang.

Damit diese Rechnung irgendwie aufgeht, können Zeitpunkte nicht gleichmäßig auf Blöcke verteilt sein, sondern es müssen besonders viele Zeitpunkte in besonders langen Blöcken liegen, damit sie den Durchschnitt irgendwie auf 20 Minuten heben können. Und genau das ist auch trivialerweise der Fall – genau das bedeutet ja „langer Block“: Es liegen besonders viele Zeitpunkte drin.

2 „Gefällt mir“

Wenn du Transaktionen zu random Uhrzeiten machst und deine Fee hoch genug ist, dass du es immer in den nächsten Block schaffst, liegen deine Transaktionen durchschnittlich in 20-Minuten-Blöcken.

Auf dein Gefühl, ob es lang dauert oder nicht, wirkt sich das ja eigentlich nicht unbedingt aus – du wartest ja durchschnittlich trotzdem nur 10 Minuten auf den Block und nicht 20, weil du ja erst ab Übermittlung deiner Transaktion wartest, und nicht schon die ganze Zeit davor, in der der Block bereits gesucht wurde.

Ich habe das gerade mit meinen eigenen Transaktionen überprüft. Die durchschnittliche Zeit ist tatsächlich 18:20 min von Block zu Block. Wenn man davon ausgehen, dass ich auf Dauer die Mitte treffe, sind es wieder 10 min. Wie von dir oben erklärt.

1 „Gefällt mir“

Sehr gut. Für alle hartnäckigen Skeptiker hier noch meine Auswertung. Ich habe dann doch nicht Cricktors Daten verwendet, sondern mir einfach ein Jahr Block-Timestamps von Google’s BigQuery geholt.

Hier meine BigQuery-Abfrage:

image

Hier die daraus resultierenden Daten:
https://filebin.net/ili07952ftd9cydt/bquxjob_531fddd6_18790c13387.json

Und hier die Auswertung (hab das der Einfachheit halber mal eben schnell und dreckig in die Browserkonsole geschrieben):

Das heißt, Mitternachtsblöcke hatten über das letzte Jahr eine durchschnittliche Blockzeit von 19,6 Minuten.

3 „Gefällt mir“

Liefert Google BigQuery die Zeitstempel, wie sie im Blockheader stehen oder wie ein Block tatsächlich von einer Node empfangen wird? Letzteres ist sowieso nicht für alle Nodes gleich, ersteres logischerweise schon, aber eben auch ein in durchaus weiten Grenzen flexibel.

A timestamp is accepted as valid if it is greater than the median timestamp of previous 11 blocks, and less than the network-adjusted time + 2 hours. „Network-adjusted time“ is the median of the timestamps returned by all nodes connected to you. As a result block timestamps are not exactly accurate, and they do not need to be. Block times are accurate only to within an hour or two.

Ich sehe bei meiner Node nicht so große Unterschiede, aber es gibt sie und ich habe natürlich auch nicht jeden Block geprüft. In meinen Daten sind aber beide Werte enthalten.

Ich verstehe dein Ergebnis immer noch nicht, bin wohl zu blöd dazu oder es ist zu spät. Was soll auch an Mitternachtsblöcken so besonders sein? Dein Ergebnis sollte für jeden definierten Betrachtungszeitpunkt in Rahmen ungefähr gleich sein. Ich checks einfach nicht. Egal… jetzt…

1 „Gefällt mir“

Ich gehe mal stark davon aus, es ist der Zeitstempel im Blockheader, aber das macht für diese Sache keinen Unterschied.

Ich glaube, wenn du nochmal in Ruhe alles durchliest, was ich hier in dem Thread geschrieben hab, hast du’s.

Um das nochmal ganz klar festzuhalten: Blöcke zu Mitternacht sind überhaupt nicht besonders. Das Gleiche gilt für …

EDIT: Hab nochmal die Listen von Blöcken, für die es gilt und für dies nicht gilt, entfernt, und mache eine extra Umfrage draus. Umfragen machen Spaß.

Ich hab heute früh mal selber schnell ein programm geschrieben:

# Python

import json
import time
import datetime
import random

# Lade ersteinmal die Daten aus der Datei:
# zeitenBitcoinbloecke.json

f = open('./zeitenBitcoinbloecke.json') # öffne die Datei mit den Daten
data = json.load(f) # lese das Json aus
f.close() # die Datei wird nicht mehr benötigt, die Daten stehen in der data variable

# Konstanten für die Auswertung
H = 12 # Stundenzahl, wann ausgewählte Blöcke betrachtet werden sollen
P = 0.05 # Prozentzahl an Blöcken, die zufällig ausgewählt wurden

# Hilfsvariablen für die Auswertung
dt = datetime.date.today() # das python Zeitobjekt des Blockes
dtm1 = datetime.date.today() # das python Zeitobjekt des letzten Blockes
t = 0 # aktueller Zeitpunkt des Blockes
tm1 = 0 # Zeitpunkt des letzten Blockes
bl = 0 # länge des Blockes
erstes = True # Hilfsvariable zum filtern des ersten Blockes. Mangels vorgänger kann keine Blockzeit bestimmt werden

# Statistikvariablen für die Auswertung
N = 0 # speichert ide Anzehl der betrachteten Blöcke
gesT = 0 # speichert die gesammtzeit der betrachteten Blöcke
Nh = 0 # Anzahl der Blöcke, die zu ausgewählten Zeiten untersucht werden
gesTNh = 0 # Gesammtzeit der Blöcke, die zu ausgewählten Zeiten untersucht werden
Nz = 0 # Anzahl der Blöcke, die zu zufälligen Zeiten untersucht werden
gesTNz = 0 # Gesammtzeit der Blöcke, die zu zufälligen Zeiten untersucht werden
Nl = 0 # Anzahl der Blöcke, die zu Zeiten der zufälligen Zeitliste gefunden wurden
gesTNl = 0 # Gesammtzeit der Blöcke, die zu Zeiten der zufälligen Zeitliste gefunden wurden
Gunix = 0 # Größter unix timestamp
Kunix = 99999999999999 # kleinster unix timestamp

# Definiere zufällig aber festgelegte Zeiten
rndlist = [] # liste der zukünftigen zufallsnummern
for i in range(0,50): # erstelle 50 Zahlen
    rndlist.append(random.randint(1650147252,1681750975)) # erstelle zufällige Zahlen zwischen dem Betrachtetem Zeitraum (konkrete Werte durch Gunix und Kunix erhalten)


for i in data: # gehe alle sortierten Zeiten durch
    #zuerst ein paar notwendige Datenumwandlungen
    dtm1 = dt # speichere das letzte Zeitobjekt
    tm1 = t # speichere den letzten Zeitwert
    dt = datetime.datetime.strptime(i['timestamp'],"%Y-%m-%d %H:%M:%S.%f UTC") # lade die neue Zeit als Datetime Objekt
    t = time.mktime(dt.timetuple()) # berechne den neuen unix timestamp
    
    if erstes: # wenn wir beim ersten Block sind, ...
        erstes = False # dann sage wir sind nicht mehr beim ersten Block sind
        continue # und mache gleich weiter mit der Auswertung des nächsten Block.
    
    # Generelle Statistik
    N += 1 # Erhöhe die Zahl der Blöcke um 1
    bl = t - tm1 # Berechne die dauer des aktuellen Blockes
    gesT += bl # addiere die Dauer zur Gesammtdauer
    if(t > Gunix): # wenn die Zeit größer ist als der aktuellste Maximalwert
        Gunix = t # dann setze einen neuen Maximalwert
    if(t < Kunix): # wenn die Zeit kleiner ist als der aktuellste Minimalwert
        Kunix = t # dann setze einen neuen Minimalwert
    
    # Bestimmung ob ein Block über den Zeitraum von H:00:00 erstellt wurde
    if((dt.hour == H)and(dtm1.hour < H)): # Wenn der aktuelle Block eine Stundenzahl von H hat aber der letzte geringer als H war
        Nh +=1 # erhöhe die gefundene Anzahl
        gesTNh += bl # erhöhe die Gesammtzeit der gefundenen Blöcke
    
    # Bestimmung wie lange ein zufälliger Block ist
    if(random.random()<P): # zufällig jeder P%ten Block
        Nz +=1 # erhöhe die gefundene Anzahl
        gesTNz += bl # erhöhe die Gesammtzeit der gefundenen Blöcke
    
    # Bestimme wie lang der Block ist, der zum Festgesetzten zufälligen Zeitpunkt erstellt wird
    for j in rndlist: # gehe alle zufälligen Zeitpunkte durch
        if((j>tm1)and(j<t)): # wenn der gewählte Zeitpunkt größer ist als der letzte Block aber kleiner ist als der aktuelle Block, haben wir ein Treffer
            Nl +=1 # erhöhe die gefundene Anzahl
            gesTNl += bl # erhöhe die Gesammtzeit der gefundenen Blöcke

# Auswertungsanzeige
print("---------------------------------------------------------")
print("Gesammtanzahl der Blöcke: %d"%(N))
print("Durchschnittszeit aller Blöcke: %d Sekunden"%(gesT/N))
print("Durchschnittszeit aller Blöcke: %d Minuten"%(gesT/(60*N)))
print("---------------------------------------------------------")
print("Größte betrachteter Zeitpunkt: %d"%(Gunix))
print("Kleinster betrachteter Zeitpunkt: %d"%(Kunix))
print("Gesammtzeit: %d Sekunden"%(gesT))
print("Gesammtzeit: %d Tage"%(gesT/86400))
print("---------------------------------------------------------")
print("Gesammtanzahl aller Blöcke, die über den Stundenwechsel von %d liefen: %d "%(H,Nh))
print("Durchschnittszeit aller Blöcke, die über den Stundenwechsel von %d liefen: %d Sekunden"%(H,(gesTNh/Nh)))
print("Durchschnittszeit aller Blöcke, die über den Stundenwechsel von %d liefen: %d Minuten"%(H,(gesTNh/(60*Nh))))
print("---------------------------------------------------------")
print("Gesammtanzahl aller Blöcke, die zufällig ausgewählt wurden: %d "%(Nz))
print("Durchschnittszeit aller Blöcke, die zufällig ausgewählt wurden: %d Sekunden"%((gesTNz/Nz)))
print("Durchschnittszeit aller Blöcke, die zufällig ausgewählt wurden: %d Minuten"%((gesTNz/(60*Nz))))
print("---------------------------------------------------------")
print("Gesammtanzahl aller Blöcke, die per Liste ausgewählt wurden: %d "%(Nl))
print("Durchschnittszeit aller Blöcke, die per Liste ausgewählt wurden: %d Sekunden"%((gesTNl/Nl)))
print("Durchschnittszeit aller Blöcke, die per Liste ausgewählt wurden: %d Minuten"%((gesTNl/(60*Nl))))

Mit den Daten von @mowtan ergibt sich somit ungefär folgende Ausgabe (immer leicht anders für die zufälligen Werte aber reproduzierbar):

---------------------------------------------------------
Gesammtanzahl der Blöcke: 53653
Durchschnittszeit aller Blöcke: 589 Sekunden
Durchschnittszeit aller Blöcke: 9 Minuten
---------------------------------------------------------
Größte betrachteter Zeitpunkt: 1681750975
Kleinster betrachteter Zeitpunkt: 1650147252
Gesammtzeit: 31603977 Sekunden
Gesammtzeit: 365 Tage
---------------------------------------------------------
Gesammtanzahl aller Blöcke, die über den Stundenwechsel von 12 liefen: 366 
Durchschnittszeit aller Blöcke, die über den Stundenwechsel von 12 liefen: 1137 Sekunden
Durchschnittszeit aller Blöcke, die über den Stundenwechsel von 12 liefen: 18 Minuten
---------------------------------------------------------
Gesammtanzahl aller Blöcke, die zufällig ausgewählt wurden: 2736 
Durchschnittszeit aller Blöcke, die zufällig ausgewählt wurden: 582 Sekunden
Durchschnittszeit aller Blöcke, die zufällig ausgewählt wurden: 9 Minuten
---------------------------------------------------------
Gesammtanzahl aller Blöcke, die per Liste ausgewählt wurden: 50 
Durchschnittszeit aller Blöcke, die per Liste ausgewählt wurden: 1330 Sekunden
Durchschnittszeit aller Blöcke, die per Liste ausgewählt wurden: 22 Minuten

Also die Statistik stimmt schon, wenn man zufällige Blöcke wählt, dann gibt es im Durchschnitt alle 10 Minuten einen Block, aber wenn man sich zufällige Zeiten wählt gibt es nur alle 20 Minuten einen Block.
Interessanterweise macht es also einen Unterschied ob man sich einen Block aussucht oder einen Zeitpunkt. Sucht man sich einen Block aus gibt es all 10 Minuten einen Block, sucht man sich aber einen Zeitpunkt aus und betrachtet den Block der diesen Zeitpunkt beinhaltet, dann hat man eine größere chance (zeitlich) große Blöcke zu treffen als kleine. Dieser Faktor scheint genau 2 mal die Durchschnittslänge zu sein.

Was ich noch komisch finde ist dann aber das Busparadoxon. Das würde doch bedeuten, dass wenn man zufällig an der Haltestelle erscheint und der Bus zufällig alle 10 Minuten fährt, dann würde man auch durchschnittlich 20 Minuten auf den Bus warten und nicht wie oben angegeben 10 Minuten.

3 „Gefällt mir“

Der Busvergleich hinkt auch etwas, da die Ankunft des nächsten Busses nicht komplett unabhängig von der Ankunft der vorherigen Busse ist. Diese Art von Zufallsexperiment hat also ein gewisses Gedächtnis.

In der Realität ist der regelmäßigen Bus-Ankunft nur ein zufälliger Anteil überlagert. Das führt aus den oben schon erklärten Gründen dazu, dass die mittlere Wartezeit größer als die Hälfte des mittleren zeitlichen Busabstands ist. Sie wird aber niemals genauso groß sein, so wie das bei einem reinen Zufallsexperiment ohne Gedächtnis der Fall ist (z.B. Bitcoin, Würfeln, Losen mit Zurücklegen, Radioaktiver Zerfall etc.).

Je „zufälliger“ die Busse fahren, d.h. je unabhängiger jede Abfahrt von allen vorherigen ist, desto größer wird das Verhältnis von mittlerer Wartezeit zu mittlerem zeitlichen Busabstand.

Ich empfehle dazu den oben schon erwähnten Wikipedia-Artikel zum Wartezeitparadoxon.


Um sich den Sachverhalt noch anders verdeutlichen zu können, möchte ich gerne ein weiteres Modell in die Diskussion einbringen. Das Modell hilft auch dabei zu verstehen, warum der erwartete zeitliche Abstand bis zum nächsten Bitcoin-Block der gleiche ist, egal ob man in Richtung Zukunft oder in Richtung Vergangenheit läuft.

Man kann den kontinuierlichen zeitlichen Verlauf des Minings in kleine Zeitintervalle gleicher Länge zerlegen. Dadurch erhält man eine Serie von identischen Zufallsexperimenten; hier dargestellt als Kästchen. In jedem Zeitintervall bzw. Kästchen wird mit einer gewissen Wahrscheinlichkeit P ein Block gefunden (Kästchen mit Kreuz).

… ☐☐☐☐☐☒☐☐☐☐☐☒☐☐☐☐☐☐☐☐☐☐☒☐☐☐☒☐☐☐☐☐☒☐☐☐☐ …

Dieses Modell ist identisch mit einem Würfel- oder Los-Versuch pro Kästchen. Dabei muss natürlich die Würfel- bzw. Los-Erfolgswahrscheinlichkeit jedes Mal gleich P sein, d.h. das gezogene Los muss auch jedes Mal zurückgelegt werden.

Auch bei Bitcoin ändert sich die Erfolgswahrscheinlichkeit von Kästchen zu Kästchen praktisch nicht. Von der unfassbar großen Anzahl möglicher Hashes wird nur eine im Vergleich winzige Menge durchprobiert. Außerdem unterscheiden sich die Hashes der Mining Pools untereinander, da sich die Blockkandidaten unterscheiden (mindestens durch die Coinbase Transaktionen). Das Modell ist bei passender Difficulty und konstanter Gesamthashrate also nahezu exakt.

Nun kann man berechnen, wie viele Losversuche, also Kästchen, im Mittel für einen Block benötigt werden. Sagen wir es sind N Kästchen (entsprechend 10 min).

Da unsere Serie von identischen Zufallsexperimenten kein Gedächtnis hat, ist es egal wann wir beginnen, die Experimente zu beobachten. Es wird im Mittel immer N Kästchen dauern. Auch unabhängig davon, vor wie vielen Kästchen der letzte Block gefunden wurde.

Da die Zufallsexperimente alle identisch sind ist, müssen die betrachteten Kästchen nicht einmal zeitlich zusammenhängen. Man könnte der Reihe nach blind beliebige Kästchen aus der Serie auswählen und wird im Mittel trotzdem immer N Versuche bis zum Erfolg benötigen.

Ebenso kann man sich einen beliebigen Zeitpunkt in der Serie auswählen, von dem man die Kästchen nach vorne oder nach hinten durchläuft. Man wird im Mittel nach vorne N Kästchen bis zum nächsten Block benötigen. Man wird im Mittel aber auch nach hinten N Kästchen bis zum nächsten Block benötigen.

Die mittlere Anzahl an Kästchen vom vorherigen bis zum nächsten Block ist bei vorgegebenem Zeitpunkt also immer gleich 2N.


Nun wird denke ich klar, warum der zeitliche Abstand bis zum vorherigen Block im Mittel derselbe ist, wie der zeitliche Abstand bis zum nächsten Block. Auch wenn die vorherigen Ergebnisse (Blöcke) schon bekannt sind, stellt(e) jedes Zeitintervall ein eigenes Zufallsexperiment dar.

Der mittlere zeitliche Abstand vom vorherigen bis zum nächsten Block ist bei vorgegebenem Zeitpunkt gleich dem doppelten mittleren Blockabstand, d.h. 20 min.

Der Faktor 2 kommt eben genau daher, dass alle einzelnen Kästchen bzw. Zufallsexperimente komplett unabhängig voneinander sind.
Beim Busfahren ist das nicht so. Wenn ich auf den Bus warte, also der Reihe nach Zeit-Intervalle durchlaufe, die keine Bus-Ankunft enthalten, wird die Erfolgswahrscheinlichkeit mit jedem Intervall größer.


Übrigens noch kurz dazu, dass man mit einer Transaktion scheinbar lange auf den nächsten Block warten muss:

Im Mittel wartet man zwar 10 min bis zum nächsten Block, unabhängig davon wann der letzte Block gefunden wurde. Allerdings wird nur mit einer Wahrscheinlichkeit von 50 % innerhalb der nächsten 6,9 min kein Block gefunden.

Meistens bekommt man also innerhalb der nächsten 7 min einen Block. Der Mittelwert von 10 min ist nur so groß, weil man ab und zu eben auch mal sehr lange warten muss.

Edit: Fehler bei den Buszeiten korrigiert.

6 „Gefällt mir“

Nein, du wartest durchschnittlich 10 Minuten, aber die Busse, mit denen du fährst, haben durchschnittlich einen Abstand von 20 Minuten zum jeweils vorigen Bus. Du kommst einfach durchschnittlich zur Halbzeit zwischen letztem und nächstem Bus an der Haltestelle an.

Genauso wie mit den Blöcken: Deine Transaktionen liegen alle durchschnittlich in 20-Minuten-Blöcken, aber du hast auf jede Transaktion trotzdem nur durchschnittlich 10 Minuten gewartet.

3 „Gefällt mir“