11. Reward 구현

1. 소개#

강화학습에서 Reward는 에이전트가 어떤 행동을 더 배워야 하는지 알려주는 기준이다. 맨 처음 강화학습을 알게 된 계기였던 그네를 잘타게 하는 법을 학습 시키는 영상에 나오는 것(유전적 알고리즘으로 그네 타는 법을 학습시켰다)이 처음에는 ‘와 저게 바로 강화학습이구나!’ 했는데 둘 다 시도해보고 더 잘한 걸 더 남긴다라는 건 비슷하지만 꽤나 다양한 방면으로 차이가 있는 걸 알게 되었다.

10. Observation 구현

1. 소개#

  • 이전 단계에서는 BP_SpiderTrainingManager에서 BP_SpiderInteractor를 생성하고, 이를 BP_SpiderLearningManager에 Listener로 등록한 뒤, BP_SpiderRobot을 Agent로 등록하는 구조까지 구성했다.

9. Observation 설계

1. 소개#

  • 이전 단계에서는 BP_SpiderTrainingManager에서 `BP_SpiderInteractor를 생성하고, 이를 BP_SpiderLearningManager에 Listener로 등록한 뒤, BP_SpiderRobot을 Agent로 등록하는 구조까지 구성했다.

8. Learning Agents 학습 루프 연결

1. 소개#

이전 단계에서는 BP_SpiderInteractor에서 학습기가 출력한 24개의 Continuous Action 값을 가져와 SpiderJointControllerComponentApplyJointActions 함수로 전달하는 구조까지 구현했으니, 이번 단계에서는 지금까지 구성한 Learning Agents 입출력 구조를 실제 학습 루프에 연결하기 위한 기반 작업을 진행해보도록 하자

5. Learning Agent 적용

1. Learning Agents 사용할 클래스 정리#

거미 로봇의 관절이 모두 정상적으로 접근하다는 것을 확인했으니, 이제 언리얼에서 지원하는 Learning Agent를 켜서 학습 루프까지 진입이 가능한 지 확인해보자

6. 강화학습이란?

1. 소개#

  • 강화학습을 적용하기 전에 강화학습을 배운 지가 너무 오래되어서 여러 웹 문서을 뒤져가면서 내가 알기 쉽게 간략하게 기초 정리를 해보면서 복습을 해보고자 한다.
  • 수식도 따로 적지 않고 개념적인 설명을 이해하기 쉽게 적어보자

2. 강화학습 알고리즘 전체 분류 체계#

2.1. 분류 체계#

강화학습은 아주 단순하게 말하면:

4. C++ 액터 컴포넌트 만들기

1. 소개#

  • 강화학습을 진행하기 위해서는 매 프레임 마다

    정책 모델의 Action
    → 특정 관절 목표 각도
    → 물리 컨스트레인트에 적용
    → 다리 움직임

    가 필요함. 지금 그래서 축소 버전으로

3. 관절 제어 확인

1. 소개#

저번에 이어서 이번에는 다리 관절 하나하나를 제어할 수 있는 구조인지 확인해보도록 하자. 왜냐하면 강화학습을 진행하기 위해서는 이후에 AI 모델이

Be Your Own Lamp