Skip to content

boangri/gym-snake

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Snake for gym

Среда сделана в формате gym

Правила игры

Игровое поле 20x20, В начале игрового эпизода змея и яблока располагаются случайно, змея состоит из одной клетки - головы. Змея может двигаться во всех 4-х направлениях кроме назад (в себя). Яблоко неподвижно на протяжении эпизода. При поедании яблока длина змеи увеличивается на одну клетку.

Действия:

0 - left, 1 - up, 2 - right, 3 - down.

Эпизод состоит из не более 200 шагов.

Награды (reward):

  • за правильный, но нерезультативный код: -1
  • за неправильный ход (в себя или за пределы поля): -100 и эпизод завершается.
  • за яблоко: +100

Задача - набрать максимальное число очков за эпизод.

Как запустить игру

Для начала нужно установить пакет gym_snake

Склонируйте репозиторий

git clone https://github.com/boangri/gym-snake.git
pip install -e gym-snake

Пример случайного агента:

import gym
import gym_snake

env = gym.make('Snake-v0')
observation = env.reset()
done = False
score = 0
steps = 0
while not done:
    env.render()
    action = env.action_space.sample()
    observation, reward, done, info = env.step(action)
    score += reward
    steps += 1
    print("step %d action %d => %d, total: %d" % (steps, action, reward, score))
print("End of episode")

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published