Poker-AI.org Poker AI and Botting Discussion Forum 2014-03-07T00:07:48+00:00 http://poker-ai.org/phpbb/feed.php?f=24&t=2715 2014-03-07T00:07:48+00:00 2014-03-07T00:07:48+00:00 http://poker-ai.org/phpbb/viewtopic.php?t=2715&p=5794#p5794 <![CDATA[Re: Fast PCS-CFM]]> Statistics: Posted by Hipp — Fri Mar 07, 2014 12:07 am


]]>
2014-03-06T23:47:25+00:00 2014-03-06T23:47:25+00:00 http://poker-ai.org/phpbb/viewtopic.php?t=2715&p=5793#p5793 <![CDATA[Re: Fast PCS-CFM]]> Statistics: Posted by cantina — Thu Mar 06, 2014 11:47 pm


]]>
2014-03-06T23:07:11+00:00 2014-03-06T23:07:11+00:00 http://poker-ai.org/phpbb/viewtopic.php?t=2715&p=5791#p5791 <![CDATA[Fast PCS-CFM]]> But if we do so, we can't do any "pruning". I made it differently. My solution is O(n^2), but it can skip inner loop in most of situations.
For example, for a termial node that is showdown, it looks something like this:
Code:
for (int i=0; i<1081; i++) {
   if (reach[opponent][i] < 0.00000001) continue; // <--- this avoid lot of computation   
   for(int j=0; j<1081; j++) {
      if (CommonCards(hands[i], hands[j])) continue; //CommonCards checks if two pocket cards sets have a common card            
      if (evaluation[i] == evaluation[j]) continue; //evaluation is an array that contains results from 7 card hand evaluator
      if (evaluation[i] < evaluation[j]) ev[j] += reach[opponent][i];
      else ev[j] -= reach[opponent][i];
   }   
}
for (int i=0; i<1081; i++)
   ev[i] *= amount; //amount represents how much we put in the pot


My experiment shows that it runs faster then O(n) solution.
But even now, my PCS algorithm is slower then Chance-Sampling version (2 or 3 times slower).
I don't know why. Maybe we can avoid some computations in O(n) version, but I didn't figure it out?

Statistics: Posted by Hipp — Thu Mar 06, 2014 11:07 pm


]]>