CONSTELLATION
Glossary
Growing a Language, by Guy Steele
Sports scheduling
Sport season
Sport Club
Scenario and workflow
Unique competition name
Competition SchemeCode
Competition division
Slot number
Sport Schedule Constraints
XY binding-constraints
Types of constrained teams in Constellation Graph
Balanced Round Robin
What is fixture
Constraints and preferences
Literature
Literature on Sports Scheduling
Basic Scheduling Terminology
CONSTELLATION GRAPH
Constellation Census
Constellation Iustitia
Constellation Gare
Rimborsi arbitrali AIA
Griglie AS400
Manuale AS400
Glossary  
Glossary
CONSTELLATION - GLOSSARY, TERMINOLOGY and NAMING CONVENTIONS


Glossary
Glossary
CONSTELLATION - GLOSSARY, TERMINOLOGY and NAMING CONVENTIONS
by John Jan Popovic

Here we have assembled a glossary, a common body of knowledge and professional jargon that is used in the CONSTELLATION system.

A glossary, also known as a vocabulary is a list of terms in a particular domain of knowledge with the definitions for those terms. A glossary includes terms within that domain of knowledge that are either newly introduced, uncommon, or specialized words used in the CONSTELLATION system.

Fine glossary is an important basic linguistic tool for expressing and communicating precise ideas while avoiding ambiguities. Mathematics and Computer science are often used to quantify and model what would otherwise be poorly understood phenomena.

The CONSTELLATION is not just new system, it represents a NEW way of thinking about about notions, issues and ideas related to problem of scheduling the matches of a round robin competitions for a sport league.

When we started to build the CONSTELLATION system, the whole operation from the registration of clubs, teams and championships up to processing of the calendar fixtures of the competitions, it was not yet fully understood, and many activities were too vague and not well structured and ill-defined. We have applied a strict formalism during the lexical definition of glossi having a conception of mathematics as a tool for the interpretation of reality.

However, as an activity carried out by humans for humans, one can and does take advantage of imprecision of normal human conversation: using ambiguous notation, omitting particular cases that are vaguely similar and missing details. The computational machines that mediate activity by humans for humans in computer science introduce an element of forced precision. The computer does not tolerate vague descriptions or incomplete constructions.

"A clear separation of concerns emerges: we might call them the mathematical concerns about correctness and the engineering concerns about efficiency.
... the discovery how to separate them rigorously in our thinking is relatively young, and even when aware of this possibility, we often fall back into our old bad habits.
The purpose of abstraction is not to be vague, but to create a new semantic level in which one can be absolutely precise. Correctness Concerns and, Among Other Things, Why They are Resented."
E. W. Dijkstra

On a regular basis people have a very hard time to not talk in terms of implementation details. They mostly lack shared concepts, methodology, and terminology to do other than code (and maybe draw a class diagram).

We address the problem of scheduling the matches of a round robin tournament for a sport league. We formally define the problem, state its computational complexity, and present a solution algorithm using a gradual approach.
The first step is the creation of a competition pattern and is based on known graph-theoretic results. 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.

Practical results show that the optimal solution of the assignment problem can be found in reasonable time, despite the fact that the problem is NP-complete.

-------------------------------------------------------------------------------------
Compulsory Constraints (requirements) and Desired Constraints (wishes)
-------------------------------------------------------------------------------------
We deal with the problem of finding a schedule for a round robin championship with various types of constraints, including availability for matches and venues/stadia. For example, a constraint can state that a team must play home in a given round, or any defined pair of teams cannot match at a specified round.

Constraints are split into hard (requirements) and soft ones (wishes): Hard constraints must necessarily be satisfied by the solution, soft ones instead are associated with a penalty, and they contribute to the objective function to minimize.
The constraint programming approach achieves optimal solutions for problems (competitions) with up to eighteen teams, and near-optimal solutions for problems with more than 1000 teams.

A graph model is presented for constructing sport events calendars for sports leagues where balancing requirement have to be considered with respect to the different venues where competitions take place.
--------------------------------------------------------------------------------------------------------

Here we have assembled a glossary, a common body of knowledge and professional jargon that is used in the CONSTELLATION system. The glossary described here there is a common understanding of what is being discussed.

When we started to build the system, the whole operation from the registration of clubs, enrollment of teams to championships (census) to the establishment of the schedulers/calendars of the competitions, it was not yet fully understood, and many terms were too vague and not well structured and ill-defined.
In Constellation we have applied a strict formalism during the lexical definition of glossi having a conception of mathematics as a tool for the interpretation of reality.

-------------------
Sport Club
-------------------
Sports Club is an association or corporation that in ICT terms is recorded as a set of groups of data, reports and other relevant information.
Sports Club is composed of various sets of data and at the time of inscriptions the Clubs will have to provide to the committee / delegation of the sport federation responsible for the organization of the competitions of the season the following data:
a) Corporate Information and Sports Club details (name, address, club/colors, etc.)
b) Sports Fields
c) the list of members of the Board of Officials (managers and technicians)
d) the list of teams enrolled in competitions of the season with
e) the roster of athletes from each team
f) scheduling constraints and timetable-preferences of each team -- Constellation graph

-----------------------
Team
-----------------------
A sports club team of one particular competition is uniquely defined at the time of inscription - enrolment, and here we have an example of a team:
....................................................................
a) Club: Lombardia Uno
......................................................
b) PARAMETRI COMPETIZIONE
COMPETIZIONE: Allievi Regionali Professionisti fascia B
SETTORE: SETTORE GIOVANILE E SCOLASTICO
LEGA o DIVISIONE: LEGA NAZIONALE PROFESSIONISTI
ATTIVITÀ: Calcio a 11
CATEGORIA: Allievi
COMPETIZIONE: Campionato Regionali Allievi fascia B
GERARCHIA: 15.2

..............................................
c) TEAM-LETTER : [C]
A club may have more than one team in the same competition.
If this is the case to the name of the team is added TEAM-LETTER in brackets [], in order to make the distinction between the teams of the same club enrolled in the same competition.

......................................................................................................
d) DELEGATION/COMMITTEE OF SPORT JURISDICTION: LOMBARDIA

..........................................................................................
e) Team athletes/ Player roster

----------------------------------------------------------
TEAM Naming Convention Format:
----------------------------------------------------------
Lombardia Uno. Allievi. fascia B. (Lombardia). [C]
CLUB. COMPETITION. (JURISDICTION). [TEAM-LETTER]
The name of a team is composed of the four different parts:
a) CLUB: Lombardia Uno
b) COMPETITION: Allievi fascia B
c) JURISDICTION: (Lombardia) – optional
d) TEAM-LETTER: [C] – optional

A club may have more than one team in the same competition. If this is the case to the name of the team is added TEAM-LETTER in brackets [], in order to make the distinction between the teams of the same competition, which are of the same club.
..................
Twin teams
..................
When a club has more than one team of the same competition, to make the distinction between the teams so-called "twin-teams", to the name of the team is added TEAM-LETTER. Sometimes the letters can be replaced with numbers.

--------------------------------------------------------------
TUTTE LE COMPETIZIONI DI UNA CATEGORIA
--------------------------------------------------------------
Categoria ● età ● numero giocatori ● (Comitato) ● [Girone]
Naming Conventions for competitions of a category.
In the context of a category may be formed different competitions.
The exact name of the competition depends on the following four (sometimes five) constituent parts:
a) The name of the category: Juniors
b) The age of the players: it can be the same or mixed
c) The number of players: an odd number which can vary from 5 to 11 * 5, 7, 9, 11
d) Membership territorial - Delegation (or Committee) of expertise: (National, Interregional, Regional or Provincial / Local)
e) Round of Competition: A, B, C...
Following is an example relation that respects the "naming convention" of some competitions of the category Juniors for the season 2011-2012.

Category ● age ● number of players ● (Committee) ● [Division]

Esordienti ● II Anno 2000 ● a 11
Esordienti ● II Anno 2000 ● a 11 c.r.
Esordienti ● Misti 2000_1 ● a 11
Esordienti ● II Anno 2000 ● a 9
Esordienti ● Misti 2000_1 ● a 9
Esordienti ● I Anno 2000 ● a 9
Esordienti ● Misti 2000_1 ● a 7
Esordienti ● I Anno 2000 ● a 7 ● (Milano)
Esordienti ● I Anno 2000 ● a 7 ● (Lodi)

You may notice that the territorial component of the name of the competition (Delegation or Committee of competence) is purely optional, only serves to create the distinction and eliminate ambiguity.
-------------------------------------------------------------------------------------------------
First Team
----------------------
Una Società Sportiva può avere una e solo una Prima squadra univocamente determinata al momento dell’ iscrizione (annuale) delle squadre ai campionati.
.

-------------------------------------------------------------------------
Division, or sometimes Group, League (Serie A, B, C in Italy)
-------------------------------------------------------------------------
Often the number of teams enrolled in a Competition can be so great that it becomes impractical that teams play in a league all together (all - against - all).
For that reason the competitions are held in smaller groups, also called divisions.

When teams of a competition are divided into groups, they try to respect the criterion of geographical proximity, or you try to assign the same division the teams closest to each other, or of the same geographical area.

So if in a league are recorded 151 such teams, the league you can play in 10 DIVISIONS with 16 TEAMS, and there is present a BYE-team in nine divisions.

----------------------------------------------------------------------
Play-off or finals
----------------------------------------------------------------------
The champion teams would advance to the play-offs to a new superior division of the playoffs or higher category.

The playoffs, postseason and/or finals of a sports league are a competition played after the regular season by the top competitors to determine the league champion or a similar accolade. Depending on the league, the playoffs may be either a single game, a series of games, or a tournament, and may use a single-elimination system or one of several other different playoff formats. Playoff, in regard to international fixtures, is to qualify or progress to the next round of a competition or tournament.

The top teams with the best records in the season get a first round BYE, and each of the bottom two division winners plays one of the two wild-card.

------------------------
"wild card" teams
------------------------
Any division-winning team is eligible to participate in playoffs. As playoffs became more popular they were expanded to include second -- or even lower-placed teams – the term "wild card" refers to these teams.

----------------------------------------------------------------------
Bye team or sometimes Dummy team
----------------------------------------------------------------------
Often when there is splitting of all the teams in a Competition Divisions, one can not always subdivide it into groups, where the number of teams in the group is equal. To solve this problem it becomes necessary to introduce the concept of BYE Teams.
For example, if in a league are enrolled 151 such teams, the league you can play in 10 DIVISIONS with 16 teams, while in 9 divisions is present so-called BYE Team.

(151 actual teams + 9 bye teams + = 10 divisions * 16 teams)

In the division where there is BYE team, teams play 14 rather than 15 matches in the season. In a Group may be present at most two BYE teams. When in the division is present BYE team, in each of 15 rounds of that season, there will be one team that gets a BYE round -- one time in a season.

The team with the best records in the previous season get a first round BYE.
-------------------------------------------------------------------------------------------------
Round or Match Day
----------------------------------------

If the number of teams in a division is n (for example n=16), the competition takes place in n-1 (15) match-days. Usually the shift between the two consecutive games (match days) is one week.

-------------------------------------------------------------------------------------------------
Official hours of the competition fixtures
--------------------------------------------------
Each competition has a predetermined timetable of the game. However, the match time can sometimes be different from the official time, or one can say that there is a list of the official timetable of second or even third grade.

Any timetable or scheduler adjustments during the course of the competitions will be promptly reported to the Committee for the necessary correction of the fixtures calendar.


--------------------------------------------------------
Official week-day of event
--------------------------------------------------------

Each competition has a week-day defined in advance for all events of a competition. Any deficiencies detected during the course of the competitions will be promptly reported to the Committee for the necessary correction.

