Niveau 3: Spel A25
In dit spel spelen we een 6-schoppen contract, waarbij West met de Schoppen-2 uitkomt.

De bedoelde speelwijze van de makers van Bridgemaster werkt tegen het volgende zitsel:

Opdracht 1:
Verzin een speelwijze die werkt als de kaarten zo zitten.
Uitwerking:
De volgende speelwijze werkt:
- Pak de eerste troefslag.
- Win drie slagen in klaveren.
- Win harten aas en ruiten aas.
- Troef om en om de ruiten en de harten in.
Dit geeft in totaal 12 slagen. Merk op dat het hierbij belangrijk is om eerst de klaveren te winnen voordat je heen en weer gaat troeven. Als je namelijk eerst twee keer harten speelt, kan West een klaveren weggooien en kun je geen drie klaveren meer maken.
Deze speelwijze gaat down als een tegenstander een slag kan aftroeven. Dat is het geval als iemand met minstens twee troeven (want in slag 1 raakt die een troef kwijt) een renonce harten, een renonce ruiten of maximaal twee klaveren heeft. Om zo’n kans exact te berekenen, moeten we een aantal aannames doen. De aannames die ik in het vervolg bij het berekenen genomen heb, zijn:
- We weten dat beide spelers bekend hebben in slag 1. Ze hadden oorspronkelijk dus allebei minstens één schoppen.
- Het geeft ons geen informatie welke kaart de tegenstander bijlegt. Deze aanname zegt eigenlijk dat als de tegenstander zowel de schoppen 4 als de schoppen 6 heeft hij met even grote kans beide kaarten kan neerleggen.
De tweede aanname is in de praktijk wellicht niet helemaal waar, maar zonder zo’n soort aanname valt de kans niet te berekenen. Voor het berekenen van de kans gebruiken we de kansdefinitie
. Laten we beginnen met het totaal aantal mogelijkheden te tellen:
Opdracht 2:
a) Bereken hoeveel mogelijke handen Oost voor slag 1 kon hebben als we de handen van Noord en Zuid al kennen.
b) Bereken hoeveel van deze handen er zijn als je weet dat zowel Oost als West minimaal 1 schoppen hebben.
Uitwerking a:
Er zijn in totaal 26 onbekende kaarten. Daarvan moet Oost er 13 hebben. Zo’n aantal is een combinatie, waarbij we 13 van de 26 kaarten voor Oost kiezen. Het antwoord is dus
.
Uitwerking b:
Voor Oost zijn er nu 4 opties:
- Hij heeft 1 schoppen en 12 andere kaarten. Daarvoor zijn
opties. - Hij heeft 2 schoppen en 11 andere kaarten. Daarvoor zijn
opties. - Hij heeft 3 schoppen en 10 andere kaarten. Daarvoor zijn
opties. - Hij heeft 4 schoppen en 9 andere kaarten. Daarvoor zijn
opties.
We kunnen al deze aantallen handmatig optellen. Sneller is echter om dit met een sommatie op de Grafische Rekenmachine of in de computer te doen. Dat geeft
.
Om de kans op succes te berekenen, moeten we kijken bij hoeveel van deze 9993620 manieren de speelwijze van de auteurs van BridgeMaster succes heeft. Dit netjes doen met gevalsonderscheidingen is een beetje vervelend. Ik schrijf dus liever een Python-code die voor mij telt hoeveel succesvolle mogelijkheden hier zijn. Hieronder zie je een stukje code dat telt hoeveel opties er in totaal zijn (dit geeft dus de 9993620 opties). In opdracht 3 onderzoek je stap voor stap wat al deze regels doen.

