일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- Interrupt
- 리눅스
- 신경망 첫걸음
- Generalized forward
- LED 제어
- 딥러닝
- 모두를 위한 딥러닝]
- 펌웨어
- 모두를 위한 딥러닝
- Transport layer
- 인터럽트
- 디바이스 드라이버
- Network layer
- Class Activation Map
- LED
- 신경망
- GPIO
- 밑바닥부터 시작하는 딥러닝
- Linux
- 3분 딥러닝
- function call
- file descriptors
- demultiplexing
- TensorFlow
- 텐서플로우
- Router
- RDT
- Switch
- 스위치
- 운영체제
Archives
- Today
- Total
건조젤리의 저장소
2-2. Playing OpenAI GYM Games 본문
김성훈 교수님의 강의내용을 정리한 내용입니다.
출처 : http://hunkim.github.io/ml/
파이썬에서 키 입력을 받아오기 위해 _Getch() 클래스를 만들고,
Gym에서 사용하는 매크로를 설정한다.
그리고 각각의 매크로와 키를 연결해주자.
* 높은 버전에서는 문제가 생긴다고 한다! -> 맨 밑의 코드를 참고하자
액션값을 넣어준 다음 .render()를 통해 확인하자.
실행을 하게 되면 위와 같이 실행이 가능하다.
액션값을 넣어주게 되면 4개의 출력값을 얻을 수 있게 된다.
기존 코드는 문제가 발생하므로 이 코드를 사용하세요!
구현 코드 (환경: ubuntu:16.04 python 3.6)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
import gym
from gym.envs.registration import register
import readchar
import colorama as cr
cr.init(autoreset=True)
gym.envs.registration.register(id='FrozenLake-v3',
entry_point='gym.envs.toy_text:FrozenLakeEnv', kwargs={'map_name':'4x4', 'is_slippery':False})
env = gym.make('FrozenLake-v3')
env.render()
LEFT = 0
DOWN = 1
RIGHT = 2
UP = 3
arrow_keys = {
'\x1b[A' : UP,
'\x1b[B' : DOWN,
'\x1b[C' : RIGHT,
'\x1b[D' : LEFT
}
while True:
key = readchar.readkey()
if key not in arrow_keys.keys():
print("Game aborted!")
break
action = arrow_keys[key]
state, reward, done, info = env.step(action)
env.render()
print("State: ", state, "Action: ", action, "Reward: ", reward, "Info: ", info)
if done:
print("Finished with reward", reward)
break
|
cs |
'공부 기록 > 모두를 위한 딥러닝 (RL)' 카테고리의 다른 글
4-1. Q-learning (0) | 2019.11.19 |
---|---|
3-2. Dummy Q-learning 구현 (0) | 2019.11.18 |
3-1. Dummy Q-learning (0) | 2019.11.18 |
2-1. Playing OpenAI GYM Games (0) | 2019.11.18 |
1. Reinforcement learning (0) | 2019.11.18 |
Comments