1 of 121

인공지능

Policy Gradient Methods

강원대학교 컴퓨터공학과 최우혁

2 of 121

지난 시간에…

  • Deep Q-Network?

2

3 of 121

지난 시간에…

  • Dealing with Divergence
    • Deep Q-Network = Function Approximation (Neural Network) + Bootstrapping (Temporal Difference Learning) + Off-Policy (Q-Learning)
    • Experience Replay: 경험들을 Replay Buffer에 저장하고, Replay Buffer에서 무작위로 경험들을 추출해서 매개변수를 업데이트 ⇒ 경험들 간의 시간적 연관성을 완화
    • Fixed Target Network: 매개변수가 업데이트 되지 않고 안정된 Target을 반환하는 Target Network를 활용 ⇒ Bootstrapping + Function Approximation으로 인한 Target의 불안정성을 완화

3

4 of 121

지난 시간에…

  • Variants of Deep Q-Network
    • Double Deep Q-Network: Target Network를 두 번째의 행동 가치 함수로 활용

    • Prioritized Experience Replay: Error가 높은 경험들을 높은 확률로 추출Stochastic Sampling하되, 그 영향을 완화Importance Sampling 하여 매개변수를 업데이트

4

5 of 121

강의 순서

  • Policy Gradient?
  • REINFORCE
  • Actor-Critic Methods
  • Asynchronous Advantage Actor-Critic

5

6 of 121

이번 시간에…

  • Policy Gradient?
    • 정책을 함수적으로 근사하는 강화 학습 방법의 이론적 배경을 학습
  • REINFORCE
  • Actor-Critic Methods
  • Asynchronous Advantage Actor-Critic

6

7 of 121

Policy Gradient?

7

8 of 121

Until Now…Value Function!

Policy Gradient?

  • Tabular Q-Learning
    • 현재 상태에서 테이블에 저장된 행동 가치를 고려하여 행동을 선택

8

9 of 121

Until Now…Value Function!

Policy Gradient?

  • Tabular Q-Learning
    • 현재 상태에서 테이블에 저장된 행동 가치를 고려하여 행동을 선택
    • 선택된 행동을 수행한 후 관측된 보상 및 다음 상태를 고려하여 현재 상태 및 행동에 대한 행동 가치를 업데이트

9

10 of 121

Until Now…Value Function!

Policy Gradient?

  • Sarsa w/ Function Approximation
    • 현재 상태 및 행동에 대한 행동 가치를 출력하는 함수를 고려하여 행동을 선택

10

11 of 121

Until Now…Value Function!

Policy Gradient?

  • Sarsa w/ Function Approximation
    • 현재 상태 및 행동에 대한 행동 가치를 출력하는 함수를 고려하여 행동을 선택
    • 선택된 행동을 수행한 후 관측된 보상 및 다음 상태를 고려하여 함수의 매개변수를 업데이트

11

12 of 121

Until Now…Value Function!

Policy Gradient?

  • Deep Q-Network
    • 현재 상태 및 행동에 대한 행동 가치를 출력하는 인공 신경망을 고려하여 행동을 선택

12

13 of 121

Until Now…Value Function!

Policy Gradient?

  • Deep Q-Network
    • 현재 상태 및 행동에 대한 행동 가치를 출력하는 인공 신경망을 고려하여 행동을 선택
    • Replay Buffer에 저장된 경험을 추출하여 인공 신경망의 매개변수를 업데이트

13

14 of 121

Until Now…Value Function!

Policy Gradient?

  1. (매개변수 w를 통해) 행동 가치 함수를 학습

14

15 of 121

Until Now…Value Function!

Policy Gradient?

  • (매개변수 w를 통해) 행동 가치 함수를 학습

  • 행동 가치 함수를 기반으로 ε -Greedy 정책을 통해 행동을 선택

15

16 of 121

Policy Gradient? Directly Learning Policy!

Policy Gradient?

  • 매개변수 𝛉를 통해 정책을 학습

16

17 of 121

Policy Gradient? Directly Learning Policy!

Policy Gradient?

  • 매개변수 𝛉를 통해 정책을 학습

  • 학습된 정책으로 행동을 할 확률 (또는 확률 분포)을 직접 반환

17

18 of 121

Policy Gradient: How?

Policy Gradient?

  • Value Function Approximation: 각 행동의 행동 가치 함수를 출력하고, 이를 바탕으로 행동을 선택

18

19 of 121

Policy Gradient: How?

Policy Gradient?

  • Policy Gradient for Discrete Action Spaces: 각 행동을 수행할 확률을 출력
    • 예. Softmax

19

20 of 121

Policy Gradient: How?

Policy Gradient?

  • Policy Gradient for Continuous Action Spaces: 연속적인 행동 공간에 대한 확률 분포 (를 구성하는 매개변수)를 학습하고, 학습된 확률 분포에서 행동을 추출
    • 예. 정규 분포를 따르는 행동 공간

20

21 of 121

How to Learn Policy

Policy Gradient?

  • (Recap) Value Function Approximation

21

22 of 121

How to Learn Policy

Policy Gradient?

  • (Recap) Value Function Approximation
    1. 매개변수 w에 대한 목적 함수 J(w)를 정의

22

23 of 121

How to Learn Policy

Policy Gradient?

  • (Recap) Value Function Approximation
    • 매개변수 w에 대한 목적 함수 J(w)를 정의

    • 경사 상승/하강법을 통하여 매개변수 w를 학습

23

24 of 121

How to Learn Policy

Policy Gradient?

  • Policy Gradient

24

25 of 121

How to Learn Policy

Policy Gradient?

  • Policy Gradient
    • 매개변수 𝛉 에 대한 목적 함수 J(𝛉)를 정의

25

26 of 121

How to Learn Policy

Policy Gradient?

  • Policy Gradient
    • 매개변수 𝛉 에 대한 목적 함수 J(𝛉)를 정의
    • 경사 상승/하강법을 통하여 매개변수 𝛉 를 학습

26

27 of 121

How to Learn Policy

Policy Gradient?

  • 궤적Trajectory (= 에피소드Episode), τ

27

28 of 121

How to Learn Policy

Policy Gradient?

  • 궤적Trajectory (= 에피소드Episode), τ

  • 주어진 궤적 τ 에서 얻을 수 있는 총 보상Total reward, r (τ )

28

29 of 121

How to Learn Policy

Policy Gradient?

  • 궤적Trajectory (= 에피소드Episode), τ

  • 주어진 궤적 τ 에서 얻을 수 있는 총 보상Total reward, r (τ )

  • 주어진 정책 π 에 대한 궤적의 생성 확률, π (τ; 𝛉)

29

30 of 121

How to Learn Policy: Objective Function, J(𝛉)

Policy Gradient?

  • 주어진 정책을 따라 에피소드를 생성했을 때 얻을 수 있는 총 보상의 기대값을 최대화하는 매개변수 𝛉를 학습하는 것이 목적

30

31 of 121

How to Learn Policy: Gradient Ascent

Policy Gradient?

  • 최대화 문제이므로 경사 상승법을 적용

31

32 of 121

How to Learn Policy: Policy Gradient Theorem

Policy Gradient?

32

33 of 121

How to Learn Policy: Policy Gradient Theorem

Policy Gradient?

33

34 of 121

How to Learn Policy: Policy Gradient Theorem

Policy Gradient?

34

35 of 121

How to Learn Policy: Policy Gradient Theorem

Policy Gradient?

35

36 of 121

DQN vs. PG: Action Spaces

Policy Gradient?

  • Deep Q-Network: 이산 행동 공간Discrete Action Spaces 내의 각 행동 별로 행동 가치 함수를 출력

36

37 of 121

DQN vs. PG: Action Spaces

Policy Gradient?

  • Deep Q-Network: 이산 행동 공간Discrete Action Spaces 내의 각 행동 별로 행동 가치 함수를 출력

  • 기수Cardinality가 큰 이산 행동 공간이나, 연속 행동 공간Continuous Action Spaces은 다루기 어려움

37

38 of 121

DQN vs. PG: Action Spaces

Policy Gradient?

  • Policy Gradient: 매개변수 𝛉 를 통해 총 보상을 최대화하는 정책을 직접 학습

38

39 of 121

DQN vs. PG: Action Spaces

Policy Gradient?

  • Policy Gradient: 매개변수 𝛉 를 통해 총 보상을 최대화하는 정책을 직접 학습

  • 이산 행동 공간 뿐 아니라 연속 행동 공간Continuous Action Spaces 또한 다룰 수 있음

39

40 of 121

DQN vs. PG: Temporal Correlation

Policy Gradient?

  • Deep Q-Network: Gradient는 보상 및 다음 상태에 대한 가치 함수에 의존적이므로 경험들간의 시간적 연관성Temporal Correlation (및 그로 인한 발산 문제)가 발생하며, 이를 완화하기 위하여 Experience Replay를 활용

40

41 of 121

DQN vs. PG: Temporal Correlation

Policy Gradient?

  • Deep Q-Network: Gradient는 보상 및 다음 상태에 대한 가치 함수에 의존적이므로 경험들간의 시간적 연관성Temporal Correlation (및 그로 인한 발산 문제)가 발생하며, 이를 완화하기 위하여 Experience Replay를 활용

  • Replay Buffer를 위한 추가적인 메모리가 필요

41

42 of 121

DQN vs. PG: Temporal Correlation

Policy Gradient?

  • Policy Gradient: 에피소드 내에서 얻어지는 총 보상을 최대화하는 것이 목적이므로, 경험들간의 시간적 연관성이 없음

42

43 of 121

DQN vs. PG: Temporal Correlation

Policy Gradient?

  • Policy Gradient: 에피소드 내에서 얻어지는 총 보상을 최대화하는 것이 목적이므로, 경험들간의 시간적 연관성이 없음

  • Experience Replay가 필요 없으므로, 메모리 사용량 또한 감소

43

44 of 121

다음 시간에…

  • REINFORCE
    • Monte-Carlo Methods + On-Policy + Policy Gradient 강화 학습 알고리즘을 학습
  • Actor-Critic Methods
    • Value Function Approximation + Policy Gradient를 결합한 강화 학습 기법을 소개

44

45 of 121

인공지능

Policy Gradient Methods

강원대학교 컴퓨터공학과 최우혁

46 of 121

강의 순서

  • Policy Gradient?
  • REINFORCE
  • Actor-Critic Methods
  • Asynchronous Advantage Actor-Critic

46

47 of 121

지난 시간에…

  • Policy Gradient?
    • 매개변수 𝛉를 통해 직접 정책을 학습하는 강화학습 알고리즘
    • 에피소드 내에서 획득되는 총 보상의 양을 최대화하는 것을 목적으로 함
    • Policy Improvement Theorem

    • DQN과 비교했을 때, 연속 행동 공간 또한 다룰 수 있고 메모리 사용량도 적음

47

48 of 121

이번 시간에…

  • Policy Gradient?
  • REINFORCE
    • Monte-Carlo Methods + On-Policy + Policy Gradient 강화 학습 알고리즘을 학습
  • Actor-Critic Methods
    • Value Function Approximation + Policy Gradient를 결합한 강화 학습 기법을 소개
  • Asynchronous Advantage Actor-Critic
  • Other Algorithms

48

49 of 121

REINFORCE

49

50 of 121

(Recap) Objective Function

REINFORCE

  • 에피소드 내에서 얻을 수 있는 총 보상Total Reward의 기대값을 최대화하는 것이 목적

50

51 of 121

(Recap) Gradient Ascent

REINFORCE

  • 총 보상의 기대값을 최대화하기 위하여 경사 상승법을 적용

51

52 of 121

(Recap) Gradient Ascent

REINFORCE

  • 목적 함수의 Gradient

52

53 of 121

(Recap) Gradient Ascent

REINFORCE

  • Policy Improvement Theorem

53

54 of 121

Total Reward to Discounted Return

REINFORCE

  • 현재 타임스텝에 상관 없이 총 보상만을 고려…?

54

55 of 121

Total Reward to Discounted Return

REINFORCE

  • 현재 타임스텝에 상관 없이 총 보상만을 고려…?
  • (지금까지 배웠던대로) 현재 타임스텝에서 가까운 시점에서 받은 보상의 가치를 더 크게 간주하는 것이 더 합리적

55

56 of 121

Total Reward to Discounted Return

REINFORCE

  • 총 보상 r (τ ) 대신, 할인된 수익 Gt 을 활용

56

57 of 121

REINFORCE, MC Policy-Gradient Control

REINFORCE

57

58 of 121

Variance vs. Bias

REINFORCE

  • Variance: 학습한 가치 함수의 값이 얼마나 분산되어 있는지…?
  • Bias: 학습한 가치 함수의 값이 얼마나 Target과 떨어져 있는지…?
  • 당연히, Variance와 Bias 모두 최소화하는 것이 목적

58

59 of 121

Variance vs. Bias: Monte-Carlo Methods

REINFORCE

  • 에피소드가 종료된 후 관측된 수익을 Target으로 활용
  • 에피소드마다 수익이 천차만별 이므로 Variance ↑
  • 실제 관측된 값으로 학습하므로 Bias ↓

59

60 of 121

Variance vs. Bias: Temporal Difference Learning

REINFORCE

  • 매 타입스텝마다 관측된 보상과 다음 상태에서 얻을 수 있는 수익의 추정치를 Target으로 활용
  • 곧바로 얻어지는 보상과 다음 상태에서 얻을 수 있는 수익의 추정치를 활용하므로 Variance ↓
  • 추정된 값을 활용하므로 학습하므로 Bias ↑

60

61 of 121

Speed and Direction in Update Rule

REINFORCE

61

이동할 방향

이동할 거리

62 of 121

Speed and Direction in Update Rule

REINFORCE

  • 이동할 거리인 수익, Gt,는 매 에피소드마다 천차만별이므로, Variance ↑

62

이동할 방향

이동할 거리

63 of 121

Speed and Direction in Update Rule

REINFORCE

  • 이동할 거리인 수익, Gt,는 매 에피소드마다 천차만별이므로, Variance ↑
  • 이동할 거리를 적당히 보정하여 Variance를 줄이되, 여전히 수익을 최대화하고 싶다면…?

63

이동할 방향

이동할 거리

64 of 121

Baseline Function, b(St )

REINFORCE

  • 상태에만 의존적인 함수 b (St )의 값을 수익에서차감해서 이동할 거리를 보정
  • b (St )는 어떠한 함수여도 상관없으나, 행동과는 상관없어야 함

64

65 of 121

Baseline Function, b(St ): Why State-Dependency?

REINFORCE

65

66 of 121

Baseline Function, b(St ): Why State-Dependency?

REINFORCE

66

67 of 121

Baseline Function, b(St ): Why State-Dependency?

REINFORCE

  • 상태에만 의존적인 Baseline Function을 수익에서 차감해도 Gradient는 동일함

67

68 of 121

Baseline Function, b(St ): Why State-Dependency?

REINFORCE

  • 상태에만 의존적인 Baseline Function을 수익에서 차감해도 Gradient는 동일함
  • 수익을 최대화하는 방향으로 매개변수 𝛉가 학습됨

68

69 of 121

Baseline Function, b(St ): Why State-Dependency?

REINFORCE

  • 수익만을 사용할 때보다 Variance는 상대적으로 감소

69

70 of 121

Baseline Function, b(St ): Why State-Dependency?

REINFORCE

  • 수익만을 사용할 때보다 Variance는 상대적으로 감소
  • 빠르게 매개변수 𝛉가 학습됨

70

71 of 121

Baseline Function, b(St ): State-Value Function

REINFORCE

  • 상태에만 의존적인 대표적인 함수…?

71

72 of 121

Baseline Function, b(St ): State-Value Function

REINFORCE

  • 상태에만 의존적인 대표적인 함수…?
  • 상태 가치 함수

72

73 of 121

Baseline Function, b(St ): : State-Value FA

REINFORCE

  • Policy Gradient가 필요한 문제는 상태 공간도 큰 경우가 많으므로, 상태 가치 함수 또한 함수적으로 근사

73

할인된 수익을 고려하여 정책을 업데이트하기 위하여 추가적으로 보정하는 값

74 of 121

REINFORCE with baseline

REINFORCE

74

75 of 121

Actor-Critic Methods

75

76 of 121

Revisit REINFORCE with Baseline

Actor-Critic Methods

76

주어진 상태에 대해

특정한 행동(을 할 확률)을 학습

Target을 보정

77 of 121

Revisit REINFORCE with Baseline

Actor-Critic Methods

77

정책 함수의 기울기가 0가 되면

매개변수가 수렴

Target과 상태 가치 함수의 추정치 간의 차이가 0이 되면 매개변수가 수렴

78 of 121

Actor-Critic Method!

Actor-Critic Methods

  • 두 종류의 Function Approximator를 활용하는 강화학습 방법

    • Actor: 최적의 정책을 학습
    • Critic: Target을 정확하게 추정

78

79 of 121

Actor-Critic Method: Equivalent Forms

Actor-Critic Methods

79

80 of 121

MC and TD Actor-Critic

Actor-Critic Methods

  • Monte-Carlo Actor-Critic (or, REINFORCE with Baseline)

80

81 of 121

MC and TD Actor-Critic

Actor-Critic Methods

  • Monte-Carlo Actor-Critic (or, REINFORCE with Baseline)

  • Temporal Difference Actor-Critic

81

82 of 121

TD Actor-Critic, TD Policy-Gradient Control

Actor-Critic Methods

82

83 of 121

다음 시간에…

  • Asynchronous Advantage Actor-Critic
    • 여러 개의 에이전트들을 병렬적으로 활용하는 Actor-Critic 방법을 학습

83

84 of 121

인공지능

Policy Gradient Methods

강원대학교 컴퓨터공학과 최우혁

85 of 121

강의 순서

  • Policy Gradient?
  • REINFORCE
  • Actor-Critic Methods
  • Asynchronous Advantage Actor-Critic

85

86 of 121

지난 시간에…

  • REINFORCE
    • 할인된 수익을 최대화 하는 Monte-Carlo Policy Gradient 알고리즘

86

87 of 121

지난 시간에…

  • Actor-Critic Method
    • 두 종류의 Function Approximator를 활용하는 방법

      • Actor: 최적의 정책을 학습
      • Critic: Target을 정확하게 추정

87

88 of 121

이번 시간에…

  • Policy Gradient?
  • REINFORCE
  • Actor-Critic Methods
  • Asynchronous Advantage Actor-Critic
    • 여러 개의 에이전트들을 병렬적으로 활용하는 Actor-Critic 방법을 학습

88

89 of 121

Asynchronous Advantage Actor-Critic

89

90 of 121

Asynchronous Advantage Actor-Critic, A3C?

Asynchronous Advantage Actor-Critic

  • 여러 개의 강화 학습 에이전트가 병렬적으로 환경과 상호작용하면서 매개변수를 비동기적으로 업데이트하는 Actor-Critic 알고리즘
  • Atari 게임들을 대상으로 한 평가에서, Deep Q-Network, Double Deep Q-Network, Deep Q-Network with Prioritized Experience Replay 등 보다 학습 속도 및 성능 측면에서 압도
  • 그 외에도 연속적인 상태-행동 공간을 가지는 로봇 제어 등에서도 효과적

90

91 of 121

Actor-Critic?

Asynchronous Advantage Actor-Critic

  • 정책을 학습하는 Actor, 상태 가치 함수를 학습하는 Critic을 활용
  • Update Rule
    • Actor

    • Critic

91

92 of 121

Advantage (Function)?

Asynchronous Advantage Actor-Critic

  • 주어진 상태에서 행동을 선택 했을때 획득할 수 있는 상대적 수익을 추정하는 함수

  • Temporal Difference Learning의 Error와 (거의) 같은 의미를 가짐

92

93 of 121

Advantage (Function)?

Asynchronous Advantage Actor-Critic

  • Function Approximation의 Advantage Function은 행동 가치 함수를 위한 매개변수와 상태 가치 함수를 위한 매개변수를 모두 학습

93

94 of 121

Advantage (Function)?

Asynchronous Advantage Actor-Critic

  • 연속 행동 공간에서는 행동 가치 함수를 근사하기 어려우므로, 대신 n-Step Return을 활용

94

95 of 121

Advantage (Function)?

Asynchronous Advantage Actor-Critic

  • Update Rule
    • Actor

    • Critic

95

96 of 121

Asynchronous (RL)?

Asynchronous Advantage Actor-Critic

  • 여러 개의 Worker Agent들을 병렬적으로 환경과 상호작용시키면서 Global Agent를 학습시키는 강화학습 기법
    • Worker Agent: 환경과 상호작용하면서 주어진 정책 (및 매개변수)을 평가하고, 새로운 정책으로 업데이트하기 위한 수치 (예. Gradient)를 누적
    • Global Agent: Worker Agent로부터 전달된 수치를 활용하여 정책을 업데이트
  • Policy Gradient 뿐 아니라 일반적인 강화학습 알고리즘에도 활용 가능

96

97 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  1. Global Agent가 가진 초기 매개변수를 Worker Agent들에게 복제

97

98 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  • 각 Worker Agent들은 독립적으로 환경과 일정 횟수 동안 상호작용하면서 매개변수에 대한 Gradient를 누적

98

99 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  • 각 Worker Agent들은 독립적으로 환경과 일정 횟수 동안 상호작용하면서 매개변수에 대한 Gradient를 누적

99

100 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  • Worker Agent는 누적된 Gradient를 Global Agent에게 전달하여 Global Agent의 매개변수를 업데이트

100

101 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  • Worker Agent는 누적된 Gradient를 Global Agent에게 전달하여 Global Agent의 매개변수를 업데이트

101

102 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  • 업데이트된 Global Agent의 매개변수를 Worker Agent에 복제

102

103 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  1. 또 다른 Worker Agent 또한 누적된 Gradient를 Global Agent에 전달하여 매개변수를 업데이트

103

104 of 121

Asynchronous (RL)? Procedures

Asynchronous Advantage Actor-Critic

  • 업데이트된 Global Agent의 매개변수를 Worker Agent에 복제

104

105 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Global Agent의 매개변수가 비동기적으로 업데이트됨

105

106 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Global Agent의 매개변수가 비동기적으로 업데이트됨
  • Worker Agent들이 가지고 있는 매개변수의 값이 서로 다름

106

107 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Global Agent의 매개변수가 비동기적으로 업데이트됨
  • Worker Agent들이 가지고 있는 매개변수의 값이 서로 다름
  • Worker Agent들이 서로 다른 정책으로 환경과 상호작용

107

108 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Global Agent의 매개변수가 비동기적으로 업데이트됨
  • Worker Agent들이 가지고 있는 매개변수의 값이 서로 다름
  • Worker Agent들이 서로 다른 정책으로 환경과 상호작용
  • 다양한 경험들이 생성됨

