public void GetAction(HandHistory history, out FastPokerEngine.Action.ActionTypes action, out double amount)
 {
     double[] inputs = GetInputs(history);
     if (ThreadSafe)
     {
         lock (Network)
             RunNetwork(inputs, out action, out amount);
     }
     else
         RunNetwork(inputs, out action, out amount);
 }
        public void RunNetwork(double[] inputs, out FastPokerEngine.Action.ActionTypes action, out double amount)
        {
            Network.ClearSignals();
            Network.SetInputSignals(inputs);
            Network.RelaxNetwork(10, 0.001);

            action = getAction(Network.GetOutputSignal(0),
                               Network.GetOutputSignal(1),
                               Network.GetOutputSignal(2));
            amount = 0;
        }
示例#3
0
 public void GetAction(HandHistory history,
                         out FastPokerEngine.Action.ActionTypes type, out double amount)
 {
     if (actions != null && curAction < actions.Length)
     {
         FastPokerEngine.Action action = actions[curAction++];
         type = action.ActionType;
         amount = action.Amount;
     }
     else
     {
         type = FastPokerEngine.Action.ActionTypes.Fold;
         amount = 0;
     }
 }
示例#4
0
 public void GetAction(HandHistory history, out FastPokerEngine.Action.ActionTypes action, out double amount)
 {
     action = FastPokerEngine.Action.ActionTypes.Raise;
     amount = 0;
 }