Ik heb zojuist geconcludeerd dat ik geen idee heb hoe ik een geplande 'groeipotentie' efficiënt kan berekenen. Volgens mij kan het nauwkeurig inschatten van de hoeveelheid nageslacht nooit sneller gebeuren dan het berekenen van de takken zelf. Kortom, voor de zoveelste maal ga ik een /dev/null-taktiek toepassen.
Nieuw idee. Ik heb in het begin van dit topic iemand gezien die zijn deelnemers plotte in een twee-dimensionale ruimte, en ze elkaar vervolgens liet afstoten en aantrekken aan de hand van voorkeuren en onderlinge relaties. Datzelfde principe ga ik denk ik toepassen, maar dan zonder de grote beperking. Het systeem is namelijk heel erg afhankelijk van de startposities. Die kun je volledig random inzetten, maar dat levert geen betrouwbaar resultaat. Je kunt het expirment meermaals herhalen met verschillende startindelingen, maar dat is langzaam, en alsnog een benadering.
Een uniforme verspreiding werkt denk ik al veel beter. Je kunt bijvoorbeeld 100 deelnemers dusdanig op de omtrek van een cirkelschijf plaatsen, dat de afstand tussen elk punt en zijn twee buren constant is. Ook dat is echter niet ideaal, omdat de volgorde waarin de deelnemers geplaatst worden, ook relevant is. Wissel twee buren met elkaar, en de uitkomst kan compleet anders zijn. De afstand van elk punt tot zijn buren is immers constant, de afstand van elk punt tot elk ander punt is nog variërend.
Volledig uniforme verspreiding kan dus op een cirkel enkel met maximaal 3 punten. Als je, door deze drie punten met elkaar te verbinden, een gelijkhoekige driehoek krijgt, is de afstand van elk punt tot elk ander punt gelijk. Op een lijn kan dat met maximaal 2 punten. Op een bol kan dat met maximaal 4, je krijgt dan een tetraëder. Oftewel:
Één dimensie | Lijn/Lijnstuk | Maximaal 2 punten |
Twee dimensies | Cirkel/Gelijkhoekige driehoek | Maximaal 3 punten |
Drie dimensies | Bol/Tetraëder | Maximaal 4 punten |
Kortom, het aantal benodigde dimensies om een
n aantal deelnemers uniform op te verspreiden, is
n-1. Nu is het verspreiden op één, twee, of drie dimensies nog niet heel ingewikkeld. Coördinaten onderstaand...
n
max = 2
(-1);
(1)
n
max = 3
x
(n) = cos (n * 2 pi) / n
max
y
(n) = sin (n * 2 pi) / n
max
n
max = 4
(1, 1, 1);
(-1, -1, 1);
(-1, 1, -1);
(1, -1, -1)
Ik kan hieruit echter nog niet bepaald een algemene formule afleiden voor de x-, y-, z- en enzovoortscoördinaten voor een ruimte met vier, vijf of honderdzesentwintig dimensies. Waarschijnlijk gaat mijn QBasic vreemde streken uithalen wanneer ik een array met meer dan 10 dimensies probeer te definiëren, maar goed, volgende week is er nog steeds een /dev/null.

Hoe dan ook, is iemand hier een wiskundig meesterbrein die mij hierbij kan helpen?
Overigens, ik gebruik gewoon MS' Windows, maar /dev/null klinkt zo lekker.
Ik veronschuldig mij bij voorbaat voor het bovenstaande.