汎用ゲームプレイ(GGP )は、人工知能プログラムを設計して、複数のゲームを正常にプレイできるようにすることです。[1] [2] [3]チェスなどの多くのゲームでは、コンピューターは特別に設計されたアルゴリズムを使用してこれらのゲームをプレイするようにプログラムされており、このアルゴリズムを別のコンテキストに転送することはできません。たとえば、チェスをプレイするコンピュータープログラムはチェッカーをプレイできません。汎用ゲームプレイは、人工汎用知能への道の必要なマイルストーンと考えられています。[4]
一般的なビデオゲームのプレイ (GVGP )は、ビデオゲームをプレイする目的に合わせて調整されたGGPの概念です。ビデオゲームの場合、ゲームのルールは、TD-Gammon [5]のような人工プレイヤーによって複数回の反復で学習されるか、従来のGGPのようにドメイン固有の言語で手動で事前定義され、人工プレイヤーに事前に送信される必要があります[6] [7]。2013年以降、深層強化学習アプローチに従って大きな進歩が遂げられ、 Atari 2600ゲームのプレイを学習できるプログラム[8] [5] [9] [10] [11]やNintendo Entertainment Systemゲームのプレイを学習できるプログラムの開発が行われました。[12] [13] [14]
汎用ゲーム技術の最初の商用利用は1998年のZillions of Gamesでした。汎用ゲーム技術は、2003年以降、オンラインオークションでの価格交渉において、サプライチェーン管理におけるトレーディングエージェント向けにも提案されました。 [15] [16] [17] [18]
歴史
1992年、バーニー・ペルはメタゲームプレイの概念を定義し、「MetaGame」システムを開発した。これはチェスのようなゲームのゲームルールを自動的に生成する最初のプログラムであり、自動ゲーム生成を使用する最も初期のプログラムの1つであった。ペルはその後、Metagamerシステムを開発した。[19]このシステムは、ゲーム記述言語(GDL)と呼ばれる特別な言語でゲームルールを定義して、ゲームが生成されると人間の介入なしに、チェスのような多くのゲームをプレイすることができた。[20]
1998年、ジェフ・マレットとマーク・レフラーが商用システム「Zillions of Games」を開発した。このシステムはLISPのような言語を使用してゲームルールを定義した。Zillions of Gamesは、駒の移動性、盤の構造、ゲームの目標に基づいて、ゲームルールから評価関数を自動的に導出した。また、コンピュータチェスシステムに見られる通常のアルゴリズム(移動順序によるアルファベータプルーニング、転置表など)も採用した。 [21] このパッケージは2007年に拡張され、完全なForthベースのプログラミング言語を組み込んだ代替メタゲームエンジンであるAxiomプラグインが追加されました。
1998年、Urs Fischbacherによってz-Treeが開発されました。[22] z-Treeは実験経済学のための最初の、そして最も引用されているソフトウェアツールです。z-Treeは、人間を対象とするゲーム理論的実験のためのゲームルールをz-Tree言語で定義することを可能にします。また、人間を対象とするゲームに参加するコンピュータプレイヤーを定義することもできます。[23]
2005年にスタンフォード・プロジェクト・ジェネラル・ゲーム・プレイングが設立されました。[3]
2012年にPyVGDLの開発が開始されました。[24]
GGPの実装
スタンフォードプロジェクト
General Game Playingは、カリフォルニア州スタンフォード大学のスタンフォードロジックグループのプロジェクトであり、一般的なゲームをプレイするためのプラットフォームを作成することを目的としています。これは、GGP AIを標準化するための最も有名な取り組みであり、一般的にGGPシステムの標準と見なされています。ゲームは、ゲーム記述言語で表現された一連のルールによって定義されます。ゲームをプレイするために、プレーヤーはゲームホスティングサーバー[25] [26]と対話します。ゲームホスティングサーバーは、動きの合法性を監視し、状態の変化をプレーヤーに通知します。
2005 年以来、 AAAIカンファレンスでは毎年、一般ゲーム プレイ コンテストが開催されています。このコンテストでは、各ゲームでのパフォーマンスを記録し、参加者の AI がさまざまなゲームをプレイする能力を審査します。コンテストの第 1 段階では、参加者は、合法的な動きを実行し、優位に立つ能力、ゲームをより速く完了する能力について審査されます。次の決勝ラウンドでは、AI はますます複雑なゲームで互いに対戦します。この段階で最も多くのゲームに勝った AI がコンテストに勝利し、2013 年までその作成者は 10,000 ドルの賞金を獲得していました。[19]これまでに、次のプログラムが優勝しました。[27]
その他のアプローチ
他にも、ゲーム ルールを定義するために独自の言語を使用する一般的なゲーム プレイ システムがあります。その他の一般的なゲーム プレイ ソフトウェアには、次のものがあります。
GVGPの実装
強化学習
GVGPは、実際のビデオゲームAIを自動的に作成するだけでなく、「手続き型コンテンツ生成を使用して自動的に作成されたものを含むゲーム環境をテストし、人間のプレイヤーが悪用する可能性のあるゲームプレイの潜在的な抜け穴を見つける」ためにも使用できる可能性があります。[7] GVGPは、ゲームルールを生成したり、ゲームが許可する優れたAIと悪いAIのスキルの差別化を比較する相対アルゴリズムパフォーマンスプロファイル(RAPP)に基づいてゲームの品質を推定したりするためにも使用されています。[42]
ビデオゲームの説明言語
汎用ビデオゲームAIコンペティション(GVGAI)は2014年から開催されている。このコンペティションでは、GGPコンペティションで使用されるボードゲームの代わりに、1980年代のアーケードゲームやコンソールゲームに似た(場合によっては1980年代のゲームをベースにした)2次元ビデオゲームが使用される。研究者や実務家が、最良の汎用ビデオゲームプレイアルゴリズムをテストして比較する方法を提供している。このコンペティションには、ビデオゲーム記述言語(VGDL)で書かれた多数のゲームを含む関連ソフトウェアフレームワークがある。VGDLはGDLと混同しないように注意すべきであり、簡単に解析できる単純なセマンティクスとコマンドを使用するコーディング言語である。VGDLの1つの例は、2013年に開発されたPyVGDLである。[6] [24] GVGPで使用されるゲームは、今のところ、最も単純で定量化しやすい2次元アーケードゲームであることが多い。[43]ビデオゲームを解釈できるAIを作成するプロセスを簡素化するために、この目的のためのゲームは手動でVGDLで書かれている。[説明が必要] VGDLは、アンサーセットプログラミング(ASP)と進化アルゴリズム(EA)を使用して、特にレベルの手続き型生成に特化したゲームを記述するために使用できます。その後、GVGPを使用して、エージェントのパフォーマンスに基づいて、手続き型のレベルの妥当性、およびレベルの難易度や品質をテストできます。[44]
アルゴリズム
GGP AIは複数のゲームをプレイできるように設計する必要があるため、特定のゲーム専用に作成されたアルゴリズムに頼ることはできません。代わりに、AIは、その方法が幅広いゲームに適用できるアルゴリズムを使用して設計する必要があります。また、AIは、以前の状態の出力ではなく、現在の状態に適応できる継続的なプロセスである必要があります。このため、オープンループ技術が最も効果的であることがよくあります。[45]
GGP AIを開発するための一般的な方法は、モンテカルロ木探索(MCTS)アルゴリズムです。[46] UCT法(木に適用される上側信頼境界)と一緒に使用されることが多いMCTSのバリエーションは、特定のゲームをより良くプレイするため、およびビデオゲームのプレイと互換性を持たせるために提案されています。[47] [48] [49]使用される木探索アルゴリズムの別のバリエーションは、有向幅優先探索(DBS)です。[50]これは、利用可能なアクションごとに現在の状態への子ノードを作成し、ゲームが終了するか時間切れになるまで、平均報酬が最も高い順に各子を訪問します。[51]各木探索方法では、AIは潜在的なアクションをシミュレートし、獲得したポイントの観点から、各パスの平均最高報酬に基づいてそれぞれをランク付けします。[46] [51]
仮定
ゲームとやりとりするためには、アルゴリズムはゲームが共通の特徴を共有しているという仮定の下で動作する必要がある。著書『Half-Real: Video Games Between Real Worlds and Fictional Worlds』で、Jesper Juul はゲームを次のように定義している。「ゲームはルールに基づいており、結果は変動し、結果が異なれば価値も異なり、プレイヤーの努力が結果に影響し、プレイヤーは結果に執着し、ゲームの結果は交渉可能である。」[52] これらの仮定を使用して、プレイヤーの入力、ゲームの結果、およびさまざまなルールの適用方法を定量化し、アルゴリズムを使用して最も好ましいパスを計算することで、ゲームをプレイする AI を作成できます。[43]
参照
参考文献
- ^ Pell, Barney (1992). H. van den Herik; L. Allis (eds.). 「メタゲーム:ゲームと学習への新たな挑戦」[人工知能におけるヒューリスティックプログラミング3–第3回コンピュータオリンピック] (PDF)。Ellis-Horwood。2020年2月17日時点のオリジナルからアーカイブ(PDF) 。 2020年2月17日閲覧。
- ^ Pell, Barney (1996). 「一般的なチェスのようなゲームのための戦略的メタゲームプレイヤー」.計算知能. 12 (1): 177–198. doi :10.1111/j.1467-8640.1996.tb00258.x. ISSN 1467-8640. S2CID 996006.
- ^ abジェネセレス、マイケル、ラブ、ナサニエル、ペル、バーニー (2005 年 6 月 15日)。「一般的なゲームのプレイ: AAAI 競技会の概要」。AI マガジン。26 (2): 62。doi : 10.1609 /aimag.v26i2.1813。ISSN 2371-9621 。
- ^ カナン、ロドリゴ; サルゲ、クリストフ; トゲリウス、ジュリアン; ニールン、アンディ (2019)。デジタルゲームの基礎に関する第14回国際会議の議事録[競技場の平等化: AIと人間のゲームベンチマークにおける公平性に関する第14回国際会議の議事録]。pp. 1–8。doi : 10.1145 /3337722。ISBN 9781450372176. S2CID 58599284。
- ^ ab Mnih, Volodymyr; Kavukcuoglu, Koray; Silver, David; Graves, Alex; Antonoglou, Ioannis; Wierstra, Daan; Riedmiller, Martin (2013). 「Playing Atari with Deep Reinforcement Learning」(PDF)。Neural Information Processing Systems Workshop 2013。 2014年9月12日時点のオリジナルよりアーカイブ(PDF) 。2015年4月25日閲覧。
- ^ ab Schaul, Tom (2013 年8 月)。「モデルベースまたはインタラクティブ学習のためのビデオ ゲーム記述言語」。2013 IEEE ゲームにおける計算知能に関する会議 (CIG)。pp . 1–8。CiteSeerX 10.1.1.360.2263。doi : 10.1109 / CIG.2013.6633610。ISBN 978-1-4673-5311-3. S2CID 812565。
- ^ ab Levine, John; Congdon, Clare Bates; Ebner, Marc; Kendall, Graham; Lucas, Simon M.; Miikkulainen, Risto; Schaul, Tom; Thompson, Tommy (2013). 「一般的なビデオゲームのプレイ」。ゲームにおける人工知能と計算知能。6。Schloss Dagstuhl–Leibniz-Zentrum fuer Informatik: 77–83。2016年4月9日時点のオリジナルよりアーカイブ。2015年4月25日閲覧。
- ^ Bowling, M.; Veness, J.; Naddaf, Y.; Bellemare, MG (2013-06-14). 「アーケード学習環境: 汎用エージェントの評価プラットフォーム」. Journal of Artificial Intelligence Research . 47 : 253–279. arXiv : 1207.4708 . doi :10.1613/jair.3912. ISSN 1076-9757. S2CID 1552061.
- ^ ムニフ、ヴォロディミル;カヴククオール、コライ州。シルバー、デイビッド。ルス、アンドレイ A.ヴェネス、ジョエル。ハサビス、デミス。ベルマーレ、マーク G.グレイブス、アレックス。リードミラー、マーティン。フィジェランド、アンドレアス K.スティグ・ピーターセン、ゲオルグ・オストロフスキー。ビーティ、チャールズ。サディク、アミール。アントノグルー、イオアニス。キング、ヘレン。クマラン、ダルシャン。ヴィアストラ、ダーン。レッグ、シェーン(2015年2月26日)。 「深層強化学習による人間レベルの制御」。自然。518 (7540): 529–533。Bibcode :2015Natur.518..529M。土井:10.1038/nature14236. PMID 25719670。S2CID 205242740 。
- ^ Korjus, Kristjan; Kuzovkin, Ilya; Tampuu, Ardi; Pungas, Taivo (2014). 「論文「Playing Atari with Deep Reinforcement Learning」の再現」(PDF)。タルトゥ大学。 2014年12月18日時点のオリジナルよりアーカイブ(PDF) 。 2015年4月25日閲覧。
- ^ Guo, Xiaoxiao; Singh, Satinder; Lee, Honglak; Lewis, Richard L.; Wang, Xiaoshi (2014). 「オフライン モンテカルロ ツリー サーチ プランニングを使用したリアルタイム Atari ゲーム プレイのためのディープラーニング」(PDF) 。NIPS Proceedings β。ニューラル情報処理システムに関する会議。2015年 11 月 17 日時点のオリジナルからアーカイブ( PDF) 。2015年4 月 25 日閲覧。
- ^ マーフィー、トム (2013)。「スーパーマリオブラザーズの最初のレベルは、辞書式順序とタイムトラベルを使えば簡単です。その後は少し難しくなります。」(PDF)。SIGBOVIK。2013年4月26日時点のオリジナルよりアーカイブ(PDF) 。2015年4月25日閲覧。
- ^ マーフィー、トム。「learnfun & playfun: NES ゲームを自動化するための一般的なテクニック」。2015 年 4 月 19 日時点のオリジナルよりアーカイブ。2015年4 月 25 日閲覧。
- ^ Teller, Swizec (2013年10月28日). 「第2週: 辞書式順序を使えばスーパーマリオブラザーズのレベル1は簡単」. A geek with a hat . 2015年4月30日時点のオリジナルよりアーカイブ。 2015年4月25日閲覧。
- ^ McMillen, Colin (2003). 「2003 Trading Agent Competition のサプライ チェーン管理ゲームのためのインテリジェント エージェントの開発に向けて」 [ 2003 Trading Agent Competition ] (論文)。修士論文。ミネソタ州ミネアポリス: ミネソタ大学。S2CID 167336006。
- ^ Zhang, Dongmo (2009).一般的なゲーム記述から一般的なトレーディングエージェント向けの市場仕様言語へ[エージェントを介した電子商取引。電子市場向けのトレーディング戦略とメカニズムの設計。 ]. ベルリン、ハイデルベルク: Springer. pp. 259–274. Bibcode :2010aecd.book..259T. CiteSeerX 10.1.1.467.4629 .
- ^ “AGAPE - An Auction LanGuage for GenerAl Auction Players”. AGAPE (フランス語). 2019年3月8日. 2021年8月2日時点のオリジナルよりアーカイブ。2020年3月5日閲覧。
- ^ Michael, Friedrich; Ignatov, Dmitry (2019). 「General Game Playing B-to-B Price Negotiations」(PDF) . CEUR Workshop Proceedings . -2479: 89–99. 2019年12月6日時点のオリジナルよりアーカイブ(PDF) . 2020年3月5日閲覧。
- ^ ab Barney Pell のコンピューターゲームプレイに関する研究、Wayback Machineに 2007-08-12 にアーカイブ。
- ^ 「メタゲームと一般的なゲームのプレイ」。メタゲームと一般的なゲームのプレイ。2001年3月3日時点のオリジナルよりアーカイブ。2016年3月27日閲覧。
- ^ 入手可能: Universal Game Engine Archived 2012-11-03 at the Wayback Machine email to comp.ai.games by Jeff Mallett, 10-Dec-1998.
- ^ 「UZH - z-Tree - Zurich Toolbox for Readymade Economic Experiments」www.ztree.uzh.ch。2016年2月21日時点のオリジナルよりアーカイブ。2020年2月17日閲覧。
- ^ Beckenkamp, Martin; Hennig-Schmidt, Heike; Maier-Rigaud, Frank P. (2007 年 3 月 1 日)。「対称および非対称囚人のジレンマ ゲームにおける協力」。社会科学研究ネットワーク。SSRN 968942 。
- ^ ab シャウル、トム (2020 年 2 月 7 日)。 「schau/py-vgdl」。GitHub。 2018年6月11日のオリジナルからアーカイブ。2020 年2 月 9 日に取得。
- ^ GGP Server Archived 2014-02-21 at the Wayback Machine、一般的なゲームプレイシステムの競争のためのプラットフォーム。
- ^ Dresden GGP Server Archived 2013-04-07 at the Wayback Machine、試合の自動スケジュール機能を備えた一般的なゲーム プレイ システムの競争のためのプラットフォーム。
- ^ 「General Game Playing」www.general-game-playing.de。2008年12月26日時点のオリジナルよりアーカイブ。2008年8月21日閲覧。
- ^ Fluxplayer に関する情報 Archived 2011-07-19 at the Wayback Machine、第 2 回 International General Game Playing コンテスト優勝者。
- ^ CADIAPlayer に関する情報 (2011-07-22 にWayback Machineにアーカイブ) 、第 3 回、第 4 回、および第 8 回国際一般ゲームプレイ コンテスト優勝者に関する詳細情報。
- ^ サンチョは 2014 年の GGP チャンピオンです! Archived 2015-12-22 at the Wayback Machine、2014 年の International General Game Playing コンテストの優勝者。
- ^ Tagiew, Rustam (2009). Filipe, Joaquim; Fred, Ana; Sharp, Bernadette (編). 戦略的相互作用の管理のためのフレームワークに向けて [エージェントと人工知能に関する国際会議の議事録] ( PDF )。ポルトガル、ポルト。pp. 587–590。ISBN 978-989-8111-66-1. 2021年3月9日にオリジナルからアーカイブ(PDF)されました。2021年6月2日に取得。
{{cite book}}: CS1 maint: location missing publisher (link) - ^ タギエフ、ロスタム (2011). Strategische Interaktion realer Agenten Ganzheitliche Konzeptualisierung und Softwarekomponenten einer interdisziplinären Forschungsinfrastruktur (新版)。ザールブリュッケン。ISBN 9783838125121。
{{cite book}}: CS1 maint: location missing publisher (link) - ^ 「Zillions of Games - Who Are We?」www.zillions-of-games.com。 2017年11月15日時点のオリジナルよりアーカイブ。2017年11月16日閲覧。
- ^ 「AiAi Home Page – Stephen Tavener」mrraow.com。2015年9月6日時点のオリジナルよりアーカイブ。2017年11月16日閲覧。
- ^ “Ai Ai announcement thread”. BoardGameGeek . 2017年11月16日時点のオリジナルよりアーカイブ。2017年11月16日閲覧。
- ^ 「The PolyGamo Player Project | Programming Languages and General Players for Abstract Games and Puzzles」www.polyomino.com。2002年9月23日時点のオリジナルよりアーカイブ。2017年11月16日閲覧。
- ^ コワルスキー、ヤクブ;ミカ、マクシミリアン。ストヴィッチ、ヤクブ。シクワ、マレク (2019-07-17)。 「普通のボードゲーム」。人工知能に関する AAAI 会議の議事録。33 (1): 1699 ~ 1706 年。土井:10.1609/aaai.v33i01.33011699。ISSN 2374-3468。S2CID 20296467。
- ^ コワルスキー、ヤクブ;ミルニク、ラドスロー。ミカ、マクシミリアン。パヴリク、ヴォイチェフ。ストヴィッチ、ヤクブ。シクラ、マレク。アンジェイ・トカチク(2020)。 「通常のボードゲームでの効率的な推理」。2020 IEEE ゲーム会議 (CoG)。 455–462ページ。arXiv : 2006.08295。土井:10.1109/cog47356.2020.9231668。ISBN 978-1-7281-4533-4. S2CID 219687404 . 2023年11月19日閲覧。
- ^ 「Ludii Portal | Ludii General Game System のホームページ」www.ludii.games。 2021年10月27日時点のオリジナルよりアーカイブ。2021年10月27日閲覧。
- ^ 「デジタル Ludeme プロジェクト | 伝統的なゲームの進化のモデル化」www.ludeme.eu。2021 年 10 月 2 日時点のオリジナルよりアーカイブ。2021 年 10 月 27 日閲覧。
- ^ Piette, E.; Soemers, DJNJ; Stephenson, M.; Sironi, C.; Stephenson, M.; Winands MHM; Browne, C. (2020). 「Ludii – The Ludemic General Game System」(PDF)。欧州人工知能会議(ECAI 2020)、サンティアゴ・デ・コンペステーラ。 2022年1月21日時点のオリジナルよりアーカイブ(PDF) 。 2021年10月27日閲覧。
- ^ Nielsen, Thorbjørn S.; Barros, Gabriella AB; Togelius, Julian; Nelson, Mark J. 「VGDL によるアーケード ゲーム ルールの生成に向けて」(PDF) 。2015年 9 月 12 日のオリジナルからアーカイブ(PDF) 。2018 年 2 月 24 日閲覧。
- ^ ab Levine, John; Congdon, Clare Bates; Ebner, Marc; Kendall, Graham; Lucas, Simon M.; Miikkulainen Risto, Schaul; Tom, Thompson; Tommy. 「一般的なビデオゲームのプレイ」(PDF) 。 2016年4月18日時点のオリジナルよりアーカイブ(PDF) 。 2016年4月9日閲覧。
- ^ Neufeld, Xenija; Mostaghim, Sanaz; Perez-Liebana, Diego。「一般的なビデオゲームプレイのための回答セットプログラミングによる手続き型レベル生成」(PDF) 。 2016年3月28日時点のオリジナルからアーカイブ(PDF) 。2018年2月24日閲覧。
- ^ Świechowski, Maciej; Park, Hyunsoo; Mańdziuk, Jacek; Kim, Kyung-Joong (2015). 「一般的なゲームプレイの最近の進歩」. The Scientific World Journal . 2015. Hindawi Publishing Corporation: 986262. doi : 10.1155/2015/986262 . PMC 4561326. PMID 26380375 .
- ^ ab 「一般的なゲームプレイのためのモンテカルロ木探索」。ResearchGate 。2016年4月1日閲覧。
- ^ Finnsson, Hilmar (2012). 「一般ゲームプレイのための一般化モンテカルロ木探索拡張」。第26回AAAI人工知能会議議事録。2013年10月15日時点のオリジナルよりアーカイブ。 2016年4月9日閲覧。
- ^ Frydenberg, Frederik; Anderson, Kasper R.; Risi, Sebastian; Togelius, Julian. 「一般的なビデオゲームのプレイにおけるMCTSの変更の調査」(PDF) 。 2016年4月12日時点のオリジナルからアーカイブ(PDF) 。 2016年4月9日閲覧。
- ^ M. Swiechowski、J. Mandziuk、YS Ong、「UCT ベースの汎用ゲーム プレイ プログラムのシングル プレイヤー ゲームへの特化」、IEEE Transactions on Computational Intelligence and AI in Games、vol.PP、no.99、pp.1-1 doi :10.1109/TCIAIG.2015.2391232
- ^ 「前のゲームステップからルートノードを変更する」。2021年1月17日にオリジナルからアーカイブ。DBS
:有向幅優先探索(DBS)アルゴリズム
- ^ ab Perez, Diego; Dieskau, Jens; Hünermund, Martin. 「Open Loop Search for General Video Game Playing」(PDF) 。 2016年3月28日時点のオリジナルよりアーカイブ(PDF) 。 2016年4月9日閲覧。
- ^ Jesper Juul. Half-Real: Video Games Between Real Rules and Fictional Worlds. MIT Press、2005年。
外部リンク
- スタンフォード大学の一般的なゲームプレイのホームページ
- GGP.org、GGP.org GitHub ページ、games.stanford.edu も参照してください。
- ドレスデン工科大学が提供する一般的なゲームプレイ リソース。
- スティーブン・タヴナー著『AiAi』
- David M. Bennett による PolyGamo Player プロジェクト
- Axiom Development キットは、Greg Schmidt による、Zillions of Games と互換性のあるメタゲーム開発システムです。
- Palamedes - 汎用ゲームプレイ IDE
- ConvNetJS ディープ Q ラーニング デモ