108

109 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Global Agent의 매개변수가 비동기적으로 업데이트됨
  • Worker Agent들이 가지고 있는 매개변수의 값이 서로 다름
  • Worker Agent들이 서로 다른 정책으로 환경과 상호작용
  • 다양한 경험들이 생성됨
  • 탐험Exploration 강화

109

110 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Worker Agent들은 각자의 정책으로 독립적으로 환경과 상호작용

110

111 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Worker Agent들은 각자의 정책으로 독립적으로 환경과 상호작용
  • 서로 다른 Worker Agent들이 생성하는 경험들 간의 의존성이 적음

111

112 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Worker Agent들은 각자의 정책으로 독립적으로 환경과 상호작용
  • 서로 다른 Worker Agent들이 생성하는 경험들 간의 의존성이 적음
  • 경험들 간의 시간적 의존성Temporal Correlation 완화

112

113 of 121

Asynchronous (RL)? Effect

Asynchronous Advantage Actor-Critic

  • Worker Agent들은 각자의 정책으로 독립적으로 환경과 상호작용
  • 서로 다른 Worker Agent들이 생성하는 경험들 간의 의존성이 적음
  • 경험들 간의 시간적 의존성Temporal Correlation 완화
  • 학습 속도 증가

113

114 of 121

Pseudocode

Asynchronous Advantage Actor-Critic

114

115 of 121

Inconsistency of Gradients in A3C

Asynchronous Advantage Actor-Critic

  1. Global Agent의 매개변수 w(k)를 Worker Agent 1, 2의 매개변수 w1(k), w2(k)로 복제
  2. 각 Worker Agent는 환경과 상호작용하며 Gradient를 누적: △w1(k), △w2(k)
  3. Worker Agent 1이 먼저 Global Agent의 매개변수를 업데이트: w(k+1) = w(k) + △w1(k)
  4. 이 후, Worker Agent 2가 Global Agent의 매개변수를 업데이트: w(k+2) = w(k+1) + △w2(k)

115

116 of 121

Inconsistency of Gradients in A3C

Asynchronous Advantage Actor-Critic

  • w(k+2) = w(k+1) + △w2(k)?

116

117 of 121

Inconsistency of Gradients in A3C

Asynchronous Advantage Actor-Critic

  • w(k+2) = w(k+1) + △w2(k)?
    • Worker Agent 2가 매개변수 w(k)로 환경과 상호작용해서 누적한 Gradient △w2(k)을 Worker Agent에 의해 이미 업데이트 된 매개변수 w(k+1)를 업데이트하는 데 활용
    • 엄밀히 말하면, Worker Agent 2의 정확한 Gradient는 w(k+1)로 환경과 상호작용해서 누적한 Gradient △w2(k+1)가 되어야 함

117

118 of 121

(Synchronous) Advantage Actor-Critic

Asynchronous Advantage Actor-Critic

  • 모든 Worker Agent가 동기적으로 Global Agent의 매개변수를 업데이트하는 강화학습 알고리즘

118

119 of 121

(Synchronous) Advantage Actor-Critic

Asynchronous Advantage Actor-Critic

  • 모든 Worker Agent가 동기적으로 Global Agent의 매개변수를 업데이트하는 강화학습 알고리즘
  • 모든 Worker Agent가 같은 정책을 가짐

119

120 of 121

참고 자료

120

121 of 121

다음 시간에…

  • 24. 12. 12 (목): 휴강
    • 시험 공부 잘 하세요 :)
  • 24. 12. 16 (월): Team Competition Round 3 (Early-Bird Slot)
    • ICN, 함성준, 이호준 ,파워레인저 정글포스, 쵸코비, K&L, A, 제주
  • 24. 12. 19 (목): Team Competition Round 3 (Regular-Bird Slot)
    • 미배정, 나또진, 김다원, 임재은, 학교 앞 고속도로, 파워레인저 매직포스, Team3, 우직하게

121