Real World Problem - Groups Visiting Various Stations

125 Views Asked by At

Context: This is a real world problem that I am trying to solve that I would appreciate some help with - I'm sure there's a Mathematical concept that will help me, but I'm struggling to remember back to my university days to work out what to Google! If you're able to simply solve the problem for me, that would be awesome, however just some pointers in which direction to go in would be really helpful!

The problem

The situation is, I am running an event which has 8 stations for groups to visit, over 8 timeslots through the day. There are 14 groups. Each group needs to visit each station exactly once (two groups will be at a station in each timeslot). One station will be taking a break in each timeslot (each station gets exactly one break during the day where there are no groups doing their activity). I would like it that each pairing of groups is different, that is to say a group never does more than one station with another group, however if they have to meet one group more than once, that is OK.

My Question

Is it possible to create a schedule that meets these criteria?

I'm guessing there's something in set theory or group theory that might help me, but I'm stumped at this point! I've made numerous schedules where all 14 groups manage to do each station once but they meet the same group 2 or 3 times through the day, which I want to avoid (or at least minimise). If I've posted in the wrong Stackexchange, please let me know and I'll move it

1

There are 1 best solutions below

1
On BEST ANSWER

You can solve the problem via integer linear programming, with a binary decision variable $x_{g,s,t}$ that indicates whether group $g$ is assigned to station $s$ at time $t$. Here is a schedule that satisfies all your constraints:

\begin{matrix} \hline \text{time\station} & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\ \hline 1 & & 5,12 & 9,14 & 10,13 & 1,8 & 3,4 & 7,11 & 2,6 \\ 2 & 1,2 & & 4,11 & 3,6 & 7,13 & 8,14 & 9,12 & 5,10 \\ 3 & 5,7 & 1,3 & & 11,14 & 9,10 & 6,13 & 2,4 & 8,12 \\ 4 & 6,11 & 2,8 & 5,13 & & 3,12 & 1,7 & 10,14 & 4,9 \\ 5 & 12,13 & 9,11 & 1,6 & 4,8 & & 2,10 & 3,5 & 7,14 \\ 6 & 3,10 & 13,14 & 2,12 & 7,9 & 4,5 & & 6,8 & 1,11 \\ 7 & 4,14 & 6,7 & 8,10 & 1,12 & 2,11 & 5,9 & & 3,13 \\ 8 & 8,9 & 4,10 & 3,7 & 2,5 & 6,14 & 11,12 & 1,13 & \\ \hline \end{matrix}