Tijdens de SWI 2020 bedenken wiskundigen slimme oplossingen voor problemen uit de praktijk. Dit keer presenteren de groepen een rechtvaardiger ratingsysteem voor dubbelspel in het tennis en een beter distributieschema voor webwinkel-pakketjes.
Wetenschappers besluiten hun presentaties bijna altijd met een disclaimer in de trant van ‘verder onderzoek is nodig’. Daar heeft David Kok vandaag geen boodschap aan. De Leidse wiskundige presenteert namens zijn groep op de afsluitende dag van de SWI 2020 een bijna kant-en-klaar product: een sterk verbeterd rating_-systeem voor het dubbelspel in het tennis. _’And we know it works’ concludeert hij, terwijl achter hem de laatste dia stelt dat hun systeem ‘alle problemen met het huidige systeem oplost’.
In de zaal zitten wiskundigen die de afgelopen week in groepjes intensief aan problemen hebben gewerkt die door bedrijven zijn aangedragen. Vandaag moet elke groep de bereikte resultaten presenteren. De problemen zijn binnen zo’n week nog niet helemaal opgelost, maar het is verbazingwekkend hoe ver de wiskundigen er in zo’n korte tijd mee komen.
Kok en de rest van deze groep die zich op maandagmiddag, direct na de bedrijfspresentaties, op het tennis-rating-probleem stortten, hadden het misschien wat makkelijker dan de overige vijf groepen. Er bestaan namelijk al goede ratings voor individuele sporten, zoals de Elo- en Glicko- rating voor schaken. Ook de Nederlandse tennisbond KNLTB (ruim een half miljoen leden, alleen de KNVB is groter) hanteert een Elo-achtig systeem voor individuele spelers dat redelijk voldoet.
Wisselende duo’s
Maar tennis kent het fenomeen ‘dubbelspel’. Iedere speler heeft behalve een single- ook een dubbelspel-rating. Die dubbelspel-rating geldt voor individuele spelers, want die vormen in de praktijk telkens wisselende duo’s. De bestaande dubbelspel-rating voldoet echter niet. Als een dubbel bestaat uit twee spelers met een groot verschil in rating, telt het resultaat van een tennismatch die ze spelen sowieso niet. Dan nog kan het voorkomen, dat een speler die een match wint, rating-punten verliest en omgekeerd. Zo blijkt het rating-systeem in de praktijk het spelen van dubbelspel-matches te ontmoedigen.
De KNLTB hoopte dat de wiskundigen deze week een rechtvaardig systeem voor dubbelspelen zouden ontwerpen dat geen absurde rating-punten uitdeelt, dat ook de resultaten van dubbels met een groot niveauverschil kan verwerken, en – zeker niet onbelangrijk – dat is uit te leggen aan de spelers. Om realistische tests met een nieuw systeem mogelijk te maken, stelde de tennisbond een geanonimiseerde dataset van 2,5 gigabyte met de resultaten van miljoenen gespeelde wedstrijden beschikbaar.
De oplossing waar Kok en zijn team mee kwamen was wiskundig relatief simpel. Als twee tennissers A en B een dubbelteam vormen (met A per definitie de sterkere speler), en individuele dubbel-ratings RA en RB, dan worden die twee ratings opgeteld volgens de formule:
RAB = 0,53 x RA + 0,47 x RB
(RA telt iets zwaarder mee dan RB, omdat uit een analyse van gespeelde dubbelpartijen bleek, dat een dubbelteam iets meer profiteert van elk extra rating-punt van de sterkere speler, dan dat het team wordt verzwakt door elk rating-punt minder van de zwakkere speler).
Vervolgens doe je alsof een dubbelpartij een single-partij is tussen twee duo’s met ratings RAB en RCD. Het resultaat van de match levert de winnaar pluspunten op en de verliezer minpunten. Beide duo’s hebben na de wedstrijd dus veranderde ratings R’AB en R’CD, die je volgens dezelfde formule kunt opsplitsen in individuele ratings R’A, R’B, R’C en R’D.
Elo en Glicko
Om het aantal ratingpunten te bepalen dat bij een partij op het spel staan, gebruikt het team het Glicko-systeem. Dit is een uitbreiding van het oudere Elo-systeem, waarin een winnende speler een aantal punten krijgt dat alleen afhangt van de eigen rating R en die van de tegenstander. In het Gliko-systeem heeft een speler niet alleen een rating R, maar ook een RD (rating deviance, de onzekerheid in de rating). Immers, een rating die gebaseerd is op maar twee of drie partijen is heel onzeker (hoge RD), terwijl een rating gebaseerd op vijftig partijen veel betrouwbaarder verankerd is (lage RD).
In dit systeem krijg je na een gewonnen partij relatief weinig ratingpunten erbij als je eigen RD laag is, en/of als de RD van je tegenstander hoog is. Het idee hierachter is, dat één uitslag (winst of verlies) slechts een beperkte hoeveelheid informatie geeft, die dus relatief weinig invloed moet hebben op een rating die al sterk verankerd is. En de hoeveelheid informatie in één uitslag is des te minder, naarmate de rating van de tegenstander onzekerder was.
Het combineren en weer opsplitsen van de individuele RDA en RDB tot een RDAB is wat gecompliceerder dan bij de RAB, maar uiteindelijk is dit niet meer dan rekenwerk dat geknipt is voor een computerprogramma, dat de wiskundigen dan ook geschreven hebben in die week.
“We hebben veel meer gedaan dan verwacht,” concludeert David Kok bij de afsluitende lunch. Hoewel het voorspellen van uitslagen niet het eerste doel van een ratingsysteem is, geeft het volgens Kok toch vertrouwen dat het vroegere ratingsysteem 65% van de uitslagen correct voorspelde, terwijl dit bij het nieuwe systeem 80% is. Althans, in de dataset van 2,5 gigabyte die beschikbaar was.
Postpakketten
Deze week werden nog vijf andere problemen aangedragen. Sommige gingen over het optimaliseren van logistieke processen, waar de link met de wiskunde voor de hand ligt. Maar er was ook een chip-fabrikant die een snellere manier zocht om druppels water van een silicium wafer af te blazen. Er is namelijk een stap in de fabricage waarbij die aan de onderkant nat worden. Om ze droog te maken, worden de druppels er met pulsen perslucht vanaf geblazen. Wat is het optimale verloop van zo’n puls? Als je te hard blaast verspreidt de druppel zich juist over de wafer, maar wat ‘te hard’ is hangt ook af van de grootte van de druppel en z’n positie op de wafer. Weer een heel ander soort probleem werd aangedragen door een groep medische onderzoekers die een beter model wilden voor de impact van lopen op de belasting van het kraakbeen in gewrichten.
PostNL schotelde de wiskundigen een typisch logistiek optimalisatieprobleem voor. Elke dag bezorgt PostNL tienduizenden pakketten van webwinkels bij klanten thuis. Zo’n webwinkel stuurt de producten eerst per vrachtwagen van PostNL naar een van de twintig distributiecentra van PostNL, die verspreid over heel Nederland liggen. In zo’n distributiecentrum worden van ‘s morgens vroeg tot twee uur ‘s nachts de producten gesorteerd, verpakt en diezelfde dag of de volgende ochtend met busjes naar de klanten gebracht.
De probleemstelling betreft de aanvoer van de webwinkels naar de distributiecentra. Hoewel het voor de hand ligt om de spullen van elke webwinkel naar het dichtstbijzijnde distributiecentrum te brengen, is dit niet optimaal. De meeste magazijnen van webwinkels liggen namelijk in het zuiden van het land, terwijl hun klanten zich concentreren in de grote steden. Dit leidt er soms toe, dat sommige distributiecentra het aanbod aan pakketjes niet aankunnen, terwijl andere onderbezet zijn.
Gegarandeerd optimaal?
Een groep wiskundigen ging dit probleem te lijf met grafentheorie en bekende optimalisatietechnieken. Om een gegarandeerd optimale oplossing te vinden zou onpraktisch veel rekentijd op computers nodig zijn, maar door het probleem in stukken te knippen en per stuk naar de beste oplossing te zoeken, konden ze op vrijdag een bijna-optimale oplossing presenteren. “Probleem opgelost,” zei de presentator met enige trots, “zij het binnen bepaalde randvoorwaarden, zoals dat er altijd voldoende vrachtwagens beschikbaar zijn.”
In de bijna-optimale oplossing zaten geen grote verrassingen; de computer vond niet dat je met producten uit Limburg beter naar een distributiecentrum in Groningen kon rijden. Maar het was wel degelijk gunstiger om niet altijd naar het dichtstbijzijnde distributiecentrum te gaan, maar naar een andere iets verderop. Ook kon het gunstig zijn om bepaalde distributiecentra eerder op de dag al te sluiten. Sterker nog, de computer vond dat sommige distributiecentra beter helemaal konden sluiten. Laat de vakbonden het maar niet horen.