Voor een evenement ben ik op zoek naar een formule waarmee ik kan berekenen welke personen aan welke tafels moeten zitten, waarbij dezelfde personen zo weinig mogelijk twee keer bij elkaar aan dezelfde tafel zitten.
Na drie keer wisselen van tafel zijn er vier momenten geweest waarbij er ongeveer (bij voorkeur) acht personen tegelijk aan tafel komen.
Is het mogelijk om met een formule te berekenen welke personen aan welke tafel(nummers) plaats moeten nemen zodat men zo weinig mogelijk bij elkaar aan dezelfde tafel komt te zitten? Daarbij zou het totaal aantal personen en tafels variabel moeten zijn.
De eerste gedachte die ik krijg is om elke persoon een getal te geven en dat getal te schrijven in basis (ik noem maar even wat) 4. Dus dan is elk cijfer 0, 1, 2 of 3.
Je hebt dan 0000, 0001, 0002, 0003, 0010, 0011, 0012, 0013, 0020, ..., 0033, 0100, ..., 3331, 3332, 3333
(44 = 256 mensen)
Dan zet je in de n-de ronde alle mensen bij elkaar waarvan het n-de cijfer gelijk is.
Dus in ronde 1 zitten alle mensen die beginnen met 0, bij elkaar, en alle mensen die beginnen met 1 zitten bij elkaar, etc. In ronde 2 zitten mensen 0000, 1000, 2000, 3000, 1011, 2022, 3033 bij elkaar, maar 0100 zit bij de groep van mensen waarvan het tweede cijfer 1 is. In de laatste ronde zitten 0003, 0013, 0023, 0033, 3213 etc. bij elkaar.
Uiteindelijk is het aantal keer dat twee mensen bij elkaar zitten, gelijk aan het aantal gelijke cijfers in hun codes. Dus 0000 en 1111 zitten nooit bij elkaar, maar 0123 en 1123 zitten vaker bij elkaar.
Het aantal verschillende cijfers (de basis, b) is het aantal groepen, de lengte van de code, L is het aantal rondes. Heb je dit, dan kun je bL mensen kwijt. Heb je er minder, dan zoek je een verzameling getallen van lengte L in basis b, die een onderling zo groot mogelijke afstand hebben (Hamming-code, of iets dergelijks).
Ik kan me voorstellen dat er diverse andere spelen of evenementen zijn waarbij men indelingsschemas voor roulatie van X personen per tafel heeft. Dat wordt dus googlen.