Action-value Methods
A k-armed Bandit Problem 에서 우리의 목적은 Value of the action (Expected total reward)를 최대화 하는 것이다.
목적을 달성하기 위해서 우리는 참 값인 Value of the action을 모르기 때문에 추정을 통해서 계산한다. 참 값인 Value of the action을 \(q_*(a)\)로 denote하고 추정값인 Value of the action을 \(Q_t(a)\)로 denote한다. 추정된 Value of the action값을 이용하여 action selection decesion을 내리는 것을 Action-value methods라고 한다.
그렇다면, Value of the action을 어떻게 추정하는지에 대해서 알아보자. Value of the action의 의미를 되짚어보면 특정한 Action은 선택하였을 때 얻는 Mean reward이다.
Mean reward는 아래와 같이 계산할 수 있다.
즉, 시각 t 이전에 action ‘a’를 취해서 얻은 모든 reward의 합 나누기 시각 t 이전에 action ‘a’를 취한 횟수.
\(Q_t(a)\)의 분모가 0일 경우에는 \(Q_t(a)\)를 0과 같은 특정 default 값으로 설정한다. 반대로 \(Q_t(a)\)의 분모가 무한대일 경우에는 결국 무한대만큼의 sampling을 수행한 결과이므로 이는 결국 \(q_*(a)\)에 수렴한다. 이 방법을 통해 Value of the action을 추정하는 것을 Sample-average method라 한다.
Sample-average method는 action values를 추정하기 위한 하나의 방법이지, 다른 방법들도 더 많이 있다.
Greedy Action Selection
위에서 정의한 \(Q_t(a)\)를 이용하여 선택 가능한 actions들 중에서 가장 높은 추정 값을 선택하는 것이 Greedy Action Selection이다.
\(argmax(Q_t(a))\)를 이용하여 action selection을 수행하게 되면 A k-armed Bandit Problem에서 정의한 Greedy action만 선택하는 Exploiting을 한다.
A k-armed Bandit Problem에서 언급한 것 처럼 Exploiting과 Exploring의 balance를 찾는 것은 강화학습에서 중요한 연구분야 중 하나이다.
ε-greedy methods
Exploiting만 수행을 하게되면 long term으로 학습 결과를 기대할 때 높은 결과를 얻지 못 할 수도 있다. 따라서 Exploring을 수행하기 위해서 ε 만큼의 작은 확률로 randomly하게 action을 선택하게끔 하는 방법이 ε-greedy methods이다.
ε 만큼의 확률로 randomly하게 action을 선택하게끔 하므로 Exploring과 Exploiting의 balance를 맞추는 하나의 방법이다.