Kopieerbare code:
vijf = [1, 5, 10, 10, 5, 1]
zeven = [1, 7, 21, 35, 35, 21, 7, 1]
totaal_mogelijkheden = 0
for klaveren in range(0,8):
for ruiten in range(0,8):
for harten in range(0,8):
schoppen = 13 - klaveren - harten - ruiten
if 1 <= schoppen <= 4:
totaal_mogelijkheden += vijf[schoppen] * zeven[klaveren] * zeven[harten] * zeven[ruiten]
print(totaal_mogelijkheden)
Opdracht 3:
a) Leg uit dat Oost op 10 manieren twee van de vijf ontbrekende schoppen kan hebben.
b) Leg met je antwoord van opdracht a uit wat de getallen in de eerste twee regels code voorstellen.
c) Leg uit waarom vijf[3] * zeven[4] * zeven[2] * zeven[4] het aantal mogelijkheden voor Oost is met 3 schoppens, 4 klaveren, 2 harten en 4 ruiten.
Uitwerking a:
De 2, 3, 4, 5 en 6 ontbreken. Als Oost er twee van heeft, zijn de mogelijkheden 2-3, 2-4, 2-5, 2-6, 3-4, 3-5, 3-6, 4-5, 4-6 en 5-6. Dat zijn er 10 in totaal. Je kunt dit sneller berekenen met
, want Oost heeft twee van de vijf ontbrekende kaarten en dat is wat je met
berekent.
Uitwerking b:
In de variabele vijf staat achtereenvolgens het aantal manieren hoe Oost 0, 1, 2, 3, 4 of 5 van de vijf ontbrekende schoppen kan hebben (dat is respectievelijk
,
, …,
).
In de variabele zeven staat achtereenvolgens het aantal manieren hoe Oost 0, 1, 2, …, 7 van de zeven hartens kan hebben. Die bereken je op een soortgelijke manier met
als oost
hartens heeft.
Uitwerking c:
Als Oost 3 schoppen heeft, kan dat op
manieren. Op een soortgelijke manier kan hij vier van de zeven klaveren hebben op
manieren, twee van de zeven harten hebben op
manieren en vier van de zeven ruiten hebben op
manieren. We moeten al deze aantallen vermenigvuldigen (want iedere combinatie van schoppens kan gecombineerd worden met iedere combinatie klaveren, enzovoort). Dit geeft een aantal manieren van
. Deze aantallen 10, 35, 21 en 35 staan respectievelijk in de variabelen vijf[3], zeven[4], zeven[2] en zeven[4]. Het product geeft dus het totaal aantal mogelijkheden bij 3 schoppens, 4 klaveren, 2 harten en 4 ruiten.
We willen nu natuurlijk weten bij hoeveel van de 9993620 manieren het speelplan van de auteurs van BridgeMaster werkt. Hiervoor moeten we in de for-loop nog een test toevoegen waarmee we nagaan of het speelplan tegen de distributie die we aan het berekenen zijn, werkt. In de opgave hieronder bedenk je eerst deze eisen en schrijf je dan een werkend programma.
Opdracht 4:
a) Welke eisen moeten gelden voor de hand van Oost als Oost 4 schoppen heeft?
b) Welke eisen moeten gelden voor de hand van Oost als Oost 2 of 3 schoppen heeft?
c) Leg uit dat het speelplan in evenveel situaties werkt waarbij Oost 4 schoppen als 1 Schoppen heeft.
d) Pas het programma hierboven aan, zodat het ook het aantal manieren berekent waarbij het speelplan van de auteurs van Bridgemaster werkt.
Uitwerking a:
Als Oost vier schoppen heeft, heeft West na de start geen troeven meer. Dit betekent dat het speelplan werkt zolang Oost niet kan introeven. Daarvoor moet gelden:
- Oost heeft minimaal één harten.
- Oost heeft minimaal drie klaveren.
- Oost heeft minimaal één ruiten.
Uitwerking b:
Nu kunnen beide tegenstanders introeven. We moeten nu dus zorgen dat beide spelers niet kunnen introeven. Dat gebeurt als:
- Oost heeft minimaal één harten en maximaal zes harten.
- Oost heeft minimaal drie klaveren en maximaal vier klaveren.
- Oost heeft minimaal één ruiten en maximaal zes ruiten.
Uitwerking c:
Voor alle handen waarbij Oost 4 schoppen heeft waarbij het fout gaat, geldt:
Als we de hand van Oost aan West geven gaat het ook fout. Hierbij hoort een hand van Oost met 1 schoppen. Dit vertelt ons dat er evenveel Oost-handen zijn met 1 schoppen als met 4 schoppen waarbij de tegenstanders een introever kunnen maken.
Uitwerking d:
Ik heb dit gedaan door de situaties van 2 of 3 schoppen en van (1 of) 4 schoppen apart te testen. Voor ieder van die mogelijkheden testen we met de eisen uit opdracht a) en opdracht b) of het speelplan tegen die verdeling werkt. In opdracht c) zagen we dat het aantal situaties met 4 schoppen hetzelfde is als met 1 schoppen. In plaats van 1 schoppen dus apart te berekenen, kunnen we ook de situaties met 4 schoppen keer twee doen.

