June Week 5
Curriculum Learning for Reinforcement Learning Domains: A Framework and Survey
- Curriculum Learning 에 대한 모든 것
- 논문에서 제시하는 Framework를 사용하여 미결 문제 찾기
- RL , CL 연구를 위한 방향성 제시
What is Curriculum Learning ?
--> 인간 발달 , 정규 교육 등 보편적인 학습 방법
--> 연속적인 하위 게임에서 새로운 기술을 배우고 이전 게임에서 배운 지식을 바탕으로 달성해야하는 새로운 요소가 도입됨.
--> 학습을 가속화하거나 향상시키기 위해 에이전트가 시간이 지남에 따라 휙득하는 경험을 정렬하는 역할로 과거의 경험을 정리하는 일과, 목표에 대한 훈련을 통해 경험을 습득하는 일을 모두 포괄하는 일반적인 개념
Ex) 스포츠를 배울 때 교육 과정을 순차적으로 구성하고 구조화하는 것.
Ex) 체스에서 첫 번째는 이동, 승진 등을 학습. 두 번째는 환경에 왕 추가하여 왕 살려두는 목표. 세 번째는 완전한 체스
- 훈련 예제의 순서 중요
- 훈련 예제의 점진적 난이도
How can it be represented for reinforcement learning tasks?
--> Automatic
- 경험 샘플에 대한 순서 (환경에서 얻는 경험들에 대한 순서)
- 작업을 학습해야 하는 순서 (목표 순서 , 환경에 대한)
- 전이학습 (reward, state 등이 다를 수 있으므로)
--> Hand-operated
- 자동화시키지 않고, 직접 수동으로 다 해줘야함
- 커리큘럼을 설계하는데 시간, 노력 및 사전 지식이 엄청나게 사용되었는 지 평가하기 어려움
How can tasks be constructed for use in a curriculum ?
--> Intermediate task generation
- The primary challenge is how to sequence a set of tasks to improve learning spead
- useful source tasks to select from
- still rely on some human
- automatic or hand-operated
--> Curriculum representation
- 가장 일반적인 형태는 방향성 비순환 그래프
- 다대일, 일대다 및 다대다 작업에서 전이하는 전이 학습 방법
- single , sequence , graph
--> Transfer method
- 전이 학습 아이디어를 활용하여 커리큘럼의 작업 간에 지식을 전달
- 전달되는 지식 유형 : 전체 정책 , 가치 함수 , 전체 작업 모델 , 부분 정책 , 형성 보상 등
- 단일 작업의 샘플을 시퀸싱할 때 전이 학습 알고리즘이 필요하지 않음
--> Curriculum sequencer
- automatic
- domain expert
- user
--> Curriculum adaptivity
- 교육 전 정적 설계 : 도메인 및 가능한 학습 에이전트의 속성 사용
- 교육 중 동적 설계 (적응형) : 에이전트가 학습 중 직면한 목적에 관련된 속성의 영향을 받음
--> Evaluation metric
- 생성, 사용 비용은 매몰 비용으로 처리 -> 목표에 대한 성능에만 관심
- curriculum 중간 작업에 대한 비용이 고려됨 , 사람이 손으로 디자인한 경우 등
- 생성 비용과 교육 비용을 설명함
--> Application area
- 장난감
- sim 로봇
- real 로봇
- 비디오 게임
- 기타
How can an agent transfer knowledge between tasks as it learns through a curriculum ?
--> Curriculum learning approaches make use of transfer learning methods when moving from one task to another.
How can such methods be evaluated ?
- TL 과 동일한 metric을 사용하여 전체 커리큘럼을 따른 후 목표에 대한 성과와 커리큘럼
- 설계 혹은 생성하는 데 사용되는 비용은 매몰 비용으로 취급 -> curriculum 자체의 성과를 평가
Curriculum Learning for Reinforcement Learning Agents
--> Task Generation
- 유익한 중간 작업을 만드는 것
- 모든 작업은 최종 작업과 관련이 있어야 함
- 작업 단순화 , 작업 차원 줄이기 , 높은 보상에 가까운 상태를 추가하여 초기 상태 세트 수정
- 실수가 감지되기 몇 단계 전으로 되감고 학습 재개
작업 생성 | 표현 | 이전 방법 | 순서 | 적응형 | 평가 | 응용 | |
2018 | automatic | graph | value fnc | automatic | static | total reward | toy |
2016 | automatic | sequence | value fnc | domain experts | adaptive | asymptotic | video game |
2013 | automatic | sequence | partial policy | automatic | adaptive | asymptotic | other |
1994 | automatic | sequence | other | domain experts | adaptive | time to threshold | toehr |
--> Sequencing
학습을 용이하게 하는 방법
작업 또는 샘플이 주어지면 순서대로 정렬하는 것.
ㄴ sample sequencing
- sample sequencing : 훈련 예제가 특정 순서로 학습자에게 제공됨
- 강화학습으로 예시를 들면 priority experience replay 하는 것.
- TD error , CI 함수를 이용하여 priority 구성 혹은 시퀸싱
- ScreenerNet , PER approach , HER, CHER , EBU
ㄴ Co-Learning
- 다중 에이전트 접근 방식
- TD-Gammon , AlphaGo , AlphaStar
- 협력적이거나 적대적으로 행동하여 새로운 행동의 습득을 촉진
- asymmetric self-play, RARL
- Ex) 숨바꼭질에서 찾는 에이전트와 숨는 에이전트 함께 학습
ㄴ Reward and Initial / Terminal state distribution changes
- 환경을 다르게 하는 것
- 총 쏘는 것이 목표일 때 초기 상태 분포를 목표 상태에 가깝게 시작하고 후속 작업에서 점진적으로 더 멀리 이동하여 학습할 수 있도록 일련의 작업을 만드는 것
- GAN , SAGG-RIAC
- 적응형 커리큘럼 학습 전략 : 에이전트가 현재 환경에서 잘 수행하면 확률 분포가 더 어려운 작업으로 이동
ㄴ No restrictions
① MDP/POMDP
- tasks 와 상호작용하는 에이전트와 tasks 를 선택해주는 에이전트로 나눔.
- 곡선 기울기의 절대값이 가장 높은 task 를 선택 , 추가 시간이 필요한 task 선택 등
② 시퀸스에 대한 조합 최적화
- 고정된 tasks가 주어지면 최상의 커리큘럼으로 이어지는 순열을 찾음. Ex) 블랙박스 최적화.
③ 방향성 비순환 작업 그래프
- 비순환 방향성 작업 그래프
- 한 노드에서 다른 노드로 향하는 edge 는 한 task가 다른 task의 원본임을 의미.
④ 중간 Task에 소요되는 시간
- 성능이 안정될 때까지 중간 Task에 대해 훈련
- 성능이 증가하면 CT가 증가하고, 성능이 감소하면 학습 속도를 느리게 하는 적응형
ㄴ Human-in-the-Loop curriculum 생성
- 현재까지 나온 것들은 시퀸싱 알고리즘을 사용하여 자동으로 커리큘럼을 생성하는 것
- 커리큘럼 설계에 접근하는 방법을 더 잘 이해하는 것이 중요
- 교육 일정을 나누어 각 기술들을 각각 학습할 수 있게 하는 것.
- 이때 발생되는 문제점은 직선 보행에서 속도를 빠르게 최적화 시켰는데 회전할 때 넘어지는 문제가 발생될 수 있어서 중첩 계층 학습이라는 아이디어를 활용
- SABL (Strategy-Aware Bayesian Learning)
--> Knowledge Transfer
- 어떤 task에서 학습한 지식을 재사용할 지
- 어떤 종류의 지식을 재사용할 지
- 에이전트의 유형에 따라 어떤 것을 적용할 지
- Ex) 전체 policy , 부분 policy , value function , model
What is Transfer Learning ?
- A를 학습시키기에 데이터에 부족할 때, 학습 데이터가 많은 B를 학습시켜 A를 해결하는 것. 이때 부분적으로 레이어를 변경하여 그 부분만 재훈련하는 방법
- 이미 사전에 학습된 모델을 이용하여 재사용할 레이어 수와 재교육할 레이어 수를 정함
- Deep Learning 을 활용하여 데이터 수 줄이기 혹은 학습 속도 개선
- pre-training 이후 fine-tuning 을 통해 현재 상황에 맞는 모델을 만드는 과정.
Curriculum Learning (CL) 정리
▣ 인간이 교육받고 성장하는 과정과 비슷한 원리
- 중등 수학 -> 고등 수학 -> 대학교 수학
- 여러 교육과정 중 선택해서 듣되 최종적으로는 모든 교육과정을 수강
▣ CL은 Task generation , Sequencing , Knowledge Transfer 총 세 가지의 중요한 구성 요소
- Task generation 는 유용한 중간 경험을 만드는 것
- Sequencing 는 학습을 용이하게 하는 방법
- Knowledge Transfer 는 다음 단계로 넘어갈 때 기존에 있던 지식 중 어떤 지식을 갖고 갈 지
▣ Task
- 작업을 달성했는 지를 평가하는 기준
- 중요한 task를 잘 설계
▣ Sequence
- Graph 와 Linear
- Graph : 뒤죽박죽 학습함
- Linear : 정해진 순서에 따라 학습함
- 왼쪽 그림은 Linear sequences
- 오른쪽 그림은 Directed acyclic graphs in block dude.
▣ Environment
- 학습 전 미리 curriculum 구성
- online 혹은 offline 가능
- online : 에이전트의 학습 진행 상황에 따라 에지가 동적으로 추가 됨. (Single task CL , Task level CL , Sequence CL)
- offline : 이미 연결되어 있는 에지를 선택하게 됨.
▣ Transfer Intelligence
- CL에서는 Transfer Learning 을 이용함
- 전체 정책 , 가치 함수 , 전체 작업 모델 , 부분 정책 , 형성 보상
- 특정 층 혹은 노드만 이전하는 경우도 있음.
- 입력 노드의 개수를 추가해주는 경우도 있음.
▣ Curriculum Learning 의 한계
- 유익하다는 것은 경험적으로 증명됐지만 curriculum 이 why , when 유용하고 how 만들어야하는 지 부족함
실제 적용할 때 주의사항
- 수동으로 할 것임
- Graph or Linear
- 각 curriculum 별로 난이도 조정
- 어떤 지식을 이전할 지
- off policy or on policy
- Fine-Tuning 시 하이퍼 파라미터 조정
Curriculum Reinforcement Learning From Avoiding Collisions to Navigating Among Movable Obstacles in Diverse Environments
- curriculum learning for robot navigation problems
- 목표를 달성하기 위한 난이도 , 거리 , 속도 기능을 갖춘 curriculum 을 개발
- sim & real environment에서 종합적인 평가를 통해 입증됨
- IEEE Robotics and Automation Letters
- 01 March 2023
Flying Through a Narrow Gap Using End-to-End Deep Reinforcement Learning Augmented With Curriculum Learning and Sim2Real
- 기울어진 좁은 틈새를 통과할 때 강화학습에서 발생되는 문제점 두 가지를 모두 해결
- curriculum learning 을 사용하여 sim2real 극복
- DRL만으로 Gap traversing task를 성공한 것은 유일
- IEEE Transactions on Nerual Network and Learning Systems
- 06 September 2021
Indoor Path Planning for an Unmanned Aerial Vehicle via Curriculum Learning
- curriculum learning 을 통한 무인 항공기의 실내 경로 계획
- 강화학습을 적용한 2차원 경로 계획 학습
- Gazebo를 이용하여 가상 환경을 만듬
- 2단계로 커리큘럼 학습 진행
- International Conference on Control, Automation and Systems
- IEEE 12 October 2021
Collision-Avoiding Flocking With Multiple Fixed-Wing UAVs in Obstacle-Cluttered Environments : A Task-Specific Curriculum-Based MADRL Approach
- 여러 대의 고정 날개 무인 항공기에 대한 분산형 장애물 회피 정책
- MADRL 이라는 curriculum 기반 다중 에이전트 접근법
- 회피 군집 작업을 여러 개의 하위 작업으로 분해하고 단계적으로 해결해야 할 하위 작업의 수를 점진적으로 늘리는 것
- online learning에서는 HRAMA , offline transfer는 model reload and buffer reuse
- International Transactions on Nerual Networks and Learning Systems
- IEEE 23 February 2023
Embodied Visual Navigation With Automatic Curriculum Learning in Real Environments
- automatic curriculum learning 방법 소개
- NavACL을 사용하여 학습된 에이전트는 RGB만으로도 지정된 목표물 탐색
- sim2real 전환 지원
- IEEE Robotics and Automation Letters
- 01 January 2021
Distributed Non-Communicating Multi-Robot Collision Avoidance via Map-Based Deep Reinforcement Learning
- 통신 필요 없는 분산 환경에서 다중 로봇 충돌 회피를 위한 지도 기반 심층 강화 학습 접근법
- DPPO , 3 Frame , gird local map , relative target position
- 주변 로봇의 크기와 모양을 고려
- 다단계 curriculum learning을 이용하여 튜닝 없이 수행
- Sensors 2022, 20, 4836. https://doi.org/10.3390/s20174836
Inverse Reinforcement Learning with Hybird-weight Trust-region Optimization and Curriculum Learning for Autonomous Maneuvering
- 실제 주행에서 얻은 전문가데모 지식과 보상 함수에 인코딩된 충돌 회피, 목표 도달 등과 같은 도메인 지식을 통합한 제어 정책
- IRL-HC 사용하는 역강화학습 프레임워크
- IEEE/RSJ International Conference on Intelligent Robots and Systems
- 23 October 2022
Path planning for multiple agents in an unknown environment using soft actor critic and curriculum learning
- SAC algorithm + CL
- 경로 계획 과제 쉬운 것부터 어려운 것까지 학습으로 설정
- 제한된 관찰로 인해 발생하는 문제를 해결하기 위한 state 정보를 쌓고, 포괄적인 보상 기능을 설계
- Computer Animation And Virtual Worlds
- 2022
제어로봇시스템 논문지 틀
- 충돌 회피
- 커리큘럼 러닝
- 서론 , 기존 한계 , 본 연구 , 시뮬레이션 결과 , 결론
- 서론 , 가상 환경 , 훈련 환경 , 시뮬레이션 결과 , 결론
- 서론 , 장애물 , 충돌 회피 , 결과 테스트 , 결론
- 서론 , 배경 , 문제점 , 커리큘럼 과정 , 시뮬레이션 , 결론
July Week 1
수정사항 :
- [UPDATE] Angle (deg) -> Angle (rad)
- [UPDATE] Heading angle 0.00 ~ 3.14 (rad) -> Heading angle -3.14 ~ 3.14 (rad)
- [ADD] Action Right -> Action Right & Left
- [ADD] Auto function to save model and fig
- [Trial] Action 종류 변경
- [Trial] Hyperparameter 수정
- [Trial] State에 time 추가
https://github.com/wntdevelop/Collision-Avoidance-Journal
July Week 2
- RSS : Robotics science and system 참석
July Week 3
기존 한계 :
- Local minima
- Action 이 한 방향 회전만 존재
- 느린 속도로만 가능
- Real env 에서 되는 지 확인할 수 없음
- 다른 Algorithm 과 성능을 비교해보지 못함
- 얼마나 빠르게 도달하는 지 비교할 수 있는 척도가 없음
문제점 :
- 앞쪽 센서 두 개가 동시에 커졌을 경우 아무것도 못함
- Reward 설계하는데 어려움
- CL 설계 어려움
- Hyperparameter 조정 어려움
수정사항 :
- [Trial] Two action training
- [ADD] Reset physics function in webots
- [Trial] Velocity 0.3925 (rad/s) -> Velocity 3.14 (rad/s)
- [Trial] Hyperparameter 수정
https://github.com/wntdevelop/Collision-Avoidance-Journal
July Week 4
August Week 1
August Week 2
August Week 3
August Week 4
Reference
1. Sanmit Narvekar, Bei Peng, Matteo Leaonetti, Jivko Sinapov, Matthew E. Taylor, and Peter Stone. 2020. Curriculum Learning for reinforcement learning domains: a framework and survey. J. March. Learn. Res. 21, 1, Article 181 (January 2020), 50 pages
2. What is Transfer Learning? Exploring the popular Deep Learning Approach _ builtin.com
'About my life > Undergraduate Researcher' 카테고리의 다른 글
[Linux] booting -> Login 이후 검은화면 (0) | 2023.07.28 |
---|---|
[RSS] Robotics: Science and Systems (0) | 2023.07.07 |
[Journal] Outline (0) | 2023.06.26 |
webots simulation DQN (0) | 2023.03.02 |
Webots error (1) | 2023.02.14 |