(57)【要約】【課題】ボードゲームの競技者プログラムをより容易に作成することができる、システムおよびプログラムを提供する。【解決手段】  競技者プログラム管理システム１０は、リバーシの局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、戦術情報Ｄ１の入力を受け付けて、競技者プログラムＰ１を作成する。競技者プログラムＰ１は、コンピュータを仮想的な競技者として機能させる。仮想的な競技者は、複数の手のそれぞれについて、手を打った後の局面を、戦術情報Ｄ１に従って評価することにより、各手のポイントを決定する機能と、各手のポイントに基づき、打つべき手を選択する機能とを備える。【選択図】図１１
2018051139.tif 000002
【特許請求の範囲】
【請求項１】
ボードゲームの競技者プログラムを作成する、プログラム作成システムであって、
前記競技者プログラムは、コンピュータを前記ボードゲームの仮想的な競技者として機能させるものであり、
前記ボードゲームは、前記仮想的な競技者を含む複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであり、
前記プログラム作成システムは、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則の入力を受け付ける、局面評価規則入力機能を備え、
前記競技者プログラムは、
‐複数の手のそれぞれについて、手を打った後の局面を、前記局面評価規則に従って評価することにより、各手の評価値を決定する、評価値決定機能と、
‐各手の評価値に基づき、打つべき手を選択する、選択機能と、
を前記コンピュータに実現させることにより、前記コンピュータを前記仮想的な競技者として機能させるものである、
プログラム作成システム。
【請求項２】
前記パターンは、２次元座標系における位置を表す情報と、その位置を基準とするピースの状況を表す情報との組を含む、請求項１に記載のプログラム作成システム。
【請求項３】
前記プログラム作成システムは、前記局面評価規則の入力を受け付けるための、規則入力画面を出力する機能を備える、請求項１または２に記載のプログラム作成システム。
【請求項４】
前記規則入力画面は、ボードゲームの盤面を表す盤面画像と、ピースの状況を表すピース画像とを含み、前記パターンは、前記盤面画像または前記ピース画像に対する操作を介して入力可能である、請求項１〜３のいずれか一項に記載のプログラム作成システム。
【請求項５】
前記プログラム作成システムは、前記局面評価規則を検証するための、規則検証画面を出力する機能を備え、
前記規則検証画面は、ボードゲームの盤面を表す盤面画像を含み、
前記プログラム作成システムは、前記規則検証画面において、複数の手のそれぞれについて、その手に対応する盤面画像上の位置に、その手の評価値を表示する、
請求項１〜４のいずれか一項に記載のプログラム作成システム。
【請求項６】
ボードゲームの試合実行システムであって、
前記ボードゲームは、複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を逐次打つことにより進行するゲームであり、
前記試合実行システムは、
‐局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則を、複数の競技参加コンピュータから、通信ネットワークを介して受信する、局面評価規則受信機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第１の前記競技参加コンピュータに係る第１の局面評価規則に従って評価することにより、各手の第１の評価値を決定する、第１の評価値決定機能と、
‐各手の第１の評価値に基づき、打つべき手を選択する、第１の選択機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第２の前記競技参加コンピュータに係る第２の局面評価規則に従って評価することにより、各手の第２の評価値を決定する、第２の評価値決定機能と、
‐各手の第２の評価値に基づき、打つべき手を選択する、第２の選択機能と、
‐前記第１の評価値決定機能と、前記第２の評価値決定機能と、前記第１の選択機能と、前記第２の選択機能とを用いて、前記ボードゲームの試合を実行する機能と、
を備える、試合実行システム。
【請求項７】
コンピュータを、請求項１〜５のいずれか一項に記載のプログラム作成システムまたは請求項６に記載の試合実行システムとして機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラム作成システム、試合実行システムおよびプログラムに関する。
【背景技術】
【０００２】
オセロ（登録商標）、将棋、囲碁等のボードゲームについて、トーナメント等の競技会が頻繁に開催されている。このような競技会は、人間が競技者として参加するのが通常である。しかしながら、競技会に参加したいと思っていても、いざ参加するとなると躊躇してしまう競技者が多い。その要因は様々なものがあるが、たとえば、（１）実力をその場で発揮しなくてはならないので、プレッシャーやストレスを感じる、（２）何試合もの対戦を行うので疲弊する、（３）会場への移動時間や、対戦の待ち時間等で長時間拘束される、（４）競技会のスケジュールに合わせるのが困難である、（５）実力が低く上位入賞の見込みがない、等が挙げられる。
【０００３】
ボードゲームについては、コンピュータを仮想的な競技者として機能させるプログラムが多数開発されている。このようなプログラムの作成方法の例は、特許文献１および非特許文献１等に開示される。このようなプログラムの利用方法を工夫すれば、上記要因の一部は軽減される可能性がある。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００５−３３９１３７号公報
【非特許文献】
【０００５】
【非特許文献１】Ｄａｉｋｉ  Ｓａｎｎｏ、「リバーシプログラムの作り方」、[online]、［平成２８年７月５日検索］、インターネット＜URL:http://www.es-cube.net/es-cube/reversi/sample/html/6_7.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、このような仮想的競技者プログラムを作成するためにはプログラミング言語についての専門的な知識および相当の作業時間を要し、一般的な競技者にとっては非常に困難であるという問題があった。
【０００７】
この発明は、このような問題点を解決するためになされたものであり、ボードゲームの競技者プログラムをより容易に作成することができる、システムおよびプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述の問題点を解決するため、この発明に係るプログラム作成システムは、
ボードゲームの競技者プログラムを作成する、プログラム作成システムであって、
前記競技者プログラムは、コンピュータを前記ボードゲームの仮想的な競技者として機能させるものであり、
前記ボードゲームは、前記仮想的な競技者を含む複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであり、
前記プログラム作成システムは、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則の入力を受け付ける、局面評価規則入力機能を備え、
前記競技者プログラムは、
‐複数の手のそれぞれについて、手を打った後の局面を、前記局面評価規則に従って評価することにより、各手の評価値を決定する、評価値決定機能と、
‐各手の評価値に基づき、打つべき手を選択する、選択機能と、
を前記コンピュータに実現させることにより、前記コンピュータを前記仮想的な競技者として機能させるものである。
特定の実施態様によれば、前記パターンは、２次元座標系における位置を表す情報と、その位置を基準とするピースの状況を表す情報との組を含む。
特定の実施態様によれば、前記プログラム作成システムは、前記局面評価規則の入力を受け付けるための、規則入力画面を出力する機能を備える。
特定の実施態様によれば、前記規則入力画面は、ボードゲームの盤面を表す盤面画像と、ピースの状況を表すピース画像とを含み、前記パターンは、前記盤面画像または前記ピース画像に対する操作を介して入力可能である。
特定の実施態様によれば、
前記プログラム作成システムは、前記局面評価規則を検証するための、規則検証画面を出力する機能を備え、
前記規則検証画面は、ボードゲームの盤面を表す盤面画像を含み、
前記プログラム作成システムは、前記規則検証画面において、複数の手のそれぞれについて、その手に対応する盤面画像上の位置に、その手の評価値を表示する。
また、この発明に係るボードゲームの試合実行システムは、
前記ボードゲームは、複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を逐次打つことにより進行するゲームであり、
前記試合実行システムは、
‐局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則を、複数の競技参加コンピュータから、通信ネットワークを介して受信する、局面評価規則受信機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第１の前記競技参加コンピュータに係る第１の局面評価規則に従って評価することにより、各手の第１の評価値を決定する、第１の評価値決定機能と、
‐各手の第１の評価値に基づき、打つべき手を選択する、第１の選択機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第２の前記競技参加コンピュータに係る第２の局面評価規則に従って評価することにより、各手の第２の評価値を決定する、第２の評価値決定機能と、
‐各手の第２の評価値に基づき、打つべき手を選択する、第２の選択機能と、
‐前記第１の評価値決定機能と、前記第２の評価値決定機能と、前記第１の選択機能と、前記第２の選択機能とを用いて、前記ボードゲームの試合を実行する機能と、
を備える。
また、この発明に係るプログラムは、コンピュータを、上述のプログラム作成システムまたは試合実行システムとして機能させる。
【発明の効果】
【０００９】
この発明に係るシステムおよびプログラムによれば、局面の特徴を表すパターンを入力することにより仮想的競技者を実現できるので、プログラミング言語の知識は不要であり、一般的な競技者でも容易に仮想的な競技者を作成することができる。
【図面の簡単な説明】
【００１０】
【図１】ユーザが個人的に本発明を利用する場合の、本発明の利用例の概略を示す図である。
【図２】トーナメントが開催される場合の、本発明の利用例の概略を示す図である。
【図３】本発明の実施の形態１に係る競技者プログラム管理システムの構成の例を示す図である。
【図４】図３の戦術情報の構成の例を示す図である。
【図５】戦術情報に含まれるパターンの具体例を示す図である。
【図６】図５のパターンを視覚的に表現した図である。
【図７】戦術情報に含まれる様々なパターンの具体例を示す図である。
【図８】パーツであるパターンの具体例を示す図である。
【図９】図８のパターンを視覚的に表現した図である。
【図１０】図８のパターンがヒットする状況を示す図である。
【図１１】戦術登録画面の例である。
【図１２】局面を評価するフローチャートの例である。
【図１３】局面の評価内容の具体例を示す図である。
【図１４】戦術評価画面の例である。
【図１５】図１４の戦術評価画面の表示に用いられる情報の構成の例を示す図である。
【図１６】戦術検証画面の例である。
【図１７】リプレイ画面の例である。
【図１８】本発明の実施の形態２に係る大会実行システムの構成例を示す図である。
【発明を実施するための形態】
【００１１】
以下、この発明を添付図面に基づいて説明する。
［発明の利用例の概略］
図１および図２に、本発明の利用例の概略を示す。これらの利用例は、ユーザの立場から見た本発明の意義を簡易に説明するためのものであって、システムの構成よび作用を厳密に説明するものではなく、後述する具体的な実施の形態とは必ずしも整合しない場合がある。また、これらの図はあくまでも例を示すものであり、本発明を実施するための具体的態様を限定するものではない。さらに、これらの図に関連して説明される効果は、本発明に本質的でないものを含む。
【００１２】
図１は、ユーザが個人的に本発明を利用する場合の例である。本発明は、リバーシ等のボードゲームに関連して用いられる。まずユーザは、コンピュータによって構成される仮想的な競技者を作成する。これは、たとえば戦術情報を登録する（すでに登録されている場合にはこれを変更する）ことによって行われる。戦術情報は、たとえば局面を評価するための情報であり、ボードゲームのある局面がどの程度望ましいかを表現できるようになっている。仮想的な競技者は、この戦術情報に基づき、最も望ましい局面を実現する手を打つように行動する。このように、局面をベースにして戦術情報を組み立てることができ、容易に仮想的な競技者を作成することができる。
【００１３】
次に、ユーザは仮想的な競技者を評価する。たとえば、評価すべき対象として特定の戦術情報に着目して多数回の試合を繰り返し（たとえば仮想的な競技者どうしで）、その戦術情報が試合結果にどのように影響したかを表す頒布図と、その戦術の評価結果を表すコメントを表示させる。このようにして、戦術の評価を視覚的に行うことができる。
【００１４】
また、たとえばユーザは、特定の局面を入力し、その局面において手の選択に影響する戦術をすべて抽出し、実行可能な手のそれぞれについて全戦術の総合評価を表示させることにより、各戦術を検証する。この結果に応じ、ユーザは戦術情報を変更することができ、さらに変更した戦術情報に基づいて検証を繰り返すことができる。このようにして戦術を改良し、より汎用性の高いものとすることができる。
【００１５】
このようにして戦術情報を完成させた後、対戦相手の戦術情報（たとえば他人が同様にして作成した戦術情報）との間で試合を実施する。この際、ユーザが複数の仮想的な競技者を作成していた場合には、そのいずれかを選択することができる。試合結果は表示されるとともに試合結果データベースに記録される。
【００１６】
試合の後は、その試合を分析することができる。たとえば、分析したい試合を選択し、そのうち特定の局面を選択し（たとえばＮ手目）、その局面で実行可能な手をすべて表示させた上で、各手の評価に影響した戦術を表示させる。このようにして、敗因となった戦術を特定する等の分析が可能となる。
【００１７】
図２は、トーナメントが開催される場合の例である。トーナメントＷｅｂサイトは、インターネット等に向けてトーナメントの案内を行う。これを見たユーザは、各自、競技者プログラム作成システムを用いて戦術情報を作成し、エントリを実行する。トーナメントＷｅｂサイトはエントリを受け付けてトーナメント表を作成し、公表するとともに、試合を実施する。
【００１８】
試合の実施は、エントリの際に受け付けた各ユーザの戦術情報に従って、自動的に行われるので、ユーザに精神的・時間的な負担はかからない。また、ユーザは試合結果を分析することにより戦術のさらなる改良を行うことができる。
【００１９】
［実施の形態１］
図３に、本発明の実施の形態１に係る競技者プログラム管理システム１０の構成の例を示す。競技者プログラム管理システム１０は、ボードゲームの競技者プログラムを作成および実行することにより管理するシステムである。
【００２０】
ボードゲームは、たとえばオセロゲームまたはリバーシ、囲碁、五目並べまたは連珠、将棋、チェス、チェッカー、等を含む。「ボードゲーム」という語の意味は、当業者が適宜定義可能であるが、たとえば、複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであるということができる。競技者は、人間であってもよいし、コンピュータ等を用いて実現される仮想的な競技者であってもよい（なお本発明の実施においては、少なくとも１人の競技者は仮想的な競技者とする必要がある）。ピースとは、石、駒、カード、ペグ、等を含む。「手を打つ」とは、局面の状況を変更する動作を実行することを意味し、たとえばゲーム盤上にピースを置く、ゲーム盤上のピースの姿勢または向きを変える（裏返す等）、ゲーム盤上の特定の位置に配置されているピースを別の位置に移動させる、ゲーム盤上に配置されているピースをゲーム盤から取り除く、ピースの所有者を変更する、等の行為を含む。また、すべての手が局面の状況を変更するものである必要はなく、たとえばゲーム盤に影響を及ぼさない手が定義されてもよい（自分の手番をパスする、特定の宣言を行う、等）。
【００２１】
実施の形態１では、競技者プログラム管理システム１０は、単独で本発明に係るプログラム管理システムを構成することができる。競技者プログラム管理システム１０は公知のコンピュータとしての構成を有し、演算を行う演算手段１１と、情報を格納する記憶手段１２と、情報の入力を受け付ける入力装置１３と、情報を外部に出力する出力装置１４とを備える。演算手段１１はたとえばＣＰＵ（中央処理装置）を含み、記憶手段１２はたとえば半導体メモリ、ハードディスクドライブ、ソリッドステートドライブ等を含み、入力装置１３はたとえばキーボード、マウス、タッチパネル等を含み、出力装置１４はたとえば液晶ディスプレイ、スピーカ、プリンタ等を含む。また、競技者プログラム管理システム１０は、通信ネットワークに対して情報の入出力を行う通信手段等を備えてもよい。
【００２２】
記憶手段１２は、競技者プログラムＰ１と、プログラム作成プログラムＰ２と、試合実行プログラムＰ３と、戦術情報Ｄ１と、試合情報Ｄ２とを格納する。競技者プログラムＰ１は、コンピュータ（たとえば競技者プログラム管理システム１０）を、ボードゲームの仮想的な競技者として機能させるものである。たとえば、競技者プログラムＰ１は、ある局面について可能な手をそれぞれ評価する機能と、評価の結果に基づいて実際に打つべき手を決定する機能とを、コンピュータに実現させる。（より具体的には、図１２等を参照して後述する。）
【００２３】
プログラム作成プログラムＰ２は、コンピュータ（たとえば競技者プログラム管理システム１０）を、「競技者プログラムを作成するためのシステム」（競技者プログラム作成システム）として機能させるものである。たとえば、プログラム作成プログラムＰ２は、競技者プログラムＰ１を作成する機能を、コンピュータに実現させる。
【００２４】
試合実行プログラムＰ３は、コンピュータ（たとえば競技者プログラム管理システム１０）を、試合実行システムとして機能させるものである。たとえば、試合実行プログラムＰ３は、ボードゲームの規則に従い、複数の競技者（一部または全部が仮想的な競技者であってもよい）から手を表す情報を順次受け付ける機能と、その情報または手の結果（局面等）を出力する機能とをコンピュータに実現させ、これによって試合を進行させる。また、試合が終了すると勝敗等を含む結果を出力する機能を、コンピュータに実現させる。
【００２５】
図４に、戦術情報Ｄ１の構成の例を示す。この例はリバーシに対応するものである。戦術情報Ｄ１の各レコードは、それぞれ１つの戦術の単位を表す。戦術は、その戦術を特定する戦術番号と、その戦術の名称を表す戦術名と、その戦術のポイントと、その戦術に対応する局面の特徴を表すパターンとを関連付ける。また、図示するようにゲームの進行状況に応じたその戦術の有効期間をさらに関連付けてもよい。
【００２６】
図５および図６を用いて、パターンの具体例を説明する。この例は、図４の戦術番号「１」、すなわち「隅リーチ」という名称の戦術に含まれるパターンの一例である。パターンは、ゲーム盤上の位置を表す情報（図５の「座標」）と、その位置のピースの状況（図５の「状況」）を表す情報との組を含む。
【００２７】
座標は、ゲーム盤を表す１次元以上の座標系における位置を表す情報である。たとえばリバーシの場合には、図６に示すように、ゲーム盤の各マスを（行，列）という２次元直交座標系で表現することが可能である。この例では、絶対座標系において各マスの位置を表現すると、左上隅が（１，１）、右上隅が（１，８）、左下隅が（８，１）、右下隅が（８，８）となる。また、特定のマス（たとえば（４，４））を基準（原点）とする相対座標系を定義し、この相対座標系において各マスの位置を表現すると、左上隅は（−３，−３）となる。
【００２８】
図５等に示すように、各パターンは、座標が絶対指定であるか相対指定であるかを表す情報を含む。図５の例では絶対座標が指定されており、この場合には、パターンの座標がすべてゲーム盤の座標と一致する必要がある。一方、相対座標が指定されている場合には、パターンを平行移動させたものの座標がゲーム盤の座標と一致してもよい。また、各パターンは、独立したパターンであるか（すなわち連結なし）、または他のパターンと連結されるパーツであるかを示す情報（区分）を含む。図５は独立パターンの例である。
【００２９】
各パターンは、１つ以上の座標を含み、各座標に状況を関連付ける。また、図５に示すように、さらに重要度を関連付けてもよい。これを視覚的に表現したものが図６である。
【００３０】
「状況」とは、その位置を基準とするピースの状況を表す。図５の例では、座標（１，１）すなわち左上隅の状況として「そのマスは空白」という状況が指定されている。図６ではこれを「△」記号で示す。また、図５の例では、いくつかのマスについて、「そのマスに相手の石が存在」または「そのマスに自分の石が存在」という状況が指定されており、図６では相手の石を「○」記号、自分の石を「●」記号により示す。これら以外の状況が指定可能であってもよく、たとえば「自分または相手、いずれかの石が存在」という状況が指定可能であってもよい。また、ボードゲームの規則に応じ、様々な状況が定義可能である。たとえば、ピースの姿勢または向き、所有者、種類等を定義してもよい。
【００３１】
なお、この例ではピースの状況は各座標について１つのみのマスを参照するが、これはより広い範囲のマスを指定する表現であってもよい（たとえば、後述するように「そのマスから上に向けて相手の石が連続している」等）。なお、状況が限定されていない座標については、図６では記号を配置せず空白として示している。これらの座標の状況はパターンには影響しない。
【００３２】
「重要度」とは、その状況がそのパターンにどの程度本質的なものであるか否かを表す。重要度は、たとえば１個のメインパターンと、０個以上の小ヒットパターン（サブパターン）とを用いて定義されてもよい。メインパターンは、各状況がそのパターンに必須である（図５では「必須」）か、または他の状況に応じて選択的に無視される（図５では「選択」）かを指定する。図６では、「必須」のマスは背景を白で示し、「選択」のマスは背景を斜線で示している。
【００３３】
本実施形態では、あるパターンがある局面にヒット（適合）すると判定されるためには、「必須」と指定された座標のすべてについて、各座標の状況が、ゲーム盤の局面の状況と一致することが必要である。
【００３４】
また、本実施形態では、「選択」と指定された座標については、状況の組み合わせを定義する小ヒットパターンのいずれかに、選択的に一致することが必要である。図５の例では３個の小ヒットパターンが定義されており、たとえば座標（３，３）に自分の石が存在する場合には小ヒットパターン１に適合する。この場合には、座標（４，４）および座標（５，５）の状況は任意となり、それらの座標には自分の石があってもよく、相手の石があってもよく、空白であってもよい。
【００３５】
各小ヒットパターンの一致判定は、たとえば、小ヒットパターン１、小ヒットパターン２、…、小ヒットパターンｎ…、小ヒットパターンＮ（ただしＮは小ヒットパターンの最大数、１≦ｎ≦Ｎ）の順に行い、あるｎについて小ヒットパターンｎが定義されていない場合にはその時点で処理を終了すればよい。
【００３６】
なお、小ヒットパターンの指定は省略してもよく（言い換えると、小ヒットパターンの数を０個としてもよく）、その場合にはメインパターンに指定されたすべての状況について重要度を「必須」とすればよい。
【００３７】
ここで、メインパターンにおける「選択」指定の座標のヒット状況に応じ、パターンのヒット程度を「大ヒット」または「小ヒット」と表現することができる。たとえば、「選択」指定の座標を含むすべての座標がヒットした場合には、そのパターンは「大ヒット」したということができる。一方で、「必須」指定の座標はすべてヒットしたが、「選択」指定の座標（一部または全部）がヒットしていない場合には、そのパターンは「小ヒット」したということができる。なお、ここで説明した「大ヒット」の状態を単に「ヒット」と呼んでもよい。
【００３８】
また、本実施形態では、パターンが局面にヒットするか否かを判定する際に、パターンの向きに依存しないヒット判定が行われる。「パターンの向き」とは、パターンの配置角度および反転状態を意味し、たとえば２次元直交座標系のゲーム盤については「０°回転、反転なし」「９０°回転、反転なし」「１８０°回転、反転なし」「２７０°回転、反転なし」「０°回転、反転あり」「９０°回転、反転あり」「１８０°回転、反転あり」「２７０°回転、反転あり」の８種類が定義される。
【００３９】
これらの向きは、たとえば座標を次のように展開することによって得ることができる。展開するための演算は向きに応じて８種類定義され、したがって展開後の座標も８組得られることになる。元の位置の座標（行，列）を（Ｒ０，Ｃ０）とし、展開後の位置の座標を（Ｒｋ，Ｃｋ）ただし１≦ｋ≦８とし、絶対値を｜｜記号によって表すと、
（Ｒ１，Ｃ１）＝（Ｒ０，Ｃ０）
（Ｒ２，Ｃ２）＝（Ｒ０，｜Ｃ０−９｜）
（Ｒ３，Ｃ３）＝（｜Ｒ０−９｜，｜Ｃ０−９｜）
（Ｒ４，Ｃ４）＝（｜Ｒ０−９｜，Ｃ０）
（Ｒ５，Ｃ５）＝（Ｃ０，Ｒ０）
（Ｒ６，Ｃ６）＝（Ｃ０，｜Ｒ０−９｜）
（Ｒ７，Ｃ７）＝（｜Ｃ０−９｜，｜Ｒ０−９｜）
（Ｒ８，Ｃ８）＝（｜Ｃ０−９｜，Ｒ０）
…（式１）
【００４０】
たとえば図６のパターンをこのように展開することにより、４隅すべてに対応するパターンが生成されることになる。（なお図６の例では複数のパターンが重複するため異なるパターンは４種類となる。）リバーシの場合には展開後の座標について８種類すべてを用いると好適であるが、場合によって、または他のボードゲームの場合には、これらのうち一部を省略してもよく、また、他の向きを定義してもよい。
【００４１】
図４に戻り、有効期間およびポイントについて説明する。有効期間とは、ゲームの進行状況を表す値の範囲であり、たとえば手数（何手目であるか）で表現される。「隅リーチ」戦術は、１手目〜５８手目までの局面についてはヒット判定の対象となるが、５９手目以降では対象とならず、ヒットする可能性はない（たとえば、５９手目にパターンが局面にヒットしていても、その戦術は局面にヒットしたとは判定されない）。
【００４２】
ポイントとは、そのパターンの評価値を表す。本実施形態では、ポイントが高いほど有利な局面（またはその特徴）を表すものとする。このようにパターンごとに指定されたポイントに基づき、局面全体のポイントが決定される。たとえば、ある局面について、ヒットした各戦術のポイントの総和をとることにより、その局面のポイントを算出するようにしてもよい。ここで、ポイントは戦術ごとに指定可能なので、局面を評価する際の戦術間の重みを任意に指定することができる。
【００４３】
パターンに対するポイントの定義は、特定の数値であってもよく、数値範囲であってもよい。たとえば「隅リーチ」戦術では、固定のポイント値として「５００」が指定されており、「相手の石を増やす」戦術では、ポイントの範囲として「１〜６２」が指定されている。
【００４４】
図７に、図４の他のパターンの具体例を示す。ここで、図７の「相手の石を増やす」戦術のパターンの例を用いて、ポイントの範囲が指定された場合の、特定のポイント値の決定方法の例を説明する。この戦術では、ポイントに１〜６２という範囲が指定されている。指定されたポイント範囲に幅がある場合には、実際の局面に応じて、当該範囲内の特定の値を決定するための基準が設けられる。この基準は、たとえば戦術中に重要度が「選択」として指定された座標（図６および図７の斜線マス）のヒット状況であってもよい。その場合には、すべての「選択」座標について状況がヒットした場合には範囲内の最大値が与えられ、いずれの「選択」座標についても状況がヒットしなかった場合には範囲内の最小値が与えられ、その中間の場合にはその中間の値が与えられる。中間の値の算出方法は適宜設計可能であるが、たとえばヒットした座標の数の関数として定義してもよく、具体的にはヒットした座標の数に対して線形に算出することができる。
【００４５】
図７の相手の石を増やす」戦術のパターンの例では、ポイントの範囲が１〜６２であり、斜線範囲に３６個の座標（マス）が指定されている。このため、たとえばそのうちの１０個のマスに相手の石が存在していた場合、このパターンのポイントは１＋（６２−１）×（１０／３６）≒１８として決定可能である。
【００４６】
図８〜図１０を用いて、パターンの別の具体例を説明する。（図８の例では小ヒットパターンは定義されていないが、図５と同様に定義されていてもよい。）パターンは、この例のように、他のパターンと連結可能なパーツとして定義されてもよい。図８および図９の例は、図４の戦術番号「７」すなわち「中割り」という名称の戦術と、戦術番号「８」すなわち同じく「中割り」という名称の戦術とに含まれるパターンの一例である。（なお図９および下記説明等からわかるように、戦術番号７のものは斜め方向のパターンに対応し、戦術番号８のものは縦横方向のパターンに対応する。）これらのパターンについては相対座標が指定されており、基準位置（０，０）はゲーム盤上のどの位置にヒットしてもよい。すなわち、パターンを平行移動させたものの座標がゲーム上の座標と一致してもよい。図９では便宜上（４，４）の位置に「●」記号を示すが、これは（４，４）の位置に限らずヒット可能であることになる。
【００４７】
また、図８のようにパーツであるパターンは、最低連結パーツ数の指定を含む。最低連結パーツ数は、そのパーツがある局面にヒットすると判定されるために最低限必要な連結パーツの数を表す。ある局面において、その戦術と、その戦術に連結可能な戦術とを合わせて、合計で最低連結パーツ数以上の回数ヒットしていれば、そのパーツ（または、連結されたパーツの組）はその局面にヒットしたと判定される。（なお、複数のパーツが互いに連結可能であるか否かの判定基準は適宜設計可能であるが、具体例については図１０に関連して後述する。）
【００４８】
言い換えると、連結されるパーツのヒット数の合計が最低連結パーツ数以上となった場合には、それらのパーツのポイントは、他にヒットした戦術のポイントと同様に、局面の評価に影響するが、連結されるパーツのヒット数の合計が最低連結パーツ数未満となった場合には、それらのパーツのポイントは、局面の評価に影響しない。
【００４９】
戦術番号７の戦術「中割り」のパターンにおいて、座標（−１，−１）には、「そのマスから左上に向かって、相手の石が１個以上連続し、その直後のマスは空白」という状況が指定されている。まずこのパターンの相対基準座標（０，０）がゲーム盤上の絶対座標（４，４）に対応する場合を考えると、この戦術は、次のいずれかに該当する局面すべてにヒットすることになる。
（ｉ）（４，４）に自分の石があり、（３，３）に相手の石があり、（２，２）が空白である。
（ｉｉ）（４，４）に自分の石があり、（３，３）および（２，２）に相手の石があり、（１，１）が空白である。
【００５０】
次に、このパーツの相対基準座標（０，０）がゲーム盤上の絶対座標（４，４）に対応する状態を、時計回りに９０°回転させた場合を考える。これは、上記（式１）の（Ｒ８，Ｃ８）＝（｜Ｃ０−９｜，Ｒ０）に対応する。この場合には、絶対座標（Ｒ０，Ｃ０）＝（４，４）は絶対座標（Ｒ８，Ｃ８）＝（５，４）に対応する。したがって、相対基準座標（０，０）は、回転後は絶対座標（５，４）に対応することになる。また、この場合には左下に向かってヒット判定が行われ、次のいずれかに該当する局面すべてにヒットすることになる。
（ｉ）（５，４）に自分の石があり、（６，３）に相手の石があり、（７，２）が空白である。
（ｉｉ）（５，４）に自分の石があり、（６，３）および（７，２）に相手の石があり、（８，１）が空白である。
【００５１】
同様に、このパーツの相対基準座標（０，０）がゲーム盤上の絶対座標（４，４）に対応する状態を時計回りに１８０°回転させると、相対基準座標（０，０）は絶対座標（５，５）に対応することになる。また、この場合には右下に向かってヒット判定が行われ、次のいずれかに該当する局面すべてにヒットすることになる。
（ｉ）（５，５）に自分の石があり、（６，６）に相手の石があり、（７，７）が空白である。
（ｉｉ）（５，５）に自分の石があり、（６，６）および（７，７）に相手の石があり、（８，８）が空白である。
【００５２】
同様に、このパーツの相対基準座標（０，０）がゲーム盤上の絶対座標（４，４）に対応する状態を時計回りに２７０°回転させると、相対基準座標（０，０）は絶対座標（４，５）に対応することになる。また、この場合には右上に向かってヒット判定が行われ、次のいずれかに該当する局面すべてにヒットすることになる。
次のいずれかに該当する局面すべてにヒットする。
（ｉ）（４，５）に自分の石があり、（３，６）に相手の石があり、（２，７）が空白である。
（ｉｉ）（４，５）に自分の石があり、（３，６）および（２，７）に相手の石があり、（１，８）が空白である。
【００５３】
次に、戦術番号７の「中割り」戦術の相対基準座標（０，０）がゲーム盤上の絶対座標（５，５）に対応する場合を考えると、このパーツは、次のいずれかに該当する局面すべてにヒットすることになる。
（ｉ）（５，５）に自分の石があり、（４，４）に相手の石があり、（３，３）が空白である。
（ｉｉ）（５，５）に自分の石があり、（４，４）および（３，３）に相手の石があり、（２，２）が空白である。
（ｉｉｉ）（５，５）に自分の石があり、（４，４），（３，３）および（２，２）に相手の石があり、（１，１）が空白である。
【００５４】
このパーツの相対基準座標（０，０）がゲーム盤上の絶対座標（５，５）に対応する状態を時計回りに１８０°回転させると、相対基準座標（０，０）は絶対座標（４，４）に対応することになる。また、この場合には右下に向かってヒット判定が行われ、次のいずれかに該当する局面すべてにヒットすることになる。
（ｉ）（４，４）に自分の石があり、（５，５）に相手の石があり、（６，６）が空白である。
（ｉｉ）（４，４）に自分の石があり、（５，５）および（６，６）に相手の石があり、（７，７）が空白である。
（ｉｉｉ）（４，４）に自分の石があり、（５，５），（６，６）および（７，７）に相手の石があり、（８，８）が空白である。
なお、この場合に時計回りに９０°回転したものおよび２７０°回転したものについては、個別の説明を省略する。
【００５５】
戦術番号８の「中割り」戦術についても、同様にヒット判定が行われる。このようにして、戦術番号７および８の「中割り」戦術のヒット判定を総合して図示したものが図１０である。図１０（ａ）〜（ｃ）はいずれも同一の局面を表し、図１０（ａ）が（４，４）を基準としたヒット状況を、図１０（ｂ）が（４，５）を基準としたヒット状況を、図１０（ｃ）が（６，３）を基準としたヒット状況を、それぞれ矢印で示す。
【００５６】
複数のパーツが互いに連結可能であるかどうかの判定基準は、任意に定義可能であるが、本実施形態では、戦術名が同一であり、かつ、相対基準座標が所定の位置関係にあるパーツは互いに連結可能であるとする。所定の位置関係としては、たとえば同一または隣接する位置関係とすることができる。この定義によれば、たとえば戦術番号７のパーツが絶対座標（４，４）を相対基準座標としてヒットし、同じ戦術番号７のパーツが絶対座標（４，５）を相対基準座標としてもヒットし、さらに戦術番号８のパーツが絶対座標（４，５）を相対基準座標としてヒットした場合には、これらのパーツはすべて連結可能となる。この判定基準を用いると、図１０の例では、（ａ）に示すようにヒットしたパーツと、（ｂ）に示すようにヒットしたパーツとは連結可能であるが、これらと（ｃ）に示すようにヒットしたパーツとは連結可能ではないと判定される。
【００５７】
なお、「隣接」とは、縦、横、または斜めに連続して位置することを言い、すなわち座標の行の差の絶対値が１以下でありかつ座標の列の差の絶対値も１以下であることを言う。あるいは、「隣接」とは、縦または横に連続して位置することを言うとしてもよい。すなわち、座標の行が一致しかつ座標の列の差の絶対値が１以下であるか、または、座標の行の差の絶対値が１以下でありかつ座標の列が一致することを言うとしてもよい。
【００５８】
図１０（ａ）では、「中割り」戦術（戦術番号７および８）が合計６方向にヒットしている。また、図１０（ｂ）では、「中割り」戦術が合計６方向にヒットしている。これらのパーツは互いに連結可能であるので、合計で１２個の連結パーツがヒットすることになる。この数は、「中割り」戦術についての最低連結パーツ数以上となるので、これらの連結されたパーツはこの局面にヒットすると判定されることになる。
【００５９】
さらに、図１０（ｃ）では、「中割り」戦術が合計４方向にヒットしているが、上述のようにこれは図１０（ａ）および（ｂ）に示すものとは連結可能ではないので、図１０の局面では合計で４個の連結パーツしかヒットしないことになる。この数は、「中割り」戦術についての最低連結パーツ数未満となるので、これらの連結されたパーツはこの局面にヒットしないと判定されることになる。
【００６０】
以上説明するように、戦術情報Ｄ１は、局面の特徴を表す１つ以上のパターンと、そのパターンのポイント（評価値）とを関連付ける、局面評価規則を含むということができる。
【００６１】
競技者プログラム管理システム１０は、戦術情報Ｄ１に含まれる局面評価規則の入力を受け付ける機能（局面評価規則入力機能）を備える。たとえば、プログラム作成プログラムＰ２は、このような機能をコンピュータに実現させる。この機能は、たとえば所定の構成を有する画面（規則入力画面）を介して実現することができる。
【００６２】
図１１に、規則入力画面の構成の例を示す。本実施形態では、規則入力画面の例として、パターンとポイントとの関連に加え、戦術に含まれる他の情報も入力可能な戦術登録画面２０を用いる。図１１の例は、「隅リーチ」戦術に対応するものである。戦術登録画面２０は、ボードゲームの盤面を表す盤面画像２１と、ピースの状況を表すピース画像２２とを含む。盤面画像２１は、ゲーム盤上の座標を識別可能なものであればどのような画像であってもよい。たとえば実際のゲーム盤またはこれを模したものであってもよく、実際のゲーム盤を簡略化したものであってもよく、抽象的に表現されたものであってもよい。
【００６３】
盤面画像２１は複数であってもよい。図１１では、紙面上寄りに表示されるメイン盤面画像と、紙面下寄りに表示される３つのサブ盤面画像とが示されている。たとえば、メイン盤面画像はメインパターンに対応し、サブ盤面画像はそれぞれ小ヒットパターンに対応するものとして表示されてもよい。小ヒットパターンをいくつ定義するか（または、サブ盤面画像をいくつ表示させるか）は、利用者の入力に応じて適宜変更可能としてもよい。
【００６４】
ピース画像２２は、たとえば盤面画像２１に重ねて、盤面画像２１の座標（マス）のいずれかに表示される。ピース画像２２は、リバーシの場合は白い石または黒い石を表すものであり、この例では、自分の石は「●」記号で表され、相手の石は「○」記号で表されている。なお、この例では各マスの背景を白色で示しているが、カラー表示が可能な場合には、背景を緑色とすると実際のゲーム盤に近い表現とすることができる。
【００６５】
盤面画像２１にはピース画像２２以外の画像が表示されてもよい。たとえばパターンに含まれるピースの状況を表す画像が表示されてもよい。図１１の例では、「△」記号の画像は、「そのマスは空白」すなわちいずれの石も存在しないという状況を表す。また、図１１には示さないが、「？」記号の画像が、「自分または相手、いずれかの石が存在」という状況を表してもよく、矢印記号の画像が、「そのマスから特定方向に向かって、相手の石が１個以上連続し、その直後のマスは空白」という状況を表してもよい。
【００６６】
盤面画像２１には、各座標の状況の重要度を表す画像が表示されてもよい。図１１のメイン盤面画像の例では、記号が表示されかつ背景が空白であるマスは、そのマスの状況の重要度が「必須」であることを表し、背景に斜線が表示されたマスは、そのマスの状況の重要度が「選択」であることを表す。この例では、重要度が「選択」であることを示すのに各マスの背景を斜線としているが、カラー表示が可能な場合には、背景をゲーム盤の他のマスとは異なる色（たとえば白色）とすることにより示してもよい。また、図１１のサブ盤面画像の例では、「Ｘ」記号が表示されたマスは、その小ヒットパターンにおいて、そのマスの状況の重要度が「任意」であることを表す。
【００６７】
競技者プログラム管理システム１０の使用者は、戦術登録画面２０に対する入力操作を介して、戦術情報Ｄ１を入力することができる。たとえば、ある戦術に含まれるパターンは、盤面画像２１またはピース画像２２に対する操作を介して入力可能である。具体例として、盤面画像２１上の特定のマスをクリックした後に、「１」キーを押下することにより、そのマスに「●」記号を表示させ、そのマスに自分の石が存在するという状況を入力することができる。この操作は、図１１の例では「１：コンピュータ」という表記により説明されている。同様に、「２」キーは相手の石が存在するという状況に対応し、「３」キーは自分または相手いずれかの石が存在するという状況に対応し、「４」キーはそのマスが空白であるという状況に対応する。
【００６８】
また、サブ盤面画像においては、これらに加え、「Ｘ」キーはそのマスの重要度が「任意」であることに対応する。ここで、いずれかのサブ盤面画像において重要度が「任意」であるという指定がなされたマスは、メイン盤面画像において背景が斜線となり、メインパターンにおける重要度が「選択」となる。いずれのサブ盤面画像においても重要度が「任意」であるという指定がなされていないマスは、メインパターンにおける重要度が「必須」となる。
【００６９】
このように、競技者プログラム管理システム１０は、盤面画像２１上の特定のマスを指定する操作と、そのマスにおけるピースの状況を指定する操作とを介して、パターンの入力を受け付けることができる。なお、図１１のように盤面画像２１が複数表示されている場合には、必要に応じ、各盤面画像の同期処理が行われてもよい。たとえば、メイン盤面画像において、あるマスに対して「２」キーが入力された場合には、メイン盤面画像と、すべてのサブ盤面画像とにおいて、そのマスに「○」記号が表示されてもよい。
【００７０】
また、図１１に示すように、戦術登録画面２０において他の情報を入力可能であってもよい。この例では、戦術登録画面２０は、戦術名を入力可能なフィールドと、そのパターンの区分が独立パターンであるかパーツであるかを入力可能なチェックボックスと、戦術の有効期間を入力可能なフィールドと、戦術のポイントまたはその範囲を入力可能なフィールドとを含む。また、図１１には示さないが、そのパターンの座標が絶対指定であるか相対指定であるかを示す情報を入力可能なフィールドを含んでもよく、そのパターンがパーツである場合に最低連結パーツ数を入力可能なフィールドを含んでもよい。また、戦術登録画面２０は、その戦術を戦術情報Ｄ１に格納することを指示する操作部品（クリック可能なボタン画像等）を含んでもよい。
【００７１】
なお、戦術登録画面２０の出力は、たとえば競技者プログラム管理システム１０のディスプレイ等に表示することにより実行可能であるが、通信ネットワークに対する画面データの送信（画像、ＨＴＭＬ形式またはＸＭＬ形式等）によっても実行可能である。画面データが送信される場合には、その画面データを受信した別のコンピュータが、戦術登録画面２０を表示するとともに戦術登録画面２０に対する操作を受け付けてもよい。
【００７２】
このようにして、競技者プログラム管理システム１０は、プログラム作成プログラムＰ２を実行することにより、戦術情報Ｄ１の入力を受け付ける。また、競技者プログラム管理システム１０は、プログラム作成プログラムＰ２を実行することにより、戦術情報Ｄ１に基づき、競技者プログラムＰ１を作成する。以下、競技者プログラムＰ１について説明する。
【００７３】
競技者プログラムＰ１は、コンピュータ（たとえば競技者プログラム管理システム１０）を、ボードゲームの仮想的な競技者として機能させるプログラムである。この仮想的な競技者は、戦術情報Ｄ１に含まれる各戦術のポイントに基づき、様々な局面に対して、その局面で打つべき手を決定することができる。たとえば、仮想的な競技者は、特定の局面を表す情報の入力を受け付ける機能と、複数の手のそれぞれについて、手を打った後の局面を、戦術（局面評価規則）に従って評価することにより、各手のポイント（評価値）を決定する評価値決定機能と、各手のポイント（評価値）に基づき、打つべき手を選択する選択機能と、選択された手を表す情報を出力する機能と、を備える。競技者プログラムＰ１は、このような評価値決定機能および選択機能を、コンピュータに実現させるプログラムとして構成することができる。
【００７４】
局面の評価の具体的方法および手順等は任意に設計可能であり、公知の方法を用いてもよいが、たとえば次のようにして行うことができる。
図１２および図１３を用いて、局面を評価する方法の一例を説明する。図１２は、局面を評価するために仮想的な競技者が実行する処理の流れの例を示すフローチャートの例であり、図１３は、評価内容の具体例である。
【００７５】
まず、仮想的な競技者は、特定の局面を表す情報の入力を受け付ける（ステップＳ１）。局面の表現はどのような形式であってもよい。たとえば、手番（何手目であるか）と、ゲーム盤上の座標とピースの状況との組み合わせとによって表されてもよい。他の公知の形式に従ってもよい。また、局面は、試合実行プログラムＰ３を実行するコンピュータ（以下「試合実行装置」という）からの出力として取得されるものであってもよい。
【００７６】
仮想的な競技者は、入力された局面において、可能な自分の手をすべて探索する（ステップＳ２）。手の探索に必要な他の情報（ボードゲームの規則等）は、仮想的な競技者の記憶手段（たとえば記憶手段１２）にあらかじめ記憶されていてもよい。図１３では、ステップＳ２の結果として、現在の局面から３通りの手（黒い石で表す自分の手Ａ、ＢおよびＣ）を打つことが可能であると判断された例を示す。
【００７７】
次に、仮想的な競技者は、可能な自分の手のそれぞれに対して、可能な相手の手をすべて探索する（ステップＳ３）。すなわち、ステップＳ１において取得した局面から、その自分の手を打った直後の局面を基準として、その局面において可能な相手の手をすべて探索する。図１３では、ステップＳ３の結果として、自分の手Ａに対しては３通りの手（白い石で表す相手の手Ａ１、Ａ２およびＡ３）を打つことが可能であり、自分の手Ｂに対しては４通りの手（相手の手Ｂ１、Ｂ２、Ｂ３およびＢ４）を打つことが可能であり、自分の手Ｃに対しては２通りの手（相手の手Ｃ１およびＣ２）を打つことが可能であると判断された例を示す。
【００７８】
次に、仮想的な競技者は、可能な相手の手のそれぞれについてポイントを算出する（ステップＳ４）。たとえば、上述のように、相手の手を打った直後の局面について、戦術情報Ｄ１を８通りの向きに展開させつつ適用することにより、局面のポイントを算出する。
【００７９】
ここで、具体的なプログラムを設計する際の戦術情報Ｄ１の利用方法は、任意に決定することができる。たとえば、自分の石を「Ｓ」という文字で表し、相手の石を「Ａ」という文字で表せば、テキストデータ処理によって戦術情報Ｄ１を扱うことができる。また、各局面のポイントは、たとえば、その局面について自分を基準として算出した第１ポイントと、その局面について相手を基準として算出した第２ポイントとの関数として算出可能である。具体的な関数は、たとえば単純な減算としてもよく、第１ポイントから第２ポイントを減算した値をその局面のポイントとしてもよい。この際、小ヒットが発生した場合には、図４に示すようにヒットした座標の数に応じてポイントが計算される。
【００８０】
ここで、「自分を基準としてポイントを算出する」とは、ポイントの算出においてパターンをそのまま用いることを意味する。すなわち、パターン中に定義される「自分の石」を、局面における「自分の石」に対応させるとともに、パターン中に定義される「相手の石」を、局面における「相手の石」に対応させてパターンを適用することを意味する。ヒットしたパターンすべて（ただし上述のようにパーツであって最低連結パーツ数未満しかヒットしなかったものを除く）のポイントを合計することにより、自分を基準とした場合のポイントを算出することができる。
【００８１】
また、「相手を基準としてポイントを算出する」とは、ポイントの算出において自分の石と相手の石とを入れ替えることを意味する。すなわち、パターン中に定義される「自分の石」を、局面における「相手の石」に対応させるとともに、パターン中に定義される「相手の石」を、局面における「自分の石」に対応させてパターンを適用することを意味する。この場合には、上記と逆に、自分の石を「Ａ」という文字で表し、相手の石を「Ｓ」という文字で表せば、自分を基準としてポイントを算出する処理をそのまま適用することができる。ヒットしたパターンすべて（ただし上述のようにパーツであって最低連結パーツ数未満しかヒットしなかったものを除く）のポイントを合計することにより、相手を基準とした場合のポイントを算出することができる。
【００８２】
したがってたとえば、自分が有利なパターンについてはポイントが大きくなるように各戦術のポイントを調整しておけば、自分が有利な局面についてはその局面のポイントが大きくなることになる。
【００８３】
次に、仮想的な競技者は、ステップＳ２で探索した自分の手のそれぞれについて、相手から見て最適な相手の手を選択する（ステップＳ５）。「相手から見て最適」とは、たとえば相手から見て最も有利な局面に対応する手を意味する。これは、自分から見た場合には、最も不利な局面すなわちポイントが小さい局面に対応する手となる。図１３の例では、自分の手Ａに対する相手の手のうち、最も小さいポイントを与える手はＡ３であり、したがってこの手が選択される。同様に、自分の手Ｂに対しては相手の手Ｂ１が、自分の手Ｃに対しては相手の手Ｃ１が、それぞれ選択される。
【００８４】
次に、仮想的な競技者は、選択された相手の手に基づき、自分から見て最適な自分の手を選択する（ステップＳ６）。「自分から見て最適」とは、たとえば自分から見て最も有利な局面すなわちポイントが大きい局面に対応する手を意味する。図１３の例では、自分の手Ｂに対して選択された相手の手のポイントが１０であり、自分の手ＡおよびＣに対して選択された相手の手のポイントよりも大きいので、自分の手Ｂが選択される。この際、自分の手に対して選択された相手の手のポイントを、その自分の手のポイントとして表してよい（図１３の例では、自分の手Ａのポイントは−１０であり、自分の手Ｂのポイントは１０であり、自分の手Ｃのポイントは−３０であると表現することができる）。
【００８５】
このようにして自分の手を選択すれば、相手も最適な手を打つことを想定した上で、相手の手による自分への不利益を最小とすることができるので、ボードゲームの戦術としては妥当な手の選び方であるということができる。ただし、自分の手を選択する方法はこれに限らず、様々な変形が可能である。たとえば、状況に応じてポイント以外の基準を用いてもよい。
【００８６】
ポイント以外の基準としては、ヒットした戦術の数や、相手の手の数（その局面において相手は何通りの手を打つことができるか）を用いることができる。たとえば、相手の手のうち戦術がヒットするものが１つもない場合には、相手の手の数を最小とする自分の手（図１３の例では自分の手Ｃ）を選択してもよい。また、たとえば、相手の手のうち戦術がヒットしないものが１つでもあり、かつ、自分の手のポイントがすべて０未満である場合にも同様に、相手の手の数を最小とする自分の手を選択してもよい。
【００８７】
さらに他の基準に基づいて手を選択してもよい。たとえば乱数に基づいて自分の手を選択してもよい。この場合には、自分の手を最もポイントが大きいものから順に所定数選択し、そのうちからランダムに選択してもよい。また、最適でない手を選択するようにしてもよい。そのような選択方法も、入門者の相手等、プレイヤーとしての強さが要求されない用途等では有用な可能性がある。
【００８８】
本実施形態では、各手のポイントを決定する際に、その手を打った後の局面として、相手が１手だけ手を進めた時点の局面までしか考慮しないが、さらに先の局面まで考慮してもよい。たとえば、コンピュータの性能が許容する場合には、各手のポイントを決定する際に、その手を打った後の局面として、現在の局面から所定数（２手以上）の手番だけ先までの局面をすべて探索し、最も先の局面のポイントに基づいて自分の手を選択してもよい。
【００８９】
このようにして自分の手を選択した後に、仮想的な競技者は、選択された手を表す情報を出力する（ステップＳ７）。選択された手を表す情報はどのような形式で表現されてもよい。リバーシの場合には、ゲーム盤上で自分の石を置くべき座標によって表現することができる。また、この出力は、試合実行装置に対して行われてもよい。
【００９０】
このようにして、仮想的な競技者は試合を進行することができる。このような仮想的な競技者を実現する競技者プログラムＰ１の具体的構成は、本明細書の記載および公知技術に基づいて当業者が適宜設計することができる。また、そのような競技者プログラムＰ１の具体的構成に応じた、プログラム作成プログラムＰ２の具体的構成も、本明細書の記載および公知技術に基づいて当業者が適宜設計することができる。
【００９１】
このように、本実施形態に係る競技者プログラム管理システム１０およびプログラム作成プログラムＰ２によれば、局面の特徴を表すパターンを、戦術登録画面２０において視覚的に認識しながら入力することにより仮想的な競技者を実現できるので、プログラミング言語の知識は不要であり、一般的な競技者でも容易に実現可能となる。
【００９２】
実際の試合の進行においては、たとえば、２人の仮想的な競技者が試合実行装置に従って試合を実行してもよく、人間の競技者が試合実行装置に自分の手を入力し、これに対する仮想的な競技者の手の結果を試合実行装置から出力させ、人間の競技者の次の手の入力を求めてもよい。
【００９３】
試合実行装置は、このようにして試合を進行させるとともに、試合情報Ｄ２を作成または更新する。
試合情報Ｄ２は、試合の進行を再現（リプレイ）するために用いられる情報である。たとえば、後述のリプレイ画面４０（図１７）を介して試合情報Ｄ２を表示することにより、試合の進行を再現することができる。
試合情報Ｄ２は、各試合の内容に基づき、試合に関する情報を関連付けて記憶する。試合に関する情報は、たとえば次のものを含む。
‐対戦相手となった競技者の区分（人間であるか、または仮想的な競技者であるか）
‐各競技者の名前（氏名、仮想的な競技者の識別名、等）
‐試合の日時（たとえば開始時点の日時）
‐試合の勝敗状況（その試合の終了時点において自分がどの程度有利であったかを表す情報であり、リバーシの場合には、試合終了時点の自分の石の数によって表すことができる）
‐１手ごとの局面と、各局面について評価値決定機能および選択機能の結果を表す情報  
【００９４】
ここで、評価値決定機能および選択機能の結果を表す情報は、たとえば次の内容を含む。
‐その局面において可能な自分の手のリスト（ステップＳ２の探索結果）
‐リストに含まれる自分の手それぞれのポイント（ステップＳ６で算出されたもの）
‐その局面において可能な自分の手の、それぞれに対して可能な相手の手のリスト（すなわち２手先の手のリスト。ステップＳ３の探索結果）
‐リストに含まれる相手の手それぞれのポイント（ステップＳ５で算出されたもの）
‐相手の手が打たれた局面（２手先の局面）においてヒットした戦術のリスト（ステップＳ４でヒットしたもの）
‐リストに含まれる各戦術の戦術名
‐リストに含まれる各戦術のヒット区分（自分を基準としてヒットしたか、または相手を基準としてヒットしたか）
‐リストに含まれる各戦術のヒット程度（小ヒットまたは大ヒット）
【００９５】
なお、本実施形態では、試合実行装置は試合の進行または終了とともに試合情報Ｄ２を作成または更新するが、試合情報Ｄ２は任意のタイミングで作成可能である。たとえば、試合に用いられた戦術情報Ｄ１と、その試合の棋譜とがあれば、試合情報Ｄ２を作成することができる。
【００９６】
競技者プログラム管理システム１０は、プログラム作成プログラムＰ２を実行することにより、さらに他の機能を実現可能であってもよい。たとえば、複数回の試合を自動的に実行し、試合結果に基づいて各戦術を評価する機能を実現するものであってもよい。この機能はいわゆるバッチ処理の形態で実現してもよい。たとえば、競技者プログラム管理システム１０は、試合に用いる戦術情報Ｄ１と、その戦術情報Ｄ１に含まれる戦術のうち評価対象とするもの（１つ以上）を特定する情報と、実行する試合回数とを入力として受け付け、その試合回数だけ試合を実行し、結果に基づいてその戦術を評価する。この際、試合の棋譜や局面を表す画像の出力は省略してもよい。
【００９７】
対戦相手の行動は任意に設計可能であるが、たとえば、戦術情報Ｄ１をコピーし、そのうちから評価対象とする戦術を削除したものを用いてもよい。このようにすると、他の戦術の影響を無視しまたは小さく抑え、評価対象の戦術が対戦に及ぼす影響のみを適切に取り出して評価することができる。
【００９８】
図１４に、このような機能に係る戦術評価画面（局面評価規則の評価画面）の例を示す。この例では、戦術評価画面は、戦術名と、試合数と、それらの試合の勝敗内訳と、１試合あたりのヒット回数（各試合におけるヒット回数の平均）と、１試合あたりのヒットポイント（各試合におけるヒットポイント合計の平均）とを含む。
【００９９】
図１５に、このような戦術評価画面の表示に用いられる情報の構成の例を示す。この情報は、各戦術について、各試合におけるその戦術のヒット状況を関連付ける。ヒット状況は、たとえば、その戦術がヒットした局面が出現した試合のそれぞれについて作成される。ヒット状況は、たとえば、試合番号と、勝敗状況と、ヒット回数と、ヒットポイント合計とを含む。試合番号は、試合を特定する識別情報である。勝敗状況は、上述のようにその試合の終了時点において自分がどの程度有利であったかを表す情報であり、リバーシの場合には、試合終了時点の自分の石の数によって表すことができる。ヒット回数は、その試合においてその戦術がヒットした局面の数である（または、その試合においてその戦術がヒットした回数の累計であってもよい）。ヒットポイント合計は、その試合においてその戦術がヒットした際のポイントの累計である。このような情報については、長期にわたる保管を行う必要はない（たとえば半導体メモリのみに記憶され、ハードディスクドライブには記憶されない）。
【０１００】
また、戦術評価画面は、各試合の勝敗状況と、その試合においてその戦術がヒットした状況との相関を示す画像を含む。図１４の例はこのような画像を２種類含んでいる。いずれの画像も、各試合の勝敗状況を横軸とし、その試合においてその戦術がヒットした状況を縦軸として、各試合に対応する点をプロットした散布図である。図１４の例において、左側の画像は、ヒットした状況をヒットした回数により表したものであり、右側の画像は、ヒットした状況をヒットポイント合計により表したものである。座標系の右側に点が多く現れていれば、その戦術は大勝した試合においてよくヒットしたことを意味し、座標系の上側に点が多く現れていれば、その戦術は各試合において手を選択する際の寄与が大きかったことを意味する。すなわち、座標系の右上に点が多く集まる戦術は、良い戦術（強い競技者を実現する戦術）であるということができる。
【０１０１】
また、戦術評価画面は、その戦術の評価コメントを含む。図１４の例では、評価コメントとして、「この戦術は、かなり有効な手です！」という文字列が表示されている。評価コメントは、その戦術の有効度合を表すものであり、たとえば上述の散布図に表されるような、各試合の勝敗状況および各試合においてその戦術がヒットした状況に基づいて変化する。表示すべき文字列を、勝敗状況およびヒットした状況に基づいて決定または選択するための基準（統計的関数等）は、当業者であれば適宜設計可能である。
【０１０２】
図１４の例では、画像の横軸は試合終了時点の勝敗状況であるが、試合進行中の相対的な手の広さを横軸としてもよい。相対的な手の広さとは、たとえばＮ手目の局面において自分が打てる手の数から、その局面において相手が打てる手の数を減算した値により表される。
【０１０３】
また、競技者プログラム管理システム１０は、競技者プログラムＰ１またはプログラム作成プログラムＰ２を実行することにより、さらに他の機能を実現可能であってもよい。たとえば、特定の局面を想定した各戦術のヒット状況を検証する機能を実現するものであってもよい。
【０１０４】
図１６に、このような機能に係る戦術検証画面３０の例を示す。戦術検証画面３０は、戦術情報Ｄ１（局面評価規則）を検証するための、規則検証画面の一例であり、入力された局面に基づいて出力される画面である。競技者プログラム管理システム１０は、戦術検証画面３０を出力する機能を備える。戦術検証画面３０は、戦術登録画面２０と同様に、ボードゲームの盤面を表す盤面画像２１と、ピースの状況を表すピース画像２２とを含む。
【０１０５】
競技者プログラム管理システム１０の使用者は、戦術検証画面３０に対する入力操作を介して、特定の局面を入力することができる。たとえば、盤面画像２１上の特定のマスをクリックした後に、「１」キーを押下することにより、そのマスに「●」記号を表示させ、そのマスに自分の石が存在するという状況を入力することができる。この操作は、図１６の例では「１：先手●」という表記により説明されている。同様に、「２」キーは相手の石が存在するという状況を入力することができる。このように、競技者プログラム管理システム１０は、盤面画像２１上の特定のマスを指定する操作と、そのマスにおけるピースの状況を指定する操作とを介して、局面の入力を受け付けることができる。
【０１０６】
戦術検証画面３０は、ポイント表示２３を含む。ポイント表示２３は、盤面画像２１の特定の座標に表示される。競技者プログラム管理システム１０は、戦術検証画面３０において、複数の手のそれぞれについて、その手に対応する盤面画像２１上の位置に、その手のポイント表示２３を表示する。この図の例では、表示された局面に対する特定の手番（この例では先手）が石を置けるマスのそれぞれにポイント表示２３が表示されている。各マスのポイント表示２３は、そのマスに自分の石を置き、さらに相手が最善の対応をした局面を想定し、その局面について戦術情報Ｄ１を適用して算出されたポイント（評価値）を示すものである。たとえば、競技者プログラム管理システム１０は、可能な手の各マスについて図１２のステップＳ３〜Ｓ５を実行し、その最適な相手の手に係るポイントをそのマスのポイント表示２３として表示する。
【０１０７】
本実施形態ではボードゲームはリバーシであり、特定のマスに対して可能な手は「自分の石をそのマスに置く」という１種類の行為しかないが、同じ座標に対して複数の手が可能なボードゲームの場合には、単一の座標について、それぞれの手に対応する複数のポイントが表示されてもよい。
【０１０８】
競技者プログラム管理システム１０は、その局面を自分の手番と解釈して評価するか（図１６はこの例である）、または、その局面を相手の手番と解釈して評価するかを指定する入力を受け付けることが可能であってもよい。図１６の例では、「先手を」または「後手を」というラジオボタンのいずれかを選択し、「検証」というボタンをクリックすることによりこのような入力を行うことができる。図１６の例では、「４７」という数値が表示されているマスに先手が打った場合（すなわち黒い石が置かれた場合）に、その局面のポイントが先手から見て４７であることが示されている。
【０１０９】
ポイント表示２３は、「検証」というボタンがクリックされることに応じて、その時点での盤面画像２１の状況に基づき、自動的に表示されるものであってもよい。ポイント表示２３は、たとえば、入力された局面から各マスに自分の石を置いた局面を、戦術情報Ｄ１に従って評価し、結果として得られたポイントを表示するものである。
【０１１０】
さらに、競技者プログラム管理システム１０は、ポイント表示２３がなされている位置（たとえばマス）がクリックされることに応じて、そのポイント表示２３に対応する手（たとえばそのマスに石を置くという手）と、戦術情報Ｄ１との関連を表す情報を表示する機能を備えてもよい。図１６は、「４７」というポイント表示２３がなされているマス（３，５）がクリックされた状態を表す。この例では、クリックされたマスの背景を斜線とすることにより表示しているが、カラー表示が可能な場合には、背景をゲーム盤の他のマスとは異なる色（たとえば白色）とすることにより示してもよい。
【０１１１】
図１６の例では、その手と戦術情報Ｄ１との関連を表す情報として、ポイントの計算の内訳が表示されている。内訳はたとえば「＜＜クリックしたマスの戦術＞＞」として表示され、その手に対する最適な相手の手が打たれた時点の局面にヒットした戦術がすべて表示される。図１６の例では、該当するマス（３，５）に黒い石が置かれ、さらに相手の手として（２，３）に白い石が置かれた場合に、「相手の石を増やす」戦術が、相手から見て７ポイントとなる小ヒット（すなわちポイント評価には−７ポイント）であり、自分から見て２０ポイントとなる小ヒットであることが示されている。この例では、戦術にヒットしたマスは背景を斜線として示している（カラー表示が可能な場合には、背景を特別な色としてもよい）。また、他の戦術（「中割り」）もヒットしていることが示されている（ただしこの例では画面サイズの都合上一部のみの表示となっており、スクロール等の操作に応じて全体が表示可能である）。
【０１１２】
また、図１６の例では、現在選択した手についてのみ戦術情報Ｄ１との関連が示されているが、過去に選択された手と戦術情報Ｄ１との関連も、履歴として表示されていてもよい。また、他の画面に遷移することを命令するボタンが表示されてもよい。たとえば、戦術検証画面３０が、後述のリプレイ画面４０からの遷移を経て表示されている場合には、図示のように「リプレイへ」というボタンが表示されてもよい。その場合には、「リプレイへ」というボタンがクリックされることに応じて、その時点の局面を維持したまま後述のリプレイ画面４０に再遷移してもよい。
【０１１３】
このような戦術検証画面３０を利用することにより、特定の局面において打つべき手のそれぞれについてポイント表示２３が表示されるので、戦術情報Ｄ１の作成者は、各手のポイントの大小を見比べることにより、戦術情報Ｄ１が適切に構成されているかどうか（たとえば、最も有利と考えられる手のポイントが最大となっているかどうか）を検証することができる。また、不適切であると判断した場合（最も有利と考えられる手のポイントが最大とならない場合等）には、各戦術のポイントの内訳を表示させ、これを参考にしてポイントの指定を調整することができる。
【０１１４】
また、特定の手を選んでそのマスをクリックすることにより、その局面の評価に影響した戦術をポイント付きでリストアップできるので、各戦術のポイントの大小を見比べることにより、戦術情報Ｄ１が適切に構成されているかどうか（たとえば、その手を選んだ根拠が自分の考えと整合しているかどうか）を検証することができる。
【０１１５】
競技者プログラム管理システム１０は、競技者プログラムＰ１またはプログラム作成プログラムＰ２を実行することにより、さらに他の機能を実現可能であってもよい。たとえば、特定の棋譜に従って各戦術のヒット状況を検証する機能を実現するものであってもよい。
【０１１６】
図１７に、このような機能に係るリプレイ画面４０の例を示す。リプレイ画面４０は、戦術情報Ｄ１（局面評価規則）を検証するための、規則検証画面の別の一例であり、試合情報Ｄ２に基づいて出力される画面である。競技者プログラム管理システム１０は、リプレイ画面４０を出力する機能を備える。リプレイ画面４０は、戦術登録画面２０および戦術検証画面３０と同様に、ボードゲームの盤面を表す盤面画像２１と、ピースの状況を表すピース画像２２とを含む。
【０１１７】
競技者プログラム管理システム１０の使用者は、リプレイ画面４０に対する入力操作を介して、特定の試合の特定の手番における局面を指定し、盤面画像２１およびピース画像２２を用いて表示させることができる。
【０１１８】
図１７の画面は、「ポチ」という名称の競技者と、「ゴン」という名称の競技者との試合の棋譜の一例である。競技者プログラム管理システム１０は、棋譜における任意の手番に対応する局面を盤面画像２１およびピース画像２２を用いて表示する。リプレイ画面４０は、手番を進める進行ボタン（「＞」）と、手番を戻す巻き戻しボタン（「＜」）とを含む。競技者プログラム管理システム１０は、これらのボタンがクリックされることに応じ、棋譜に従って、表示される局面を進めまたは巻き戻す。図１７の例では１３手目の局面が表示されている。
【０１１９】
リプレイ画面４０は、戦術検証画面３０と同様に、ポイント表示２３を含む。ポイント表示２３は、盤面画像２１の特定の座標に表示される。競技者プログラム管理システム１０は、リプレイ画面４０において、複数の手のそれぞれについて、その手に対応する盤面画像２１上の位置に、その手のポイント表示２３を表示する。この図の例では、表示された局面に対する特定の手番（この例では先手）が石を置けるマスのそれぞれにポイント表示２３（評価値）が表示されている。また、その手番において実際に石が置かれたマスを示す表示がなされており、この例では背景をゲーム盤の他のマスとは異なる色（たとえば黒色）とすることにより示している。
【０１２０】
戦術検証画面３０と同様に、本実施形態ではボードゲームはリバーシであり、特定のマスに対して可能な手は「自分の石をそのマスに置く」という１種類の行為しかないが、同じ座標に対して複数の手が可能なボードゲームの場合には、単一の座標について、それぞれの手に対応する複数のポイントが表示されてもよい。
【０１２１】
さらに、競技者プログラム管理システム１０は、戦術検証画面３０と同様に、ポイント表示２３がなされている位置（たとえばマス）がクリックされることに応じて、そのポイント表示２３に対応する手（たとえばそのマスに石を置くという手）と、戦術情報Ｄ１との関連を表す情報を表示する機能を備えてもよい。図１７は、「７」というポイント表示２３がなされているマスがクリックされた状態を表す。その手と戦術情報Ｄ１との関連を表す情報は、たとえば戦術検証画面３０と同様に表示される。
【０１２２】
また、他の画面に遷移することを命令するボタンが表示されてもよい。たとえば、「戦術検証へ」というボタンがクリックされることに応じて、その時点の局面を維持したまま上述の戦術検証画面３０に遷移してもよい。
【０１２３】
このようなリプレイ画面４０を利用することにより、上述のように戦術検証画面３０を利用した場合と同様に、戦術情報Ｄ１が適切に構成されているかどうかを検証することができる。
【０１２４】
なお、リプレイ画面４０において表示されるポイントは、特定の試合に実際に使用された戦術情報Ｄ１に基づいて算出されたものである。これに対し、戦術検証画面３０において表示されるポイントは、その時点での戦術情報Ｄ１に基づいて算出される。このため、戦術の内容が異なっていれば、同じ局面の同じ手でも値が異なる場合がある。
【０１２５】
戦術情報Ｄ１の作成者は、リプレイ画面４０と戦術検証画面３０とを交互に表示させ対比することにより、敗因の分析や、戦術の改良を容易に行うことができる。たとえば、試合時点での戦術による各手の評価（リプレイ画面４０）と、その後で変更した戦術による各手の評価（戦術検証画面３０）とを比較し、各手の評価が意図した通りに変化しているか否かを確認することができる。このように変更および確認を繰り返すことにより、より望ましい戦術情報Ｄ１を容易に作成できる。
【０１２６】
以上説明するように、本発明の実施の形態１に係る競技者プログラム管理システム１０、競技者プログラムＰ１およびプログラム作成プログラムＰ２によれば、局面の特徴を表すパターンを含む戦術情報Ｄ１を入力することにより仮想的な競技者を実現することができる。このため、仮想的な競技者を実現するのにプログラミング言語の知識は不要であり、一般的な競技者でも容易に可能となる。
【０１２７】
さらに、戦術情報Ｄ１の入力は戦術登録画面２０を介して行うことができるので、インタフェースが視覚的にわかりやすく、コンピュータに詳しくない競技者でも容易に入力可能である。また、戦術情報Ｄ１の検証についても、戦術検証画面３０およびリプレイ画面４０を用いて行うことができるので、インタフェースが視覚的にわかりやすく、コンピュータに詳しくない競技者でも容易に検証可能である。
【０１２８】
［実施の形態２］
実施の形態１に係る競技者プログラム管理システム１０は、単独で戦術情報Ｄ１を作成することができ、また戦術情報Ｄ１を用いて試合を実行することができる。実施の形態２では、これらの機能を複数のコンピュータに分散し、通信ネットワークを介して協働させるものである。以下、実施の形態１との相違を説明する。
【０１２９】
図１８に、本発明の実施の形態２に係る、ボードゲームの大会実行システムの構成の例を示す。大会実行システムは、ボードゲームの複数の競技者プログラム管理システム１１０（競技参加コンピュータ）と、ボードゲームの試合実行システム１２０とを含む。
【０１３０】
競技者プログラム管理システム１１０は、たとえば競技大会の参加者がそれぞれ所有するコンピュータであり、試合実行システム１２０は、たとえば競技大会の主催者が準備するコンピュータである。競技者プログラム管理システム１１０と試合実行システム１２０とは、通信ネットワーク（たとえばインターネット）を介して通信可能に接続される。
【０１３１】
競技者プログラム管理システム１１０は、公知のコンピュータとしての構成を有し、実施の形態１の競技者プログラム管理システム１０と同様に、演算手段１１１、記憶手段１１２、入力装置１１３および出力装置１１４を備える。また、競技者プログラム管理システム１１０は、通信ネットワークに対して情報の入出力を行う通信手段１１５を備える。競技者プログラム管理システム１１０の記憶手段１１２は、競技者プログラムＰ１、プログラム作成プログラムＰ２、戦術情報Ｄ１および試合情報Ｄ２を格納する。実施の形態１と異なり、試合実行プログラムＰ３は省略可能である。
【０１３２】
試合実行システム１２０もまた公知のコンピュータとしての構成を有し、演算手段１２１、記憶手段１２２および通信手段１２５を備える。試合実行システム１２０の記憶手段１２２は、競技者プログラムＰ１、試合実行プログラムＰ３、戦術情報Ｄ１および試合情報Ｄ２を格納する。記憶手段１２２は、さらにプログラム作成プログラムＰ２を格納してもよい。
【０１３３】
実施の形態２に係る大会実行システムの動作を、以下に説明する。
競技者プログラム管理システム１１０は、実施の形態１の競技者プログラム管理システム１０と同様に動作する。ただし、競技者プログラム管理システム１１０が試合実行プログラムＰ３を記憶しない場合には、試合実行プログラムＰ３を実行するという動作については省略可能である。また、競技者プログラム管理システム１１０は、競技参加コンピュータとして、戦術情報Ｄ１を、通信ネットワークを介して試合実行システム１２０に送信する機能を備える。
【０１３４】
試合実行システム１２０は、各競技者プログラム管理システム１１０から戦術情報Ｄ１を受信する。すなわち、試合実行システム１２０は、戦術情報Ｄ１を、複数の競技参加コンピュータから、通信ネットワークを介して受信する機能（局面評価規則受信機能）を備える。なお、戦術情報Ｄ１は、実施の形態１と同様に、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則である。
【０１３５】
次に、試合実行システム１２０は、競技者プログラムＰ１および試合実行プログラムＰ３を実行することにより、各戦術情報Ｄ１に基づいて構成される仮想的な競技者の間で試合を実行する。試合の組み合わせは任意に設計することができ、たとえばトーナメント戦であってもよく、リーグ戦であってもよい。各試合は、ボードゲームの参加者の数（リバーシの場合には２人）の仮想的な競技者によって、その仮想的な競技者に対応する戦術情報Ｄ１（各競技者プログラム管理システム１１０から受信したもの）に基づいて行われる。
【０１３６】
試合は、ボードゲームの手番に応じ、各仮想的な競技者が手を打つことにより進行する。仮想的な競技者は、実施の形態１の競技者プログラム管理システム１０と同様にして手を評価し選択する。すなわち、試合実行システム１２０は、少なくとも、
‐複数の手のそれぞれについて、手を打った後の局面を、第１の競技参加コンピュータに係る第１の局面評価規則に従って評価することにより、各手の第１の評価値を決定する、第１の評価値決定機能と、
‐各手の第１の評価値に基づき、打つべき手を選択する、第１の選択機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第２の競技参加コンピュータに係る第２の局面評価規則に従って評価することにより、各手の第２の評価値を決定する、第２の評価値決定機能と、
‐各手の第２の評価値に基づき、打つべき手を選択する、第２の選択機能と、
‐第１の評価値決定機能と、第２の評価値決定機能と、第１の選択機能と、第２の選択機能とを用いて、ボードゲームの試合を実行する機能と、
を備えるということができる。このようにして、試合実行システム１２０は、ボードゲームの試合を進行させる。
【０１３７】
多数の試合を同様に実行することにより、試合実行システム１２０はボードゲームの大会を実現することができる。大会の実現に際しては、試合実行システム１２０は各競技者プログラム管理システム１１０から戦術情報Ｄ１に加えてエントリ情報を受け付けてもよく、大会に係る情報（トーナメント表）等を送信または公表してもよい。エントリ情報の管理やトーナメント表の作成等は、大会の主催者等が適宜行うことができる。
【０１３８】
このように、実施の形態１と同様に、局面の特徴を表すパターンを含む戦術情報Ｄ１を入力することにより、大会に参加する仮想的な競技者を実現することができる。このため、仮想的な競技者を実現するのにプログラミング言語の知識は不要であり、一般的な競技者でも容易に参加可能となる。
【０１３９】
さらに、実施の形態２によれば、（１）戦術情報Ｄ１を事前に作成すれば良いので、実力をその場で発揮する必要がなく、プレッシャーやストレスが軽減される、（２）試合は戦術情報Ｄ１に基づいて自動的に行われるので、何試合もの対戦を自ら行う必要がなく、疲労が軽減される、（３）会場への移動時間や、対戦の待ち時間等が不要となり、拘束時間が解消または短縮される、（４）競技会のスケジュールに合わせるのがより容易となる、（５）ボードゲームの実力に関わらず、アイデアや閃きを活用して戦術情報Ｄ１をうまく構成すれば上位入賞が望める、等の効果が得られる可能性がある。
【０１４０】
さらに、大会主催者の側でも、大会会場を準備する必要がないので、手間やコストを節約することができる。このため、たとえばエントリの需要が増大した場合にも容易に対応可能である。
【０１４１】
試合実行システム１２０は、試合ごとに試合情報Ｄ２を作成してもよい。試合実行システム１２０は、各試合情報Ｄ２を、関連する競技者プログラム管理システム１１０に対し、通信ネットワークを介して送信する機能を備えてもよい。たとえば、２人の仮想的な競技者の間で行われた試合の結果を、それらの仮想的な競技者に係る戦術情報Ｄ１の送信元である競技者プログラム管理システム１１０に、それぞれ送信してもよい。
【０１４２】
競技者プログラム管理システム１１０は、この試合情報Ｄ２を受信して記憶手段１１２に格納してもよい。このようにすると、実施の形態１の戦術検証画面３０およびリプレイ画面４０等を利用してトーナメントの結果を分析することができ、戦術情報Ｄ１の改善をより容易に行うことができる。
【０１４３】
［その他の実施の形態］
上述の各実施形態において、以下のような変形を施すことができる。
上述の各実施形態では、パターンはゲーム盤上の座標のみについて定義されるが、ゲーム盤外の状況を含んで定義できるように変形してもよい。たとえば、将棋の持ち駒、囲碁のアゲハマ、カードゲームの手札、等の状況を定義してもよい。
【０１４４】
また、たとえば、連結対象となる相対基準座標の位置または範囲を特定し、それ以外の座標を基準とするパーツは連結しないよう判定してもよい。
【０１４５】
また、各実施形態では、上記（式１）によるパターンの向きの展開（回転または反転）は常にゲーム盤の中央（仮に座標で表現すると（４．５，４．５）として参照可能な位置）を基準として行われるが、他の位置を基準として行ってもよい。たとえば、パターンごとに、回転または反転を許容するか否かを指定してもよく、回転または反転の基準となる座標を指定できるようにしてもよい。たとえば、各「中割り」戦術のパターンは、相対基準座標（０，０）を中心として回転しながら判定してもよい。
【０１４６】
各実施形態では、パターンは２次元直交座標系を用いて定義されるが、直交座標系を用いる必要はない。また、リバーシ以外のボードゲームについては、ゲーム盤の形状に応じて、１次元の座標系を用いてもよく、３次元以上の座標系を用いてもよい。
【０１４７】
実施の形態２では複数の競技者プログラム管理システム１１０が設けられるが、競技者プログラム管理システム１１０は省略してもよい。その場合には、戦術情報Ｄ１は他の方法で作成されてもよい。たとえば、戦術情報Ｄ１をテキストファイルとして構成し、仕様を公表しておけば、大会の参加者は戦術情報Ｄ１をテキストエディタ等を用いて直接的に記述し、電子メール等任意の形式で通信ネットワークを介して試合実行システム１２０に送信することができる。
【符号の説明】
【０１４８】
１０  競技者プログラム管理システム（コンピュータ、プログラム作成システム、試合実行システム）、２０  戦術登録画面（規則入力画面）、２１  盤面画像、２２  ピース画像、２３  ポイント表示（評価値）、３０  戦術検証画面（規則検証画面）、４０  リプレイ画面（規則検証画面）、１１０  競技者プログラム管理システム（コンピュータ、プログラム作成システム）、１２０  試合実行システム（コンピュータ）、Ｄ１  戦術情報、Ｄ２  試合情報、Ｐ１  競技者プログラム、Ｐ２  プログラム作成プログラム、Ｐ３  試合実行プログラム。
【図１】
2018051139.tif 000003
【図２】
2018051139.tif 000004
【図３】
2018051139.tif 000005
【図４】
2018051139.tif 000006
【図５】
2018051139.tif 000007
【図６】
2018051139.tif 000008
【図７】
2018051139.tif 000009
【図８】
2018051139.tif 000010
【図９】
2018051139.tif 000011
【図１０】
2018051139.tif 000012
【図１１】
2018051139.tif 000013
【図１２】
2018051139.tif 000014
【図１３】
2018051139.tif 000015
【図１４】
2018051139.tif 000016
【図１５】
2018051139.tif 000017
【図１６】
2018051139.tif 000018
【図１７】
2018051139.tif 000019
【図１８】
2018051139.tif 000020
【手続補正書】
【提出日】平成29年11月16日(2017.11.16)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
上述の問題点を解決するため、この発明に係るプログラム作成システムは、
ボードゲームの競技者プログラムを作成する、プログラム作成システムであって、
前記競技者プログラムは、コンピュータを前記ボードゲームの仮想的な競技者として機能させるものであり、
前記ボードゲームは、前記仮想的な競技者を含む複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであり、
前記プログラム作成システムは、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則の入力を受け付ける、局面評価規則入力機能を備え、
前記プログラム作成システムは、前記局面評価規則の入力を受け付けるための、規則入力画面を出力する機能を備え、
前記規則入力画面は、ボードゲームの盤面を表す盤面画像と、ピースの状況を表すピース画像とを含み、前記パターンは、前記盤面画像または前記ピース画像に対する操作を介して入力可能であり、
前記競技者プログラムは、
‐複数の手のそれぞれについて、手を打った後の局面を、前記局面評価規則に従って評価することにより、各手の評価値を決定する、評価値決定機能と、
‐各手の評価値に基づき、打つべき手を選択する、選択機能と、
を前記コンピュータに実現させることにより、前記コンピュータを前記仮想的な競技者として機能させるものである。
また、この発明に係るプログラム作成システムは、
ボードゲームの競技者プログラムを作成する、プログラム作成システムであって、
前記競技者プログラムは、コンピュータを前記ボードゲームの仮想的な競技者として機能させるものであり、
前記ボードゲームは、前記仮想的な競技者を含む複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであり、
前記プログラム作成システムは、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則の入力を受け付ける、局面評価規則入力機能を備え、
前記競技者プログラムは、
‐複数の手のそれぞれについて、手を打った後の局面を、前記局面評価規則に従って評価することにより、各手の評価値を決定する、評価値決定機能と、
‐各手の評価値に基づき、打つべき手を選択する、選択機能と、
を前記コンピュータに実現させることにより、前記コンピュータを前記仮想的な競技者として機能させるものであり、
前記プログラム作成システムは、前記局面評価規則を検証するための、規則検証画面を出力する機能を備え、
前記規則検証画面は、ボードゲームの盤面を表す盤面画像を含み、
前記プログラム作成システムは、前記規則検証画面において、複数の手のそれぞれについて、その手に対応する盤面画像上の位置に、その手の評価値を表示し、
前記プログラム作成システムは、前記規則検証画面において、前記複数の手のうちいずれかについて、その手と前記局面評価規則との関連を表す情報を表示する。
特定の実施態様によれば、前記パターンは、２次元座標系における位置を表す情報と、その位置を基準とするピースの状況を表す情報との組を含む。
また、この発明に係るボードゲームの試合実行システムは、
前記ボードゲームは、複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を逐次打つことにより進行するゲームであり、
前記試合実行システムは、
‐局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則を、複数の競技参加コンピュータから、通信ネットワークを介して受信する、局面評価規則受信機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第１の前記競技参加コンピュータに係る第１の局面評価規則に従って評価することにより、各手の第１の評価値を決定する、第１の評価値決定機能と、
‐各手の第１の評価値に基づき、打つべき手を選択する、第１の選択機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第２の前記競技参加コンピュータに係る第２の局面評価規則に従って評価することにより、各手の第２の評価値を決定する、第２の評価値決定機能と、
‐各手の第２の評価値に基づき、打つべき手を選択する、第２の選択機能と、
‐前記第１の評価値決定機能と、前記第２の評価値決定機能と、前記第１の選択機能と、前記第２の選択機能とを用いて、前記ボードゲームの試合を実行する機能と、
‐前記局面評価規則を検証するための、規則検証画面を出力する機能と、
‐前記第１の評価値決定機能によって評価されたそれぞれの手および前記第２の評価値決定機能によって評価されたそれぞれの手のいずれかについて、前記規則検証画面において、その手と前記局面評価規則との関連を表す情報を表示する機能と、
を備える。
また、この発明に係るプログラムは、コンピュータを、上述のプログラム作成システムまたは試合実行システムとして機能させる。
【手続補正２】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ボードゲームの競技者プログラムを作成する、プログラム作成システムであって、
前記競技者プログラムは、コンピュータを前記ボードゲームの仮想的な競技者として機能させるものであり、
前記ボードゲームは、前記仮想的な競技者を含む複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであり、
前記プログラム作成システムは、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則の入力を受け付ける、局面評価規則入力機能を備え、
前記プログラム作成システムは、前記局面評価規則の入力を受け付けるための、規則入力画面を出力する機能を備え、
前記規則入力画面は、ボードゲームの盤面を表す盤面画像と、ピースの状況を表すピース画像とを含み、前記パターンは、前記盤面画像または前記ピース画像に対する操作を介して入力可能であり、
前記競技者プログラムは、
‐複数の手のそれぞれについて、手を打った後の局面を、前記局面評価規則に従って評価することにより、各手の評価値を決定する、評価値決定機能と、
‐各手の評価値に基づき、打つべき手を選択する、選択機能と、
を前記コンピュータに実現させることにより、前記コンピュータを前記仮想的な競技者として機能させるものである、
プログラム作成システム。
【請求項２】
ボードゲームの競技者プログラムを作成する、プログラム作成システムであって、
前記競技者プログラムは、コンピュータを前記ボードゲームの仮想的な競技者として機能させるものであり、
前記ボードゲームは、前記仮想的な競技者を含む複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を打つことにより進行するゲームであり、
前記プログラム作成システムは、局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則の入力を受け付ける、局面評価規則入力機能を備え、
前記競技者プログラムは、
‐複数の手のそれぞれについて、手を打った後の局面を、前記局面評価規則に従って評価することにより、各手の評価値を決定する、評価値決定機能と、
‐各手の評価値に基づき、打つべき手を選択する、選択機能と、
を前記コンピュータに実現させることにより、前記コンピュータを前記仮想的な競技者として機能させるものであり、
前記プログラム作成システムは、前記局面評価規則を検証するための、規則検証画面を出力する機能を備え、
前記規則検証画面は、ボードゲームの盤面を表す盤面画像を含み、
前記プログラム作成システムは、前記規則検証画面において、複数の手のそれぞれについて、その手に対応する盤面画像上の位置に、その手の評価値を表示し、
前記プログラム作成システムは、前記規則検証画面において、前記複数の手のうちいずれかについて、その手と前記局面評価規則との関連を表す情報を表示する、
プログラム作成システム。
【請求項３】
前記パターンは、２次元座標系における位置を表す情報と、その位置を基準とするピースの状況を表す情報との組を含む、請求項１または２に記載のプログラム作成システム。
【請求項４】
ボードゲームの試合実行システムであって、
前記ボードゲームは、複数の競技者が、ゲーム盤上のピースの状況によって表される局面を変更する手を逐次打つことにより進行するゲームであり、
前記試合実行システムは、
‐局面の特徴を表すパターンと、当該パターンの評価値とを関連付ける、局面評価規則を、複数の競技参加コンピュータから、通信ネットワークを介して受信する、局面評価規則受信機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第１の前記競技参加コンピュータに係る第１の局面評価規則に従って評価することにより、各手の第１の評価値を決定する、第１の評価値決定機能と、
‐各手の第１の評価値に基づき、打つべき手を選択する、第１の選択機能と、
‐複数の手のそれぞれについて、手を打った後の局面を、第２の前記競技参加コンピュータに係る第２の局面評価規則に従って評価することにより、各手の第２の評価値を決定する、第２の評価値決定機能と、
‐各手の第２の評価値に基づき、打つべき手を選択する、第２の選択機能と、
‐前記第１の評価値決定機能と、前記第２の評価値決定機能と、前記第１の選択機能と、前記第２の選択機能とを用いて、前記ボードゲームの試合を実行する機能と、
‐前記局面評価規則を検証するための、規則検証画面を出力する機能と、
‐前記第１の評価値決定機能によって評価されたそれぞれの手および前記第２の評価値決定機能によって評価されたそれぞれの手のいずれかについて、前記規則検証画面において、その手と前記局面評価規則との関連を表す情報を表示する機能と、
を備える、試合実行システム。
【請求項５】
コンピュータを、請求項１〜３のいずれか一項に記載のプログラム作成システムまたは請求項４に記載の試合実行システムとして機能させるプログラム。