Kopieerbare code:
# vijf[3] geeft op hoeveel manier een speler 3 van de 5 kaarten in een kleur kan hebben
vijf = [1, 5, 10, 10, 5, 1]
zeven = [1, 7, 21, 35, 35, 21, 7, 1]
speelwijze_Bridgemaster = 0
totaal_mogelijkheden = 0
for klaveren in range(0,8):
for ruiten in range(0,8):
for harten in range(0,8):
schoppen = 13 - klaveren - harten - ruiten
if 1 <= schoppen <= 4:
totaal_mogelijkheden += vijf[schoppen] * zeven[klaveren] * zeven[harten] * zeven[ruiten]
if 2 <= schoppen <= 3 <= klaveren <= 4 and 1 <= harten <= 6 and 1 <= ruiten <= 6:
speelwijze_Bridgemaster += vijf[schoppen] * zeven[klaveren] * zeven[harten] * zeven[ruiten]
if schoppen == 4 and harten >= 1 and ruiten >= 1 and klaveren >= 3:
speelwijze_Bridgemaster += 2* vijf[schoppen] * zeven[klaveren] * zeven[harten] * zeven[ruiten]
print(speelwijze_Bridgemaster)
print(totaal_mogelijkheden)
print(speelwijze_Bridgemaster / totaal_mogelijkheden)
Al met al vinden we dat de speelwijze van de auteurs van BridgeMaster in zo’n 64,4 procent van de gevallen werkt.
Mijn speelwijze
Volgens mij is een alternatief speelplan beter dat werkt tegen bijvoorbeeld de volgende holding (waar het speelplan van BridgeMaster niet tegen werkt):

Opdracht 5:
Verzin een speelwijze die werkt als de kaarten zo zitten.
Uitwerking:
Hieronder staat er wat ik in mijn speelplan iedere slag ga doen:
- Pak de eerste troefslag.
- Win harten aas
- Win ruiten aas
- Troef een ruiten
- Steek over in klaveren
- Troef een ruiten
- Steek over in klaveren
- Troef een ruiten
- Troef een harten
- Trek troef
- Trek troef
- Win de laatste hoge klaverenslag
De vraag is natuurlijk of de speelwijze uit de bovenstaande uitwerking beter is. Hiervoor gaan we weer na wanneer deze speelwijze werkt. We maken weer onderscheid tussen hoeveel troeven Oost heeft.
Opdracht 6:
a) Wanneer werkt mijn speelwijze als Oost 2 of 3 schoppen heeft?
b) Wanneer werkt mijn speelwijze als Oost 4 schoppen heeft?
c) Pas het programma hierboven aan, zodat het ook het aantal manieren berekent waarbij het speelplan van mij werkt. Wat is de kans dat mijn speelplan werkt?
Uitwerking a:
Zowel Oost als West kunnen nu mogelijk introeven in slag 2, 3, 5 of 7 (in slag 12 hebben ze allebei geen troef meer). Dat gebeurt als:
- Oost of West een renounce ruiten of harten heeft.
- Oost of West minder dan twee klaveren heeft.
- Oost of West in totaal minder dan vijf ruiten plus klaveren heeft (want dan kan die op de ruitenslagen die ik introef klaveren weggooien).
Bovenstaande eisen leiden tot de volgende ongelijkheden voor de hand van Oost:
- Oost heeft minimaal één harten en maximaal zes harten.
- Oost heeft minimaal één ruiten en maximaal zes ruiten.
- Oost heeft minimaal twee klaveren en maximaal vijf klaveren.
- Oost heeft minimaal vijf (ruiten + klaveren) en maximaal negen (ruiten + klaveren).
Uitwerking b:
Nu is Oost de enige die kan introeven. Hij kan dat echter ook in slag 12 mogelijk nog doen, omdat hij dan nog een troef heeft. Dat gebeurt alleen niet als het hem niet lukt om nog een harten of een ruiten over te houden in zijn hand. Aangezien er twee keer harten en vier keer ruiten gevraagd wordt, mag hij dus niet meer dan twee harten en niet meer dan vier ruiten in zijn beginhand hebben.
Als we bovenstaande combineren met de eis dat Oost nog steeds niet mag kunnen introeven in slag 2, 3, 5 of 7, krijgen we als eisen voor ons speelplan:
- Oost heeft minimaal één en maximaal twee harten
- Oost heeft minimaal één en maximaal vier ruiten
- Oost heeft minimaal drie klaveren (hoeven we niet te controleren, want dit gaat met de eisen dat hij maximaal twee harten en maximaal vier ruiten heeft automatisch goed).
Uitwerking c:
In de code heb ik weer de truc gebruikt waarbij er evenveel Oost-handen met 1 schoppen als met 4 schoppen zijn waarbij het speelplan werkt. In plaats van het aantal handen met 1 schoppen en met 4 schoppen apart te berekenen, doe ik dus het aantal handen met 4 schoppen keer twee. Dat geeft:

