Programm für Schach Turniere

Smalltalk
Antworten
homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Programm für Schach Turniere

Beitrag von homer65 » 02.05.2024 13:46:43

Hallo Zusammen,
wollte Euch kurz mein Java Programm zur Verwaltung von Schach Turnieren vorstellen.
Es heißt SchachTurnierBastler.
Eine kurze Beschreibung findet man unter:
http://myoggradio.org/SchachTurnierBastler
Gruß Christian

niemand
Beiträge: 604
Registriert: 22.12.2023 16:35:53
Kontaktdaten:

Re: Programm für Schach Turniere

Beitrag von niemand » 02.05.2024 13:58:17

Wenn du dein Projekt schon bewirbst, solltest du auch herausstellen, was es von den etablierten Lösungen (ICS (Debianxboard et al), Webclients (https://lichess.org und Andere), etc.) abhebt; warum man es sich also anschauen wollen sollte.

Außerdem wären eine ausführlichere Beschreibung mit ein paar Erläuterungen zum Protokoll, den Features, sowie der eine oder andere Screenshot sicher nicht schlecht ;)
„I fought in the Vim-Emacs-War.“ Quelle

homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Re: Programm für Schach Turniere

Beitrag von homer65 » 02.05.2024 14:04:47

Hallo niemand,
da hab ich wohl schlecht beschrieben. :-(
Das Programm ist etwas völlig Anderes als Schach spielen per Internet.
Es dient dazu vereinsinterne Schach Turniere auszurichten.
Und eine kurze Beschreibung findet man wie schon gesagt unter
http://myoggradio.org/SchachTurnierBastler
Bitte lesen. Dort gibt es auch weiterführende Links.
Gruß Christian

Edit: Zielgruppe für das Programm sind Spielleiter von Schach Vereinen. Es ist am Ehesten mit Swiss Chess zu vergleichen.

niemand
Beiträge: 604
Registriert: 22.12.2023 16:35:53
Kontaktdaten:

Re: Programm für Schach Turniere

Beitrag von niemand » 02.05.2024 14:11:19

homer65 hat geschrieben: ↑ zum Beitrag ↑
02.05.2024 14:04:47
da hab ich wohl schlecht beschrieben.
Tatsächlich hast du so gut wie gar nichts beschrieben – das ist ja in meinen Augen das Problem.

Ich finde „Ich hab da mal was gemacht, aber wenn ihr wissen wollt, was das ist, dann klickt doch auf diesen Link nach irgendwo“ nicht sehr gut.
„I fought in the Vim-Emacs-War.“ Quelle

Benutzeravatar
shoening
Beiträge: 901
Registriert: 28.01.2005 21:05:59
Lizenz eigener Beiträge: MIT Lizenz

Re: Programm für Schach Turniere

Beitrag von shoening » 03.05.2024 10:07:57

Hi,

wer schon mal länger in einem Schachverein war, der weiß sicherlich, was hier gemeint ist.

Allerdings kann ich mit dem folgenden Abschnitt aus der Beschreibung zum „Schweizer System“ überhaupt nichts anfangen:

„Warum nur ähnlich und nicht gleich Schweizer System? Das liegt an der Funktionsweise, wie STB eine neue Runde auslost. STB teilt die Spieler in Gruppen nach bisheriger Platzierung ein. Dann werden Millionen von Partien in der jeweiligen Gruppe zufällig ausgelost und bewertet. Die best bewertesten Partien werden dann für die nächste Runde genommen. Dies führt zu guten aber nicht perfekten Ergebnissen.“

Da stellen sich mir zwei Fragen:
1. Wieso setzt man da nicht einfach bei Punktgleichheit ein Losverfahren an?
2. Was wird da bewertet?

Viele Grüße
Stefan
Bürokratie kann man nur durch ihre Anwendung bekämpfen.

tobo
Beiträge: 2031
Registriert: 10.12.2008 10:51:41

Re: Programm für Schach Turniere

Beitrag von tobo » 03.05.2024 10:36:32

shoening hat geschrieben: ↑ zum Beitrag ↑
03.05.2024 10:07:57
1. Wieso setzt man da nicht einfach bei Punktgleichheit ein Losverfahren an?
Das stumpfe Losen ist gleich aus mehreren Gründen keine gute Idee, z.B. weil man nur einmal gegen einen bestimmten Gegner spielen darf, oder nur zweimal in Folge eine bestimmte Farbe haben darf, etc.:
https://www.schachschiri.de/ch_system.pdf

Benutzeravatar
shoening
Beiträge: 901
Registriert: 28.01.2005 21:05:59
Lizenz eigener Beiträge: MIT Lizenz

Re: Programm für Schach Turniere

Beitrag von shoening » 03.05.2024 10:45:01

Hi tobo,

dass solche „Nebenbedingungen“ auch beim Losen berücksichtigt werden, erachte ich als selbstverständlich.

Viele Grüße
Stefan
Bürokratie kann man nur durch ihre Anwendung bekämpfen.

tobo
Beiträge: 2031
Registriert: 10.12.2008 10:51:41

Re: Programm für Schach Turniere

Beitrag von tobo » 03.05.2024 10:59:14

shoening hat geschrieben: ↑ zum Beitrag ↑
03.05.2024 10:45:01
Hi tobo,

dass solche „Nebenbedingungen“ auch beim Losen berücksichtigt werden, erachte ich als selbstverständlich.
Naja, wie denkst du denn werden sonst die Paarungen ermittelt - durch eine Abstimmung? Natürlich wird gelost, unter Zuhilfenahme von Randbedingungen (einige davon sind Muss, viele davon sind Soll wegen z.B. Attraktivität oder Ausgeglichenheit).

homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Re: Programm für Schach Turniere

Beitrag von homer65 » 03.05.2024 11:29:58

Das die Nebenbedingungen berücksichtigt werden, ist für das schweizer System selbstverständlich. Aber es zu programmieren ist eine andere Sache. Da einfach zufällige Partien zu erstellen und diese zu bewerten, um die Randbedingungen zu erfüllen, ist dagegen einfach zu programmieren.

Benutzeravatar
shoening
Beiträge: 901
Registriert: 28.01.2005 21:05:59
Lizenz eigener Beiträge: MIT Lizenz

Re: Programm für Schach Turniere

Beitrag von shoening » 03.05.2024 14:33:13

Jetzt habe ich verstanden, wieso mich der Satz so verwirrt hat:

Wenn man „Partien“ durch „Paarungen“ ersetzt, wird alles viel verständlicher.
Bürokratie kann man nur durch ihre Anwendung bekämpfen.

homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Re: Programm für Schach Turniere

Beitrag von homer65 » 04.05.2024 14:05:10

Habe die Beschreibung überarbeitet und im Kapitel Schweizer System Partien durch Paarungen ersetzt. Und noch ein paar Bemerkungen zu den Einstellungen zum Schweizer System gemacht.

tobo
Beiträge: 2031
Registriert: 10.12.2008 10:51:41

Re: Programm für Schach Turniere

Beitrag von tobo » 05.05.2024 02:24:31

Was diese "Iterationen" beim Schweizer System betrifft, da erscheint mir diese 10.000.000 intuitiv a) willkürlich und b) ziemlich hoch gewählt!? Was genau iteriert denn da? Du schreibst etwas von gutem Kompromiss. Wie genau sind die 10000000 zu verstehen - ist das eine Auswahl der Summe aller Paarungen, die bezogen auf alle punktgleichen oder teilnehmenden Spieler - zu einem bestimmten Zeitpunkt - möglich sind? Ich habe zum Zeitpunkt t bei n Teilnehmer k punktgleiche Spieler - auf was und wie bezieht sich dann die 10000000? Und ist das eigentlich gegen die maximale Anzahl aller Kombination zu diesem Zeitpunkt verifiziert?

homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Re: Programm für Schach Turniere

Beitrag von homer65 » 05.05.2024 07:16:19

Die Gruppen Größe variiert bei einem 7 Runden Schweizer System zwischen 6 und 18 Spielern. Bei 6 Spielern gibt es nur 120 verschiedene Paarungen und man könnte alle möglichen Paarungen ermitteln. Da sind dann 10000000 Iterationen (Eine Iteration ist eine Auswahl zufälliger Paarungen) viel zu viel. Aber bei 18 Spielern sind es - wenn ich richtig rechne - ungefähr 18 Milliarden mögliche Paarungen. Dagegen ist 10 Millionen wiederum recht wenig. Aber die Erfahrung zeigt, das trotzdem "gute" Ergebnisse rauskommen. Wir haben in unserem Verein bei der Vereinsmeisterschaft immer so um die 20 - 30 Teilnehmer. Da dauert eine Auslosung auf meinem Notebook so um die 10 Sekunden. Das halte ich noch für vertretbar. Wer bessere Ergebnisse haben will kann auch 100 Millionen Iterationen einstellen und wartet dafür - bei gleicher Teilnehmerzahl - so ca 2 Minuten. Grundsätzlich gilt je mehr Teilnehmer umso mehr Gruppen umso längere Laufzeit.
10 Millionen ist also ein Erfahrungswert und nicht willkürlich.

tobo
Beiträge: 2031
Registriert: 10.12.2008 10:51:41

