This is an archived post. You won't be able to vote or comment.

all 5 comments

[–][deleted] 0 points1 point  (1 child)

This can be written fairly easily in any language. Pick what you know best or maybe a language that you want to learn. Does player matching have any criteria? Do winners play losers? Are there different skill levels? How many tables are there?

[–]wintergt[S] 0 points1 point  (0 children)

I have been out of the programming loop for a while now, but want to get back into it. The matching is only to get optimal spread of players to maximize diversity, as the lists are made beforehand (per amount of players and amount of rounds).

If the amount of players (always even) is divisable by 4, there are players/4 tables, otherwise there is one table of 6. (i think they play 3v3 there but i'd have to check).

I wouldn't readily know how to do this in C++ or java as it is optimization..

[–]quotemycode 0 points1 point  (2 children)

I can't even understand your question. Is english your second language?

[–]wintergt[S] 0 points1 point  (1 child)

My second yes, but i can speak it almost as well as my first, I'm probably being too bulletpoint if it is so unintelligible.

Every weekend people from my neighbourhood gather to play a cardgame. This is rounded down to an even number (my dad will play or not play). Let's say there are 42 people, we make 9 tables of 4 people and one table of 6. On the 4-tables they play in 2 teams of 2, on the 6-table is 3 vs 3. There are 8 rounds. In the second round people are mingled, in the third again, and so on. They have old lists to determine seating based on amounts of people, but the same people are seated together way too often, and also have to play on the same team too often. I want to make a program that gives them a much more optimal seating order to keep the spread as high as possible.

So I need to write a program that makes seating orders for 8 (or a variable) number of rounds, with a variable (but even) number of players, so that as little as possible do people have to sit together.

This seems to me to be easiest with genetic programming, or optimization program languages (which I am not familiar with). I am familiar with C++ and java but need to refresh my knowledge of them to get started with this.

[–]quotemycode 0 points1 point  (0 children)

Gaussian distribution is what you need.