close_btn
로그인, 회원가입후 더 많은 혜택을 누리세요 로그인 회원가입 닫기

 

김성훈 교수님 코드를 바탕으로 간단하게 frozen lake를 가지고 Q-learning 까지의 review를 진행하려고 합니다. frozen lake는 OpenAI GYM의 환경에서 Toy Text의 범주에 들어 갑니다. Toy Text를 사용하는 것에 대한 의의는 Text 기반이기 때문에 그래픽적인 요소가 빠지게 되는 것이고 이것이 실물환경과 가깝다는 것입니다. 궁극적으로 실물을 동작시킬 때는 그래픽을 사용한 복잡한 시뮬레이션 환경 보다는 실제 물리 법칙에 준하는 환경이 더 유용할 듯 합니다. 

 

텍스트 기반의 Toy(장난감) 환경은. 추가적인 의존성이 없기때문에 시작을 하고자 한다면 그저 바로 시작을 하면 됩니다.

이것이 실물환경에서 필요한 요소라고 생각이 됩니다. 시뮬레이션 환경이 너무 복잡하게 적용되지 않은 강화학습 순수 소스위주의 코드로 되어 있는 코드로 구성되 예제가 실물 강화학습을 위해서는 필요한듯 합니다.

 

OpenAI GYM에서 몇가지 환경들은 즉시 실행이 가능합니다.

  • algorithmic 
  • toy_text
  • classic_control (you'll need pyglet to render though)

처음에는 위에 있는 것과 같은 환경을 가지고 실습을 하는 것을 OpenAI GYM에서는 추천합니다. 그리고 나중에 나머지 환경에 대한 의존성을 설치하는 과정으로 진행하도록 권고 하고 있습니다.

 


 

 

1. Python과 Gym 설치

 

  - 우분투 16.04 환경에서의 Ubuntu 터미널을 사용하여 Python과 Gym을 설치합니다.

 

 

 

sudo apt-get install -y python3-numpy python3-dev python3-pip cmake zlib1g-dev libjpeg-dev xvfb libav-tools xorg-dev python-opengl libboost-all-dev libsdl2-dev swig
cd ~
git clone https://github.com/openai/gym.git
cd gym
sudo pip3 install -e '.[all]'

 

 

2. 다음으로, 터미널에서 Python3을 열고 Gym을 가져올 수 있습니다.

 

 

 

python3
import gym

 

 

OpenAI Gym을 사용하기 위해 라이브러리 import

 

3. 환경이 필요합니다. 매우 기본적인 FrozonLake 환경을 로드합니다.

 

 

 

env = gym.make("FrozonLake-v0")

 

 

 

4. 환경을 초기화하려면 리셋을 해야합니다.

 

 
env.reset()

 

5. 현재 상태를 시각화하려면 다음을 입력하십시오.

 

 
env.render()

 

Frozen Lake Map을 출력하기 위한 함수 호출

 


실행결과

 

 
~/gym$ python3
Python 3.5.2 (default, Nov 23 2017, 16:37:01) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.

>>> import gym

>>> env = gym.make('FrozenLake-v0')
[2017-12-07 08:07:29,890] Making new env: FrozenLake-v0

>>> env.reset()
0

>>> env.render()

SFFF
FHFH
FFFH
HFFG

>>> 

 


이를 파일로 만들어서 한번에 실행하도록 합니다.

 

 
import gym
env = gym.make('FrozenLake-v0')
env.reset()
env.render()

 

 

번호 제목 글쓴이 날짜 조회 수
공지 RL4RWS 이용 안내 모두의연구소 2017.09.04 2030
35 강화학습 실습 6. Tensorflow 설치 및 간단한 테스트 cosmos 2018.02.11 1093
34 강화학습 실습 5. FrozonLake - Q-Learning on Stochastic World file cosmos 2018.02.09 208
33 강화학습 실습 4. FrozonLake - Q-Learning : Exploit & Exploration file cosmos 2018.02.09 230
32 강화학습 실습 3. FrozonLake - dummy Q-learning file cosmos 2018.02.09 293
31 강화학습 실습 2. FrozonLake 동작 시켜 보기 file cosmos 2018.02.09 211
» 강화학습 실습 1. Python과 OpenAI Gym 설치 및 간단한 동작 file cosmos 2018.02.09 538
29 1차 아두이노 및 부품 리스트 file cosmos 2018.02.07 133
28 2월 6일 세미나 진행 내용 cosmos 2018.02.06 63
27 아두이노 기반 실물 제작 발표자료 file cosmos 2018.02.02 123
26 아두이노 설치 및 초음파센서, 모터, 블루투스 예제 사이트 정리 cosmos 2018.02.01 830
25 향후 일정 정리 file cosmos 2018.01.31 159
24 1월 30일 세미나 진행 내용 cosmos 2018.01.31 35
23 강화학습의 진화 : 3차원 및 물리환경의 적용 - LG blog file cosmos 2018.01.26 127
22 1월 23일 세미나 진행 내용 cosmos 2018.01.23 86
21 Autonomous self-learning systems 영문 번역 1차 file cosmos 2018.01.22 83
20 이산 시간 확률 과정, 마르코프 체인, 마르코프 의사결정 과정 관련 사이트 정리 cosmos 2018.01.18 639
19 시즌 2에 사용할 실물 회로 및 부품 file cosmos 2018.01.12 87
18 10월 31일 세미나에서 진행할 내용 cosmos 2017.10.31 70
17 Line Tracer 예제 코드 컴파일 하기 [4] file 쪼알 2017.10.26 169
16 10월 24일 세미나에서 진행할 내용 cosmos 2017.10.24 56