Re: Programm für Schach Turniere

Beitrag von tobo » 05.05.2024 20:38:07

Du hast da schon recht - ich bin von falschen Voraussetzungen ausgegangen. Vereinsturniere wurden bei uns zuletzt gerade mal noch mit 8-10 Spielern gestartet, von der Anzahl am Ende will ich gar nicht reden.
Da erst bei 14 punktgleichen Spielern die Anzahl von 10 Millionen verschiedener Möglichkeiten überschritten wird, hielt ich das a) für eine ambitionierte Größe bei einem Vereinsturnier und b) für einen ungünstigen Default bei kleinerer Anzahl an Punktgleichen. Sprich: Naheliegender wäre es doch, bei kleinen Gruppen alle Möglichkeiten durchzugehen, anstatt 10 Mio Zufallswerte zu bilden, wenn es nur 120, 1680 etc. Möglichkeiten gibt!? Bei 42 Spielern wären zur relevanten 2. Runde mindestens 14 Spieler punktgleich - das ist schon eine ordentliche Größe...

homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Re: Programm für Schach Turniere

Beitrag von homer65 » 05.05.2024 21:04:30

Ja auch Du hast Recht. Bei kleineren Gruppen macht es Sinn alle Möglichkeiten auszuprobieren. Verkürzt die Laufzeit. Muss man aber erst mal programmieren. Schreibe ich mir auf den ToDo Zettel.
Wenn Ihr nur 8-10 Teilnehmer habt, macht vielleicht ein Jeder gegen Jeden Turnier auch mehr Sinn als ein 7 oder 5 Runden Schweizer System. :-)

tobo
Beiträge: 2031
Registriert: 10.12.2008 10:51:41

Re: Programm für Schach Turniere

Beitrag von tobo » 05.05.2024 21:27:22

Klar, wir haben dann zuletzt immer ein Rundenturnier gespielt. Ich kann mich aber an früher erinnern, als unser alter und langjähriger Vereinspräsident unsere Verinsmeisterschaften (Schweizer System mit ca. 15-20 Teilnehmern) immer von Hand ausloste! Je nach Konstellation hat das dann auch schon mal eine Stunde gedauert - 10 Sekunden warten sollte also aushaltbar sein, zumal ja vermutlich nicht am selben Tag weitergespielt wird...

PS: Wobei mir gerade einfällt, dass das mit der festen Gruppierung der Punktgleichen gar keine so tolle Idee ist, da ja spätestens gegen Ende des Turniers immer mal jemand aus dieser Gruppe hoch oder runter gelost werden muss.

homer65
Beiträge: 110
Registriert: 01.04.2005 16:29:26

Re: Programm für Schach Turniere

Beitrag von homer65 » 06.05.2024 11:40:58

tobo hat geschrieben: ↑ zum Beitrag ↑
05.05.2024 21:27:22
PS: Wobei mir gerade einfällt, dass das mit der festen Gruppierung der Punktgleichen gar keine so tolle Idee ist, da ja spätestens gegen Ende des Turniers immer mal jemand aus dieser Gruppe hoch oder runter gelost werden muss.
Deswegen wird es auch so nicht gemacht. :-)
Ich bestimme eine minimale Gruppengröße aus der Rundennummer. Ist n die Rundennummer und g die minimale Gruppengrüße, so ist: g = (n/2)*2 + 4. (n/2 ist eine Integer Division und wird abgerundet)
Mit dieser zunächst willkürlichen Formel garantiert man, das die Gruppengröße genügt die harten Kriterien zu erfüllen.
Dann werden die Spieler nach Platzierung in die Gruppen minimaler Größe gestellt. Die letzte Gruppe bekommt die übriggebliebenen zugeschlagen.
Vielleicht wird dies an einem Beispiel deutlicher.
Nehmen wir an es sind 29 Teilnehmer und die zweite Runde wird ausgelost.
Wegen der zweiten Runde ist die minimale Gruppengröße sechs.
Dann gibt es 3 Gruppen der Größe sechs und eine Gruppe der Größe 10 (6 + 4 Übriggebliebene). Ein Spieler hat Freilos.
In der ersten Gruppe befinden sich die Spieler mit der Platzierung 1-.6
In der zweiten Gruppe befinden sich die Spieler mit der Platzierung 7-12
In der dritten Gruppe befinden sich die Spieler mit der Platzierung 13-18
In der vierten Gruppe befinden sich die Spieler mit der Platzierung 19-28
Der Spieler mit der schlechtesten Platzierung, der noch kein Freilos hatte, bekommt ein Freilos.
Die Gruppen verschieben sich entsprechend.

Antworten