Test MacMahon

This commit is contained in:
Theo Barollet
2023-12-17 14:07:25 +01:00
parent 49973bdf23
commit a8e35a5ced
9 changed files with 7426 additions and 0 deletions

View File

@@ -23,6 +23,10 @@ class MacMahonSolver(round: Int,
override val mainLimits get() = Pair(0.0, 100.0) // TODO override val mainLimits get() = Pair(0.0, 100.0) // TODO
override fun evalCriterion(pairable: Pairable, criterion: Criterion) = when (criterion) { override fun evalCriterion(pairable: Pairable, criterion: Criterion) = when (criterion) {
Criterion.MMS -> pairable.mms Criterion.MMS -> pairable.mms
Criterion.SOSM -> pairable.sos
Criterion.SOSOSM -> pairable.sosos
Criterion.SOSMM1 -> pairable.sosm1
Criterion.SOSMM2 -> pairable.sosm2
else -> super.evalCriterion(pairable, criterion) else -> super.evalCriterion(pairable, criterion)
} }

View File

@@ -270,5 +270,72 @@ class PairingTests: TestBase() {
} }
} }
@Test
fun `testSimpleMM`() {
/*
// read tournament with pairing
var fileOG = getTestFile("opengotha/pairings/simplemm.xml")
logger.info("read from file $fileOG")
val resourceOG = fileOG.readText(StandardCharsets.UTF_8)
val respOG = TestAPI.post("/api/tour", resourceOG)
val idOG = respOG.asObject().getInt("id")
val tournamentOG = TestAPI.get("/api/tour/$idOG").asObject()
logger.info(tournamentOG.toString().slice(0..50) + "...")
val playersOG = TestAPI.get("/api/tour/$idOG/part").asArray()
//logger.info(players.toString().slice(0..50) + "...")
//logger.info(playersOG.toString())
val pairingsOG = mutableListOf<String>()
for (round in 1..tournamentOG.getInt("rounds")!!) {
val games = TestAPI.get("/api/tour/$idOG/res/$round").asArray()
logger.info("games for round $round: {}", games.toString())
pairingsOG.add(games.toString())
}*/
val pairingsR1 = """[{"id":1,"w":3,"b":5,"h":0,"r":"w","dd":0},{"id":2,"w":12,"b":10,"h":0,"r":"b","dd":0},{"id":3,"w":9,"b":14,"h":0,"r":"b","dd":0},{"id":4,"w":11,"b":6,"h":0,"r":"b","dd":0},{"id":5,"w":13,"b":15,"h":0,"r":"b","dd":0},{"id":6,"w":2,"b":16,"h":1,"r":"w","dd":0},{"id":7,"w":8,"b":4,"h":5,"r":"b","dd":0},{"id":8,"w":7,"b":1,"h":2,"r":"w","dd":0}]"""
val pairingsR2 = """[{"id":9,"w":14,"b":3,"h":0,"r":"b","dd":0},{"id":10,"w":10,"b":5,"h":0,"r":"b","dd":0},{"id":11,"w":6,"b":9,"h":0,"r":"b","dd":0},{"id":12,"w":15,"b":12,"h":0,"r":"w","dd":0},{"id":13,"w":2,"b":11,"h":0,"r":"w","dd":0},{"id":14,"w":8,"b":13,"h":0,"r":"b","dd":0},{"id":15,"w":7,"b":4,"h":0,"r":"b","dd":0},{"id":16,"w":16,"b":1,"h":7,"r":"b","dd":0}]"""
val pairingsR3 = """[{"id":17,"w":5,"b":14,"h":0,"r":"b","dd":0},{"id":18,"w":10,"b":9,"h":0,"r":"w","dd":0},{"id":19,"w":15,"b":3,"h":0,"r":"w","dd":0},{"id":20,"w":12,"b":2,"h":0,"r":"b","dd":0},{"id":21,"w":6,"b":13,"h":0,"r":"b","dd":0},{"id":22,"w":11,"b":8,"h":0,"r":"w","dd":0},{"id":23,"w":16,"b":7,"h":3,"r":"w","dd":0},{"id":24,"w":4,"b":1,"h":3,"r":"b","dd":0}]"""
val pairingsR4 = """[{"id":25,"w":3,"b":10,"h":0,"r":"w","dd":0},{"id":26,"w":14,"b":15,"h":0,"r":"b","dd":0},{"id":27,"w":5,"b":2,"h":0,"r":"w","dd":0},{"id":28,"w":12,"b":6,"h":0,"r":"w","dd":0},{"id":29,"w":9,"b":11,"h":0,"r":"w","dd":0},{"id":30,"w":16,"b":4,"h":3,"r":"b","dd":0},{"id":31,"w":13,"b":7,"h":5,"r":"w","dd":0},{"id":32,"w":8,"b":1,"h":6,"r":"w","dd":0}]"""
val pairingsR5 = """[{"id":33,"w":15,"b":5,"h":0,"r":"w","dd":0},{"id":34,"w":14,"b":10,"h":0,"r":"b","dd":0},{"id":35,"w":9,"b":3,"h":0,"r":"w","dd":0},{"id":36,"w":13,"b":2,"h":0,"r":"w","dd":0},{"id":37,"w":16,"b":12,"h":0,"r":"b","dd":0},{"id":38,"w":11,"b":4,"h":3,"r":"b","dd":0},{"id":39,"w":8,"b":7,"h":5,"r":"w","dd":0},{"id":40,"w":6,"b":1,"h":7,"r":"b","dd":0}]"""
val pairings = mutableListOf<String>()
pairings.add(pairingsR1)
pairings.add(pairingsR2)
pairings.add(pairingsR3)
pairings.add(pairingsR4)
pairings.add(pairingsR5)
// read tournament without pairings
var file = getTestFile("opengotha/pairings/simplemm_nopairings.xml")
logger.info("read from file $file")
val resource = file.readText(StandardCharsets.UTF_8)
var resp = TestAPI.post("/api/tour", resource)
val id = resp.asObject().getInt("id")
assertNotNull(id)
val tournament = TestAPI.get("/api/tour/$id").asObject()
logger.info(tournament.toString().slice(0..50) + "...")
val players = TestAPI.get("/api/tour/$id/part").asArray()
logger.info(players.toString().slice(0..50) + "...")
var games: Json.Array
var firstGameID: Int
for (round in 1..5) {
games = TestAPI.post("/api/tour/$id/pair/$round", Json.Array("all")).asArray()
logger.info("games for round $round: {}", games.toString())
assertTrue(compare_weights("weights.txt", "opengotha/simplemm/simplemm_weights_R$round.txt"), "Not matching opengotha weights for round $round")
assertTrue(compare_games(games, Json.parse(pairings[round - 1])!!.asArray()),"pairings for round $round differ")
logger.info("Pairings for round $round match OpenGotha")
firstGameID = (games.getJson(0)!!.asObject()["id"] as Long?)!!.toInt()
for (gameID in firstGameID..firstGameID + 15) {
resp = TestAPI.put("/api/tour/$id/res/$round", Json.parse("""{"id":$gameID,"result":"b"}""")).asObject()
assertTrue(resp.getBoolean("success") == true, "expecting success")
}
logger.info("Results succesfully entered for round $round")
}
}
} }