-------------------------------------------------------------------------------------------------
The team's slot-number in division
-------------------------------------------------------------------------------------------------
For example, if the number of teams in a division of a particular league is 16, (code-pattern F0 or F6) the competition takes place in 15 match-days. Each of the 16 club-teams assigned to this division must have a unique slot-number in division from 1 to 16. The assignment of the team's slot-number determines a unique fixture scheduler.
Fixture defines who is playing with who and where and when.
(Balanced ROUND ROBIN)
Nota bene:
The total number of possible permutations in this example is 16 !. (sixteen factorial) 16! = 2.09227899 × 1013, more than 20 trillion possible permutations.

-------------------------------------------------------------------------------------------------
Scheme-Code scheduler convention
-------------------------------------------------------------------------------------------------


SchemeCode is a scheduler convention that allows immediate definition of the course of encounters/games among teams in the league for every single round. The unique slotNumber is associated to each team in the league/division.

SchemeCode is a two characters scheduler convention formed by: LETTER + NUMBER
The LETTER in the Scheme code is exclusively determined by the number of teams in the league.
LETTER: X (2 teams), Q (3/4 teams), L (5/6 teams), I (7/8 teams), A (9/10 teams), C (11/12 teams), E (13/14 teams), F (15/16 teams), G (17/18 teams), H (19/20 teams) NUMBER: Code6 or code0 determine two complementary series of encounters/games. The 0-series and the 6-series of scheduler slots are differed from each other for a different and mutually complementary cadence of the pair of encounters Home/Away.


-------------------------------------------------------------------------------------------------
ASSIGNMENT- COMPOSITION OF DIVISIONS
-------------------------------------------------------------------------------------------------
Constellation Software allows to assignment of teams to a particular division, where each team has a unique SLOT number in the division/group.
The operator can manipulate the slot-number and the division of the team. Constellation automatically creates the scheduler/calendar, using the Balanced Round Robin algorithm.
Division's SchemeCode will determine the exact parameters of the Balanced Round Robin algorithm. The Home / Away cadence of conducting matches depends on the slot-number, uniquely associated to each team in the division/group.
-------------------------------------------------------------------------------------------------

Calendario incontri di una particolare Competizione
Il calendario incontri è un elenco di tutte le partite del campionato di una competizione.
I Calendari descrivono tutte le partite del campionato: (Chi gioca, Dove si gioca, Quando si gioca)
a) Elenco squadre che competono tra loro (la Società ospitante e la Società ospitata),
b) Elenco Campi Sportivi dove si gioca,
c) Giornata quando si gioca (Giorno, data e orario di gara)

-------------------------------------------------------------------------------------------------
Competition start – home / away teams
-------------------------------------------------------------------------------------------------
Se ad esempio il numero di squadre in un girone di un particolare campionato è 16 (n), esistono 8 (n/2) squadre ospitanti e 8 (n/2) ospitate in una qualsiasi giornata di gara.
Le squadre ospitanti giocano in CASA, mentre quelle ospitate FUORI casa, ovvero in TRASFERTA.
Per esempio la disposizione del numero di griglie della PRIMA GIORNATA, per il CODICE 6..
Home : Away
01 : 07
02 : 06
03 : 05
04 : 08
Nel calendario della prima giornata di gara le squadre in colonna sinistra: 01,02,03 e 04 giocano in CASA, contro le squadre nella colona destra: 05, 06, 07 e 08, che giocano in trasferta (FUORI casa).
Per il CODICE 6, Le squadre ospitanti hanno Numero di GRIGLIA BASSO e giocano in CASA (vale solo per la prima giornata del campionato)
Per il CODICE 6, Le squadre ospiti hanno Numero di GRIGLIA ALTO e giocano FUORI casa (vale solo per la prima giornata)
Quindi, se si conosce il NUMERO DI GRIGLIA e la SCHEMA CODICE, univocamente si può determinare il valore di INIZIO (CASA, FUORI casa). Ovvero si può dire che l’INIZIO è una funzione di due variabili: il NUMERO DI GRIGLIA e lo SCHEMA CODICE.

-------------------------------------------------------------------------------------------------
Home/away binding constraints
-------------------------------------------------------------------------------------------------
Per le squadre si dice che sono ABBINATE (annotazione X), quando giocano in CONCOMITANZA nella stessa giornata. Vale a dire giocano tutte in trasferta (FUORI) oppure tutte in CASA. Mentre, per le due squadre si dice che sono ALTERNATE (annotazione Y), solo se nella stessa giornata, una squadra gioca in casa, mentre l’altra gioca in trasferta.
alternate binding = Y
concomitant binding =X
NOTA BENE: NON esiste NESSUN rapporto tra l’ABBINAMENTO e l’INIZIO
Anche se a qualcuno può sembrare contro-intuitivo, il concetto di ABBINAMENTO della squadra comunque NON è correlato in nessun maniera con il concetto d’INIZIO. Quindi, una squadra può avere l’inizio a casa e può essere abbinata, oppure alternata, oppure avere nessun abbinamento con un’altra squadra.

