Algorithme de génération de round suisse - Sciences - Discussions
Marsh Posté le 20-05-2003 à 06:41:05
Tu es sur que c'est ca un "round suisse"?
Votre systeme est complet (toutes les equipes se rencontrent et il y a N equipe - 1 rounds ), alors je ne vois pas ce qui pose probleme, suffit de derouler.
Marsh Posté le 20-05-2003 à 11:40:20
bin on fonctionne un peu comme le hockey international jpense
on divise en pool, et chaque pool doit affronter toute les équipes de sont pool
on garde X équipe par pool, qu'on envoit en éliminatoire
le probleme c'est d'etre capable de généré l'horaire pour qu'il soit le plus optimisé, c à dire dans notre exemple de 6 équipe, 5 round de 3 match
on cherche une relation pour générer l'horaire correctement au lieu d'utiliser la force brute de l'essai et erreur
Marsh Posté le 20-05-2003 à 12:01:04
finalement c qu'avec 2-3-4 équipe ca se génere bien manuellement
rendu à 5-6-7-8 ca commence à etre un sacré casse-tete à faire, et imaginez si on monte plus haut
ex: j'ai 4 pool de 10 équipes, jveux garder les 2 meilleurs équipes de chaque pool au finale et jveux que chaque équipe de chaque pool saffronte, donc 90 parti à planifier en 18 rounds, 5 parties par round... ouch
Marsh Posté le 20-05-2003 à 23:47:13
pour ceux que ca l'interresse:
http://www.devenezia.com/downloads/round-robin/
ca l'explique en terme mathématique, et ya le code en C
Marsh Posté le 21-05-2003 à 00:16:01
burgergold a écrit : pour ceux que ca l'interresse: |
merci burgergold
Marsh Posté le 21-05-2003 à 02:07:50
BotMan a écrit : merci burgergold |
ehy toi, long time no see
Marsh Posté le 21-05-2003 à 05:14:33
euh perso, je te conseillerais de pas de prendre la tete:
de toute facon, meme si tu as un planning, il marchera pas
1. tu auras toujours des matchs qui prendront du retard (prblm de connec, un pc qui plante, un serveur, un gus qui est parti pisser... etc...)
2. tu auras aussi des matchs qui dureront plus/moins longtemps que d'autres (genre untel qui fout la pate a untel en 5 mins... ou un forfeit... etc...)
bref, tu vas te retrouver avec un planning ou il y aura des moments vides et des moments surbookes... donc tu vas pas le respecter, et ca va foirer
donc tu commences les matchs, tu fais un joli tableau excel avec les equipes dessus, tu mets des croix sur les matchs joues et hop... bastaqd une equipe est prete a jouer, tu regardes quelle equipe est prete aussi et tu les fait jouer ensemble.
le mieux, c'est encore de faire un truc avec une bdd et une page php par exemple qui va matter ca tout seul pour toi comme ca, tu cliques sur une equipe, ca te dis quelle equipe elle a pas rencontree, et si l'une de ces equipes est libre ou pas en ce moment... c tout ez a faire, et ca sera plus polyvalent qu'une formule d'ordonnancement qui marchera pas
Marsh Posté le 21-05-2003 à 11:59:11
t'inquiete, ca va marcher
les pépins sont prévues dans l'horaire
le joueur parti pisser n'avait qua allez pisser avant, le match débutera sans lui
quand t'a 8-10 équipes ca se fait bien à la main, à 100 équipes c pu envisageable
Marsh Posté le 20-05-2003 à 03:21:08
Salut à vous tous, venez vous frottez à ce problème qui, apres 8hrs de travail à 3 personnes, n'a pas trouvé réponse
Dans le cadre de génération de round dans des tournois, nous devons former un horaire optimisé à son maximum
Prenons le nombre de 6 équipes à titre d'exemple:
3 étant le nombre de match max par round (nb équipe/2)
5 étant le nombre de round pour que chaque équipe ait affronté chaque concurrent (nb équipe - 1)
15 étant le nombre de match total [(Nb équipe)!/(Nb équipe - 2)! * 2]
On doit donc généré l'horaire pour que chaque équipe affronte chaque équipe, sans qu'un équipe ne joue 2 match à la meme heure
on recherche donc une équation, une relation, QUELQUES CHOSE! qui nous permettra de généré cet horaire selon un nombre X d'équipe (lorsque X est impair, on fonctionne avec X + 1, le # étant une équipe bidon)
---------------
http://www.boincstats.com/signature/user_664861.gif