# Pruning

I added pruning to my single-draw 2-7 calculator and as expected it sped things up quite a bit. If a choice of draw by player A leads to a worse EV for player A than some already-explored draws (which contains the opponents' best responses) then there is no sense exploring that branch any further. In particular, this can be determined while still enumerating the possible results--- we can calculate A's maximum EV as 1.0 - the partial EV's already calculated for the other players.

So if player A already has a draw that wins 80% of the time, we may only have to enumerate slightly more than 20% of the cases on a different draw to judge that it is inferior. We can then skip all the other possible draws the other players (B, C, etc.) could make as well. This is a pretty standard technique; it can be applied here because the EV for each player (and the total EV) is bounded so we don't run into some of the odd multi-player cases.

Example case:

```Dead cards: 5s 5c
0: 3s5h7d9c/Qs 0.487821
1: 2s4s6s8c/Qc 0.512179
```

Before:
Draws examined: 72454441
Hand comparisons: 380306841

After:
Draws examined: 50012
Hand comparisons: 81115
Pruned draws: 44

This hand is an example I came up with where even in the perfect-information game, position matters. If the players draw in reverse order, the Q8 should stand pat while the Q9 breaks, for 0.5 equity each.
Tags:
• Post a new comment

#### Error

default userpic