強化学習を使用してトレーニングされ、TensorFlow Liteでデプロイされた、エージェントとのボードゲームをプレイします。
始めましょう
TensorFlow Liteを初めて使用し、Androidを使用している場合は、開始に役立つ次のサンプルアプリケーションを調べることをお勧めします。
あなたは、Android以外のプラットフォームを使用している、または既に精通している場合TensorFlow LiteのAPIは、あなたが私たちの訓練を受けたモデルをダウンロードすることができます。
使い方
このモデルは、ゲームエージェントが「プレーンストライク」と呼ばれる小さなボードゲームをプレイするために構築されています。このゲームとそのルールの迅速な導入のために、これを参照してくださいREADME 。
アプリのUIの下に、人間のプレイヤーと対戦するエージェントを構築しました。エージェントは、ボードの状態を入力として受け取り、64個の可能なボードセルのそれぞれの予測スコアを出力する3層のMLPです。モデルは、政策勾配(強化)を使用して訓練され、あなたがトレーニングコードを見つけることができるここに。エージェントをトレーニングした後、モデルをTFLiteに変換し、Androidアプリにデプロイします。
Androidアプリでの実際のゲームプレイ中に、エージェントがアクションを実行する番になると、エージェントは人間のプレーヤーのボードの状態(下部のボード)を確認します。これには、以前の成功および失敗したストライク(ヒットとミス)に関する情報が含まれています、およびトレーニング済みモデルを使用して、次に攻撃する場所を予測します。これにより、人間のプレーヤーよりも先にゲームを終了できます。
パフォーマンスベンチマーク
パフォーマンスベンチマーク番号が記載ツールで生成され、ここで。
モデル名 | モデルサイズ | 端末 | CPU |
---|---|---|---|
ポリシー勾配 | 84 Kb | Pixel 3(Android 10) | 0.01ms * |
Pixel 4(Android 10) | 0.01ms * |
* 1つのスレッドが使用されます。
入力
モデルは、3-D受け入れfloat32
ボード状態として(1、8、8)のテンソル。
出力
モデルは、2-D返しfloat32
64点の可能な打撃位置の各々の予測スコアのような形状のテンソル(1,64)を。
独自のモデルをトレーニングする
あなたは、変更によって、より大きな/小さなボードに独自のモデルを訓練することができBOARD_SIZE
中でパラメータをトレーニングコード。