![]() |
Exponentialfunktion Warscheinlichkeit
Hi Forum, ich habe ein bisschen "rummprogrammiert" ;) und habe grade ein kleines Problem.
In einer Funktion findet exponentielles Wachstum statt, soll heißen: Eine Funktion ruft sich selbst 9 mal Rekursiv auf. Mit jedem Aufruf ist die Warscheinlichkeit 50%, dass der rekursive Aufruf auch tatsächlich ausgeführt wird. Jeder geglückte Aufruf hat wieder 9 Aufruf-Versuche zur Folge, von denen dann ja logischerweise ca 9 * 4,5 = 40,5 klappen. Dies geht immer so weiter. 40,5 * 4,5 ... Ich will, dass das Wachstum aber langsam zurück geht, also keine konstanten 50%. Der Wert soll immer unwarscheinlich (kleiner) werden je tiefer die Rekursionsstufe ist. Wie genau heißt die Mathematik, welche ich für sowas brauche? Viele Gruße! |
AW: Exponentialfunktion Warscheinlichkeit
Wie genau soll die Wahrscheinlichkeit abnehmen? 50,30,20%? Folgender Ansatz ist anpassbar:
Delphi-Quellcode:
Beim ersten Aufruf ist die Wahrscheinlichkeit 50%, danach 25% usw. Du kannst das Array anpassen, wie Du willst.
Const
propability : Array [0..8] if double = (1,2,4,8,16,32,64,128,256,-1) procedure RecursiveCall (level : Integer); var i : Integer; Begin if propability[level]<0 then exit; for i:=0 to 8 do if random(propability[level])=0 then RecursiveCall(level+1); end; // Aufruf RecursiveCall(0); |
AW: Exponentialfunktion Warscheinlichkeit
Grade läuft dieses TV Duell, danke schonmal :) Ich melde mich gleich
|
AW: Exponentialfunktion Warscheinlichkeit
Zitat:
Delphi-Quellcode:
liefert doch Zahlen im Bereich 0 <= y < x
y := Random(x)
Müsste das Array nicht so lauten, wenn sich die Wahrscheinlichkeit pro Level immer halbieren soll
Delphi-Quellcode:
propability : Array [0..8] if double = (2,5,9,17,33,65,129,257,-1)
|
AW: Exponentialfunktion Warscheinlichkeit
Liste der Anhänge anzeigen (Anzahl: 2)
Hmmm das trifft es irgendwie nicht so ganz:
Hab es mal in Form von Rauten, welche in sich selbst gezeichnet werden, veranschaulicht: - Er bricht ab der 4ten Rekursionstiefe ab - Bis dahin immer 50% Chance auf Aufruf soruce: Anhang 39823 exe: Anhang 39824 Was ich beschreiben möchte, ist ein irgendwie gearteter Zerfallsprozess.. So wie er auch in der Natur vorkommt. |
AW: Exponentialfunktion Warscheinlichkeit
Zitat:
Zitat:
Richtig wäre, alle Einträge im propability-Array um eine Stelle nach links zu verschieben. Zitat:
Zitat:
Delphi-Quellcode:
propability : Array [0..4] if double = (2,2,2,2,-1)
|
AW: Exponentialfunktion Warscheinlichkeit
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:31 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz