Sport Tournament Automated Scheduling System

The organizer of sport events often facing problems such as wrong calculations of marks and scores, as well as difficult to create a good and reliable schedule. Most of the time, the issues about the level of integrity of committee members and also issues about errors made by human came into the picture. Therefore, the development of sport tournament automated scheduling system is proposed. The system will be able to automatically generate the tournament schedule as well as automatically calculating the scores of each tournament. The problem of scheduling the matches of a round robin and knock-out phase in a sport league are given focus. The problem is defined formally and the computational complexity is being noted. A solution algorithm is presented using a two-step approach. The first step is the creation of a tournament pattern and is based on known graph-theoretic method. The second one is an assignment problem and it is solved using a constraint based depth-first branch and bound procedure that assigns actual teams to numbers in the pattern. As a result, the scheduling process and knock down phase become easy for the tournament organizer and at the same time increasing the level of reliability.


Introduction
Over the last decade, interest in sports has increased tremendously.This is because sports helps to improve and maintain physical fitness, as well as provides entertainment to participants.There are many sports activities that are organized in schools, colleges, universities and also professional levels.Most of the time, sports start becoming very popular during college or university level since this is considered as the amateur phase.A schedule for sports tournament is a must when organizing any sports event at any level.Moreover, the tournament needs to be completed within a specific timeframe.Hence, the problem of sports tournament scheduling is of interest and the focus of this research proposal.A sports tournament scheduling is defined as the process of assigning essential sport activities in sequence with the time needed to complete each activity [1].It is a challenging task due to the wide variety of different needs and requirements that must be taken into consideration, either at professional or amateur level [2][3][4][5][6][7][8][9][10].The inefficiency of the solution, which is the tournament's schedule, normally exists when these requirements are not met and time consumed in constructing the schedules is relatively long.Hence, the search for the best and ideal solution approach is never ending.
Most of the time, the organizer of sports tournament faced problems on managing the schedule of the games involved in the round robin phase which will then lead to knock out phase [5] [8].The organizers will be responsible for coming out with a schedule before the tournament takes place, and then the organizers also need to calculate the mark and provide the standing result.All this while, the process of creating the schedule, providing the score sheet as well as standing result is being done manually by the organizer using manual spreadsheet.This will lead to problems such as wrong calculations of scores are being made, and the level of integrity of organizing committee is also being questioned.
Therefore, the development of web-based intelligent sports scheduling system is proposed.The system is expected to be able to automatically generate schedules for sport tournament and also auto calculate the marks and scores for these tournaments.In most of the sport tournaments, there are two parts of scheduling; round robin and knock out phase.The problem of scheduling the matches for the round robin and knock out phase in a sport league will be tackled.The intelligent scheduling system can be used to auto generate sport scheduling for any sport tournament.In most of the sport tournaments, there are two parts of scheduling; round robin and knock out phase.A round-robin (or all-play-all tournament) is a competition in which each contestant meets all other contestants in turn [5] [8].In a single round-robin schedule, each participant plays every other participant at least once.A knockout tournament or elimination tournament is divided into successive rounds; whereby each competitor plays in at least one fixture per round.The top-ranked competitors in each fixture progress to the next round.As the rounds progresses, the number of MATEC Web of Conferences 150, 05027 (2018) https://doi.org/10.1051/matecconf/201815005027MUCET 2017 competitors and fixtures decreases.The final round, which is usually known as the final or cup final, consists of only one fixture; the winner of which is the overall champion.To the best of knowledge, there is no such system which caters both processes (auto scheduling for round-robin and knock-out).Teams will be placed automatically in the schedule.Based on the auto scheduling system, scores will be keyed-in and the system will automatically calculate the points based on rules that have been pre-identified to determine the qualified team for next round.

