{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Лабораторная работа 6\n", "\n", "**Крестики-нолики**\thttps://github.com/nczempin/gym-tic-tac-toe/tree/master\n", "\n", "#### **Перевод среды на Gymnasium**" ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "import gymnasium as gym\n", "from gymnasium import spaces\n", "\n", "class TicTacToeEnv(gym.Env):\n", " metadata = {'render.modes': ['human']}\n", " \n", " symbols = ['O', ' ', 'X']\n", "\n", " def __init__(self):\n", " super().__init__()\n", " self.action_space = spaces.Discrete(9)\n", " self.observation_space = spaces.Discrete(9 * 3 * 2)\n", " self.reset()\n", "\n", " def step(self, action):\n", " done = False\n", " reward = 0\n", " p, square = action\n", "\n", " board = self.state['board']\n", " proposed = board[square] \n", " om = self.state['on_move'] \n", " if proposed != 0:\n", " print(f\"Незаконный ход: Клетка {square} занята.\")\n", " done = True\n", " reward = -1 * om\n", " if p != om:\n", " print(f\"Незаконный ход: игрок {p} не ходит\")\n", " done = True\n", " reward = -1 * om\n", " else:\n", " board[square] = p\n", " self.state['on_move'] = -p\n", "\n", " for i in range(3):\n", " if (board[i * 3] == p and board[i * 3 + 1] == p and board[i * 3 + 2] == p) or \\\n", " (board[i] == p and board[i + 3] == p and board[i + 6] == p):\n", " reward = p\n", " done = True\n", " break\n", "\n", " if (board[0] == p and board[4] == p and board[8] == p) or \\\n", " (board[2] == p and board[4] == p and board[6] == p):\n", " reward = p\n", " done = True \n", " return self.state, reward, done, {} \n", "\n", " def reset(self):\n", " self.state = {}\n", " self.state['board'] = [0, 0, 0, 0, 0, 0, 0, 0, 0] \n", " self.state['on_move'] = 1 \n", " return self.state, {}\n", "\n", " def render(self, close=False):\n", " if close:\n", " return\n", " print(\"on move: \" , self.symbols[self.state['on_move']+1])\n", " for i in range (9):\n", " print (self.symbols[self.state['board'][i]+1], end=\" \");\n", " if ((i % 3) == 2):\n", " print();\n", "\n", " def move_generator(self):\n", " moves = []\n", " for i in range(9):\n", " if self.state['board'][i] == 0:\n", " p = self.state['on_move']\n", " m = [p, i]\n", " moves.append(m)\n", " return moves" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### **Реализация агента**" ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "import random\n", "\n", "class RandomTicTacToeAgent:\n", " def __init__(self, symbol):\n", " self.symbol = symbol\n", " \n", " def get_action(self, moves):\n", " return random.choice(moves)\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "#### **Основной цикл обучения**" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O \n", " X X \n", "on move: X\n", " O O \n", "X O \n", " X X \n", "on move: O\n", " O O \n", "X O X \n", " X X \n", "on move: X\n", " O O \n", "X O X \n", "O X X \n", "Episode 1, Total Reward: -1\n", "Average Reward: -1.0\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " \n", "X \n", "O X \n", "on move: X\n", " \n", "X O \n", "O X \n", "on move: O\n", " X \n", "X O \n", "O X \n", "on move: X\n", " X \n", "X O \n", "O X O \n", "on move: O\n", "X X \n", "X O \n", "O X O \n", "on move: X\n", "X X O \n", "X O \n", "O X O \n", "Episode 2, Total Reward: -1\n", "Average Reward: -1.0\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", " X O \n", "O \n", "on move: O\n", "X \n", " X O \n", "O X \n", "on move: X\n", "X \n", " X O \n", "O X O \n", "on move: O\n", "X X \n", " X O \n", "O X O \n", "Episode 3, Total Reward: 1\n", "Average Reward: -0.3333333333333333\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O \n", "X X \n", "on move: X\n", "O \n", "O \n", "X X \n", "on move: O\n", "O \n", "O X \n", "X X \n", "on move: X\n", "O O \n", "O X \n", "X X \n", "on move: O\n", "O O \n", "O X \n", "X X X \n", "Episode 4, Total Reward: 1\n", "Average Reward: 0.0\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", "X X \n", " \n", "O \n", "on move: X\n", "X X O \n", " \n", "O \n", "on move: O\n", "X X O \n", " \n", "O X \n", "on move: X\n", "X X O \n", " O \n", "O X \n", "Episode 5, Total Reward: -1\n", "Average Reward: -0.2\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X \n", "O X \n", "O \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", "O X \n", "O X \n", "O X \n", "Episode 6, Total Reward: -1\n", "Average Reward: -0.3333333333333333\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " X \n", "O O \n", "on move: O\n", "X X \n", " X \n", "O O \n", "on move: X\n", "X X \n", " X \n", "O O O \n", "Episode 7, Total Reward: -1\n", "Average Reward: -0.42857142857142855\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", "X O \n", " X \n", " \n", "on move: X\n", "X O O \n", " X \n", " \n", "on move: O\n", "X O O \n", " X \n", " X \n", "on move: X\n", "X O O \n", " X \n", " X O \n", "on move: O\n", "X O O \n", " X \n", "X X O \n", "on move: X\n", "X O O \n", " X O \n", "X X O \n", "Episode 8, Total Reward: -1\n", "Average Reward: -0.5\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", " X \n", " O X \n", "O \n", "on move: O\n", "X X \n", " O X \n", "O \n", "on move: X\n", "X X \n", "O O X \n", "O \n", "on move: O\n", "X X \n", "O O X \n", "O X \n", "on move: X\n", "X X \n", "O O X \n", "O O X \n", "on move: O\n", "X X X \n", "O O X \n", "O O X \n", "Episode 9, Total Reward: 1\n", "Average Reward: -0.3333333333333333\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", "O \n", " \n", "on move: O\n", "X \n", "O \n", " X \n", "on move: X\n", "X O \n", "O \n", " X \n", "on move: O\n", "X O \n", "O X \n", " X \n", "on move: X\n", "X O O \n", "O X \n", " X \n", "on move: O\n", "X O O \n", "O X \n", "X X \n", "on move: X\n", "X O O \n", "O O X \n", "X X \n", "on move: O\n", "X O O \n", "O O X \n", "X X X \n", "Episode 10, Total Reward: 1\n", "Average Reward: -0.2\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", " X O \n", " X \n", "on move: O\n", "O \n", "X X O \n", " X \n", "on move: X\n", "O \n", "X X O \n", "O X \n", "on move: O\n", "O X \n", "X X O \n", "O X \n", "on move: X\n", "O X \n", "X X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 11, Total Reward: 0\n", "Average Reward: -0.18181818181818182\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X X \n", " \n", "O \n", "on move: X\n", " X X \n", " \n", "O O \n", "on move: O\n", " X X \n", "X \n", "O O \n", "on move: X\n", " X X \n", "X O \n", "O O \n", "on move: O\n", " X X \n", "X O \n", "O O X \n", "on move: X\n", " X X \n", "X O O \n", "O O X \n", "on move: O\n", "X X X \n", "X O O \n", "O O X \n", "Episode 12, Total Reward: 1\n", "Average Reward: -0.08333333333333333\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", "O X \n", " X \n", "on move: O\n", " O \n", "O X \n", "X X \n", "on move: X\n", " O \n", "O X O \n", "X X \n", "on move: O\n", "X O \n", "O X O \n", "X X \n", "on move: X\n", "X O O \n", "O X O \n", "X X \n", "on move: O\n", "X O O \n", "O X O \n", "X X X \n", "Episode 13, Total Reward: 1\n", "Average Reward: 0.0\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", "O \n", "X \n", " \n", "on move: O\n", "O \n", "X X \n", " \n", "on move: X\n", "O \n", "X X \n", " O \n", "on move: O\n", "O \n", "X X \n", " X O \n", "on move: X\n", "O O \n", "X X \n", " X O \n", "on move: O\n", "O O X \n", "X X \n", " X O \n", "on move: X\n", "O O X \n", "X X \n", "O X O \n", "on move: O\n", "O O X \n", "X X X \n", "O X O \n", "Episode 14, Total Reward: 1\n", "Average Reward: 0.07142857142857142\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", "O X \n", " X \n", " O \n", "on move: O\n", "O X \n", " X X \n", " O \n", "on move: X\n", "O X \n", " X X \n", "O O \n", "on move: O\n", "O X \n", " X X \n", "O X O \n", "on move: X\n", "O O X \n", " X X \n", "O X O \n", "on move: O\n", "O O X \n", "X X X \n", "O X O \n", "Episode 15, Total Reward: 1\n", "Average Reward: 0.13333333333333333\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " X O \n", " \n", "on move: X\n", "X O \n", " X O \n", " \n", "on move: O\n", "X O \n", " X O \n", "X \n", "on move: X\n", "X O \n", "O X O \n", "X \n", "on move: O\n", "X O \n", "O X O \n", "X X \n", "Episode 16, Total Reward: 1\n", "Average Reward: 0.1875\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X \n", "X O \n", "X \n", "on move: X\n", "O X \n", "X O \n", "X O \n", "on move: O\n", "O X X \n", "X O \n", "X O \n", "on move: X\n", "O X X \n", "X O O \n", "X O \n", "on move: O\n", "O X X \n", "X O O \n", "X O X \n", "Episode 17, Total Reward: 0\n", "Average Reward: 0.17647058823529413\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X X \n", "X O \n", " \n", "on move: X\n", "O X X \n", "X O \n", "O \n", "on move: O\n", "O X X \n", "X O \n", "O X \n", "on move: X\n", "O X X \n", "X O O \n", "O X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 18, Total Reward: 0\n", "Average Reward: 0.16666666666666666\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", "O O \n", " \n", "on move: O\n", "X X X \n", "O O \n", " \n", "Episode 19, Total Reward: 1\n", "Average Reward: 0.21052631578947367\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X X \n", " \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O \n", "X X \n", "X O \n", "on move: X\n", " O \n", "X X \n", "X O O \n", "on move: O\n", " O X \n", "X X \n", "X O O \n", "on move: X\n", " O X \n", "X O X \n", "X O O \n", "Episode 20, Total Reward: -1\n", "Average Reward: 0.15\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O \n", " \n", "X X O \n", "on move: O\n", " O X \n", " \n", "X X O \n", "on move: X\n", " O X \n", "O \n", "X X O \n", "on move: O\n", "X O X \n", "O \n", "X X O \n", "on move: X\n", "X O X \n", "O O \n", "X X O \n", "on move: O\n", "X O X \n", "O O X \n", "X X O \n", "Episode 21, Total Reward: 0\n", "Average Reward: 0.14285714285714285\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " \n", "X X \n", "O O \n", "on move: O\n", " X \n", "X X \n", "O O \n", "on move: X\n", " X \n", "X O X \n", "O O \n", "on move: O\n", " X \n", "X O X \n", "O O X \n", "on move: X\n", "O X \n", "X O X \n", "O O X \n", "on move: O\n", "O X X \n", "X O X \n", "O O X \n", "Episode 22, Total Reward: 1\n", "Average Reward: 0.18181818181818182\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", "O X \n", " O \n", "on move: O\n", "X \n", "O X \n", " O X \n", "on move: X\n", "X O \n", "O X \n", " O X \n", "on move: O\n", "X X O \n", "O X \n", " O X \n", "on move: X\n", "X X O \n", "O O X \n", " O X \n", "on move: O\n", "X X O \n", "O O X \n", "X O X \n", "Episode 23, Total Reward: 0\n", "Average Reward: 0.17391304347826086\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", " O X \n", "on move: O\n", " X \n", " O X \n", " O X \n", "on move: X\n", " X \n", " O X \n", "O O X \n", "on move: O\n", "X X \n", " O X \n", "O O X \n", "on move: X\n", "X X O \n", " O X \n", "O O X \n", "Episode 24, Total Reward: -1\n", "Average Reward: 0.125\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X \n", "O \n", "O X \n", "on move: O\n", " X X \n", "O \n", "O X \n", "on move: X\n", " X X \n", "O \n", "O O X \n", "on move: O\n", " X X \n", "O X \n", "O O X \n", "on move: X\n", " X X \n", "O X O \n", "O O X \n", "on move: O\n", "X X X \n", "O X O \n", "O O X \n", "Episode 25, Total Reward: 1\n", "Average Reward: 0.16\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", " O \n", " O \n", "X X \n", "on move: O\n", " O \n", " O \n", "X X X \n", "Episode 26, Total Reward: 1\n", "Average Reward: 0.19230769230769232\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X \n", "X \n", "O O \n", "on move: O\n", "X \n", "X X \n", "O O \n", "on move: X\n", "X O \n", "X X \n", "O O \n", "on move: O\n", "X X O \n", "X X \n", "O O \n", "on move: X\n", "X X O \n", "X X \n", "O O O \n", "Episode 27, Total Reward: -1\n", "Average Reward: 0.14814814814814814\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " O X \n", "X \n", " O \n", "on move: O\n", " O X \n", "X X \n", " O \n", "on move: X\n", " O X \n", "X X O \n", " O \n", "on move: O\n", "X O X \n", "X X O \n", " O \n", "on move: X\n", "X O X \n", "X X O \n", "O O \n", "on move: O\n", "X O X \n", "X X O \n", "O O X \n", "Episode 28, Total Reward: 1\n", "Average Reward: 0.17857142857142858\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", "X \n", "on move: X\n", " O \n", "O X \n", "X \n", "on move: O\n", " O X \n", "O X \n", "X \n", "on move: X\n", " O X \n", "O X \n", "X O \n", "on move: O\n", " O X \n", "O X \n", "X X O \n", "on move: X\n", " O X \n", "O O X \n", "X X O \n", "on move: O\n", "X O X \n", "O O X \n", "X X O \n", "Episode 29, Total Reward: 0\n", "Average Reward: 0.1724137931034483\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", " \n", " X \n", " O X \n", "on move: X\n", " \n", " X O \n", " O X \n", "on move: O\n", " \n", "X X O \n", " O X \n", "on move: X\n", " O \n", "X X O \n", " O X \n", "on move: O\n", " O \n", "X X O \n", "X O X \n", "on move: X\n", "O O \n", "X X O \n", "X O X \n", "on move: O\n", "O X O \n", "X X O \n", "X O X \n", "Episode 30, Total Reward: 0\n", "Average Reward: 0.16666666666666666\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " O \n", "O X \n", " X \n", "on move: O\n", " O X \n", "O X \n", " X \n", "on move: X\n", " O X \n", "O X \n", "O X \n", "on move: O\n", " O X \n", "O X X \n", "O X \n", "Episode 31, Total Reward: 1\n", "Average Reward: 0.1935483870967742\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X \n", "O O \n", "on move: O\n", " X \n", "X X \n", "O O \n", "on move: X\n", " X \n", "X O X \n", "O O \n", "on move: O\n", " X X \n", "X O X \n", "O O \n", "on move: X\n", "O X X \n", "X O X \n", "O O \n", "Episode 32, Total Reward: -1\n", "Average Reward: 0.15625\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X O \n", " \n", "on move: O\n", " X \n", " X O \n", " \n", "on move: X\n", " X \n", " X O \n", "O \n", "on move: O\n", " X \n", " X O \n", "O X \n", "on move: X\n", " X O \n", " X O \n", "O X \n", "on move: O\n", " X O \n", "X X O \n", "O X \n", "on move: X\n", " X O \n", "X X O \n", "O O X \n", "on move: O\n", "X X O \n", "X X O \n", "O O X \n", "Episode 33, Total Reward: 1\n", "Average Reward: 0.18181818181818182\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O X \n", " \n", " \n", "on move: X\n", "X O X \n", " \n", " O \n", "on move: O\n", "X O X \n", " \n", " X O \n", "on move: X\n", "X O X \n", " O \n", " X O \n", "on move: O\n", "X O X \n", " X O \n", " X O \n", "on move: X\n", "X O X \n", " X O \n", "O X O \n", "on move: O\n", "X O X \n", "X X O \n", "O X O \n", "Episode 34, Total Reward: 0\n", "Average Reward: 0.17647058823529413\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " \n", " X \n", "on move: X\n", "X O \n", " \n", " O X \n", "on move: O\n", "X O \n", "X \n", " O X \n", "on move: X\n", "X O O \n", "X \n", " O X \n", "on move: O\n", "X O O \n", "X X \n", " O X \n", "Episode 35, Total Reward: 1\n", "Average Reward: 0.2\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", " O O \n", " \n", "on move: O\n", "X X \n", "X O O \n", " \n", "on move: X\n", "X X \n", "X O O \n", " O \n", "on move: O\n", "X X \n", "X O O \n", " X O \n", "on move: X\n", "X X \n", "X O O \n", "O X O \n", "on move: O\n", "X X X \n", "X O O \n", "O X O \n", "Episode 36, Total Reward: 1\n", "Average Reward: 0.2222222222222222\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " X \n", "O X \n", "on move: O\n", " O \n", " X X \n", "O X \n", "on move: X\n", "O O \n", " X X \n", "O X \n", "on move: O\n", "O O \n", "X X X \n", "O X \n", "Episode 37, Total Reward: 1\n", "Average Reward: 0.24324324324324326\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X X \n", " \n", "O \n", "on move: X\n", "X X \n", "O \n", "O \n", "on move: O\n", "X X \n", "O \n", "O X \n", "on move: X\n", "X O X \n", "O \n", "O X \n", "on move: O\n", "X O X \n", "O \n", "O X X \n", "on move: X\n", "X O X \n", "O O \n", "O X X \n", "on move: O\n", "X O X \n", "O O X \n", "O X X \n", "Episode 38, Total Reward: 1\n", "Average Reward: 0.2631578947368421\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", " O X \n", "on move: O\n", " X \n", " O \n", "X O X \n", "on move: X\n", "O X \n", " O \n", "X O X \n", "on move: O\n", "O X X \n", " O \n", "X O X \n", "on move: X\n", "O X X \n", " O O \n", "X O X \n", "on move: O\n", "O X X \n", "X O O \n", "X O X \n", "Episode 39, Total Reward: 0\n", "Average Reward: 0.2564102564102564\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", "X X \n", " \n", "on move: X\n", " O \n", "X X \n", "O \n", "on move: O\n", "X O \n", "X X \n", "O \n", "on move: X\n", "X O \n", "X X \n", "O O \n", "on move: O\n", "X X O \n", "X X \n", "O O \n", "on move: X\n", "X X O \n", "X X \n", "O O O \n", "Episode 40, Total Reward: -1\n", "Average Reward: 0.225\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O O \n", " \n", "on move: O\n", " X \n", "X O O \n", "X \n", "on move: X\n", " X O \n", "X O O \n", "X \n", "on move: O\n", " X O \n", "X O O \n", "X X \n", "on move: X\n", "O X O \n", "X O O \n", "X X \n", "on move: O\n", "O X O \n", "X O O \n", "X X X \n", "Episode 41, Total Reward: 1\n", "Average Reward: 0.24390243902439024\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", "O O \n", " \n", "X X \n", "on move: O\n", "O O \n", " X \n", "X X \n", "on move: X\n", "O O \n", "O X \n", "X X \n", "on move: O\n", "O O \n", "O X X \n", "X X \n", "on move: X\n", "O O O \n", "O X X \n", "X X \n", "Episode 42, Total Reward: -1\n", "Average Reward: 0.21428571428571427\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " X \n", " \n", "on move: X\n", "X O O \n", " X \n", " \n", "on move: O\n", "X O O \n", " X X \n", " \n", "on move: X\n", "X O O \n", " X X \n", " O \n", "on move: O\n", "X O O \n", " X X \n", "X O \n", "on move: X\n", "X O O \n", " X X \n", "X O O \n", "on move: O\n", "X O O \n", "X X X \n", "X O O \n", "Episode 43, Total Reward: 1\n", "Average Reward: 0.23255813953488372\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", " O X \n", "on move: O\n", " X \n", " O X \n", " O X \n", "Episode 44, Total Reward: 1\n", "Average Reward: 0.25\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " \n", "X \n", "O X \n", "on move: X\n", " \n", "X O \n", "O X \n", "on move: O\n", " X \n", "X O \n", "O X \n", "on move: X\n", " X \n", "X O O \n", "O X \n", "on move: O\n", "X X \n", "X O O \n", "O X \n", "on move: X\n", "X X O \n", "X O O \n", "O X \n", "Episode 45, Total Reward: -1\n", "Average Reward: 0.2222222222222222\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", " \n", "O \n", "X X \n", "on move: X\n", " \n", "O O \n", "X X \n", "on move: O\n", " X \n", "O O \n", "X X \n", "on move: X\n", " O X \n", "O O \n", "X X \n", "on move: O\n", "X O X \n", "O O \n", "X X \n", "on move: X\n", "X O X \n", "O O O \n", "X X \n", "Episode 46, Total Reward: -1\n", "Average Reward: 0.1956521739130435\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", " O X \n", "O \n", "on move: O\n", "X \n", " O X \n", "O X \n", "on move: X\n", "X O \n", " O X \n", "O X \n", "on move: O\n", "X O \n", "X O X \n", "O X \n", "on move: X\n", "X O \n", "X O X \n", "O O X \n", "Episode 47, Total Reward: -1\n", "Average Reward: 0.1702127659574468\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " \n", " O X \n", " X \n", "on move: X\n", "O \n", " O X \n", " X \n", "on move: O\n", "O \n", " O X \n", " X X \n", "on move: X\n", "O \n", "O O X \n", " X X \n", "on move: O\n", "O X \n", "O O X \n", " X X \n", "Episode 48, Total Reward: 1\n", "Average Reward: 0.1875\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O O \n", " \n", "X X \n", "on move: O\n", " O O \n", "X \n", "X X \n", "on move: X\n", "O O O \n", "X \n", "X X \n", "Episode 49, Total Reward: -1\n", "Average Reward: 0.16326530612244897\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", " X \n", " X O \n", "on move: X\n", " \n", " X \n", "O X O \n", "on move: O\n", " \n", " X X \n", "O X O \n", "on move: X\n", " \n", "O X X \n", "O X O \n", "on move: O\n", "X \n", "O X X \n", "O X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X O X \n", "O X X \n", "O X O \n", "Episode 50, Total Reward: 0\n", "Average Reward: 0.16\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", " \n", " \n", "X X O \n", "on move: X\n", " O \n", " \n", "X X O \n", "on move: O\n", " O \n", " X \n", "X X O \n", "on move: X\n", " O \n", " X O \n", "X X O \n", "Episode 51, Total Reward: -1\n", "Average Reward: 0.13725490196078433\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", "X \n", "O \n", "on move: X\n", " X \n", "X O \n", "O \n", "on move: O\n", " X \n", "X O \n", "O X \n", "on move: X\n", "O X \n", "X O \n", "O X \n", "on move: O\n", "O X \n", "X O X \n", "O X \n", "on move: X\n", "O X \n", "X O X \n", "O O X \n", "on move: O\n", "O X X \n", "X O X \n", "O O X \n", "Episode 52, Total Reward: 1\n", "Average Reward: 0.15384615384615385\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X O \n", " X \n", " O \n", "on move: O\n", "X O \n", " X \n", "X O \n", "on move: X\n", "X O \n", "O X \n", "X O \n", "on move: O\n", "X O \n", "O X \n", "X X O \n", "on move: X\n", "X O \n", "O X O \n", "X X O \n", "on move: O\n", "X O X \n", "O X O \n", "X X O \n", "Episode 53, Total Reward: 1\n", "Average Reward: 0.16981132075471697\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", " O X \n", " X \n", "on move: O\n", "O \n", " O X \n", "X X \n", "on move: X\n", "O \n", " O X \n", "X O X \n", "on move: O\n", "O X \n", " O X \n", "X O X \n", "on move: X\n", "O X O \n", " O X \n", "X O X \n", "on move: O\n", "O X O \n", "X O X \n", "X O X \n", "Episode 54, Total Reward: 0\n", "Average Reward: 0.16666666666666666\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", "X O \n", " \n", "on move: X\n", "X O \n", "X O \n", " \n", "on move: O\n", "X X O \n", "X O \n", " \n", "on move: X\n", "X X O \n", "X O O \n", " \n", "on move: O\n", "X X O \n", "X O O \n", "X \n", "Episode 55, Total Reward: 1\n", "Average Reward: 0.18181818181818182\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", "X \n", " X \n", "on move: X\n", "O \n", "X O \n", " X \n", "on move: O\n", "O X \n", "X O \n", " X \n", "on move: X\n", "O X \n", "X O \n", "O X \n", "on move: O\n", "O X \n", "X O X \n", "O X \n", "on move: X\n", "O X \n", "X O X \n", "O X O \n", "Episode 56, Total Reward: -1\n", "Average Reward: 0.16071428571428573\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " \n", " X \n", "on move: X\n", "X O \n", " O \n", " X \n", "on move: O\n", "X X O \n", " O \n", " X \n", "on move: X\n", "X X O \n", " O \n", "O X \n", "on move: O\n", "X X O \n", " X O \n", "O X \n", "Episode 57, Total Reward: 1\n", "Average Reward: 0.17543859649122806\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " X O \n", " X \n", "on move: X\n", " O \n", " X O \n", " X \n", "on move: O\n", " X O \n", " X O \n", " X \n", "Episode 58, Total Reward: 1\n", "Average Reward: 0.1896551724137931\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X \n", "X \n", "O O \n", "on move: O\n", "X \n", "X X \n", "O O \n", "on move: X\n", "X \n", "X X \n", "O O O \n", "Episode 59, Total Reward: -1\n", "Average Reward: 0.1694915254237288\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X \n", " O O \n", "X \n", "on move: O\n", " X \n", "X O O \n", "X \n", "on move: X\n", " X O \n", "X O O \n", "X \n", "on move: O\n", " X O \n", "X O O \n", "X X \n", "on move: X\n", "O X O \n", "X O O \n", "X X \n", "on move: O\n", "O X O \n", "X O O \n", "X X X \n", "Episode 60, Total Reward: 1\n", "Average Reward: 0.18333333333333332\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " O X \n", " X \n", "on move: O\n", "X O \n", " O X \n", " X \n", "on move: X\n", "X O \n", "O O X \n", " X \n", "on move: O\n", "X O \n", "O O X \n", " X X \n", "on move: X\n", "X O O \n", "O O X \n", " X X \n", "on move: O\n", "X O O \n", "O O X \n", "X X X \n", "Episode 61, Total Reward: 1\n", "Average Reward: 0.19672131147540983\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", "X O \n", " X \n", " \n", "on move: X\n", "X O \n", " X \n", " O \n", "on move: O\n", "X O \n", "X X \n", " O \n", "on move: X\n", "X O \n", "X O X \n", " O \n", "on move: O\n", "X X O \n", "X O X \n", " O \n", "on move: X\n", "X X O \n", "X O X \n", "O O \n", "Episode 62, Total Reward: -1\n", "Average Reward: 0.1774193548387097\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X X \n", " \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " X O \n", "X X \n", " O \n", "on move: X\n", "O X O \n", "X X \n", " O \n", "on move: O\n", "O X O \n", "X X \n", " O X \n", "on move: X\n", "O X O \n", "X X \n", "O O X \n", "on move: O\n", "O X O \n", "X X X \n", "O O X \n", "Episode 63, Total Reward: 1\n", "Average Reward: 0.19047619047619047\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " X O \n", " X \n", "on move: X\n", " O \n", " X O \n", " X \n", "on move: O\n", "X O \n", " X O \n", " X \n", "on move: X\n", "X O O \n", " X O \n", " X \n", "on move: O\n", "X O O \n", "X X O \n", " X \n", "on move: X\n", "X O O \n", "X X O \n", "O X \n", "on move: O\n", "X O O \n", "X X O \n", "O X X \n", "Episode 64, Total Reward: 1\n", "Average Reward: 0.203125\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", "O O \n", " X \n", " X \n", "on move: O\n", "O O \n", " X \n", " X X \n", "on move: X\n", "O O O \n", " X \n", " X X \n", "Episode 65, Total Reward: -1\n", "Average Reward: 0.18461538461538463\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", "X \n", "X \n", "on move: X\n", " O \n", "X \n", "X O \n", "on move: O\n", " O \n", "X X \n", "X O \n", "on move: X\n", " O \n", "X X \n", "X O O \n", "on move: O\n", " O \n", "X X X \n", "X O O \n", "Episode 66, Total Reward: 1\n", "Average Reward: 0.19696969696969696\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", " \n", "O X \n", "X \n", "on move: X\n", "O \n", "O X \n", "X \n", "on move: O\n", "O \n", "O X \n", "X X \n", "on move: X\n", "O O \n", "O X \n", "X X \n", "on move: O\n", "O O X \n", "O X \n", "X X \n", "Episode 67, Total Reward: 1\n", "Average Reward: 0.208955223880597\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " X \n", " \n", "on move: X\n", " X O \n", " X \n", "O \n", "on move: O\n", " X O \n", " X X \n", "O \n", "on move: X\n", " X O \n", " X X \n", "O O \n", "on move: O\n", "X X O \n", " X X \n", "O O \n", "on move: X\n", "X X O \n", " X X \n", "O O O \n", "Episode 68, Total Reward: -1\n", "Average Reward: 0.19117647058823528\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " \n", "X O \n", "X \n", "on move: X\n", " O \n", "X O \n", "X \n", "on move: O\n", "X O \n", "X O \n", "X \n", "Episode 69, Total Reward: 1\n", "Average Reward: 0.2028985507246377\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " \n", "O X \n", "X \n", "on move: X\n", " \n", "O O X \n", "X \n", "on move: O\n", " X \n", "O O X \n", "X \n", "on move: X\n", " X \n", "O O X \n", "X O \n", "on move: O\n", " X X \n", "O O X \n", "X O \n", "on move: X\n", " X X \n", "O O X \n", "X O O \n", "on move: O\n", "X X X \n", "O O X \n", "X O O \n", "Episode 70, Total Reward: 1\n", "Average Reward: 0.21428571428571427\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " X O \n", " \n", "on move: X\n", " X \n", " X O \n", "O \n", "on move: O\n", " X \n", " X O \n", "O X \n", "Episode 71, Total Reward: 1\n", "Average Reward: 0.22535211267605634\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " X \n", " \n", "on move: X\n", "X O \n", "O X \n", " \n", "on move: O\n", "X O \n", "O X \n", " X \n", "on move: X\n", "X O \n", "O X \n", " X O \n", "on move: O\n", "X O \n", "O X X \n", " X O \n", "on move: X\n", "X O O \n", "O X X \n", " X O \n", "on move: O\n", "X O O \n", "O X X \n", "X X O \n", "Episode 72, Total Reward: 0\n", "Average Reward: 0.2222222222222222\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X O \n", " O \n", "X \n", "on move: O\n", " X O \n", " X O \n", "X \n", "on move: X\n", " X O \n", " X O \n", "X O \n", "on move: O\n", "X X O \n", " X O \n", "X O \n", "on move: X\n", "X X O \n", "O X O \n", "X O \n", "on move: O\n", "X X O \n", "O X O \n", "X O X \n", "Episode 73, Total Reward: 1\n", "Average Reward: 0.2328767123287671\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", " X \n", " O X \n", "X O \n", "on move: X\n", " X \n", " O X \n", "X O O \n", "on move: O\n", " X \n", "X O X \n", "X O O \n", "on move: X\n", "O X \n", "X O X \n", "X O O \n", "Episode 74, Total Reward: -1\n", "Average Reward: 0.21621621621621623\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X X \n", " O \n", " \n", "on move: X\n", " X X \n", " O O \n", " \n", "on move: O\n", " X X \n", " O O \n", " X \n", "on move: X\n", " X X \n", "O O O \n", " X \n", "Episode 75, Total Reward: -1\n", "Average Reward: 0.2\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", "O X \n", " X \n", "on move: O\n", " O \n", "O X X \n", " X \n", "on move: X\n", " O \n", "O X X \n", " X O \n", "on move: O\n", " O \n", "O X X \n", "X X O \n", "on move: X\n", " O O \n", "O X X \n", "X X O \n", "on move: O\n", "X O O \n", "O X X \n", "X X O \n", "Episode 76, Total Reward: 0\n", "Average Reward: 0.19736842105263158\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", " X \n", "O \n", "X \n", "on move: X\n", " X O \n", "O \n", "X \n", "on move: O\n", " X O \n", "O \n", "X X \n", "on move: X\n", "O X O \n", "O \n", "X X \n", "on move: O\n", "O X O \n", "O X \n", "X X \n", "Episode 77, Total Reward: 1\n", "Average Reward: 0.2077922077922078\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X \n", " O \n", "X O \n", "on move: O\n", "X X \n", " O \n", "X O \n", "on move: X\n", "X X \n", " O O \n", "X O \n", "on move: O\n", "X X \n", " O O \n", "X X O \n", "on move: X\n", "X O X \n", " O O \n", "X X O \n", "on move: O\n", "X O X \n", "X O O \n", "X X O \n", "Episode 78, Total Reward: 1\n", "Average Reward: 0.21794871794871795\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " \n", " O X \n", " X \n", "on move: X\n", " O \n", " O X \n", " X \n", "on move: O\n", " X O \n", " O X \n", " X \n", "on move: X\n", " X O \n", "O O X \n", " X \n", "on move: O\n", " X O \n", "O O X \n", "X X \n", "on move: X\n", " X O \n", "O O X \n", "X X O \n", "on move: O\n", "X X O \n", "O O X \n", "X X O \n", "Episode 79, Total Reward: 0\n", "Average Reward: 0.21518987341772153\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X \n", " O O \n", "X \n", "on move: O\n", " X \n", " O O \n", "X X \n", "on move: X\n", " X \n", " O O \n", "X O X \n", "on move: O\n", " X \n", "X O O \n", "X O X \n", "on move: X\n", " X O \n", "X O O \n", "X O X \n", "on move: O\n", "X X O \n", "X O O \n", "X O X \n", "Episode 80, Total Reward: 1\n", "Average Reward: 0.225\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", "O \n", "X \n", " \n", "on move: O\n", "O \n", "X X \n", " \n", "on move: X\n", "O \n", "X X \n", " O \n", "on move: O\n", "O \n", "X X X \n", " O \n", "Episode 81, Total Reward: 1\n", "Average Reward: 0.2345679012345679\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " O X \n", "X \n", " O \n", "on move: O\n", " O X \n", "X X \n", " O \n", "on move: X\n", " O X \n", "X X O \n", " O \n", "on move: O\n", "X O X \n", "X X O \n", " O \n", "on move: X\n", "X O X \n", "X X O \n", "O O \n", "on move: O\n", "X O X \n", "X X O \n", "O X O \n", "Episode 82, Total Reward: 0\n", "Average Reward: 0.23170731707317074\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", " \n", " O O \n", "X X \n", "on move: O\n", " \n", " O O \n", "X X X \n", "Episode 83, Total Reward: 1\n", "Average Reward: 0.24096385542168675\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " X \n", " \n", "on move: X\n", " X O \n", " X \n", " O \n", "on move: O\n", "X X O \n", " X \n", " O \n", "on move: X\n", "X X O \n", " X \n", "O O \n", "on move: O\n", "X X O \n", " X X \n", "O O \n", "on move: X\n", "X X O \n", "O X X \n", "O O \n", "on move: O\n", "X X O \n", "O X X \n", "O X O \n", "Episode 84, Total Reward: 1\n", "Average Reward: 0.25\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " X O \n", " \n", "on move: X\n", "X \n", " X O \n", "O \n", "on move: O\n", "X X \n", " X O \n", "O \n", "on move: X\n", "X X O \n", " X O \n", "O \n", "on move: O\n", "X X O \n", " X O \n", "O X \n", "Episode 85, Total Reward: 1\n", "Average Reward: 0.25882352941176473\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X \n", " O \n", "O X \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X X \n", " O \n", "O O X \n", "on move: O\n", "X X \n", " O X \n", "O O X \n", "on move: X\n", "X X \n", "O O X \n", "O O X \n", "on move: O\n", "X X X \n", "O O X \n", "O O X \n", "Episode 86, Total Reward: 1\n", "Average Reward: 0.26744186046511625\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " X O \n", "on move: X\n", " X O \n", " \n", " X O \n", "on move: O\n", " X O \n", " X \n", " X O \n", "Episode 87, Total Reward: 1\n", "Average Reward: 0.27586206896551724\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " X O \n", " \n", " X \n", "on move: X\n", " X O \n", " \n", "O X \n", "on move: O\n", " X O \n", "X \n", "O X \n", "on move: X\n", " X O \n", "X \n", "O O X \n", "on move: O\n", " X O \n", "X X \n", "O O X \n", "on move: X\n", "O X O \n", "X X \n", "O O X \n", "on move: O\n", "O X O \n", "X X X \n", "O O X \n", "Episode 88, Total Reward: 1\n", "Average Reward: 0.2840909090909091\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " \n", "X O O \n", " X \n", "on move: O\n", " \n", "X O O \n", " X X \n", "on move: X\n", " O \n", "X O O \n", " X X \n", "on move: O\n", " O X \n", "X O O \n", " X X \n", "on move: X\n", " O X \n", "X O O \n", "O X X \n", "on move: O\n", "X O X \n", "X O O \n", "O X X \n", "Episode 89, Total Reward: 0\n", "Average Reward: 0.2808988764044944\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X O \n", " \n", "O X \n", "on move: O\n", " X O \n", " X \n", "O X \n", "on move: X\n", " X O \n", " O X \n", "O X \n", "Episode 90, Total Reward: -1\n", "Average Reward: 0.26666666666666666\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X X \n", " \n", " O \n", "on move: X\n", " X X \n", " O \n", " O \n", "on move: O\n", " X X \n", "X O \n", " O \n", "on move: X\n", " X X \n", "X O \n", "O O \n", "on move: O\n", "X X X \n", "X O \n", "O O \n", "Episode 91, Total Reward: 1\n", "Average Reward: 0.27472527472527475\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " O X \n", " O \n", " X \n", "on move: O\n", " O X \n", "X O \n", " X \n", "on move: X\n", " O X \n", "X O \n", "O X \n", "on move: O\n", " O X \n", "X O \n", "O X X \n", "on move: X\n", " O X \n", "X O O \n", "O X X \n", "on move: O\n", "X O X \n", "X O O \n", "O X X \n", "Episode 92, Total Reward: 0\n", "Average Reward: 0.2717391304347826\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", "X \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X \n", "X O \n", " X \n", "on move: X\n", "O X \n", "X O \n", "O X \n", "on move: O\n", "O X \n", "X O \n", "O X X \n", "on move: X\n", "O X \n", "X O O \n", "O X X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 93, Total Reward: 0\n", "Average Reward: 0.26881720430107525\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", " O \n", "O \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X X \n", " O O \n", "O X \n", "on move: O\n", "X X \n", " O O \n", "O X X \n", "on move: X\n", "X X \n", "O O O \n", "O X X \n", "Episode 94, Total Reward: -1\n", "Average Reward: 0.2553191489361702\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X O \n", " X \n", "O \n", "on move: O\n", "X O \n", " X X \n", "O \n", "on move: X\n", "X O \n", " X X \n", "O O \n", "on move: O\n", "X O \n", " X X \n", "O X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X O X \n", "O X X \n", "O X O \n", "Episode 95, Total Reward: 0\n", "Average Reward: 0.25263157894736843\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X O \n", " O \n", " X \n", "on move: O\n", "X O \n", "X O \n", " X \n", "on move: X\n", "X O \n", "X O O \n", " X \n", "on move: O\n", "X O \n", "X O O \n", "X X \n", "Episode 96, Total Reward: 1\n", "Average Reward: 0.2604166666666667\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O X \n", " \n", "X \n", "on move: X\n", "O X \n", " \n", "X O \n", "on move: O\n", "O X \n", " X \n", "X O \n", "on move: X\n", "O X \n", " X \n", "X O O \n", "on move: O\n", "O X \n", " X X \n", "X O O \n", "on move: X\n", "O X O \n", " X X \n", "X O O \n", "on move: O\n", "O X O \n", "X X X \n", "X O O \n", "Episode 97, Total Reward: 1\n", "Average Reward: 0.26804123711340205\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O \n", "X X \n", "X O \n", "on move: X\n", "O O \n", "X X \n", "X O \n", "on move: O\n", "O O X \n", "X X \n", "X O \n", "Episode 98, Total Reward: 1\n", "Average Reward: 0.2755102040816326\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " O X \n", " X \n", " O \n", "on move: O\n", " O X \n", "X X \n", " O \n", "on move: X\n", " O X \n", "X X O \n", " O \n", "on move: O\n", "X O X \n", "X X O \n", " O \n", "on move: X\n", "X O X \n", "X X O \n", " O O \n", "on move: O\n", "X O X \n", "X X O \n", "X O O \n", "Episode 99, Total Reward: 1\n", "Average Reward: 0.2828282828282828\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", " X \n", "O O \n", "on move: O\n", "X \n", "X X \n", "O O \n", "on move: X\n", "X \n", "X X O \n", "O O \n", "on move: O\n", "X X \n", "X X O \n", "O O \n", "on move: X\n", "X X \n", "X X O \n", "O O O \n", "Episode 100, Total Reward: -1\n", "Average Reward: 0.27\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " O \n", " X \n", "O X \n", "on move: O\n", "X O \n", " X \n", "O X \n", "Episode 101, Total Reward: 1\n", "Average Reward: 0.27722772277227725\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", "O \n", "O X \n", " X \n", "on move: O\n", "O \n", "O X X \n", " X \n", "on move: X\n", "O O \n", "O X X \n", " X \n", "on move: O\n", "O O \n", "O X X \n", " X X \n", "on move: X\n", "O O \n", "O X X \n", "O X X \n", "Episode 102, Total Reward: -1\n", "Average Reward: 0.2647058823529412\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", " X X \n", " O X \n", " O \n", "on move: X\n", " X X \n", "O O X \n", " O \n", "on move: O\n", " X X \n", "O O X \n", "X O \n", "on move: X\n", "O X X \n", "O O X \n", "X O \n", "Episode 103, Total Reward: -1\n", "Average Reward: 0.2524271844660194\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", " O \n", " O \n", "on move: O\n", "X X \n", " X O \n", " O \n", "on move: X\n", "X X \n", "O X O \n", " O \n", "on move: O\n", "X X X \n", "O X O \n", " O \n", "Episode 104, Total Reward: 1\n", "Average Reward: 0.25961538461538464\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", "X \n", "O \n", "on move: X\n", " X \n", "X \n", "O O \n", "on move: O\n", " X X \n", "X \n", "O O \n", "on move: X\n", " X X \n", "X \n", "O O O \n", "Episode 105, Total Reward: -1\n", "Average Reward: 0.24761904761904763\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X \n", " X O \n", "on move: X\n", " O \n", "X \n", " X O \n", "on move: O\n", "X O \n", "X \n", " X O \n", "on move: X\n", "X O \n", "X O \n", " X O \n", "on move: O\n", "X O \n", "X O \n", "X X O \n", "Episode 106, Total Reward: 1\n", "Average Reward: 0.25471698113207547\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", " O X \n", "on move: X\n", " X \n", "X O \n", "O O X \n", "on move: O\n", " X \n", "X X O \n", "O O X \n", "on move: X\n", "O X \n", "X X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 107, Total Reward: 0\n", "Average Reward: 0.2523364485981308\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", "X X \n", " \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O \n", "X X X \n", " O \n", "Episode 108, Total Reward: 1\n", "Average Reward: 0.25925925925925924\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X X \n", " \n", " O \n", "on move: X\n", "X X \n", " O \n", " O \n", "on move: O\n", "X X X \n", " O \n", " O \n", "Episode 109, Total Reward: 1\n", "Average Reward: 0.26605504587155965\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O O \n", " X \n", " X \n", "on move: O\n", "X O O \n", " X \n", " X \n", "on move: X\n", "X O O \n", " X \n", "O X \n", "on move: O\n", "X O O \n", "X X \n", "O X \n", "on move: X\n", "X O O \n", "X X \n", "O X O \n", "on move: O\n", "X O O \n", "X X X \n", "O X O \n", "Episode 110, Total Reward: 1\n", "Average Reward: 0.2727272727272727\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X O \n", " \n", "on move: O\n", " \n", "X X O \n", " \n", "on move: X\n", " \n", "X X O \n", " O \n", "on move: O\n", " X \n", "X X O \n", " O \n", "on move: X\n", " X \n", "X X O \n", " O O \n", "on move: O\n", " X \n", "X X O \n", "X O O \n", "on move: X\n", "O X \n", "X X O \n", "X O O \n", "on move: O\n", "O X X \n", "X X O \n", "X O O \n", "Episode 111, Total Reward: 1\n", "Average Reward: 0.27927927927927926\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", " X X \n", "on move: X\n", " \n", " O O \n", " X X \n", "on move: O\n", " X \n", " O O \n", " X X \n", "on move: X\n", "O X \n", " O O \n", " X X \n", "on move: O\n", "O X \n", " O O \n", "X X X \n", "Episode 112, Total Reward: 1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", "X X \n", "X O \n", " O \n", "on move: X\n", "X X \n", "X O \n", "O O \n", "on move: O\n", "X X \n", "X O \n", "O X O \n", "on move: X\n", "X X \n", "X O O \n", "O X O \n", "on move: O\n", "X X X \n", "X O O \n", "O X O \n", "Episode 113, Total Reward: 1\n", "Average Reward: 0.2920353982300885\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", " \n", "X \n", "X O \n", "on move: X\n", " O \n", "X \n", "X O \n", "on move: O\n", "X O \n", "X \n", "X O \n", "Episode 114, Total Reward: 1\n", "Average Reward: 0.2982456140350877\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X \n", "X O \n", " O \n", "on move: O\n", "X \n", "X O X \n", " O \n", "on move: X\n", "X O \n", "X O X \n", " O \n", "on move: O\n", "X O \n", "X O X \n", "X O \n", "Episode 115, Total Reward: 1\n", "Average Reward: 0.30434782608695654\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O X \n", " \n", " \n", "on move: X\n", "X O X \n", " \n", " O \n", "on move: O\n", "X O X \n", " \n", "X O \n", "on move: X\n", "X O X \n", " \n", "X O O \n", "on move: O\n", "X O X \n", "X \n", "X O O \n", "Episode 116, Total Reward: 1\n", "Average Reward: 0.3103448275862069\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", "X O \n", "on move: X\n", " X \n", "O \n", "X O \n", "on move: O\n", " X \n", "O X \n", "X O \n", "on move: X\n", " X O \n", "O X \n", "X O \n", "on move: O\n", " X O \n", "O X \n", "X O X \n", "on move: X\n", " X O \n", "O O X \n", "X O X \n", "on move: O\n", "X X O \n", "O O X \n", "X O X \n", "Episode 117, Total Reward: 0\n", "Average Reward: 0.3076923076923077\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X O \n", "O X \n", " \n", "on move: O\n", "X X O \n", "O X \n", " \n", "on move: X\n", "X X O \n", "O X \n", " O \n", "on move: O\n", "X X O \n", "O X \n", " X O \n", "on move: X\n", "X X O \n", "O O X \n", " X O \n", "on move: O\n", "X X O \n", "O O X \n", "X X O \n", "Episode 118, Total Reward: 0\n", "Average Reward: 0.3050847457627119\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " \n", "X O \n", "on move: X\n", "X \n", "O \n", "X O \n", "on move: O\n", "X \n", "O \n", "X O X \n", "on move: X\n", "X O \n", "O \n", "X O X \n", "on move: O\n", "X O \n", "O X \n", "X O X \n", "on move: X\n", "X O \n", "O O X \n", "X O X \n", "Episode 119, Total Reward: -1\n", "Average Reward: 0.29411764705882354\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X O \n", " X \n", "O \n", "on move: O\n", "X O \n", " X \n", "O X \n", "on move: X\n", "X O \n", " O X \n", "O X \n", "Episode 120, Total Reward: -1\n", "Average Reward: 0.2833333333333333\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " X \n", "X \n", "on move: X\n", " O \n", " X \n", "X O \n", "on move: O\n", " O \n", " X \n", "X O X \n", "on move: X\n", "O O \n", " X \n", "X O X \n", "on move: O\n", "O O \n", "X X \n", "X O X \n", "on move: X\n", "O O O \n", "X X \n", "X O X \n", "Episode 121, Total Reward: -1\n", "Average Reward: 0.2727272727272727\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", " \n", "X X \n", "O \n", "on move: X\n", " \n", "X X \n", "O O \n", "on move: O\n", "X \n", "X X \n", "O O \n", "on move: X\n", "X O \n", "X X \n", "O O \n", "on move: O\n", "X O \n", "X X X \n", "O O \n", "Episode 122, Total Reward: 1\n", "Average Reward: 0.2786885245901639\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " \n", " X \n", "on move: X\n", " X O \n", " \n", "O X \n", "on move: O\n", " X O \n", " X \n", "O X \n", "on move: X\n", " X O \n", " X \n", "O O X \n", "on move: O\n", "X X O \n", " X \n", "O O X \n", "Episode 123, Total Reward: 1\n", "Average Reward: 0.2845528455284553\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " O X \n", " \n", "O X \n", "on move: O\n", " O X \n", "X \n", "O X \n", "on move: X\n", " O X \n", "X O \n", "O X \n", "on move: O\n", " O X \n", "X O \n", "O X X \n", "on move: X\n", " O X \n", "X O O \n", "O X X \n", "on move: O\n", "X O X \n", "X O O \n", "O X X \n", "Episode 124, Total Reward: 0\n", "Average Reward: 0.28225806451612906\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X O \n", " O \n", "X \n", "on move: O\n", " X O \n", " O X \n", "X \n", "on move: X\n", " X O \n", " O X \n", "X O \n", "on move: O\n", "X X O \n", " O X \n", "X O \n", "on move: X\n", "X X O \n", "O O X \n", "X O \n", "on move: O\n", "X X O \n", "O O X \n", "X O X \n", "Episode 125, Total Reward: 0\n", "Average Reward: 0.28\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O \n", "X X \n", " X O \n", "on move: X\n", " O O \n", "X X \n", " X O \n", "on move: O\n", "X O O \n", "X X \n", " X O \n", "on move: X\n", "X O O \n", "X X \n", "O X O \n", "on move: O\n", "X O O \n", "X X X \n", "O X O \n", "Episode 126, Total Reward: 1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X \n", " O \n", "O X \n", "on move: O\n", "X \n", " O \n", "O X X \n", "on move: X\n", "X O \n", " O \n", "O X X \n", "on move: O\n", "X O \n", "X O \n", "O X X \n", "on move: X\n", "X O O \n", "X O \n", "O X X \n", "on move: O\n", "X O O \n", "X X O \n", "O X X \n", "Episode 127, Total Reward: 1\n", "Average Reward: 0.29133858267716534\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " X O \n", "on move: X\n", " X \n", "O \n", " X O \n", "on move: O\n", " X \n", "O X \n", " X O \n", "on move: X\n", " X \n", "O O X \n", " X O \n", "on move: O\n", " X \n", "O O X \n", "X X O \n", "on move: X\n", "O X \n", "O O X \n", "X X O \n", "Episode 128, Total Reward: -1\n", "Average Reward: 0.28125\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", "O X \n", "on move: O\n", " X \n", " O \n", "O X X \n", "on move: X\n", " X \n", "O O \n", "O X X \n", "on move: O\n", " X \n", "O X O \n", "O X X \n", "Episode 129, Total Reward: 1\n", "Average Reward: 0.2868217054263566\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " O X \n", " \n", "O X \n", "on move: O\n", " O X \n", " X \n", "O X \n", "on move: X\n", " O X \n", " O X \n", "O X \n", "on move: O\n", "X O X \n", " O X \n", "O X \n", "on move: X\n", "X O X \n", "O O X \n", "O X \n", "on move: O\n", "X O X \n", "O O X \n", "O X X \n", "Episode 130, Total Reward: 1\n", "Average Reward: 0.2923076923076923\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " O X \n", " X \n", "on move: O\n", " O \n", " O X \n", "X X \n", "on move: X\n", " O O \n", " O X \n", "X X \n", "on move: O\n", "X O O \n", " O X \n", "X X \n", "on move: X\n", "X O O \n", "O O X \n", "X X \n", "on move: O\n", "X O O \n", "O O X \n", "X X X \n", "Episode 131, Total Reward: 1\n", "Average Reward: 0.29770992366412213\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " \n", "X O \n", "X \n", "on move: X\n", "O \n", "X O \n", "X \n", "on move: O\n", "O \n", "X O \n", "X X \n", "on move: X\n", "O \n", "X O \n", "X X O \n", "Episode 132, Total Reward: -1\n", "Average Reward: 0.2878787878787879\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", "X \n", "O \n", "X \n", "on move: X\n", "X O \n", "O \n", "X \n", "on move: O\n", "X O X \n", "O \n", "X \n", "on move: X\n", "X O X \n", "O \n", "X O \n", "on move: O\n", "X O X \n", "O X \n", "X O \n", "Episode 133, Total Reward: 1\n", "Average Reward: 0.2932330827067669\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", "O O \n", " X \n", " X \n", "on move: O\n", "O O \n", " X X \n", " X \n", "on move: X\n", "O O \n", " X X \n", " X O \n", "on move: O\n", "O O \n", " X X \n", "X X O \n", "on move: X\n", "O O \n", "O X X \n", "X X O \n", "on move: O\n", "O O X \n", "O X X \n", "X X O \n", "Episode 134, Total Reward: 1\n", "Average Reward: 0.29850746268656714\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O X \n", "X X \n", " O \n", "on move: X\n", " O X \n", "X X \n", " O O \n", "on move: O\n", "X O X \n", "X X \n", " O O \n", "on move: X\n", "X O X \n", "X O X \n", " O O \n", "Episode 135, Total Reward: -1\n", "Average Reward: 0.28888888888888886\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " X O \n", "on move: X\n", " O X \n", " \n", " X O \n", "on move: O\n", " O X \n", " \n", "X X O \n", "on move: X\n", "O O X \n", " \n", "X X O \n", "on move: O\n", "O O X \n", "X \n", "X X O \n", "on move: X\n", "O O X \n", "X O \n", "X X O \n", "Episode 136, Total Reward: -1\n", "Average Reward: 0.27941176470588236\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", "O X \n", "O \n", "on move: O\n", "X \n", "O X \n", "O X \n", "on move: X\n", "X \n", "O X O \n", "O X \n", "on move: O\n", "X \n", "O X O \n", "O X X \n", "Episode 137, Total Reward: 1\n", "Average Reward: 0.2846715328467153\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " X \n", "O O \n", "on move: O\n", "X X \n", " X \n", "O O \n", "on move: X\n", "X X \n", " X O \n", "O O \n", "on move: O\n", "X X X \n", " X O \n", "O O \n", "Episode 138, Total Reward: 1\n", "Average Reward: 0.2898550724637681\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " X O \n", "on move: O\n", " \n", " X \n", " X O \n", "on move: X\n", " \n", " X \n", "O X O \n", "on move: O\n", " \n", " X X \n", "O X O \n", "on move: X\n", "O \n", " X X \n", "O X O \n", "on move: O\n", "O \n", "X X X \n", "O X O \n", "Episode 139, Total Reward: 1\n", "Average Reward: 0.2949640287769784\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O \n", "O \n", "X X \n", "on move: O\n", " O \n", "O \n", "X X X \n", "Episode 140, Total Reward: 1\n", "Average Reward: 0.3\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", " \n", " X \n", " O X \n", "on move: X\n", " \n", "O X \n", " O X \n", "on move: O\n", "X \n", "O X \n", " O X \n", "on move: X\n", "X O \n", "O X \n", " O X \n", "on move: O\n", "X O \n", "O X \n", "X O X \n", "on move: X\n", "X O O \n", "O X \n", "X O X \n", "on move: O\n", "X O O \n", "O X X \n", "X O X \n", "Episode 141, Total Reward: 1\n", "Average Reward: 0.3049645390070922\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", "X \n", "O \n", "on move: X\n", "O X \n", "X \n", "O \n", "on move: O\n", "O X \n", "X \n", "O X \n", "on move: X\n", "O O X \n", "X \n", "O X \n", "on move: O\n", "O O X \n", "X X \n", "O X \n", "on move: X\n", "O O X \n", "X X \n", "O O X \n", "on move: O\n", "O O X \n", "X X X \n", "O O X \n", "Episode 142, Total Reward: 1\n", "Average Reward: 0.30985915492957744\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X \n", "X O \n", " X \n", "on move: X\n", "O X \n", "X O \n", "O X \n", "on move: O\n", "O X \n", "X O X \n", "O X \n", "on move: X\n", "O X \n", "X O X \n", "O X O \n", "Episode 143, Total Reward: -1\n", "Average Reward: 0.3006993006993007\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " X \n", "O \n", "on move: X\n", "O X \n", " X \n", "O \n", "on move: O\n", "O X \n", " X X \n", "O \n", "on move: X\n", "O X \n", " X X \n", "O O \n", "on move: O\n", "O X \n", "X X X \n", "O O \n", "Episode 144, Total Reward: 1\n", "Average Reward: 0.3055555555555556\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " X O \n", "on move: X\n", " X O \n", " \n", " X O \n", "on move: O\n", " X O \n", " X \n", " X O \n", "on move: X\n", "O X O \n", " X \n", " X O \n", "on move: O\n", "O X O \n", " X \n", "X X O \n", "on move: X\n", "O X O \n", "O X \n", "X X O \n", "on move: O\n", "O X O \n", "O X X \n", "X X O \n", "Episode 145, Total Reward: 1\n", "Average Reward: 0.3103448275862069\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", "X X \n", "X O \n", " O \n", "on move: X\n", "X X \n", "X O \n", "O O \n", "on move: O\n", "X X X \n", "X O \n", "O O \n", "Episode 146, Total Reward: 1\n", "Average Reward: 0.3150684931506849\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " \n", "X X \n", "O \n", "on move: X\n", " \n", "X O X \n", "O \n", "on move: O\n", " X \n", "X O X \n", "O \n", "on move: X\n", " X \n", "X O X \n", "O O \n", "on move: O\n", "X X \n", "X O X \n", "O O \n", "on move: X\n", "X X \n", "X O X \n", "O O O \n", "Episode 147, Total Reward: -1\n", "Average Reward: 0.30612244897959184\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " \n", "X O X \n", " \n", "on move: X\n", " O \n", "X O X \n", " \n", "on move: O\n", " O \n", "X O X \n", "X \n", "on move: X\n", " O O \n", "X O X \n", "X \n", "on move: O\n", "X O O \n", "X O X \n", "X \n", "Episode 148, Total Reward: 1\n", "Average Reward: 0.3108108108108108\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O X \n", " \n", "on move: X\n", " O \n", "X O X \n", " \n", "on move: O\n", " O \n", "X O X \n", " X \n", "on move: X\n", " O \n", "X O X \n", "O X \n", "Episode 149, Total Reward: -1\n", "Average Reward: 0.30201342281879195\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X X \n", " O \n", "X O \n", "on move: X\n", "X X \n", "O O \n", "X O \n", "on move: O\n", "X X X \n", "O O \n", "X O \n", "Episode 150, Total Reward: 1\n", "Average Reward: 0.30666666666666664\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X X \n", " O \n", "X O \n", "on move: X\n", "X X \n", "O O \n", "X O \n", "on move: O\n", "X X \n", "O O X \n", "X O \n", "on move: X\n", "X X \n", "O O X \n", "X O O \n", "on move: O\n", "X X X \n", "O O X \n", "X O O \n", "Episode 151, Total Reward: 1\n", "Average Reward: 0.31125827814569534\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", " \n", " O \n", "X O X \n", "on move: O\n", " X \n", " O \n", "X O X \n", "on move: X\n", " X \n", "O O \n", "X O X \n", "on move: O\n", " X \n", "O X O \n", "X O X \n", "on move: X\n", "O X \n", "O X O \n", "X O X \n", "on move: O\n", "O X X \n", "O X O \n", "X O X \n", "Episode 152, Total Reward: 1\n", "Average Reward: 0.3157894736842105\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O X \n", " \n", "X \n", "on move: X\n", "O X \n", " \n", "X O \n", "on move: O\n", "O X X \n", " \n", "X O \n", "on move: X\n", "O X X \n", " O \n", "X O \n", "Episode 153, Total Reward: -1\n", "Average Reward: 0.30718954248366015\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X \n", "X \n", " O O \n", "on move: O\n", "X X \n", "X \n", " O O \n", "on move: X\n", "X X \n", "X O \n", " O O \n", "on move: O\n", "X X X \n", "X O \n", " O O \n", "Episode 154, Total Reward: 1\n", "Average Reward: 0.3116883116883117\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O X \n", " X \n", " \n", "on move: X\n", "O X \n", "O X \n", " \n", "on move: O\n", "O X X \n", "O X \n", " \n", "on move: X\n", "O X X \n", "O X O \n", " \n", "on move: O\n", "O X X \n", "O X O \n", " X \n", "Episode 155, Total Reward: 1\n", "Average Reward: 0.3161290322580645\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O X \n", " \n", "on move: X\n", "X O \n", " O X \n", " \n", "on move: O\n", "X X O \n", " O X \n", " \n", "on move: X\n", "X X O \n", "O O X \n", " \n", "on move: O\n", "X X O \n", "O O X \n", "X \n", "on move: X\n", "X X O \n", "O O X \n", "X O \n", "on move: O\n", "X X O \n", "O O X \n", "X O X \n", "Episode 156, Total Reward: 0\n", "Average Reward: 0.3141025641025641\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O O \n", " X \n", " X \n", "on move: O\n", " O O \n", " X X \n", " X \n", "on move: X\n", "O O O \n", " X X \n", " X \n", "Episode 157, Total Reward: -1\n", "Average Reward: 0.3057324840764331\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", " X X \n", " O \n", "on move: X\n", " \n", "O X X \n", " O \n", "on move: O\n", " \n", "O X X \n", " X O \n", "on move: X\n", " \n", "O X X \n", "O X O \n", "on move: O\n", "X \n", "O X X \n", "O X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X X O \n", "O X X \n", "O X O \n", "Episode 158, Total Reward: 1\n", "Average Reward: 0.310126582278481\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", "X \n", "O X \n", " \n", "on move: X\n", "X \n", "O X \n", " O \n", "on move: O\n", "X \n", "O X \n", " X O \n", "on move: X\n", "X O \n", "O X \n", " X O \n", "on move: O\n", "X O \n", "O X X \n", " X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X X O \n", "O X X \n", "O X O \n", "Episode 159, Total Reward: 1\n", "Average Reward: 0.31446540880503143\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " X O \n", "on move: X\n", " X \n", "O \n", " X O \n", "on move: O\n", "X X \n", "O \n", " X O \n", "on move: X\n", "X O X \n", "O \n", " X O \n", "on move: O\n", "X O X \n", "O \n", "X X O \n", "on move: X\n", "X O X \n", "O O \n", "X X O \n", "on move: O\n", "X O X \n", "O X O \n", "X X O \n", "Episode 160, Total Reward: 1\n", "Average Reward: 0.31875\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " X O \n", " \n", "on move: X\n", " X \n", "O X O \n", " \n", "on move: O\n", "X X \n", "O X O \n", " \n", "on move: X\n", "X X \n", "O X O \n", " O \n", "on move: O\n", "X X X \n", "O X O \n", " O \n", "Episode 161, Total Reward: 1\n", "Average Reward: 0.32298136645962733\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O X \n", " \n", "X \n", "on move: X\n", " O X \n", " O \n", "X \n", "on move: O\n", "X O X \n", " O \n", "X \n", "on move: X\n", "X O X \n", " O \n", "X O \n", "on move: O\n", "X O X \n", "X O \n", "X O \n", "Episode 162, Total Reward: 1\n", "Average Reward: 0.3271604938271605\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X \n", " X O \n", "on move: X\n", " O \n", "X \n", " X O \n", "on move: O\n", "X O \n", "X \n", " X O \n", "on move: X\n", "X O \n", "X O \n", " X O \n", "on move: O\n", "X O \n", "X O \n", "X X O \n", "Episode 163, Total Reward: 1\n", "Average Reward: 0.3312883435582822\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " \n", " X \n", "on move: X\n", " X O \n", " \n", "O X \n", "on move: O\n", "X X O \n", " \n", "O X \n", "on move: X\n", "X X O \n", " O \n", "O X \n", "on move: O\n", "X X O \n", " O \n", "O X X \n", "on move: X\n", "X X O \n", " O O \n", "O X X \n", "Episode 164, Total Reward: -1\n", "Average Reward: 0.3231707317073171\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", "X O \n", "X O \n", " X \n", "on move: X\n", "X O \n", "X O \n", "O X \n", "Episode 165, Total Reward: -1\n", "Average Reward: 0.3151515151515151\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O X \n", " X \n", "on move: X\n", " O O \n", "X O X \n", " X \n", "on move: O\n", " O O \n", "X O X \n", "X X \n", "on move: X\n", "O O O \n", "X O X \n", "X X \n", "Episode 166, Total Reward: -1\n", "Average Reward: 0.3072289156626506\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", "X \n", "O \n", "on move: X\n", " X \n", "X O \n", "O \n", "on move: O\n", " X X \n", "X O \n", "O \n", "on move: X\n", " X X \n", "X O \n", "O O \n", "on move: O\n", "X X X \n", "X O \n", "O O \n", "Episode 167, Total Reward: 1\n", "Average Reward: 0.31137724550898205\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " O \n", " X \n", "O X \n", "on move: O\n", " O \n", " X \n", "O X X \n", "on move: X\n", " O \n", "O X \n", "O X X \n", "on move: O\n", " O \n", "O X X \n", "O X X \n", "on move: X\n", " O O \n", "O X X \n", "O X X \n", "on move: O\n", "X O O \n", "O X X \n", "O X X \n", "Episode 168, Total Reward: 1\n", "Average Reward: 0.31547619047619047\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", " \n", "X \n", "on move: X\n", "O X \n", "O \n", "X \n", "on move: O\n", "O X \n", "O X \n", "X \n", "on move: X\n", "O O X \n", "O X \n", "X \n", "on move: O\n", "O O X \n", "O X X \n", "X \n", "Episode 169, Total Reward: 1\n", "Average Reward: 0.31952662721893493\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", " X \n", "O O \n", "on move: O\n", "X X \n", " X \n", "O O \n", "on move: X\n", "X X \n", " X \n", "O O O \n", "Episode 170, Total Reward: -1\n", "Average Reward: 0.31176470588235294\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", "O O \n", " \n", "on move: O\n", "X X \n", "O O X \n", " \n", "on move: X\n", "X X \n", "O O X \n", " O \n", "on move: O\n", "X X X \n", "O O X \n", " O \n", "Episode 171, Total Reward: 1\n", "Average Reward: 0.3157894736842105\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O \n", " X \n", "on move: X\n", " X \n", "O \n", "O X \n", "on move: O\n", " X \n", "O X \n", "O X \n", "Episode 172, Total Reward: 1\n", "Average Reward: 0.31976744186046513\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", " X O \n", " O \n", "on move: O\n", "X X \n", " X O \n", " O \n", "on move: X\n", "X X \n", " X O \n", " O O \n", "on move: O\n", "X X \n", " X O \n", "X O O \n", "Episode 173, Total Reward: 1\n", "Average Reward: 0.3236994219653179\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", "O O \n", " X \n", "on move: O\n", " X X \n", "O O \n", " X \n", "on move: X\n", " X X \n", "O O \n", " X O \n", "on move: O\n", "X X X \n", "O O \n", " X O \n", "Episode 174, Total Reward: 1\n", "Average Reward: 0.3275862068965517\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O O X \n", " X \n", "on move: O\n", "X \n", "O O X \n", " X \n", "on move: X\n", "X \n", "O O X \n", "O X \n", "on move: O\n", "X X \n", "O O X \n", "O X \n", "Episode 175, Total Reward: 1\n", "Average Reward: 0.3314285714285714\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", " X \n", "O X \n", "on move: O\n", "O \n", " X X \n", "O X \n", "on move: X\n", "O O \n", " X X \n", "O X \n", "on move: O\n", "O X O \n", " X X \n", "O X \n", "on move: X\n", "O X O \n", " X X \n", "O O X \n", "on move: O\n", "O X O \n", "X X X \n", "O O X \n", "Episode 176, Total Reward: 1\n", "Average Reward: 0.3352272727272727\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X O \n", " \n", "on move: O\n", " X \n", " X O \n", " \n", "on move: X\n", " X \n", " X O \n", "O \n", "on move: O\n", " X X \n", " X O \n", "O \n", "on move: X\n", " X X \n", " X O \n", "O O \n", "on move: O\n", " X X \n", " X O \n", "O O X \n", "on move: X\n", "O X X \n", " X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 177, Total Reward: 0\n", "Average Reward: 0.3333333333333333\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", "X \n", " X \n", "on move: X\n", "O \n", "X \n", " O X \n", "on move: O\n", "O \n", "X X \n", " O X \n", "on move: X\n", "O O \n", "X X \n", " O X \n", "on move: O\n", "O O \n", "X X \n", "X O X \n", "on move: X\n", "O O \n", "X O X \n", "X O X \n", "Episode 178, Total Reward: -1\n", "Average Reward: 0.3258426966292135\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", "X \n", "on move: X\n", "O \n", " X O \n", "X \n", "on move: O\n", "O X \n", " X O \n", "X \n", "on move: X\n", "O X \n", " X O \n", "X O \n", "on move: O\n", "O X X \n", " X O \n", "X O \n", "Episode 179, Total Reward: 1\n", "Average Reward: 0.329608938547486\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " O \n", " X \n", "O X \n", "on move: O\n", " O X \n", " X \n", "O X \n", "on move: X\n", " O X \n", " X \n", "O X O \n", "on move: O\n", " O X \n", "X X \n", "O X O \n", "on move: X\n", " O X \n", "X O X \n", "O X O \n", "on move: O\n", "X O X \n", "X O X \n", "O X O \n", "Episode 180, Total Reward: 0\n", "Average Reward: 0.3277777777777778\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", " X \n", " O O \n", "on move: O\n", "X X \n", " X \n", " O O \n", "on move: X\n", "X X \n", " X O \n", " O O \n", "on move: O\n", "X X \n", "X X O \n", " O O \n", "on move: X\n", "X X O \n", "X X O \n", " O O \n", "Episode 181, Total Reward: -1\n", "Average Reward: 0.32044198895027626\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", "X O \n", "on move: X\n", " X \n", "O \n", "X O \n", "on move: O\n", " X X \n", "O \n", "X O \n", "on move: X\n", " X X \n", "O O \n", "X O \n", "on move: O\n", " X X \n", "O O X \n", "X O \n", "on move: X\n", " X X \n", "O O X \n", "X O O \n", "on move: O\n", "X X X \n", "O O X \n", "X O O \n", "Episode 182, Total Reward: 1\n", "Average Reward: 0.3241758241758242\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X \n", "O O \n", "X \n", "on move: O\n", " X \n", "O O \n", "X X \n", "on move: X\n", " X \n", "O O \n", "X X O \n", "on move: O\n", "X X \n", "O O \n", "X X O \n", "on move: X\n", "X O X \n", "O O \n", "X X O \n", "on move: O\n", "X O X \n", "O X O \n", "X X O \n", "Episode 183, Total Reward: 1\n", "Average Reward: 0.32786885245901637\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " X \n", " O X \n", "on move: O\n", "X O \n", " X \n", " O X \n", "on move: X\n", "X O \n", " X \n", "O O X \n", "on move: O\n", "X O \n", " X X \n", "O O X \n", "Episode 184, Total Reward: 1\n", "Average Reward: 0.33152173913043476\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", " \n", "X X \n", "on move: X\n", "O O \n", " \n", "X X \n", "on move: O\n", "O O \n", " X \n", "X X \n", "on move: X\n", "O O \n", "O X \n", "X X \n", "on move: O\n", "O O X \n", "O X \n", "X X \n", "Episode 185, Total Reward: 1\n", "Average Reward: 0.33513513513513515\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X X O \n", " X \n", "on move: X\n", "O O \n", "X X O \n", " X \n", "on move: O\n", "O O X \n", "X X O \n", " X \n", "on move: X\n", "O O X \n", "X X O \n", "O X \n", "on move: O\n", "O O X \n", "X X O \n", "O X X \n", "Episode 186, Total Reward: 0\n", "Average Reward: 0.3333333333333333\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X \n", "O X \n", "O \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", " X \n", "O X O \n", "O X \n", "on move: O\n", " X \n", "O X O \n", "O X X \n", "Episode 187, Total Reward: 1\n", "Average Reward: 0.33689839572192515\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", "X \n", "O \n", "on move: X\n", "X \n", "X O \n", "O \n", "on move: O\n", "X X \n", "X O \n", "O \n", "on move: X\n", "X O X \n", "X O \n", "O \n", "on move: O\n", "X O X \n", "X O \n", "O X \n", "on move: X\n", "X O X \n", "X O \n", "O X O \n", "on move: O\n", "X O X \n", "X O X \n", "O X O \n", "Episode 188, Total Reward: 0\n", "Average Reward: 0.3351063829787234\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " X \n", "O \n", "on move: X\n", "O X \n", " X \n", "O \n", "on move: O\n", "O X \n", " X \n", "O X \n", "on move: X\n", "O O X \n", " X \n", "O X \n", "on move: O\n", "O O X \n", " X X \n", "O X \n", "Episode 189, Total Reward: 1\n", "Average Reward: 0.3386243386243386\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O \n", " X \n", "X \n", "on move: X\n", "O O \n", " X \n", "X \n", "on move: O\n", "O O \n", "X X \n", "X \n", "on move: X\n", "O O \n", "X O X \n", "X \n", "on move: O\n", "O O \n", "X O X \n", "X X \n", "on move: X\n", "O O \n", "X O X \n", "X X O \n", "Episode 190, Total Reward: -1\n", "Average Reward: 0.33157894736842103\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X \n", " O \n", "X O \n", "on move: O\n", " X \n", " O X \n", "X O \n", "on move: X\n", " X \n", " O X \n", "X O O \n", "on move: O\n", " X X \n", " O X \n", "X O O \n", "on move: X\n", "O X X \n", " O X \n", "X O O \n", "Episode 191, Total Reward: -1\n", "Average Reward: 0.32460732984293195\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", "X O \n", " \n", "X \n", "on move: X\n", "X O \n", " O \n", "X \n", "on move: O\n", "X O \n", " O \n", "X X \n", "on move: X\n", "X O \n", "O O \n", "X X \n", "on move: O\n", "X X O \n", "O O \n", "X X \n", "on move: X\n", "X X O \n", "O O O \n", "X X \n", "Episode 192, Total Reward: -1\n", "Average Reward: 0.3177083333333333\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", " X X \n", " O X \n", " O \n", "on move: X\n", " X X \n", "O O X \n", " O \n", "on move: O\n", "X X X \n", "O O X \n", " O \n", "Episode 193, Total Reward: 1\n", "Average Reward: 0.32124352331606215\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", "X O \n", "on move: X\n", " X \n", "X O \n", "X O O \n", "on move: O\n", "X X \n", "X O \n", "X O O \n", "Episode 194, Total Reward: 1\n", "Average Reward: 0.3247422680412371\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " \n", " O X \n", "on move: X\n", "X \n", " O \n", " O X \n", "on move: O\n", "X \n", "X O \n", " O X \n", "on move: X\n", "X O \n", "X O \n", " O X \n", "on move: O\n", "X O \n", "X O \n", "X O X \n", "Episode 195, Total Reward: 1\n", "Average Reward: 0.3282051282051282\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", " \n", " \n", "X O X \n", "on move: X\n", " O \n", " \n", "X O X \n", "on move: O\n", " O \n", "X \n", "X O X \n", "on move: X\n", " O O \n", "X \n", "X O X \n", "on move: O\n", " O O \n", "X X \n", "X O X \n", "on move: X\n", " O O \n", "X X O \n", "X O X \n", "on move: O\n", "X O O \n", "X X O \n", "X O X \n", "Episode 196, Total Reward: 1\n", "Average Reward: 0.33163265306122447\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", " \n", " X \n", "on move: X\n", "O X \n", "O \n", " X \n", "on move: O\n", "O X \n", "O \n", "X X \n", "on move: X\n", "O X \n", "O O \n", "X X \n", "on move: O\n", "O X \n", "O O X \n", "X X \n", "on move: X\n", "O X O \n", "O O X \n", "X X \n", "on move: O\n", "O X O \n", "O O X \n", "X X X \n", "Episode 197, Total Reward: 1\n", "Average Reward: 0.3350253807106599\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", " X X \n", " O X \n", " O \n", "on move: X\n", "O X X \n", " O X \n", " O \n", "on move: O\n", "O X X \n", "X O X \n", " O \n", "on move: X\n", "O X X \n", "X O X \n", " O O \n", "Episode 198, Total Reward: -1\n", "Average Reward: 0.3282828282828283\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " \n", "X O O \n", " X \n", "on move: O\n", " \n", "X O O \n", " X X \n", "on move: X\n", " O \n", "X O O \n", " X X \n", "on move: O\n", " O \n", "X O O \n", "X X X \n", "Episode 199, Total Reward: 1\n", "Average Reward: 0.3316582914572864\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", " X \n", " O X \n", "on move: O\n", "O X \n", " X \n", " O X \n", "on move: X\n", "O X \n", " O X \n", " O X \n", "on move: O\n", "O X \n", " O X \n", "X O X \n", "on move: X\n", "O X \n", "O O X \n", "X O X \n", "on move: O\n", "O X X \n", "O O X \n", "X O X \n", "Episode 200, Total Reward: 1\n", "Average Reward: 0.335\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", " \n", "O X \n", "X \n", "on move: X\n", " O \n", "O X \n", "X \n", "on move: O\n", " O X \n", "O X \n", "X \n", "Episode 201, Total Reward: 1\n", "Average Reward: 0.3383084577114428\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", "O X \n", " O X \n", " \n", "on move: O\n", "O X X \n", " O X \n", " \n", "on move: X\n", "O X X \n", " O X \n", " O \n", "Episode 202, Total Reward: -1\n", "Average Reward: 0.3316831683168317\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", "X \n", "on move: X\n", "O O \n", " X \n", "X \n", "on move: O\n", "O O \n", "X X \n", "X \n", "on move: X\n", "O O O \n", "X X \n", "X \n", "Episode 203, Total Reward: -1\n", "Average Reward: 0.3251231527093596\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", " \n", " X \n", "on move: X\n", "O X \n", " \n", "O X \n", "on move: O\n", "O X \n", "X \n", "O X \n", "on move: X\n", "O X \n", "X O \n", "O X \n", "on move: O\n", "O X \n", "X X O \n", "O X \n", "on move: X\n", "O X \n", "X X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 204, Total Reward: 0\n", "Average Reward: 0.3235294117647059\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X X O \n", " \n", "on move: X\n", " \n", "X X O \n", " O \n", "on move: O\n", " \n", "X X O \n", " X O \n", "on move: X\n", " O \n", "X X O \n", " X O \n", "on move: O\n", "X O \n", "X X O \n", " X O \n", "on move: X\n", "X O O \n", "X X O \n", " X O \n", "Episode 205, Total Reward: -1\n", "Average Reward: 0.3170731707317073\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", "O X \n", " O \n", "on move: O\n", " X \n", "O X X \n", " O \n", "on move: X\n", " O X \n", "O X X \n", " O \n", "on move: O\n", "X O X \n", "O X X \n", " O \n", "on move: X\n", "X O X \n", "O X X \n", "O O \n", "on move: O\n", "X O X \n", "O X X \n", "O O X \n", "Episode 206, Total Reward: 1\n", "Average Reward: 0.32038834951456313\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O X \n", " \n", "X \n", "on move: X\n", "O X \n", "O \n", "X \n", "on move: O\n", "O X \n", "O \n", "X X \n", "on move: X\n", "O X \n", "O \n", "X X O \n", "on move: O\n", "O X \n", "O X \n", "X X O \n", "on move: X\n", "O O X \n", "O X \n", "X X O \n", "on move: O\n", "O O X \n", "O X X \n", "X X O \n", "Episode 207, Total Reward: 1\n", "Average Reward: 0.32367149758454106\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O X \n", "O X \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", " O X \n", "O X \n", "O X \n", "on move: O\n", " O X \n", "O X \n", "O X X \n", "on move: X\n", " O X \n", "O X O \n", "O X X \n", "on move: O\n", "X O X \n", "O X O \n", "O X X \n", "Episode 208, Total Reward: 1\n", "Average Reward: 0.3269230769230769\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O O \n", " \n", "X X \n", "on move: O\n", "X O O \n", " \n", "X X \n", "on move: X\n", "X O O \n", "O \n", "X X \n", "on move: O\n", "X O O \n", "O X \n", "X X \n", "on move: X\n", "X O O \n", "O X O \n", "X X \n", "on move: O\n", "X O O \n", "O X O \n", "X X X \n", "Episode 209, Total Reward: 1\n", "Average Reward: 0.33014354066985646\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", " X X \n", " O \n", "on move: X\n", " \n", " X X \n", " O O \n", "on move: O\n", " X \n", " X X \n", " O O \n", "on move: X\n", " X \n", "O X X \n", " O O \n", "on move: O\n", " X X \n", "O X X \n", " O O \n", "on move: X\n", " X X \n", "O X X \n", "O O O \n", "Episode 210, Total Reward: -1\n", "Average Reward: 0.3238095238095238\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", "O X \n", " O \n", " X \n", "on move: O\n", "O X \n", " O \n", " X X \n", "on move: X\n", "O X \n", " O O \n", " X X \n", "on move: O\n", "O X \n", "X O O \n", " X X \n", "on move: X\n", "O X \n", "X O O \n", "O X X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 211, Total Reward: 0\n", "Average Reward: 0.3222748815165877\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O X \n", " X \n", " \n", "on move: X\n", " O X \n", " O X \n", " \n", "on move: O\n", "X O X \n", " O X \n", " \n", "on move: X\n", "X O X \n", " O X \n", "O \n", "on move: O\n", "X O X \n", "X O X \n", "O \n", "on move: X\n", "X O X \n", "X O X \n", "O O \n", "Episode 212, Total Reward: -1\n", "Average Reward: 0.3160377358490566\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " X \n", " O O \n", "on move: O\n", " X \n", " X X \n", " O O \n", "on move: X\n", " X \n", "O X X \n", " O O \n", "on move: O\n", " X X \n", "O X X \n", " O O \n", "on move: X\n", " X X \n", "O X X \n", "O O O \n", "Episode 213, Total Reward: -1\n", "Average Reward: 0.30985915492957744\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", "X \n", " \n", "X O \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X X \n", " O \n", "X O \n", "on move: X\n", "X X \n", " O \n", "X O O \n", "on move: O\n", "X X \n", " O X \n", "X O O \n", "on move: X\n", "X O X \n", " O X \n", "X O O \n", "Episode 214, Total Reward: -1\n", "Average Reward: 0.3037383177570093\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X O \n", "X \n", " O \n", "on move: O\n", "X O \n", "X X \n", " O \n", "on move: X\n", "X O \n", "X X \n", " O O \n", "on move: O\n", "X O \n", "X X \n", "X O O \n", "Episode 215, Total Reward: 1\n", "Average Reward: 0.30697674418604654\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", "X X \n", " \n", " O \n", "on move: X\n", "X X \n", " O \n", " O \n", "on move: O\n", "X X X \n", " O \n", " O \n", "Episode 216, Total Reward: 1\n", "Average Reward: 0.3101851851851852\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", "O O \n", " X \n", "on move: O\n", " X \n", "O O \n", " X X \n", "on move: X\n", " O X \n", "O O \n", " X X \n", "on move: O\n", "X O X \n", "O O \n", " X X \n", "on move: X\n", "X O X \n", "O O O \n", " X X \n", "Episode 217, Total Reward: -1\n", "Average Reward: 0.30414746543778803\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X X \n", " \n", "on move: X\n", " O \n", "O X X \n", " \n", "on move: O\n", " O \n", "O X X \n", "X \n", "on move: X\n", " O \n", "O X X \n", "X O \n", "on move: O\n", " O \n", "O X X \n", "X X O \n", "on move: X\n", "O O \n", "O X X \n", "X X O \n", "on move: O\n", "O O X \n", "O X X \n", "X X O \n", "Episode 218, Total Reward: 1\n", "Average Reward: 0.3073394495412844\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", " \n", " X \n", "X O \n", "on move: X\n", " \n", "O X \n", "X O \n", "on move: O\n", " X \n", "O X \n", "X O \n", "Episode 219, Total Reward: 1\n", "Average Reward: 0.3105022831050228\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " X \n", "O \n", " X \n", "on move: X\n", "O X \n", "O \n", " X \n", "on move: O\n", "O X \n", "O \n", "X X \n", "on move: X\n", "O O X \n", "O \n", "X X \n", "on move: O\n", "O O X \n", "O X \n", "X X \n", "on move: X\n", "O O X \n", "O X \n", "X X O \n", "on move: O\n", "O O X \n", "O X X \n", "X X O \n", "Episode 220, Total Reward: 1\n", "Average Reward: 0.31363636363636366\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", "X X \n", " \n", "on move: X\n", "O O \n", "X X \n", " \n", "on move: O\n", "O O \n", "X X \n", " X \n", "on move: X\n", "O O \n", "X X \n", "O X \n", "on move: O\n", "O O X \n", "X X \n", "O X \n", "on move: X\n", "O O X \n", "X X \n", "O X O \n", "on move: O\n", "O O X \n", "X X X \n", "O X O \n", "Episode 221, Total Reward: 1\n", "Average Reward: 0.3167420814479638\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", "X O \n", " \n", " X \n", "on move: X\n", "X O O \n", " \n", " X \n", "on move: O\n", "X O O \n", " X \n", " X \n", "Episode 222, Total Reward: 1\n", "Average Reward: 0.31981981981981983\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", "O O \n", " X \n", " X \n", "on move: O\n", "O O \n", "X X \n", " X \n", "on move: X\n", "O O \n", "X X \n", " O X \n", "on move: O\n", "O O \n", "X X \n", "X O X \n", "on move: X\n", "O O \n", "X X O \n", "X O X \n", "on move: O\n", "O X O \n", "X X O \n", "X O X \n", "Episode 223, Total Reward: 0\n", "Average Reward: 0.3183856502242152\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", "X O \n", " \n", "on move: X\n", "X \n", "X O \n", " O \n", "on move: O\n", "X X \n", "X O \n", " O \n", "on move: X\n", "X O X \n", "X O \n", " O \n", "Episode 224, Total Reward: -1\n", "Average Reward: 0.3125\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", "O X \n", " X \n", " O \n", "on move: O\n", "O X \n", " X X \n", " O \n", "on move: X\n", "O X \n", " X X \n", "O O \n", "on move: O\n", "O X \n", " X X \n", "O X O \n", "Episode 225, Total Reward: 1\n", "Average Reward: 0.31555555555555553\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X X \n", "O \n", " \n", "on move: X\n", "O X X \n", "O \n", " \n", "on move: O\n", "O X X \n", "O X \n", " \n", "on move: X\n", "O X X \n", "O O X \n", " \n", "on move: O\n", "O X X \n", "O O X \n", " X \n", "Episode 226, Total Reward: 1\n", "Average Reward: 0.3185840707964602\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", "O X \n", " O \n", "X \n", "on move: O\n", "O X \n", " O X \n", "X \n", "on move: X\n", "O X \n", " O X \n", "X O \n", "Episode 227, Total Reward: -1\n", "Average Reward: 0.31277533039647576\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " X \n", " \n", "on move: X\n", "X O \n", " X \n", "O \n", "on move: O\n", "X O \n", " X \n", "O X \n", "on move: X\n", "X O O \n", " X \n", "O X \n", "on move: O\n", "X O O \n", " X \n", "O X X \n", "on move: X\n", "X O O \n", " O X \n", "O X X \n", "Episode 228, Total Reward: -1\n", "Average Reward: 0.30701754385964913\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O X \n", "X X \n", " O \n", "on move: X\n", " O X \n", "X X \n", "O O \n", "on move: O\n", " O X \n", "X X \n", "O X O \n", "on move: X\n", " O X \n", "X X O \n", "O X O \n", "on move: O\n", "X O X \n", "X X O \n", "O X O \n", "Episode 229, Total Reward: 0\n", "Average Reward: 0.3056768558951965\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", " X \n", " O O \n", "on move: O\n", "X \n", " X \n", "X O O \n", "on move: X\n", "X O \n", " X \n", "X O O \n", "on move: O\n", "X O X \n", " X \n", "X O O \n", "on move: X\n", "X O X \n", " O X \n", "X O O \n", "Episode 230, Total Reward: -1\n", "Average Reward: 0.3\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", " X \n", " O X \n", "O \n", "on move: O\n", " X \n", " O X \n", "O X \n", "on move: X\n", "O X \n", " O X \n", "O X \n", "on move: O\n", "O X \n", "X O X \n", "O X \n", "on move: X\n", "O X \n", "X O X \n", "O X O \n", "Episode 231, Total Reward: -1\n", "Average Reward: 0.2943722943722944\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O X \n", " \n", "X \n", "on move: X\n", "O X \n", "O \n", "X \n", "on move: O\n", "O X \n", "O X \n", "X \n", "on move: X\n", "O X O \n", "O X \n", "X \n", "on move: O\n", "O X O \n", "O X \n", "X X \n", "on move: X\n", "O X O \n", "O X \n", "X O X \n", "on move: O\n", "O X O \n", "O X X \n", "X O X \n", "Episode 232, Total Reward: 0\n", "Average Reward: 0.29310344827586204\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", "X X \n", "O \n", " \n", "on move: X\n", "X X \n", "O O \n", " \n", "on move: O\n", "X X \n", "O O \n", " X \n", "on move: X\n", "X X \n", "O O \n", "O X \n", "on move: O\n", "X X \n", "O X O \n", "O X \n", "on move: X\n", "X O X \n", "O X O \n", "O X \n", "on move: O\n", "X O X \n", "O X O \n", "O X X \n", "Episode 233, Total Reward: 1\n", "Average Reward: 0.296137339055794\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", "X O \n", " \n", " X \n", "on move: X\n", "X O \n", "O \n", " X \n", "on move: O\n", "X O X \n", "O \n", " X \n", "on move: X\n", "X O X \n", "O O \n", " X \n", "on move: O\n", "X O X \n", "O O \n", " X X \n", "on move: X\n", "X O X \n", "O O O \n", " X X \n", "Episode 234, Total Reward: -1\n", "Average Reward: 0.2905982905982906\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", "X O \n", " \n", "X \n", "on move: X\n", "X O O \n", " \n", "X \n", "on move: O\n", "X O O \n", " \n", "X X \n", "on move: X\n", "X O O \n", "O \n", "X X \n", "on move: O\n", "X O O \n", "O X \n", "X X \n", "on move: X\n", "X O O \n", "O X O \n", "X X \n", "on move: O\n", "X O O \n", "O X O \n", "X X X \n", "Episode 235, Total Reward: 1\n", "Average Reward: 0.2936170212765957\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", " X \n", " \n", "X O \n", "on move: X\n", " X O \n", " \n", "X O \n", "on move: O\n", " X O \n", "X \n", "X O \n", "on move: X\n", "O X O \n", "X \n", "X O \n", "on move: O\n", "O X O \n", "X \n", "X X O \n", "on move: X\n", "O X O \n", "X O \n", "X X O \n", "Episode 236, Total Reward: -1\n", "Average Reward: 0.288135593220339\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", "O X \n", " O \n", " X \n", "on move: O\n", "O X X \n", " O \n", " X \n", "on move: X\n", "O X X \n", "O O \n", " X \n", "on move: O\n", "O X X \n", "O O \n", "X X \n", "on move: X\n", "O X X \n", "O O \n", "X X O \n", "on move: O\n", "O X X \n", "O X O \n", "X X O \n", "Episode 237, Total Reward: 1\n", "Average Reward: 0.2911392405063291\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O X \n", " \n", " X \n", "on move: X\n", " O X \n", " \n", "O X \n", "on move: O\n", " O X \n", " X \n", "O X \n", "on move: X\n", " O X \n", " X O \n", "O X \n", "on move: O\n", " O X \n", "X X O \n", "O X \n", "on move: X\n", "O O X \n", "X X O \n", "O X \n", "on move: O\n", "O O X \n", "X X O \n", "O X X \n", "Episode 238, Total Reward: 0\n", "Average Reward: 0.28991596638655465\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", "O \n", "X O \n", " X \n", "on move: O\n", "O X \n", "X O \n", " X \n", "on move: X\n", "O X \n", "X O \n", " X O \n", "on move: O\n", "O X \n", "X X O \n", " X O \n", "on move: X\n", "O O X \n", "X X O \n", " X O \n", "on move: O\n", "O O X \n", "X X O \n", "X X O \n", "Episode 239, Total Reward: 1\n", "Average Reward: 0.2928870292887029\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O O \n", "X \n", " X \n", "on move: O\n", " O O \n", "X \n", " X X \n", "on move: X\n", " O O \n", "X O \n", " X X \n", "on move: O\n", "X O O \n", "X O \n", " X X \n", "on move: X\n", "X O O \n", "X O \n", "O X X \n", "on move: O\n", "X O O \n", "X X O \n", "O X X \n", "Episode 240, Total Reward: 1\n", "Average Reward: 0.29583333333333334\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", " O X \n", "on move: X\n", " X \n", "X O O \n", " O X \n", "on move: O\n", " X X \n", "X O O \n", " O X \n", "on move: X\n", "O X X \n", "X O O \n", " O X \n", "on move: O\n", "O X X \n", "X O O \n", "X O X \n", "Episode 241, Total Reward: 0\n", "Average Reward: 0.2946058091286307\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O O \n", " \n", "on move: O\n", " X \n", "X O O \n", " X \n", "on move: X\n", "O X \n", "X O O \n", " X \n", "on move: O\n", "O X X \n", "X O O \n", " X \n", "on move: X\n", "O X X \n", "X O O \n", "O X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 242, Total Reward: 0\n", "Average Reward: 0.29338842975206614\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", "O X \n", " X \n", "on move: O\n", "O X \n", "O X \n", " X \n", "on move: X\n", "O X O \n", "O X \n", " X \n", "on move: O\n", "O X O \n", "O X \n", "X X \n", "on move: X\n", "O X O \n", "O X \n", "X X O \n", "on move: O\n", "O X O \n", "O X X \n", "X X O \n", "Episode 243, Total Reward: 1\n", "Average Reward: 0.2962962962962963\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", "X O \n", "X O \n", " X \n", "on move: X\n", "X O \n", "X O O \n", " X \n", "on move: O\n", "X X O \n", "X O O \n", " X \n", "on move: X\n", "X X O \n", "X O O \n", "O X \n", "Episode 244, Total Reward: -1\n", "Average Reward: 0.29098360655737704\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", "X \n", " \n", "on move: X\n", "O X O \n", "X \n", " \n", "on move: O\n", "O X O \n", "X X \n", " \n", "on move: X\n", "O X O \n", "X X \n", "O \n", "on move: O\n", "O X O \n", "X X \n", "O X \n", "on move: X\n", "O X O \n", "X X \n", "O X O \n", "on move: O\n", "O X O \n", "X X X \n", "O X O \n", "Episode 245, Total Reward: 1\n", "Average Reward: 0.2938775510204082\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O \n", " X X \n", "on move: X\n", " O \n", "X O \n", "O X X \n", "on move: O\n", "X O \n", "X O \n", "O X X \n", "on move: X\n", "X O \n", "X O O \n", "O X X \n", "on move: O\n", "X O X \n", "X O O \n", "O X X \n", "Episode 246, Total Reward: 0\n", "Average Reward: 0.2926829268292683\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", "X O \n", " \n", "on move: X\n", "X \n", "X O O \n", " \n", "on move: O\n", "X \n", "X O O \n", " X \n", "on move: X\n", "X \n", "X O O \n", "O X \n", "on move: O\n", "X X \n", "X O O \n", "O X \n", "on move: X\n", "X X O \n", "X O O \n", "O X \n", "Episode 247, Total Reward: -1\n", "Average Reward: 0.2874493927125506\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", " X \n", " X \n", "O \n", "on move: X\n", " X \n", " X \n", "O O \n", "on move: O\n", " X \n", "X X \n", "O O \n", "on move: X\n", "O X \n", "X X \n", "O O \n", "on move: O\n", "O X \n", "X X X \n", "O O \n", "Episode 248, Total Reward: 1\n", "Average Reward: 0.2903225806451613\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O X \n", " \n", " \n", "on move: X\n", "X O X \n", " \n", " O \n", "on move: O\n", "X O X \n", " \n", "X O \n", "on move: X\n", "X O X \n", " O \n", "X O \n", "Episode 249, Total Reward: -1\n", "Average Reward: 0.285140562248996\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O X \n", " \n", "X \n", "on move: X\n", " O X \n", "O \n", "X \n", "on move: O\n", " O X \n", "O X \n", "X \n", "on move: X\n", "O O X \n", "O X \n", "X \n", "on move: O\n", "O O X \n", "O X X \n", "X \n", "Episode 250, Total Reward: 1\n", "Average Reward: 0.288\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", "X \n", " \n", "on move: X\n", "O X O \n", "X \n", " \n", "on move: O\n", "O X O \n", "X X \n", " \n", "on move: X\n", "O X O \n", "X X \n", " O \n", "on move: O\n", "O X O \n", "X X X \n", " O \n", "Episode 251, Total Reward: 1\n", "Average Reward: 0.2908366533864542\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O O \n", " X \n", " X \n", "on move: O\n", " O O \n", " X X \n", " X \n", "on move: X\n", " O O \n", " X X \n", " O X \n", "on move: O\n", " O O \n", " X X \n", "X O X \n", "on move: X\n", "O O O \n", " X X \n", "X O X \n", "Episode 252, Total Reward: -1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X \n", "X O \n", " O \n", "on move: O\n", "X \n", "X O \n", " X O \n", "on move: X\n", "X O \n", "X O \n", " X O \n", "on move: O\n", "X O X \n", "X O \n", " X O \n", "on move: X\n", "X O X \n", "X O \n", "O X O \n", "on move: O\n", "X O X \n", "X O X \n", "O X O \n", "Episode 253, Total Reward: 0\n", "Average Reward: 0.2845849802371542\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X \n", "O X O \n", " \n", "on move: O\n", " X \n", "O X O \n", " X \n", "on move: X\n", " X \n", "O X O \n", "O X \n", "on move: O\n", " X \n", "O X O \n", "O X X \n", "Episode 254, Total Reward: 1\n", "Average Reward: 0.2874015748031496\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X \n", "O X \n", " O \n", "on move: O\n", " X X \n", "O X \n", " O \n", "on move: X\n", " X X \n", "O X \n", "O O \n", "on move: O\n", " X X \n", "O X X \n", "O O \n", "on move: X\n", " X X \n", "O X X \n", "O O O \n", "Episode 255, Total Reward: -1\n", "Average Reward: 0.2823529411764706\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O \n", " X X \n", "on move: X\n", "O O \n", "X O \n", " X X \n", "on move: O\n", "O O \n", "X O X \n", " X X \n", "on move: X\n", "O O \n", "X O X \n", "O X X \n", "on move: O\n", "O O X \n", "X O X \n", "O X X \n", "Episode 256, Total Reward: 1\n", "Average Reward: 0.28515625\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " O X \n", " X \n", "on move: O\n", " O X \n", " O X \n", " X \n", "Episode 257, Total Reward: 1\n", "Average Reward: 0.28793774319066145\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O O \n", " X \n", " X \n", "on move: O\n", " O O \n", " X \n", " X X \n", "on move: X\n", " O O \n", "O X \n", " X X \n", "on move: O\n", "X O O \n", "O X \n", " X X \n", "Episode 258, Total Reward: 1\n", "Average Reward: 0.29069767441860467\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " \n", "X O X \n", " O \n", "on move: O\n", "X \n", "X O X \n", " O \n", "on move: X\n", "X \n", "X O X \n", " O O \n", "on move: O\n", "X X \n", "X O X \n", " O O \n", "on move: X\n", "X O X \n", "X O X \n", " O O \n", "Episode 259, Total Reward: -1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " \n", "X \n", "O X \n", "on move: X\n", " O \n", "X \n", "O X \n", "on move: O\n", " O \n", "X \n", "O X X \n", "on move: X\n", " O \n", "X O \n", "O X X \n", "on move: O\n", " X O \n", "X O \n", "O X X \n", "on move: X\n", "O X O \n", "X O \n", "O X X \n", "on move: O\n", "O X O \n", "X X O \n", "O X X \n", "Episode 260, Total Reward: 1\n", "Average Reward: 0.28846153846153844\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X O \n", " O \n", " X \n", "on move: O\n", "X X O \n", " O \n", " X \n", "on move: X\n", "X X O \n", " O O \n", " X \n", "on move: O\n", "X X O \n", " O O \n", "X X \n", "on move: X\n", "X X O \n", " O O \n", "X O X \n", "on move: O\n", "X X O \n", "X O O \n", "X O X \n", "Episode 261, Total Reward: 1\n", "Average Reward: 0.29118773946360155\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", "O \n", " \n", "on move: O\n", "X \n", "O \n", " X \n", "on move: X\n", "X O \n", "O \n", " X \n", "on move: O\n", "X X O \n", "O \n", " X \n", "on move: X\n", "X X O \n", "O O \n", " X \n", "on move: O\n", "X X O \n", "O O X \n", " X \n", "on move: X\n", "X X O \n", "O O X \n", "O X \n", "Episode 262, Total Reward: -1\n", "Average Reward: 0.2862595419847328\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", "O X \n", " O \n", "on move: O\n", "X X \n", "O X \n", " O \n", "on move: X\n", "X X O \n", "O X \n", " O \n", "on move: O\n", "X X O \n", "O X \n", "X O \n", "on move: X\n", "X X O \n", "O X \n", "X O O \n", "on move: O\n", "X X O \n", "O X X \n", "X O O \n", "Episode 263, Total Reward: 0\n", "Average Reward: 0.28517110266159695\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X \n", " O \n", "O X \n", "on move: O\n", " X \n", " X O \n", "O X \n", "on move: X\n", " X \n", "O X O \n", "O X \n", "on move: O\n", " X X \n", "O X O \n", "O X \n", "Episode 264, Total Reward: 1\n", "Average Reward: 0.2878787878787879\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", "O \n", "X \n", " \n", "on move: O\n", "O \n", "X \n", "X \n", "on move: X\n", "O \n", "X \n", "X O \n", "on move: O\n", "O X \n", "X \n", "X O \n", "on move: X\n", "O X \n", "X \n", "X O O \n", "on move: O\n", "O X X \n", "X \n", "X O O \n", "on move: X\n", "O X X \n", "X O \n", "X O O \n", "on move: O\n", "O X X \n", "X X O \n", "X O O \n", "Episode 265, Total Reward: 1\n", "Average Reward: 0.29056603773584905\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " X O \n", "X O \n", " X \n", "on move: X\n", "O X O \n", "X O \n", " X \n", "on move: O\n", "O X O \n", "X O \n", "X X \n", "on move: X\n", "O X O \n", "X O O \n", "X X \n", "on move: O\n", "O X O \n", "X O O \n", "X X X \n", "Episode 266, Total Reward: 1\n", "Average Reward: 0.2932330827067669\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O \n", " \n", "X X \n", "on move: X\n", "O O \n", " \n", "X X \n", "on move: O\n", "O O \n", " X \n", "X X \n", "on move: X\n", "O O \n", " O X \n", "X X \n", "on move: O\n", "O O \n", "X O X \n", "X X \n", "on move: X\n", "O O \n", "X O X \n", "X X O \n", "Episode 267, Total Reward: -1\n", "Average Reward: 0.2883895131086142\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", " O X \n", "on move: X\n", " X \n", "X O O \n", " O X \n", "on move: O\n", " X \n", "X O O \n", "X O X \n", "on move: X\n", "O X \n", "X O O \n", "X O X \n", "on move: O\n", "O X X \n", "X O O \n", "X O X \n", "Episode 268, Total Reward: 0\n", "Average Reward: 0.2873134328358209\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X \n", "X O X \n", " \n", "on move: X\n", "O X \n", "X O X \n", " O \n", "on move: O\n", "O X \n", "X O X \n", "X O \n", "on move: X\n", "O X \n", "X O X \n", "X O O \n", "Episode 269, Total Reward: -1\n", "Average Reward: 0.2825278810408922\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X X \n", " O \n", " \n", "on move: X\n", " X X \n", " O \n", " O \n", "on move: O\n", " X X \n", " X O \n", " O \n", "on move: X\n", "O X X \n", " X O \n", " O \n", "on move: O\n", "O X X \n", " X O \n", " X O \n", "Episode 270, Total Reward: 1\n", "Average Reward: 0.2851851851851852\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " \n", "O X X \n", "on move: X\n", " \n", " O \n", "O X X \n", "on move: O\n", " X \n", " O \n", "O X X \n", "on move: X\n", " X \n", "O O \n", "O X X \n", "on move: O\n", "X X \n", "O O \n", "O X X \n", "on move: X\n", "X X \n", "O O O \n", "O X X \n", "Episode 271, Total Reward: -1\n", "Average Reward: 0.28044280442804426\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", " X \n", " \n", "X O \n", "on move: X\n", "O X \n", " \n", "X O \n", "on move: O\n", "O X X \n", " \n", "X O \n", "on move: X\n", "O X X \n", " O \n", "X O \n", "on move: O\n", "O X X \n", "X O \n", "X O \n", "on move: X\n", "O X X \n", "X O \n", "X O O \n", "on move: O\n", "O X X \n", "X X O \n", "X O O \n", "Episode 272, Total Reward: 1\n", "Average Reward: 0.28308823529411764\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", "X X \n", " \n", " O \n", "on move: X\n", "X X \n", " O \n", " O \n", "on move: O\n", "X X \n", " O \n", " X O \n", "on move: X\n", "X O X \n", " O \n", " X O \n", "on move: O\n", "X O X \n", " O \n", "X X O \n", "on move: X\n", "X O X \n", " O O \n", "X X O \n", "on move: O\n", "X O X \n", "X O O \n", "X X O \n", "Episode 273, Total Reward: 1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O X \n", " \n", " X \n", "on move: X\n", "O X \n", " \n", " X O \n", "on move: O\n", "O X \n", " X \n", " X O \n", "on move: X\n", "O X \n", " X \n", "O X O \n", "on move: O\n", "O X X \n", " X \n", "O X O \n", "Episode 274, Total Reward: 1\n", "Average Reward: 0.28832116788321166\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O O \n", " X \n", " X \n", "on move: O\n", " O O \n", " X \n", " X X \n", "on move: X\n", "O O O \n", " X \n", " X X \n", "Episode 275, Total Reward: -1\n", "Average Reward: 0.28363636363636363\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", " X \n", " O X \n", "X O \n", "on move: X\n", " O X \n", " O X \n", "X O \n", "Episode 276, Total Reward: -1\n", "Average Reward: 0.27898550724637683\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " \n", "O X X \n", " \n", "on move: X\n", " \n", "O X X \n", "O \n", "on move: O\n", " X \n", "O X X \n", "O \n", "on move: X\n", " X \n", "O X X \n", "O O \n", "on move: O\n", " X X \n", "O X X \n", "O O \n", "on move: X\n", " X X \n", "O X X \n", "O O O \n", "Episode 277, Total Reward: -1\n", "Average Reward: 0.2743682310469314\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " O X \n", " X \n", " O \n", "on move: O\n", " O X \n", " X X \n", " O \n", "on move: X\n", " O X \n", "O X X \n", " O \n", "on move: O\n", " O X \n", "O X X \n", " X O \n", "on move: X\n", " O X \n", "O X X \n", "O X O \n", "on move: O\n", "X O X \n", "O X X \n", "O X O \n", "Episode 278, Total Reward: 0\n", "Average Reward: 0.2733812949640288\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", "O X \n", "X \n", " O \n", "on move: O\n", "O X X \n", "X \n", " O \n", "on move: X\n", "O X X \n", "X \n", " O O \n", "on move: O\n", "O X X \n", "X X \n", " O O \n", "on move: X\n", "O X X \n", "X O X \n", " O O \n", "Episode 279, Total Reward: -1\n", "Average Reward: 0.26881720430107525\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O X \n", "O X \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", "O X \n", "O X \n", "O X \n", "Episode 280, Total Reward: -1\n", "Average Reward: 0.2642857142857143\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O X \n", " \n", " X \n", "on move: X\n", " O X \n", " O \n", " X \n", "on move: O\n", " O X \n", " O \n", " X X \n", "on move: X\n", " O X \n", " O O \n", " X X \n", "on move: O\n", "X O X \n", " O O \n", " X X \n", "on move: X\n", "X O X \n", "O O O \n", " X X \n", "Episode 281, Total Reward: -1\n", "Average Reward: 0.2597864768683274\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " O \n", " X \n", "O X \n", "on move: O\n", " O X \n", " X \n", "O X \n", "on move: X\n", "O O X \n", " X \n", "O X \n", "on move: O\n", "O O X \n", " X \n", "O X X \n", "on move: X\n", "O O X \n", " X O \n", "O X X \n", "on move: O\n", "O O X \n", "X X O \n", "O X X \n", "Episode 282, Total Reward: 0\n", "Average Reward: 0.25886524822695034\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X X \n", "X O \n", " \n", "on move: X\n", "O X X \n", "X O \n", " O \n", "on move: O\n", "O X X \n", "X O \n", "X O \n", "on move: X\n", "O X X \n", "X O O \n", "X O \n", "on move: O\n", "O X X \n", "X O O \n", "X O X \n", "Episode 283, Total Reward: 0\n", "Average Reward: 0.2579505300353357\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O X \n", "O X \n", "on move: O\n", " \n", "O X X \n", "O X \n", "on move: X\n", "O \n", "O X X \n", "O X \n", "Episode 284, Total Reward: -1\n", "Average Reward: 0.2535211267605634\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " \n", " X O \n", "X \n", "on move: X\n", " O \n", " X O \n", "X \n", "on move: O\n", "X O \n", " X O \n", "X \n", "on move: X\n", "X O \n", " X O \n", "X O \n", "on move: O\n", "X O \n", "X X O \n", "X O \n", "Episode 285, Total Reward: 1\n", "Average Reward: 0.256140350877193\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", " O \n", "O \n", "on move: O\n", "X X X \n", " O \n", "O \n", "Episode 286, Total Reward: 1\n", "Average Reward: 0.25874125874125875\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", " O \n", "O \n", "on move: O\n", "X X \n", "X O \n", "O \n", "on move: X\n", "X X \n", "X O O \n", "O \n", "on move: O\n", "X X \n", "X O O \n", "O X \n", "on move: X\n", "X X \n", "X O O \n", "O X O \n", "on move: O\n", "X X X \n", "X O O \n", "O X O \n", "Episode 287, Total Reward: 1\n", "Average Reward: 0.2613240418118467\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", "X O \n", "on move: X\n", "O X \n", "X O \n", "X O \n", "Episode 288, Total Reward: -1\n", "Average Reward: 0.2569444444444444\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", "O X \n", "on move: O\n", " X \n", "X O \n", "O X \n", "on move: X\n", " X \n", "X O \n", "O O X \n", "on move: O\n", " X X \n", "X O \n", "O O X \n", "on move: X\n", "O X X \n", "X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 289, Total Reward: 0\n", "Average Reward: 0.2560553633217993\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", " X X \n", " O X \n", " O \n", "on move: X\n", "O X X \n", " O X \n", " O \n", "on move: O\n", "O X X \n", " O X \n", " O X \n", "Episode 290, Total Reward: 1\n", "Average Reward: 0.25862068965517243\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " X O \n", "on move: O\n", " X \n", " \n", " X O \n", "on move: X\n", "O X \n", " \n", " X O \n", "on move: O\n", "O X \n", "X \n", " X O \n", "on move: X\n", "O X O \n", "X \n", " X O \n", "on move: O\n", "O X O \n", "X \n", "X X O \n", "on move: X\n", "O X O \n", "X O \n", "X X O \n", "Episode 291, Total Reward: -1\n", "Average Reward: 0.2542955326460481\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", "O \n", " \n", "on move: O\n", "X \n", "O \n", "X \n", "on move: X\n", "X \n", "O O \n", "X \n", "on move: O\n", "X \n", "O O \n", "X X \n", "on move: X\n", "X O \n", "O O \n", "X X \n", "on move: O\n", "X O \n", "O O X \n", "X X \n", "on move: X\n", "X O \n", "O O X \n", "X X O \n", "on move: O\n", "X X O \n", "O O X \n", "X X O \n", "Episode 292, Total Reward: 0\n", "Average Reward: 0.2534246575342466\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", "O X \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X X \n", " O \n", "O O X \n", "on move: O\n", "X X \n", "X O \n", "O O X \n", "on move: X\n", "X O X \n", "X O \n", "O O X \n", "on move: O\n", "X O X \n", "X X O \n", "O O X \n", "Episode 293, Total Reward: 1\n", "Average Reward: 0.25597269624573377\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", " \n", "O O \n", "X X \n", "on move: O\n", " X \n", "O O \n", "X X \n", "on move: X\n", " X \n", "O O \n", "X O X \n", "on move: O\n", " X \n", "O O X \n", "X O X \n", "Episode 294, Total Reward: 1\n", "Average Reward: 0.2585034013605442\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", " X \n", " \n", "on move: X\n", "O X \n", " O X \n", " \n", "on move: O\n", "O X \n", " O X \n", "X \n", "on move: X\n", "O X \n", "O O X \n", "X \n", "on move: O\n", "O X X \n", "O O X \n", "X \n", "on move: X\n", "O X X \n", "O O X \n", "X O \n", "Episode 295, Total Reward: -1\n", "Average Reward: 0.2542372881355932\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", "O \n", " O \n", "X X \n", "on move: O\n", "O X \n", " O \n", "X X \n", "on move: X\n", "O X \n", " O \n", "X X O \n", "on move: O\n", "O X X \n", " O \n", "X X O \n", "on move: X\n", "O X X \n", "O O \n", "X X O \n", "on move: O\n", "O X X \n", "O X O \n", "X X O \n", "Episode 296, Total Reward: 1\n", "Average Reward: 0.25675675675675674\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", "X \n", "on move: X\n", " O \n", "X O \n", "X \n", "on move: O\n", "X O \n", "X O \n", "X \n", "Episode 297, Total Reward: 1\n", "Average Reward: 0.25925925925925924\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", "X \n", "on move: X\n", "O O \n", " X \n", "X \n", "on move: O\n", "O X O \n", " X \n", "X \n", "on move: X\n", "O X O \n", "O X \n", "X \n", "on move: O\n", "O X O \n", "O X \n", "X X \n", "on move: X\n", "O X O \n", "O X \n", "X O X \n", "on move: O\n", "O X O \n", "O X X \n", "X O X \n", "Episode 298, Total Reward: 0\n", "Average Reward: 0.25838926174496646\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", "X O \n", " \n", "on move: X\n", "X \n", "X O \n", "O \n", "on move: O\n", "X \n", "X X O \n", "O \n", "on move: X\n", "X O \n", "X X O \n", "O \n", "on move: O\n", "X O X \n", "X X O \n", "O \n", "on move: X\n", "X O X \n", "X X O \n", "O O \n", "on move: O\n", "X O X \n", "X X O \n", "O X O \n", "Episode 299, Total Reward: 0\n", "Average Reward: 0.25752508361204013\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", "O X \n", " X \n", "on move: O\n", " O \n", "O X \n", " X X \n", "on move: X\n", "O O \n", "O X \n", " X X \n", "on move: O\n", "O X O \n", "O X \n", " X X \n", "on move: X\n", "O X O \n", "O O X \n", " X X \n", "on move: O\n", "O X O \n", "O O X \n", "X X X \n", "Episode 300, Total Reward: 1\n", "Average Reward: 0.26\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", " X O \n", "on move: O\n", " X \n", "X O \n", " X O \n", "on move: X\n", " X \n", "X O O \n", " X O \n", "on move: O\n", "X X \n", "X O O \n", " X O \n", "on move: X\n", "X O X \n", "X O O \n", " X O \n", "on move: O\n", "X O X \n", "X O O \n", "X X O \n", "Episode 301, Total Reward: 1\n", "Average Reward: 0.26245847176079734\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O X O \n", " X \n", "on move: O\n", " \n", "O X O \n", "X X \n", "on move: X\n", "O \n", "O X O \n", "X X \n", "on move: O\n", "O X \n", "O X O \n", "X X \n", "Episode 302, Total Reward: 1\n", "Average Reward: 0.26490066225165565\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O \n", " \n", "X X \n", "on move: X\n", "O \n", " \n", "X O X \n", "on move: O\n", "O \n", " X \n", "X O X \n", "on move: X\n", "O O \n", " X \n", "X O X \n", "on move: O\n", "O O \n", "X X \n", "X O X \n", "on move: X\n", "O O O \n", "X X \n", "X O X \n", "Episode 303, Total Reward: -1\n", "Average Reward: 0.2607260726072607\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", "X X \n", "O \n", " \n", "on move: X\n", "X X \n", "O \n", " O \n", "on move: O\n", "X X \n", "O \n", "X O \n", "on move: X\n", "X X \n", "O O \n", "X O \n", "on move: O\n", "X X X \n", "O O \n", "X O \n", "Episode 304, Total Reward: 1\n", "Average Reward: 0.2631578947368421\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X \n", "O X \n", "O \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", " X \n", "O X \n", "O X O \n", "on move: O\n", " X X \n", "O X \n", "O X O \n", "on move: X\n", " X X \n", "O O X \n", "O X O \n", "on move: O\n", "X X X \n", "O O X \n", "O X O \n", "Episode 305, Total Reward: 1\n", "Average Reward: 0.26557377049180325\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", "O X \n", "O X \n", " \n", "on move: O\n", "O X X \n", "O X \n", " \n", "on move: X\n", "O X X \n", "O X \n", "O \n", "Episode 306, Total Reward: -1\n", "Average Reward: 0.26143790849673204\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X \n", " O \n", "O X \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X X O \n", " O \n", "O X \n", "Episode 307, Total Reward: -1\n", "Average Reward: 0.25732899022801303\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X \n", "O X \n", "on move: O\n", "X O \n", "X \n", "O X \n", "on move: X\n", "X O \n", "X O \n", "O X \n", "on move: O\n", "X O \n", "X X O \n", "O X \n", "on move: X\n", "X O \n", "X X O \n", "O X O \n", "on move: O\n", "X O X \n", "X X O \n", "O X O \n", "Episode 308, Total Reward: 0\n", "Average Reward: 0.2564935064935065\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " \n", "O X \n", "on move: X\n", "X \n", " O \n", "O X \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X X \n", " O O \n", "O X \n", "on move: O\n", "X X \n", "X O O \n", "O X \n", "on move: X\n", "X X O \n", "X O O \n", "O X \n", "Episode 309, Total Reward: -1\n", "Average Reward: 0.2524271844660194\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " \n", "O X \n", "O X \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", " X \n", "O X \n", "O O X \n", "on move: O\n", "X X \n", "O X \n", "O O X \n", "Episode 310, Total Reward: 1\n", "Average Reward: 0.25483870967741934\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X X \n", " \n", "on move: X\n", " O \n", " X X \n", "O \n", "on move: O\n", "X O \n", " X X \n", "O \n", "on move: X\n", "X O \n", "O X X \n", "O \n", "on move: O\n", "X O \n", "O X X \n", "O X \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X O X \n", "O X X \n", "O X O \n", "Episode 311, Total Reward: 0\n", "Average Reward: 0.2540192926045016\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X X \n", " \n", "O \n", "on move: X\n", " X X \n", " \n", "O O \n", "on move: O\n", "X X X \n", " \n", "O O \n", "Episode 312, Total Reward: 1\n", "Average Reward: 0.2564102564102564\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " X \n", " O O \n", "on move: O\n", " X \n", " X \n", "X O O \n", "Episode 313, Total Reward: 1\n", "Average Reward: 0.25878594249201275\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X X \n", " O \n", " \n", "on move: X\n", " X X \n", " O \n", " O \n", "on move: O\n", " X X \n", " O X \n", " O \n", "on move: X\n", " X X \n", " O X \n", "O O \n", "on move: O\n", " X X \n", "X O X \n", "O O \n", "on move: X\n", "O X X \n", "X O X \n", "O O \n", "Episode 314, Total Reward: -1\n", "Average Reward: 0.25477707006369427\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X X \n", " O O \n", " \n", "on move: O\n", "X X \n", " O O \n", " X \n", "on move: X\n", "X O X \n", " O O \n", " X \n", "on move: O\n", "X O X \n", "X O O \n", " X \n", "on move: X\n", "X O X \n", "X O O \n", "O X \n", "on move: O\n", "X O X \n", "X O O \n", "O X X \n", "Episode 315, Total Reward: 0\n", "Average Reward: 0.25396825396825395\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " X O \n", " \n", "X \n", "on move: X\n", " X O \n", " \n", "X O \n", "on move: O\n", " X O \n", " X \n", "X O \n", "on move: X\n", " X O \n", " X O \n", "X O \n", "on move: O\n", " X O \n", "X X O \n", "X O \n", "on move: X\n", " X O \n", "X X O \n", "X O O \n", "Episode 316, Total Reward: -1\n", "Average Reward: 0.25\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", "X X \n", " \n", "O \n", "on move: X\n", "X X O \n", " \n", "O \n", "on move: O\n", "X X O \n", " \n", "O X \n", "on move: X\n", "X X O \n", " O \n", "O X \n", "Episode 317, Total Reward: -1\n", "Average Reward: 0.24605678233438485\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X O \n", " X \n", "O \n", "on move: O\n", "X O \n", " X X \n", "O \n", "on move: X\n", "X O \n", " X X \n", "O O \n", "on move: O\n", "X O \n", " X X \n", "O X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X X O \n", "O X X \n", "O X O \n", "Episode 318, Total Reward: 1\n", "Average Reward: 0.24842767295597484\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", " X X \n", "on move: X\n", " O \n", " O \n", " X X \n", "on move: O\n", "X O \n", " O \n", " X X \n", "on move: X\n", "X O \n", " O \n", "O X X \n", "on move: O\n", "X X O \n", " O \n", "O X X \n", "on move: X\n", "X X O \n", " O O \n", "O X X \n", "Episode 319, Total Reward: -1\n", "Average Reward: 0.2445141065830721\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", "X \n", " X \n", "on move: X\n", "O \n", "X O \n", " X \n", "on move: O\n", "O X \n", "X O \n", " X \n", "on move: X\n", "O X O \n", "X O \n", " X \n", "on move: O\n", "O X O \n", "X X O \n", " X \n", "Episode 320, Total Reward: 1\n", "Average Reward: 0.246875\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X O \n", " \n", "on move: O\n", " \n", "X X O \n", " \n", "on move: X\n", " O \n", "X X O \n", " \n", "on move: O\n", " O \n", "X X O \n", " X \n", "on move: X\n", " O \n", "X X O \n", " O X \n", "on move: O\n", " O X \n", "X X O \n", " O X \n", "on move: X\n", " O X \n", "X X O \n", "O O X \n", "on move: O\n", "X O X \n", "X X O \n", "O O X \n", "Episode 321, Total Reward: 1\n", "Average Reward: 0.24922118380062305\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O \n", " X \n", "on move: X\n", "O X \n", "O \n", " X \n", "on move: O\n", "O X \n", "O X \n", " X \n", "on move: X\n", "O X \n", "O X \n", " O X \n", "on move: O\n", "O X \n", "O X X \n", " O X \n", "on move: X\n", "O X O \n", "O X X \n", " O X \n", "on move: O\n", "O X O \n", "O X X \n", "X O X \n", "Episode 322, Total Reward: 0\n", "Average Reward: 0.2484472049689441\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", "X O \n", "on move: X\n", " X \n", "X O O \n", "X O \n", "on move: O\n", "X X \n", "X O O \n", "X O \n", "Episode 323, Total Reward: 1\n", "Average Reward: 0.25077399380804954\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", "O X \n", " O X \n", " \n", "on move: O\n", "O X \n", " O X \n", "X \n", "on move: X\n", "O X \n", "O O X \n", "X \n", "on move: O\n", "O X X \n", "O O X \n", "X \n", "on move: X\n", "O X X \n", "O O X \n", "X O \n", "Episode 324, Total Reward: -1\n", "Average Reward: 0.24691358024691357\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " \n", "O X X \n", " \n", "on move: X\n", " \n", "O X X \n", "O \n", "on move: O\n", " \n", "O X X \n", "O X \n", "on move: X\n", " \n", "O X X \n", "O O X \n", "on move: O\n", " X \n", "O X X \n", "O O X \n", "Episode 325, Total Reward: 1\n", "Average Reward: 0.24923076923076923\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", " X \n", " \n", "on move: X\n", "O X \n", " O X \n", " \n", "on move: O\n", "O X \n", "X O X \n", " \n", "on move: X\n", "O X \n", "X O X \n", "O \n", "on move: O\n", "O X X \n", "X O X \n", "O \n", "on move: X\n", "O X X \n", "X O X \n", "O O \n", "Episode 326, Total Reward: -1\n", "Average Reward: 0.24539877300613497\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " \n", "X \n", "on move: X\n", " X O \n", " \n", "X O \n", "on move: O\n", "X X O \n", " \n", "X O \n", "on move: X\n", "X X O \n", " \n", "X O O \n", "on move: O\n", "X X O \n", " X \n", "X O O \n", "on move: X\n", "X X O \n", "O X \n", "X O O \n", "on move: O\n", "X X O \n", "O X X \n", "X O O \n", "Episode 327, Total Reward: 0\n", "Average Reward: 0.24464831804281345\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", " X \n", "O O \n", "on move: O\n", "X \n", " X X \n", "O O \n", "on move: X\n", "X \n", "O X X \n", "O O \n", "on move: O\n", "X \n", "O X X \n", "O X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X O X \n", "O X X \n", "O X O \n", "Episode 328, Total Reward: 0\n", "Average Reward: 0.24390243902439024\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " X \n", "O \n", " X \n", "on move: X\n", " X \n", "O O \n", " X \n", "on move: O\n", " X \n", "O O \n", "X X \n", "on move: X\n", " O X \n", "O O \n", "X X \n", "on move: O\n", " O X \n", "O O \n", "X X X \n", "Episode 329, Total Reward: 1\n", "Average Reward: 0.24620060790273557\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O X \n", " \n", " X \n", "on move: X\n", "O O X \n", " \n", " X \n", "on move: O\n", "O O X \n", " X \n", " X \n", "on move: X\n", "O O X \n", " X \n", "O X \n", "on move: O\n", "O O X \n", " X X \n", "O X \n", "Episode 330, Total Reward: 1\n", "Average Reward: 0.24848484848484848\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", "O O \n", "X \n", " X \n", "on move: O\n", "O O \n", "X X \n", " X \n", "on move: X\n", "O O \n", "X X \n", " X O \n", "on move: O\n", "O O \n", "X X X \n", " X O \n", "Episode 331, Total Reward: 1\n", "Average Reward: 0.25075528700906347\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", " O \n", " O \n", "X X \n", "on move: O\n", " O \n", "X O \n", "X X \n", "on move: X\n", " O O \n", "X O \n", "X X \n", "on move: O\n", " O O \n", "X X O \n", "X X \n", "on move: X\n", " O O \n", "X X O \n", "X X O \n", "Episode 332, Total Reward: -1\n", "Average Reward: 0.2469879518072289\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O X \n", " \n", " X \n", "on move: X\n", "O X \n", " O \n", " X \n", "on move: O\n", "O X X \n", " O \n", " X \n", "on move: X\n", "O X X \n", " O \n", " O X \n", "on move: O\n", "O X X \n", "X O \n", " O X \n", "on move: X\n", "O X X \n", "X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 333, Total Reward: 0\n", "Average Reward: 0.24624624624624625\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", " X \n", "O O \n", "on move: O\n", "X \n", " X \n", "O X O \n", "on move: X\n", "X \n", " X O \n", "O X O \n", "on move: O\n", "X X \n", " X O \n", "O X O \n", "Episode 334, Total Reward: 1\n", "Average Reward: 0.24850299401197604\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", " O X \n", " O \n", "on move: O\n", "X X \n", " O X \n", " O \n", "on move: X\n", "X X \n", " O X \n", " O O \n", "on move: O\n", "X X \n", " O X \n", "X O O \n", "on move: X\n", "X X \n", "O O X \n", "X O O \n", "on move: O\n", "X X X \n", "O O X \n", "X O O \n", "Episode 335, Total Reward: 1\n", "Average Reward: 0.2507462686567164\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O X \n", " \n", " X \n", "on move: X\n", " O X \n", " O \n", " X \n", "on move: O\n", "X O X \n", " O \n", " X \n", "on move: X\n", "X O X \n", " O \n", " O X \n", "on move: O\n", "X O X \n", " O \n", "X O X \n", "on move: X\n", "X O X \n", "O O \n", "X O X \n", "on move: O\n", "X O X \n", "O X O \n", "X O X \n", "Episode 336, Total Reward: 1\n", "Average Reward: 0.25297619047619047\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " X \n", "X \n", "on move: X\n", " O \n", " O X \n", "X \n", "on move: O\n", " O \n", "X O X \n", "X \n", "on move: X\n", " O \n", "X O X \n", "X O \n", "on move: O\n", " O X \n", "X O X \n", "X O \n", "on move: X\n", " O X \n", "X O X \n", "X O O \n", "Episode 337, Total Reward: -1\n", "Average Reward: 0.24925816023738873\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " X \n", "X \n", "on move: X\n", " O \n", " X \n", "X O \n", "on move: O\n", " O \n", " X X \n", "X O \n", "on move: X\n", "O O \n", " X X \n", "X O \n", "on move: O\n", "O O \n", " X X \n", "X O X \n", "on move: X\n", "O O \n", "O X X \n", "X O X \n", "on move: O\n", "O O X \n", "O X X \n", "X O X \n", "Episode 338, Total Reward: 1\n", "Average Reward: 0.2514792899408284\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " \n", "X O \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X \n", " O \n", "X X O \n", "on move: X\n", "X \n", " O O \n", "X X O \n", "on move: O\n", "X \n", "X O O \n", "X X O \n", "Episode 339, Total Reward: 1\n", "Average Reward: 0.2536873156342183\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O X \n", "O X \n", "on move: O\n", "X \n", "O X \n", "O X \n", "on move: X\n", "X \n", "O X \n", "O O X \n", "on move: O\n", "X \n", "O X X \n", "O O X \n", "Episode 340, Total Reward: 1\n", "Average Reward: 0.25588235294117645\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X \n", " O O \n", "X \n", "on move: O\n", " X \n", " O O \n", "X X \n", "on move: X\n", " X O \n", " O O \n", "X X \n", "on move: O\n", " X O \n", "X O O \n", "X X \n", "on move: X\n", "O X O \n", "X O O \n", "X X \n", "on move: O\n", "O X O \n", "X O O \n", "X X X \n", "Episode 341, Total Reward: 1\n", "Average Reward: 0.25806451612903225\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X X \n", " O \n", " \n", "on move: X\n", "X O X \n", " O \n", " \n", "on move: O\n", "X O X \n", "X O \n", " \n", "on move: X\n", "X O X \n", "X O O \n", " \n", "on move: O\n", "X O X \n", "X O O \n", "X \n", "Episode 342, Total Reward: 1\n", "Average Reward: 0.260233918128655\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " \n", "X O X \n", " O \n", "on move: O\n", " \n", "X O X \n", " O X \n", "on move: X\n", " O \n", "X O X \n", " O X \n", "Episode 343, Total Reward: -1\n", "Average Reward: 0.2565597667638484\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", " X X \n", " O \n", "on move: X\n", " \n", " X X \n", " O O \n", "on move: O\n", " X \n", " X X \n", " O O \n", "on move: X\n", " X \n", "O X X \n", " O O \n", "on move: O\n", "X X \n", "O X X \n", " O O \n", "on move: X\n", "X X \n", "O X X \n", "O O O \n", "Episode 344, Total Reward: -1\n", "Average Reward: 0.25290697674418605\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", "O \n", "X \n", " \n", "on move: O\n", "O \n", "X X \n", " \n", "on move: X\n", "O \n", "X X \n", "O \n", "on move: O\n", "O X \n", "X X \n", "O \n", "on move: X\n", "O X \n", "X X \n", "O O \n", "on move: O\n", "O X \n", "X X X \n", "O O \n", "Episode 345, Total Reward: 1\n", "Average Reward: 0.25507246376811593\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X \n", " \n", "O X \n", "on move: X\n", "X O \n", " \n", "O X \n", "on move: O\n", "X O \n", " \n", "O X X \n", "on move: X\n", "X O \n", " O \n", "O X X \n", "Episode 346, Total Reward: -1\n", "Average Reward: 0.2514450867052023\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", "X O \n", "X \n", " \n", "on move: X\n", "X O O \n", "X \n", " \n", "on move: O\n", "X O O \n", "X \n", "X \n", "Episode 347, Total Reward: 1\n", "Average Reward: 0.25360230547550433\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X O \n", " O \n", " X \n", "on move: O\n", " X O \n", " O X \n", " X \n", "on move: X\n", " X O \n", "O O X \n", " X \n", "on move: O\n", " X O \n", "O O X \n", " X X \n", "on move: X\n", " X O \n", "O O X \n", "O X X \n", "Episode 348, Total Reward: -1\n", "Average Reward: 0.25\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " O X \n", " \n", " \n", "on move: O\n", " O X \n", "X \n", " \n", "on move: X\n", " O X \n", "X O \n", " \n", "on move: O\n", " O X \n", "X O \n", " X \n", "on move: X\n", "O O X \n", "X O \n", " X \n", "on move: O\n", "O O X \n", "X O \n", "X X \n", "on move: X\n", "O O X \n", "X O \n", "X X O \n", "on move: O\n", "O O X \n", "X X O \n", "X X O \n", "Episode 349, Total Reward: 1\n", "Average Reward: 0.2521489971346705\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", " X \n", " X O \n", "on move: X\n", " O \n", " X \n", " X O \n", "on move: O\n", " O \n", " X X \n", " X O \n", "on move: X\n", " O \n", " X X \n", "O X O \n", "on move: O\n", " O \n", "X X X \n", "O X O \n", "Episode 350, Total Reward: 1\n", "Average Reward: 0.2542857142857143\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O \n", " X X \n", "on move: X\n", " O O \n", "X O \n", " X X \n", "on move: O\n", " O O \n", "X X O \n", " X X \n", "on move: X\n", " O O \n", "X X O \n", "O X X \n", "on move: O\n", "X O O \n", "X X O \n", "O X X \n", "Episode 351, Total Reward: 1\n", "Average Reward: 0.2564102564102564\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X \n", " O O \n", " X \n", "on move: O\n", "X \n", "X O O \n", " X \n", "on move: X\n", "X \n", "X O O \n", " X O \n", "on move: O\n", "X \n", "X O O \n", "X X O \n", "Episode 352, Total Reward: 1\n", "Average Reward: 0.2585227272727273\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O O \n", " \n", "on move: O\n", " X X \n", "X O O \n", " \n", "on move: X\n", " X X \n", "X O O \n", " O \n", "on move: O\n", "X X X \n", "X O O \n", " O \n", "Episode 353, Total Reward: 1\n", "Average Reward: 0.26062322946175637\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " \n", "O X X \n", "on move: X\n", "O \n", " \n", "O X X \n", "on move: O\n", "O X \n", " \n", "O X X \n", "on move: X\n", "O O X \n", " \n", "O X X \n", "on move: O\n", "O O X \n", " X \n", "O X X \n", "Episode 354, Total Reward: 1\n", "Average Reward: 0.2627118644067797\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " \n", " X \n", "O O X \n", "on move: O\n", "X \n", " X \n", "O O X \n", "on move: X\n", "X O \n", " X \n", "O O X \n", "on move: O\n", "X O \n", "X X \n", "O O X \n", "on move: X\n", "X O \n", "X O X \n", "O O X \n", "Episode 355, Total Reward: -1\n", "Average Reward: 0.2591549295774648\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", "X O \n", " \n", "X \n", "on move: X\n", "X O \n", " O \n", "X \n", "on move: O\n", "X O \n", " O \n", "X X \n", "on move: X\n", "X O \n", "O O \n", "X X \n", "on move: O\n", "X X O \n", "O O \n", "X X \n", "on move: X\n", "X X O \n", "O O O \n", "X X \n", "Episode 356, Total Reward: -1\n", "Average Reward: 0.2556179775280899\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " X O \n", " X \n", "on move: O\n", "X O \n", " X O \n", " X \n", "on move: X\n", "X O \n", " X O \n", " X O \n", "Episode 357, Total Reward: -1\n", "Average Reward: 0.25210084033613445\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X X \n", " \n", " \n", "on move: X\n", "O X X \n", " \n", "O \n", "on move: O\n", "O X X \n", "X \n", "O \n", "on move: X\n", "O X X \n", "X \n", "O O \n", "on move: O\n", "O X X \n", "X X \n", "O O \n", "on move: X\n", "O X X \n", "X X \n", "O O O \n", "Episode 358, Total Reward: -1\n", "Average Reward: 0.24860335195530725\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " \n", "X O \n", "on move: X\n", "X \n", " \n", "X O O \n", "on move: O\n", "X X \n", " \n", "X O O \n", "on move: X\n", "X X \n", " O \n", "X O O \n", "on move: O\n", "X X X \n", " O \n", "X O O \n", "Episode 359, Total Reward: 1\n", "Average Reward: 0.25069637883008355\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", "X \n", " \n", " O X \n", "on move: X\n", "X \n", " O \n", " O X \n", "on move: O\n", "X \n", " O X \n", " O X \n", "on move: X\n", "X O \n", " O X \n", " O X \n", "Episode 360, Total Reward: -1\n", "Average Reward: 0.24722222222222223\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " X O \n", "on move: O\n", " \n", " X \n", " X O \n", "on move: X\n", " O \n", " X \n", " X O \n", "on move: O\n", "X O \n", " X \n", " X O \n", "on move: X\n", "X O \n", "O X \n", " X O \n", "on move: O\n", "X O \n", "O X \n", "X X O \n", "on move: X\n", "X O O \n", "O X \n", "X X O \n", "on move: O\n", "X O O \n", "O X X \n", "X X O \n", "Episode 361, Total Reward: 0\n", "Average Reward: 0.24653739612188366\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O O \n", " \n", "on move: O\n", " X \n", "X O O \n", " X \n", "on move: X\n", "O X \n", "X O O \n", " X \n", "on move: O\n", "O X \n", "X O O \n", " X X \n", "on move: X\n", "O X \n", "X O O \n", "O X X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 362, Total Reward: 0\n", "Average Reward: 0.24585635359116023\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O O \n", " X \n", " X \n", "on move: O\n", "O X O \n", " X \n", " X \n", "on move: X\n", "O X O \n", " X \n", " O X \n", "on move: O\n", "O X O \n", " X \n", "X O X \n", "on move: X\n", "O X O \n", " O X \n", "X O X \n", "on move: O\n", "O X O \n", "X O X \n", "X O X \n", "Episode 363, Total Reward: 0\n", "Average Reward: 0.24517906336088155\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " \n", " X X \n", "on move: X\n", " O O \n", " \n", " X X \n", "on move: O\n", "X O O \n", " \n", " X X \n", "on move: X\n", "X O O \n", " \n", "O X X \n", "on move: O\n", "X O O \n", " X \n", "O X X \n", "Episode 364, Total Reward: 1\n", "Average Reward: 0.24725274725274726\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X \n", " O \n", "O X \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X X O \n", " O \n", "O X \n", "on move: O\n", "X X O \n", " O \n", "O X X \n", "on move: X\n", "X X O \n", "O O \n", "O X X \n", "on move: O\n", "X X O \n", "O X O \n", "O X X \n", "Episode 365, Total Reward: 1\n", "Average Reward: 0.2493150684931507\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", " \n", "X \n", " O X \n", "on move: X\n", " \n", "X \n", "O O X \n", "on move: O\n", " \n", "X X \n", "O O X \n", "on move: X\n", " \n", "X O X \n", "O O X \n", "on move: O\n", " X \n", "X O X \n", "O O X \n", "Episode 366, Total Reward: 1\n", "Average Reward: 0.25136612021857924\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X X O \n", " \n", " \n", "on move: X\n", "X X O \n", " O \n", " \n", "on move: O\n", "X X O \n", "X O \n", " \n", "on move: X\n", "X X O \n", "X O O \n", " \n", "on move: O\n", "X X O \n", "X O O \n", " X \n", "on move: X\n", "X X O \n", "X O O \n", " O X \n", "on move: O\n", "X X O \n", "X O O \n", "X O X \n", "Episode 367, Total Reward: 1\n", "Average Reward: 0.25340599455040874\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", " \n", " X \n", "O X \n", "on move: X\n", " O \n", " X \n", "O X \n", "on move: O\n", " O \n", "X X \n", "O X \n", "on move: X\n", "O O \n", "X X \n", "O X \n", "on move: O\n", "O X O \n", "X X \n", "O X \n", "on move: X\n", "O X O \n", "X X \n", "O X O \n", "on move: O\n", "O X O \n", "X X X \n", "O X O \n", "Episode 368, Total Reward: 1\n", "Average Reward: 0.2554347826086957\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", "O \n", " O \n", "X X \n", "on move: O\n", "O \n", " O X \n", "X X \n", "on move: X\n", "O \n", " O X \n", "X X O \n", "Episode 369, Total Reward: -1\n", "Average Reward: 0.25203252032520324\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X X \n", " \n", " O \n", "on move: X\n", " X X \n", " \n", " O O \n", "on move: O\n", " X X \n", " X \n", " O O \n", "on move: X\n", " X X \n", "O X \n", " O O \n", "on move: O\n", " X X \n", "O X X \n", " O O \n", "on move: X\n", " X X \n", "O X X \n", "O O O \n", "Episode 370, Total Reward: -1\n", "Average Reward: 0.24864864864864866\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " \n", "X O \n", " X O \n", "on move: O\n", "X \n", "X O \n", " X O \n", "on move: X\n", "X O \n", "X O \n", " X O \n", "on move: O\n", "X O \n", "X O \n", "X X O \n", "Episode 371, Total Reward: 1\n", "Average Reward: 0.25067385444743934\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", "O \n", " O \n", "X X \n", "on move: O\n", "O X \n", " O \n", "X X \n", "on move: X\n", "O X \n", " O \n", "X X O \n", "on move: O\n", "O X \n", " X O \n", "X X O \n", "Episode 372, Total Reward: 1\n", "Average Reward: 0.25268817204301075\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", "X \n", "O \n", " X \n", "on move: X\n", "X O \n", "O \n", " X \n", "on move: O\n", "X O \n", "O \n", "X X \n", "on move: X\n", "X O \n", "O O \n", "X X \n", "on move: O\n", "X O \n", "O X O \n", "X X \n", "Episode 373, Total Reward: 1\n", "Average Reward: 0.2546916890080429\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X \n", " \n", "O O X \n", "on move: O\n", " X \n", " X \n", "O O X \n", "on move: X\n", " X O \n", " X \n", "O O X \n", "on move: O\n", " X O \n", "X X \n", "O O X \n", "on move: X\n", "O X O \n", "X X \n", "O O X \n", "on move: O\n", "O X O \n", "X X X \n", "O O X \n", "Episode 374, Total Reward: 1\n", "Average Reward: 0.25668449197860965\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", "O O \n", " X \n", " X \n", "on move: O\n", "O O \n", " X \n", "X X \n", "on move: X\n", "O O O \n", " X \n", "X X \n", "Episode 375, Total Reward: -1\n", "Average Reward: 0.25333333333333335\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", "X \n", "O \n", "X \n", "on move: X\n", "X O \n", "O \n", "X \n", "on move: O\n", "X O \n", "O \n", "X X \n", "on move: X\n", "X O O \n", "O \n", "X X \n", "on move: O\n", "X O O \n", "O X \n", "X X \n", "on move: X\n", "X O O \n", "O X \n", "X X O \n", "on move: O\n", "X O O \n", "O X X \n", "X X O \n", "Episode 376, Total Reward: 0\n", "Average Reward: 0.2526595744680851\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " X \n", "O \n", "on move: X\n", " X \n", " X \n", "O O \n", "on move: O\n", " X \n", " X \n", "O O X \n", "Episode 377, Total Reward: 1\n", "Average Reward: 0.2546419098143236\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " O X \n", "O X \n", " \n", "on move: O\n", " O X \n", "O X \n", " X \n", "on move: X\n", "O O X \n", "O X \n", " X \n", "on move: O\n", "O O X \n", "O X \n", " X X \n", "Episode 378, Total Reward: 1\n", "Average Reward: 0.2566137566137566\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", "X \n", " X \n", "on move: X\n", "O O \n", "X \n", " X \n", "on move: O\n", "O O \n", "X X \n", " X \n", "on move: X\n", "O O \n", "X X O \n", " X \n", "on move: O\n", "O O \n", "X X O \n", "X X \n", "on move: X\n", "O O \n", "X X O \n", "X O X \n", "on move: O\n", "O X O \n", "X X O \n", "X O X \n", "Episode 379, Total Reward: 0\n", "Average Reward: 0.2559366754617414\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", " X \n", "O X \n", " O \n", "on move: O\n", "X X \n", "O X \n", " O \n", "on move: X\n", "X X \n", "O X \n", " O O \n", "on move: O\n", "X X \n", "O X X \n", " O O \n", "on move: X\n", "X O X \n", "O X X \n", " O O \n", "on move: O\n", "X O X \n", "O X X \n", "X O O \n", "Episode 380, Total Reward: 1\n", "Average Reward: 0.2578947368421053\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X \n", " O \n", "X O X \n", "on move: X\n", "X O \n", " O \n", "X O X \n", "Episode 381, Total Reward: -1\n", "Average Reward: 0.2545931758530184\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " X \n", "X \n", "O \n", "on move: X\n", " X \n", "X \n", "O O \n", "on move: O\n", " X \n", "X \n", "O O X \n", "on move: X\n", "O X \n", "X \n", "O O X \n", "on move: O\n", "O X \n", "X X \n", "O O X \n", "Episode 382, Total Reward: 1\n", "Average Reward: 0.25654450261780104\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X \n", " O X \n", "X O \n", "on move: X\n", "X \n", " O X \n", "X O O \n", "on move: O\n", "X \n", "X O X \n", "X O O \n", "Episode 383, Total Reward: 1\n", "Average Reward: 0.2584856396866841\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O \n", " O \n", "X X \n", "on move: O\n", " O \n", " O \n", "X X X \n", "Episode 384, Total Reward: 1\n", "Average Reward: 0.2604166666666667\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " \n", " O X \n", " X \n", "on move: X\n", " O \n", " O X \n", " X \n", "on move: O\n", " O \n", " O X \n", " X X \n", "on move: X\n", " O \n", " O X \n", "O X X \n", "on move: O\n", "X O \n", " O X \n", "O X X \n", "on move: X\n", "X O O \n", " O X \n", "O X X \n", "Episode 385, Total Reward: -1\n", "Average Reward: 0.2571428571428571\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", " X O \n", "on move: O\n", " X \n", " X O \n", " X O \n", "on move: X\n", " X \n", " X O \n", "O X O \n", "on move: O\n", " X X \n", " X O \n", "O X O \n", "Episode 386, Total Reward: 1\n", "Average Reward: 0.25906735751295334\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " \n", "O X \n", "O X \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", " X \n", "O O X \n", "O X \n", "on move: O\n", " X \n", "O O X \n", "O X X \n", "Episode 387, Total Reward: 1\n", "Average Reward: 0.26098191214470284\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", "X X \n", "O \n", " \n", "on move: X\n", "X X O \n", "O \n", " \n", "on move: O\n", "X X O \n", "O X \n", " \n", "on move: X\n", "X X O \n", "O X \n", " O \n", "on move: O\n", "X X O \n", "O X \n", " X O \n", "Episode 388, Total Reward: 1\n", "Average Reward: 0.26288659793814434\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X X O \n", " \n", " \n", "on move: X\n", "X X O \n", "O \n", " \n", "on move: O\n", "X X O \n", "O \n", " X \n", "on move: X\n", "X X O \n", "O O \n", " X \n", "on move: O\n", "X X O \n", "O O \n", " X X \n", "on move: X\n", "X X O \n", "O O O \n", " X X \n", "Episode 389, Total Reward: -1\n", "Average Reward: 0.2596401028277635\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", "X \n", "on move: X\n", " O O \n", " X \n", "X \n", "on move: O\n", " O O \n", "X X \n", "X \n", "on move: X\n", " O O \n", "X X \n", "X O \n", "on move: O\n", " O O \n", "X X X \n", "X O \n", "Episode 390, Total Reward: 1\n", "Average Reward: 0.26153846153846155\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", " O X \n", " X \n", "on move: O\n", "O \n", " O X \n", "X X \n", "on move: X\n", "O \n", " O X \n", "X O X \n", "on move: O\n", "O X \n", " O X \n", "X O X \n", "on move: X\n", "O X \n", "O O X \n", "X O X \n", "on move: O\n", "O X X \n", "O O X \n", "X O X \n", "Episode 391, Total Reward: 1\n", "Average Reward: 0.26342710997442453\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X \n", "O O \n", "on move: O\n", " X X \n", "X \n", "O O \n", "on move: X\n", "O X X \n", "X \n", "O O \n", "on move: O\n", "O X X \n", "X X \n", "O O \n", "on move: X\n", "O X X \n", "X X \n", "O O O \n", "Episode 392, Total Reward: -1\n", "Average Reward: 0.2602040816326531\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " \n", "X \n", "on move: X\n", "X O \n", " \n", "X O \n", "on move: O\n", "X O \n", " X \n", "X O \n", "on move: X\n", "X O \n", " X \n", "X O O \n", "on move: O\n", "X O \n", "X X \n", "X O O \n", "Episode 393, Total Reward: 1\n", "Average Reward: 0.26208651399491095\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " \n", "X O \n", "O X \n", "on move: O\n", " \n", "X X O \n", "O X \n", "on move: X\n", " O \n", "X X O \n", "O X \n", "on move: O\n", " O X \n", "X X O \n", "O X \n", "on move: X\n", " O X \n", "X X O \n", "O O X \n", "on move: O\n", "X O X \n", "X X O \n", "O O X \n", "Episode 394, Total Reward: 1\n", "Average Reward: 0.2639593908629442\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X O \n", " X \n", " O \n", "on move: O\n", "X O \n", " X \n", "X O \n", "on move: X\n", "X O \n", " X O \n", "X O \n", "on move: O\n", "X O \n", " X O \n", "X X O \n", "on move: X\n", "X O O \n", " X O \n", "X X O \n", "Episode 395, Total Reward: -1\n", "Average Reward: 0.2607594936708861\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", " X \n", "O O \n", "on move: O\n", "X \n", " X X \n", "O O \n", "on move: X\n", "X \n", "O X X \n", "O O \n", "on move: O\n", "X \n", "O X X \n", "O X O \n", "on move: X\n", "X O \n", "O X X \n", "O X O \n", "on move: O\n", "X X O \n", "O X X \n", "O X O \n", "Episode 396, Total Reward: 1\n", "Average Reward: 0.26262626262626265\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", " X X \n", "on move: X\n", " O \n", " O \n", " X X \n", "on move: O\n", " O \n", " O X \n", " X X \n", "on move: X\n", " O \n", "O O X \n", " X X \n", "on move: O\n", "X O \n", "O O X \n", " X X \n", "on move: X\n", "X O O \n", "O O X \n", " X X \n", "on move: O\n", "X O O \n", "O O X \n", "X X X \n", "Episode 397, Total Reward: 1\n", "Average Reward: 0.26448362720403024\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " X O \n", " X \n", " \n", "on move: X\n", " X O \n", " X \n", "O \n", "on move: O\n", " X O \n", " X \n", "O X \n", "Episode 398, Total Reward: 1\n", "Average Reward: 0.2663316582914573\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X \n", " O \n", "X O \n", "on move: O\n", "X X \n", " O \n", "X O \n", "on move: X\n", "X X \n", " O \n", "X O O \n", "on move: O\n", "X X X \n", " O \n", "X O O \n", "Episode 399, Total Reward: 1\n", "Average Reward: 0.2681704260651629\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", "O X \n", " O \n", " X \n", "on move: O\n", "O X \n", "X O \n", " X \n", "on move: X\n", "O X \n", "X O O \n", " X \n", "on move: O\n", "O X \n", "X O O \n", "X X \n", "on move: X\n", "O X O \n", "X O O \n", "X X \n", "on move: O\n", "O X O \n", "X O O \n", "X X X \n", "Episode 400, Total Reward: 1\n", "Average Reward: 0.27\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X O \n", "X \n", " O \n", "on move: O\n", " X O \n", "X \n", " O X \n", "on move: X\n", " X O \n", "X \n", "O O X \n", "on move: O\n", "X X O \n", "X \n", "O O X \n", "on move: X\n", "X X O \n", "X O \n", "O O X \n", "Episode 401, Total Reward: -1\n", "Average Reward: 0.26683291770573564\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", "X \n", "on move: X\n", " O O \n", "X \n", "X \n", "on move: O\n", " O O \n", "X \n", "X X \n", "on move: X\n", " O O \n", "X O \n", "X X \n", "on move: O\n", " O O \n", "X X O \n", "X X \n", "on move: X\n", "O O O \n", "X X O \n", "X X \n", "Episode 402, Total Reward: -1\n", "Average Reward: 0.263681592039801\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " \n", "X \n", "O X \n", "on move: X\n", " \n", "X \n", "O X O \n", "on move: O\n", "X \n", "X \n", "O X O \n", "on move: X\n", "X O \n", "X \n", "O X O \n", "on move: O\n", "X O \n", "X X \n", "O X O \n", "on move: X\n", "X O \n", "X O X \n", "O X O \n", "on move: O\n", "X O X \n", "X O X \n", "O X O \n", "Episode 403, Total Reward: 0\n", "Average Reward: 0.2630272952853598\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X X \n", " \n", "on move: X\n", " O \n", "O X X \n", " \n", "on move: O\n", " O \n", "O X X \n", " X \n", "on move: X\n", " O \n", "O X X \n", "O X \n", "on move: O\n", "X O \n", "O X X \n", "O X \n", "Episode 404, Total Reward: 1\n", "Average Reward: 0.26485148514851486\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", "O X \n", " O \n", "X \n", "on move: O\n", "O X \n", " O \n", "X X \n", "on move: X\n", "O X \n", "O O \n", "X X \n", "on move: O\n", "O X \n", "O X O \n", "X X \n", "Episode 405, Total Reward: 1\n", "Average Reward: 0.26666666666666666\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", "X X \n", "X O \n", " O \n", "on move: X\n", "X X \n", "X O \n", " O O \n", "on move: O\n", "X X \n", "X O \n", "X O O \n", "Episode 406, Total Reward: 1\n", "Average Reward: 0.2684729064039409\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " X O \n", "on move: O\n", " \n", "X \n", " X O \n", "on move: X\n", " \n", "X \n", "O X O \n", "on move: O\n", " X \n", "X \n", "O X O \n", "on move: X\n", "O X \n", "X \n", "O X O \n", "on move: O\n", "O X X \n", "X \n", "O X O \n", "on move: X\n", "O X X \n", "X O \n", "O X O \n", "Episode 407, Total Reward: -1\n", "Average Reward: 0.26535626535626533\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " \n", "X O \n", "on move: O\n", "X \n", " \n", "X O \n", "on move: X\n", "X \n", "O \n", "X O \n", "on move: O\n", "X \n", "O X \n", "X O \n", "on move: X\n", "X \n", "O X \n", "X O O \n", "on move: O\n", "X X \n", "O X \n", "X O O \n", "Episode 408, Total Reward: 1\n", "Average Reward: 0.26715686274509803\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " \n", "X X O \n", " O \n", "on move: O\n", " X \n", "X X O \n", " O \n", "on move: X\n", " X \n", "X X O \n", "O O \n", "on move: O\n", " X \n", "X X O \n", "O O X \n", "on move: X\n", " O X \n", "X X O \n", "O O X \n", "on move: O\n", "X O X \n", "X X O \n", "O O X \n", "Episode 409, Total Reward: 1\n", "Average Reward: 0.26894865525672373\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " X O \n", "on move: O\n", " \n", "X \n", " X O \n", "on move: X\n", " \n", "X O \n", " X O \n", "on move: O\n", " X \n", "X O \n", " X O \n", "on move: X\n", " O X \n", "X O \n", " X O \n", "on move: O\n", " O X \n", "X X O \n", " X O \n", "on move: X\n", "O O X \n", "X X O \n", " X O \n", "on move: O\n", "O O X \n", "X X O \n", "X X O \n", "Episode 410, Total Reward: 1\n", "Average Reward: 0.2707317073170732\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " X O \n", " X \n", "on move: X\n", " \n", " X O \n", " X O \n", "on move: O\n", " X \n", " X O \n", " X O \n", "on move: X\n", "O X \n", " X O \n", " X O \n", "on move: O\n", "O X \n", "X X O \n", " X O \n", "on move: X\n", "O X \n", "X X O \n", "O X O \n", "on move: O\n", "O X X \n", "X X O \n", "O X O \n", "Episode 411, Total Reward: 1\n", "Average Reward: 0.2725060827250608\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X O \n", "X \n", " O \n", "on move: O\n", "X O \n", "X \n", " X O \n", "on move: X\n", "X O \n", "X O \n", " X O \n", "on move: O\n", "X O \n", "X O \n", "X X O \n", "Episode 412, Total Reward: 1\n", "Average Reward: 0.27427184466019416\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X O \n", " \n", "on move: O\n", " \n", "X X O \n", " \n", "on move: X\n", " \n", "X X O \n", " O \n", "on move: O\n", " \n", "X X O \n", "X O \n", "on move: X\n", " O \n", "X X O \n", "X O \n", "Episode 413, Total Reward: -1\n", "Average Reward: 0.2711864406779661\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " O X \n", " \n", " \n", "on move: O\n", " O X \n", " \n", " X \n", "on move: X\n", " O X \n", "O \n", " X \n", "on move: O\n", " O X \n", "O X \n", " X \n", "Episode 414, Total Reward: 1\n", "Average Reward: 0.27294685990338163\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", "X O \n", " X \n", " \n", "on move: X\n", "X O \n", "O X \n", " \n", "on move: O\n", "X X O \n", "O X \n", " \n", "on move: X\n", "X X O \n", "O X O \n", " \n", "on move: O\n", "X X O \n", "O X O \n", " X \n", "Episode 415, Total Reward: 1\n", "Average Reward: 0.2746987951807229\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O \n", " X \n", "O X \n", "on move: O\n", "O \n", " X \n", "O X X \n", "on move: X\n", "O \n", " O X \n", "O X X \n", "on move: O\n", "O X \n", " O X \n", "O X X \n", "on move: X\n", "O X O \n", " O X \n", "O X X \n", "Episode 416, Total Reward: -1\n", "Average Reward: 0.27163461538461536\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O O \n", " X \n", "on move: O\n", " X \n", "X O O \n", " X \n", "on move: X\n", "O X \n", "X O O \n", " X \n", "on move: O\n", "O X X \n", "X O O \n", " X \n", "on move: X\n", "O X X \n", "X O O \n", "O X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 417, Total Reward: 0\n", "Average Reward: 0.2709832134292566\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " \n", "X X \n", "O O \n", "on move: O\n", " \n", "X X X \n", "O O \n", "Episode 418, Total Reward: 1\n", "Average Reward: 0.2727272727272727\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", "X \n", " O \n", " X \n", "on move: X\n", "X O \n", " O \n", " X \n", "on move: O\n", "X O \n", " X O \n", " X \n", "on move: X\n", "X O \n", " X O \n", " X O \n", "Episode 419, Total Reward: -1\n", "Average Reward: 0.26968973747016706\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X \n", " O O \n", "X \n", "on move: O\n", "X \n", "X O O \n", "X \n", "Episode 420, Total Reward: 1\n", "Average Reward: 0.2714285714285714\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X \n", "X O \n", "on move: X\n", " \n", "X O \n", "X O \n", "on move: O\n", " \n", "X O \n", "X O X \n", "on move: X\n", "O \n", "X O \n", "X O X \n", "on move: O\n", "O \n", "X O X \n", "X O X \n", "on move: X\n", "O O \n", "X O X \n", "X O X \n", "on move: O\n", "O X O \n", "X O X \n", "X O X \n", "Episode 421, Total Reward: 0\n", "Average Reward: 0.27078384798099764\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X X \n", " \n", "on move: X\n", " O \n", "O X X \n", " \n", "on move: O\n", " O \n", "O X X \n", " X \n", "on move: X\n", " O O \n", "O X X \n", " X \n", "on move: O\n", " O O \n", "O X X \n", " X X \n", "on move: X\n", "O O O \n", "O X X \n", " X X \n", "Episode 422, Total Reward: -1\n", "Average Reward: 0.2677725118483412\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " X O \n", " \n", " X \n", "on move: X\n", " X O \n", " O \n", " X \n", "on move: O\n", " X O \n", " O \n", "X X \n", "on move: X\n", " X O \n", " O O \n", "X X \n", "on move: O\n", " X O \n", " O O \n", "X X X \n", "Episode 423, Total Reward: 1\n", "Average Reward: 0.2695035460992908\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O \n", "O \n", "X X \n", "on move: O\n", " O \n", "O \n", "X X X \n", "Episode 424, Total Reward: 1\n", "Average Reward: 0.27122641509433965\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", "X X \n", "O \n", " \n", "on move: X\n", "X X \n", "O O \n", " \n", "on move: O\n", "X X \n", "O O X \n", " \n", "on move: X\n", "X X O \n", "O O X \n", " \n", "on move: O\n", "X X O \n", "O O X \n", "X \n", "on move: X\n", "X X O \n", "O O X \n", "X O \n", "on move: O\n", "X X O \n", "O O X \n", "X O X \n", "Episode 425, Total Reward: 0\n", "Average Reward: 0.27058823529411763\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X X O \n", " X \n", "on move: X\n", " O \n", "X X O \n", "O X \n", "on move: O\n", " O \n", "X X O \n", "O X X \n", "on move: X\n", "O O \n", "X X O \n", "O X X \n", "on move: O\n", "O X O \n", "X X O \n", "O X X \n", "Episode 426, Total Reward: 1\n", "Average Reward: 0.27230046948356806\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O \n", "X \n", "X \n", "on move: X\n", " O \n", "X O \n", "X \n", "on move: O\n", " O \n", "X O \n", "X X \n", "on move: X\n", " O \n", "X O O \n", "X X \n", "on move: O\n", "X O \n", "X O O \n", "X X \n", "Episode 427, Total Reward: 1\n", "Average Reward: 0.27400468384074944\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", "X \n", "X \n", " O \n", "on move: X\n", "X O \n", "X \n", " O \n", "on move: O\n", "X O \n", "X \n", "X O \n", "Episode 428, Total Reward: 1\n", "Average Reward: 0.2757009345794392\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " O X \n", "X O \n", " \n", "on move: O\n", " O X \n", "X O \n", " X \n", "on move: X\n", " O X \n", "X O \n", "O X \n", "on move: O\n", "X O X \n", "X O \n", "O X \n", "on move: X\n", "X O X \n", "X O \n", "O O X \n", "on move: O\n", "X O X \n", "X X O \n", "O O X \n", "Episode 429, Total Reward: 1\n", "Average Reward: 0.2773892773892774\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", "O \n", "X \n", " \n", "on move: O\n", "O \n", "X X \n", " \n", "on move: X\n", "O \n", "X X \n", " O \n", "on move: O\n", "O X \n", "X X \n", " O \n", "on move: X\n", "O X \n", "X X \n", "O O \n", "on move: O\n", "O X \n", "X X \n", "O O X \n", "on move: X\n", "O X \n", "X X O \n", "O O X \n", "on move: O\n", "O X X \n", "X X O \n", "O O X \n", "Episode 430, Total Reward: 0\n", "Average Reward: 0.27674418604651163\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O X \n", " \n", "on move: X\n", "O X \n", " O X \n", " \n", "on move: O\n", "O X \n", " O X \n", " X \n", "Episode 431, Total Reward: 1\n", "Average Reward: 0.27842227378190254\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " O \n", "X \n", " \n", "on move: O\n", " O \n", "X X \n", " \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O \n", "X X X \n", " O \n", "Episode 432, Total Reward: 1\n", "Average Reward: 0.2800925925925926\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", "O X \n", "X O \n", " \n", "on move: O\n", "O X \n", "X X O \n", " \n", "on move: X\n", "O X \n", "X X O \n", " O \n", "on move: O\n", "O X \n", "X X O \n", " X O \n", "on move: X\n", "O O X \n", "X X O \n", " X O \n", "on move: O\n", "O O X \n", "X X O \n", "X X O \n", "Episode 433, Total Reward: 1\n", "Average Reward: 0.2817551963048499\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " O \n", " \n", "X \n", "on move: O\n", " O X \n", " \n", "X \n", "on move: X\n", " O X \n", "O \n", "X \n", "on move: O\n", " O X \n", "O \n", "X X \n", "on move: X\n", "O O X \n", "O \n", "X X \n", "on move: O\n", "O O X \n", "O \n", "X X X \n", "Episode 434, Total Reward: 1\n", "Average Reward: 0.2834101382488479\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", " X \n", "O X \n", " O \n", "on move: O\n", "X X \n", "O X \n", " O \n", "on move: X\n", "X X O \n", "O X \n", " O \n", "on move: O\n", "X X O \n", "O X \n", " O X \n", "on move: X\n", "X X O \n", "O O X \n", " O X \n", "on move: O\n", "X X O \n", "O O X \n", "X O X \n", "Episode 435, Total Reward: 0\n", "Average Reward: 0.2827586206896552\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X X \n", " O \n", " \n", "on move: X\n", " X X \n", " O \n", "O \n", "on move: O\n", " X X \n", " O X \n", "O \n", "on move: X\n", " X X \n", " O X \n", "O O \n", "on move: O\n", " X X \n", "X O X \n", "O O \n", "on move: X\n", "O X X \n", "X O X \n", "O O \n", "on move: O\n", "O X X \n", "X O X \n", "O O X \n", "Episode 436, Total Reward: 1\n", "Average Reward: 0.28440366972477066\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " \n", " X \n", "on move: X\n", "X O \n", " \n", "O X \n", "on move: O\n", "X O \n", " X \n", "O X \n", "on move: X\n", "X O \n", " X \n", "O X O \n", "on move: O\n", "X O \n", " X X \n", "O X O \n", "on move: X\n", "X O O \n", " X X \n", "O X O \n", "on move: O\n", "X O O \n", "X X X \n", "O X O \n", "Episode 437, Total Reward: 1\n", "Average Reward: 0.28604118993135014\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " X O \n", "X X \n", " O \n", "on move: X\n", " X O \n", "X X O \n", " O \n", "Episode 438, Total Reward: -1\n", "Average Reward: 0.2831050228310502\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", " X \n", " \n", " O X \n", "on move: X\n", " X \n", "O \n", " O X \n", "on move: O\n", "X X \n", "O \n", " O X \n", "on move: X\n", "X X \n", "O \n", "O O X \n", "on move: O\n", "X X \n", "O X \n", "O O X \n", "on move: X\n", "X X \n", "O O X \n", "O O X \n", "on move: O\n", "X X X \n", "O O X \n", "O O X \n", "Episode 439, Total Reward: 1\n", "Average Reward: 0.2847380410022779\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X \n", "X O \n", "X O \n", "on move: X\n", "O X \n", "X O \n", "X O \n", "Episode 440, Total Reward: -1\n", "Average Reward: 0.2818181818181818\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", "X \n", " O \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X X \n", "X O \n", " O \n", "on move: X\n", " X X \n", "X O O \n", " O \n", "on move: O\n", "X X X \n", "X O O \n", " O \n", "Episode 441, Total Reward: 1\n", "Average Reward: 0.2834467120181406\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", " X \n", " \n", " O X \n", "on move: X\n", " X \n", " O \n", " O X \n", "on move: O\n", " X \n", " O \n", "X O X \n", "on move: X\n", " X \n", " O O \n", "X O X \n", "on move: O\n", "X X \n", " O O \n", "X O X \n", "on move: X\n", "X X O \n", " O O \n", "X O X \n", "on move: O\n", "X X O \n", "X O O \n", "X O X \n", "Episode 442, Total Reward: 1\n", "Average Reward: 0.2850678733031674\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O \n", "X \n", "on move: X\n", " \n", "X O \n", "X O \n", "on move: O\n", " \n", "X O X \n", "X O \n", "on move: X\n", " O \n", "X O X \n", "X O \n", "on move: O\n", "X O \n", "X O X \n", "X O \n", "Episode 443, Total Reward: 1\n", "Average Reward: 0.2866817155756208\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " O X \n", "on move: X\n", "O X \n", " \n", " O X \n", "on move: O\n", "O X \n", " \n", "X O X \n", "on move: X\n", "O O X \n", " \n", "X O X \n", "on move: O\n", "O O X \n", "X \n", "X O X \n", "on move: X\n", "O O X \n", "X O \n", "X O X \n", "on move: O\n", "O O X \n", "X X O \n", "X O X \n", "Episode 444, Total Reward: 1\n", "Average Reward: 0.2882882882882883\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", " O \n", "on move: O\n", "X \n", " \n", "X O \n", "on move: X\n", "X O \n", " \n", "X O \n", "on move: O\n", "X O \n", " X \n", "X O \n", "on move: X\n", "X O O \n", " X \n", "X O \n", "on move: O\n", "X O O \n", " X \n", "X X O \n", "on move: X\n", "X O O \n", " O X \n", "X X O \n", "on move: O\n", "X O O \n", "X O X \n", "X X O \n", "Episode 445, Total Reward: 1\n", "Average Reward: 0.2898876404494382\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", " X \n", "O \n", " X \n", "on move: X\n", " X \n", "O O \n", " X \n", "on move: O\n", " X X \n", "O O \n", " X \n", "on move: X\n", " X X \n", "O O \n", "O X \n", "on move: O\n", "X X X \n", "O O \n", "O X \n", "Episode 446, Total Reward: 1\n", "Average Reward: 0.2914798206278027\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", " O X \n", "on move: O\n", " X \n", " \n", " O X \n", "on move: X\n", " X \n", "O \n", " O X \n", "on move: O\n", " X \n", "O X \n", " O X \n", "on move: X\n", "O X \n", "O X \n", " O X \n", "on move: O\n", "O X \n", "O X X \n", " O X \n", "Episode 447, Total Reward: 1\n", "Average Reward: 0.2930648769574944\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", " X \n", "O X \n", " \n", "on move: X\n", "O X \n", "O X \n", " \n", "on move: O\n", "O X \n", "O X \n", " X \n", "Episode 448, Total Reward: 1\n", "Average Reward: 0.29464285714285715\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X X \n", " \n", "on move: X\n", " O \n", " X X \n", " O \n", "on move: O\n", " O \n", " X X \n", " O X \n", "on move: X\n", "O O \n", " X X \n", " O X \n", "on move: O\n", "O O X \n", " X X \n", " O X \n", "Episode 449, Total Reward: 1\n", "Average Reward: 0.2962138084632517\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X O \n", "X O \n", " \n", "on move: O\n", " X O \n", "X O \n", " X \n", "on move: X\n", "O X O \n", "X O \n", " X \n", "on move: O\n", "O X O \n", "X X O \n", " X \n", "Episode 450, Total Reward: 1\n", "Average Reward: 0.29777777777777775\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", "X O \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O \n", " X X \n", "on move: X\n", "O O \n", "X O \n", " X X \n", "on move: O\n", "O X O \n", "X O \n", " X X \n", "on move: X\n", "O X O \n", "X O O \n", " X X \n", "on move: O\n", "O X O \n", "X O O \n", "X X X \n", "Episode 451, Total Reward: 1\n", "Average Reward: 0.29933481152993346\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X \n", "O \n", "O X \n", "on move: O\n", " X \n", "O X \n", "O X \n", "on move: X\n", "O X \n", "O X \n", "O X \n", "Episode 452, Total Reward: -1\n", "Average Reward: 0.29646017699115046\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", "X O \n", " \n", " X \n", "on move: X\n", "X O \n", " O \n", " X \n", "on move: O\n", "X O \n", " O \n", "X X \n", "on move: X\n", "X O \n", " O O \n", "X X \n", "on move: O\n", "X O X \n", " O O \n", "X X \n", "on move: X\n", "X O X \n", "O O O \n", "X X \n", "Episode 453, Total Reward: -1\n", "Average Reward: 0.293598233995585\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", "O X \n", " \n", "on move: O\n", "X \n", "O X \n", " \n", "on move: X\n", "X \n", "O X \n", " O \n", "on move: O\n", "X X \n", "O X \n", " O \n", "on move: X\n", "X X \n", "O X \n", "O O \n", "on move: O\n", "X X \n", "O X X \n", "O O \n", "on move: X\n", "X X O \n", "O X X \n", "O O \n", "on move: O\n", "X X O \n", "O X X \n", "O O X \n", "Episode 454, Total Reward: 1\n", "Average Reward: 0.29515418502202645\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " \n", "X O \n", "X \n", "on move: X\n", " O \n", "X O \n", "X \n", "on move: O\n", "X O \n", "X O \n", "X \n", "Episode 455, Total Reward: 1\n", "Average Reward: 0.2967032967032967\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", " X X \n", "on move: X\n", "O \n", " O \n", " X X \n", "on move: O\n", "O \n", "X O \n", " X X \n", "on move: X\n", "O \n", "X O \n", "O X X \n", "on move: O\n", "O X \n", "X O \n", "O X X \n", "on move: X\n", "O X \n", "X O O \n", "O X X \n", "on move: O\n", "O X X \n", "X O O \n", "O X X \n", "Episode 456, Total Reward: 0\n", "Average Reward: 0.29605263157894735\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " O X \n", " \n", " \n", "on move: O\n", " O X \n", " X \n", " \n", "on move: X\n", " O X \n", " X \n", "O \n", "on move: O\n", " O X \n", " X \n", "O X \n", "on move: X\n", " O X \n", "O X \n", "O X \n", "on move: O\n", " O X \n", "O X \n", "O X X \n", "Episode 457, Total Reward: 1\n", "Average Reward: 0.2975929978118162\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", " X \n", " X O \n", "on move: O\n", " O \n", "X X \n", " X O \n", "on move: X\n", "O O \n", "X X \n", " X O \n", "on move: O\n", "O O \n", "X X X \n", " X O \n", "Episode 458, Total Reward: 1\n", "Average Reward: 0.29912663755458513\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O O \n", " X \n", " X \n", "on move: O\n", " O O \n", " X X \n", " X \n", "on move: X\n", " O O \n", " X X \n", "O X \n", "on move: O\n", "X O O \n", " X X \n", "O X \n", "Episode 459, Total Reward: 1\n", "Average Reward: 0.3006535947712418\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", "X X \n", "O \n", " \n", "on move: X\n", "X X \n", "O O \n", " \n", "on move: O\n", "X X \n", "O O \n", "X \n", "on move: X\n", "X X \n", "O O O \n", "X \n", "Episode 460, Total Reward: -1\n", "Average Reward: 0.29782608695652174\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", "X \n", " X \n", " O \n", "on move: X\n", "X \n", " X \n", "O O \n", "on move: O\n", "X X \n", " X \n", "O O \n", "on move: X\n", "X X \n", " X \n", "O O O \n", "Episode 461, Total Reward: -1\n", "Average Reward: 0.2950108459869848\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " \n", "X X \n", " O O \n", "on move: O\n", " X \n", "X X \n", " O O \n", "on move: X\n", " X \n", "X X \n", "O O O \n", "Episode 462, Total Reward: -1\n", "Average Reward: 0.2922077922077922\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", " X X \n", " \n", "on move: X\n", "O \n", " X X \n", "O \n", "on move: O\n", "O \n", " X X \n", "O X \n", "on move: X\n", "O O \n", " X X \n", "O X \n", "on move: O\n", "O O \n", " X X \n", "O X X \n", "on move: X\n", "O O O \n", " X X \n", "O X X \n", "Episode 463, Total Reward: -1\n", "Average Reward: 0.2894168466522678\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " X \n", " O \n", "on move: X\n", "O X \n", " X \n", " O \n", "on move: O\n", "O X \n", " X X \n", " O \n", "on move: X\n", "O X \n", " X X \n", "O O \n", "on move: O\n", "O X \n", " X X \n", "O O X \n", "Episode 464, Total Reward: 1\n", "Average Reward: 0.29094827586206895\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", "O \n", "on move: O\n", "X \n", " X \n", "O \n", "on move: X\n", "X \n", "O X \n", "O \n", "on move: O\n", "X \n", "O X \n", "O X \n", "on move: X\n", "X O \n", "O X \n", "O X \n", "on move: O\n", "X X O \n", "O X \n", "O X \n", "on move: X\n", "X X O \n", "O O X \n", "O X \n", "Episode 465, Total Reward: -1\n", "Average Reward: 0.28817204301075267\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O X \n", " \n", " X \n", "on move: X\n", "O O X \n", " \n", " X \n", "on move: O\n", "O O X \n", " X \n", " X \n", "on move: X\n", "O O X \n", " X \n", "O X \n", "on move: O\n", "O O X \n", " X \n", "O X X \n", "on move: X\n", "O O X \n", "O X \n", "O X X \n", "Episode 466, Total Reward: -1\n", "Average Reward: 0.2854077253218884\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X O \n", " \n", " \n", "on move: O\n", "X O \n", " \n", "X \n", "on move: X\n", "X O O \n", " \n", "X \n", "on move: O\n", "X O O \n", "X \n", "X \n", "Episode 467, Total Reward: 1\n", "Average Reward: 0.28693790149892934\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " \n", " X \n", "on move: X\n", " X O \n", " O \n", " X \n", "on move: O\n", " X O \n", " O \n", "X X \n", "on move: X\n", "O X O \n", " O \n", "X X \n", "on move: O\n", "O X O \n", " O \n", "X X X \n", "Episode 468, Total Reward: 1\n", "Average Reward: 0.28846153846153844\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " \n", "X O X \n", " \n", "on move: X\n", "O \n", "X O X \n", " \n", "on move: O\n", "O \n", "X O X \n", " X \n", "on move: X\n", "O O \n", "X O X \n", " X \n", "on move: O\n", "O O \n", "X O X \n", "X X \n", "on move: X\n", "O O \n", "X O X \n", "X X O \n", "Episode 469, Total Reward: -1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O X \n", " X \n", "on move: X\n", "O \n", " O X \n", " X \n", "on move: O\n", "O X \n", " O X \n", " X \n", "on move: X\n", "O X O \n", " O X \n", " X \n", "on move: O\n", "O X O \n", " O X \n", " X X \n", "on move: X\n", "O X O \n", "O O X \n", " X X \n", "on move: O\n", "O X O \n", "O O X \n", "X X X \n", "Episode 470, Total Reward: 1\n", "Average Reward: 0.2872340425531915\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", " \n", "X X \n", "on move: X\n", " O \n", " O \n", "X X \n", "on move: O\n", " O \n", " O \n", "X X X \n", "Episode 471, Total Reward: 1\n", "Average Reward: 0.28874734607218683\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O \n", "X X \n", " \n", "on move: X\n", "O O \n", "X X \n", " \n", "on move: O\n", "O O \n", "X X \n", " X \n", "on move: X\n", "O O O \n", "X X \n", " X \n", "Episode 472, Total Reward: -1\n", "Average Reward: 0.2860169491525424\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", "O \n", " \n", "on move: O\n", "X X \n", "O \n", " \n", "on move: X\n", "X X \n", "O O \n", " \n", "on move: O\n", "X X \n", "O O \n", " X \n", "on move: X\n", "X X \n", "O O \n", " X O \n", "on move: O\n", "X X \n", "O O X \n", " X O \n", "on move: X\n", "X O X \n", "O O X \n", " X O \n", "on move: O\n", "X O X \n", "O O X \n", "X X O \n", "Episode 473, Total Reward: 0\n", "Average Reward: 0.2854122621564482\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", "O \n", " \n", " X \n", "on move: O\n", "O \n", " X \n", " X \n", "on move: X\n", "O O \n", " X \n", " X \n", "on move: O\n", "O O \n", " X \n", "X X \n", "on move: X\n", "O O \n", " O X \n", "X X \n", "on move: O\n", "O O X \n", " O X \n", "X X \n", "Episode 474, Total Reward: 1\n", "Average Reward: 0.2869198312236287\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X O \n", " \n", "on move: O\n", " X \n", "X O \n", " \n", "on move: X\n", " X \n", "X O \n", " O \n", "on move: O\n", " X X \n", "X O \n", " O \n", "on move: X\n", " X X \n", "X O O \n", " O \n", "on move: O\n", " X X \n", "X O O \n", "X O \n", "on move: X\n", " X X \n", "X O O \n", "X O O \n", "on move: O\n", "X X X \n", "X O O \n", "X O O \n", "Episode 475, Total Reward: 1\n", "Average Reward: 0.28842105263157897\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X \n", " \n", "O O X \n", "on move: O\n", " X \n", " X \n", "O O X \n", "on move: X\n", "O X \n", " X \n", "O O X \n", "on move: O\n", "O X \n", " X X \n", "O O X \n", "on move: X\n", "O X \n", "O X X \n", "O O X \n", "Episode 476, Total Reward: -1\n", "Average Reward: 0.2857142857142857\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " X O \n", " \n", "on move: X\n", " X \n", " X O \n", " O \n", "on move: O\n", " X \n", " X O \n", "X O \n", "Episode 477, Total Reward: 1\n", "Average Reward: 0.28721174004192873\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", "O \n", "X \n", "on move: O\n", " \n", "O \n", "X X \n", "on move: X\n", "O \n", "O \n", "X X \n", "on move: O\n", "O \n", "O X \n", "X X \n", "on move: X\n", "O O \n", "O X \n", "X X \n", "on move: O\n", "O O \n", "O X \n", "X X X \n", "Episode 478, Total Reward: 1\n", "Average Reward: 0.28870292887029286\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", "O X \n", " \n", " \n", "on move: O\n", "O X \n", " \n", " X \n", "on move: X\n", "O X \n", "O \n", " X \n", "on move: O\n", "O X \n", "O X \n", " X \n", "Episode 479, Total Reward: 1\n", "Average Reward: 0.29018789144050106\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", " O \n", "on move: O\n", " X \n", " \n", " O X \n", "on move: X\n", " X \n", "O \n", " O X \n", "on move: O\n", " X X \n", "O \n", " O X \n", "on move: X\n", "O X X \n", "O \n", " O X \n", "on move: O\n", "O X X \n", "O X \n", " O X \n", "Episode 480, Total Reward: 1\n", "Average Reward: 0.2916666666666667\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " \n", "O \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", "O X \n", " \n", "O X \n", "on move: O\n", "O X \n", " X \n", "O X \n", "on move: X\n", "O X \n", " X \n", "O X O \n", "on move: O\n", "O X \n", " X X \n", "O X O \n", "on move: X\n", "O O X \n", " X X \n", "O X O \n", "on move: O\n", "O O X \n", "X X X \n", "O X O \n", "Episode 481, Total Reward: 1\n", "Average Reward: 0.29313929313929316\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", "O \n", " X \n", " \n", "on move: O\n", "O X \n", " X \n", " \n", "on move: X\n", "O X \n", " X \n", " O \n", "on move: O\n", "O X \n", " X \n", "X O \n", "Episode 482, Total Reward: 1\n", "Average Reward: 0.2946058091286307\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " X O \n", " \n", "on move: X\n", " X \n", " X O \n", " O \n", "on move: O\n", " X X \n", " X O \n", " O \n", "on move: X\n", " X X \n", " X O \n", "O O \n", "on move: O\n", " X X \n", "X X O \n", "O O \n", "on move: X\n", "O X X \n", "X X O \n", "O O \n", "on move: O\n", "O X X \n", "X X O \n", "O X O \n", "Episode 483, Total Reward: 1\n", "Average Reward: 0.29606625258799174\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", "O \n", " X \n", "on move: O\n", " \n", "O X \n", " X \n", "on move: X\n", " O \n", "O X \n", " X \n", "on move: O\n", "X O \n", "O X \n", " X \n", "on move: X\n", "X O \n", "O X \n", "O X \n", "on move: O\n", "X O X \n", "O X \n", "O X \n", "Episode 484, Total Reward: 1\n", "Average Reward: 0.2975206611570248\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " O \n", " \n", "on move: O\n", "X \n", " O \n", "X \n", "on move: X\n", "X O \n", " O \n", "X \n", "on move: O\n", "X O \n", " O \n", "X X \n", "on move: X\n", "X O O \n", " O \n", "X X \n", "on move: O\n", "X O O \n", " O \n", "X X X \n", "Episode 485, Total Reward: 1\n", "Average Reward: 0.29896907216494845\n", "on move: O\n", "X \n", " \n", " \n", "on move: X\n", "X \n", " \n", "O \n", "on move: O\n", "X X \n", " \n", "O \n", "on move: X\n", "X X O \n", " \n", "O \n", "on move: O\n", "X X O \n", " X \n", "O \n", "on move: X\n", "X X O \n", " X \n", "O O \n", "on move: O\n", "X X O \n", " X \n", "O O X \n", "on move: X\n", "X X O \n", "O X \n", "O O X \n", "on move: O\n", "X X O \n", "O X X \n", "O O X \n", "Episode 486, Total Reward: 1\n", "Average Reward: 0.3004115226337449\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", "O \n", "X X \n", " O \n", "on move: O\n", "O \n", "X X \n", "X O \n", "on move: X\n", "O O \n", "X X \n", "X O \n", "on move: O\n", "O X O \n", "X X \n", "X O \n", "on move: X\n", "O X O \n", "X X O \n", "X O \n", "on move: O\n", "O X O \n", "X X O \n", "X O X \n", "Episode 487, Total Reward: 0\n", "Average Reward: 0.2997946611909651\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " \n", "X \n", "O X \n", "on move: X\n", " \n", "X O \n", "O X \n", "on move: O\n", " X \n", "X O \n", "O X \n", "on move: X\n", "O X \n", "X O \n", "O X \n", "on move: O\n", "O X \n", "X O X \n", "O X \n", "Episode 488, Total Reward: 1\n", "Average Reward: 0.3012295081967213\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " O \n", " X \n", " \n", "on move: O\n", " O \n", " X \n", " X \n", "on move: X\n", " O \n", "O X \n", " X \n", "on move: O\n", " O \n", "O X \n", "X X \n", "on move: X\n", " O \n", "O X O \n", "X X \n", "on move: O\n", " O X \n", "O X O \n", "X X \n", "Episode 489, Total Reward: 1\n", "Average Reward: 0.30265848670756645\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", "O \n", " \n", "X \n", "on move: O\n", "O \n", " X \n", "X \n", "on move: X\n", "O \n", "O X \n", "X \n", "on move: O\n", "O X \n", "O X \n", "X \n", "Episode 490, Total Reward: 1\n", "Average Reward: 0.3040816326530612\n", "on move: O\n", " \n", "X \n", " \n", "on move: X\n", " \n", "X \n", "O \n", "on move: O\n", " X \n", "X \n", "O \n", "on move: X\n", " X O \n", "X \n", "O \n", "on move: O\n", " X O \n", "X X \n", "O \n", "on move: X\n", " X O \n", "X X \n", "O O \n", "on move: O\n", "X X O \n", "X X \n", "O O \n", "on move: X\n", "X X O \n", "X X \n", "O O O \n", "Episode 491, Total Reward: -1\n", "Average Reward: 0.3014256619144603\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " O X \n", " \n", "on move: O\n", " \n", " O X \n", " X \n", "on move: X\n", " \n", "O O X \n", " X \n", "on move: O\n", " X \n", "O O X \n", " X \n", "on move: X\n", " X \n", "O O X \n", "O X \n", "on move: O\n", "X X \n", "O O X \n", "O X \n", "on move: X\n", "X O X \n", "O O X \n", "O X \n", "on move: O\n", "X O X \n", "O O X \n", "O X X \n", "Episode 492, Total Reward: 1\n", "Average Reward: 0.30284552845528456\n", "on move: O\n", " \n", " \n", "X \n", "on move: X\n", " \n", " O \n", "X \n", "on move: O\n", " X \n", " O \n", "X \n", "on move: X\n", " X O \n", " O \n", "X \n", "on move: O\n", " X O \n", "X O \n", "X \n", "on move: X\n", " X O \n", "X O \n", "X O \n", "on move: O\n", " X O \n", "X X O \n", "X O \n", "on move: X\n", " X O \n", "X X O \n", "X O O \n", "Episode 493, Total Reward: -1\n", "Average Reward: 0.3002028397565923\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X \n", " O \n", " \n", "on move: O\n", " X \n", " O \n", " X \n", "on move: X\n", " X \n", " O \n", "O X \n", "on move: O\n", "X X \n", " O \n", "O X \n", "on move: X\n", "X O X \n", " O \n", "O X \n", "on move: O\n", "X O X \n", "X O \n", "O X \n", "on move: X\n", "X O X \n", "X O \n", "O X O \n", "on move: O\n", "X O X \n", "X X O \n", "O X O \n", "Episode 494, Total Reward: 0\n", "Average Reward: 0.29959514170040485\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " O \n", " X \n", "on move: O\n", " \n", " O \n", "X X \n", "on move: X\n", " \n", " O \n", "X O X \n", "on move: O\n", " \n", "X O \n", "X O X \n", "on move: X\n", "O \n", "X O \n", "X O X \n", "on move: O\n", "O X \n", "X O \n", "X O X \n", "on move: X\n", "O X \n", "X O O \n", "X O X \n", "on move: O\n", "O X X \n", "X O O \n", "X O X \n", "Episode 495, Total Reward: 0\n", "Average Reward: 0.298989898989899\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X \n", "O \n", "O X \n", "on move: O\n", " X \n", "O \n", "O X X \n", "on move: X\n", " X \n", "O O \n", "O X X \n", "on move: O\n", " X \n", "O O X \n", "O X X \n", "Episode 496, Total Reward: 1\n", "Average Reward: 0.3004032258064516\n", "on move: O\n", " X \n", " \n", " \n", "on move: X\n", " X O \n", " \n", " \n", "on move: O\n", " X O \n", " \n", " X \n", "on move: X\n", " X O \n", " \n", "O X \n", "on move: O\n", "X X O \n", " \n", "O X \n", "on move: X\n", "X X O \n", "O \n", "O X \n", "on move: O\n", "X X O \n", "O X \n", "O X \n", "Episode 497, Total Reward: 1\n", "Average Reward: 0.30181086519114686\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " O \n", " \n", " X \n", "on move: O\n", " O \n", "X \n", " X \n", "on move: X\n", " O \n", "X O \n", " X \n", "on move: O\n", " O \n", "X O \n", " X X \n", "on move: X\n", " O \n", "X O \n", "O X X \n", "Episode 498, Total Reward: -1\n", "Average Reward: 0.2991967871485944\n", "on move: O\n", " \n", " X \n", " \n", "on move: X\n", " \n", " X \n", " O \n", "on move: O\n", " \n", "X X \n", " O \n", "on move: X\n", " O \n", "X X \n", " O \n", "on move: O\n", " O \n", "X X \n", "X O \n", "on move: X\n", "O O \n", "X X \n", "X O \n", "on move: O\n", "O O \n", "X X \n", "X O X \n", "on move: X\n", "O O O \n", "X X \n", "X O X \n", "Episode 499, Total Reward: -1\n", "Average Reward: 0.2965931863727455\n", "on move: O\n", " \n", " \n", " X \n", "on move: X\n", " \n", " \n", "O X \n", "on move: O\n", " X \n", " \n", "O X \n", "on move: X\n", " X O \n", " \n", "O X \n", "on move: O\n", "X X O \n", " \n", "O X \n", "on move: X\n", "X X O \n", " \n", "O O X \n", "on move: O\n", "X X O \n", "X \n", "O O X \n", "on move: X\n", "X X O \n", "X O \n", "O O X \n", "Episode 500, Total Reward: -1\n", "Average Reward: 0.294\n" ] } ], "source": [ "env = TicTacToeEnv()\n", "agent = RandomTicTacToeAgent(symbol=1)\n", "num_episodes = 500\n", "collected_rewards = []\n", "oom = 1\n", "\n", "for i in range(num_episodes):\n", " state, _ = env.reset()\n", " total_reward = 0\n", " done = False\n", " om = oom\n", "\n", " for j in range(9): \n", " moves = env.move_generator()\n", "\n", " if not moves:\n", " break\n", " if len(moves) == 1:\n", " move = moves[0]\n", " else:\n", " move = agent.get_action(moves)\n", "\n", " next_state, reward, done, info = env.step(move)\n", " total_reward += reward\n", " state = next_state\n", " env.render()\n", "\n", " if done:\n", " break\n", "\n", " om = -om\n", " collected_rewards.append(total_reward)\n", "\n", " print(f\"Episode {i+1}, Total Reward: {total_reward}\")\n", " \n", " average_reward = sum(collected_rewards) / len(collected_rewards)\n", " print(f\"Average Reward: {average_reward}\")\n", "\n" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.12.5" } }, "nbformat": 4, "nbformat_minor": 2 }