Poker-AI.org
http://poker-ai.org/phpbb/

HU LUT 1 vs 1
http://poker-ai.org/phpbb/viewtopic.php?f=24&t=3253
Page 1 of 1

Author:  nefton [ Sat Sep 14, 2019 4:02 pm ]
Post subject:  HU LUT 1 vs 1

Have anybody HU LUT 1 vs 1?
1326 x 1326 x data_size?
Calculating now own, but speed too slow.
65k itterations for each, 4 cores, and it will take about 22 hours.
My data size is 2 bytes.
Probability of player1 win in 1/0xFFFF parts. (+1/2 of draw)
Think that 0xFFFF itterations is not enought to this. Need mutch more (10x?)

Author:  spears [ Sat Sep 14, 2019 4:35 pm ]
Post subject:  Re: HU LUT 1 vs 1

I lost them but they were too big to send easily anyway.

If I remember correctly on ancient machine single threaded exploiting isomorphisms and calculating exactly
16432 turn matrices at 2 seconds each => 9 hours
1755 flop matrices at 20 seconds each => 10 hours
preflop can't remember
river matrices not required just hand ranks for each board

I calculated in java floats (4 bytes) but I doubt you need more than 1 byte accuracy (1 in 256)

Author:  nefton [ Sat Sep 14, 2019 4:44 pm ]
Post subject:  Re: HU LUT 1 vs 1

I use 2 bytes per hand (1/65k probability resolution)
too big size? 1326*1326*2bytes = 3.5Mbytes

Author:  spears [ Sat Sep 14, 2019 5:19 pm ]
Post subject:  Re: HU LUT 1 vs 1

Should be plenty. But you only need half the matrix.

Author:  nefton [ Sat Sep 14, 2019 5:52 pm ]
Post subject:  Re: HU LUT 1 vs 1

spears wrote:
But you only need half the matrix.

Yes, but dont want to write complicated code to deal with half (less than half) matrix.
Only 2x size reduction. Think in 2019 3.5Mb or 1.5Mb doesnot mater :)

Will put here code after doing some code revision. May be someone want to calculate this lut in more precision.
Think to get precizion as last bit in 2 bytes (1/65000) need about 100 * 65k itterations.
Will also put 65k itterations lut later.

Attachments:
File comment: HU 1 vs 1 LUT
code.zip [14.63 KiB]
Downloaded 552 times

Author:  HontoNiBaka [ Sat Sep 14, 2019 9:27 pm ]
Post subject:  Re: HU LUT 1 vs 1

You mean preflop equities?

Author:  nefton [ Sun Sep 15, 2019 4:32 am ]
Post subject:  Re: HU LUT 1 vs 1

HontoNiBaka wrote:
You mean preflop equities?

yes. want to repeat HU nash table :)

Author:  nefton [ Mon Sep 16, 2019 7:44 am ]
Post subject:  Re: HU LUT 1 vs 1

About precision of calculating win equity. Founded that there are ABSOLUTE precision!
Hero has 2 cards, opp has 2 cards too.
In deck are 48 cards remaining. So it can only be 1 712 304 possible turns.
3 possible results: wi1, win2, draw.
As pokers rule said if draw -> bank splitted.
So for win player got 2 points, for draw 1 point, for loose 0 points.
So maximum point hero can win (100%) = 1712304*2 = 3424608.
And any win probability can be reprezented as N/3424608, whee N is INTEGER.
So there is absolute ultimate precision. :) (and only 4 bytes need to store)
Will have it in about a week of calculations :)

Author:  shalako [ Tue Oct 15, 2019 4:58 pm ]
Post subject:  Re: HU LUT 1 vs 1

I need to create a PLO LUTs for all 1755 flops but keep running out of ram. I was able to do this with holdem quite easily but I have no clue on how to accomplish this on 147k PLO combos. I am using the PLO 6max 47% BU RFI range as the max number of combos instead of all 270k to cut down this process (since that would be the widest range I would ever face in reality). I am trying to use Python and RayEval to do this but it seems like an impossible task? Any help would be appreciated.

Author:  nbiresev [ Sun Oct 20, 2019 3:49 pm ]
Post subject:  Re: HU LUT 1 vs 1

The widest would probably be around 80-90% of range when your bot is in BB and opponent limps preflop, you check from BB.

e.g. on Flop Ad Td 3d, do you consider hands e.g. Jh 9h 7h 6h to be identical as Jc 9c 7c 6c? Those 2 will obviously have identical equity, so by using rules you could narrow down a lot the number of calculations.

Also flop Ad Td 3d will have identical equities as Ac Tc 3c if you just replace suits in hands.

Also whenever a hand completely missed flop, and has no draw you could approximate equity to 0, as those hands are fold vs bet, and if you want to bluff with them it doesn't matter much if they have 0% equity or e.g 15% as you bluff with them only if opponent folds really a lot.

In order to know if a hand completely missed flop, you off course need efficient implementation of hand strength. I calculate hand strength by calculating hand strength of each 2 hole card combinations of 4 hole cards. Then you can save to dictionary the strength of 2 hole cards e.g. Ks Qs and flop cards, because you will have e.g. Ks Qs appearing in so many hands, that way you speed up a lot calculations of hand strength, in fact total number of calculations for 1 Flop for all possible omaha hands is 1326 which is basically number of all possible holdem hands. Similar for calculating if a hand has a draw. You can also calculate once hand strength and draw category for each omaha hand and save to the file, so that you don't do this calculations while calculating equities.

Page 1 of 1 All times are UTC
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/