前準備として,Python, Git のインストールが終わっていること.
Python の URL: https://www.python.org/
WinPython を使いたい場合は,そのインストールは,別ページで説明している.
※ Python のプログラム作成には、PyCharmなどが便利である.
Git の URL: https://git-scm.com/
sudo apt -y install git
ダウンロードに,gitを用いる.
mkdir c:\pytools cd c:\pytools rmdir /s /q gym git clone https://github.com/openai/gym
※ 「pip install ...」は,Python パッケージをインストールするための操作. Ubuntu でシステム の python3 を使っているときは,「pip install ...」の代わりに「sudo pip3 install ...」のように操作すること.
cd c:\pytools cd gym pip install -e .
Windows のコマンドプロンプトで、次のコマンドを実行
バージョン番号が表示されれば OK.下の図とは違うバージョンが表示されることがある.
python -c "import gym; print( gym.__version__ )"
pip install gym[atari]
Python プログラムを動かす.
※ Python プログラムを動かすために, Windows では,「python」コマンドを使う. Ubuntu では「python3」コマンドを使う.
Python プログラムを動かすために, pythonやpython3などのコマンドを使う. あるいは, 開発環境や Python コンソール(Jupyter Qt Console,spyder,PyCharm,PyScripter など)の利用も便利である.
import gym
env = gym.make('SpaceInvaders-v0')
observation = env.reset()
for i_episode in range(20):
observation = env.reset()
for t in range(100):
env.render()
print(observation)
action = env.action_space.sample()
observation, reward, done, info = env.step(action)
if done:
print("Episode finished after {} timesteps".format(t+1))
break
import gym
env = gym.make('CartPole-v0')
observation = env.reset()
for i_episode in range(20):
observation = env.reset()
for t in range(100):
env.render()
print(observation)
action = env.action_space.sample()
observation, reward, done, info = env.step(action)
if done:
print("Episode finished after {} timesteps".format(t+1))
break
import gym
env = gym.make('Copy-v0')
observation = env.reset()
for i_episode in range(20):
observation = env.reset()
for t in range(100):
env.render()
print(observation)
action = env.action_space.sample() # your agent here (this takes random actions)
observation, reward, done, info = env.step(action)
if done:
print("Episode finished after {} timesteps".format(t+1))
break
import gym
env = gym.make('FrozenLake-v0')
observation = env.reset()
for i_episode in range(20):
observation = env.reset()
for t in range(100):
env.render()
print(observation)
action = env.action_space.sample() # your agent here (this takes random actions)
observation, reward, done, info = env.step(action)
if done:
print("Episode finished after {} timesteps".format(t+1))
break