next up previous
Next: B.4 learn モジュール Up: B 主なモジュールと述語の説明 Previous: B.2 encode モジュール

B.3 decide モジュール

 

decide +NBoard, +State, +Q, -Action, -RedQ, -ActFun, -Blank
局面 Board とその状態を表す State、Q値 Q から、 次の手を選択し Action と同一化する。この際、 当該状態の全ての手の情報を含む ActFun および、 Q から ActFun を除いた差分 RedQ、 現在の空きマスリスト Blank も返す。
choose_action +State, +Q, -ActFun, -RedList, -BlankNum
状態 State、Q値 Q から、その状態において選択可能な 全ての手の情報 ActFun を得る。
blanklist +Board, -Blank
局面 Board の空きマスリストを Blank に同一化する。 Board は b/9, d/10 のいずれの形でもよい。
get_value +Blank, +State, +Q, -Action
空きマスリスト Blank と状態番号 State Q値 Q から、 次の手を選択し Action に同一化する。
do +Board, +Action, +OX, -NewNBoard
局面 Board において手 Action を指した後の局面を、 NewNBoard に同一化する。 Board は b/9, d/10 のいずれの形でもよい。



Q-learning により学習を行う Tic-Tac-Toe プログラム