IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 株式会社 ディー・エヌ・エーの特許一覧

特開2023-3248電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム
<>
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図1
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図2
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図3
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図4
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図5
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図6
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図7
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図8
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図9
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図10
  • 特開-電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム 図11
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023003248
(43)【公開日】2023-01-11
(54)【発明の名称】電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラム
(51)【国際特許分類】
   A63F 13/67 20140101AFI20221228BHJP
   A63F 13/45 20140101ALI20221228BHJP
【FI】
A63F13/67
A63F13/45
【審査請求】未請求
【請求項の数】11
【出願形態】OL
(21)【出願番号】P 2021104317
(22)【出願日】2021-06-23
(71)【出願人】
【識別番号】599115217
【氏名又は名称】株式会社 ディー・エヌ・エー
(74)【代理人】
【識別番号】110001210
【氏名又は名称】弁理士法人YKI国際特許事務所
(72)【発明者】
【氏名】田中 一樹
(72)【発明者】
【氏名】甲野 佑
(57)【要約】
【課題】複数種の電子ゲームに対して人工知能エージェントの機械学習を容易にする。
【解決手段】ゲームエンジン102、仲介エンジン104及び人工知能エージェント106を備え、仲介エンジン104は、ゲームエンジン102から第1ゲーム情報を受け取り、第1ゲーム情報に複数の要素に分解して人工知能エージェント106において処理可能な第2ゲーム情報として人工知能エージェント106へ出力し、人工知能エージェント106から第3ゲーム情報を受け取り、第3ゲーム情報をゲームエンジン102で処理可能な実行情報に変換してゲームエンジン102へ出力する電子ゲーム提供システム100とする。
【選択図】図1
【特許請求の範囲】
【請求項1】
電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、
第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、
前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンと、
を備え、
前記仲介エンジンは、
前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、
前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、
ことを特徴とする電子ゲーム提供システム。
【請求項2】
請求項1に記載の電子ゲーム提供システムであって、
前記仲介エンジンは、前記第1ゲーム情報を分解して得られた前記複数の要素毎に、前記第2ゲーム情報として前記人工知能エージェントに出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取る処理を逐次的に行うこと特徴とする電子ゲーム提供システム。
【請求項3】
請求項1又は2に記載の電子ゲーム提供システムであって、
前記電子ゲームは、コントローラを使用するゲームであって、
前記複数の要素は、前記コントローラの操作を含むことを特徴とする電子ゲーム提供システム。
【請求項4】
請求項3に記載の電子ゲーム提供システムであって、
前記複数の要素は、前記コントローラの移動キーの操作及び指示キーの操作の少なくとも1つを含むことを特徴とする電子ゲーム提供システム。
【請求項5】
請求項1又は2に記載の電子ゲーム提供システムであって、
前記電子ゲームは、コントローラを使用しないゲームであって、
前記複数の要素は、前記電子ゲームの進行に必要な項目の情報を含むことを特徴とする電子ゲーム提供システム。
【請求項6】
請求項5に記載の電子ゲーム提供システムであって、
前記複数の要素は、前記電子ゲームにおける命令、命令の対象となる対象キャラクタ、キャラクタの移動場所、発動スキル、発動スキルの標的となる標的キャラクタの少なくとも1つを含むことを特徴とする電子ゲーム提供システム。
【請求項7】
電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、
第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、を含む電子ゲーム提供システムにおいて、
前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンを含む電子ゲーム仲介装置であって、
前記仲介エンジンは、
前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、
前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、
ことを特徴とする電子ゲーム仲介装置。
【請求項8】
コンピュータを、
電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、
第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、
前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンと、
を備える電子ゲーム提供システムとして機能させる電子ゲーム提供プログラムであって、
前記仲介エンジンは、
前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、
前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、
ことを特徴とする電子ゲーム提供プログラム。
【請求項9】
電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、
第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、を含む電子ゲーム提供システムにおいて、
コンピュータを、
前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンを含む電子ゲーム仲介装置として機能させる電子ゲーム仲介プログラムであって、
前記仲介エンジンは、
前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、
前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、
ことを特徴とする電子ゲーム仲介プログラム。
【請求項10】
コンピュータを、
電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、
第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、
前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンと、
を備える電子ゲーム提供システムとして機能させる電子ゲーム提供方法であって、
前記仲介エンジンは、
前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、
前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、
ことを特徴とする電子ゲーム提供方法。
【請求項11】
電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、
第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、を含む電子ゲーム提供システムにおいて、
コンピュータを、
前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンを含む電子ゲーム仲介装置として機能させる電子ゲーム仲介方法であって、
前記仲介エンジンは、
前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、
前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、
ことを特徴とする電子ゲーム仲介方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子ゲーム提供システム、電子ゲーム提供方法、電子ゲーム提供プログラム、電子ゲーム仲介装置、電子ゲーム仲介方法及び電子ゲーム仲介プログラムに関する。
【背景技術】
【0002】
従来、電子ゲームをプレイするプレイヤの操作やキャラクタの行動履歴を収集して解析することによって、コンピュータによる電子ゲームのノンプレイヤキャラクタ(NPC)の行動の制御やプレイヤが使用するキャラクタやアイテムとして相応しい戦略を提案する技術が知られている。
【0003】
例えば、プレイヤが操作するキャラクタの動作に基づいて、コンピュータにより操作されるキャラクタの行動制御を高度化させる技術が開示されている(特許文献1)。また、プレイヤによるキャラクタの操作の履歴に基づいて、プレイヤに対して電子ゲームのプレイの改善を指導する技術が開示されている(特許文献2)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2013-247号公報
【特許文献2】特許第6843410号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記のように、電子ゲームをプレイするプレイヤの操作やキャラクタの行動履歴に基づいて、コンピュータによるキャラクタ等の操作を実行したり、プレイヤに対してゲームの戦略等を提案したりする技術は存在していた。しかしながら、従来技術では、電子ゲーム毎に収集する情報が異なり、各電子ゲームに対応した操作や提案を出力するプログラムをそれぞれ作成する必要があった。したがって、プログラムの開発に時間が掛かる等の問題があった。
【課題を解決するための手段】
【0006】
本発明の1つの態様は、電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンと、を備え、前記仲介エンジンは、前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力することを特徴とする電子ゲーム提供システムである。
【0007】
本発明の別の態様は、電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、を含む電子ゲーム提供システムにおいて、前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンを含む電子ゲーム仲介装置であって、前記仲介エンジンは、前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する
ことを特徴とする電子ゲーム仲介装置である。
【0008】
本発明の別の態様は、コンピュータを、電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンと、を備える電子ゲーム提供システムとして機能させる電子ゲーム提供プログラムであって、前記仲介エンジンは、前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力することを特徴とする電子ゲーム提供プログラムである。
【0009】
本発明の別の態様は、電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、を含む電子ゲーム提供システムにおいて、コンピュータを、前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンを含む電子ゲーム仲介装置として機能させる電子ゲーム仲介プログラムであって、前記仲介エンジンは、前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、ことを特徴とする電子ゲーム仲介プログラムである。
【0010】
本発明の別の態様は、コンピュータを、電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンと、を備える電子ゲーム提供システムとして機能させる電子ゲーム提供方法であって、前記仲介エンジンは、前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力することを特徴とする電子ゲーム提供方法である。
【0011】
本発明の別の態様は、電子ゲームを進行させるための制御を行うと共に、前記電子ゲームにおいて実行可能な内容を示す第1ゲーム情報を出力するゲームエンジンと、第2ゲーム情報を受け取り、当該第2ゲーム情報と前記電子ゲームの状態を示すゲーム状態情報を入力として前記電子ゲームにおいて次に実行される内容を示す第3ゲーム情報を出力する人工知能エージェントと、を含む電子ゲーム提供システムにおいて、コンピュータを、前記ゲームエンジンと前記人工知能エージェントとの間における情報のやり取りを仲介する仲介エンジンを含む電子ゲーム仲介装置として機能させる電子ゲーム仲介方法であって、前記仲介エンジンは、前記ゲームエンジンから前記第1ゲーム情報を受け取り、前記第1ゲーム情報に複数の要素に分解して前記人工知能エージェントにおいて処理可能な前記第2ゲーム情報として前記人工知能エージェントへ出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取り、前記第3ゲーム情報を前記ゲームエンジンで処理可能な実行情報に変換して前記ゲームエンジンへ出力する、ことを特徴とする電子ゲーム仲介方法である。
【0012】
ここで、前記仲介エンジンは、前記第1ゲーム情報を分解して得られた前記複数の要素毎に、前記第2ゲーム情報として前記人工知能エージェントに出力し、前記人工知能エージェントから前記第3ゲーム情報を受け取る処理を逐次的に行うことが好適である。
【0013】
また、前記電子ゲームは、コントローラを使用するゲームであって、前記複数の要素は、前記コントローラの操作を含むことが好適である。
【0014】
また、前記複数の要素は、前記コントローラの移動キーの操作及び指示キーの操作の少なくとも1つを含むことが好適である。
【0015】
また、前記電子ゲームは、コントローラを使用しないゲームであって、前記複数の要素は、前記電子ゲームの進行に必要な項目の情報を含むことが好適である。
【0016】
また、前記複数の要素は、前記電子ゲームにおける命令、命令の対象となる対象キャラクタ、キャラクタの移動場所、発動スキル、発動スキルの標的となる標的キャラクタの少なくとも1つを含むことが好適である。
【発明の効果】
【0017】
本発明によれば、複数種の電子ゲームに対して、電子ゲームに使用される情報の形式に依らず人工知能エージェントの機械学習を容易にすることができる。本発明の実施の形態の他の目的は、本明細書全体を参照することにより明らかになる。
【図面の簡単な説明】
【0018】
図1】本発明の実施の形態における電子ゲーム提供システムの構成を示す図である。
図2】本発明の実施の形態におけるゲームエンジンの構成を示す図である。
図3】本発明の実施の形態における仲介エンジンの構成を示す図である。
図4】本発明の実施の形態における人工知能エージェントの構成を示す図である。
図5】本発明の実施の形態におけるゲームエンジン、仲介エンジン及び人工知能エージェントの関係を示す図である。
図6】本発明の実施の形態における人工知能エージェントの学習処理を説明する図である。
図7】本発明の実施の形態における人工知能エージェントの学習処理を説明する図である。
図8】本発明の実施の形態における電子ゲームの提供処理を説明する図である。
図9】本発明の実施の形態における電子ゲームの提供処理を説明する図である。
図10】本発明の実施の形態における電子ゲームの提供処理を説明する図である。
図11】本発明の実施の形態における電子ゲームの提供処理を説明する図である。
【発明を実施するための形態】
【0019】
本発明の実施の形態における電子ゲーム提供システム100は、図1に示すように、ゲームエンジン102、仲介エンジン104及び人工知能エージェント106を含んで構成される。ゲームエンジン102、仲介エンジン104及び人工知能エージェント106は、インターネットやLAN等の情報通信網108を介して互いに情報の送受信が可能に接続される。
【0020】
なお、本実施の形態では、ゲームエンジン102、仲介エンジン104及び人工知能エージェント106はそれぞれ異なるコンピュータにて実現する態様を例に説明するが、ゲームエンジン102、仲介エンジン104及び人工知能エージェント106の2つ以上を組み合わせて同一のコンピュータによって実現してもよい。
【0021】
ゲームエンジン102は、電子ゲーム提供システム100により提供される電子ゲームを実際にプレイヤに対して提供するための装置である。ゲームエンジン102は、後述する人工知能エージェント106によって提供される電子ゲームの戦略に沿ってノンプレイヤキャラクタ(NPC)を操作する処理も行う。ゲームエンジン102は、例えば、一般的なコンピュータ、スマートフォン、タブレット端末等とすることができる。ゲームエンジン102は、図2に示すように、処理部10、記憶部12、入力部14、出力部16及び通信部18を含んで構成される。処理部10は、CPU等の演算処理を行う手段を含む。処理部10は、記憶部12に記憶されているゲームエンジンプログラム(又は電子ゲームのアプリケーション)を実行することによってゲームエンジンとしての機能を実現する。記憶部12は、半導体メモリやメモリカード等の記憶手段を含む。記憶部12は、処理部10とアクセス可能に接続され、ゲームエンジンプログラム、その処理に必要な情報を記憶する。入力部14は、情報を入力する手段を含む。入力部14は、例えば、管理者からの入力を受けるキーボード、タッチパネル、ボタン等を備える。出力部16は、入力情報を受け付けるためのユーザインターフェース画面(UI)等のゲームエンジン102での処理結果を出力する手段を含む。出力部16は、例えば、画像を呈示するディスプレイを備える。通信部18は、情報通信網108を介して、仲介エンジン104及び人工知能エージェント106との情報の通信を行うインターフェースを含んで構成される。通信部18による通信は有線及び無線を問わない。
【0022】
仲介エンジン104は、ゲームエンジン102と人工知能エージェント106との間で情報を仲介する処理を行う。仲介エンジン104は、例えば、一般的なコンピュータとすることができる。仲介エンジン104は、図3に示すように、処理部20、記憶部22、入力部24、出力部26及び通信部28を含んで構成される。処理部20は、CPU等の演算処理を行う手段を含む。処理部20は、記憶部22に記憶されている仲介エンジンプログラムを実行することによってゲームエンジン102と人工知能エージェント106との間で情報を仲介する機能を実現する。記憶部22は、半導体メモリやメモリカード等の記憶手段を含む。記憶部22は、処理部20とアクセス可能に接続され、仲介エンジンプログラム、その処理に必要な情報を記憶する。入力部24は、情報を入力する手段を含む。入力部24は、例えば、管理者からの入力を受けるキーボード、タッチパネル、コンソールボタン等を備える。出力部26は、管理者から入力情報を受け付けるためのユーザインターフェース画面(UI)等を表示する手段を含む。出力部26は、例えば、管理者に対して画像を呈示するディスプレイを備える。通信部28は、情報通信網108を介して、ゲームエンジン102及び人工知能エージェント106との情報の通信を行うインターフェースを含んで構成される。通信部28による通信は有線及び無線を問わない。
【0023】
人工知能エージェント106は、電子ゲームにおけるノンプレイヤキャラクタ(NPC)を操作する処理を学習し、電子ゲームに関する情報の入力に応じてノンプレイヤキャラクタ(NPC)を操作するための情報をゲームエンジン102へ提供する。人工知能エージェント106は、例えば、一般的なコンピュータとすることができる。人工知能エージェント106は、図4に示すように、処理部30、記憶部32、入力部34、出力部36及び通信部38を含んで構成される。処理部30は、CPU等の演算処理を行う手段を含む。処理部30は、記憶部32に記憶されている人工知能エージェントに関する情報を用いて人工知能エージェント106として機能するための処理を行う。本実施の形態では、人工知能エージェント106は、仲介エンジン104を介してゲームエンジン102に対して電子ゲームを進行させるために必要な情報を提供すると共に、電子ゲームにおいてノンプレイヤキャラクタ(NPC)の行動の制御を行う人工知能エージェントとして機能する。記憶部32は、半導体メモリやメモリカード等の記憶手段を含む。記憶部32は、処理部30とアクセス可能に接続され、人工知能エージェント106として機能するための情報、その他の処理に必要な情報を記憶する。例えば、人工知能エージェント106は、例えば、多層ニューラルネットワークを含むモデルで構成される。多層ニューラルネットワークは、各種パラメータ(層構造、各層におけるニューロン構造、各ニューロンの重みあるいはバイアスなど)により定義される。したがって、記憶部32には、人工知能エージェント106のモデルを構成するネットワークに関する各種パラメータ(層構造、各層におけるニューロン構造、各ニューロンの重み係数又はバイアス等)が記憶される。入力部34は、情報を入力する手段を含む。入力部34は、例えば、管理者からの入力を受けるキーボード、タッチパネル、ボタン等を備える。出力部36は、管理者から入力情報を受け付けるためのユーザインターフェース画面(UI)等の人工知能エージェント106での処理に必要な情報を出力する手段を含む。出力部36は、例えば、管理者に対して画像を呈示するディスプレイを備える。通信部38は、情報通信網108を介して、ゲームエンジン102及び仲介エンジン104との情報の通信を行うインターフェースを含んで構成される。通信部38による通信は有線及び無線を問わない。
【0024】
電子ゲーム提供システム100では、図5に示すように、仲介エンジン104を介してゲームエンジン102と人工知能エージェント106との間で情報をやり取りすることによって人工知能エージェント106を学習させる処理及び人工知能エージェント106を用いて電子ゲームを進行させる処理を行う。すなわち、仲介エンジン104は、ゲームエンジン102と人工知能エージェント106との間において、ゲームエンジン102から取得した第1ゲーム情報を人工知能エージェント106において扱い易い形式の第2ゲーム情報に変換して人工知能エージェント106へ入力し、人工知能エージェント106から出力された第3ゲーム情報をゲームエンジン102において電子ゲームを進行させるための形式に実行情報に変換してゲームエンジン102へ出力するシミュレータとして機能する。
【0025】
[人工知能エージェントの学習処理]
以下、人工知能エージェント106の学習処理について説明する。人工知能エージェント106の学習は、ゲームエンジン102において実際に行われた電子ゲームに関する第1ゲーム情報を用いて行われる。人工知能エージェント106の学習の際には、ゲームエンジン102において実行された電子ゲームのプレイの履歴から得られた第1ゲーム情報が用いられる。
【0026】
第1ゲーム情報は、電子ゲームにおける各タイミングにおける状況を示すゲーム状況情報、各タイミングにおけるキャラクタ等の操作履歴を示す操作履歴情報及び各タイミングにおいて次に可能な行動(可能な操作)を示す可能行動情報を含む。
【0027】
第1ゲーム情報は、ゲームエンジン102で実行される電子ゲームのタイプに応じて情報の形式が定められる。電子ゲームのタイプは、例えば、1人プレイタイプ、多人数(2人以上)プレイの完全情報タイプ、多人数プレイの不完全情報タイプ及びリアルタイムタイプが存在する。これらのタイプは、さらにゲーム端末に付属するコントローラを使用するタイプ及びコントローラを使用しないタイプが存在する。以下、電子ゲームのタイプ毎に第1ゲーム情報の例を説明する。
【0028】
1人プレイタイプは、プレイヤが1人でプレイする電子ゲームのタイプである。多人数の完全情報タイプの電子ゲームは、ゲーム画面、(ゲームエンジン102にてプレイヤが見ている画面)、対戦スコア、キャラクタの位置及びその情報(体力、装備等のキャラクタの状態を示すパラメータ)等のゲーム情報並びに操作履歴情報が全公開されており、電子ゲームのプレイヤ全てがこれらの情報を共有して確認できる状況で進行されるゲームである。多人数の不完全情報タイプの電子ゲームは、ゲーム画面、(ゲームエンジン102にてプレイヤが見ている画面)、対戦スコア、キャラクタの位置及びその情報(体力、装備等のキャラクタの状態を示すパラメータ)等のゲーム情報並びに操作履歴情報の少なくとも一部が公開されておらず、電子ゲームのプレイヤが自身の観測した情報以外、他プレイヤが観測・獲得・行動した、これらの情報の少なくとも一部を確認できない状況で進行されるゲームである。リアルタイムタイプの電子ゲームは、上記の1人プレイタイプ、多人数の完全情報タイプ及び不完全情報タイプとは異なり、プレイヤによる操作の有無に関わらずゲームエンジン102によって電子ゲームが進められ、それに対応してプレイヤが操作を行うゲームである。またリアルタイムタイプの場合、プレイヤが一1人か多人数かは問わず、また多人数の場合リアルタイムタイプかつ完全情報タイプの場合、リアルタイムタイプかつ不完全情報タイプというタイプもある。
【0029】
コントローラを使用するタイプの電子ゲームは、コントローラの移動キー(例えば十字キーに含まれる上キー(↑)、下キー(↓)、左キー(←)、右キー(→))を用いてキャラクタやアイテム等の対象物を移動させ、移動させた対象物に対して指示キー(例えば、○キー、×キー、△キー、□キー等)を用いて対象物に対する指示を行う。すなわち、対象物の移動について移動キー(上キー(↑)、下キー(↓)、左キー(←)、右キー(→)等)を用いた指示又は何もしない(-)という指示と、指示キー(○キー、×キー、△キー、□キー等)を用いた指示を順に行うことによって電子ゲームのプレイが進められる。
【0030】
コントローラを使用しないタイプの電子ゲームは、コントローラを用いず、例えば、スマートフォンやタブレット端末等を用いてプレイする電子ゲームである。このようなタイプの電子ゲームでは、十字キーや指示キーを備えたコントローラは使用されず、命令(攻撃、防御、回復等)、命令の対象(敵キャラクタ、味方キャラクタ、アイテム等)、移動場所、発動スキルの組み合わせを選択して指示することによって電子ゲームが進行する。例えば、攻撃と敵キャラクタ、防御、回復と味方キャラクタ、移動場所、発動スキル等の組み合わせを指示することで、その内容に応じて電子ゲームのプレイが進められる。
【0031】
ゲーム状況情報には、例えば、各タイミングにおけるゲーム画面(ゲームエンジン102にてプレイヤが見ている画面)、対戦スコア、キャラクタの位置及びその情報(体力、装備等のキャラクタの状態を示すパラメータ)等の電子ゲームを進行させるために必要な電子ゲームの状況を示す情報が含まれる。操作履歴情報には、電子ゲームの進行に伴う各タイミングにおけるキャラクタ等の操作の対象となる対象物に対する操作の履歴情報が含まれる。また、操作履歴情報は、操作に伴った対象物の電子ゲームでの行動の履歴情報としてもよい。操作履歴情報には、直前の操作や行動のみならず、さらに過去のタイミングにおける操作や行動を含んでもよい。
【0032】
なお、多人数での完全情報タイプの電子ゲームでは、電子ゲームの状況や操作の内容はすべて公開されるので、ゲーム状況情報及び操作履歴情報には公開されているすべてのゲームの状況の情報及び操作履歴を含めることが好適である。一方、多人数での不完全情報タイプの電子ゲームでは、電子ゲームの状況や操作の内容は一部が公開されないので、ゲーム状況情報及び操作履歴情報には公開されていないゲームの状況の情報及び操作履歴を含めないようにすることが好適である。また、リアルタイムタイプの電子ゲームでは、プレイヤの操作の有無に関わらずゲームの状況は変化するので、状況の変化に応じてゲーム状況情報も変更することが好適である。ただし、人工知能エージェント106の学習時には、ゲームエンジン102におけるゲームの進行を一時中断してゲームの状況が変化しないようにしたうえで人工知能エージェント106を学習させるようにしてもよい。
【0033】
可能行動情報には、コントローラを使用するタイプ及びコントローラを使用しないタイプの電子ゲームにおける操作のうち各タイミングおいて可能な操作の候補が含まれる。コントローラを使用するタイプの電子ゲームでは、可能行動情報は、電子ゲームの状況に応じて操作が可能な移動キー及び指示キーの組み合わせの情報が含まれる。例えば、移動キーに含まれる上キー(↑)、下キー(↓)、左キー(←)、右キー(→)及び何もしない(-)のうち現在の電子ゲームの状況において操作可能なキーと、指示キーに含まれる○キー、×キー、△キー、□キー及び何もしない(-)のうち移動キーによって操作された対象物に対して操作可能なキーとの組み合わせを示す情報が含まれる。また、コントローラを使用しないタイプの電子ゲームでは、可能行動情報には、命令と対象の組み合わせのうち各タイミングおいて可能な操作の候補が含まれる。すなわち、命令(攻撃、防御、回復等)、命令の対象(敵キャラクタ、味方キャラクタ、アイテム等)、移動場所、発動スキルの組み合わせのうち各タイミングにおける電子ゲームの状況に応じて可能な組み合わせが可能行動情報とされる。
【0034】
人工知能エージェント106の学習時において、ゲームエンジン102は、過去にプレイされた電子ゲームで得られた第1ゲーム情報を仲介エンジン104へ送信する。仲介エンジン104は、ゲームエンジン102から第1ゲーム情報を受信し、当該第1ゲーム情報を人工知能エージェント106において処理可能な第2ゲーム情報に変換する。そして、仲介エンジン104は、当該第2ゲーム情報を人工知能エージェント106へ出力する。ここで、第2ゲーム情報は、第1ゲーム情報に含まれる情報を人工知能エージェント106の学習及び使用にとって都合のよい形式に変換したものである。
【0035】
図6は、コントローラを使用するタイプの電子ゲームにおける人工知能エージェント106の学習処理を示す。仲介エンジン104は、第1ゲーム情報に含まれるゲーム状況情報及び操作履歴情報を第2ゲーム情報に含めて人工知能エージェント106へ送信する。また、仲介エンジン104は、第1ゲーム情報の可能行動情報に含まれる行動を分解して最小行動単位として第2ゲーム情報に含めて人工知能エージェント106へ送信する。
【0036】
ここで、最小行動単位は、可能行動情報に含まれる行動を分解して最小単位の行動の要素として定義した情報を意味する。例えば、コントローラを使用するタイプの電子ゲームにおいて、可能行動情報は、移動キーの上キー(↑)、下キー(↓)、左キー(←)、右キー(→)、何もしない(-)及び指示キーの○キー、×キー、△キー、□キー等の逐次的な操作の組み合わせである。したがって、上キー(↑)、下キー(↓)、左キー(←)、右キー(→)及び何もしない(-)という移動キーの操作に伴う行動が1つの最小行動単位とされ、指示キーの○キー、×キー、△キー、□キー及び何もしない(-)という操作に伴う行動が別の最小行動単位とされる。
【0037】
仲介エンジン104は、第1ゲーム情報の可能行動情報を分解して最小行動単位とし、当該最小行動単位を最小行動単位の候補を操作される順に逐次的に人工知能エージェント106へ送信する。コントローラを使用するタイプの電子ゲームでは、移動キーの操作の後に指示キーの操作が行われるので、当該操作の順に最小行動単位である移動キーを人工知能エージェント106へ入力して学習を行い、次に別の最小行動単位である指示キーを人工知能エージェント106へ入力して学習を行う。
【0038】
人工知能エージェント106では、仲介エンジン104から入力された第2ゲーム情報に含まれるゲーム状況情報、操作履歴情報及び最小行動単位の情報を用いて電子ゲームの戦略について学習を行う。人工知能エージェント106は、ディープラーニングを用いた方法によって学習される。人工知能エージェント106は、例えば、多層ニューラルネットワークを含んで構成される。多層ニューラルネットワークは、各種パラメータ(層構造、各層におけるニューロン構造、各ニューロンの重みあるいはバイアスなど)により定義される。人工知能エージェント106として、モデルを構成するネットワークに関する各種パラメータ(層構造、各層におけるニューロン構造、各ニューロンの重み係数又はバイアス等)は記憶部32に記憶される。
【0039】
具体的には、人工知能エージェント106では、第2ゲーム情報に含まれるゲーム状況情報、操作履歴情報及び最小行動単位の情報を入力として、電子ゲームにおける勝ち負けやアイテム、得点の獲得などに基づく報酬と定義された数量を用いて最小行動単位に含まれる可能な行動の選択分布を変化させていくように学習が行われる。学習を続けるとその状態の後に得られる累積報酬が高くなるような行動の選択確率が上昇していく。累積報酬は直接的に特定のステップ数、あるいはゲームの終了まで観測した値を用いたり、例えば多層ニューラルネットワークを用いた近似の学習した推論結果を用いたりするのが好適である。
【0040】
例えば、図6(a)に示すように、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である移動キー(上キー(↑)、下キー(↓)、左キー(←)、右キー(→)、何もしない(-))を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である移動キー(上キー(↑)、下キー(↓)、左キー(←)、右キー(→)、何もしない(-))のうち1つを選択して、その後ゲームで得られる報酬が従来より高かったり、高いと推定される場合、その行動の確率が引き上げられるように学習を行う。以上の構成によって、できるだけゲーム全体で高い報酬が得られるように人工知能エージェント106を学習させる。
【0041】
続いて、図6(b)に示すように、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である指示キー(○キー、×キー、△キー、□キー、何もしない(-))を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である指示キー(○キー、×キー、△キー、□キー、何もしない(-))のうち1つを選択して、その後ゲームで得られる報酬が従来より高かったり、高いと推定される場合、その行動の確率が引き上げられるように学習を行う。以上の構成によって、できるだけゲーム全体で高い報酬が得られるように人工知能エージェント106を学習させる。
【0042】
図7は、コントローラを使用しないタイプの電子ゲームにおける人工知能エージェント106の学習処理を示す。この場合、仲介エンジン104は、第1ゲーム情報に含まれるゲーム状況情報及び操作履歴情報を第2ゲーム情報に含めて人工知能エージェント106へ送信する。また、仲介エンジン104は、第1ゲーム情報の可能行動情報に含まれる行動を分解して最小行動単位として第2ゲーム情報に含めて人工知能エージェント106へ送信する。
【0043】
コントローラを使用しないタイプの電子ゲームにおける可能行動情報は、命令(攻撃、防御、回復等)、命令の対象(敵キャラクタ、味方キャラクタ、アイテム等)、移動場所、発動スキルの逐次的な組み合わせである。したがって、命令(攻撃、防御、回復等)、命令の対象(敵キャラクタ、味方キャラクタ、アイテム等)、移動場所、発動スキルがそれぞれ1つの最小行動単位とされる。
【0044】
仲介エンジン104は、第1ゲーム情報の可能行動情報を分解して最小行動単位とし、当該最小行動単位を最小行動単位の候補を操作される順に逐次的に人工知能エージェント106へ送信する。コントローラを使用しないタイプの電子ゲームでは、命令の操作の後に対象となるキャラクタを指定する操作が行われ、対象となるキャラクタを指定する操作の後に移動場所を指示する操作が行われ、移動場所を指示する操作の後に標的となるキャラクタを指定する操作が行われ、標的となるキャラクタを指定する操作の後に標的のキャラクタに対する発動スキルを選択する操作が行われる。したがって、仲介エンジン104は、当該操作の順に命令、対象キャラクタ、移動場所、標的キャラクタ及び発動スキルについて可能な行動を分類してそれぞれ最小行動単位として人工知能エージェント106へ出力する。
【0045】
例えば、図7(a)に示すように、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である命令(攻撃、防御、回復、何もしない等)を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である命令(攻撃、防御、回復、何もしない等)のうち1つを選択して、その後ゲームで得られる報酬が従来より高かったり、高いと推定される場合、その行動の確率が引き上げられるように学習を行う。以上の構成によって、できるだけゲーム全体で高い報酬が得られるように人工知能エージェント106を学習させる。
【0046】
続いて、図7(b)に示すように、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である対象キャラクタ(キャラクタA、キャラクタB・・・)を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である対象キャラクタ(キャラクタA、キャラクタB・・・)のうち1つを選択して、その後ゲームで得られる報酬が従来より高かったり、高いと推定される場合、その行動の確率が引き上げられるように学習を行う。以上の構成によって、できるだけゲーム全体で高い報酬が得られるように人工知能エージェント106を学習させる。
【0047】
同様に、続いて、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である移動場所(場所の座標等)を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である移動場所(場所の座標等)のうち実際に移動した場所の確率と一致するように選択して出力するように人工知能エージェント106の学習が行われる。このとき、実際に選択された命令、対象キャラクタ又は学習時に選択された命令、対象キャラクタの情報をゲーム状況情報として人工知能エージェント106に入力することが好適である。人工知能エージェント106に最小行動単位として入力される移動場所の選択肢は、実際に選択された命令、対象キャラクタ又は学習時に選択された命令及び対象キャラクタとの組み合わせに対して選択が可能な移動場所のみを含むものとすることが好適である。
【0048】
続いて、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である標的キャラクタ(キャラクタX、キャラクタY・・・)を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である標的キャラクタ(キャラクタX、キャラクタY・・・)のうち実際に標的としたキャラクタを選択して、その後ゲームで得られる報酬が従来より高かったり、高いと推定される場合、その行動の確率が引き上げられるように人工知能エージェント106の学習が行われる。このとき、実際に選択された命令、対象キャラクタ、移動場所又は学習時に選択された命令、対象キャラクタ、移動場所の情報をゲーム状況情報として人工知能エージェント106に入力することが好適である。人工知能エージェント106に最小行動単位として入力される標的キャラクタの選択肢は、実際に選択された命令、対象キャラクタ、移動場所又は学習時に選択された命令、対象キャラクタ及び移動場所の組み合わせに対して選択が可能なキャラクタのみを含むものとすることが好適である。
【0049】
さらに、第2ゲーム情報としてゲーム状況情報、操作履歴情報及び最小行動単位である発動スキル(スキルa、スキルb・・・)を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位である発動スキル(スキルa、スキルb・・・)を選択して、その後ゲームで得られる報酬が従来より高かったり、高いと推定される場合、その行動の確率が引き上げられるように人工知能エージェント106の学習が行われる。このとき、実際に選択された命令、対象キャラクタ、移動場所、標的キャラクタ又は学習時に選択された命令、対象キャラクタ、移動場所、標的キャラクタの情報をゲーム状況情報として人工知能エージェント106に入力することが好適である。人工知能エージェント106に最小行動単位として入力される発動スキルの選択肢は、実際に選択された命令、対象キャラクタ、移動場所、標的キャラクタ又は学習時に選択された命令、対象キャラクタ、移動場所及び標的キャラクタの組み合わせに対して選択が可能なスキルのみを含むものとすることが好適である。
【0050】
以上のように、電子ゲーム提供システム100では、ゲームエンジン102と人工知能エージェント106との間に仲介エンジン104を仲介させることによって、ゲームエンジン102から出力される第1ゲーム情報を人工知能エージェント106における学習に適した最小行動単位及び当該最小行動単位の逐次的意思決定の順に分解した第2ゲーム情報に変換して人工知能エージェント106に入力する。これによって、人工知能エージェント106の学習を効率的に行うことができる。また、ゲームエンジン102と人工知能エージェント106との情報のやり取りにおいて互いの情報の形式の依存性を低減させることができる。
【0051】
また、可能行動情報に新たな選択肢が加えられる等の可能行動情報に変更が生じた場合であっても、電子ゲーム提供システム100の構成を変更することなく人工知能エージェント106の学習処理を効果的に行うことが可能になる。
【0052】
例えば、コントローラを使用するタイプの電子ゲームの場合、移動キーが上キー(↑)、下キー(↓)、左キー(←)、右キー(→)だけでなく、斜め方向のキーを有するコントローラを使用する電子ゲームを対象とした場合であっても、仲介エンジン104から人工知能エージェント106へ送信される最小行動単位としての移動キーの選択肢に斜め方向のキーを加えるだけで上記と同様に人工知能エージェント106の学習処理を進めることができる。
【0053】
また、例えば、コントローラを使用しないタイプの電子ゲームにおいて、命令(攻撃、防御、回復)に加えて新たに命令(逃避)が加えられたとしても、仲介エンジン104から人工知能エージェント106へ送信される最小行動単位としての命令の選択肢に逃避を加えるだけで上記と同様に人工知能エージェント106の学習処理を進めることができる。また、電子ゲームに新たなキャラクタが追加された場合、仲介エンジン104から人工知能エージェント106へ送信される最小行動単位としての対象キャラクタや標的キャラクタの選択肢に新たなキャラクタを追加するだけで上記と同様に人工知能エージェント106の学習処理を進めることができる。
【0054】
[電子ゲーム提供処理]
電子ゲーム提供システム100では、上記のように学習された人工知能エージェント106を用いて、ゲームエンジン102において電子ゲームを提供する処理が行われる。以下、人工知能エージェント106を用いた電子ゲームの提供処理について説明する。
【0055】
人工知能エージェント106を用いた電子ゲームの提供処理は、仲介エンジン104を介してゲームエンジン102と人工知能エージェント106との間で電子ゲームを進行させるために必要な情報をやり取りすることによって行われる。
【0056】
図8は、コントローラを使用するタイプの電子ゲームにおける人工知能エージェント106を用いた電子ゲームの提供処理を示す。電子ゲームの開始時には、人工知能エージェント106において初期化が行われ、電子ゲームの開始の指示及び電子ゲームを開始するためにゲームエンジン102に設定することが必要な情報が仲介エンジン104へ送信される。仲介エンジン104は、開始の指示を受けると、電子ゲームを開始するために設定が必要な情報をゲームエンジン102へ送信する。さらに、仲介エンジン104は、ゲーム状況情報、操作履歴情報、可能行動情報を含む第1ゲーム情報の送信を要求する指示をゲームエンジン102へ送信する。
【0057】
ゲームエンジン102は、電子ゲームを開始するために必要な情報を受信し、当該情報に基づいて初期設定を行う。また、ゲームエンジン102は、現在のゲーム画面(ゲームエンジン102にてプレイヤが見ている画面)、対戦スコア、キャラクタの位置及びその情報(体力、装備等のキャラクタの状態を示すパラメータ)等の電子ゲームを進行させるために必要な電子ゲームの状況を示す情報を含むゲーム状況情報、電子ゲームの進行に伴うキャラクタ等に対する操作履歴情報、現在の電子ゲームの状況において可能な操作・行動の候補を示す可能行動情報を第1ゲーム情報として仲介エンジン104へ返信する。
【0058】
仲介エンジン104は、ゲームエンジン102から第1ゲーム情報を受信すると、第1ゲーム情報に含まれる可能行動情報に含まれる操作・行動を分解して最小行動単位を抽出する。コントローラを使用する電子ゲームでは、操作が可能な移動キーの候補が1つの最小行動単位とされ、操作が可能な指示キーの候補が別の最小行動単位とされる。仲介エンジン104は、ゲーム状況情報、操作履歴情報と共に抽出された最小行動単位の情報を第2ゲーム情報として人工知能エージェント106へ送信する。このとき、仲介エンジン104は、最小行動単位を最小行動単位の候補が操作される順に逐次的に人工知能エージェント106へ送信する。具体的には、まず移動キーに関する最小行動単位を第2ゲーム情報に含めて送信する。
【0059】
人工知能エージェント106は、仲介エンジン104から第2ゲーム情報を受信すると、当該第2ゲーム情報に含まれているゲーム状況情報及び操作履歴情報を入力として、ゲーム状況情報及び操作履歴情報に応じて受信した最小行動単位に関する操作・行動を出力する。例えば、人工知能エージェント106は、最小行動単位が移動キー(上キー(↑)、下キー(↓)、左キー(←)、右キー(→)、何もしない(-))である場合、入力されたゲーム状況情報及び操作履歴情報に応じていずれかの移動キーの操作を選択して出力する。例えば、人工知能エージェント106は、ゲーム状況情報及び操作履歴情報に応じて上キー(↑)を選択して出力する。人工知能エージェント106は、選択された操作・行動を第3ゲーム情報として仲介エンジン104へ送信する。
【0060】
仲介エンジン104は、人工知能エージェント106から操作・行動に関する最小行動単位に対する選択の結果を受信すると、指示キーの候補に関する最小行動単位を次の最小行動単位としてゲーム状況情報、操作履歴情報と共に第2ゲーム情報として人工知能エージェント106へ送信する。このとき、仲介エンジン104は、人工知能エージェント106によって既に選択された操作・行動の情報をゲーム状況情報に含めることが好適である。また、最小行動単位に含める指示キーの候補は、人工知能エージェント106によって既に選択された操作・行動に応じて選択可能な指示キーのみを含むようにすることが好適である。例えば、操作・行動の操作キーについて上キー(↑)が選択された場合、ゲーム状況情報及び操作履歴情報に応じて上キー(↑)の次に指示キーとして○キー、×キー、何もしない(-)のみが選択可能であればこれらの指示キーが選択可能である最小行動単位として送信する。
【0061】
人工知能エージェント106は、仲介エンジン104から第2ゲーム情報を受信すると、当該第2ゲーム情報に含まれているゲーム状況情報及び操作履歴情報を入力として、ゲーム状況情報及び操作履歴情報に応じて受信した最小行動単位に関する指示を出力する。例えば、人工知能エージェント106は、最小行動単位において選択可能な指示キー(○キー、×キー、何もしない(-))である場合、入力されたゲーム状況情報及び操作履歴情報に応じていずれかの指示キーの操作を選択して出力する。人工知能エージェント106は、例えば、ゲーム状況情報及び操作履歴情報に応じて×キーを選択して出力する。人工知能エージェント106は、選択された指示を第3ゲーム情報として仲介エンジン104へ送信する。
【0062】
仲介エンジン104は、人工知能エージェント106から指示に関する最小行動単位に対する選択の結果を受信すると、既に受信した操作・行動の選択結果と指示の選択結果を組み合わせてゲームエンジン102で実行可能な指示形式の実行情報に変換する。例えば、第3ゲーム情報として上キー(↑)と×キーを受信した場合、仲介エンジン104は、ゲームエンジン102に対して上キー(↑)の次に×キーを操作することを指示する実行情報を生成する。仲介エンジン104は、実行情報をゲームエンジン102へ送信する。
【0063】
ゲームエンジン102は、仲介エンジン104から実行情報を受信すると、当該実行情報に応じて電子ゲームを進行させる処理を行う。例えば、仲介エンジン104から上キー(↑)の次に×キーを操作することを指示する実行情報した場合、ゲームエンジン102はノンプレイヤキャラクタ(NPC)に対して上キー(↑)の次に×キーが使用されるように電子ゲームを進行させる。ゲームエンジン102を用いて電子ゲームをプレイしているプレイヤは、ノンプレイヤキャラクタ(NPC)の行動に応じて自分のキャラクタを操作することで電子ゲームをプレイすることができる。
【0064】
以下、上記処理を繰り返すことによって電子ゲーム提供システム100における電子ゲームの提供処理が行われる。
【0065】
なお、図9に示すように、仲介エンジン104は、人工知能エージェント106から第3ゲーム情報として選択された操作の情報を受信した際に、当該操作の情報をゲームエンジン102で処理可能な形式に変換して送信し、ゲームエンジン102において当該操作が行われた後に選択可能な指示を含む可能行動情報を仲介エンジン104へ送信するような処理としてもよい。例えば、操作キーについて上キー(↑)が選択された場合、ゲームエンジン102は、電子ゲームの現状状況において上キー(↑)の操作が行われたなら指示キーとして○キー、×キー、何もしない(-)のみが選択可能であればこれらの指示キーを可能行動情報として仲介エンジン104へ送信する。仲介エンジン104は、ゲームエンジン102から受信した可能行動情報に応じて、人工知能エージェント106において処理可能な形式の指示キーの候補に関する最小行動単位としてゲーム状況情報、操作履歴情報と共に第2ゲーム情報として人工知能エージェント106へ送信する。
【0066】
このように、電子ゲーム提供システム100において電子ゲームの進行に必要な可能行動情報について、人工知能エージェント106から選択が行われる毎に仲介エンジン104を仲介としてゲームエンジン102に送信して次の可能行動情報を得るようにしてもよい。このような態様においても電子ゲーム提供システム100において電子ゲームの提供処理を実現することができる。
【0067】
図10は、コントローラを使用しないタイプの電子ゲームにおける人工知能エージェント106を用いた電子ゲームの提供処理を示す。電子ゲームの開始時には、人工知能エージェント106において初期化が行われ、電子ゲームの開始の指示及び電子ゲームを開始するためにゲームエンジン102に設定することが必要な情報が仲介エンジン104へ送信される。仲介エンジン104は、開始の指示を受けると、電子ゲームを開始するために設定が必要な情報をゲームエンジン102へ送信する。さらに、仲介エンジン104は、ゲーム状況情報、操作履歴情報、可能行動情報を含む第1ゲーム情報の送信を要求する指示をゲームエンジン102へ送信する。
【0068】
ゲームエンジン102は、電子ゲームを開始するために必要な情報を受信し、当該情報に基づいて初期設定を行う。また、ゲームエンジン102は、現在のゲーム画面(ゲームエンジン102にてプレイヤが見ている画面)、対戦スコア、キャラクタの位置及びその情報(体力、装備等のキャラクタの状態を示すパラメータ)等の電子ゲームを進行させるために必要な電子ゲームの状況を示す情報を含むゲーム状況情報、電子ゲームの進行に伴うキャラクタ等に対する操作履歴情報、現在の電子ゲームの状況において可能な操作・行動の候補を示す可能行動情報を第1ゲーム情報として仲介エンジン104へ返信する。
【0069】
仲介エンジン104は、ゲームエンジン102から第1ゲーム情報を受信すると、第1ゲーム情報に含まれる可能行動情報を分解して最小行動単位を抽出する。コントローラを使用しない電子ゲームでは、例えば、命令、対象キャラクタ、移動場所、標的キャラクタ、発動スキルがそれぞれ1つの最小行動単位とされる。すなわち、攻撃、防御、回復等の命令を選択した後にその対象となる対象キャラクタを選択し、さらに対象キャラクタを移動させる移動場所を選択し、さらに標的キャラクタを選択した後にその標的キャラクタに対して発動させる発動スキルを選択するように最小行動単位が設定される。仲介エンジン104は、ゲーム状況情報、操作履歴情報と共に抽出された最小行動単位の情報を第2ゲーム情報として人工知能エージェント106へ送信する。このとき、仲介エンジン104は、上記順で最小行動単位を逐次的に人工知能エージェント106へ送信する。具体的には、まず選択可能な命令に関する最小行動単位を第2ゲーム情報に含めて送信する。
【0070】
人工知能エージェント106は、仲介エンジン104から第2ゲーム情報を受信すると、当該第2ゲーム情報に含まれているゲーム状況情報及び操作履歴情報を入力として、ゲーム状況情報及び操作履歴情報に応じて最小行動単位に関する選択結果を出力する。例えば、人工知能エージェント106は、最小行動単位が命令(攻撃、防御、回復等)である場合、入力されたゲーム状況情報及び操作履歴情報に応じていずれかの命令を選択して出力する。例えば、人工知能エージェント106は、ゲーム状況情報及び操作履歴情報に応じて「攻撃」の命令を選択して出力する。人工知能エージェント106は、選択された命令を第3ゲーム情報として仲介エンジン104へ送信する。
【0071】
仲介エンジン104は、人工知能エージェント106から命令に関する最小行動単位に対する選択の結果を受信すると、次の対象キャラクタに関する最小行動単位をゲーム状況情報、操作履歴情報と共に第2ゲーム情報として人工知能エージェント106へ送信する。このとき、仲介エンジン104は、人工知能エージェント106によって既に選択された命令の情報をゲーム状況情報に含めることが好適である。また、最小行動単位に含める対象キャラクタの候補は、人工知能エージェント106によって既に選択された命令に応じて選択可能なキャラクタのみを含むようにすることが好適である。例えば、攻撃の命令が選択された場合、ゲーム状況情報及び操作履歴情報に応じて攻撃の対象となり得るキャラクタのみを対象キャラクタの最小行動単位として送信する。
【0072】
人工知能エージェント106は、仲介エンジン104から第2ゲーム情報を受信すると、当該第2ゲーム情報に含まれているゲーム状況情報及び操作履歴情報を入力として、ゲーム状況情報及び操作履歴情報に応じて対象キャラクタに関する最小行動単位について選択を行う。例えば、人工知能エージェント106は、最小行動単位においてキャラクタA及びキャラクタBが選択可能である場合、入力されたゲーム状況情報及び操作履歴情報に応じてキャラクタA及びキャラクタBのいずれかを選択して出力する。人工知能エージェント106は、例えば、ゲーム状況情報及び操作履歴情報に応じてキャラクタAを選択して出力する。人工知能エージェント106は、選択された指示を第3ゲーム情報として仲介エンジン104へ送信する。
【0073】
仲介エンジン104は、人工知能エージェント106から対象キャラクタに関する最小行動単位に対する選択の結果を受信すると、次の移動場所に関する最小行動単位をゲーム状況情報、操作履歴情報と共に第2ゲーム情報として人工知能エージェント106へ送信する。以下、同様に、仲介エンジン104において逐次的に移動場所、標的キャラクタ、発動スキルを最小行動単位として第2ゲーム情報に含めて人工知能エージェント106へ送信され、人工知能エージェント106においてゲーム状況情報及び操作履歴情報に応じて移動場所、標的キャラクタ、発動スキルについて選択が行われ、選択結果が第3ゲーム情報として仲介エンジン104へ送信される。
【0074】
なお、対象キャラクタについて処理を行う際には、仲介エンジン104は、人工知能エージェント106によって既に選択された命令、対象キャラクタの情報をゲーム状況情報に含めることが好適である。また、最小行動単位に含める移動場所の候補は、人工知能エージェント106によって既に選択された命令及び対象キャラクタに応じて選択可能な移動場所のみを含むようにすることが好適である。また、標的キャラクタについて処理を行う際には、仲介エンジン104は、人工知能エージェント106によって既に選択された命令、対象キャラクタ、移動場所の情報をゲーム状況情報に含めることが好適である。また、最小行動単位に含める標的キャラクタの候補は、人工知能エージェント106によって既に選択された命令、対象キャラクタ、移動場所に応じて選択可能な標的キャラクタのみを含むようにすることが好適である。また、発動スキルについて処理を行う際には、仲介エンジン104は、人工知能エージェント106によって既に選択された命令、対象キャラクタ、移動場所、標的キャラクタの情報をゲーム状況情報に含めることが好適である。また、最小行動単位に含める標的キャラクタの候補は、人工知能エージェント106によって既に選択された命令、対象キャラクタ、移動場所、標的キャラクタに応じて選択可能な発動スキルのみを含むようにすることが好適である。
【0075】
仲介エンジン104は、人工知能エージェント106から発動スキルに関する選択の結果を受信すると、既に受信した命令、対象キャラクタ、移動場所、標的キャラクタ及び発動スキルの選択結果を組み合わせてゲームエンジン102で実行可能な指示形式の実行情報に変換する。仲介エンジン104は、当該実行情報をゲームエンジン102へ送信する。ゲームエンジン102は、仲介エンジン104から実行情報を受信すると、当該実行情報に応じて電子ゲームを進行させる処理を行う。ゲームエンジン102を用いて電子ゲームをプレイしているプレイヤは、上記処理によるノンプレイヤキャラクタ(NPC)の行動に応じて自分のキャラクタを操作することで電子ゲームをプレイすることができる。
【0076】
以下、上記処理を繰り返すことによって電子ゲーム提供システム100における電子ゲームの提供処理が行われる。
【0077】
なお、図11に示すように、仲介エンジン104は、人工知能エージェント106から第3ゲーム情報として選択された命令、対象キャラクタ、移動場所、標的キャラクタの情報を受信する毎に、当該命令、対象キャラクタ、移動場所、標的キャラクタの情報をゲームエンジン102で処理可能な形式に変換して送信し、ゲームエンジン102において当該命令、対象キャラクタ、移動場所、標的キャラクタの選択が行われた後に選択可能な対象キャラクタ、移動場所、標的キャラクタ、発動スキルを含む可能行動情報を仲介エンジン104へ送信するような処理としてもよい。仲介エンジン104は、ゲームエンジン102から受信した可能行動情報に応じて、人工知能エージェント106において処理可能な形式の指示キーの候補に関する最小行動単位としてゲーム状況情報、操作履歴情報と共に第2ゲーム情報として人工知能エージェント106へ送信する。このような態様においても電子ゲーム提供システム100において電子ゲームの提供処理を実現することができる。
【0078】
以上のように、本実施の形態における電子ゲーム提供システム100によれば、仲介エンジン104を介してゲームエンジン102と人工知能エージェント106との間の情報交換を行うことによって、ゲームエンジン102及び人工知能エージェント106の各々において互いの扱い易い情報の形式に拘わらず各々の処理を行うことができる。したがって、人工知能エージェント106で扱える情報の形式を気にすることなくゲームエンジン102を開発することができる。同様に、ゲームエンジン102で扱える情報の形式を気にすることなく人工知能エージェント106を開発することができる。
【0079】
また、ゲームエンジン102と人工知能エージェント106とはプログラミング言語が異なることが多いが、各々の開発者は互いのプログラミング言語や仕様を気にすることなく開発を行うことができる。
【0080】
以上、本発明に係る実施形態を説明したが、本発明は上記実施形態に限られるものではなく、本発明の趣旨を逸脱しない限りにおいて種々の変更が可能である。
【符号の説明】
【0081】
10 処理部、12 記憶部、14 入力部、16 出力部、18 通信部、20 処理部、22 記憶部、24 入力部、26 出力部、28 通信部、30 処理部、32 記憶部、34 入力部、36 出力部、38 通信部、100 電子ゲーム提供システム、102 ゲームエンジン、104 仲介エンジン、106 人工知能エージェント、108 情報通信網。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11