Methodology
The development of the Sport Tournament Automated Scheduling System involves four phases, which are requirement identification phase, initial prototype development phase, prototype review phase, as well as revision and enhancement phase.
In the requirement identification phase, the user of the system will need to provide the name of the teams that will be involved in the tournament.Then, the system will automatically check for the duplicate teams' name (if any).There should not be any duplication of the teams' name.If the duplication occurs, the system will require the user to insert the team's name again before allowing proceeding to the next step.
It is assumed that altogether; there will be eight teams involved.The system will automatically generate groups if all eight teams' name have been entered correctly and saved to the system.Group generation process should be done by randomly choosing the names from the participating teams.The teams will be divided into two groups with each group having four teams.
Next process is generating the match schedule within the group.This process use round robin algorithm whereas it is assumed that there are enough fields or courts so that all the games in a round can be played simultaneously.If N is the number of competitors, then a round robin tournament requires (N -1) rounds of games.Therefore, the time needed for the whole round robin tournament to complete is depending on the number of team or player.If the number is large, therefore it needs more time to complete the whole tournament with the condition that the number of courts or fields are enough.The number of teams (N) in round robin algorithm is fixed to four teams since the number of teams per group is also four.Team array is rotated every time after matches for each round is done.The algorithm resulting each team will be playing the match within three round with each round is with different team in a group.
The score for each team need to be keyed into the system in the results' table after the completion of each match.The user only need to fill in the section of the table noting the scores and the rest of section consisting the total and respective calculation will be automatically filled up by the system with respect to the inserted score.
The next process is calculating the total score of the teams.There are three rules applied in order to calculate the score.The team will get 2 points when winning the match, 0 point if losing it and 1 point if there is a draw.Then the points will be combined together to get the total marks.Once the total mark has been calculated, the standing of the team within the group will be shown according to the total mark.
The first and second runner-up from each of the group will be taken to the next process which is known as knock-down round.In this process, the first runnerups of the group will be match with second runner-ups of the other group and vice versa.Their score will be inserted after this round and the schedule of the next match will be generated based on single elimination algorithm.This algorithm allows only one match to be held.If the team has higher score, then the team will be proceeding to the next match.On the other hand, the losing team will be eliminated.The match will be considered finished when the winner has been determined.The overall flow of the complete process is shown in Figure 1.

Fig. 1. Flowchart of methodology 3 Results
The system is developed using Microsoft Visual Studio 2015.This software is one of web developer platforms.Microsoft Visual Studio is an integrated development environment (IDE) from Microsoft.It is use in development of console and graphical user interface applications along with Windows Forms or WPF applications, web sites, web application and web services.
Figure 2 shows the interface for providing the name of the teams that will be involved in the tournament.If there is any duplication of names, the system will give alert as shown in Figure 3.There are 5 tabs on this form which are teams, groups, schedule, result and knockdown round.4 shows the interface for generating groups for the participating teams.In this example, there are eight participating teams, so two groups are created with each group consisting of four randomly selected teams.

Fig. 4. Random group generation
The system will then proceed to generate the schedule for the participating teams within each group by applying the round-robin algorithm.Figure 6 shows the example of schedule that has been generated for all eight teams.

Fig. 5. Schedule generated from participating teams
Along the way of the tournament, the organizer will fill in the scores for each of the match, as shown in Figure 6.The total score and team standing will be automatically generated by the system.Each of the group will have their own standing separately.Figure 7 shows the process during knock-down round.The first and second stander from each group previously will be displayed here automatically.The organizer then can insert the score after each match along the way of going to the final match.

Conclusion
In this paper, a sport scheduling system has been developed which is suitable for almost all type of sport tournament.This system has been designed based on Round Robin Scheduling Algorithm.In this algorithm every team plays against every other teams during the tournament and has equal chances against all other opponents.In Round Robin Algorithm, it is assumed that there are enough fields or courts so that all the games in a round can be played simultaneously.If N is the number of competitors, then in round robin tournament requires (N -1) rounds games.Therefore, the time needed for the whole round robin tournament to complete is depending on the number of team or player.If the number is large, therefore it needs more time to complete the whole tournament with the condition that the courts or fields are enough.
Another well-known type of tournament formats that sport schedulers used is the Single Elimination Tournaments.In this tournament, each player or team can defeat and eliminate a player or team from the tournament in just one match.A weak player can easily be defeated by a stronger player and eliminated from the tournament without given chances to play against other players.Therefore, this type of tournament is mainly depended on luck and not giving equal chances for all the players.However, time needed to complete a single elimination tournament is much shorter than a round robin tournament because one match is enough to determine the winner in the single elimination compared to the round robin which needed multiple matches to determine the winner.
In the future, the system will be expanded to include more types of tournament, with many more ways of score calculation.There are many variations in the way of sports handling and it is aimed that this system will be able to address as many way possible to accommodate the need of organizing sports tournament easily and effectively when it comes to scores calculation.The algorithms of how the scheduling is done also will be detailed out further.The authors also would look into constraints that are currently existing for creating this scheduling for some types of sports, if any, so that the problem can be overcome.

Fig. 3 .
Fig. 3. Alert given on duplicate name of teams

Figure
Figure4shows the interface for generating groups for the participating teams.In this example, there are eight participating teams, so two groups are created with each group consisting of four randomly selected teams.