(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-04-26
(45)【発行日】2022-05-10
(54)【発明の名称】ディープラーニング基盤のゲームプレイサーバ、ゲーム難易度予測サーバ、およびゲームプレイサービス方法、ならびにプログラム
(51)【国際特許分類】
A63F 13/80 20140101AFI20220427BHJP
A63F 13/60 20140101ALI20220427BHJP
G06N 20/00 20190101ALI20220427BHJP
G06N 3/08 20060101ALI20220427BHJP
【FI】
A63F13/80 E
A63F13/60
G06N20/00
G06N3/08
(21)【出願番号】P 2020196293
(22)【出願日】2020-11-26
【審査請求日】2020-11-26
(31)【優先権主張番号】10-2020-0014213
(32)【優先日】2020-02-06
(33)【優先権主張国・地域又は機関】KR
【新規性喪失の例外の表示】特許法第30条第2項適用 開催日 令和1年11月27日 開催場所 NHN FORWARDで発表
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイトの掲載日 令和1年11月27日 ウェブサイトのアドレス https://forward.nhn.com/2019/seoul/
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイトの掲載日 令和2年1月20日 ウェブサイトのアドレス https://youtu.be/OUg0xcgkhls
【新規性喪失の例外の表示】特許法第30条第2項適用 ウェブサイトの掲載日 令和2年1月21日 ウェブサイトのアドレス https://www.slideshare.net/NHNFORWARD/nhnforward2019-4
(73)【特許権者】
【識別番号】313011434
【氏名又は名称】エヌエイチエヌ コーポレーション
【住所又は居所原語表記】(Sampyeong-dong),16,Daewangpangyo-ro 645 beon-gil,Bundang-gu,Seongnam-si,Gyeonggi-do Republic of Korea
(74)【代理人】
【識別番号】110000408
【氏名又は名称】特許業務法人高橋・林アンドパートナーズ
(72)【発明者】
【氏名】リー,チャン ユル
(72)【発明者】
【氏名】リー,ジュン ユオプ
(72)【発明者】
【氏名】キム,チョン ヒョン
【審査官】早川 貴之
(56)【参考文献】
【文献】特開2019-191786(JP,A)
【文献】米国特許出願公開第2018/0243656(US,A1)
【文献】辻本 貴昭,ターン制コマンドバトルにおける強化学習効率化,情報処理学会 研究報告 ゲーム情報学(GI) 2019-GI-42 [online] ,日本,情報処理学会,2019年07月12日
(58)【調査した分野】(Int.Cl.,DB名)
A63F 9/24,13/00-13/98
(57)【特許請求の範囲】
【請求項1】
ゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、同じ形態のパズルが少なくとも3個以上マッチングされれば除去され、点数を得るマッチパズルゲームを行う少なくとも1つ以上のディープラーニング基盤のゲームプレイサーバにおいて、
第1のサイズの複数の第1のゲームマップ及び前記第1のサイズより小さい第2のサイズの複数の第2のゲームマップを受信する少なくとも1つ以上の通信プロセッサと、
エージェント・ベース・モデルを格納するメモリと、
前記エージェント・ベース・モデルを読み出して前記エージェント・ベース・モデルの学習を行い、前記学習されたエージェント・ベース・モデルを利用して前記マッチパズルゲームを行う少なくとも1つ以上のプロセッサと、
を備え、
前記メモリに格納され、前記少なくとも1つ以上のプロセッサにより実行される少なくとも1つのプログラムとして前記少なくとも1つのプログラムは、
前記複数の第2のゲームマップに対して大きい点数を得る行動をするように前記エージェント・ベース・モデルを第1強化学習し、
前記複数の第1のゲームマップの各々に対して固定パズルの数の分だけ固定パズルを中心に配置して前記第2のサイズの複数の分割ゲームマップを生成し、
前記複数の第1のゲームマップの各々を入力データとし、前記複数の第1のゲームマップの各々に対して前記第2のサイズの複数の分割ゲームマップに対する行動のうち、最も大きい点数を得る行動をする分割ゲームマップの行動を正解ラベルとしてトレーニングデータセットを生成し、
前記第1強化学習されたエージェント・ベース・モデルを前記トレーニングデータセットを利用して教師あり学習し、
前記教師あり学習されたエージェント・ベース・モデルを前記複数の第1のゲームマップに対して第2強化学習することを特徴とするディープラーニング基盤のゲームプレイサーバ。
【請求項2】
前記複数の第1のゲームマップと前記複数の第2のゲームマップとは、前記固定パズルの配置によってゲーム難易度があり、
前記プログラムは、前記複数の第1のゲームマップと前記複数の第2のゲームマップとを入力するとき、ゲーム難易度が低いマップから高いマップの順に入力して前記エージェント・ベース・モデルを学習することを特徴とする請求項1に記載のディープラーニング基盤のゲームプレイサーバ。
【請求項3】
前記プログラムは、前記第1強化学習または前記第2強化学習の入力にガウスノイズを追加入力して前記エージェント・ベース・モデルを学習することを特徴とする請求項1に記載のディープラーニング基盤のゲームプレイサーバ。
【請求項4】
前記操作パズルは、ゲーム開始の際、4つの色相でランダムに選択順序が決められ、
前記行動は、基本行動及びスイッチ行動を含み、
前記基本行動は、操作パズルの方向及び位置を変更してゲームマップに配置する行動であり、
前記スイッチ行動は、前記操作パズルの順序を変更することを特徴とする請求項1に記載のディープラーニング基盤のゲームプレイサーバ。
【請求項5】
前記操作パズルは、4つの色相であり、
前記行動は、準備行動及び基本行動を含み、
前記準備行動は、前記操作パズルで前記基本行動に使用される候補パズルを所定の個数の
分だけ選択する行動であり、
前記基本行動は、前記候補パズルの方向及び位置を変更してゲームマップに配置する行動であることを特徴とする請求項1に記載のディープラーニング基盤のゲームプレイサーバ。
【請求項6】
ゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、同じ形態のパズルが少なくとも3個以上マッチングされれば除去され、点数を得るマッチパズルゲームに関するものであって、学習されていないゲームマップに対するユーザの難易度を予測する少なくとも1つ以上のディープラーニング基盤のゲーム難易度予測サーバにおいて、
学習されていないゲームマップ及び学習されたゲームマップに対するユーザの勝率を受信する少なくとも1つ以上の通信プロセッサと、
エージェント・ベース・モデル、ゲーム難易度予測モデル、及び学習されたゲームマップに対する前記エージェント・ベース・モデルの勝率を格納する少なくとも1つ以上のメモリと、
前記ゲーム難易度予測モデルを読み出して前記ゲーム難易度予測モデルの学習を行い、前記学習されたゲーム難易度予測モデルを利用して前記学習されていないゲームマップに対するゲーム難易度を予測する少なくとも1つ以上のプロセッサと、
を備え、
前記メモリに格納され、前記少なくとも1つ以上のプロセッサにより実行される少なくとも1つのプログラムとして前記少なくとも1つのプログラムは、
前記学習されたゲームマップに対するエージェント・ベース・モデルの勝率と前記学習されたゲームマップに対するユーザの勝率との差を利用した二項回帰分析を介して前記ゲーム難易度予測モデルを学習し、
前記学習されていない残りのゲームマップに対するエージェント・ベース・モデルの勝率を算出し、
前記ゲーム難易度予測モデルを介して前記学習されていない残りのゲームマップに対するエージェント・ベース・モデルの勝率を入力として、前記学習されていない残りのゲームマップに対するユーザの勝率を予測
し、
前記通信プロセッサは、第1のサイズの複数の第1のゲームマップ及び前記第1のサイズより小さい第2のサイズの複数の第2のゲームマップを受信し、
前記プログラムは、
前記複数の第2のゲームマップに対して大きい点数を得る行動をするように前記エージェント・ベース・モデルを第1強化学習し、
前記複数の第1のゲームマップの各々に対して固定パズルの数の分だけ固定パズルを中心に配置して前記第2のサイズの複数の分割ゲームマップを生成し、
前記複数の第1のゲームマップの各々を入力データとし、前記複数の第1のゲームマップの各々に対して前記第2のサイズの複数の分割ゲームマップに対する行動のうち、最も大きい点数を得る行動をする分割ゲームマップの行動を正解ラベルとしてトレーニングデータセットを生成し、
前記第1強化学習されたエージェント・ベース・モデルを前記トレーニングデータセットを利用して教師あり学習し、
前記教師あり学習されたエージェント・ベース・モデルを前記複数の第1のゲームマップに対して第2強化学習することを特徴とするディープラーニング基盤のゲーム難易度予測サーバ。
【請求項7】
前記プログラムは、前記予測された学習されていないゲームマップに対するユーザの勝率を利用して前記学習されていないゲームマップの難易度を修正する請求項6に記載のディープラーニング基盤のゲーム難易度予測サーバ。
【請求項8】
前記プログラムは、
前記学習されていないゲームマップの難易度をステージが上がるほど増加させ、n+5ステージの次のステージの難易度を、以前ステージの難易度より減少させる(nは、1以上の自然数である。)請求項7に記載のディープラーニング基盤のゲーム難易度予測サーバ。
【請求項9】
前記プログラムは、前記学習されていないゲームマップで固定パズルの隣接した位置に同じ色相の固定パズルを配置して難易度を減少させる請求項7に記載のディープラーニング基盤のゲーム難易度予測サーバ。
【請求項10】
通信部とプロセッサを備える少なくとも1つ以上のディープラーニング基盤のゲームプレイサーバがゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、同じ色相のパズルが少なくとも3個以上マッチングされれば除去され、点数を得るマッチパズルゲームを行うディープラーニング基盤のゲームプレイサービス方法において、
前記通信部が第1のサイズの複数の第1のゲームマップ及び前記第1のサイズより小さい第2のサイズの複数の第2のゲームマップを受信するステップと、
前記プロセッサが前記複数の第2のゲームマップに対して大きい点数を得る行動をするようにエージェント・ベース・モデルを第1強化学習するステップと、
前記プロセッサが前記複数の第1のゲームマップの各々に対して固定パズルの数の分だけ固定パズルを中心に配置して前記第2のサイズの複数の分割ゲームマップを生成するステップと、
前記プロセッサが前記複数の第1のゲームマップの各々を入力データとし、前記複数の第1のゲームマップの各々に対して前記第2のサイズの複数の分割ゲームマップに対する行動のうち、最も大きい点数を得る行動をする分割ゲームマップの行動を正解ラベルとしてトレーニングデータセットを生成するステップと、
前記プロセッサが前記第1強化学習されたエージェント・ベース・モデルを前記トレーニングデータセットを利用して教師あり学習するステップと、
前記プロセッサが前記教師あり学習されたエージェント・ベース・モデルを前記複数の第1のゲームマップに対して第2強化学習するステップと、
を含むことを特徴とするディープラーニング基盤のゲームプレイサービス方法。
【請求項11】
前記複数の第1のゲームマップと前記複数の第2のゲームマップとは、前記固定パズルの配置によってゲーム難易度があり、
前記プロセッサが前記複数の第2のゲームマップに対して大きい点数を得る行動をするように前記エージェント・ベース・モデルを第1強化学習するステップは、
前記複数の第2のゲームマップを入力するとき、ゲーム難易度が低いマップから高いマップの順に入力して前記エージェント・ベース・モデルを学習することを特徴とする請求項
10に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項12】
前記複数の第1のゲームマップと前記複数の第2のゲームマップとは、前記固定パズルの配置によってゲーム難易度があり、
前記プロセッサが前記教師あり学習されたエージェント・ベース・モデルを前記複数の第1のゲームマップに対して第2強化学習するステップは、
前記複数の第1のゲームマップを入力するとき、ゲーム難易度が低いマップから高いマップの順に入力して前記エージェント・ベース・モデルを学習することを特徴とする請求項
10に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項13】
前記第1強化学習または前記第2強化学習の入力にガウスノイズを追加入力して前記エー
ジェント・ベース・モデルを学習することを特徴とする請求項
10に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項14】
前記操作パズルは、ゲーム開始の際、4つの色相でランダムに選択順序が決められ、
前記行動は、基本行動及びスイッチ行動を含み、
前記基本行動は、操作パズルの方向及び位置を変更してゲームマップに配置する行動であり、
前記スイッチ行動は、前記操作パズルの順序を変更することを特徴とする請求項
10に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項15】
前記プロセッサがゲーム難易度予測モデルを読み出して前記ゲーム難易度予測モデルの学習を行い、前記学習されたゲーム難易度予測モデルを利用して前記学習されていないゲームマップに対するゲーム難易度を予測するステップをさらに含む請求項
10に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項16】
前記ゲーム難易度予測モデルを読み出して前記ゲーム難易度予測モデルの学習を行い、前記学習されたゲーム難易度予測モデルを利用して前記学習されていないゲームマップに対するゲーム難易度を予測するステップは、
予め学習されたゲームマップに対するエージェント・ベース・モデルの勝率と前記学習されたゲームマップに対するユーザの勝率との差を利用した二項回帰分析を介して前記ゲーム難易度予測モデルを学習するステップと、
前記学習されていない残りのゲームマップに対するエージェント・ベース・モデルの勝率を算出するステップと、
前記ゲーム難易度予測モデルを介して前記学習されていない残りのゲームマップに対するエージェント・ベース・モデルの勝率を入力として、前記学習されていない残りのゲームマップに対するユーザの勝率を予測するステップと、
を含む請求項
15に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項17】
前記プロセッサが前記予測された学習されていないゲームマップに対するユーザの勝率を利用して前記学習されていないゲームマップの難易度を修正するステップをさらに含む請求項
16に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項18】
前記学習されていないゲームマップの難易度を修正するステップは、
前記学習されていないゲームマップの難易度をステージが上がるほど増加させ、n+5ステージの次のステージの難易度を、以前ステージの難易度より減少させるステップを含む(nは、1以上の自然数である。)請求項
17に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項19】
前記学習されていないゲームマップの難易度を修正するステップは、
前記学習されていないゲームマップで固定パズルの隣接した位置に同じ形態の固定パズルを配置して難易度を減少させるステップを含む請求項
17に記載のディープラーニング基盤のゲームプレイサービス方法。
【請求項20】
請求項
10に記載のディープラーニング基盤のゲームプレイサービス方法をコンピューターに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置に関する。より詳細には、マッチパズルゲームを行うディープラーニング基盤のゲームプレイサーバを利用してゲームマップの難易度を予測し、ゲームマップを修正するディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置である。
【背景技術】
【0002】
情報通信技術と端末機仕様の発展につれて、携帯電話、PDA(Personal Data Assistant)、またはPMP(Portable Multimedia Player)などのような携帯端末装置(Portable device)は、次第にトータルエンターテインメント機器へと進化されており、現代人の必需品となっている。
【0003】
近年、PC(Personal Computer)のような高性能のプロセッサ及び大容量のメモリを搭載し、ユーザが自由にアプリケーションを設置して使用することができるスマートフォン(Smart phone)のような高性能携帯端末が急速に普及している。
【0004】
このような携帯端末装置は、文書管理、音楽ファイルや動画ファイルの再生、ゲーム実行、日程管理、写真または動画の撮影及び管理など、様々な用途に利用することができる。
【0005】
特に、余暇時間だけではなく、移動時間または待機時間などの退屈な時間に端末装置を利用してゲームを楽しむユーザが増加するにつれて、PCにプログラムを設置して実行されるPCゲーム、通信網を介して複数のユーザが共に進行するオンラインゲーム、携帯電話のような携帯端末を介して簡単に楽しむことができるモバイルゲーム、ゲームプログラムを設置しなくても、ウェブブラウザを介して利用することができ、端末仕様に制約を受けないウェブゲームなど、様々な種類のゲームが提供されている。最近、短い時間に軽く楽しむことができるパズルゲームに対するユーザらの需要が増加する傾向にある。
【0006】
パズルゲームは、ゲームマップの状態によってゲーム難易度が決定される。ところが、新規ゲームマップに関しては、別途、ゲーム難易度評価をした後、ユーザらにゲーム難易度が合うように提供することができる。新規ゲームマップに対するゲーム難易度評価を正確にするためには、新規マップでゲームを数十回、多い場合は数百回以上、実際にプレイしなければならない。この場合、多くの時間と人力が必要であり、費用が多くかかるという問題があった。このような問題を解決するために、人の代わりに人工知能コンピュータを新規マップでゲームプレイさせる方法が提案されたが、学習された人工知能コンピュータであっても、多くの選択肢が存在する新規マップで正しくゲームプレイできないという問題があった。
【先行技術文献】
【特許文献】
【0007】
【発明の概要】
【発明が解決しようとする課題】
【0008】
本発明は、前述した問題点を解決するために、マッチパズルゲームを行うディープラーニング基盤のゲームプレイサーバを利用してゲームマップの難易度を予測し、ゲームマップを修正するディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置を提供することを目的とする。
【0009】
具体的に、本発明は、学習されていない新しいゲームマップでもゲームプレイが可能なゲームプレイサーバを提供するディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置を提供することを目的とする。
【0010】
また、本発明は、新しいゲームマップに対するゲーム難易度を予測することができるディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置を提供することを目的とする。
【0011】
また、本発明は、ゲームマップのゲーム難易度を調整してゲームに対する興味を誘発するディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置を提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明の一実施形態に係るディープラーニング基盤のゲームプレイサーバは、ゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、同じ形態のパズルが少なくとも3個以上マッチングされれば除去され、点数を得るマッチパズルゲームを行う少なくとも1つ以上のディープラーニング基盤のゲームプレイサーバにおいて、第1のサイズの複数の第1のゲームマップ及び前記第1のサイズより小さい第2のサイズの複数の第2のゲームマップを受信する少なくとも1つ以上の通信プロセッサと、エージェント・ベース・モデルを格納するメモリと、前記エージェント・ベース・モデルを読み出して前記エージェント・ベース・モデルの学習を行い、前記学習されたエージェント・ベース・モデルを利用して前記マッチパズルゲームを行う少なくとも1つ以上のプロセッサと、を備え、前記メモリに格納され、前記少なくとも1つ以上のプロセッサにより実行される少なくとも1つのプログラムとして前記少なくとも1つのプログラムは、前記複数の第2のゲームマップに対して大きい点数を得る行動をするように前記エージェント・ベース・モデルを第1強化学習し、前記複数の第1のゲームマップの各々に対して固定パズルの数の分だけ固定パズルを中心に配置して前記第2のサイズの複数の分割ゲームマップを生成し、前記複数の第1のゲームマップの各々を入力データとし、前記複数の第1のゲームマップの各々に対して前記第2のサイズの複数の分割ゲームマップに対する行動のうち、最も大きい点数を得る行動をする分割ゲームマップの行動を正解ラベルとしてトレーニングデータセットを生成し、前記第1強化学習されたエージェント・ベース・モデルを前記トレーニングデータセットを利用して教師あり学習し、前記教師あり学習されたエージェント・ベース・モデルを前記複数の第1のゲームマップに対して第2強化学習することを特徴とする。
【0013】
本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測サーバは、ゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、同じ形態のパズルが少なくとも3個以上マッチングされれば除去され、点数を得るマッチパズルゲームに関するものであって、学習されていないゲームマップに対するユーザの難易度を予測する少なくとも1つ以上のディープラーニング基盤のゲーム難易度予測サーバにおいて、学習されていないゲームマップ及び学習されたゲームマップに対するユーザの勝率を受信する少なくとも1つ以上の通信プロセッサと、エージェント・ベース・モデル、ゲーム難易度予測モデル、及び学習されたゲームマップに対する前記エージェント・ベース・モデルの勝率を格納する少なくとも1つ以上のメモリと、前記ゲーム難易度予測モデルを読み出して前記ゲーム難易度予測モデルの学習を行い、前記学習されたゲーム難易度予測モデルを利用して前記学習されていないゲームマップに対するゲーム難易度を予測する少なくとも1つ以上のプロセッサと、を備え、前記メモリに格納され、前記少なくとも1つ以上のプロセッサにより実行される少なくとも1つのプログラムとして前記少なくとも1つのプログラムは、前記学習されたゲームマップに対するエージェント・ベース・モデルの勝率と前記学習されたゲームマップに対するユーザの勝率との差を利用した二項回帰分析を介して前記ゲーム難易度予測モデルを学習し、前記学習されていない残りのゲームマップに対するエージェント・ベース・モデルの勝率を算出し、前記ゲーム難易度予測モデルを介して前記学習されていない残りのゲームマップに対するエージェント・ベース・モデルの勝率を入力として、前記学習されていない残りのゲームマップに対するユーザの勝率を予測することを特徴とする。
【0014】
本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法
は、少なくとも1つ以上のディープラーニング基盤のゲームプレイサーバがゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、同じ色相のパズルが少なくとも3個以上マッチングされれば除去され、点数を得るマッチパズルゲームを行うディープラーニング基盤のゲームプレイサービス方法において、通信部が第1のサイズの複数の第1のゲームマップ及び前記第1のサイズより小さい第2のサイズの複数の第2のゲームマップを受信するステップと、プロセッサが前記複数の第2のゲームマップに対して大きい点数を得る行動をするようにエージェント・ベース・モデルを第1強化学習するステップと、前記プロセッサが前記複数の第1のゲームマップの各々に対して固定パズルの数の分だけ固定パズルを中心に配置して前記第2のサイズの複数の分割ゲームマップを生成するステップと、前記プロセッサが前記複数の第1のゲームマップの各々を入力データとし、前記複数の第1のゲームマップの各々に対して前記第2のサイズの複数の分割ゲームマップに対する行動のうち、最も大きい点数を得る行動をする分割ゲームマップの行動を正解ラベルとしてトレーニングデータセットを生成するステップと、前記プロセッサが前記第1強化学習されたエージェント・ベース・モデルを前記トレーニングデータセットを利用して教師あり学習するステップと、前記プロセッサが前記教師あり学習されたエージェント・ベース・モデルを前記複数の第1のゲームマップに対して第2強化学習するステップと、を含むことを特徴とする。
【発明の効果】
【0015】
一実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置は、マッチパズルゲームを行うディープラーニング基盤のゲームプレイサーバを利用してゲームマップの難易度を予測し、ゲームマップを修正することができる。
【0016】
また、一実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置は、学習されていない新しいゲームマップでもゲームプレイが可能なゲームプレイサーバを提供することができる。
【0017】
また、一実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置は、新しいゲームマップに対するゲーム難易度を予測することができる。
【0018】
また、一実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置は、ゲームマップのゲーム難易度を調整してゲームに対する興味を誘発することができる。
【図面の簡単な説明】
【0019】
【
図1】本発明の一実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測システムの例示図である。
【
図2】本発明の一実施形態に係るディープラーニング基盤のゲームプレイサーバでゲームマップにおける行動のエージェント・ベース・モデルを説明するための図である。
【
図3】
図2のエージェント・ベース・モデルの行動方式を説明するための一例である。
【
図4】
図2のエージェント・ベース・モデルの行動方式を説明するための他の例である。
【
図5】ゲーム難易度予測サーバでゲーム難易度予測モデルを生成する方法を説明するための図である。
【
図6】ゲーム難易度予測サーバで新しいマップに対するゲーム難易度予測及びゲーム難易度を調整する方法を説明するための図である。
【
図7】ゲーム難易度によるゲームマップの例示図である。
【
図8】ゲームマップのゲーム難易度を調整する方法を説明するための図である。
【
図9】ゲームマップのステージによるゲーム難易度を設定する例示図である。
【
図10】本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法に対するフロー図である。
【
図11】
図10のディープラーニング基盤のゲームプレイサービス方法のうち、複数の第2のゲームマップに対する例示図である。
【
図12】
図10のディープラーニング基盤のゲームプレイサービス方法のうち、複数の分割ゲームマップ生成及びトレーニングデータセット生成方法を説明するための例示図である。
【
図13】本発明のエージェント・ベース・モデルと従来技術に係るエージェント・ベース・モデルとの比較例である。
【
図14】本発明のディープラーニング基盤のゲーム難易度予測方法に対するフロー図である。
【発明を実施するための形態】
【0020】
本発明は、様々な変更を加えることができ、種々の実施形態を有することができるところ、特定の実施形態を図面に例示し、詳細な説明に詳しく説明する。本発明の効果及び特徴、そして、それらを達成する方法は、図面とともに詳しく後述されている実施形態を参照すれば明確になるであろう。しかしながら、本発明は、以下において開示される実施形態等に限定されるものではなく、様々な形態で実現することができる。以下の実施形態において、第1、第2などの用語は、限定的な意味ではなく、1つの構成要素を他の構成要素と区別する目的として使用する。また、単数の表現は、文脈上、明白に異なるように意味しない限り、複数の表現を含む。また、「含む」または「有する」などの用語は、明細書上に記載された特徴または構成要素が存在することを意味するものであり、1つ以上の他の特徴または構成要素が付加される可能性を予め排除するものではない。また、図面では説明の都合上、構成要素等のサイズが拡大または縮小され得る。例えば、図面に示された各構成のサイズ及び厚さは、説明の都合上、任意に示したもので、本発明が必ずしも図示されたものに限定されない。
【0021】
以下、添付された図面を参照して本発明の実施形態を詳しく説明する。図面を参照して説明するとき、同一または対応する構成要素は、同様の図面符号を付し、これについての重複する説明を省略する。
【0022】
図1は、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測システムの例示図である。
【0023】
図1に示すように、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測システムは、端末機100、パズルゲームサーバ200、ゲームプレイサーバ300、及びゲーム難易度予測サーバ400を備えてもよい。
【0024】
図1の各構成要素は、ネットワーク500を介して接続されてもよい。端末機100、パズルゲームサーバ200、ゲームプレイサーバ300、及びゲーム難易度予測サーバ400などそれぞれのノード相互間に情報交換が可能な接続構造を意味するものであって、このようなネットワークの一例には、3GPP(3rd Generation Partnership Project)ネットワーク、LTE(Long Term Evolution)ネットワーク、WIMAX(World Interoperability for Microwave Access)ネットワーク、インターネット(Internet)、LAN(Local Area Network)、Wireless LAN(Wireless Local Area Network)、WAN(Wide Area Network)、PAN(Personal Area Network)、ブルートゥース(登録商標)(Bluetooth)ネットワーク、衛星放送ネットワーク、アナログ放送ネットワーク、DMB(Digital Multimedia Broadcasting)ネットワークなどが含まれるが、これに限定されるものではない。
【0025】
<端末機100>
まず、端末機100は、パズルゲームサービスの提供を受けようとするユーザの端末機である。また、端末機100は、様々な作業を行うアプリケーションを実行するためにユーザが使用する1つ以上のコンピュータまたは他の電子装置である。例えば、コンピュータ、ラップトップコンピュータ、スマートフォン、モバイル電話機、PDA、タブレットPC、あるいはパズルゲームサーバ200と通信するように動作可能な任意の他のデバイスを備える。ただし、これに限定されるものではなく、端末機100は、様々なマシン上で実行され、複数のメモリ内に格納された命令語を解釈して実行するプロセッシングロジックを備え、外部入力/出力デバイス上にグラフィックユーザインターフェース(GUI)のためのグラフィック情報をディスプレイするプロセスなどのように、様々なその他の要素を含んでもよい。さらに、端末機100は、入力装置(例えば、マウス、キーボード、タッチセンサーパネル等)及び出力装置(例えば、ディスプレイ装置、モニタ、スクリーン等)に接続されてもよい。端末機100により実行されるアプリケーションは、ゲームアプリケーション、ウェブブラウザ、ウェブブラウザで動作するウェブアプリケーション、ワードプロセッサ、メディアプレイヤ、スプレッドシート、イメージプロセッサ、セキュリティソフトウェア、またはその他のものを含んでもよい。
【0026】
また、端末機100は、命令を格納する少なくとも1つのメモリ101、少なくとも1つのプロセッサ102、及び通信部103を備えてもよい。
【0027】
端末機100のメモリ101は、端末機100で駆動される複数の応用プログラム(Application program)またはアプリケーション(Application)、端末機100の動作のためのデータ、命令語を格納してもよい。命令は、プロセッサ102を用いて動作を行わせるためにプロセッサ102により実行可能であり、動作は、パズルゲーム実行要請信号を送信、ゲームデータ送受信、行動情報送受信、ゲームマップに対する勝率情報送受信、及び各種情報を受信する動作を含んでもよい。また、メモリ101は、ハードウェアとして、ROM、RAM、EPROM、フラッシュドライブ、ハードドライブなどの様々な格納機器であってもよく、メモリ101は、インターネット(Internet)上でメモリ101の格納機能を果たすウェブストレージ(Web storage)であってもよい。
【0028】
端末機100のプロセッサ102は、全般的な動作を制御してパズルゲームサービスの提供を受けるためのデータ処理を行ってもよい。端末機100でパズルゲームアプリケーションが実行されれば、端末機100でパズルゲーム環境が構成される。そして、パズルゲームアプリケーションは、ネットワーク500を介してパズルゲームサーバ200とパズルゲームデータを交換して端末機100上でパズルゲームサービスが実行されるようにする。このようなプロセッサ102は、ASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSPDs(Digital Signal Processing Devices)、PLDs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、制御機(Controllers)、マイクロコントローラ(Micro-controllers)、マイクロプロセッサ(Microprocessors)、その他の機能実行のための任意の形態のプロセッサであってもよい。
【0029】
端末機100の通信部103は、下記の通信方式(例えば、GSM(Global System for Mobile communication)、CDMA(Code Division Multi Access)、HSDPA(High Speed Downlink Packet Access)、HSUPA(High Speed Uplink Packet Access)、LTE(Long Term Evolution)、LTE-A(Long Term Evolution-Advanced)等)、WLAN(Wireless LAN)、Wi-Fi(Wireless-Fidelity)、Wi-Fi(Wireless Fidelity) Direct、DLNA(登録商標)(Digital Living Network Alliance)、WiBro(Wireless Broadband)、WiMAX(World Interoperability for Microwave Access)によって構築されたネットワーク網上で基地局、外部の端末、サーバのうち、少なくとも1つと無線信号を送受信してもよい。
【0030】
<パズルゲームサーバ200>
パズルゲームは、ゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、縦または横に隣接して同じ色相のパズルが3個以上マッチングされれば除去され、点数を得るマッチ3パズルゲームであってもよい。
【0031】
パズルゲームサーバ200が提供するパズルゲームサービスは、パズルゲームサーバ200が提供する仮想のコンピュータユーザと実際のユーザとが共にゲームに参加する形態で構成されてもよい。これは、ユーザの端末機100上で実現されるパズルゲーム環境において、1人の実際のユーザと1つのコンピュータユーザとが共にゲームをプレイする。他の側面において、パズルゲームサーバ200が提供するパズルゲームサービスは、複数のユーザ側端末機が参加して1つのパズルゲームがプレイされる形態で構成されてもよい。
【0032】
パズルゲームサーバ200は、命令を格納する少なくとも1つのメモリ201、少なくとも1つのプロセッサ202、及び通信部203を備えてもよい。
【0033】
パズルゲームサーバ200のメモリ201は、パズルゲームサーバ200で駆動される複数の応用プログラム(Application program)またはアプリケーション(Application)、パズルゲームサーバ200の動作のためのデータ、命令語を格納してもよい。命令は、プロセッサ202を用いて動作を行わせるためにプロセッサ202により実行可能であり、動作は、ゲーム実行要請信号受信、ゲームデータ送受信、行動情報送受信、及び各種送信動作を含んでもよい。また、メモリ201は、ハードウェアとして、ROM、RAM、EPROM、フラッシュドライブ、ハードドライブなどの様々な格納機器であってもよく、メモリ201は、インターネット(Internet)上でメモリ201の格納機能を果たすウェブストレージ(Web storage)であってもよい。
【0034】
パズルゲームサーバ200のプロセッサ202は、全般的な動作を制御してパズルゲームサービスを提供するためのデータ処理を行ってもよい。このようなプロセッサ202は、ASICs(Application Specific Integrated Circuits)、DSPs(Digital Signal Processors)、DSPDs(Digital Signal Processing Devices)、PLDs(Programmable Logic Devices)、FPGAs(Field Programmable Gate Arrays)、制御機(Controllers)、マイクロコントローラ(Micro-controllers)、マイクロプロセッサ(Microprocessors)、その他の機能実行のための任意の形態のプロセッサであってもよい。
【0035】
パズルゲームサーバ200は、通信部203を介してネットワーク500を経由して端末機100、ゲームプレイサーバ300、及びゲーム難易度予測サーバ400と通信を行ってもよい。
【0036】
<ゲームプレイサーバ300>
ゲームプレイサーバ300は、別のクラウドサーバやコンピュータ装置を備えてもよい。また、ゲームプレイサーバ300は、端末機100のプロセッサ、またはパズルゲームサーバ200のデータ処理部に設置されたニューラルネットワークシステム、またはゲーム難易度予測サーバ400のデータ処理部に設置されたニューラルネットワークシステムであってもよいが、以下においてゲームプレイサーバ300は、端末機100、パズルゲームサーバ200、またはゲーム難易度予測サーバ400とは別の装置として説明する。
【0037】
ゲームプレイサーバ300は、命令を格納する少なくとも1つのメモリ301、少なくとも1つのプロセッサ302、及び通信部303を備えてもよい。
【0038】
ゲームプレイサーバ300は、パズルゲーム規則によって自ら学習してディープラーニングモデルであるエージェント・ベース・モデルを構築し、ゲームマップでゲームプレイをすることができる人工知能コンピュータである。ゲームプレイサーバ300がエージェント・ベース・モデルでトレーニングする詳しい説明は、
図10~
図13のエージェント・ベース・モデルに関する説明にしたがう。
【0039】
ゲームプレイサーバ300のメモリ301は、ゲームプレイサーバ300で駆動される複数の応用プログラム(Application program)またはアプリケーション(Application)、ゲームプレイサーバ300の動作のためのデータ、命令語を格納してもよい。命令は、プロセッサ302を用いて動作を行わせるためにプロセッサ302により実行可能であり、動作は、エージェント・ベース・モデル学習(トレーニング)動作、行動情報送受信、及び各種送信動作を含んでもよい。また、メモリ301は、ディープラーニングモデルであるエージェント・ベース・モデルを格納してもよい。また、メモリ301は、エージェント・ベース・モデルの勝率、学習に利用されたゲームマップ、学習に利用されていないゲームマップ、及び学習のためのトレーニングデータセットを格納してもよい。また、メモリ301は、ハードウェアとしてに、ROM、RAM、EPROM、フラッシュドライブ、ハードドライブなどの様々な格納機器であってもよく、メモリ301は、インターネット(Internet)上でメモリ301の格納機能を果たすウェブストレージ(Web storage)であってもよい。
【0040】
ゲームプレイサーバ300のプロセッサ302は、メモリ301に格納されたエージェント・ベース・モデルを読み出して、構築されたニューラルネットワークシステムにしたがって下記に記述するエージェント・ベース・モデル学習及び操作パズル行動を行ってもよい。本実施形態においてプロセッサ302は、全体ユニットを制御するメインプロセッサと、エージェント・ベース・モデルによってニューラルネットワーク駆動の際に必要な大容量の演算を処理する複数のグラフィックプロセッサ(Graphics Processing Unit、GPU)とを備えるように構成してもよい。
【0041】
ゲームプレイサーバ300は、通信部303を介してネットワーク500を経由してパズルゲームサーバ200またはゲーム難易度予測サーバ400と通信を行ってもよい。
【0042】
<ゲーム難易度予測サーバ400>
ゲーム難易度予測サーバ400は、別のクラウドサーバやコンピュータ装置を備えてもよい。また、ゲーム難易度予測サーバ400は、端末機100のプロセッサまたはパズルゲームサーバ200のデータ処理部に設置されたニューラルネットワークシステムであってもよいが、以下においてゲーム難易度予測サーバ400は、端末機100またはパズルゲームサーバ200と別の装置として説明する。
【0043】
ゲーム難易度予測サーバ400は、命令を格納する少なくとも1つのメモリ401、少なくとも1つのプロセッサ402、及び通信部403を備えてもよい。
【0044】
ゲーム難易度予測サーバ400は、通信部403を介してパズルゲームサーバ200からユーザの勝率またはゲームプレイサーバ300からエージェント・ベース・モデルの勝率を受信してもよい。ゲーム難易度予測サーバ400は、受信したユーザの勝率とエージェント・ベース・モデルの勝率とを利用して、ゲーム難易度予測モデルを学習してもよい。ゲーム難易度予測サーバ400がゲーム難易度予測モデルを学習する詳しい説明は、
図5のゲーム難易度予測モデルに関する説明にしたがう。また、ゲーム難易度予測サーバ400は、ゲーム難易度調整部が予測したゲーム難易度に基づいてゲームマップのゲーム難易度を調整してもよい。ゲーム難易度調整に関する詳しい説明は、
図6~
図9の説明にしたがう。
【0045】
ゲーム難易度予測サーバ400のメモリ401は、ゲーム難易度予測サーバ400で駆動される複数の応用プログラム(Application program)またはアプリケーション(Application)、ゲーム難易度予測サーバ400の動作のためのデータ、命令語を格納してもよい。命令は、プロセッサ402を用いて動作を行わせるためにプロセッサ402により実行可能であり、動作は、ゲーム難易度予測モデル学習(トレーニング)動作、ゲーム難易度予測実行、ゲームマップのゲーム難易度調整、及び各種送信動作を含んでもよい。また、メモリ401は、ディープラーニングモデルであるゲーム難易度予測モデル及びゲーム難易度調整部を格納してもよい。また、メモリ401は、ハードウェアとして、ROM、RAM、EPROM、フラッシュドライブ、ハードドライブなどの様々な格納機器であってもよく、メモリ401は、インターネット(Internet)上でメモリ401の格納機能を果たすウェブストレージ(Web storage)であってもよい。
【0046】
ゲーム難易度予測サーバ400のプロセッサ402は、メモリ401に格納されたゲーム難易度予測モデルを読み出して、構築されたニューラルネットワークシステムにしたがって下記に記述するゲーム難易度予測またはゲームマップに対するゲーム難易度調整を行ってもよい。本実施形態においてプロセッサ402は、全体ユニットを制御するメインプロセッサと、ゲーム難易度予測モデルによってニューラルネットワーク駆動の際に必要な大容量の演算を処理する複数のグラフィックプロセッサ(Graphics Processing Unit、GPU)とを備えるように構成されてもよい。
【0047】
ゲーム難易度予測サーバ400は、通信部403を介してネットワーク500を経由してパズルゲームサーバ200またはゲームプレイサーバ300と通信を行ってもよい。
【0048】
<エージェント・ベース・モデル310>
図2は、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサーバでゲームマップにおける行動のエージェント・ベース・モデルを説明する図であり、
図3は、
図2のエージェント・ベース・モデルの行動方式を説明するための一例であり、
図4は、
図2のエージェント・ベース・モデルの行動方式を説明するための他の例である。
【0049】
本発明の一実施形態に係るエージェント・ベース・モデル310は、ゲームプレイサーバ300のディープラーニングモデルであってもよい。エージェント・ベース・モデル310は、ゲームマップの現在状態Sに対して可能な行動Aのうち、いずれか1つの行動Oを行ってもよい。特に、エージェント・ベース・モデル310は、ゲームマップの現在状態Sで大きい点数を得ることができる行動Oを行ってもよい。例えば、
図2に示すように、ゲームマップは、横9マス、縦12マスであってもよい。ゲームマップには、1マスサイズであり、4つの色相のうちの1つの色相により構成される固定パズルfpが配置されてもよい。操作パズルcpは、2マスサイズであり、固定パズルfpと対応する4つの色相のうち、2つの色相により構成されるか、1つの色相によってのみ構成されてもよい。エージェント・ベース・モデル310は、固定パズルfpと同じ色相の操作パズルcpがマッチングされるように操作パズルcpに対して行動Oを行ってもよい。エージェント・ベース・モデル310が可能な行動Aは、操作パズルcpの位置変更、回転などを含んでもよい。一例として、
図3に示すように、エージェント・ベース・モデル310が可能な行動Aは、基本行動BAと特殊行動SAとを含んでもよい。基本行動BAは、操作パズルcpの方向または位置を変更してゲームマップに配置する行動であってもよい。基本行動BAは、ゲームマップサイズとパズル色相とを考慮して、432種(9×12×4)の行動を含んでもよい。特殊行動SAは、スキル行動とスイッチ行動との2種を含んでもよい。スイッチ行動は、ランダムに生成されて順に配置された操作パズルcpの順序を変更する行動である。他の例として、
図4に示すように、エージェント・ベース・モデル310が可能な行動Aは、基本行動BA、特殊行動SA、及び準備行動PAを含んでもよい。基本行動BAと特殊行動SAの説明は、前述した一例と同様である。準備行動PAは、ゲーム開始前、操作パズルcpで基本行動BAに使用される候補パズルを所定の個数の分だけ選択する行動である。すなわち、エージェント・ベース・モデル310は、準備行動PAを含んで行動Aをする場合、ゲーム開始前に準備行動PAを介してゲームプレイに使用する操作パズルcpの候補を選択してもよい。また、準備行動PAは、ゲーム開始前、複数の特殊行動SAのうち、いずれか1つの特殊行動を候補特殊行動として選択し、ゲームプレイ中に候補特殊行動をしてもよい。
【0050】
また、エージェント・ベース・モデル310は、学習されていない新規マップでもマッチ3パズルゲームを行うことができる。エージェント・ベース・モデル310が新規マップでマッチ3パズルゲームを行い学習する方法は、
図10~
図13のエージェント・ベース・モデル学習方法の説明にしたがう。
【0051】
<ゲーム難易度予測モデル410及びゲーム難易度調整>
図5は、ゲーム難易度予測サーバでゲーム難易度予測モデルを生成する方法を説明するための図であり、
図6は、ゲーム難易度予測サーバで新しいマップに対するゲーム難易度予測及びゲーム難易度を調整する方法を説明するための図であり、
図7は、ゲーム難易度によるゲームマップの例示図であり、
図8は、ゲームマップのゲーム難易度を調整する方法を説明するための図であり、
図9は、ゲームマップのステージによるゲーム難易度を設定する例示図である。
【0052】
ゲーム難易度予測モデル410は、学習されていないゲームマップに対するゲーム難易度を予測してもよい。
図5に示すように、ゲーム難易度予測モデル410が学習されていないゲームマップに対するゲーム難易度を予測するためには、学習されたゲームマップSM(Stage Map)に対するエージェント・ベース・モデル310の勝率(Agent base model Success Rate;ASR)とユーザの勝率(User Success Rate;USR)とを利用して学習されなければならない。ユーザの勝率USRは、端末機100に格納された勝率であってもよい。ゲーム難易度予測モデル410の学習方法は、学習されたゲームマップSMに対するユーザの勝率USRと学習されたゲームマップSMに対するエージェント・ベース・モデルの勝率ASRとの間の差を利用した線形分析をすることである。線形分析の一例として、二項回帰分析をしてもよい。勝率は、ゲームマップでゲームプレイを試みた回数に対するゲームをクリアして成功した回数であってもよい。学習されたゲームマップSMは、エージェント・ベース・モデル310で学習されたゲームマップでありうるし、ユーザの端末機100にパズルゲームサーバ200から提供されるゲームマップでありうる。
図6に示すように、学習の結果、ゲーム難易度予測モデル410は、学習されていないゲームマップNM(New Map)に対するエージェント・ベース・モデル310の勝率ASRを入力すれば、ユーザの勝率(Predicted USR;PUSR)を予測することができるようになり、ゲーム難易度を予測することができる。ゲーム難易度予測モデル410は、数式1にしたがってエージェント・ベース・モデルの勝率ASRを入力として予測されたユーザの勝率PUSRを出力することができる。
【数1】
数式1において、λ
1は、エージェント・ベース・モデル成功率ASRのハイパーパラメータである。F
1、F
2・・・は、ゲームマップに対する1つ以上の固有特性である。λ
2、λ
3・・・は、ゲームマップの各固有特性に対するハイパーパラメータである。
【0053】
また、ゲーム難易度予測サーバ400は、ゲーム難易度予測モデル410とゲーム難易度調整部420とを利用して学習されていないゲームマップNM、すなわち、新規マップに対するゲーム難易度を調整してもよい。ゲームマップは、固定パズルの個数、固定パズルが隣接した程度、使用可能な操作パズルの個数、固定パズルの配置などによってゲーム難易度が決定され得る。一例として、
図7に示すように、ゲーム難易度がレベル1からレベル10へとレベルが上がるほど、固定パズルの個数が増加し、同じ色相の固定パズルの隣接度が低下してゲーム難易度が高まるゲームマップの例示である。ゲーム難易度が高くなるほど、操作パズルの行動により固定パズルをマッチ3で除去することが難しくなる。また、ゲーム難易度予測サーバ400は、学習されていないゲームマップNMをエージェント・ベース・モデル310がプレイしてエージェント・ベース・モデル310の勝率ASRを受信してもよい。ゲーム難易度予測サーバ400は、ゲーム難易度予測モデル410を利用してエージェント・ベース・モデル310の勝率ASRを入力としてユーザの予測勝率PUSRを算出してもよい。ゲーム難易度予測サーバ400は、ユーザの予測勝率PUSRを基盤にゲーム難易度調整部420が学習されていないゲームマップNMのゲーム難易度を調整してもよい。ゲーム難易度の調整とは、ゲームマップの固定パズルの個数、固定パズルが隣接した程度、使用可能な操作パズルの個数、固定パズルの配置などを調整することである。一例として、ゲーム難易度を高めるために、固定パズルの個数を増加させるか、同一色相の固定パズルをより遠く配置するか、使用可能な操作パズルの数を減らしてもよい。ゲーム難易度を低めるために、固定パズルの個数を減少させるか、同一色相の固定パズルを互いに隣接して配置するか、使用可能な操作パズルの数を増加してもよい。例えば、
図8に示すように、ゲーム難易度予測サーバ400は、ゲームマップの難易度を評価したが、難易度が高いことと評価された場合、固定パズルの数を減少させ、固定パズルの配置を変更して難易度を低めてもよい。
【0054】
図9に示すように、ゲーム難易度予測サーバ400は、ゲームマップのステージが上がるほど、ゲームマップの難易度が増加し、n+5ステージの次のステージの難易度を、前のステージの難易度より減少させてもよい。nは、自然数である。すなわち、n+6ステージは、前のステージであるn+5ステージより難易度が低くてもよい。ユーザは、ステージが上がるほどゲーム難易度が増加し続ければ、ゲームが難しいと感じてゲームの興味が減少することがある。これにより、本発明のゲーム難易度予測サーバ400は、ゲーム難易度が増加したり、減少したり、再度増加するように調整して、ユーザにゲームが面白いと感じさせ、興味を誘発することができる。
【0055】
したがって、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測装置は、マッチ3パズルゲームを行うディープラーニング基盤のゲームプレイサーバを利用してゲームマップの難易度を予測し、ゲームマップを修正してもよい。また、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測装置は、学習されていない新しいゲームマップでもゲームプレイが可能なゲームプレイサーバを提供することができる。また、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法及びその装置は、新しいゲームマップに対するゲーム難易度を予測することができる。また、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測装置は、ゲームマップのゲーム難易度を調整してゲームに対する興味を誘発することができる。
【0056】
<ディープラーニング基盤のゲームプレイサービス方法>
図10は、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法に対するフロー図であり、
図11は、
図10のディープラーニング基盤のゲームプレイサービス方法のうち、複数の第2のゲームマップに対する例示図であり、
図12は、
図10のディープラーニング基盤のゲームプレイサービス方法のうち、複数の分割ゲームマップ生成及びトレーニングデータセット生成方法を説明するための例示図である。
【0057】
本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、ディープラーニング基盤のゲームプレイサーバがゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、縦または横に隣接して同じ色相のパズルが3つ以上マッチングされれば除去され、点数を得るマッチ3パズルゲームを行うことができる。
【0058】
図10に示すように、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、第1のサイズの複数の第1のゲームマップ及び第2のサイズの複数の第2のゲームマップを受信するステップ(S1001)を含んでもよい。具体的に、第1のゲームマップは第1のサイズであり、第2のゲームマップは第2のサイズである。第1のゲームマップは、実際にパズルゲームサーバ200が端末機100にゲームサービスとして提供するゲームマップである。第2のゲームマップは、エージェント・ベース・モデルの学習のために使用されるゲームマップである。第1のゲームマップの第1のサイズは、第2のゲームマップの第2のサイズより大きくてもよい。すなわち、第2のゲームマップは、第1のゲームマップのミニマップであってもよい。一例として、第1のゲームマップの第1のサイズは、
図2と
図7のように、9×12サイズであってもよい。第2のゲームマップMMの第2のサイズは、
図11のように、5×7サイズでありうる。
【0059】
また、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、複数の第2のゲームマップMMに対して大きい点数を得る行動をするようにエージェント・ベース・モデル310を第1強化学習するステップ(S1002)を含んでもよい。具体的に、ゲームプレイサーバ300は、エージェント・ベース・モデル310を第1強化学習させるために、第1のゲームマップではなく第2のゲームマップMMを利用して先に強化学習させてもよい。最初から第1のゲームマップを利用して強化学習する場合、第1のゲームマップのサイズが大きく、選択肢が多いため、エージェント・ベース・モデル310が学習できないという問題があるためである。したがって、選択肢が少ない第1のゲームマップのミニマップである第2のゲームマップを利用すれば、第2のゲームマップに対してエージェント・ベース・モデル310がゲームプレイを行って点数を得るように強化学習させてもよい。第1強化学習は、RND(Random Network Distillation)を利用してもよい。RNDは、目標、予測、及び政策ニューラルネットワークで構成されてもよい。政策ニューラルネットワークは、エージェントの行動を決定するニューラルネットワークであり、目標及び予測ニューラルネットワークは、次の状態値を入力として受けてある特徴値を出力するニューラルネットワークである。目標ニューラルネットワークは、荷重値がランダムに設定されて固定され、予測ニューラルネットワークは、目標ニューラルネットワークと同じ構造を有するニューラルネットワークであって、目標ニューラルネットワークと同一の出力を出すように政策ニューラルネットワークとともに学習される。すなわち、ランダムニューラルネットワーク(Random network)を予測ニューラルネットワークに蒸留(Distillation)する効果があるので、random network distillationと呼ばれる。RNDでは、内発的報酬のための価値関数と外発的報酬のための価値関数とを各々求めた後、合わせる方式を選んでおり、政策ニューラルネットワーク最適化のために、PPO(Proximal Policy Optimization)を使用する。また、ゲームプレイサーバ300は、エージェント・ベース・モデル310の第1強化学習の際、入力に第2のゲームマップMMとともにガウスノイズを混ぜて入力してもよい。この場合、エージェント・ベース・モデル310の学習がより効率的になる。また、ゲームプレイサーバ300は、エージェント・ベース・モデル310の第1強化学習の際、複数の第2のゲームマップを入力するとき、ゲーム難易度が低いマップから高いマップの順に入力して強化学習を行ってもよい。これにより、エージェント・ベース・モデル310の学習がより効率的になる。
【0060】
また、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、複数の第1のゲームマップの各々に対して固定パズルの数の分だけ固定パズルを中心に配置して第2のサイズの複数の分割ゲームマップを生成するステップ(S1003)を含んでもよい。一例として、
図12のように、所定のゲームマップで固定パズルを中心として分割ゲームマップPMを複数個生成してもよい。第1の分割ゲームマップPM1と第2の分割ゲームマップPM2とに対する様子を見てもよい。分割ゲームマップPMは、ゲームマップで所定の領域の分だけウィンドウを分割したものである。分割ゲームマップは、第2のゲームマップのサイズと同様に第2のサイズであってもよい。一例として、分割ゲームマップのサイズは、5×5サイズであってもよい。ゲームプレイサーバ300は、第2のサイズのゲームマップで学習されたエージェント・ベース・モデル310が第1のゲームマップ内の第2のサイズの分割ゲームマップの各々に対して操作パズルの行動を判断してもよい。
【0061】
また、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、複数の第1のゲームマップの各々を入力データとし、複数の第1のゲームマップの各々に対して第2のサイズの複数の分割ゲームマップに対する行動のうち、最も大きい点数を得る行動をする分割ゲームマップの行動を正解ラベルとしてトレーニングデータセットを生成するステップ(S1004)を含んでもよい。より具体的に、ゲームプレイサーバ300は、エージェント・ベース・モデル310が所定の第1のゲームマップ内に存在する複数の分割ゲームマップのうち、最も高い点数を得る行動をする分割ゲームマップでの行動を選択して、第1のゲームマップでの行動をする。すなわち、エージェント・ベース・モデル310は、複数の分割ゲームマップのうち、最も良い行動を選択するものである。一例として、
図12のように、第1のゲームマップ内に第1の分割ゲームマップPM1と第2の分割ゲームマップPM2とがある。第1の分割ゲームマップPM1で操作パズルを固定パズルに合わせて配置してマッチ3除去により得る点数は1点である。第2の分割ゲームマップPM2で操作パズルを固定パズルに合わせて配置してマッチ3除去により得る点数は10点である。第2の分割ゲームマップPM2での行動が、第1の分割ゲームマップPM1での行動よりさらに高い点数を得てもよい。また、ゲームプレイサーバ300は、第2の分割ゲームマップPM2の行動を所定の第1のゲームマップに対する正解ラベルと指定して所定の第1のゲームマップと第2の分割ゲームマップPM2とをトレーニングデータセットに含めてもよい。ゲームプレイサーバ300は、同じような方式にて複数の第1のゲームマップに対して正解ラベルを生成し、トレーニングデータセットを集めてもよい。また、ゲームプレイサーバ300は、エージェント・ベース・モデル310の教師あり学習の際、複数の第1のゲームマップを入力するとき、ゲーム難易度が低いマップから高いマップの順に入力して強化学習を行ってもよい。この場合、トレーニングデータセットは、ゲーム難易度が低いマップから高いマップの順に構成されてもよい。
【0062】
また、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、第1強化学習されたエージェント・ベース・モデルをトレーニングデータセットを利用して教師あり学習するステップ(S1005)を含んでもよい。より具体的に、ゲームプレイサーバ300は、第2のサイズの第2のゲームマップに対して第1強化学習されたエージェント・ベース・モデル310を第1のゲームマップの分割ゲームマップを利用して取得したトレーニングデータセットを利用して教師あり学習してもよい。これにより、教師あり学習されたエージェント・ベース・モデル310は、第1のサイズの第1のゲームマップに対してもゲームマップを分割しなくてもゲームプレイができるようになる。また、ゲームプレイサーバ300は、ゲーム難易度が低いマップから高いマップの順序となったトレーニングデータセットをエージェント・ベース・モデル310に順に入力してより効率よく学習させることができる。
【0063】
また、本発明の一実施形態に係るディープラーニング基盤のゲームプレイサービス方法は、教師あり学習されたエージェント・ベース・モデルを複数の第1のゲームマップに対して第2強化学習するステップ(S1006)を含んでもよい。より具体的に、教師あり学習されたエージェント・ベース・モデルが、選択肢の多い第1のゲームマップに対してある程度ゲームプレイを行うことができるが、分割ゲームマップで学習されて分割ゲームマップ間に空いた空間を考慮して学習されたものでないため、最も高い点数を得る行動をしない場合が生じ得る。このため、ゲームプレイサーバ300は、第1のゲームマップでプレイが可能となったエージェント・ベース・モデル310をもう一度複数の第1のゲームマップに対して第2強化学習をさせるものである。第2強化学習は、第1強化学習と同様に、RNDとPPOを利用してもよい。また、ゲームプレイサーバ300は、第2強化学習をするとき、エージェント・ベース・モデル310に第1のゲームマップとともにガウスノイズを混ぜて入力してもよい。この場合、エージェント・ベース・モデル310の学習がより効率的になる。
【0064】
したがって、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法は、学習されていない新しいゲームマップでもゲームプレイが可能なゲームプレイサーバを提供することができる。
【0065】
図13は、本発明のエージェント・ベース・モデルと従来技術に係るエージェント・ベース・モデルとの比較例である。
【0066】
図13に示すように、エージェント・ベース・モデルを本発明に係るディープラーニング基盤のゲームプレイサービス方法により学習した場合と従来技術に係る他の学習方法により学習した場合との性能を比較した。ゲームマップのレベルが5以下では、エージェント・ベース・モデルの性能が類似している。しかし、最も難易度が高いレベル10でのゲームマップで性能に差があることが分かる。まず、従来技術に係る学習方法であるMCTSアルゴリズム(MCTS)、CNN教師あり学習(CNN)、9×12の強化学習で学習されたエージェント・ベース・モデル(RL(9×12))は、成功率が急激に低くなることが分かる。しかし、本発明のゲームマップを分割して強化学習した方法(RL(5×5))は、レベル10のゲームマップでも高い成功率を示す。さらに、本発明の分割ゲームマップで強化学習されたエージェント・ベース・モデルを再度教師あり学習した後、再度9×12ゲームマップで強化学習したエージェント・ベース・モデル(SL+RL)は、レベル10で最も高い成功率を見せる。
【0067】
図14は、本発明のディープラーニング基盤のゲーム難易度予測方法に対するフロー図である。
【0068】
本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測方法は、ディープラーニング基盤のゲーム難易度予測サーバがゲームマップに配置された固定パズルに合わせて操作パズルを配置する行動によって、縦または横に隣接して同じ色相のパズルが3つ以上マッチングされれば除去され、点数を得るマッチ3パズルゲームに関するものであって、学習されていないゲームマップに対するユーザの難易度を予測してもよい。
【0069】
図14に示すように、本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測方法は、学習されていないゲームマップ及び学習されたゲームマップに対するユーザの勝率を受信するステップ(S1401)を含んでもよい。
【0070】
また、本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測方法は、エージェント・ベース・モデルの勝率とユーザの勝率との差を利用した二項回帰分析を介してゲーム難易度予測モデルを学習するステップ(S1402)を含んでもよい。ゲーム難易度予測モデル410を学習する方法は、
図5の説明にしたがう。
【0071】
また、本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測方法は、学習されていないゲームマップに対するエージェント・ベース・モデルの勝率を算出するステップ(S1403)を含んでもよい。より具体的に、学習されたエージェント・ベース・モデルの勝率は、エージェント・ベース・モデル310が学習されていないゲームマップに対してゲームを行って得た勝率である。
【0072】
また、本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測方法は、ゲーム難易度予測モデルを介して学習されていないゲームマップに対するエージェント・ベース・モデルの勝率を入力として、学習されていないゲームマップに対するユーザの勝率を予測するステップ(S1404)を含んでもよい。ユーザの勝率を予測する方法は、
図6の説明にしたがう。
【0073】
また、本発明の一実施形態に係るディープラーニング基盤のゲーム難易度予測方法は、予測された学習されていないゲームマップに対するユーザの勝率を利用して学習されていないゲームマップの難易度を修正するステップ(S1405)を含んでもよい。学習されていないゲームマップの難易度を修正する方法は、
図6~
図9の説明にしたがう。
【0074】
したがって、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法は、マッチ3パズルゲームを行うディープラーニング基盤のゲームプレイサーバを利用してゲームマップの難易度を予測し、ゲームマップを修正することができる。また、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法は、新しいゲームマップに対するゲーム難易度を予測することができる。また、本実施形態に係るディープラーニング基盤のゲームプレイサーバを利用したゲーム難易度予測方法は、ゲームマップのゲーム難易度を調整してゲームに対する興味を誘発することができる。
【0075】
以上で説明された本発明に係る一実施形態は、様々なコンピュータ構成要素を介して実行され得るプログラム命令語の形態で実現されて、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体は、プログラム命令語、データファイル、データ構造などを単独でまたは組み合わせて含んでもよい。コンピュータ読み取り可能な記録媒体に記録されるプログラム命令語は、本発明のために特別に設計され、構成されたものであるか、コンピュータソフトウェア分野の当業者に公知されて使用可能なものでありうる。コンピュータ読み取り可能な記録媒体の例には、ハードディスク、フロッピーディスク、及び磁気テープのような磁気媒体、CD-ROM及びDVDのような光気緑媒体、フロプティカルディスク(floptical disk)のような磁気-光媒体(magneto-optical medium)、及びROM、RAM、フラッシュメモリなどのような、プログラム命令語を格納し、実行するように特別に構成されたハードウェアー装置が含まれる。プログラム命令語の例には、コンパイラによって作られるような機械語コードだけでなく、インタプリタなどを使用してコンピュータにより実行され得る高級言語コードも含まれる。ハードウェアー装置は、本発明に係る処理を行うために、1つ以上のソフトウェアモジュールに変更されることができ、その逆も同様である。
【0076】
本発明において説明する特定実行等は、一実施形態であって、いかなる方法でも本発明の範囲を限定するものではない。明細書を簡潔にするために、従来の電子的な構成、制御システム、ソフトウェア、システムの他の機能的な側面等の記載は省略されることがある。また、図面に図示された構成要素間の線等の接続または接続部材などは、機能的な接続及び/又は物理的または回路的接続を例示的に示したものであって、実際、装置では代替可能であるか、追加の様々な機能的な接続、物理的な接続、または回路接続として示されてもよい。また、「必須な」、「重要に」などのように、具体的な言及がなければ、本発明の適用のために必ず必要な構成要素でない場合がある。
【0077】
また、説明した本発明の詳細な説明では、本発明の好ましい実施形態を参照して説明したが、当該技術分野の熟練された当業者または当該技術分野における通常の知識を有する者であれば、後述する特許請求の範囲に記載された本発明の思想及び技術領域から逸脱しない範囲内で本発明を様々に修正及び変更させ得ることが理解できるであろう。したがって、本発明の技術的範囲は、明細書の詳細な説明に記載された内容に限定されるものではなく、特許請求の範囲により決められなければならないであろう。
【符号の説明】
【0078】
100 端末機
200 パズルゲームサーバ
310 エージェント・ベース・モデル
300 ゲームプレイサーバ
400 ゲーム難易度予測サーバ
410 ゲーム難易度予測モデル