si jai bien compris, on peut représenter les choses sous forme de matrice.
:we:
une matrice 8x8
la première ligne correspond à la première session. Chaque colonne représentant un atelier.
Dans chaque case, on met un couple (a,b) avec a dans [0,7] et b dans [8,15] (les équipes sont numérotées de 0 à 15)
Ca veut dire que le couple (a,b) en position (i,j) s'affronte lors de la session i sur l'atelier j.
Les conditions sont donc :
un a par ligne : lors d'une session on fait un et un seul jeu
un a par colonne : on ne fait pas deux fois le même jeu, a la fin des 8 sessions on les aura tous faits
une seule paire (a,b): on n'affronte jamais deux fois la même équipe
a ne rencontre jamais a (pas de paire (a,a))
ca revient à construire un carré gréco-latin.
on pose a qui prend ses valeurs dans [0,7] et b dans [8,15],
et pour n=8 c'est possible (pov Matt_01, 2 est un cas particulier ou yen a pas

Il reste à trouver un algo pour fournir un carré latin orthogonal.