View File

@@ -0,0 +1,93 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Tournament dataVersion="201" externalIPAddress="77.128.107.78" gothaMinorVersion="5" gothaVersion="348" saveDT="20191119110542">
<Players>
<Player agaExpirationDate="" agaId="" club="13Ma" country="FR" egfPin="" ffgLicence="2200056" ffgLicenceStatus="L" firstName="Clé" grade="10K" name="Robin" participating="11111111111111111111" rank="10K" rating="1129" ratingOrigin="FFG : -921" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="2100063" ffgLicenceStatus="L" firstName="Baptiste" grade="1D" name="Fiorina" participating="11111111111111111111" rank="1D" rating="2106" ratingOrigin="FFG : 56" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="0280000" ffgLicenceStatus="L" firstName="Motoki" grade="7D" name="Noguchi" participating="11111111111111111111" rank="7D" rating="2666" ratingOrigin="FFG : 616" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="13Ma" country="FR" egfPin="" ffgLicence="1000392" ffgLicenceStatus="L" firstName="Alexandra" grade="7K" name="Goloubkov" participating="11111111111111111111" rank="7K" rating="1389" ratingOrigin="FFG : -661" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="00St" country="FR" egfPin="" ffgLicence="1600310" ffgLicenceStatus="L" firstName="Robin" grade="4D" name="Bonjean" participating="11111111111111111111" rank="4D" rating="2357" ratingOrigin="FFG : 307" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1000005" ffgLicenceStatus="L" firstName="Quentin" grade="2D" name="Rendu" participating="11111111111111111111" rank="2D" rating="2155" ratingOrigin="FFG : 105" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1700003" ffgLicenceStatus="L" firstName="Morgane" grade="7K" name="Marechal" participating="11111111111111111111" rank="7K" rating="1388" ratingOrigin="FFG : -662" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="7904900" ffgLicenceStatus="L" firstName="Dominique" grade="1K" name="Cornuejols" participating="11111111111111111111" rank="1K" rating="2035" ratingOrigin="FFG : -15" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="49An" country="FR" egfPin="" ffgLicence="1800102" ffgLicenceStatus="L" firstName="Theo" grade="3D" name="Lemoine" participating="11111111111111111111" rank="3D" rating="2317" ratingOrigin="FFG : 267" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="9791002" ffgLicenceStatus="L" firstName="Toru" grade="3D" name="Imamura-Cornuejols" participating="11111111111111111111" rank="3D" rating="2343" ratingOrigin="FFG : 293" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="2000113" ffgLicenceStatus="L" firstName="Warren" grade="2D" name="Aim" participating="11111111111111111111" rank="2D" rating="2231" ratingOrigin="FFG : 181" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1300045" ffgLicenceStatus="L" firstName="Loïc" grade="3D" name="Lefebvre" participating="11111111111111111111" rank="3D" rating="2281" ratingOrigin="FFG : 231" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="75Ju" country="FR" egfPin="" ffgLicence="0800078" ffgLicenceStatus="L" firstName="Rémi" grade="1K" name="Cornaggia" participating="11111111111111111111" rank="1K" rating="1995" ratingOrigin="FFG : -55" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="0900438" ffgLicenceStatus="L" firstName="Denis" grade="6D" name="Karadaban" participating="11111111111111111111" rank="6D" rating="2576" ratingOrigin="FFG : 526" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1800061" ffgLicenceStatus="L" firstName="Camille" grade="2D" name="Leveque" participating="11111111111111111111" rank="2D" rating="2221" ratingOrigin="FFG : 171" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="37To" country="FR" egfPin="" ffgLicence="2100064" ffgLicenceStatus="L" firstName="Romain" grade="2K" name="Durand" participating="11111111111111111111" rank="2K" rating="1851" ratingOrigin="FFG : -199" registeringStatus="FIN" smmsCorrection="0"/>
</Players>
<Games>
<Game blackPlayer="BONJEANROBIN" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="1" tableNumber="1" whitePlayer="NOGUCHIMOTOKI"/>
<Game blackPlayer="IMAMURA-CORNUEJOLSTORU" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="1" tableNumber="2" whitePlayer="LEFEBVRELOÏC"/>
<Game blackPlayer="KARADABANDENIS" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="1" tableNumber="3" whitePlayer="LEMOINETHEO"/>
<Game blackPlayer="RENDUQUENTIN" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="1" tableNumber="4" whitePlayer="AIMWARREN"/>
<Game blackPlayer="LEVEQUECAMILLE" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="1" tableNumber="5" whitePlayer="CORNAGGIARÉMI"/>
<Game blackPlayer="DURANDROMAIN" handicap="1" knownColor="true" result="RESULT_WHITEWINS" roundNumber="1" tableNumber="6" whitePlayer="FIORINABAPTISTE"/>
<Game blackPlayer="GOLOUBKOVALEXANDRA" handicap="5" knownColor="true" result="RESULT_BLACKWINS" roundNumber="1" tableNumber="7" whitePlayer="CORNUEJOLSDOMINIQUE"/>
<Game blackPlayer="ROBINCLÉ" handicap="2" knownColor="true" result="RESULT_WHITEWINS" roundNumber="1" tableNumber="8" whitePlayer="MARECHALMORGANE"/>
<Game blackPlayer="KARADABANDENIS" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="3" tableNumber="1" whitePlayer="BONJEANROBIN"/>
<Game blackPlayer="LEMOINETHEO" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="3" tableNumber="2" whitePlayer="IMAMURA-CORNUEJOLSTORU"/>
<Game blackPlayer="NOGUCHIMOTOKI" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="3" tableNumber="3" whitePlayer="LEVEQUECAMILLE"/>
<Game blackPlayer="FIORINABAPTISTE" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="3" tableNumber="4" whitePlayer="LEFEBVRELOÏC"/>
<Game blackPlayer="CORNAGGIARÉMI" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="3" tableNumber="5" whitePlayer="RENDUQUENTIN"/>
<Game blackPlayer="CORNUEJOLSDOMINIQUE" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="3" tableNumber="6" whitePlayer="AIMWARREN"/>
<Game blackPlayer="MARECHALMORGANE" handicap="3" knownColor="true" result="RESULT_WHITEWINS" roundNumber="3" tableNumber="7" whitePlayer="DURANDROMAIN"/>
<Game blackPlayer="ROBINCLÉ" handicap="3" knownColor="true" result="RESULT_BLACKWINS" roundNumber="3" tableNumber="8" whitePlayer="GOLOUBKOVALEXANDRA"/>
<Game blackPlayer="BONJEANROBIN" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="5" tableNumber="1" whitePlayer="LEVEQUECAMILLE"/>
<Game blackPlayer="IMAMURA-CORNUEJOLSTORU" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="5" tableNumber="2" whitePlayer="KARADABANDENIS"/>
<Game blackPlayer="NOGUCHIMOTOKI" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="5" tableNumber="3" whitePlayer="LEMOINETHEO"/>
<Game blackPlayer="FIORINABAPTISTE" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="5" tableNumber="4" whitePlayer="CORNAGGIARÉMI"/>
<Game blackPlayer="LEFEBVRELOÏC" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="5" tableNumber="5" whitePlayer="DURANDROMAIN"/>
<Game blackPlayer="GOLOUBKOVALEXANDRA" handicap="3" knownColor="true" result="RESULT_BLACKWINS" roundNumber="5" tableNumber="6" whitePlayer="AIMWARREN"/>
<Game blackPlayer="MARECHALMORGANE" handicap="5" knownColor="true" result="RESULT_WHITEWINS" roundNumber="5" tableNumber="7" whitePlayer="CORNUEJOLSDOMINIQUE"/>
<Game blackPlayer="ROBINCLÉ" handicap="7" knownColor="true" result="RESULT_BLACKWINS" roundNumber="5" tableNumber="8" whitePlayer="RENDUQUENTIN"/>
<Game blackPlayer="NOGUCHIMOTOKI" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="2" tableNumber="1" whitePlayer="KARADABANDENIS"/>
<Game blackPlayer="BONJEANROBIN" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="2" tableNumber="2" whitePlayer="IMAMURA-CORNUEJOLSTORU"/>
<Game blackPlayer="LEMOINETHEO" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="2" tableNumber="3" whitePlayer="RENDUQUENTIN"/>
<Game blackPlayer="LEFEBVRELOÏC" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="2" tableNumber="4" whitePlayer="LEVEQUECAMILLE"/>
<Game blackPlayer="AIMWARREN" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="2" tableNumber="5" whitePlayer="FIORINABAPTISTE"/>
<Game blackPlayer="CORNAGGIARÉMI" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="2" tableNumber="6" whitePlayer="CORNUEJOLSDOMINIQUE"/>
<Game blackPlayer="GOLOUBKOVALEXANDRA" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="2" tableNumber="7" whitePlayer="MARECHALMORGANE"/>
<Game blackPlayer="ROBINCLÉ" handicap="7" knownColor="true" result="RESULT_BLACKWINS" roundNumber="2" tableNumber="8" whitePlayer="DURANDROMAIN"/>
<Game blackPlayer="IMAMURA-CORNUEJOLSTORU" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="4" tableNumber="1" whitePlayer="NOGUCHIMOTOKI"/>
<Game blackPlayer="LEVEQUECAMILLE" handicap="0" knownColor="true" result="RESULT_BLACKWINS" roundNumber="4" tableNumber="2" whitePlayer="KARADABANDENIS"/>
<Game blackPlayer="FIORINABAPTISTE" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="4" tableNumber="3" whitePlayer="BONJEANROBIN"/>
<Game blackPlayer="RENDUQUENTIN" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="4" tableNumber="4" whitePlayer="LEFEBVRELOÏC"/>
<Game blackPlayer="AIMWARREN" handicap="0" knownColor="true" result="RESULT_WHITEWINS" roundNumber="4" tableNumber="5" whitePlayer="LEMOINETHEO"/>
<Game blackPlayer="GOLOUBKOVALEXANDRA" handicap="3" knownColor="true" result="RESULT_BLACKWINS" roundNumber="4" tableNumber="6" whitePlayer="DURANDROMAIN"/>
<Game blackPlayer="MARECHALMORGANE" handicap="5" knownColor="true" result="RESULT_WHITEWINS" roundNumber="4" tableNumber="7" whitePlayer="CORNAGGIARÉMI"/>
<Game blackPlayer="ROBINCLÉ" handicap="6" knownColor="true" result="RESULT_WHITEWINS" roundNumber="4" tableNumber="8" whitePlayer="CORNUEJOLSDOMINIQUE"/>
</Games>
<TournamentParameterSet>
<GeneralParameterSet bInternet="false" basicTime="60" beginDate="2023-10-31" canByoYomiTime="300" complementaryTimeSystem="STDBYOYOMI" director="Theo" endDate="2023-10-31" fischerTime="10" genCountNotPlayedGamesAsHalfPoint="false" genMMBar="4D" genMMFloor="20K" genMMS2ValueAbsent="1" genMMS2ValueBye="2" genMMZero="30K" genNBW2ValueAbsent="0" genNBW2ValueBye="2" genRoundDownNBWMMS="true" komi="7.5" location="Marseillebb" name="SimpleMM" nbMovesCanTime="15" numberOfCategories="1" numberOfRounds="5" shortName="simplemm" size="19" stdByoYomiTime="30"/>
<HandicapParameterSet hdBasedOnMMS="true" hdCeiling="9" hdCorrection="1" hdNoHdRankThreshold="1D"/>
<PlacementParameterSet>
<PlacementCriteria>
<PlacementCriterion name="MMS" number="1"/>
<PlacementCriterion name="SOSM" number="2"/>
<PlacementCriterion name="SOSOSM" number="3"/>
<PlacementCriterion name="NULL" number="4"/>
<PlacementCriterion name="NULL" number="5"/>
<PlacementCriterion name="NULL" number="6"/>
</PlacementCriteria>
</PlacementParameterSet>
<PairingParameterSet paiBaAvoidDuplGame="500000000000000" paiBaBalanceWB="1000000" paiBaDeterministic="true" paiBaRandom="0" paiMaAdditionalPlacementCritSystem1="Rating" paiMaAdditionalPlacementCritSystem2="NULL" paiMaAvoidMixingCategories="0" paiMaCompensateDUDD="true" paiMaDUDDLowerMode="MID" paiMaDUDDUpperMode="MID" paiMaDUDDWeight="100000000" paiMaLastRoundForSeedSystem1="2" paiMaMaximizeSeeding="5000000" paiMaMinimizeScoreDifference="100000000000" paiMaSeedSystem1="SPLITANDRANDOM" paiMaSeedSystem2="SPLITANDSLIP" paiSeAvoidSameGeo="100000000000" paiSeBarThresholdActive="true" paiSeDefSecCrit="100000000000" paiSeMinimizeHandicap="0" paiSeNbWinsThresholdActive="false" paiSePreferMMSDiffRatherThanSameClub="3" paiSePreferMMSDiffRatherThanSameCountry="1" paiSeRankThreshold="1D" paiStandardNX1Factor="0.5"/>
<DPParameterSet displayClCol="true" displayCoCol="true" displayIndGamesInMatches="true" displayNPPlayers="false" displayNumCol="true" displayPlCol="true" gameFormat="full" playerSortType="name" showByePlayer="true" showNotFinallyRegisteredPlayers="true" showNotPairedPlayers="true" showNotParticipatingPlayers="false" showPlayerClub="true" showPlayerCountry="false" showPlayerGrade="true"/>
<PublishParameterSet exportToLocalFile="true" htmlAutoScroll="false" print="true"/>
</TournamentParameterSet>
<TeamTournamentParameterSet>
<TeamGeneralParameterSet teamSize="4"/>
<TeamPlacementParameterSet>
<PlacementCriteria>
<PlacementCriterion name="TEAMP" number="1"/>
<PlacementCriterion name="BDW" number="2"/>
<PlacementCriterion name="BDW3U" number="3"/>
<PlacementCriterion name="BDW2U" number="4"/>
<PlacementCriterion name="BDW1U" number="5"/>
<PlacementCriterion name="MNR" number="6"/>
</PlacementCriteria>
</TeamPlacementParameterSet>
</TeamTournamentParameterSet>
</Tournament>

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<Tournament dataVersion="201" externalIPAddress="77.128.107.78" gothaMinorVersion="5" gothaVersion="348" saveDT="20191119110542">
<Players>
<Player agaExpirationDate="" agaId="" club="13Ma" country="FR" egfPin="" ffgLicence="2200056" ffgLicenceStatus="L" firstName="Clé" grade="10K" name="Robin" participating="11111111111111111111" rank="10K" rating="1129" ratingOrigin="FFG : -921" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="2100063" ffgLicenceStatus="L" firstName="Baptiste" grade="1D" name="Fiorina" participating="11111111111111111111" rank="1D" rating="2106" ratingOrigin="FFG : 56" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="0280000" ffgLicenceStatus="L" firstName="Motoki" grade="7D" name="Noguchi" participating="11111111111111111111" rank="7D" rating="2666" ratingOrigin="FFG : 616" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="13Ma" country="FR" egfPin="" ffgLicence="1000392" ffgLicenceStatus="L" firstName="Alexandra" grade="7K" name="Goloubkov" participating="11111111111111111111" rank="7K" rating="1389" ratingOrigin="FFG : -661" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="00St" country="FR" egfPin="" ffgLicence="1600310" ffgLicenceStatus="L" firstName="Robin" grade="4D" name="Bonjean" participating="11111111111111111111" rank="4D" rating="2357" ratingOrigin="FFG : 307" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1000005" ffgLicenceStatus="L" firstName="Quentin" grade="2D" name="Rendu" participating="11111111111111111111" rank="2D" rating="2155" ratingOrigin="FFG : 105" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1700003" ffgLicenceStatus="L" firstName="Morgane" grade="7K" name="Marechal" participating="11111111111111111111" rank="7K" rating="1388" ratingOrigin="FFG : -662" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="7904900" ffgLicenceStatus="L" firstName="Dominique" grade="1K" name="Cornuejols" participating="11111111111111111111" rank="1K" rating="2035" ratingOrigin="FFG : -15" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="49An" country="FR" egfPin="" ffgLicence="1800102" ffgLicenceStatus="L" firstName="Theo" grade="3D" name="Lemoine" participating="11111111111111111111" rank="3D" rating="2317" ratingOrigin="FFG : 267" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="9791002" ffgLicenceStatus="L" firstName="Toru" grade="3D" name="Imamura-Cornuejols" participating="11111111111111111111" rank="3D" rating="2343" ratingOrigin="FFG : 293" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="2000113" ffgLicenceStatus="L" firstName="Warren" grade="2D" name="Aim" participating="11111111111111111111" rank="2D" rating="2231" ratingOrigin="FFG : 181" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1300045" ffgLicenceStatus="L" firstName="Loïc" grade="3D" name="Lefebvre" participating="11111111111111111111" rank="3D" rating="2281" ratingOrigin="FFG : 231" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="75Ju" country="FR" egfPin="" ffgLicence="0800078" ffgLicenceStatus="L" firstName="Rémi" grade="1K" name="Cornaggia" participating="11111111111111111111" rank="1K" rating="1995" ratingOrigin="FFG : -55" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="0900438" ffgLicenceStatus="L" firstName="Denis" grade="6D" name="Karadaban" participating="11111111111111111111" rank="6D" rating="2576" ratingOrigin="FFG : 526" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="38Gr" country="FR" egfPin="" ffgLicence="1800061" ffgLicenceStatus="L" firstName="Camille" grade="2D" name="Leveque" participating="11111111111111111111" rank="2D" rating="2221" ratingOrigin="FFG : 171" registeringStatus="FIN" smmsCorrection="0"/>
<Player agaExpirationDate="" agaId="" club="37To" country="FR" egfPin="" ffgLicence="2100064" ffgLicenceStatus="L" firstName="Romain" grade="2K" name="Durand" participating="11111111111111111111" rank="2K" rating="1851" ratingOrigin="FFG : -199" registeringStatus="FIN" smmsCorrection="0"/>
</Players>
<Games/>
<TournamentParameterSet>
<GeneralParameterSet bInternet="false" basicTime="60" beginDate="2023-10-31" canByoYomiTime="300" complementaryTimeSystem="STDBYOYOMI" director="Theo" endDate="2023-10-31" fischerTime="10" genCountNotPlayedGamesAsHalfPoint="false" genMMBar="4D" genMMFloor="20K" genMMS2ValueAbsent="1" genMMS2ValueBye="2" genMMZero="30K" genNBW2ValueAbsent="0" genNBW2ValueBye="2" genRoundDownNBWMMS="true" komi="7.5" location="Marseillebb" name="SimpleMM" nbMovesCanTime="15" numberOfCategories="1" numberOfRounds="5" shortName="simplemm" size="19" stdByoYomiTime="30"/>
<HandicapParameterSet hdBasedOnMMS="true" hdCeiling="9" hdCorrection="1" hdNoHdRankThreshold="1D"/>
<PlacementParameterSet>
<PlacementCriteria>
<PlacementCriterion name="MMS" number="1"/>
<PlacementCriterion name="SOSM" number="2"/>
<PlacementCriterion name="SOSOSM" number="3"/>
<PlacementCriterion name="NULL" number="4"/>
<PlacementCriterion name="NULL" number="5"/>
<PlacementCriterion name="NULL" number="6"/>
</PlacementCriteria>
</PlacementParameterSet>
<PairingParameterSet paiBaAvoidDuplGame="500000000000000" paiBaBalanceWB="1000000" paiBaDeterministic="true" paiBaRandom="0" paiMaAdditionalPlacementCritSystem1="Rating" paiMaAdditionalPlacementCritSystem2="NULL" paiMaAvoidMixingCategories="0" paiMaCompensateDUDD="true" paiMaDUDDLowerMode="MID" paiMaDUDDUpperMode="MID" paiMaDUDDWeight="100000000" paiMaLastRoundForSeedSystem1="2" paiMaMaximizeSeeding="5000000" paiMaMinimizeScoreDifference="100000000000" paiMaSeedSystem1="SPLITANDRANDOM" paiMaSeedSystem2="SPLITANDSLIP" paiSeAvoidSameGeo="100000000000" paiSeBarThresholdActive="true" paiSeDefSecCrit="100000000000" paiSeMinimizeHandicap="0" paiSeNbWinsThresholdActive="false" paiSePreferMMSDiffRatherThanSameClub="3" paiSePreferMMSDiffRatherThanSameCountry="1" paiSeRankThreshold="1D" paiStandardNX1Factor="0.5"/>
<DPParameterSet displayClCol="true" displayCoCol="true" displayIndGamesInMatches="true" displayNPPlayers="false" displayNumCol="true" displayPlCol="true" gameFormat="full" playerSortType="name" showByePlayer="true" showNotFinallyRegisteredPlayers="true" showNotPairedPlayers="true" showNotParticipatingPlayers="false" showPlayerClub="true" showPlayerCountry="false" showPlayerGrade="true"/>
<PublishParameterSet exportToLocalFile="true" htmlAutoScroll="false" print="true"/>
</TournamentParameterSet>
<TeamTournamentParameterSet>
<TeamGeneralParameterSet teamSize="4"/>
<TeamPlacementParameterSet>
<PlacementCriteria>
<PlacementCriterion name="TEAMP" number="1"/>
<PlacementCriterion name="BDW" number="2"/>
<PlacementCriterion name="BDW3U" number="3"/>
<PlacementCriterion name="BDW2U" number="4"/>
<PlacementCriterion name="BDW1U" number="5"/>
<PlacementCriterion name="MNR" number="6"/>
</PlacementCriteria>
</TeamPlacementParameterSet>
</TeamTournamentParameterSet>
</Tournament>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff