9. Continuous control with deep reinforcement learning(DDPG)

Lillicrap, Timothy P., et al. β€œContinuous control with deep reinforcement learning.” arXiv preprint arXiv:1509.02971Β (2015).

Paper Link: https://ar5iv.labs.arxiv.org/html/1509.02971

Abstract에 μžˆλŠ” λ‚΄μš©μ΄ λ³Έ μ•Œκ³ λ¦¬μ¦˜μ„ μ•„μ£Ό 잘 μš”μ•½ν•˜κ³  μžˆλ‹€.

β€œan actor-critic, model-free algorithm based on the deterministic policy gradient that can operate over continuous action spaces.”

말 κ·ΈλŒ€λ‘œ 연속적인 action이 κ°€λŠ₯ν•œ DQN μ•Œκ³ λ¦¬μ¦˜μ΄λ‹€.

1. Introduction

κ³ μ°¨μ›μ˜ observation spaces μ—μ„œ 문제λ₯Ό ν’€ 수 μžˆλŠ” μ•Œκ³ λ¦¬μ¦˜μΈ DQN은 μ΄μ‚°ν™”λœ μ €μ°¨μ›μ˜ action spaces 만 λ‹€λ£° 수 μžˆλ‹€λŠ” ν•œκ³„κ°€ μžˆλ‹€. ν•˜μ§€λ§Œ λŒ€λΆ€λΆ„μ˜ 물리적인 μ œμ–΄κ°€ ν•„μš”ν•œ μˆ˜ν–‰λ™μž‘μ—λŠ” 연속적이고 κ³ μ°¨μ›μ˜ action space κ°€ ν•„μš”ν•˜λ‹€.

DQN 은 Action-value function , 보톡 Q-value 라고 λΆˆλ¦¬λŠ” 값을 μ΅œλŒ€ν™”ν•˜λŠ” action 을 μ„ νƒν•˜κ³ , 이λ₯Ό μ—°μ†μ μœΌλ‘œ μ–»κΈ° μœ„ν•΄μ„œ 반볡적인 μ΅œμ ν™” 과정을 λ§€ timestep λ§ˆλ‹€ μˆ˜ν–‰ν•΄μ•Όν•œλ‹€.

ν˜Ήμ€ 연속적인 곡간을 discretization ν•˜μ—¬λ„ λ˜μ§€λ§Œ, μ‹œμŠ€ν…œμ˜ μžμœ λ„κ°€ 높을 수둝 연산이 λ„ˆλ¬΄ λ§Žμ•„μ§€λŠ” λ¬Έμ œκ°€ μžˆλ‹€. 예λ₯Ό λ“€μ–΄ 7 μžμœ λ„λ₯Ό κ°€μ§€λŠ” μ‹œμŠ€ν…œμ— 의 action 을 μ •μ˜ν•˜λ©΄ 의 경우의 μˆ˜κ°€ 생간닀.

Deep DPG(DDPG) 은 model-free, off-policy actor-critic algorithm, deep function approximators λ₯Ό κ°€μ§€λŠ” μ•Œκ³ λ¦¬μ¦˜μ΄λ‹€.

DDPG 은 actor-critic 방식에 neural function approximators λ₯Ό μ‚¬μš©ν•œ Determinisitc Policy Gradient(DPG) μ•Œκ³ λ¦¬μ¦˜Silver et al., 2014에 DQN 방식(Mnih et al., 2013; 2015)을 ν•©μ³€λ‹€.

DQN 은 replay buffer λ₯Ό ν™œμš©ν•œ off-policy λ°©μ‹μœΌλ‘œ ν•™μŠ΅ν•˜λŠ” λ„€νŠΈμ›Œν¬μ™€ target Q λ„€νŠΈμ›Œν¬λ₯Ό μ΄μš©ν•˜μ—¬ TD backup μ€‘μ—λŠ” target value λ₯Ό κ³ μ •μ‹œν‚€λ„λ‘ ν•˜μ—¬ 기쑴에 λ°œμƒν•˜λŠ” λ”₯λŸ¬λ‹μ„ ν†΅ν•œ Q-function approximation μ—μ„œ λ°œμƒν•˜λŠ” λ¬Έμ œλ“€μ„ ν•΄κ²°ν•˜μ˜€λ‹€.

κ·Έλž˜μ„œ DDQN 은 μ΄λŸ¬ν•œ 방식을 κ·ΈλŒ€λ‘œ μ·¨ν•˜λ˜, batch normalization (Ioffe & Szegedy, 2015)도 λ„μž…ν•˜μ˜€λ‹€.

β‡’ DPG + network with a relay buffer and target Q-network + batch normalization

2. Background

Action-value function 은 μ–΄λ–€ state μ—μ„œ μ·¨ν•œ action 둜 얻을 κΈ°λŒ“κ°’μ΄κ³  κ·Έ μ΄ν›„μ˜ policy 에 λŒ€ν•΄ μ•„λž˜μ™€ 같이 μ •μ˜ν•œλ‹€.

이후 λͺ¨λ“  μ‹œκ°„μ— λŒ€ν•΄ μ •μ˜λœ μœ„ μˆ˜μ‹μ„ Bellman equation κ³Ό discount factor 둜 λ‹€μŒκ³Ό 같이 νšŒκ·€μ μœΌλ‘œ μ •λ¦¬ν•œλ‹€.

λͺ©μ  policy κ°€ deterministic ν•˜λ©΄ 이λ₯Ό 둜 ν‘œν˜„ν•˜κ³  μœ„ μˆ˜μ‹μ— μžˆλŠ” 미래 κΈ°λŒ“κ°’μ„ μ œκ±°ν•΄μ€„ 수 μžˆλ‹€.

μ΄λ ‡κ²Œ 되면 κΈ°λŒ“κ°’μ€ environment μ—λ§Œ μ˜€λ‘œμ§€ μ˜μ‘΄ν•˜κ²Œ λœλ‹€. 즉, λ₯Ό off-policy λ°©μ‹μœΌλ‘œ ν•™μŠ΅ν•  수 있게 λœλ‹€.

off-policy λ°©μ‹μ—μ„œ 주둜 μ‚¬μš©λ˜λŠ” Q-learning (Watkins & Dayan, 1992) 은 greedy ν•œ policy λ₯Ό μ‚¬μš©ν•œλ‹€.

function approximators λ₯Ό 둜 ν‘œν˜„ν•˜μ—¬ μ΅œμ ν™”ν•  loss ν•¨μˆ˜λŠ” μ•„λž˜μ™€ κ°™λ‹€.

이 λ•Œ λŠ” μ•„λž˜μ™€ κ°™λ‹€.

μ΄λŸ¬ν•œ Q-value λ₯Ό μ–»κΈ° μœ„ν•΄ ν•™μŠ΅ 기반의 function approximators λŠ” 크고 λΉ„μ„ ν˜•μ μΈ 데이터λ₯Ό 닀루기 μ–΄λ €μ› μ§€λ§Œ Q-learning μ—μ„œ μ‚¬μš©ν•œ replay buffer 와 target network 둜 λ¬Έμ œλ“€μ„ ν•΄κ²°ν•  수 μžˆμ—ˆλ‹€.

그리고 λ‹€μŒ μ•Œκ³ λ¦¬μ¦˜μ—μ„œλŠ” ν•΄λ‹Ή λ‚΄μš©λ“€μ„ μ°¨μš©ν•˜μ˜€λ‹€.

3. Algorithm

