kevinhughes27/TensorKart

self-driving MarioKart with TensorFlow

解決する課題

TensorKartは、人間の走行サンプルから学習することで、AIエージェントがマリオカート64を自律的に走行することを可能にします。これは、レースコースを走行するために、視覚的なゲーム状態(スクリーンショット)を特定のコントローラー入力にマッピングするという課題に対処するものです。

仕組み

このプロジェクトは行動模倣(behavioral cloning)の手法を採用しており、ユーザーがジョイスティックと画面キャプチャツールを使用して自身のプレイを録画します。これらの画像入力とジョイスティック出力のペアを使用して、TensorFlowとcuDNNを介してモデルを訓練します。訓練後、モデルは gym-mupen64plus 環境にデプロイされ、エミュレータからのリアルタイムのスクリーンショットを処理して、必要なジョイスティックコマンドを予測・実行します。

対象者

模倣学習、ゲームに応用された自動運転のコンセプト、およびTensorFlowの実装に興味のある開発者やAI愛好家。

ハイライト

  • 汎用性: モデルは、たとえデータセットが小さくても、訓練されていないトラックを走行できる可能性があります。
  • Human-in-the-loop: 訓練サンプルを記録および表示するためのツールが含まれています。
  • GPU加速: 高速な訓練を実現するためにcuDNNを利用しています。
  • マニュアルオーバーライド: 再生中に 'LB' ボタンを押し続けることで、人間のプレイヤーがAIのコマンドを上書きできます。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト