Hi all,

I’m quite new to mathematical programming. I try to solve this seemingly simple problem:

I have

`N`

speakers and`M > N`

slots for talks. Each slot can hold a single talk. Other constrains may be added. How should I distribute the slots so that the time a speaker has to wait between each of her talks is “as regular as possible”?

I thought that would be an easy MIP problem. I could expressed the assignments in a matrix with binary variables and defining the constrains. However, I’m completely lost how to formulate a objective function that gives “regular intervals”.

For example, if we have 3 speakers and 6 slots, this would be a good assignments (everybody has to way 3 slots):

```
A1 = [ 1 0 0;
0 1 0;
0 0 1;
1 0 0;
0 1 0;
0 0 1]
```

but this not (because the third speaker gives two talks in a row):

```
A2 = [1 0 0;
0 1 0;
0 0 1;
0 0 1;
0 1 0;
1 0 0]
```

I know that is not really a Julia question, but I’d be very grateful for every hint!