Use the '@' symbol at the end of a sub-range to weight it (example: "AK@100, AQ@50, AJ@10"). For a weighted range, all sub-ranges must be given a weight between 1 and 100, and weights belong at the end of each comma-separated sub-range (or after closing parentheses). If a hand is weighted more than once, the largest weight 'wins'.
Conventional (un-weighted) ranges of hands can be thought of as sets of hands, where we define a set in the usual way as a collection of distinct elements. For instance, "AA,22" maps to the set of hands [AsAh, AsAd, AsAc, AhAd, AhAc, AdAc, 2s2h, 2s2d, 2s2c, 2h2c, 2h2d, 2c2d]
Weighted ranges, on the other hand, correspond to weighted sets; a weighted set is a convential set combined with a function that maps each entry in the set to a weight. We will use the '@' symbol to denote weights. For instance, if we want the weighted range of aces and deuces where aces are twice as likely as deuces, we could write it as "AA@2,22@1", which would correspond to the weighted set [AsAh@2, AsAd@2, AsAc@2, AhAd@2, AhAc@2, AdAc@2, 2s2h@1, 2s2d@1, 2s2c@1, 2h2c@1, 2h2d@1, 2c2d@1]
When we choose a random hand from an unweighted range such as "AA,22", we can think of this process as reaching our hand into a bag with 12 hands and pulling one out. With a weighted range, we use the same process, but each hand appears in the bag a number of times equal to its weight. For instance, our "AA@2, 22@1" 'bag' contains 18 elements - each pair of aces appears twice, and each pair of deuces appears once.
Note that weights are relative - there is no difference in choosing a random hand from "AA@2, 22@1" and "AA@100, 22@50".
We add the '@' symbol to Generic Range Syntax for weights.
The '@' symbol is given precedence just after the ':' and '!' symbols:
Weights must come at the end of every comma-separated sub-range or after parentheses:
If we race "AA,22" vs a random hand, we expect the equity to be the average of "AA" vs a random hand, and "22" vs a random hand, and indeed, it is:
ProPokerTools Odds Oracle Results (2.1 Professional)
All-in Equity
AA | * | |
---|---|---|
Equity % | 85.2037% | 14.7963% |
22 | * | |
---|---|---|
Equity % | 50.3340% | 49.6660% |
AA,22 | * | |
---|---|---|
Equity % | 67.7689% | 32.2311% |
If we race "AA@2, 22@1" vs a random hand, aces are twice as likely. Therefore, we expect the equity to be (85.2% * 2 + 50.33%) / 3, which comes to 73.58% Happily, our intuition is confirmed:
ProPokerTools Odds Oracle Results (2.1 Professional)
AA@2,22@1 | * | |
---|---|---|
Equity % | 73.5803% | 26.4197% |