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

openai gym의  frozen lake 환경에서 q-learning을 구현해 봤습니다.

https://github.com/elton-choi/rl-tutorial/blob/master/frozen_lake/q_learning.py

인터넷에 원낙 좋고 심플하게 짠 소스가 많지만, 개인 연습 삼아 구현해봤구요. 하며서, 느낀 점은 다음과 같습니다.

 

1. reward가 골에 도달할 때만 +1을 주는데, 중간에 함정이 있어서 exploration 하다가 골에 도달하기가 쉽지 않습니다.

 

2. 그래서, 함정에 빠졌을 때 -1을 줘서 피하게 하고, 그냥 exploration할 때마다 -0.1을 줘서 최단 거리로 도착하도록 유도했습니다.

   --> 이 부분도 인터넷에서 많이들 조언해주더군요.

 

3. 환경이 얼음에서 미끄러지도록(내가 오른쪽으로 가려고 액션을 줘도 오른쪽으로 안 갈 수 있는 경우 발생) 되어 있어서

   학습이 잘 안되었습니다. 이런 경우 Q(s,a) + alpha * (r + max Q(s_, a_) - Q(s,a) 가 기본 식인데,

   단순히 현재 값의 가중치를 낮춰만 줘도 향상이 되었습니다. (1-alpha) * Q(s,a) + alpha * (r + max Q(s_, a_) - Q(s,a)

   하지만, 나의 액션 의도와 그 결과(다음 상태)가 달랐을 때만 업데이트 룰을 바꿔주는 게 더 맞을 것 같았습니다.

   그런 방법이 이미 있겠죠?

 

4. 알고리즘은 간단하지만, 구현하면서 학습 경과 및 테이블을 가시화할 수 있어야 디버깅 및 reward 설계가 가능하다는 점을

    배웠습니다. 그리고, 8x8에서 하니까 잘 안 되서 4x4에서 한 다음에 8x8 환경으로 왔습니다.

 

5. 생각보다 미끄러지는 환경(미끄러짐이 심합니다..)에서는 학습을 아무리 시켜도 항상 성공할 수는 없는 것 같습니다.

    어느 정도가  잘 되는 건지 궁금하네요..

번호 제목 글쓴이 날짜 조회 수
공지 강남 Dynamics 연구실 모임 안내 모두의연구소 2016.08.08 2359
110 [논문 리뷰] Raibert, trot, pace, bounding file 최한철 2019.07.30 100
109 4족 보행 프로젝트 1차 - 자료 모음 최한철 2019.07.04 378
108 Balancing for torque controlled humanoid robots_Part4 file 김경민 2019.05.11 109
107 Balancing for torque controlled humanoid robots_Part3 file 김경민 2019.05.03 73
106 [논문 리뷰] Friction Observer with Joint Torque Sensor file 최한철 2019.05.02 154
105 Balancing for torque controlled humanoid robots_Part2 file 김경민 2019.04.27 63
104 [논문 리뷰] Collision Detection Survey file 최한철 2019.04.22 88
103 Floating base robot dynamics file 김경민 2019.04.20 78
102 Balancing for torque controlled humanoid robots_Part1 file 김경민 2019.03.29 123
101 redundancy analysis of cooperative dual arm manipulators_part2 file 김경민 2019.03.23 81
» [강화학습 스터디] Q-learning with table in frozen lake 최한철 2019.03.22 203
99 redundancy anlaysis of cooperative dual arm manipulators_part1 file 김경민 2019.03.15 65
98 [강화학습 스터디] Silver, Ch.4. Model-free prediction 정리 file 최한철 2019.03.10 102
97 Balancing of humanoid robot based on position control_Part2 file 김경민 2019.03.08 53
96 Balancing of humanoid robot based on position control_Part1 file 김경민 2019.02.23 100
95 Whole body controller(adative tdc+multiple tasks)_Part2 file 김경민 2019.02.16 72
94 Whole body controller(adative tdc+multiple tasks)_Part1 file 김경민 2019.02.08 93
93 [강화학습 스터디] Dynamic Programming 정리 file 최한철 2019.02.08 255
92 Dual manipulator(admittance) Part2 file 김경민 2019.01.25 90
91 Dual manipulator(admittance) Part1 file 김경민 2019.01.18 124