Plan de table
Mariage, banquet, séminaire : placez les invités avec des règles dures (ensemble / séparés) et des préférences souples (« aimerait », « préfère éviter »), puis lisez le score de satisfaction.
Calcul 100 % local. Les noms des invités ne quittent pas votre navigateur. Partage via fragment d’URL (#) ou fichier JSON.
Sources et limites
- Consultation
- Solveur local (pas de sync)
Chaque modification génère un nouveau lien à repartager : ce n’est pas une synchronisation en direct entre plusieurs personnes. Le lien vit dans le fragment d’URL (#) : rien n’est envoyé au serveur.
Lien et export JSON : invités, tables, contraintes et préférences. Générez un plan pour l’inclure aussi dans le lien / l’export. Les noms restent dans le navigateur.
Invités
8/200. Une ligne ou séparés par virgule.
Tables
8 places au total pour 8 invités.
Relations entre personnes
3 relations. « Doit » / « ne doit jamais » sont dures ; « aimerait » / « préfère éviter » sont souples. Sans relation : « peu importe ».
- Doit être avec · Camille / Alex (contrainte dure)
- Ne doit jamais être avec · Sam / Léa (contrainte dure)
- Aimerait être avec · Noah / Inès (préférence souple)
À quoi ça sert
Faire un plan de table à la main sur papier prend des heures : on place les couples, on sépare les brouilles, on remplit les tables… et une dernière contrainte casse tout. L’erreur fréquente est de tout traiter comme obligatoire : une simple « envie » de voisins finit par rendre le problème insoluble.
Ici vous distinguez contraintes dures (« doit » / « ne doit jamais ») et préférences souples (« aimerait » / « préfère éviter »). Exemple : 8 invités, 2 tables de 4, un couple en table d’honneur imposée, une séparation dure, et un « aimerait être avec » : le solveur garantit le dur, puis maximise le score soft (même table ou non) sans curseurs de poids.
Le résultat affiche un score du type « 165/182 points de préférences » et la liste des préférences non tenues. Ce n’est jamais présenté comme un plan parfait.
Questions fréquentes
Quelle différence entre contrainte dure et préférence souple ?
Que faire si le score de préférences n’est pas parfait ?
Combien d’invités au maximum ?
Que faire si l’outil ne trouve aucune solution ?
Puis-je exporter le plan en Excel ?
Mes invités sont-ils envoyés quelque part ?
Comment c’est calculé
Jusqu’à 200 invités et 40 tables. Au-delà d’environ 40 personnes, la recherche passe dans un Web Worker pour ne pas figer l’interface.
- Ensemble (dur) : union-find. Les personnes liées forment un groupe indivisible placé sur la même table.
- Séparés (dur) : contraintes entre racines de groupes. Si deux personnes à séparer tombent dans le même groupe « ensemble », contradiction immédiate.
- Placement hard : backtracking (plus gros groupes d’abord), capacités et tables fixes. Jusqu’à 150 solutions candidates, délai max ~8 s. Échec explicite si impossible.
- Préférences soft : poids fixes internes (ex. +3 « aimerait », +3 si on évite pour « préfère éviter »). Score = même table / tables différentes uniquement (pas de voisinage ronde ou rectangulaire en V1).
- Amélioration soft : recherche locale (échange de groupes de même taille, déplacement de groupe) pendant ~1 s, en gardant la meilleure solution trouvée. Les contraintes dures restent intactes.
- Équilibre des tables (éviter les isolés) : score secondaire parmi les plans hard-feasibles, jamais au prix d’une contrainte cassée.
- Export : texte (.txt) ou Excel (.xlsx via SheetJS), trois feuilles (par table, par invité, synthèse score). 100 % local.
Si aucune répartition ne satisfait les contraintes dures, l’outil le dit clairement plutôt que d’assouplir vos règles en silence. À fort volume, l’interface passe en listes compactes avec recherche.
Calcul local dans le navigateur, aucun envoi des noms au serveur. Hébergé en France.