2009-12-04 4 views
4

우리 요원이 xx 및 yy 축을 따라 이동할 수있는 방에 있다고 가정 해 봅시다. 각 지점에서 그는 위, 아래, 오른쪽, 왼쪽으로 이동할 수 있습니다. 그래서 우리의 상태 공간은 (x, y)로 정의 될 수 있고 각 점에서의 우리의 행동은 (위, 아래, 오른쪽, 왼쪽)에 의해 주어진다. 우리 요원이 그를 벽에 부딪치게 할 행동을 취하면 우리는 그에게 -1의 부정적인 보상을 줄 것이며 그가 전에 있었던 상태로 되돌려 놓을 것이라고 가정합시다. 그가 방의 중심에서 꼭두각시를 찾으면 그는 +10 보상을 얻습니다.QLearning에서 부정적인 보상

주어진 상태/동작 쌍에 대한 QValue를 업데이트하면 새로운 상태에서 수행 할 수있는 작업이 무엇인지 파악하고 거기에 도달 할 수있는 최대 QValue를 계산하므로 Q (s, a) 현재 상태/동작에 대한 값. 이것이 의미하는 것은 목표 상태 (10, 10)가있는 경우, 주변의 모든 주에서는 더 멀리 떨어지면서 조금 더 작아지는 QValue를 갖게된다는 것입니다. 이제 벽과의 관계에서 똑같은 것이 사실이 아닌 것처럼 보입니다.

에이전트가 벽에 닿았을 때 (그가 (0, 0)의 위치에 있다고 가정하고 UP을했을 때) 그는 그 상태/행동에 대해 -1의 보상을받을 것이므로 Q 값 -1 .

나중에 상태 (0, 1)에 있고 상태 (0,0 0)의 다른 모든 동작을 0으로 가정하면 LEFT 동작의 (0, 1) QValue를 계산할 때 ,

Q([0,1], LEFT) = 0 + gamma * (max { 0, 0, 0, -1 }) = 0 + 0 = 0 

이것은 당신이 긍정적 인 보상 상태를 가질 때 발생하는 반대 가까운 상태로 전파되지 않습니다 벽에 충돌 한 : 그것은에게 다음과 같은 방법을 계산합니다.

내 시야에는 이상하게 보입니다. 처음에 부정적인 보상을주는 주/행동 쌍을 찾는 것이 긍정적 인 보상만큼 좋은 학습 일 것이라고 생각했지만 위에 표시된 예에서 그 진술은 사실로 보지 않습니다. 부정적인 것보다 훨씬 긍정적 인 보상을 고려한 알고리즘에 편향이있는 것으로 보입니다.

QLearning의 예상되는 동작입니까? 나쁜 보상도 긍정적 인 것과 마찬가지로 중요하지 않아야합니까? 이것을위한 "work-arounds"는 무엇입니까?

+0

* 프로그래밍 * 질문입니까, 아니면 * 이론 * 질문입니까? – Sampson

답변

2

당신은 0에서 1로 기본 보상을 증가시켜 부정적인 상을 방지 할 수 있습니다, 10에서 11 골 보상 및 0

-1의 페널티 킥은 Q-학습에 과학 출판물의 톤이있다 그래서 부정적인 피드백을 허용 할 다른 공식이 있다고 확신합니다.

편집 : 내가 수정했기 때문에 앞에서 설명한대로 동작이 변경되지 않습니다. 부정적인 피드백이있는 공식이없는 피드백으로 대체 될 수 있다는 생각이 들었습니다.

당신이 관찰 한 이유는 당신이 당신의 행동 결과 나 상태에 대해 불확실성이 없다는 것입니다. 따라서 당신의 에이전트는 항상 최적의 보상이 있다고 생각하는 행동을 선택할 수 있습니다. (그러므로, 최대 Q- 값은 모든 향후 조치). 이것이 부정적인 피드백이 전파되지 않는 이유입니다. 에이전트는 앞으로 해당 행동을 단순히 피할 것입니다.

그러나 귀하의 모델에는 귀하의 행동에 대한 결과에 대한 불확실성이 포함됩니다 (예 :임의의 방향으로 움직일 확률은 항상 10 %입니다.) 학습 규칙은 가능한 모든 미래 보상에 통합해야합니다 (기본적으로 최대 값을 가중치로 대체). 이 경우 부정적인 피드백도 전파 될 수 있습니다 (이것이 내가 가능해야한다고 생각한 이유입니다 : p). 그러한 모델의 예는 POMDPs입니다.

+0

그건 참 좋은 생각입니다. –

+1

어떻게 생각 하시는지 자세히 설명해 주시겠습니까? 왜냐하면 그렇게하지 않기 때문입니다. 귀하의 경우, 구성 요소 중 일부 (전부는 아님)를 축소하더라도 max()는 1 (기본값)을 표시하게됩니다. –

+0

사실 내가 생각하기에, 에이전트는 (이전의) 부정 보상 상태로 가고 싶습니다. 왜냐하면 0 (qvalue 빈 테이블의 기본값)보다 높기 때문입니다. –

4

음수 피드백은 특정 이동의 유일한 결과 일 때만 전파됩니다.

의도적이든 의도적이든 모르겠습니다.

+0

좋은 결론입니다. –

0

귀하의 질문에 대한 답변은 "강화 학습 : 소개"섹션에서 "최대화 바이어스 및 이중 학습"섹션을 참조하십시오.

"Q-Learing"알고리즘에는 예상 값의 최대 값이 최대 값의 추정값으로 암시 적으로 사용되어 상당한 양의 편향을 유발할 수있는 단점이 있습니다.

"Double Q-Learning"알고리즘은 바이어스 극대화를 피하고 Q_1 (a) 및 Q_2 (a)라고하는 독립적 인 두 가지 추정치를 학습해야하는 질문을 해결할 수 있습니다. 여기에 당신을 위해 의사 코드를 붙여 넣습니다. Double Q-Learning