예제 #1
0
        static void Main(string[] args)
        {
            RLBrain squishy = RLBrain.FindSquishy();

            //RLBrain.PrintTree(0);
            if (File.Exists("./SkyNetData/BundleNum.dat"))
            {
                BinaryFormatter bf   = new BinaryFormatter();
                FileStream      file = File.Open("./SkyNetData/BundleNum.dat", FileMode.Open);
                startBundleNum = (int)bf.Deserialize(file);
                file.Close();
            }
            for (int i = startBundleNum; i < (startBundleNum + numRounds); i++)
            {
                Directory.CreateDirectory(String.Format("./SkyNetData/Root_Bundle_{0}_{1}G_{2}I/", i.ToString(), RLBrain.endInd - RLBrain.startInd, numIters.ToString()));
                RLBrain.SelfTeach(numGames, numIters, i);
            }
            BinaryFormatter bf1   = new BinaryFormatter();
            FileStream      file1 = File.Create("./SkyNetData/BundleNum.dat");

            bf1.Serialize(file1, startBundleNum);
            file1.Close();
            //RLBrain.SelfTeach(2, 10);
            //squishy.Test(2);
            //RLBrain.Save();
        }
예제 #2
0
    public MCTSkyNet(IGame game, int numIters, float maxWait, int gameNum, int bundleNum, int numGames)
    {
        this.maxWait = maxWait;
        //hashAndSlasher = ZobristKiller.GetTheKiller();
        string localBString = game.getBoardAsString(game.getBoard(), !game.isPlayerOneTurn());

        rootNode = new SkyNetNode(localBString, !game.isPlayerOneTurn(), game.getHandAsString(!game.isPlayerOneTurn()));
        RLBrain.RequestExistingRoot(ref rootNode, gameNum, bundleNum, numGames, numIters);
    }
예제 #3
0
        static void Main(string[] args)
        {
            RLBrain squishy = RLBrain.FindSquishy();

            squishy.SelfTeach(100);
        }
예제 #4
0
        public RLTile Tile; //where am i

        #endregion Fields

        #region Constructors

        public RLCreature()
        {
            ID = -1;
            Brain = new RLBrain(this);
        }