Rasmus Vinther Rasmussen Afdelingen for Operations Analyse Aarhus Universitet Matematiklærerdag 006
Er der nogen, der har prøvet at planlægge en turnering? Er der nogen, som har hørt om en turnering, der er blevet aflyst, fordi man ikke har kunnet lave en turneringsplan? 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Round robin turnering Alle møder alle lige mange gange Turneringen er opdelt i runder Alle hold spiller en kamp i hver runde Holdene spiller enten hjemme eller ude Runde: Hold : hjemmekamp Hold : Hold : udekamp Hold : 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Problemstillingen: Bestem hvem der mødes i hver runde Bestem hvem der spiller hjemme og ude Sørg for at holdene så vidt muligt spiller skiftevis ude og hjemme (minimere breaks) Et break er på hinanden følgende udekampe eller på hinanden følgende hjemmekampe 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 Hold : Hold : Hold : Hold 6: 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 6 Hold : Hold : Hold : Hold 6: 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 6 Hold : Hold : Hold : Hold 6: 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 6 Hold : Hold : Hold : Hold 6: 6 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 6 Hold : Hold : 6 Hold : Hold 6: 6 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 6 Hold : 6 Hold : 6 Hold : Hold 6: 6 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Konstruktion af turnering med minimalt antal breaks: Runde: Hold : Hold : 6 6 6 Hold : 6 Hold : 6 Hold : Hold 6: 6 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Er matematik nødvendig? Svært når der skal tages specielle hensyn Stadions er ikke altid ledige Hold ønsker hjemmekampe på særlige datoer Kampene skal spredes over hele landet Bestemte hold skal have en ekstra hjemmekamp Alle hold vil gerne møde de store hold hjemme 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
The Traveling Tournament Problem: n hold skal spille en turnering Alle møder alle en gang hjemme og en gang ude Højst udekampe i træk Højst hjemmekampe i træk Afstand mellem ens kampe Rejser direkte fra udekamp til udekamp Afstandene er kendte Den samlede rejseafstand skal minimeres Problemet er endnu ikke løst for n = 8!!! 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Udregningstider for et simpelt problem: Minimer antal breaks Under bibetingelse: Alle møder alle en gang Alle møder en modstander i hver runde Halvdelen af holdene spiller hjemme i hver runde Når hold mødes spiller det ene hold hjemme og det andet spiller ude Break hvis et hold har hjemmekampe i træk eller udekampe i træk 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
SAS Ligaen: hold og alle hold mødes gange Antal breaks skal minimeres Stadions skal være ledige Umuligt at opfylde alle betingelser!!! 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Løsningsmetode i trin:. Generer hjemme/ude sekvenser. Vælg en hjemme/ude sekvens for hvert hold. Check brugbarhed (kan det lade sig gøre at tildele modstandere) 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
0006 Rasmus Vinther Rasmussen Matematiklærerdag 006 Turneringsplanlægning. Generer hjemme/ude sekvenser Eksempel med 6 hold og runder: 6 Nummer Sekvens Antal breaks
0006 Rasmus Vinther Rasmussen Matematiklærerdag 006 Turneringsplanlægning. Generer hjemme/ude sekvenser Eksempel med 6 hold og runder: 6 Nummer Sekvens Antal breaks
. Vælg en hjemme/ude sekvens for hver hold Minimerer antal breaks Under bibetingelse: Der skal vælges en sekvens for hvert hold Præcis halvdelen af de valgte sekvenser skal have en hjemmekamp i hver runde 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
. Check brugbarhed Bruger matematisk problem til at bestemme hvem der møder hvem så det passer med de valgte sekvenser. hold kan kun mødes i en runde hvor det ene spiller ude og det andet spiller hjemme Hvis der ikke kan findes en brugbar turnering går vi tilbage til Trin og finder nye sekvenser 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Hele løsningsmetoden: Trin Trin Trin Færdig Generer hjemme/ ude sekvenser Vælg sekvenser Check brugbarhed 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006
Hvorfor er den ene metode hurtigere: I den første model var der en variabel for hver kombination af hold og runde: I alt 0 variabler for et eksempel med 6 hold I alt 0 muligheder ~ milliard muligheder I den anden model var der sekvenser og der skulle vælges 6: I alt ~ millioner muligheder 0006 Rasmus Vinther Rasmussen Matematiklærerdag 006