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 2096
104 [논문 리뷰] Collision Detection Survey file 최한철 2019.04.22 11
103 Floating base robot dynamics file 김경민 2019.04.20 12
102 Balancing for torque controlled humanoid robots_Part1 file 김경민 2019.03.29 82
101 redundancy analysis of cooperative dual arm manipulators_part2 file 김경민 2019.03.23 58
» [강화학습 스터디] Q-learning with table in frozen lake 최한철 2019.03.22 79
99 redundancy anlaysis of cooperative dual arm manipulators_part1 file 김경민 2019.03.15 54
98 [강화학습 스터디] Silver, Ch.4. Model-free prediction 정리 file 최한철 2019.03.10 69
97 Balancing of humanoid robot based on position control_Part2 file 김경민 2019.03.08 39
96 Balancing of humanoid robot based on position control_Part1 file 김경민 2019.02.23 71
95 Whole body controller(adative tdc+multiple tasks)_Part2 file 김경민 2019.02.16 54
94 Whole body controller(adative tdc+multiple tasks)_Part1 file 김경민 2019.02.08 64
93 [강화학습 스터디] Dynamic Programming 정리 file 최한철 2019.02.08 176
92 Dual manipulator(admittance) Part2 file 김경민 2019.01.25 67
91 Dual manipulator(admittance) Part1 file 김경민 2019.01.18 90
90 Task Transition file 김경민 2019.01.13 130
89 Anaconda, OpenAI 설치 최한철 2019.01.11 155
88 Redundant Manipulators - part2 file 김경민 2019.01.05 56
87 [논문 리뷰] Unified force/impedance controller file 최한철 2019.01.01 128
86 질문이 하나 있어 여기에 올려봅니다. [5] file 헬멧 2018.12.17 225
85 2018 모두콘 발표자료 file 최한철 2018.12.16 272