Q-learning 방식을 κ·ΈλŒ€λ‘œ 연속적인 action 곡간에 λ„μž…ν•˜λ©΄ λ₯Ό λ§€ timestep λ§ˆλ‹€ μ΅œμ ν™”ν•΄μ•Όν•˜κ³ , μ΄λŠ” μ‹€μ œ ν™˜κ²½μ—μ„œ μ‚¬μš©ν•˜κΈ°μ— λ„ˆλ¬΄ λŠλ¦¬λ‹€. κ·Έλž˜μ„œ DPG 의 actor-critic 방식을 λ„μž…ν•˜μ˜€λ‹€.

DPG λŠ” state 와 νŠΉμ • action 을 κ²°μ •μ μœΌλ‘œ λ§΅ν•‘ν•˜μ—¬ ν˜„μž¬μ˜ policy λ₯Ό κ΅¬ν•˜λŠ” parameterized actor λ₯Ό μ‚¬μš©ν•œλ‹€.

critic λŠ” Q-learning μ—μ„œμ²˜λŸΌ Bellman equation 을 μ΄μš©ν•΄ ν•™μŠ΅ν•œλ‹€. actorλŠ” μ•„λž˜ chain rule 을 μ΄μš©ν•΄ μ—…λ°μ΄νŠΈ ν•œλ‹€.

Silver et al.(2014) μ—μ„œ policy gradient μž„μ„ 증λͺ…ν•˜μ˜€λ‹€.

λ”°λΌμ„œ μ΄λŸ¬ν•œ DPG 에 NN function approximators λ₯Ό μ‚¬μš©ν•˜μ—¬ 큰 state 와 μ‹€μ‹œκ°„μ˜ action κ³΅κ°„μ—μ„œ ν•™μŠ΅ν•  수 μžˆλ„λ‘ ν•˜μ˜€λ‹€.

RL μ—μ„œ NN 을 μ‚¬μš©ν•˜λŠ” κ²ƒμ˜ 문제점 쀑 ν•˜λ‚˜λŠ” λŒ€λΆ€λΆ„μ˜ μ΅œμ ν™”μ—μ„œ μƒ˜ν”Œλ“€μ΄ 독립적이고, κ· μΌν•˜κ²Œ λΆ„ν¬λ˜μ–΄ μžˆμŒμ„ κ°€μ •ν•œλ‹€.

μ΄λŸ¬ν•œ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ DQN μ—μ„œμ²˜λŸΌ replay buffer λ₯Ό μ‚¬μš©ν•œλ‹€. replay buffer λŠ” κ³ μ •λœ 크기의 μΊμ‹œ 둜 μ •μ˜ν•œλ‹€.

exploration policy 둜 μ–»μ–΄μ§„ transitions κ³Ό tuple κ°€ replay buffer 에 μ €μž₯λœλ‹€. 가득차면 μ˜ˆμ „ 것을 버린닀.

λ§€ timestep λ§ˆλ‹€ λ²„νΌμ—μ„œ κ· μΌν•˜κ²Œ minibatch λ₯Ό μƒ˜ν”Œλ§ν•˜μ—¬ actor 와 critic 을 μ—…λ°μ΄νŠΈν•œλ‹€.

DDPG λŠ” off-policy μ•Œκ³ λ¦¬μ¦˜μ΄μ–΄μ„œ 큰 크기의 replay buffer λ₯Ό κ°€μ§ˆ 수 있고 μ΄λŠ” 관련성이 적인 transitions μ‘°ν•©κ°„μ—μ„œλ„ ν•™μŠ΅μ΄ κ°€λŠ₯ν•˜κ²Œ ν•œλ‹€.

μˆ˜μ‹ (4) 의 Q-learning 을 NN 에 μ μš©ν•˜λŠ” 것은 unstable ν•˜λ‹€. μ΄λŠ” μˆ˜μ‹ (4)μ—μ„œ μ—…λ°μ΄νŠΈλ˜λŠ” κ°€ μˆ˜μ‹ (5)의 target value λ₯Ό κ΅¬ν•˜λŠ”λ°λ„ μ‚¬μš©λ˜μ–΄ μ‰½κ²Œ λ°œμ‚°ν•˜κΈ° λ•Œλ¬Έμ΄λ‹€.

κ·Έλž˜μ„œ λ³Έ λ…Όλ¬Έμ—μ„œλŠ” DQN의 target network 와 μœ μ‚¬ν•˜μ§€λ§Œ actor-critic 을 μœ„ν•΄ μ•½κ°„μ˜ μˆ˜μ •μ„ κ°€ν•˜κ³  β€œsoft” target μ—…λ°μ΄νŠΈλ₯Ό ν•˜μ˜€λ‹€.

λΆ€λ“œλŸ½κ²Œ(=천천히) target value λ₯Ό μ—…λ°μ΄νŠΈ ν•˜κΈ° μœ„ν•΄ actor-critic 을 λ³΅μ œν•œ 와 λ₯Ό μ΄μš©ν•˜μ˜€λ‹€. 이 λ„€νŠΈμ›Œν¬λ“€μ€ target value λ₯Ό κ³„μ‚°ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ˜κ³ , 이 λ•Œμ˜ κ°€μ€‘μΉ˜ λŠ” ν•™μŠ΅λœ λ„€νŠΈμ›Œν¬μ˜ κ°€μ€‘μΉ˜ λ₯Ό 천천히 따라가도둝 ν•˜μ˜€λ‹€.

이둜써, target value κ°€ 천천히 λ³€ν•˜κ²Œ λ˜μ–΄ ν•™μŠ΅μ˜ μ•ˆμ •μ„±μ΄ 컀질 수 μžˆμ—ˆλ‹€.

λ³Έ μ—°κ΅¬μ—μ„œλŠ” critic 이 λ°œμ‚°ν•˜μ§€ μ•Šκ³  ν•™μŠ΅λ˜λ €λ©΄ 와 λͺ¨λ‘ μ•ˆμ •μ μΈ target λ₯Ό κ°€μ Έμ•Ό ν–ˆλ‹€. μ΄λ•Œλ¬Έμ— ν•™μŠ΅μ€ 느렀질 수 μžˆμ§€λ§Œ, μ•ˆμ •μ„±μ΄ 크게 ν–₯μƒλ˜μ—ˆλ‹€κ³  ν•œλ‹€.

그리고 observation μ—μ„œ μ„œλ‘œ λ‹€λ₯Έ 물리 λ‹¨μœ„κ°€ 있고, μ΄λŠ” environment 에 따라 맀번 λ‹€λ₯Ό 것이닀. 이λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ Ioffe & Szegedy, 2015 μ—μ„œ μ‚¬μš©ν•œ batch normalization 을 λ„μž…ν•˜μ˜€λ‹€.

이 방식은 minibatch 에 μžˆλŠ” μƒ˜ν”Œλ“€μ˜ dimension 을 μ •κ·œν™”ν•˜λŠ” 것이닀. λ³Έ μ—°κ΅¬μ—μ„œλŠ” state input κ³Ό λ„€νŠΈμ›Œν¬μ™€ λ„€νŠΈμ›Œν¬μ˜ λͺ¨λ“  λ ˆμ΄μ–΄λ“€μ„ μ •κ·œν™”ν•˜μ˜€λ‹€.

연속적인 action space μ—μ„œλŠ” exploration 이 κ°€μž₯ μ€‘μš”ν•œλ°, off-policy 방식을 ν†΅ν•΄μ„œ ν•™μŠ΅ μ•Œκ³ λ¦¬μ¦˜κ³Ό λ…λ¦½μ μœΌλ‘œ exploration 을 μˆ˜ν–‰ν•  수 μžˆλ‹€. λ³Έ λ…Όλ¬Έμ—μ„œλŠ” actor policy 에 noise λ₯Ό 더해 exploration policy λ₯Ό κ΅¬μ„±ν•˜μ˜€λ‹€.

Value function approximator : https://sumniya.tistory.com/17