Kungasalen prepared with round tables for the wedding reception

No More Awkward Silences with Table Talk Tuning

paragraph

Martin Butler · Mikael Z. Lagerkvist
ModRef 2026

1 / 12
Kungasalen prepared with round tables for the wedding reception
Kungasalen prepared with round tables for the wedding reception

What will guests talk about?

layout: columns

Structurally feasible

paragraph

The room works

unordered list
  • capacities hold
  • together/apart requests hold
  • table balance stays within bounds

Socially acceptable

paragraph

The table works

unordered list
  • each guest has shared ground
  • a strict majority can sustain the topic
  • protect the weakest-served guest first
2 / 12
Kungasalen prepared with round tables for the wedding reception

Strict majorities at Table 19

figureInterest-score matrix for five guests and six topics at table 19, with the strict-majority floor for every topic
3 / 12
Kungasalen prepared with round tables for the wedding reception

Different topics for different guests

figureThree supported topics at table 19: jazz gives Mina, Theo, and Leila a score of seven; food gives Oskar five; garden gives Petra four
4 / 12
Kungasalen prepared with round tables for the wedding reception

Structure first; conversation breaks ties

figureFive-level lexicographic objective: minimise total slack, maximum slack, and imbalance, then maximise minimum and total guest interest
5 / 12
Kungasalen prepared with round tables for the wedding reception

The model stays close to that definition

display math
b(t,k)=strict-majority order statistic of the seated guests’ scoresb(t,k)=\text{strict-majority order statistic of the seated guests' scores}
display math
q(g,t)=maxkmin{b(t,k),s(g,k)}q(g,t)=\max_k \min\{b(t,k),s(g,k)\}
ordered list
  1. Take the strict-majority floor for each topic.
  2. Clip it by the guest's own interest.
  3. Keep the best supported topic.
6 / 12
Kungasalen prepared with round tables for the wedding reception

Detail: one scalar preserves all five levels

code: minizinc
1int: total_interest_weight = 1;2int: min_interest_weight = total_max_possible_interest + 1;3int: imbalance_weight =4  (max_possible_interest + 1) * min_interest_weight;5int: max_slack_weight =6  (max_possible_imbalance + 1) * imbalance_weight;7int: total_slack_weight =8  (max_max_slack + 1) * max_slack_weight;910var int: goal =11    total_slack * total_slack_weight12  + max_slack * max_slack_weight13  + total_imbalance * imbalance_weight14  + min_interest_penalty * min_interest_weight15  + total_interest_penalty;
paragraph

Each base is one larger than the complete range of all lower-priority digits.

Step 0 of 3
7 / 12
Kungasalen prepared with round tables for the wedding reception

MiniZinc Model Results

figureOn the MiniZinc model, Gecode LNS is strongest for anytime quality, Huub is the strongest base-model solver, and Huub and CP-SAT prove the most instances
8 / 12
Kungasalen prepared with round tables for the wedding reception

Sequential optimisation in native Gecode?

fit text

Optimise one component. Prove it. Fix it. Move to the next.

paragraph

The objective is lexicographic; why not make the native search lexicographic too?

9 / 12
Kungasalen prepared with round tables for the wedding reception

Sequential search makes the conversation terms wait

layout: columns

Levels 1–3

paragraph

Optimise · prove · fix

unordered list
  • total slack
  • maximum slack
  • imbalance

Levels 4–5

paragraph

Still waiting

unordered list
  • minimum interest
  • total interest
quote

A 60-second budget can disappear in the first three proofs.

10 / 12
Kungasalen prepared with round tables for the wedding reception

Scalar and direct lexicographic usually win

figureComparison of scalar, direct lexicographic, and sequential objective handling on the same native Table Talk Tuning model
11 / 12
Kungasalen prepared with round tables for the wedding reception

Model shared ground; search decides how far we get

unordered list
  • Model shared conversational ground without pretending to predict conversation.
  • Use Gecode LNS for strong seatings; Huub and CP-SAT help prove them on the standard model.
  • Native Gecode shows that sequential optimisation is natural—but not automatically best.
12 / 12