-------------------------------------------------------------------------------------------------
XY Constraints
-------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------
Squadre VINCOLANTI (MASTERS) e quelle VINCOLATE (SLAVES)
--------------------------------------------------------------------------
Per le squadre di alcune società, le posizioni delle griglie in girone non possono essere sempre arbitrarie. Per una squadre si dice che è la squadra MASTER (squadra VINCOLANTE) di una o di più corrispettive squadre slaves (vincolate), se è in abbinamento o alternanza (X oY) con loro. Se la griglia - il numero della posizione della squadra in girone - è vincolata (oppure arbitraria), si vede nel CONSTELLATION GRAPH, (Censimento - Desiderata Campi) e può essere correttamente calcolato solo se la squadra master è già stata assegnata, ovvero solo se esistono tutti i dati per effettuare l’algoritmo Codegoni.
Vale a dire che la posizione della griglia di una squadra è vincolata (slave) in abbinamento oppure alternanza, rispetto a una altra squadra di una squadra VINCOLANTE (master).
A questo punto la posizione dellagriglia vincolata in un girone (e la sequenza delle griglie di seconda scelta), della squadra di categoria inferiore dipende da sei parametri. (i dati dell’input del calcolo Codegoni)
Primi tre parametri sono i parametri della squadra master (VINCOLANTE), che è già stata previamente assegnata. Comunque si può procedere con la composizione dei gironi, solo se sono in anticipo definiti ognuno dei questi tre parametri.
1) Schema codice superiore
2) Numero griglia superiore
3) Abbinamento tra le squadre: (X,Y) tra la squadra inferiore e quella di categoria superiore
Seguenti tre parametri si stabiliscono in automatico durante il processo di SUDDIVISIONE della competizione nei gironi.
4) Schema codice (inferiore) della competizione che si sta creando:
5) Spostamento n. Settimane: (numero tra -8 e +8 settimane)
6) Spostamento rispetto ai gironi di: (andata o ritorno)
Raramente si sceglie il ritorno, e solo quando le partite di ritorno della squadra master (VINCOLANTE) avvengono nello stesso periodo dell’anno con delle partite di della squadra slave (vincolata). In questo caso le partite della squadra master (VINCOLANTE) si giocano nei stessi giorni in cui le squadre vincolate giocano le partite di andata.
Master Binding Constraints
Slave Binding Constraints
Una squadra slave, può avere una e solo una squadra master corrispondente.
Mentre una squadra master può avere le tante squadre slaves, dello stesso o inferiore livello gerarchico, sia della stessa società, sia delle società esterne.
---------------------------------------------------------------------------------------------------
---------------------------------
CONSTELLATION GRAPH
---------------------------------
Per risolvere dei problemi di ambiguità e di incompletezza della struttura dei dati nel modulo Desiderata Abbinamenti e dei Impegni sui Campi (giorno e ora), da me è stata inventata una dinamica struttura dati denominata CONSTELLATION GRAF che contiene tutte le informazioni chiare e non ambigue relative alle squadre della società sportiva, dove già in anticipo molti dei dati utili si trovano già automaticamente inseriti, che in gran lunga facilita la compilazione del modulo.
In più nel Constellation Graf sono presenti molti altri dati utili, relativi alle squadre, che consentono una facile manipolazione dei impegni delle squadre sui campi sportivi e la definizione univoca e non ambigua degli abbinamenti tra le squadre.
Il Constellation Graph non è solo un’interfaccia dinamica, un elenco ordinato delle squadre rappresento come tabella, in cui si possono facilmente manipolare i giorni della settimana e gli orari preferenziali delle partite delle squadre sui campi;
Il Constellation Graph inoltre ha una interfaccia intelligente con una sintassi formale che consente una precisa definizione dei desideri dei abbinamenti tra le squadre che giocano nella stessa giornata, anche tra le società diverse.
Il Constellation Graph di una società può essere riordinato ed elaborato ulteriormente e i risultati di questa elaborazione che visualizzano gli abbinamenti tra le squadre delle società diversi possono essere re-inseriti nei loro Graphs automaticamente.
---------------------------------------------------------------------------------------------------
-------------------------
Multigraph Link - MGL
-------------------------
Multigraph link è la struttura dati presente nel CONSTELLATION GRAPH che descrive gli abbinamenti tra le squadre delle diverse società. Esistono i due tipi di Multigraph link, ed entrambi si trovano nel campo NOTE: (MGL_SLAVE) e [MGL_MASTER]. (Master MGL) è descritto tra le parentesi tonde () e deve essere inserito manualmente dal operatore, mentre lo [SlaveMGL] è descritto tra le parentesi quadre, ed è definito in automatico dal sistema.
# Multigraph MASTER SYNTAX
(matricola_slave:abbinamento:elenco_squadre)
# Multigraph SLAVE SYNTAX
[675630:y:3:6:E0:24.1] = =
[matricola_master:abbinamento:nodo_master:griglia_master: schema_master: gerarchia_master]
---------------------------------------------------------------------------------------------------
CAMPO & METÀ-CAMPO
Una partita può giocarsi:
su campo normale (11 giocatori per squadra)
su campo ridotto (5,7 o 9 giocatori per squadra)
Nello stesso orario le due partite dei pulcini a 5 o a 7 possono giocarsi sulle due metà di un campo regolamentare, mentre nel caso di competizioni a 9 ciò non è possibile.
Le Categorie PULCINI e alcune competizioni degli ESORDIENTI utilizzano campi di dimensioni inferiori, perché le squadre hanno 5 o 7 giocatori (codice campo 5000 e 7000). Si può utilizzare anche la metà di un campo regolamentare.
---------------------------------------------------------------------------------------------------
Scheda Impegni Campo Sportivo
-------------------------------------------------------------------------------------------------
La Tabella Impegni Campo serve per una facile visualizzazione della disponibilità dei campi e del loro rispettivo utilizzo (giorno e orario) dalle squadre delle diverse competizioni, che giocano nello stesso campo sportivo. I dati dei Impegni Campi si generano e aggiornano automaticamente in ogni momento quando si modifica il CONSTELLATION GRAPH e quando si creano dei Calendari di Competizioni delle diverse Categorie.
La Scheda Campo riporta tutti gli’impegni delle squadre descritte nel CONSTELLATION GRAPH, al momento dell’ iscrizione, e solo gli orari delle gare possono essere modificate in seguito, mentre la modifica del giorno settimanale non è raccomandabile.
---------------------------------------------------------------------------------------------------
Competizioni: Campionati, Coppe & Tornei
Competizione > Coppa
La coppa è un competizione che si svolge come un torneo ad eliminazione diretta con accoppiamenti completamente casuali – (a volte, esistono delle teste di serie che non si devono incontrare tra loro nei primi turni). Il sorteggio determina anche quale squadra giocherà in casa. Se la partita finisce in parità, viene solitamente rigiocata sul campo dell'altra squadra (vedi replay) sebbene sia possibile per le squadre accordarsi in anticipo di non rigiocare, in tal caso la partita iniziale prevedrà tempi supplementari e tiri di rigore se necessario. Le ripetizioni in caso di pareggio prevedono oggi tempi supplementari e tiri di rigore, benché in passato più ripetizioni fossero possibili e alcuni pareggi abbiano richiesto più di sei partite per decidersi.
.
Turni
Torneo ad eliminazione si gioca nei diversi turni, il cui numero dipende dal numero di squadre partecipanti.
.
Competizione > Campionato
Il campionato è una competizione sportiva riservata alle squadre di una categoria sportiva gestite da un comitato o da una delegazione sportiva. Si articola in formula all'italiana di partite di andata e ritorno ed è composto da diversi livelli (serie). Tutte le squadre appartenenti a una serie, giocano in un girone unico composto da massimo 20 squadre.
Molte volte il numero di squadre appartenenti a una Competizione di una Categoria può essere così grande, che diventa impraticabile che le squadre giocano tutte insieme in un campionato (tutti – contro – tutti), per ciò le partite si svolgono nei gruppi più contenuti, cosi detti GIRONI. Tutte le squadre appartenenti a una Competizione (Categoria, Attività, Lega o Divisione, Comitato di competenza) quali partecipano ad un Campionato, sono suddivise nei gruppi di 6,8,..,18, 20 squadre che giocano tra loro nello stesso girone.
Quando le squadre di una competizione si suddividono nei gironi, si cerca di rispettare il criterio di vicinanza geografica, ovvero si tenta ad assegnare nello stesso Girone le squadre più vicine della stessa zona geografica.
Ad esempio, se in un campionato sono iscritte ad esempio 151 squadre, il campionato si può giocare in 10 GIRONI con 16 squadre, dove nei 9 gironi esiste la squadra a riposo.
Tutti i campionati prevedono la formula di play-off e play-out.
.
Campionato Italiano di calcio a 5
Il Campionato Italiano di Calcio a 5 è una competizione sportiva italiana riservata alle squadre di Calcio a 5 gestito dalla Divisione Calcio a 5. Si articola in formula all'italiana di partite di andata e ritorno ed è composto da 3 categorie: serie A1, serie A2, serie B. La serie A1 è a girone unico composta da 14 squadre, la serie A2 è divisa in due gironi, girone A e girone B rispettivamente centro-nord e centro-sud composti ciascuno da 14 squadre, la serie B è composta da 6 gironi, girone A,B,C,D,E,F. Tutti i campionati prevedono la formula di play-off e play-out. È prevista anche la competizione della Coppa Italia di serie A1, A2,e B, che dal 2005 è prevista in final8 per tutti e 3 i campionati nazionali.
.
Derby
Il termine derby viene utilizzato, in ambito sportivo, per contraddistinguere alcuni eventi che destano particolare importanza.
L'origine del termine derby è alquanto dibattuta. Una ipotesi la fa risalire alla competizione tradizionale tra le due squadre della città inglese di Ashbourne nel Derbyshire. Un'altra teoria afferma che l'origine del termine sia da rintracciarsi nella corsa equestre inglese chiamata The Derby, ideata dal XII conte di Derby nel 1780.
In ambito calcistico ed anche per altri sport, si usa il termine derby per definire sfide tra squadre della stessa città (stracittadine) o della stessa zona geografica. Il termine viene anche usato per gare che oppongono squadre che, per questioni geografiche, sociali o politiche hanno fra loro una rivalità storica molto accesa.
.
Coppa del Mondo per club FIFA
La Coppa del Mondo per club FIFA (ing. FIFA Club World Cup) è una competizione calcistica riservata alle squadre vincitrici dei tornei continentali organizzati dalle sei confederazioni appartenenti alla FIFA e mette in palio il titolo di campione del mondo per club.
L'attuale formato del Campionato mondiale per club, in vigore dall'edizione 2007, prevede un turno eliminatorio preliminare tra la squadra vincitrice della OFC Champions League - che non ha più l'accesso diretto nel torneo - e la squadra campione della J League giapponese. La vincente di questo turno si aggiunge alle squadre vincitrici dei tre tornei continentali di Nord-Centro America, Africa e Asia. Con queste quattro squadre sono creati due accoppiamenti eliminatori, che costituiscono il primo turno, determinati per sorteggio. Alle semifinali accedono i vincitori del primo turno e, di diritto, i detentori dei trofei continentali di Europa e America del Sud. Oltre alla finale per il primo e secondo posto è previsto lo svolgimento della finale per il terzo e quarto posto. Nel 2005 e nel 2006 si è disputata anche la finale per il quinto posto.
Il regolamento prevede che, qualora la vincitrice dell'AFC Champions League sia giapponese, il posto della vincitrice della J League sia preso dall'altra finalista dell'AFC Champions League. Questa eventualità è occorsa nell'edizione 2007 cui è stata ammessa oltre alla vincitrice, l'Urawa Red Diamonds, anche la finalista dell'AFC Champions League 2007, gli iraniani del Sepahan chiamati a scontrarsi con la squadra campione in carica dell'OFC Champions League.
---------------------------------------------------------------------------------------------------
Diritto Di Classifica
La società che iscrive più squadre deve indicare prima dell’inizio del campionato la squadra con diritto di classifica, le altre non ce l’avranno.
Nel sistema Constellation, solo la SQUADRA [A] il diritto di classifica.
Le società possono partecipare al torneo con una o più squadre della stessa COMPETIZIONE.
La regola è che per ogni girone ci può essere solo una squadra della stessa società, tuttavia si può concedere una deroga in casi eccezionali.
La società che iscrive più squadre deve indicare prima dell’inizio del campionato la squadra con diritto di classifica, le altre non ce l’avranno.
La partecipazione al Campionato Nazionale Allievi e/o al Campionato Regionale Allievi preclude il diritto di classifica a tutte le squadre della stessa società iscritte al Campionato Provinciale.

---------------------------------------------------------------------------------------------------
SchemeCode of the division
--------------------------------------------------------------------------------------------------
Division's SchemeCode è una sigla formata da due caratteri: una LETTERA e un NUMERO.
Schema (lettera) dipende dal Numero_di_Squadre_nel_Girone, mentre il Codice (Numero) specifica la cadenza della coppia di incontri Casa/Fuori nelle diverse giornate di gara. Lo Schema-Codice è una convenzione dalla FederCalcio Italiano.
LETTERA / SCHEMA: (dipende dal Numero_di_Squadre_nel_Girone)
X (2 squadre),
Q (3/4 squadre),
L (5/6 squadre),
I (7/8 squadre),
A (9/10 squadre),
C (11/12 squadre),
E (13/14 squadre),
F (15/16 squadre),
G (17/18 squadre),
H (19/20 squadre)
NUMERO / CODICE:
Codice_6 e codice_0.
Le due serie di griglie si diversificano fra loro per una diversa cadenza della coppia di incontri Casa/Fuori.
CODICE 6
Per il CODICE 6, Le squadre ospitanti hanno Numero di GRIGLIA BASSO e giocano in CASA (vale solo per la prima giornata del campionato)
Per il CODICE 6, Le squadre ospiti hanno Numero di GRIGLIA ALTO e giocano FUORI casa (vale solo per la prima giornata)
CODICE OTTIMALE
La scelta del CODICE (0 oppure 6) non è sempre arbitraria. Quando l’operatore del Constellation effettua la suddivisione della competizione nei gironi, e solo nel caso in cui esistono delle squadre di questa competizione che deve essere suddivisa nei gironi, in abbinamento con delle altre squadre delle competizioni già configurate ed assegnate previamente (le cosiddette competizioni superiori) la scelta del codice ottimale dipenderà:
a) dalla data d'inizio di competizione superiore (prevalente) in abbinamento
b) e dallo schema-codice di competizione superiore prevalente
Ovviamente, l'operatore deve stabilire previamente quale è la DATA della prima GIORNATA DI GARA del girone d’andata, per la COMPETIZIONE in formazione.
Una volta decisa la DATA D'INIZIO della prima GIORNATA DI GARA per la COMPETIZIONE in assegnazione, CONSTELLATION determinerà automaticamente quale sarebbe il CODICE OTTIMALE da applicare durante l'assegnazione delle squadre di questa competizione.

