Dies ist für ein Hobby-Projekt und wird mit Python implementiert werden, aber das ist nicht wirklich wichtig. Ich suche hauptsächlich nach einem guten Algorithmus.Wie erstellt man eine gleichmäßige Verteilung über mehrere Sets?
Ich möchte eine Rennveranstaltung mit 2 bis 30 Fahrern veranstalten (num_drivers
). Die Veranstaltung hat 2 bis etwa 12 Rennen (num_races
), und ich möchte, dass jeder Fahrer eine faire Chance hat, entsprechend seiner Position am Start mit etwas zufälligen Positionierung. Das Problem ist, welche Startpositionen kann ich jedem Fahrer für jedes Rennen zuweisen?
Ein Beispiel: für eine Veranstaltung mit num_races=3
und num_drivers=4
("A" benannt "D") eine ziemlich gute Konfiguration würde
Race 1: A B C D
Race 2: C D B A
Race 3: D B A C
die Pole Position einen Wert von 1 würde sein, die zweite Position, 2 und so weiter. So gibt diese Einstellung ziemlich gleiche Werte für jeden Fahrer:
A: 1+4+3 = 8
B: 2+3+2 = 7
C: 3+1+4 = 8
D: 4+2+1 = 7
Am Ende der Summe der Positionen jeden Fahrers im Idealfall die gleichen wie für jeden anderen Fahrer sein sollte. Was wäre ein guter generischer Algorithmus (in Pseudocode) für mein Problem, wenn die Anzahl der Fahrer und die Anzahl der Rennen variieren können? Gibt es überhaupt schon einen Algorithmus?
Ich würde dies auf Math.SE fragen. – Rishav
gute Idee @Rishav - Ich werde es auch dort setzen. (oder gibt es schon eine Art "Verbindung" zu anderen stackoverflow-Seiten? Ich war schon lange nicht mehr hier ... – mawimawi
Nein, Sie fragen es separat, aber ich denke, Sie müssen Ihr Ziel klarer definieren. Ein Potential wäre die Summe der Quadrate von der Mitte. – Rishav