Kopieerbare code:
vijf = [1, 5, 10, 10, 5, 1]
zeven = [1, 7, 21, 35, 35, 21, 7, 1]
speelwijze_Bridgemaster = 0
totaal_mogelijkheden = 0
speelwijze_Ypma = 0
verdeling_43 = 0
for klaveren in range(0,8):
for ruiten in range(0,8):
for harten in range(0,8):
schoppen = 13 - klaveren - harten - ruiten
if 1 <= schoppen <= 4:
aantal_handen = vijf[schoppen] * zeven[klaveren] * zeven[harten] * zeven[ruiten]
totaal_mogelijkheden += aantal_handen
if 2 <= schoppen <= 3 <= klaveren <= 4 and 1 <= harten <= 6 and 1 <= ruiten <= 6:
speelwijze_Bridgemaster += aantal_handen
if schoppen == 4 and harten >= 1 and ruiten >= 1 and klaveren >= 3:
speelwijze_Bridgemaster += 2 * aantal_handen
if 2 <= schoppen <= 3 and 1 <= harten <= 6 and 1 <= ruiten <= 6 and 2 <= klaveren <= 5 <= klaveren + ruiten <= 9:
speelwijze_Ypma += aantal_handen
if schoppen == 4 and 1 <= harten <= 2 and 1 <= ruiten <= 4:
speelwijze_Ypma += 2 * aantal_handen
print(speelwijze_Bridgemaster / totaal_mogelijkheden)
print(speelwijze_Ypma / totaal_mogelijkheden)
De code vertelt ons dat we bij mijn alternatieve speelplan 72,5% op succes hebben. Dat is 8% meer dan het oorspronkelijke antwoord. Dat lijkt mij toch de moeite waard!
Ter herinnering: De kansen hierboven zijn de kansen na slag 1 waarbij we al weten dat de schoppen niet 5-0 verdeeld zijn. Als de schoppen wel 5-0 verdeeld zijn, is de enige kans om voor het eerste speelplan te gaan (maar je weet al dat je dat moet doen!).
Enige reflectie
Een interessante vraag is waarom mijn speelplan hier zoveel beter is. De hoofdreden is dat bij het speelplan van Bridgemaster het in bijna alle gevallen noodzakelijk is dat de klaveren 4-3 verdeeld zitten. Iemand mag alleen meer klaveren hebben als die ook vier schoppen heeft. Die combinatie heeft een kleine kans.
Bij mijn speelplan gaat het veel vaker goed als de klaveren 5-2 verdeeld zitten. De klaveren zitten zo vaak 5-2 dat de extra kans wat dit oplevert meer dan opweegt tegen de extra eisen in de andere kleuren.