------------------------------------------------------------------
Numero Giornate di spostamento tra le due competizioni
------------------------------------------------------------------
F C F F C F C F C F C F C F C F C 0
F C F F C F C F C F C F C
F C F F C F C F C F C F C F C F C +1
.. F C F F C F C F C F C F C
F C F F C F C F C F C F C F C F C +2
... F C F F C F C F C F C F C
.. F C F F C F C F C F C F C F C F C -1
F C F F C F C F C F C F C
.... F C F F C F C F C F C F C F C F C -2
F C F F C F C F C F C F C
Il metodo utilizzato ha come peculiarità una sequenza di alternanze CASA/FUORI per tutte le squadre con nessuna o poca aritmia.
Come caratteristica importante, l’algoritmo mantiene questa cadenza di partite (casa/fuori) che giochano le squadre nelle giornate successive per qualsiasi numero di squadre del girone. Nel caso di gironi con numero pari di squadre, abbiamo di conseguenza un uguale numero di gare in CASA e in TRASFERTA (FUORI) ed una sola volta succede una doppia gara in CASA o FUORI (con una cadenza fissa). Mentre nel caso di gironi con numero dispari di squadre non viene mai utilizzato l’ultimo numero griglie – applicato alla Squadra RIPOSO.
Alla fine dobbiamo fornire:
- il numero griglie del squadra vincolata (slave)
- la data di inizio (oppure ritorno) delle competizione superire di differimento
- elenco totale dei conflitti CFC di tutte le squadre e la differenza di qualità
per poter avvertire le società di cambiare l'orario o il giorno delle gare

------------------------------------------------
Diversi tipi dei nodi nel Constellation Graf
-----------------------------------------------
1) Nodo libero – non vincolato e non vincolante
2) Nodo SIMPLE MASTER – vincolante per le squadre della stessa società, però di diversa categoria
3) Nodo TWIN MASTER – vincolante per le squadre della stessa società, però di stessa categoria
4) Nodo SIMPLE TWIN MASTER – vincolante per le squadre della stessa società, sia per le squadre di stessa categoria sia per quelle di categoria diversa
5) Nodo EXTERNAL TWIN MASTER – vincolante per le squadre di una società diversa, però di stessa categoria
6) Nodo UNIVERSAL TWIN MASTER – vincolante sia per le squadre di una società diversa, sia per le squadre della stessa società, però di stessa categoria
7) Nodo UNIVERSAL SIMPLE MASTER – vincolante sia per le squadre di una società diversa, sia per le squadre della stessa società, però sempre di categoria diversa
8) Nodo SIMPLE SLAVE – vincolato da una squadra SIMPLE MASTER della stessa società (griglie pre-calcolate )
9) Nodo TWIN SLAVE – vincolato da una squadra TWIN MASTER, oppure da SIMPLE TWIN MASTER, oppure da UNIVERSAL TWIN MASTER (griglie onfly )
10) Nodo EXTERNAL SLAVE – vincolato da una squadra EXTERNAL MASTER, di una società diversa, di categoria diversa (griglia precalcolata)
11) Nodo EXTERNAL TWIN SLAVE – vincolato da una squadra EXTERNAL TWIN MASTER oppure da una squadra UNIVERSAL TWIN MASTER di una società diversa, di stessa categoria (griglie onfly )

--------------------------------------------------------------------------------------------------
Durante l'ASSEGNAZIONE la Squadra AL INTERNO di una competizione può essere:

LIBERA
● Griglia non-vincolata, si può assegnare arbitrariamente, secondo i posti disponibili nel girone
● Squadra LIBERA non è ne vincolante per le nessuna squadra, ne vincolata da nessuna squadra

TWIN MASTER
● vincolante solo per le squadre della stessa società, e solo della stessa competizione
● non può essere vincolata da nessuna squadra
● griglia non-vincolata si può assegnare arbitrariamente, secondo i posti disponibili nel girone

EXTERNAL TWIN MASTER
● griglia NON-VINCOLATA si può assegnare arbitrariamente, secondo i posti disponibili nel girone
● non può essere vincolata da nessuna squadra
● è VINCOLANTE solo per le squadre di una società diversa, MGL link

UNIVERSAL TWIN MASTER
● griglia non-vincolata si può assegnare arbitrariamente, secondo i posti disponibili nel girone
● è VINCOLANTE sia per le squadre di una società diversa, sia per le squadre della stessa società e della stessa competizione, MGL link e abbinata/alternata
● non può essere vincolato da nessuna squadra

SIMPLE MASTER
● griglia non-vincolata si può assegnare arbitrariamente, secondo i posti disponibili nel girone
● VINCOLANTE solo per le squadre della stessa società di qualsiasi competizione inferiore
● non può essere vincolato da nessuna squadra

SIMPLE SLAVE
● griglia VINCOLATA è precalcolata e dipende dal corrispondente master
● vincolata da una squadra della stessa società di una competizione superiore
● non può essere VINCOLANTE per nessuna squadra

TWIN SLAVE
● griglia VINCOLATA sarà calcolata on-fly, e dipende dal corrispettivo TWIN MASTER, che DEVE essere già previamente assegnato in un girone
● vincolata da una squadra della stessa società della stessa competizione
● non può essere VINCOLANTE per nessuna squadra

EXTERNAL SLAVE
● griglia VINCOLATA è precalcolata, e dipende dal corrispettivo master
vincolata da una squadra di una società diversa, di una diversa competizione
● non può essere VINCOLANTE per nessuna squadra

EXTERNAL TWIN SLAVE
● griglia VINCOLATA sarà calcolata on-fly, e dipende dal corrispettivo TWIN MASTER, che DEVE essere già previamente assegnato in un girone
● griglia vincolata da una squadra di una società diversa, però della stessa competizione
● non può essere VINCOLANTE per nessuna squadra




======================================================
Constellation includes all instruments for creation of high quality sport-event schedulers. Constellation is supporting a diversity of arrangement algorithms (Balanced ROUND ROBIN scheduling) and analysis built-in instruments to enable creating sport schedules easier than ever.
Constellation Scheduling Algorithms & Reports
Constellation scheduling considers user predefined playground, time and team-binding constraints, which are user predefined in Constellation Graph in Constellation Census module
Constellation Graph enables quick and simple management of team-binding, time and stadium-location constraints settings
Constellation schedules tend to obey particular constraint logic definitions (defined via Constellation Graphs )
Constellation advanced scheduling algorithm will automatically generate competition schedules with a more efficient and compact match calendars
All matches for each week are automatically generated, and constraints are conformed to each schedule week, in order to provide a harmonious distribution of teams and playground locations during the sport season
Inter-divisional conflict resolution: conflicts are automatically resolved across all divisions/groupings during the interactive schedule creation.
Constellation has incorporated support for balanced round robin schedules, Swiss round, single and double elimination tournaments, mixed (inter) divisional schedules.
Scheduler match days in successive rounds do not necessary have to be in a fixed week day; i.e. matches in different rounds can take place in a user modifiable week day.
Constellation has support for groupings of multiple competition schedules in order to follow conflicts and manage inter-divisional play
Competition schedule calendar in an HTML file.
Report includes list of games per team in each round, list of home and away games, home/away sequence for each team, a confrontation diagram describing the game list each team plays versus it's rivals.
Schedule reports allows filtered viewing of games for defined competition, team or date, with information sorted in the proper chronological order.

Abstract:
Introduction Sports scheduling is an area of increasing interest in constraint programming. As amateur and professional sports leagues proliferate and grow in size and complexity, organizers are increasingly turning to computer assisted scheduling [Nemhauser and Trick]. The scientific literature in this area is also growing and one can begin to get a sense of the range and mathematical difficulty of the problems encountered. These can include classical challenges such as set covering problems and quadratic assignment problems. In this note we concentrate on a version of a core problem that invariably comes up: determining whether a set of constraints on the schedule is feasible. This is often called the "timetabling" problem of the scheduling process. Here we consider the timetabling problem for a "round robin" schedule: the case in which every team must play every other team exactly once. (Later we will discuss related problems that come up in other sports situations such as
Generating a schedule for a professional sports league is an extremely demanding task. Good schedules have many benefits for the league, such as higher incomes, lower costs and more interesting and fairer seasons. Many solution approaches for sports scheduling problems have been introduced in recent years. Even if quite efficient algorithms have been designed, there exist not many cases where academic researchers have been able to close a contract with a sports league owner.
This web site presents an overview of the sports scheduling problem, a set of standard benchmark instances and the best solutions obtained for these instances. The instances are divided into two categories: artificial test instances and real-world instances. We hope that these instances will help researchers to test the value of their solution methods.
..............
2. Tournament Scheduling
A league comprises 2n teams, and in 2n ?? 1 consecutive rounds each team must play with each other. Matches take place at the home stadium of one of the two teams, and home and away games should be alternated as much as possible. We call break, after de Werra (1980), the fact that a team plays two consecutive rounds in the same location, where the
term location denotes either home or away. The problem is to nd a schedule scheme that minimizes the number of breaks and satisfies a number of other side constraints.
Constraints are split into hard (requirements) and soft ones (wishes): Hard constraints must necessarily be satisfied by the solution, soft ones instead can be violated and they contribute to the objective function.
For all the types of constraints defined below, each single constraint can be declared either hard or soft. The soft ones are associated with an integer-valued positive penalty, and the sum of all penalties determines the objective function. The hard ones are strictly enforced during the construction of the solution.
We have two groups of constraints. The first group, that we call ordinary constraints, regards general constraints on all teams. The second group of constraints are related to a grouping of the teams based on their strength, and we call them special constraints.
2.1 Ordinary Constraints
Ordinary constraints we consider are of the following types (see also Schreuder, 1993).
¤ Complementarity: Teams t1 and t2 must have complementary schedules (i.e. when t1 plays home t2 plays away, and vice versa).
¤ Availability: Team t must play home (or away) at round r.
¤ Mating: Team t1 cannot play home (or away, or both) with team t2 at round r.
3
¤ Triples: Three teams t1, t2, and t3 cannot be simultaneously in the same location (i.e. two must be in one location and the third in the other location).
Hard complementarity constraints are used if two teams share the same stadium (e.g. the \San Siro" stadium in Milan is shared by Internazionale and A.C. Milan). Soft complemen-tarity instead is used if the stadia of two teams are located close to each other and the clubs want to optimize the use of railways and highways for their supporters (e.g. Feyenoord and Sparta have their stadia in Rotterdam).
..........
SOMMARIO/ABSTRACT
Il problema del Traveling Tournament (TTP) `e un problema combinatorio che unisce le caratteristiche del problema del commesso viaggiatore e della generazione di calendari sportivi. In questo lavoro presentiamo un approccio alla soluzione del TTP basato sulla ricerca tab`u che fa uso della combinazione di due relazioni di vicinato.
L’algoritmo `e stato analizzato sperimentalmente su alcuni benchmarks disponibili in rete e viene presentata una omparazione dei suoi risultati con approcci alternativi presentati nella letteratura sull’argomento.
The Traveling Tournament Problem (TTP) is a combinatorial problem that combines features both from the traveling salesman problem and from tournament scheduling.
.............
======================================================================================================
Constraints are split into hard (requirements) and soft ones (wishes):
Hard constraints must necessarily be satisfied by the solution, soft ones instead can be violated
and they contribute to the objective function.
For all the types of constraints defined below, each single constraint can be declared either hard or soft.
The soft ones are associated with an integer-valued positive penalty, and the sum of all penalties determines
the objective function. The hard ones are strictly enforced during the construction of the solution.
We have two groups of constraints. The first group, that we call ordinary constraints, regards general constraints
on all teams. The second group of constraints are related to a grouping of the teams based on their strength,
and we call them special constraints.
I ORDINARY Constraints
Ordinary constraints we consider are of the following types (see also Schreuder, 1993).
I.a Complementarity & team-binding: Teams t1 and t2 must have complementary schedules
(i.e. when t1 plays home t2 plays away, and vice versa).
I.b Non simultanity: Three or more teams t1, t2, and t3,... cannot be simultaneously in the same location
(i.e. two may be in one location and the third in the other location).
I.c Availability: Team t must play home (or away) at round r.
I.d Non Availability: Team t cannot play at round r (day, time).
I.e Mating exclusion: Team t1 cannot play home (or away, or both) with team t2 at round r.
Hard complementarity constraints are used if two teams share the same stadium
(e.g. the \San Siro" stadium in Milan is shared by Internazionale and A.C. Milan).
Soft complementarity instead is used if the stadia of two teams are located close to each other
and the clubs want to optimize the use of railways and highways for their supporters
(e.g. Feyenoord and Sparta have their stadia in Rotterdam).
II SPECIAL Constraints
The definition of the second group of constraints presupposed some prior notions:
We call top teams the members of a subset of the teams composed by the strongest teams,
which require some special treatment. We call distance_of_two_matches (in short form only distance)
the number_of_rounds between the rounds in which they take place.
The special constraints are the following ones:
II.a Top_match distance: 3 is default value
We call top match a match between two top teams. Two top matches cannot take place at distance
smaller than a given value TopMatchDistance. Top_match è quando giocano le due squadre forti.
Top_match non devono essere accavalati e troppo vicini tra loro,
ovvero nella sequenza delle partite di una squadra forte deve esistere al meno
un numero (Top_match_distance) di partite non impegnative.
II.b Top_opponent distance: 2 is default value
Any team cannot match two top teams at distance smaller than a given value TopOpponentDistance.
Le partita_impegnativa è quando una squdra(debole) gioca contro una forte.
Una qualsiasi squdra nel girone non deve incontrare una forte consecutivamente.
Le partite impegnative non possono/devono essere accavalate e troppo vicine tra loro,
ovvero nella sequenza delle partite di una squadra deve esistere al meno
un numero di (n=Top_opponent_distance) partite non impegnative.
II.c Top_matches_schedule:
For a given set of rounds R, no top_match can take place at any round r 2 R.
The two parameters TopMatchDistance and TopOpponentDistance are given at global level;
that is, they are the same for all teams. Their typical value can be 3 and 2, respectively.
We split teams in two subgroups: the top teams (usually 3 or 4) and the other ones.
An another grain grouping is also possible, and more complex constraint types can be considered.
For example, Schreuder (1993) proposes (although he does not pursue this idea) to divide teams
in three groups |strong, medium, and weak teams| and looks for schedules that alternate
matches with teams belonging to the three groups.
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

*****************************************************************************************
--------------------------------------------------------
With CONSTELLATION it is the easy way to manage your football leagues online.
CONSTELLATION is the league administration suite that works seamless.

Fixtures can be arranged manually, or the CONSTELLATION fixture scheduler allows you to arrange fixtures for one division in a few clicks. The CONSTELLATION scheduler and conflict checker allows you to include every imaginable constraint, before CONSTELLATION produces a fixture list for the whole league.

If you wish, fixtures and results can be uploaded from an Excel spreadsheet.