20220208103440

const samples = 1000;
const p = 0.7;
const initialInterval = 7;
const repetitions = 5;
const ease = 2;

const results = [];

for (let i = 0; i < samples; i++) {
	let interval = 7;
	let bestInterval = 0;
	for (let r = 0; r < repetitions; r++) {
		if (Math.random() < p) {
			bestInterval = interval;
			interval *= ease;
		} else {
			interval = Math.max(interval / ease, initialInterval);
		}
	}
	results.push(bestInterval);
}

results.sort((a, b) => a-b);

let currentValue = null;
let currentCount = 0;
for (const result of results) {
	if (result !== currentValue) {
		if (currentValue !== null) {
			console.log(currentValue, currentCount / samples * 100);
		}
		currentValue = result;
		currentCount = 0;
	}
	currentCount++;
}
console.log(currentValue, currentCount / samples * 100);
Last updated 2023-07-13.