-2

표준 7 * 6 보드를 고려하십시오. Q-Learning 알고리즘을 적용하려고한다고 가정합니다. 그것을 적용하기 위해 모든 가능한 상태와 행동을 필요로합니다. 3^(7 * 6) = 150094635296999121이 될 수 있습니다. 이것들을 저장할 가능성이 없으므로, 나는 법적 상태만을 고려하고 있습니다.네 개의 연결하는 모든 법적 국가 - 행동 쌍을 생성하는 방법?

모든 법적 상태 및 조치에 대해 Q (s, a)를 생성하려면 어떻게해야합니까?

이것은 내 숙제가 아닙니다. 나는 보강 알고리즘에 대해 배우려고 노력하고있다. 나는 이틀 만에 이것에 관해 조사해왔다. 내가 얻은 가장 가까운 것은 법적인 국가만을 고려하는 것입니다.

답변

0

설정해야 할 프로세스가 3 개 있습니다. 다음 이동을 생성하는 이동자, 이동 이동 위치를 변경하는 이동자 및 마지막으로 4x4 블록을 일련의 검사를 통해 평가하여 이것이 승자인지 확인합니다. 농담하고 scipy는 이것으로 도울 것입니다.

너비가 0 인 배열을 설정하십시오. 플레이어 1의 움직임은 1로, 플레이어 2의 움직임은 -1로 변경하십시오. 4x4 검사는 x 축과 y 축을 합한 다음 abs (sum (axis)) = 0 인 경우 대각선의 합계입니다. = 4 그러면 끝날 때보 다 일찍 보드를 산출합니다.

이렇게하면 구현에 따라 중복을 만들 수 있으므로이 모든 것을 끝에 세트에 넣으십시오.

** 댓글 및 질문 수정으로 인해 수정.

발전기를 사용해야하며 깊이 우선 탐색이 필요합니다. 42 개의 이동 가능성이있는 모든 상태에 대해 최대 7 개의 가능한 분기가 있습니다. 당신은 오직 승리를하거나 잃어버린 주를 찾고 있습니다 (가장 많은 기억을 취하는 교착 상태를 저장하지 마십시오). 주정부는 각 플레이어에 대해 2 세트의 위치를 ​​갖습니다. 앞으로 나아가서 승리/패배 상태를 찾으면 상태로 값을 저장하고 이전 이동으로 뒤로 이동 한 다음 값을 업데이트하여 저장합니다.

4 가지를 연결하는 데 144 가지 가능한 방법이 있지만 각 상태와 얼마나 많은 상태가 연관되어 있는지 모릅니다. 그래서 당신이 승리하기까지 얼마나 많은 단계를 저장하고 싶은지 잘 모르겠습니다.

+0

1.Done - 다음 이동은 nextMove()에 의해 생성됩니다. 2. 완료 - applyMove (nextMove())에 의해 새로운 상태가 반환됩니다. 3. 완료 - 보드를 가로, 세로, 대각선으로 평가하는 기능이 있습니다. 하지만 내 질문은 이것이 아닙니다. Q-Learning 알고리즘의 첫 단계 인 모든 (합법적 인) 국가 - 행동 쌍이 필요합니다. 질문을 더 명확하게하기 위해 편집했습니다. –