コード例 #1
0
def test_disable_domain(capsys, logging_config):
    log = Logger()
    log.set_enabled('spam', False)
    assert log._enabled_keys['spam'] == False
    log.spam('eggs')
    out, err = capsys.readouterr()
    assert out == ''
    assert err == ''
コード例 #2
0
class TicTacToeSim(Simulator):
    def __init__(self, brain, iteration_limit=0):
        super(TicTacToeSim, self).__init__(brain, 'TicTacToeSimulator')

        self._env = TicTacToeGame()

    def episode_finish(self):
        log.info("Episode {} reward: {}".format(self.episode_count,
                                                self.episode_reward))

    def episode_start(self, config):
        observation = self._env.reset()
        return {'image': observation}

    def simulate(self, action):
        observation, reward, done = self._env.advance(action)
        return {'image': observation}, reward, done


if __name__ == "__main__":
    config = Config(sys.argv)
    brain = Brain(config)
    sim = TicTacToeSim(brain)

    # If predicting print the board
    if sim.predict:
        log.set_enabled('game')

    while sim.run():
        continue
コード例 #3
0
import sys
import gym
from bonsai_ai import Brain, Config, Predictor
from bonsai_ai.logger import Logger

log = Logger()
log.set_enabled("info")


def _state(observation):
    """ Converts gym observation into Inkling state dictionary """
    state = {
        'position': observation[0],
        'velocity': observation[1],
        'angle': observation[2],
        'rotation': observation[3]
    }
    return state


def _action(action):
    """ Converts Inkling action into a gym action """
    return action['command']


def _log_state_and_action(state, action):
    log.info("The BRAIN received the following state: {}".format(state))
    log.info("The BRAIN returned the following action: {}".format(action))


if __name__ == '__main__':