5 votos

La generación de las bases para una liga de Ajedrez, con una vuelta de tuerca

Estoy en el proceso de construcción de un software para generar las bases para una liga de ajedrez, que tiene un pequeño giro que complica las cosas. Me gustaría introducir una restricción en la que dos consecutivos equipos de un mismo club no se les permite jugar en la misma noche. por ejemplo, Loughborough 1 no se permite jugar en la misma noche como Loughborough 2. Esto ayuda a los equipos a compartir los jugadores, y por lo tanto, jugar más partidos.

La liga tiene cinco divisiones, con 8, 7, 8, 7, 7 equipos respectivamente. La primera mitad de la liga es jugado por más de 10 semanas. Esto significa que los equipos no tienen que jugar cada semana.

Una solución sería la de la fuerza bruta de todo el fixture de combinaciones, para todas las divisiones. El problema con este enfoque es que hay muchas combinaciones!

Me pregunto si hay alguna de las técnicas matemáticas que puedo usar para que me ayude con este problema. No estoy queriendo encontrar una solución única (una combinación de los accesorios, sin violar las restricciones). Yo sería feliz con un algoritmo que produce 10 violaciones de las restricciones en la temporada.

Cualquier ayuda o punteros sería muy apreciada. Puede alguien sugerir áreas para mi investigación?

1voto

Darren Puntos 46

La programación de los horarios es algo evolutivo de la estrategia que pueden tener las soluciones para muy rápidamente con todos los tipos de limitaciones. La universidad de edimburgo horarios de todos sus cursos/clases con un poco de ES software.

probablemente podría utilizar un algoritmo genético básico para obtener una buena solución. Aún mejor es con un GA usted no consigue Una solución de obtener una población de soluciones para escoger la que más te guste!

1voto

mibus Puntos 706

¿Por qué no limitar el proceso generativo?

Para cada partido: seleccionar aleatoriamente un válido par de equipos.

"Válida" a la par de significado: los equipos que tienen menos de 8 match-ups, y que no son adyacentes en la misma división. (También se puede añadir, por ejemplo, los equipos que no han jugado el uno contra el otro.)

Saludos

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X