You are on page 1of 3

A scheduling problem

Suppose you are organising a mathematics conference. You have several people setting
up special sessions in their area of expertise. You are trying to find a way to schedule the
sessions so that if there are overlapping interests, you can make sure the sessions happen
at different times. To that end, you have asked each session organiser to tell you what
broad fields of mathematics their topic concerns. You have the following list:

- Probabilistic Combinatorics (PC): of interest to Analysts, Combinatorialists, and


Probabilists.

- Algebraic Combinatorics (AC): of interest to Algebraists and Combinatorialists.

- Enumerative Combinatorics (EC): of interest to Combinatorialists and Representa-


tion Theorists.

- Ramsey Theory (RT): of interest to Combinatorialists and Probabilists.

- Markov Chains (MC): of interest to Probabilists.

- Brownian Motion (BM): of interest to Probabilists and Analysts.

- Operator Theory (OT): of interest to Analysts.

You would like to schedule the shortest conference possible, using as few time slots as
possible so you do not have to pay for the rooms for too long. Now answer these questions.

1. Define the variables and their domains for this scheduling problem.

2. Provide the constraint graph for this problem.

3. Determine the smallest number of time slots you could use to accommodate every
session, where no two topics run at the same time if they have overlapping interests.

Solution
1. Variables and domains
Choosing variables and domains in CSP problems can be somewhat tricky. You have to
consider the goal you are working towards. However, the best place to start is normally
to regard the limited resource as the starting point for the domains (and thus the thing
needing the resource as the variables). Another way of thinking about this is to say the
items we are contending for would be the domains, the items that would like to make use
of them (contend for them) would be the variables.
In the given problem, time slots are limited: the sessions are contending for their use –
so we regard the time slots as the domain. Therefore the variables are the seven sessions.

- Let X be the set of variables. X = {PC, AC, EC, RT, MC, BM, OT}.

- Let DX be the domain for the variables. DX = {T1 , T2 , . . . , Tn }.


Here n is the total number of available times slots and each Ti (for i = 1, 2, . . . , n)
represents a time slot. All the variables have the same domain.

1
2. Constraint graph
The nodes of the graph represent the variables, thus the conference sessions. The con-
straints of the graph represent the conflicts of interest about the different topics. So we
draw an edge between two sessions if they have a conflicting area of interest, as shown in
the graph in Figure 1.

Figure 1: The constraint graph for the scheduling problem

3. Solution to the problem


We would like to determine the smallest number of time slots to accommodate the different
sessions without conflicts of interest. This can be phrased as follows: divide the nodes
of the graph into sets so that no nodes with an edge between them belong to the same
set. This amounts to finding an assignment of colours to the nodes of the graph so that
if there is an edge between nodes u and v, then the colours assigned to nodes u and v are
different.
In other words, if we can colour the constraint graph with the fewest number of colours
possible, we can schedule the conference as follows: schedule all sessions that has the same
colour at the same time. Since we know that two nodes cannot be linked by an edge if
they have the same colour, this means that we cannot have any scheduling conflicts.
In Figure 2, we have a colouring of the constraint graph that satisfies the requirement
we set. That is, no two nodes that are linked by an edge have the same colour. In this
colouring, we have used four colours, which means we can hold the conference sessions in
four time slots so that there are no conflicts. Specifically we have:

• PC = T1 , (blue)

• RT = OT = T2 , (yellow)

• MC = AC = T3 , (red)

• EC = BM = T4 , (green).

Note that the order of assigning time slots to the sessions does not really matter as long
as sessions with different colours are held at different times.

2
Figure 2: A colouring of the constraint graph for the scheduling problem

You might also like