See the top rated post in this thread. Click here

Page 1 of 2 12 LastLast
Results 1 to 13 of 26

Thread: Optimal play and sensitivity to ROR

  1. #1


    2 out of 2 members found this post helpful. Did you find this post helpful? Yes | No

    Optimal play and sensitivity to ROR

    This is the promised follow-up to the earlier thread about SCORE for optimal play. As usual, let's set the stage: all results here are for 6 decks, S17, DOA, DAS, SPL1, no surrender, 4.5/6.0 pen, floored indices with 1/2 deck resolution, spread 1-16.

    First, some house-keeping to clean up the table of SCOREs for the various complexities of betting and playing strategies: I re-formatted to make it a bit easier to read, changed the Hi-Opt II insurance index to +5, and computed accurate variance (resulting in slightly lower SCOREs) and exact corresponding risk of ruin (resulting in slightly lower RORs).

    Code:
    Bet strategy  | Play strategy  |  $/hr | SCORE | ROR % | <=0  +1  +2  +3  +4  +5  +6  +7  +8  +9 >=10
    =====================================================================================================
    Hi-Lo         | Basic TDZ      | 14.46 | 15.03 | 12.49 |   6, 20, 57, 93, 96, 96, 96, 96, 96, 96, 96
    Optimal       | Basic TDZ      | 15.90 | 17.22 | 11.45 |   6:1:96
    
    Hi-Lo         | Hi-Lo I18 BJA3 | 21.35 | 21.30 | 13.45 |   8, 23, 63,102,128,128,128,128,128,128,128
    Hi-Lo         | Hi-Lo I18 Cac  | 21.51 | 21.59 | 13.29 |   8, 23, 63,102,128,128,128,128,128,128,128
    Hi-Lo         | Hi-Lo full     | 22.22 | 22.47 | 13.08 |   8, 23, 63,102,128,128,128,128,128,128,128
    
    Optimal       | Hi-Lo I18 BJA3 | 23.75 | 24.71 | 12.33 |   8:1:128
    Optimal       | Hi-Lo I18 Cac  | 24.00 | 25.06 | 12.24 |   8:1:128
    Optimal       | Hi-Lo full     | 24.67 | 26.01 | 12.00 |   8:1:128
    Optimal       | Hi-Lo full     | 26.23 | 26.08 | 13.52 |   9:1:144
    
    Hi-Opt II ASC | Hi-Opt II full | 27.01 | 26.90 | 13.48 |   9,  9, 25, 48, 72, 96,119,144,144,144,144
    Optimal       | Hi-Opt II full | 28.25 | 28.59 | 13.04 |   9:1:144
    
    Hi-Lo         | Optimal CDZ-   | 30.07 | 31.10 | 12.47 |   9, 31, 74,118,144,144,144,144,144,144,144
    Hi-Opt II ASC | Optimal CDZ-   | 33.18 | 33.12 | 13.39 |  10, 10, 30, 55, 80,105,129,155,160,160,160
    Optimal       | Optimal CDZ-   | 34.90 | 35.38 | 12.97 |  10:1:160
    A few comments on this table: first, as has been pointed out earlier, any row without the word "optimal" somewhere in it isn't really news. That is, for example, a Hi-Lo player can significantly improve win rate performance by switching to Hi-Opt II playing strategy, in this particular case about 20% improvement. Nothing new there.

    What I think is interesting new information, however, is the observation that perfect betting yields much less improvement than perfect play. The above table is sorted by increasing win rate and SCORE. At the low end is the basic strategy player betting Hi-Lo... and only slightly better is the basic strategy player betting perfectly. At the high end is the optimal strategy player, who does better than all of the rest of the crew, no matter what betting strategy he uses. (It is interesting that Hi-Lo index play seems to be the exception here; that is, full indices aren't worth as much as perfect betting with Illustrious 18.)

    Also, note there are two entries for Hi-Lo full index play with perfect betting: one with minimum bet $8 and the other with $9. The former is included as a "level field" comparison with the Illustrious 18 players, but the latter is the best we can do subject to the 13.5% ROR constraint. The point in including both is to again highlight the cost of estimating (vs. exact computation of) ROR.


    As mentioned at the end of the earlier thread, I think it's useful to be able to compare these various complexities of strategy when constrained to at least moderately more realistic betting ramps, and at more comfortably lower risks of ruin. To that end, the following figure is in essentially the same format as the original, but with all of the updates over the last month or two:

    score_ror.jpg

    Here is the idea: as with SCORE, let's assume we start with a $10,000 bankroll... but are constrained to bet a minimum of $10 on each round, bet the maximum of $160 on true counts of 10 or higher, and multiples of $10 in between. Each point in the above figure represents one possible such ramp, where the x-coordinate is the corresponding risk of ruin, and the y-coordinate is the corresponding win rate. The vertical red line indicates the SCORE-targeted risk of ruin of 1/e^2, or about 13.5%.

    (For reference, I included the SCORE-optimized win rates from the above table on the figure, indicated by the individual points clustered around the red line.)

    Subject to this $10-multiple betting constraint, we can use this figure to determine achievable win rate for any acceptable risk of ruin. For example, using the red line to target the same 13.5% ROR that we used to compute SCORE, we find the point to the *left* of that vertical line that has the highest win rate. The following table shows the results. Note, for example, that for fixed basic TDZ strategy, we simply can't do it: there is no point far enough to the left, i.e., the lowest risk of ruin is 14.90%.

    Code:
    Bet strategy  | Play strategy  |  $/hr | SCORE | ROR % | <=0  +1  +2  +3  +4  +5  +6  +7  +8  +9 >=10
    =====================================================================================================
    Practical     | Basic TDZ      |  8.59 |       | 14.90 |  10, 10, 30, 50, 70, 90,110,130,150,160,160
    Practical     | Hi-Lo I18 BJA3 | 19.76 |       | 13.50 |  10, 20, 50, 80,110,150,160,160,160,160,160
    Practical     | Hi-Lo I18 Cac  | 20.16 |       | 13.53 |  10, 20, 50, 80,110,160,160,160,160,160,160
    Practical     | Hi-Lo full     | 21.18 |       | 13.46 |  10, 20, 50, 90,110,150,160,160,160,160,160
    Practical     | Hi-Opt II full | 26.51 |       | 13.53 |  10, 10, 20, 40, 70, 90,110,120,150,160,160
    Practical(HO2)| Optimal CDZ-   | 33.09 |       | 13.49 |  10, 10, 30, 60, 80,100,130,150,160,160,160
    But more importantly, this figure shows how win rate degrades as we tolerate less and less risk of ruin. For example, suppose that we want to limit ourselves to, say, 5% risk of ruin. Constrained to integral bets starting with 1000 units, it can't be done! The lowest feasible risk of ruin is about 5.6%, realized only by the optimal strategy player (the left-most blue point in the figure), with a corresponding win rate of only 16.45/hr.

    This is getting long, so one final thought: I'm not sure how best to compute these performance options for optimal play. In the above figure, I cheated: the blue optimal play points actually reflect betting behavior using the ramp for the Hi-Opt II ASC true count. This yields close to, but not quite, the optimal-betting performance. The problem is, I'm not sure how to "optimally" utilize any particular $10-multiple betting ramp, since we are constrained to a smaller number of distinct wagers (11, up through true count 10) than the bet spread (1-16) would otherwise allow.

  2. #2


    Did you find this post helpful? Yes | No
    Quote Originally Posted by Tthree View Post
    Eric's research shows that like I have been saying it is worth the effort in BJ as well. Making better playing decisions is where the biggest improvements in EV can be found despite supposed experts on basic counting approaches saying otherwise forever. Unfortunately they are ploppies when it comes to advanced counting methods.
    We should be careful here. I think the data presented so far do suggest that "making better playing decisions is where the biggest improvements in EV can be found" (my emphasis)... but not necessarily that they have yet been found, so to speak. That is, we have found endpoints of performance (the Hi-Lo betting basic strategy player at one end, the optimal betting/playing strategy player at the other end), and put a few well-known indexed strategies (Hi-Lo I18, full indices, and Hi-Opt II) on the board in between those two endpoints. And we observe that there still appears to be quite a bit of room in between, say, Hi-Opt II full index play, and perfect play.

    But I would argue that we still don't know where any particular "non-linear" (i.e., multi-parameter) count sits in that spectrum of performance. Granted, we've shown that there is room to move to the right along that spectrum. But to claim that your system, Tthree, or anyone else's, does indeed sit "out there to the right," I think has yet to be quantified (or to be precise, at least has yet to be reported, if analysis of your or others' systems has already been analyzed).

  3. #3
    Senior Member Bubbles's Avatar
    Join Date
    Sep 2015
    Location
    South West
    Posts
    957


    Did you find this post helpful? Yes | No
    Thank you Eric :-)

    Sent from Tapatalk

  4. #4


    Did you find this post helpful? Yes | No
    Where does the additional advantage of optimal play (over, say, Hi-Opt II) come from? The following gist is just an initial quick look at trying to answer that question:
    https://gist.github.com/possibly-wro...aca2bb0b0cfb14

    This is running through 1000 simulated shoes (with the same setup as described in the OP) of Hi-Opt II full index play, identifying each case where the player was presented with a stand/hit/double/split option, and made a sub-optimal decision. Each line indicates the depleted shoe composition (ace through ten), the player hand vs. dealer up card, a {0,1} 3-tuple indicating whether doubling, splitting, or surrendering, resp., are/are not allowed in the current situation (for these rules, the last surrender bit will always be zero), and finally, the optimal play compared with Hi-Opt II.

    Out of 43,176 simulated rounds, there are 1637 such "errors," or around 3.8% of the time. (We can't quite just divide here, since I haven't grouped possible multiple errors in a single round.)

    Granted, this raises as many questions as it answers. For example, which of these errors are the most costly in terms of EV, which of them are wrong as index departures from basic, or the other way around, etc.? At any rate, this was just low-hanging fruit, will try to take a closer look later. But this is the sort of thing I would be curious to see for, say, Tthree's system, or Tarzan's, etc.

  5. #5


    Did you find this post helpful? Yes | No
    Eric,

    this table at the end looks a bit ambiguous to me. Could you explain?

    -40 : 7
    -30 : 76
    -25 : 5
    -20 : 1819
    -15 : 84
    -10 : 18634
    -5 : 21
    0 : 3839
    5 : 64
    10 : 13910
    15 : 1914
    20 : 2670
    30 : 107
    40 : 26

  6. #6


    Did you find this post helpful? Yes | No
    Quote Originally Posted by NotEnoughHeat View Post
    Eric,

    this table at the end looks a bit ambiguous to me. Could you explain?

    -40 : 7
    -30 : 76
    -25 : 5
    -20 : 1819
    -15 : 84
    -10 : 18634
    -5 : 21
    0 : 3839
    5 : 64
    10 : 13910
    15 : 1914
    20 : 2670
    30 : 107
    40 : 26
    Sorry-- that's a holdover from benchmarking speed of my CA-embedded-in-sim. The table is a histogram of net outcomes of a 10-unit wager on a round. The left column is the outcome, and the right column is the number of simulated rounds yielding that outcome (this column sums to the 43,167 total simulated rounds indicated earlier).

    This and the original analysis were done using the blackjack7/src/pdf/count_pdf.cpp program included in my software (checking and recording these index play errors required a few tweaks, I can provide source if interested).

    The speed numbers at the end vary a lot depending on what it is we're trying to do. If we are just simulating a given, pre-specified strategy, such as Hi-Opt II with full indices, then it's pretty fast, over 6 million rounds per second. But if, as in this case, we have to re-compute optimal strategy for each pre-deal depleted shoe, then we slow down to between 80 and 300 milliseconds per round, or 3-12 rounds per second. (This depends critically on re-splitting rules, SPL1 is faster than SPL3.) If we also wanted not just the exact EV, but the exact complete probability distribution of outcomes for each round (required for this larger analysis), it slows further to about 2.5 seconds per round.

  7. #7
    Senior Member
    Join Date
    Dec 2011
    Location
    3rd rock from Sol, Milky Way Galaxy
    Posts
    14,158


    Did you find this post helpful? Yes | No
    How would you get any 5, -15 and -25 for the results for a 10 bet on 1 spot? I can see getting -5 with a surrender but the rare number of times -5 was a result indicates that it is not from surrender. You can't surrender after splitting. Does your work allow surrender after splitting? If so that is a mistake.

  8. #8


    Did you find this post helpful? Yes | No
    Quote Originally Posted by Tthree View Post
    How would you get any 5, -15 and -25 for the results for a 10 bet on 1 spot? I can see getting -5 with a surrender but the rare number of times -5 was a result indicates that it is not from surrender. You can't surrender after splitting. Does your work allow surrender after splitting? If so that is a mistake.
    The distribution includes insurance wagers, which I was missing in the original analysis.

  9. #9
    Senior Member
    Join Date
    Dec 2011
    Location
    3rd rock from Sol, Milky Way Galaxy
    Posts
    14,158


    Did you find this post helpful? Yes | No
    Quote Originally Posted by ericfarmer View Post
    The distribution includes insurance wagers, which I was missing in the original analysis.
    There you go. Losing an insurance bet combined with various win/push/lose combinations for splitting and doubling gets those totals. I should have thought of that. Thanks.

  10. #10


    Did you find this post helpful? Yes | No
    Eric, would your simulator be able simulate a count system which, to be properly simulated, needs to accommodate different tags for betting, insurance, and all the playing decisions? I developed an advanced count but can't run simulations myself. It should be better than HiOpt II ASC, but I'm not sure how much better. I don't want to disclose publicly what the count is, however.


    Sent from my iPhone using Tapatalk

  11. #11


    Did you find this post helpful? Yes | No
    Quote Originally Posted by bejammin075 View Post
    Eric, would your simulator be able simulate a count system which, to be properly simulated, needs to accommodate different tags for betting, insurance, and all the playing decisions? I developed an advanced count but can't run simulations myself. It should be better than HiOpt II ASC, but I'm not sure how much better. I don't want to disclose publicly what the count is, however.
    Yes; betting, insurance, and playing decisions can be specified independently. In each case, think of the (betting|insurance|playing) strategy as a function: the inputs to the function are the distribution of cards of each rank remaining in the current depleted shoe, and in the case of playing strategy, the dealer's up card, the cards in the player's current hand, and whether doubling down, splitting, or surrender is allowed in the current situation. The output from the function is the corresponding strategy option: the amount to bet, whether to take insurance, or whether to stand/hit/double/split/surrender.

    ("Knowing" the full distribution of the current depleted shoe is typically more information than is actually available. But that's okay-- your implementation can "reduce" that distribution to whatever you plan to actually use, such as a single-parameter true count, or grouped multi-parameter count, or whatever, and then use just that to make your strategy decisions.)

    This sort of thing has come up in discussion here before. It's worth trying to emphasize again (although it wasn't very successful last time ) that it is possible, probably with some up-front coding help from me, that you could use my software to evaluate your system... without ever disclosing it even to me. A simplest example of this sort of thing are the single-parameter systems already able to be represented in my CA. Consider Hi-Opt II, for example: those full indices are specified in blackjack7/indices/hi_opt_2.txt, in a format that my CA knows how to read. Now suppose that you come up with a new single-parameter system: you can create a new file in that same format, just with different values (we can talk in more detail about how that works if necessary), but without ever disclosing those values (or that file) to me or anyone else.

    Of course, your proposed system might be, say, multi-parameter, in which case that particular file format doesn't have enough expressive power to handle that. But you can see how we could work together to hammer out a more sophisticated format (not the file itself, just the format), that I could write some additional code to read. Then you create your file, with the actual values/indices/whatever, and feed it into my (updated) CA yourself. (Granted, this assumes that the format alone does not disclose critical information about the nature of your proposed system. But this seems easy to handle.)

    Hope this helps...

  12. #12


    Did you find this post helpful? Yes | No
    Eric, great post. Informative and educational.

  13. #13


    Did you find this post helpful? Yes | No
    Hi Eric Farmer


    In your Blackjack7.zip file, your strategy.exe file will generate the EVs for all possible strategy(HIT, STAND, DOUBLE, SPLIT, SURRENDER, INSURANCE) when input dealer's upcard and player cards, however I guess the EVs are base on all cards (FULL DECKS).


    Hope you could modify your program to include these :-
    1) Modify your strategy.exe so that it can calculate EVs of perfect composition dependent strategy of any given BJ hands(any dealer upcard vs any player hand) base on exact remaining cards. For example, after 12 rounds, the remaining number of cards in a 8 deck games is 352, can your strategy.exe calculate EVs of round 13, dealer's 9 vs player's 5,7,2( player 3 cards total 14 points) base on remaining 352 cards(instead of 416 cards) and delaer's upcard + player cards ?


    2) Allow option for Early surrender against 10(ES10) and Early surrender against any cards(including Ace).
    3) Allow option for Draw to split Aces.
    4) Allow option for Double to split Aces.
    5) Allow option for Peek or ENHC( no peek).
    6) Allow option for insurance.


    Hope to get your reply soon


    Regards


    James

Page 1 of 2 12 LastLast

Similar Threads

  1. More progress on SCORE for optimal play
    By ericfarmer in forum General Blackjack Forum
    Replies: 84
    Last Post: 05-30-2018, 07:36 AM
  2. Toward SCORE for optimal play
    By ericfarmer in forum General Blackjack Forum
    Replies: 30
    Last Post: 01-18-2017, 07:53 AM
  3. pm: Optimal bet
    By pm in forum Blackjack Beginners
    Replies: 6
    Last Post: 10-25-2004, 08:45 PM
  4. 98%: Optimal Betting
    By 98% in forum Theory & Math
    Replies: 11
    Last Post: 07-30-2004, 11:44 AM
  5. Replies: 0
    Last Post: 01-10-2004, 01:14 PM

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  

About Blackjack: The Forum

BJTF is an advantage player site based on the principles of comity. That is, civil and considerate behavior for the mutual benefit of all involved. The goal of advantage play is the legal extraction of funds from gaming establishments by gaining a mathematic advantage and developing the skills required to use that advantage. To maximize our success, it is important to understand that we are all on the same side. Personal conflicts simply get in the way of our goals.