ゲーム装置、ゲーム方法、データ検索装置、ゲームシステム、ゲームプログラムが記憶された記憶媒体
【課題】ユーザが希望するゲームパターン(定石や定型)が現れるゲームデータ(棋譜データ)を容易に検索することを可能にする。
【解決手段】CPU41は、棋譜データ検索プログラムを実行することにより、手順指定機能、手順照合機能、棋譜表示機能による棋譜検索処理を実現する。手順指定機能では、ユーザからの指示により、ゲームを進めるための手順により検索対象とするゲームデータの指定を入力する。手順照合機能は、手順指定機能により入力された手順について、棋譜記憶装置47に記憶ゲームデータの手順中に一致する部分があるか否かを比較照合する。棋譜表示機能は、手順照合機能によって手順指定機能によって入力された手順と一致する部分があると判定されたゲームデータを検索結果として表示出力する。
【解決手段】CPU41は、棋譜データ検索プログラムを実行することにより、手順指定機能、手順照合機能、棋譜表示機能による棋譜検索処理を実現する。手順指定機能では、ユーザからの指示により、ゲームを進めるための手順により検索対象とするゲームデータの指定を入力する。手順照合機能は、手順指定機能により入力された手順について、棋譜記憶装置47に記憶ゲームデータの手順中に一致する部分があるか否かを比較照合する。棋譜表示機能は、手順照合機能によって手順指定機能によって入力された手順と一致する部分があると判定されたゲームデータを検索結果として表示出力する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、囲碁ゲーム対局などのゲームを行なうゲーム装置、ゲーム装置が通信手段を介して囲碁ゲーム対局などを行なう際の各種サービスを提供するデータ検索装置、ゲーム装置及びサーバ装置により構成されるゲームシステム、ゲームプログラムが記憶された記憶媒体に関する。
【背景技術】
【0002】
囲碁等のゲームでは、定石、定型、常形などの、古来から研究されてきた双方最善と思われる一定の手順や部分的な形が存在する。そして、これらの定石や定型の、その後の変化や活用方法を研究する事を棋力上達などには有効である。そして、これらの定石や定型はプロの実戦にもしばしば現れるので、これらの実戦を研究することは、棋力上達のためにも非常に有効である。一方、現在、パーソナルコンピュータや専用の端末機等を用いて囲碁等のゲームを行うゲーム端末やゲームソフト等があり、これらには、大別して、パーソナルコンピュータ若しくは端末のみで楽しめるもの、ホストコンピュータ等に通信回線を介して接続して通信しながら楽しむものがある。
【0003】
現在では、パーソナルコンピュータやゲーム端末においては、以下のようなものが既に実現されている。すなわち、(1)あらかじめROM等に保存されている詰碁や詰将棋等の問題を、端末機等で再現し、解いて楽しむもの、(2)自分の対局した棋譜や、雑誌等から1人で入力した棋譜を検討等するもの、(3)機械がゲームの着手を考えて人間の相手をするもの、(4)通信によって離れた所にいる人同士で対局するもの、(5)通信対局に付随して、文字によるチャットもできるようになっているもの、などがある。
【0004】
従来では、パーソナルコンピュータの記憶装置やホストコンピュータの棋譜データベースに記憶されている棋譜を参考にして定石や定型を研究しようとする場合、目的とする定石や定型が用いられたであろう対局を予想して、その対局のタイトル戦名、対局棋士名、対局年月日などを指定して検索していた。
【発明の開示】
【発明が解決しようとする課題】
【0005】
(1)従来、棋譜データベース等に記憶されている棋譜の中から、ある定石や定型が出現した棋譜を検索する方法は実現されていなかった。このため、ある定石や定型の出現した棋譜を探そうとする場合には、ユーザが一つ一つの棋譜を再現してみて、目的とする定石や定型の有無を判断するという方法しかなかった。しかし、この方法では、目的とする定石や定型が現れなかった棋譜も含めて、全ての棋譜をユーザが再現・検討する必要があり、目的とする定石・棋譜を探すのが大変であった。
【0006】
(2)定石・定型は、必ずしも一定の手順によって出現するとは限らず、手順が前後したりする場合もある。しかしこの場合でも、手順こそ違えども最終的に同じ定型が出現したのであれば、その棋譜も研究対象として有効であり、このような棋譜も検索できることが望ましい。
【0007】
(3)ゲーム端末等の記憶装置に記憶できる棋譜データ量は、一般的には限られたものであるので、この記憶可能データ量は極力無駄に消費しないようにすることが望ましい。
【0008】
本発明は、前記のような問題に鑑みなされたもので、ユーザが希望するゲームパターン(定石や定型)が現れるゲームデータ(棋譜データ)を容易に検索することが可能なゲーム装置、データ検索装置、ゲームシステムを提供することを目的とする。
【0009】
また、ゲーム端末の記憶装置の記憶容量が限られている場合に、この容量を極力消費しないようにして、ユーザが希望するゲームパターン(定石や定型)が現れるゲーム結果(棋譜データ)を検索することが可能なゲーム装置、データ検索装置、ゲームシステムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明は、記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記手順指定手段によって指定された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として表示する表示手段とを具備したことを特徴とする。
【0011】
これにより、ユーザがゲームのある手順を指定すると、記憶装置に記憶されているゲームデータ(例えば囲碁ゲームでは棋譜データ)のなかから、指定された手順と同じ手順を含むゲームデータが検索される。
【0012】
また、前記手順指定手段によって指定された手順を意味的に同じ手順に変換する変換手段を具備し、前記手順照合手段は、前記変換手段によって変換された手順を対象として比較照合することを特徴とする。
【0013】
これにより、ユーザの指定した手順を意味的に同じ手順、すなわち囲碁ゲームであれば、盤面上の4隅にそれぞれ移動させた手順及びそれらの各手順を線対称的に折り返した手順を含む棋譜データを、ユーザが指定した手順を含む棋譜データ(ゲームデータ)として出力される。
【0014】
また本発明は、記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記配置指定手段によって指定された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として表示する表示手段とを具備したことを特徴とする。
【0015】
これにより、ユーザがある局面配置(部分的なもの及び全局面に渡るものの双方を含む)を指定すると、記憶装置に記憶されているゲームデータのなかから、指定された局面と同じ局面が出現しているゲームデータが検索される。
【0016】
また、前記形配置指定手段によって指定された第1部分局面の配置を、回転または対称移動させることにより変換する変換手段を具備し、前記形状比較照合手段は、前記変換手段によって配置が変換された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする。
【0017】
これにより、ユーザの指定した局面の配置を回転または対称移動させることにより変換し、すなわち囲碁ゲームであれば盤面上の4隅にそれぞれ移動あるいは線対称的に折り返した8通りの局面配置に変換し、これら変換された局面配置により検索を行なうことにより、これら変換され局面配置を含む棋譜データ(ゲームデータ)も検索結果として出力される。
【0018】
また、前記形状比較照合手段により比較照合の対象となる第1部分局面における敵味方のデータ入力を反転させる反転手段を具備し、前記形状比較照合手段は、反転手段によって反転された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする。
【0019】
これにより、局面配置について敵味方(囲碁ゲームであれば白黒)反転させた局面配置が出現した棋譜についても、指定された局面配置が出現した棋譜に該当するものとして出力される。
【0020】
また、前記形状比較照合手段は、部分局面の配置を表す要素を直交するベクトル形式のデータを用いて表し、前記第1部分局面と前記第2部分局面との比較照合を行うことを特徴とする。
【0021】
これにより、部分局面の配置を表す要素、すなわち囲碁ゲームであれば白石や黒石、将棋やチェスであれば駒については、将棋やチェスのように種類が多い場合には、局面配置を表す内部データ表現を、例えば黒=1/白=−1といった整数データではなく、ベクトルデータを用いるようにすることで比較照合が確実となる。
【0022】
また、前記ベクトル形式のデータは、部分局面に前記要素がない状態である「空白」を表し、他の要素に対するベクトル形式のデータと直交する空白ベクトルデータを包含することを特徴とする。
【0023】
これにより、部分局面の配置を表す要素である駒等の置かれていないことを表す「空白点ベクトル」の次元を持たせることで、駒のみでなく空白の点も含めた局面マッチングを行うことで比較照合が確実となる。
【0024】
また本発明は、ゲーム装置とゲームサービスを提供するサーバ装置(データ検索装置)とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記手順指定手段によって指定された手順と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記ゲーム装置から検索依頼と共に検索対象とするゲームデータを指定する手順を受信する受信手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記受信手段によって受信された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とする。
【0025】
これにより、ユーザがゲーム装置においてある手順を指定すると、ゲーム装置はその手順をサーバ装置に送信する。そして、手順を受信したサーバ装置が、サーバ装置に設けられたデータベース装置に記憶されているゲームデータ(棋譜データ)のなかから指定された手順と同じ手順を含むゲームデータを検索する。そして、サーバ装置は、検索結果としてゲームデータをゲーム装置に返信する。
【0026】
また本発明は、ゲーム装置とゲームサービスを提供するサーバ装置(データ検索装置)とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記配置指定手段によって指定された部分局面の配置と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記受信手段によって受信された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記受信手段によって受信された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とする。
【0027】
これにより、ユーザがゲーム装置においてある局面配置を指定すると、ゲーム装置はその局面配置をサーバ装置に送信する。そして、局面配置を受信したサーバ装置が、サーバ装置に設けられたデータベース装置に記憶されているゲームデータ(棋譜データ)のなかから、指定された局面配置と同じ配置を含むゲームデータを検索する。そして、サーバ装置は、検索結果としてゲームデータをゲーム装置に返信する。
【発明の効果】
【0028】
以上のように本発明によれば、ユーザが希望するゲームパターン(定石や定型)が現れるゲームデータ(棋譜データ)を容易に検索することが可能なゲーム装置、サーバ装置、ゲームシステムを提供することができる。また、ゲーム端末の記憶装置の記憶容量が限られている場合に、この容量を極力消費しないようにして、ユーザが希望するゲームパターン(定石や定型)が現れるゲーム結果(棋譜データ)を検索することができる。
【発明を実施するための最良の形態】
【0029】
以下、図面を参照して本発明の実施の形態について説明する。図1は、本実施形態における通信手段を介して囲碁などの対局を行なう対局システムの構成を示す図である。図1に示すように、本実施形態における対局システムは、囲碁対局サービスサーバ10(サーバ装置)を有するサービスプロバイダ12に、通信回線網14を介してパーソナルコンピュータ18の他、ゲーム装置22,23,24が接続することにより通信手段を介した対局を行なうことができる。
【0030】
囲碁対局サービスサーバ10は、インターネットあるいは公衆回線網などを含む通信回線網14を介して外部との通信を行なうサービスプロバイダ12において、囲碁対局サービスを提供するために利用される。すなわち、囲碁対局サービスサーバ10は、囲碁の対局を行なう際には、対局を行なう両者に対して相互にサービスを提供すると共に、両者の間でサービスを相互に提供するための通信を制御する機能を有する。また、囲碁対局サービスサーバ10は、過去の対局に関する棋譜データをデータベースとして蓄積しており、ユーザからの要求に応じてユーザが所望する棋譜データをダウンロードするサービスも提供する(詳細については後述する)。
【0031】
通信回線網14を介して囲碁対局サービスサーバ10に接続される端末としては、パーソナルコンピュータ18の他に、囲碁ゲーム専用端末であるゲーム装置22,23,24などが接続される。なお、ゲーム装置22,23,24は、同等の機能を有するものとして、以下、ゲーム装置22のみを対象として説明する。
【0032】
図2は本発明の実施の形態に係わる囲碁対局サービスサーバ10の電子回路の構成を示すブロック図である。囲碁対局サービスサーバ10は、各種の記録媒体に記録されたプログラムを読み込み、この読み込んだプログラムによって動作が制御されるコンピュータによって構成される。
【0033】
囲碁対局サービスサーバ10は、図2に示すように、CPU30、電話通信ユニット31、通信ユニット32、記憶装置33、メモリ35、及びデータベース装置36を有して構成される。
【0034】
CPU30は、囲碁対局サービスサーバ10全体の制御を司るもので、メモリ35に格納されたプログラム(囲碁対局プログラム等)やデータ等に基づいて動作することにより各種の機能を実現する。囲碁対局プログラムにより実現される機能としては、通信手段を介した会員同士で対局を行なう対局サービス、データベース装置36に格納されている棋譜データから会員が所望するものを検索して提供する棋譜データ検索サービスなどがある。
【0035】
電話通信ユニット31は、公衆回線網を介した外部との通信を制御するユニットであり、CPU30によって指示された電話番号に応じて自動的に電話をかける機能を有している。通信ユニット32は、インターネットを介した外部との通信を制御するユニットである。記憶装置33は、各種プログラムやデータを格納するためのものであって、例えば対局の管理のために生成される各種リスト(会員リスト、対局データなど)のデータも必要に応じて格納される。記憶装置33は、プログラム、データ等が予め記録されている記録媒体34を有しており、この記録媒体34は磁気的、光学的記憶媒体、もしくは半導体メモリで構成されている。この記録媒体34は、記憶装置33に固定的に設けたもの、もしくは着脱自在に装着するものである。また、記録媒体34に記憶されるプログラム、データ等は、通信回線等を介して接続された他の機器から受信して記憶する構成にしても良く、さらに、通信回線等を介して接続された他の機器側に記録媒体を備えた記憶装置を設け、この記録媒体に記憶されているプログラム、データを通信回線を介して使用する構成にしても良い。
【0036】
メモリ35は、CPU30によってアクセスされるためのプログラムやデータが格納されるもので、必要に応じて記憶装置33またはデータベース装置36から読み出されて格納される。データベース装置36は、各種の情報を蓄積しておくための記憶装置であり、例えば会員に関する情報が登録された会員リスト36a、各会員についての過去の対局やプロ棋士同士の対局に関する棋譜データなど各種情報を含む対局データ36b(ゲームデータ)が格納されている。対局データ36bには、過去の対局に関する棋譜データの他に、対戦記録、棋士の情報、詰め碁、問題集、会員の勝敗記録等を集めた情報などを含み、棋譜データ検索サービスにより会員からの要求に応じて提供される。
【0037】
図3には、囲碁対局サービスサーバ10のデータベース装置36(あるいは記憶装置33)に格納される会員リスト36a、対局データ36bのデータ構造を示している。会員リスト36aは、囲碁対局サービスサーバ10からサービスの提供を受けられる会員に関する情報が予め登録されたもので、図3(a)に示すように、氏名、会員番号、電話番号、段級などの情報が会員毎に登録されている。
【0038】
対局データ36bは、対局に関する情報が登録されるもので、図3(b)に示すように、対局者の氏名(対局者(1)、対局者(2))と、それぞれの対局者の着手位置を示す棋譜データ(ゲームの履歴)などが登録される。
【0039】
図4は、本実施形態におけるゲーム装置22の電子回路の構成を示すブロック図である。ゲーム装置22は、各種の記録媒体に記録されたプログラムを読み込み、この読み込んだプログラムによって動作が制御されるコンピュータによって構成することができる。
【0040】
図4に示すように、本実施形態における囲碁ゲーム専用端末22は、CPU41、ROM42、タッチパネル44、SRAM46、棋譜記憶装置47、LCDドライバ周辺回路48、LCD50、無線通信I/F52、スピーカ53、アンテナ54、電池56、及び指定手順変換装置58によって構成されている。
【0041】
CPU41は、ROM42に格納された各種制御プログラムやデータに従って各種機能を実現するもので、囲碁ゲーム制御機能、通信相手との囲碁ゲーム対局のための通信機能、棋譜記憶装置47に格納された棋譜データ(ゲームデータ)をユーザからの指示に応じて検索する棋譜データ検索機能などを実行する。ROM42は、CPU41によって実行される各種制御プログラムやデータ等が格納されるものであり、囲碁ゲーム制御用プログラム、通信相手との囲碁ゲーム対局通信用プログラム、棋譜データ検索プログラムなどを含んでいる。タッチパネル44は、装置に対する動作を規定するためのソフトキーによる指示入力や、囲碁ゲーム実行中の石を置くべき位置を指定する座標データを入力するために使用される。棋譜データ検索機能により棋譜データの検索を行なう場合には、検索対象となる検索手順(着手パターン)がタッチパネル44を通じて入力される。
【0042】
SRAM46は、CPU41によって各種機能を実行する際の作業領域として使用され、例えば進行中の囲碁ゲームの状況(各石の置かれた位置など)に関するデータなどが格納される。棋譜記憶装置47は、過去の対局の棋譜データ(囲碁対局サービスサーバ10のデータベース装置36に格納された棋譜データをダウンロードしたもの、ゲーム装置22に対してユーザが独自に入力したもの、他の記憶媒体に記憶されていた棋譜データをコピーしたもの、通信によって取得したものなど)を記憶するもので、棋譜データ検索機能によって検索対象となる。
【0043】
LCDドライバ周辺回路48は、CPU41の制御のもとで、LCD50における表示を制御するもので、LCD50に設けられた本ゲーム表示装置固有のセグメントパターンに対する制御を行なう。LCD50は、囲碁ゲームを行なう上で必要な各種の情報を表示するもので、碁盤の盤面を表す盤面表示、ハマの数を黒石、白石それぞれについて表示するためのハマ表示、黒盤、白盤それぞれの時間を表示するための時間表示、動作を規定する指示を入力するための複数のソフトキー(ボタン)が設けられる。また、LCD50の盤面表示をする領域については、囲碁ゲームのゲームパターン表示(石や碁罫線など)に好適なセグメントパターンが設けられている。無線通信I/F52は、通信相手と囲碁ゲームを対戦する際に、CPU41の制御のもとでアンテナ54を介して無線通信を行なう。スピーカ53は、CPU41の制御のもとで音を発声させるもので、効果音や音声メッセージなどを出力するために用いられる。電池56は、ゲーム表示装置を屋外等に持ち出して携帯することができるように、各構成部に電力を供給するために使用される。指定手順変換装置58は、棋譜データ検索機能を実行する場合に、タッチパネル44を通じて入力される検索手順(着手パターン)に対して、同等の意味を持つ着手パターンに変換する装置であり、入力された検索手順に対して回転、対称移動により手順の変換を行なう。なお、指定手順変換装置58と同等の機能をCPU41により実行される指定手順変換プログラムとして実現することもできる。
【0044】
図5は、ゲーム装置22の外観構成を示している。ゲーム装置22は、携帯型に構成されており、筐体上面部にLCD22a(LCD50)(例えば大型モノクロ液晶)及びタッチパネル22b(タッチパネル44)が設けられている。LCD22aの表示面とタッチパネル22bのデータ入力面は、積層一体型に構成されており、LCD22aによって表示された対象物(例えば碁石を示す表示パターン、盤面を表す表示中の交点位置、キーなど)を、ペン22dや指先などによって直接的に指示することで、該当する位置の座標データを入力することができる。また、ゲーム装置22は、アンテナ22cを通じて、例えば図示しないモデムとの間で無線通信をすることができる。この場合、モデムには、ゲーム装置22(囲碁ゲーム専用端末)との間で無線通信を行なうための機能が設けられる。またモジュラージャックを介して公衆回線網(通信回線網14)と接続され、電話機が接続される。これにより、電話線の接続や差し替え等を行なうことなく、場所を選ばずにゲーム装置22を使用できるようになっている。なお、ゲーム装置22にモデムの機能が設けられた構成とすることも勿論可能である。
【0045】
図6には、ゲーム装置22のLCD22aによって表示される画面の一例を示している。図6に示すように、囲碁ゲームを行なう上で必要な情報として、碁盤の盤面を表す盤面表示、ハマの数を黒石、白石それぞれについて表示させるためのハマ表示、黒番、白番それぞれの持ち時間を表示するための時間表示、動作を規定する指示を入力するための複数のソフトキー(画面に表示されるキー)を含むキー入力部が設けられている。
【0046】
キー入力部には、対局中では、例えば上下左右方向のそれぞれを示すカーソルキー、パスを指示するための「パス」キー、投了を指示するための「投了」キー、対局の中断を指示するための「中断」キーなどが設けられる。また、キー入力部には、状況に応じて利用者からの所定の指示を入力するためのキーが設けられ、棋譜データ検索機能を実行する場合には、検索手順(着手パターン)を入力するために黒石、白石の着手位置を任意に指定するためのキーが必要に応じて設けられる。キー入力は、ペン22dや指先によってLCD22aの表示画面と一体化されたタッチパネル22bの検出面をタッチすることによって行なわれる。タッチパネル22bによってキーに該当する部分に対してタッチ入力があったことが検出されると、タッチされた位置(キー)に応じた処理が実行される。
【0047】
次に、本実施形態(実施形態1〜9)の動作について説明する。
(実施形態1)
図7は、実施形態1の動作を説明するためのフローチャートである。実施形態1は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、手順指定機能、手順照合機能、棋譜表示機能による棋譜検索処理を実現する。
【0048】
棋譜記憶装置47には、例えば、過去のプロ棋士の打碁データなどをあらかじめ記憶させておく。棋譜記憶装置47に記憶させる棋譜データの数は特に限定されないが、一般的にはある程度の数の棋譜データをデータベース化して記憶させておく方が、検索対象が増えるため、より効果的である。
【0049】
まず、手順指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップA1)。手順指定機能では、LCD22a(LCD50)によって表示された盤面表示に対して、ペン22dによってタッチパネル22b(タッチパネル44)の着手位置を黒番、白番のそれぞれを指定することにより検索手順(対局を進めるために入力されたデータ系列)を入力することができる。なお、ペン22dの操作によって検索手順を効率的に入力することができるように、ペン22dによる着手位置の指示に応じて、入力対象とする手番を黒番と白番で自動的に交互切り替えることで、ユーザが着手位置の指定のみを行なうことで検索手順を入力できるようにしても良い。また、キー入力部に着手位置の入力対象を黒番と白番の何れにするかを指定するキーを設け、このキーの操作に応じて着手位置を黒番と白番の何れかに固定するようにしても良い。この場合、例えば黒番の着手位置のみを連続して入力するといったことができる。また、予め複数の定石の着手パターンを登録しておき、この登録された中から検索対象とする着手パターンを選択し、検索手順として指定できるようにしても良い。
【0050】
図8(a)には、検索手順(着手パターン)が入力された盤面表示の一例を示している。図8(a)に示す例では、全8手の手順が指定されている。手順指定機能は、入力された検索手順を、図8(b)に示すように手順番号とそれぞれに対する着手位置を示すデータにして手順照合機能に送る。
【0051】
手順照合機能は、指定された検索手順を受け取ると、棋譜記憶装置47から棋譜データを一局分読み出す(ステップA2)。そして、その棋譜データに指定された検索手順が包含されているか否かを照合する(ステップA3)。この照合の結果、検索手順が棋譜データに包含されていれば(ステップA4)、その棋譜データを「検索手順を包含する棋譜」として出力し、包含されていなければ(ステップA4)、次の一局分の棋譜データを棋譜記憶装置47から読み出して同様の処理を繰り返す。
【0052】
棋譜表示機能は、出力された検索手順を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる。棋譜表示機能によって表示される初期画面では、検索手順が現れた局面を表示させるものとする。ただし、その他にも検索手順が現れた局面の前後の局面、あるいはその対局の序盤の局面などを初期画面において表示させ、ユーザからの指示に応じて手順を進める、あるいは戻すことによって、検索手順が現れた局面が表示されるようにしても良い。これらの機能によって、ユーザは指定した検索手順を包含する棋譜を鑑賞・研究等することができる。
【0053】
なお、図8に示した指定された検索手順の例において、手順番号として便宜上1から始まる数字を用いているが、これは実際の棋譜データにおいて、必ずしも一手目から当該指定手順を包含する事を意味してはおらず、相対的な着手の順番を表しているに過ぎないものである。従って、手順照合機能においては、棋譜中の任意の手数n手目から(n+7)手目が、当該指定手順と同一の位置であった場合には、当該棋譜は当該指定手順を包含するものとして当該棋譜データを出力するように構成する。
【0054】
このようにして、実施形態1では、例えば図8(a)に示したような、ユーザが希望した定石が用いられたプロ棋士などによる実戦棋譜データを検索し、定石等が打たれた対局がその後どうなったか等の研究・鑑賞することが可能となる。また、本実施形態の説明では囲碁ゲームを対象としているが、将棋等の場合でも、ある定石手順を検索手順として指定することによって、例えばプロ棋士の実戦譜の中から、相矢倉の戦形で指された将棋のみを検索して研究・鑑賞等することができるようになる。
【0055】
(実施形態2)
図9は、実施形態2の動作を説明するためのフローチャートである。実施形態2は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、実施形態1と同様にして手順指定機能、手順照合機能、棋譜表示機能による棋譜検索処理を実現する。また、実施形態2では、入力された検索手順に対して盤面において回転・対称移動させる指定手順変換装置58(変換手段)による変換機能を用いる。指定手順変換装置58は、入力された検索手順を意味的に同じ別の検索手順に変換するもので、回転若しくは対称移動を行って、盤面の2つの辺に対して相対的に同じ配列となる8通りの着手パターン(入力されたパターンを含む)を生成する機能を有している。すなわち、4つの隅(右上隅、左上隅、右下隅、左下隅)のそれぞれにおいて、2つの着手パターンが生成される。
【0056】
囲碁の場合、ある定石手順等の出現した棋譜を検索する場合、その定石手順は、必ずしも入力した手順と同じ向きで盤面上に出現していなければならないというわけではなく、四隅のいずれかで出現していれば同等の意味をもつという性質のものである。
【0057】
具体的には、図8(a)に示す検索手順を指定した場合には、この着手パターンについて回転若しくは対称移動を行って得られる盤面の2つの辺に対して相対的に同じ配列となる8通りの着手パターンのうちいずれかに該当する棋譜データを全て検索できる方が良い(図11に例を示す)。
【0058】
そこで実施形態2では、実施形態1のように、手順指定機能によって指定された検索手順を、そのまま手順照合機能に入力して照合するのではなく、図10に示すように構成された指定手順変換装置58によって変換し、検索手順を切り替えつつ、これらの8通り(入力された検索手順と変換によって得られた7通りの検索手順)の検索手順の全てと照合できるようにしたものである。図8(a)に示す検索手順(図11(a)と同じ)が入力された場合には、指定手順変換装置58によって、図11(b1)(c1)(d1)(e1)(f1)(g1)(h1)の検索手順(着手パターン)に変換される。各検索手順に対する手順番号とそれぞれに対する着手位置を示すデータは、それぞれ(b2)(c2)(d2)(e2)(f2)(g2)(h2)に示すようになる。
【0059】
まず、手順指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップB1)。検索手順の入力は、実施形態1と同様にして行われるものとする。手順指定機能によって検索手順が入力されると、この検索手順が手順変換機能へ送られる。
【0060】
手順照合機能は、指定された検索手順を受け取ると、まず棋譜照合機能に対して、棋譜記憶装置47から一局分の棋譜を読み出して照合する対象の棋譜データとするように指示を出す(ステップB2)。
【0061】
続いて、指定手順変換装置58に対して変換種別番号を1にセットする(ステップB3)。この変換種別番号は、図11に示した8通りの検索手順の着手パターンのうち、何れの変換を行うかを指定するものであり、図10に示す構成のマルチプレクサへの入力とするものである。指定手順変換装置58は、変換種別番号の数に応じて、入力された検索手順を変換し、その変換によって得られた検索手順を手順照合機能に送る(ステップB4)。
【0062】
手順照合機能は、棋譜記憶装置47から読み出した棋譜データ中に、指定手順変換装置58から取得した検索手順が包含されているか否かを照合する(ステップB5)。この照合の結果、検索手順が棋譜データに包含されていれば(ステップB6)、その棋譜データを出力し、出現していたら、現在照合対象となっている棋譜を、「検索手順を包含する棋譜」として出力する。
【0063】
棋譜表示機能は、出力された検索手順を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる(ステップB9)。なお、棋譜表示機能による棋譜の表示については実施形態1と同様にして行われるものとする。
【0064】
一方、棋譜データ中に検索手順が包含されていなければ(ステップB6)、手順照合機能は、検索手順が包含されていない旨を手順変換機能に返す。この場合には、手順変換機能は、変換種別番号を変更(+1)して(ステップB7)、指定手順変換装置58によって次の変換種別番号に応じた変換により検索手順の変換を行い、この変換された検索手順によって前述と同様にして棋譜データとの照合を行なう(ステップB4〜B6)。そして、変換種別番号=8までの全ての変換について照合した結果(ステップB8)、その何れの検索手順も棋譜データに包含されていない場合には、この棋譜データには、検索手順が包含されていないと判断し、次の一局分の棋譜データを棋譜記憶装置47から読み出して同様の処理を繰り返す(ステップB2〜)。
【0065】
なお、前述した説明では、図10に示すように、マルチプレクサを用いて構成された指定手順変換装置58を用いて入力された検索手順の変換を行なうものとして説明しているが、指定手順変換装置58が実行する処理と同等の処理を実行する指定手順変換プログラムを設け、このプログラムによって実現される機能を利用するようにしても良い。
【0066】
このようにして、実施形態2では、ユーザが指定した検索手順に対して回転・対称変換することによって、入力された検索手順と同じ意味を持つ8通りの検索手順を生成して、それぞれの検索手順によって棋譜記憶装置47に記憶された棋譜データに対する検索を実行することができる。従って、ユーザが指定した定石を示す検索手順が、位置や向きのみ異なって出現した対局についても、当該検索手順が出現した棋譜データ(対局)を判別することができる。
【0067】
(実施形態3)
図12は、実施形態3の動作を説明するためのフローチャートである。実施形態3は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、配置指定機能、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、棋譜表示機能による棋譜検索処理を実現する。
【0068】
実施形態3では、図13(1)のような定石形が出現した棋譜データを検索する場合に、図13(2)のように手抜きが入って打たれた(途中に別の着手が挿入された)場合の棋譜データや、図13(3)のように異なる手順で結果的に同じ定石形となった棋譜なども、当該定石形を含むものであるとして検索できるようにする。
【0069】
囲碁や将棋の場合、手順前後などが起きたことによって手順が違っていても、結局同じ形が出現することは多い。また、囲碁の場合ならば、ある隅の定石が手順そのままに打たれるのではなく、途中で別の所に1手ずつ打たれたりするような交換(例えば、ある隅での定石進行途中に、別の隅でのアタリとツギなどの交換が打たれるなど)が入ったり、コウダテとして少しずつ定石形が完成していくなどの場合も多い。
【0070】
こうした場合に、当該定石形を研究するとするならば、異なる手順であっても、同じ形が出現した棋譜を研究することは有意義であるし、また定石手順と異なる手順でできた同一形を研究することは、当該定石形の理解を深める上で大変意義のあることである。
【0071】
実施形態3では、ユーザが配置指定機能によって入力した定石形を表す局面配置(対局の部分局面)を、その手順ではなくて、黒白の石の配置(着手パターン)によって検索するようにしている。なお、局面配置は、部分的なもの及び全局面に渡るものの双方を含むものとする。
【0072】
まず、配置指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップC1)。局面配置の入力は、実施形態1と同様にして行われるものとする。ただし、手順の指定は必ずしも必要できないので、単に白石と黒石の配置(着手パターン)を指定すれば良い。配置指定機能によって局面配置(着手パターン)が入力されると、この局面配置が形状比較照合機能へ送られる。
【0073】
図14には、ある定石形を検索する場合の指定データの一例を示している。例えば、図14(a)に示すような局面配置(着手パターン)がユーザによって入力された場合、その配置が図14(b)に示すように、位置(Xn,Yn)における盤面の状態
STFn=Form(Xn,Yn)
の集合として表され、これが形状比較照合機能に送られる。
【0074】
形状比較照合機能では、この指定配置を受け取ると、棋譜再現機能、部分局面切り出し機能に対して、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し、その棋譜データをもとに棋譜(局面)を再現し、比較照合の対象となる部分局面を切り出すよう指示する。
【0075】
棋譜再現機能は、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し(ステップC2)、この棋譜データを一手進める。部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送る(ステップC3)。この際、切り出す部分局面の範囲については、予め、LCD22aによって表示された盤面表示に対して、ペン22dによってタッチパネル22b上でユーザに範囲指定させるか、あるいはユーザが指定した範囲をもとにして切り出す範囲を決定する(例えば、ユーザによって指定された範囲の1路増しの範囲)などの方法を用いる。
【0076】
ここで形状比較照合機能は、局面配置(着手パターン)と切り出された指定範囲の局面とを照合して(ステップC4)、全部の石(着手)が一致しているかを判別する(ステップC5)。例えば、形状比較照合機能では、図14(b)に示すように、各座標(盤面の点)毎に、黒=1、白=−1、空点=0のように決めた値を用いて、指定配置と棋譜データから取得した部分局面との、各座標における積の和を取る。すなわち
【数1】
を計算する。
【0077】
例えば、黒=1、白=−1、空点=0のような各座標を表すデータを用いると、上式(1)の値は、全ての石の配置が一致している場合が最大であり、その場合の値はnとなる。従って、上式(1)の値がnの時に、棋譜データは局面配置を含むものとして判別することができる。この場合、形状比較照合機能は、その棋譜データを「指定された局面配置を包含する棋譜」として出力する。
【0078】
棋譜表示機能は、出力された局面配置を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる(ステップC7)。なお、棋譜表示機能による棋譜の表示については実施形態1と同様にして行われるものとする。
【0079】
一方、形状比較照合機能によって局面配置(着手パターン)と切り出された指定範囲の局面とが一致していないと判別された場合(ステップC5)、前述のようにして、棋譜再現機能は、検索対象とする棋譜データを一手進め、部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送り照合させる(ステップC3)。これを検索対象としている棋譜データに次の手が無くなるまで繰り返して実行し(ステップC6)、最後の着手までに局面照合で合致しなかった場合には、棋譜記憶装置47から次に検索対象とする一局分の棋譜データを読み出して(ステップC2)、前述と同様の処理を繰り返し実行する(ステップC3〜)。
【0080】
このようにして、実施形態3では、ユーザの指定した定石形などが、その手順には関係なく、その「形」(着手パターン)そのものから検索できるため、手順前後があった棋譜や、その定石形とは別の着手が間で打たれたような棋譜なども検索することができる。従って、コウ争いをしながら少しずつ定石形が完成していった場合や、単なる過誤ではない手順前後を含む棋譜などを研究することができ、その定石形について、より深く研究することができる。
【0081】
(実施形態4)
図15は、実施形態4の動作を説明するためのフローチャートである。実施形態4は、前述した実施形態2と実施形態3とを組み合わせたもので、ユーザから指定された局面配置(着手パターン)を実施形態2のようにして8通りのパターンに変換して、それぞれのパターンを実施形態3のようにして局面配置として棋譜データに対して検索を行なうものである。
【0082】
実施形態4は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、配置指定機能、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、棋譜表示機能を実現し、また実施形態2と同様にして指定手順変換装置58によって盤面において回転・対称移動させる変換機能を用いることで棋譜検索処理を実行する。
【0083】
まず、配置指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップD1)。局面配置の入力は、実施形態1と同様にして行われるものとする(ただし手順の指定は不要)。配置指定機能によって局面配置が入力されると、この局面配置が形状比較照合機能へ送られる。
【0084】
形状比較照合機能では、この指定配置を受け取ると、棋譜再現機能、部分局面切り出し機能に対して、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し、その棋譜データをもとに棋譜(局面)を再現し、比較照合の対象となる部分局面を切り出すよう指示する。
【0085】
棋譜再現機能は、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し(ステップD2)、指定手順変換装置58に対して変換種別番号を1にセットする(ステップD3)。この変換種別番号は、8通りの局面配置の着手パターン(図11参照)のうちの、どの変換を行うかを指定するものであり、指定手順変換装置58は、変換種別番号の数に応じて、入力された局面配置を変換し、その変換によって得られた局面配置を棋譜再現機能に送る(ステップD4)。
【0086】
棋譜再現機能は、検索対象とする棋譜データを一手進め、部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送る(ステップD5)。
【0087】
ここで形状比較照合機能は、変換種別番号に応じた局面配置と切り出された指定範囲の局面とを照合して(ステップD6)、全部の石(着手)が一致しているかを判別する(ステップD7)。
【0088】
形状比較照合機能によって局面配置の局面と切り出された指定範囲の局面とが一致していないと判別された場合(ステップD7)、前述のようにして、棋譜再現機能は、検索対象とする棋譜データを一手進め、部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送り照合させる(ステップD5)。
【0089】
これを検索対象としている棋譜データに次の手が無くなるまで繰り返して実行し(ステップD8)、最後の着手までに局面照合で合致しなかった場合には、棋譜再現機能は、変換種別番号を変更(+1)して(ステップD9)、指定手順変換装置58によって次の変換種別番号に応じた変換により局面配置の変換を実行させる(ステップD4)。以下、同様にして、変換された局面配置によって前述と同様にして棋譜データとの照合を行なう(ステップD5〜D8)。そして、変換種別番号=8までの全ての変換について照合した結果(ステップD10)、その何れの局面配置も棋譜データに包含されていない場合には、この棋譜データには、局面配置が包含されていないと判断し、次の一局分の棋譜データを棋譜記憶装置47から読み出して同様の処理を繰り返す(ステップD2〜)。
【0090】
一方、形状比較照合機能は、局面配置の局面と切り出された指定範囲の局面とを照合して(ステップD6)、全部の石(着手)が一致しているかと判別した場合(ステップD7)、その棋譜データを「指定された局面配置を包含する棋譜」として出力する。
【0091】
棋譜表示機能は、出力された局面配置を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる(ステップD11)。なお、棋譜表示機能による棋譜の表示については実施形態1と同様にして行われるものとする。
【0092】
なお、各機能の詳細な動作については、前述した実施形態2,3と同様であるものとして説明を省略する。
【0093】
このようにして、実施形態4では、実施形態2,3と同様の効果を得ることができ、ユーザの指定した定石形(局面配置)が、位置や向きのみ異なって出現した対局についても、局面配置に対する指定配置(局面)について回転・対称変換を行った8通りの指定配置のそれぞれについて、検索対象とする棋譜データが示す局面と合致しているかを手順と関係なく判別することができるようになる。
【0094】
(実施形態5)
図16は、実施形態5の動作を説明するためのフローチャートである。実施形態5は、前述した実施形態4において、ユーザから指定された局面配置による検索だけでなく、局面配置の白黒(敵味方のそれぞれの着手(データ入力))を反転させた局面配置についても棋譜データに対して検索を行なうものである。
【0095】
実施形態5は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、配置指定機能、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、反転機能、棋譜表示機能を実現し、また実施形態2と同様にして指定手順変換装置58によって盤面において回転・対称移動させる変換機能を用いることで棋譜検索処理を実行する。
【0096】
なお、図16に示す実施形態5のフローチャートにおけるステップE1〜E10,E13は、図15に示す実施形態のフローチャートにおけるステップD1〜D10,D11のそれぞれと対応し、同様の処理を実行するものとして詳細な説明を省略する。
【0097】
判定機構は、ユーザによって入力された局面配置に対して指定手順変換装置58により8通のパターンに変換して、それぞれについて検索対象とする棋譜データと照合した結果、合致しなかった場合には、入力された局面配置の白黒を反転させる(ステップE11,E12)。そして、入力された局面配置に対する処理と同様の処理を実行する(ステップE3〜E10)。
【0098】
例えば、図17(a1)(a2)に示すような局面配置(着手パターン)によって検索を行っても検索対象とする棋譜データと合致しなかった場合には、図17(b1)(b2)に示すようにして、白黒を反転させた着手パターンを生成して検索を実行する。
【0099】
従って、ユーザが指定した局面配置(着手パターン)について、指定手順変換装置58による変換により8通りのパターンについて照合し、さらに白黒反転させた場合の配置に対しても8通りのパターンについて照合することになり、結局、合計で16通りの着手パターンについて照合を行なうことになる。
【0100】
このようにして、実施形態5では、ユーザが指定した局面配置(着手パターン)だけでなく、入力された着手パターンの白黒を入れ替えたパターンが出現した対局の棋譜データについても、ユーザが指定した形が出現したものとして検索することができる。囲碁の場合では、白番と黒番が反対であって同様に「ある定石形が打たれた棋譜」に該当するので、ユーザが指定した着手パターンに該当する棋譜データを検索する場合には有効である。
【0101】
なお、前述した説明では、実施形態4の処理に対してユーザから入力された局面配置の白番と黒番とを反転させる機能を付加するものとして説明しているが、実施形態3に対して付加して実行することもできる。すなわち、ステップC6の後にステップE11,12の処理を実行し、局面配置を白黒反転させた後にステップC3から同様の処理を実行すれば良い。
【0102】
(実施形態6)
実施形態6では、将棋やチェスなど、囲碁と異なり、駒の種類が多種類であるゲームの場合に適用して好適なものである。将棋などの駒の種類が多い場合、各駒に適当な整数値等を割り当ててみても、実施形態3において説明した式(1)の値は、局面が同一の場合に最大とはならない。従って、式(1)からは、局面の同一性を判定することはできない。そこで、実施形態6では、実施形態3から実施形態5に係る発明において、(1次元)整数値データによって表現していた局面配置(部分局面の配置)を表す要素である各駒(石)を、多次元ベクトルデータによって表現するようにしたものである。
【0103】
具体的には、実施形態3において説明した、形状比較照合機能に入力される配置指定機能からの出力データSTFn=Form(Xn,Yn)、及び部分局面切り出し機能からの出力データSTBn=BAN(Xn,Yn)を、図14に示したような整数値データではなく、その座標毎に単位ベクトルデータを用いるようにする。例えば、図18に示すような駒の配置の盤面に対して、図19(a)の各駒ベクトルに示した各駒に対する単位ベクトルデータを用いることで、図19(b)に示すベクトルデータによって表すことができる。
【0104】
この際、一方の対局者の駒については、ある方向の正の単位ベクトルを、もう一方の対局者の駒については、負の単位ベクトルを用いる。具体的には例えば、ある対局者の駒については、ある1要素のみが1であるような単位ベクトルを、もう一方の対局者の駒には当該要素のみが−1であるような単位ベクトルを、それぞれ用いる等の方法がある。そして、実施形態3の形状比較照合機能で計算される式(1)に示すような整数値の積ではなく、以下の式(2)に示すようにベクトルの内積演算を求めるように形状比較照合機能を構成する。
【0105】
【数2】
【0106】
これにより各駒ベクトルはそれぞれ直交しているから、式(2)の値は、配置指定機能で指定されたものと同じ駒が、検索対象としている局面でも同じ場所にある場合にのみ正の値1をとり、その他の場合には0若しくは−1(駒の種類は同じで、敵味方が逆の場合に−1となる)をとる。
【0107】
従って、式(2)の値は、配置指定機能によって指定された局面と、現在調べている棋譜のうち、切り出された部分局面とが同一の時に最大になる。
【0108】
このようにして、実施形態6では、将棋やチェスなど、駒の種類が多岐に渡るゲームについても、ユーザの指定した部分局面と同一の局面の出現した棋譜を検索する機能を構成することができる。
【0109】
(実施形態7)
前述した実施形態3〜6であれば、ある定石形(局面配置)を指定することで同じ定石形が出現した棋譜データを検索することができる。しかし、そのままでは定石形と同じ局面配置を持つ定石ではない棋譜データも検索される場合がある。
【0110】
図20には、定石形と同じ局面配置を持つ定石ではない棋譜データの一例を示している。図20(a)は、配置指定機能によってユーザが指定した「検索したい形」である定石形(局面配置)を示し、図20(b)は、その定石形を含んではいるものの、ユーザが希望する「定石形」ではなく、例えば終盤になって偶然に当該定石と同じように石が配置された局面の一例を示している。ユーザは、図20(a)に示したような「ツケノビ定石」が打たれた棋譜を検索しようとしたにも拘わらず、全く別の形が打たれた碁で偶然に終盤のヨセになってから黒星に示す着手があって、ツケノビ定石と同じ位置に同じ色の石が来てしまったような図20(b)に示す対局の棋譜も検索されてしまう。
【0111】
これは、実施形態5,6において、ユーザが特に指定しなかった空白の点について、「空白である」事を条件とせず、「ユーザの指定した位置に、指定の駒がある棋譜」を検索していたためである。
【0112】
そこで、実施形態7では、各駒ベクトルの他に、「空白」を表す次元を一つ増やし、式(1)のForm(Xn,Yn)及び、BAN(Xn,Yn)について、空白点を零ベクトルではなくて、この空白単位ベクトルをもって表すように配置指定機能などの機能を構成する。図21には空白単位ベクトルを用いる場合の各駒ベクトル例を示している。囲碁の場合には、図21(a)に示したような黒石、白石を表すベクトルの他に空点を表す駒ベクトルを用い、将棋の場合には、図21(b)に示したような各駒の他に空点を表す駒ベクトルを用いて、局面配置と検索対象としている棋譜データの部分局面をデータ化し、この空白ベクトルを含むデータによって式(1)を計算するように各機能を構成する。
【0113】
このようにすることによって、図20(a)のように指定した局面配置の各空白点が図20(b)では空白ではないので、その点について内積がゼロとなり、結局、図20(b)に示す棋譜データでは式(1)が最大とならないため、この棋譜データが検索されないようになる。
【0114】
このようにして、実施形態7では、ある定石形等を検索しようとした時に、その趣旨とは全く異なり、偶然に当該定石形等と同じ場所に同じ石(または駒)があるような配置が出現してしまった棋譜を検索対象から除外することができる。将棋やチェスの場合は、使用する駒数が変化しないため、上記の問題は比較的発生しにくいと考えられるが、囲碁の場合には、対局が進行していくにつれて石の数が増えていくため、終盤になって偶然にある定石形と同じ場所に石が配置されてしまうといったことは充分に考えられる。実施形態7の方法を用いることで、このようなケースを排除することができ、ユーザが意図しない棋譜データが検索されることを予防できる。
【0115】
(実施形態8)
図22は、実施形態8の動作を説明するためのフローチャートである。実施形態8は、実施形態1,2の処理をゲーム装置22と囲碁対局サービスサーバ10によって行なうもので、ゲーム装置22ではCPU41により棋譜データ検索プログラムを実行することにより、実施形態1,2と同等の機能をもつ手順指定機能、棋譜表示機能を実現し、囲碁対局サービスサーバ10ではCPU30により囲碁対局プログラム33aを実行することにより、手順照合機能、指定手順変換機能(指定手順変換装置58と同等の機能)を実現する。また、囲碁対局サービスサーバ10のデータベース装置36に記憶された対局データ36bを検索対象とする。
【0116】
一般に、検索対象とする棋譜データベースには、過去のプロ棋士による対局や江戸時代の本因坊家などの御城基など、多くの棋譜データを保持させて使用する場合が多いと考えられ、また多くの棋譜データを保持させておく方がユーザの希望する棋譜データを提供し易くなる。しかし、過去の膨大な棋譜データを記憶するためには、多大な記憶容量が必要となってしまう。従って、各ユーザが使用するそれぞれの端末全てに大容量を持つ棋譜記憶装置47を設ける必要がでてくるが、これでは効率が悪く、またゲーム装置22における負担も大きくなってしまう。また、膨大な棋譜データを各ゲーム装置で記憶していたとしても、ユーザ毎に検索・研究したい棋譜が異なっている場合も多く、ユーザが棋譜鑑賞できる棋譜数にも限界があること等から、実際に、ある一人のユーザが棋譜記憶装置47から読み出して鑑賞等する棋譜の数は、記憶されている棋譜数に比して、相当程度少ないものであると考えられる。こうした意味でも膨大な量の同一棋譜データを各端末が記憶しているのは非常に効率が悪い。
【0117】
実施形態8では、ゲーム装置における棋譜記憶装置47の代わりとなるデータベース装置36、手順照合機能、実施形態2における指定手順変換機能を囲碁対局サービスサーバ10側に持たせ、手順指定機能、棋譜表示機能とを各ゲーム装置側に持たせるようにし、複数のゲーム装置からこの囲碁対局サービスサーバ10にアクセスして、希望する棋譜のみを検索して、ダウンロードするようにしたものである。また、囲碁対局サービスサーバ10とゲーム装置とは、相互に通信回線網14を介して通信を行なうための通信機能を有している。
【0118】
まず、ゲーム装置22は、手順指定機能によって、検索を希望する定石等の手順(検索手順)をユーザからの指示に応じて入力する(ステップF1)。検索手順の入力は、実施形態1と同様にして行われるものとする。手順指定機能によって検索手順が入力されると、ゲーム装置22は、通信機能によって、囲碁対局サービスサーバ10に対して棋譜検索依頼(検索サービス要求)と共にユーザから入力された検索手順を送信する(ステップF2)。
【0119】
囲碁対局サービスサーバ10は、ゲーム装置22から棋譜検索依頼を受信すると(ステップG1)、受信した検索手順をもとにデータベース装置36に格納された対局データ36bに対する棋譜検索処理を実行する(ステップG2)。なお、ステップG2における棋譜検索処理は、前述した実施形態2(図9のフローチャートに示す)と同様の処理を実行するものとして詳細な説明を省略する(なお、実施形態1と同様の処理を実行するようにしても良い)。
【0120】
棋譜検索処理によってユーザによって指定された検索手順を包含する棋譜データが検索されると、該当する棋譜データを蓄積し(ステップG4)、その他の対局データ36bに対する棋譜検索処理を実行する(ステップG2〜G4)。
【0121】
こうして対局データ36bに対する検索が終了すると、囲碁対局サービスサーバ10は、ユーザが指定した検索手順を包含する全ての棋譜データを検索結果として、ゲーム装置22に対して通信回線網14を介して返信する(ステップG5)。なお、囲碁対局サービスサーバ10は対局データ36bから検索手順に該当する全ての棋譜データを検索するとデータ量が多くなる場合には、ユーザから希望するデータ数の指定を入力し、そのデータ数の範囲に限定したり、対局者、対局日などの他の項目について指定させることにより、検索対象を制限するようにしても良い。
【0122】
一方、ゲーム装置22は、囲碁対局サービスサーバ10から検索された棋譜データを受信すると(ステップF3)、棋譜表示機能によって返信されてきた棋譜データをもとに棋譜を表示する(ステップF4)。
【0123】
このようにして、実施形態8では、ゲーム装置22において検索手順を入力して、囲碁対局サービスサーバ10に対して棋譜検索依頼を送信することで、ゲーム装置22では囲碁対局サービスサーバ10のデータベース装置36に蓄積されている対局データ36bから該当する棋譜データを取得することができる。このため、ゲーム装置22では、棋譜データをデータベースとして蓄積しておくための大容量の棋譜記憶装置47を持つ必要がなくなり負担が軽減される。また、囲碁対局サービスサーバ10のデータベース装置36を対象として、各ゲーム装置が共通して検索することができるので、効率が良く、また、棋譜データベースへの棋譜データの追加や変更、消去などのメンテナンスが容易に行えるようになる。さらに、手順照合機能を囲碁対局サービスサーバ10側に持たせることにより、負荷のかかる棋譜データの検索処理をサーバで行わせることができるようになる。これによりゲーム装置の処理負荷を軽減でき、処理能力の強化をする場合もサーバの処理能力を上げることで容易に実現できる。
【0124】
(実施形態9)
実施形態9は、実施形態8の説明で用いた図22のフローチャートと同様にして動作する。実施形態9は、実施形態3〜7の処理をゲーム装置22と囲碁対局サービスサーバ10によって行なうもので、ゲーム装置22ではCPU41により棋譜データ検索プログラムを実行することにより、実施形態3〜5と同等の機能をもつ配置指定機能、棋譜表示機能を実現し、囲碁対局サービスサーバ10ではCPU30により囲碁対局プログラム33aを実行することにより、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、反転機能、指定手順変換機能(指定手順変換装置58と同等の機能)を実現する。また、囲碁対局サービスサーバ10のデータベース装置36に記憶された対局データ36bを検索対象とする。また、囲碁対局サービスサーバ10とゲーム装置とは、相互に通信回線網14を介して通信を行なうための通信機能を有している。
【0125】
実施形態9における処理は、前述した実施形態8とは、ゲーム装置22において配置指定機能により局面配置を入力して、囲碁対局サービスサーバ10に対して棋譜検索依頼を送信し、囲碁対局サービスサーバ10ではゲーム装置22からの検索依頼に対して受信した局面配置によりデータベース装置36の検索を行なう点が異なるだけで他は同じであるので詳細な説明を省略する。囲碁対局サービスサーバ10においては、前述した実施形態3〜5の何れかと同様の手順によって棋譜検索処理を実行する。また、実施形態6または実施形態7と組み合わせて実行する。
【0126】
このようにして、実施形態9では、実施形態8と同様の効果を得ることができるもので、ゲーム装置における棋譜検索処理に係る負荷を減少することができ、また、複数のゲーム装置から囲碁対局サービスサーバ10のデータベース装置36を対象として検索することができるため効率を良くすることができる。
【0127】
以上、前述した各実施形態における説明においては、主に囲碁ゲームを行なう場合について説明しているが、例えば将棋・チェス・オセロ・連珠・各種トランプゲーム・麻雀等、所定の手順(順番)でゲームを進行させるためのデータを入力させる他のゲームにおいても、ユーザが希望するゲームパターン(あるゲーム状況)を包含するゲームデータを検索する機能として本発明を適用することが可能である。
【0128】
また、前述した各実施形態において、ゲーム装置に対する指示は、キー入力部に必要に応じて設けられるソフトキーを用いて行われるものとして説明しているが、キー入力部以外において任意に設けられるボタンや、ゲーム装置に設けられている物理的(機械的)なボタンを用いて行われるものでも良い。
【0129】
また、前述した説明では、検索結果を表示させて出力するものとして説明しているが、印刷装置(プリンタ)により紙媒体に対して出力するようにしても良い。また、ゲームを行なうための囲碁ゲーム専用端末であるゲーム装置22,23,24を対象として主に説明しているが、パーソナルコンピュータ18に前述したゲーム装置の機能を実現するプログラムを実行させることで、パーソナルコンピュータ18をゲーム装置として使用することも可能である。この場合、図4に示すゲーム装置22の構成のうち棋譜記憶装置47は、ハードディスク装置などの記憶装置により実現し、指定手順変換装置58は、同等の機能を指定手順変換プログラムとして実現することができる。
【0130】
また、本発明は、前述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、前述した実施形態の各機能は可能な限り適宜組み合わせて実施しても良い。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られるので有れば、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【0131】
【図1】本実施形態における通信手段を介して囲碁などの対局を行なう対局システムの構成を示す図。
【図2】本発明の実施の形態に係わる囲碁対局サービスサーバ10の電子回路の構成を示すブロック図。
【図3】囲碁対局サービスサーバ10のデータベース装置36(あるいは記憶装置33)に格納される会員リスト36a、対局データ36bのデータ構造を示す図。
【図4】本実施形態におけるゲーム装置22の電子回路の構成を示すブロック図。
【図5】ゲーム装置22の外観構成を示す図。
【図6】ゲーム装置22のLCD22aによって表示される画面の一例を示す図。
【図7】実施形態1の動作を説明するためのフローチャート。
【図8】検索手順(着手パターン)が入力された盤面表示の一例を示す図。
【図9】実施形態2の動作を説明するためのフローチャート。
【図10】指定手順変換装置58の構成の一例を示す図。
【図11】指定手順変換装置58によって変換された検索手順(着手パターン)の一例を示す図。
【図12】実施形態3の動作を説明するためのフローチャート。
【図13】定石形と異なる手順で結果的に同じ定石形となった棋譜の一例を示す図。
【図14】ある定石形を検索する場合の指定データの一例を示す図。
【図15】実施形態4の動作を説明するためのフローチャート。
【図16】実施形態5の動作を説明するためのフローチャート。
【図17】指定された局面配置を白黒反転させた配置の一例を示す図。
【図18】駒の配置の一例を示す図。
【図19】各駒ベクトルと盤面をベクトルデータにした例を示す図。
【図20】定石形と同じ局面配置を持つ定石ではない棋譜データの一例を示す図。
【図21】空白単位ベクトルを用いる場合の各駒ベクトル例を示す図。
【図22】実施形態8,9の動作を説明するためのフローチャート。
【符号の説明】
【0132】
10…囲碁対局サービスサーバ
12…サービスプロバイダ
14…通信回線網
18…パーソナルコンピュータ
22,23,24…ゲーム装置
22a…LCD(液晶ディスプレイ)
22b…タッチパネル
22c…アンテナ
22d…ペン
30…CPU
31…電話通信ユニット
32…通信ユニット
33…記憶装置
33a…囲碁対局プログラム
34…記録媒体
35…メモリ
36…データベース装置
36a…会員リスト
36b…対局データ
41…CPU
42…ROM
44…タッチパネル
46…SRAM
48…LCDドライバ周辺回路
50…LCD
52…無線通信I/F
53…スピーカ
54…アンテナ
55…タイマ
56…電池
【技術分野】
【0001】
本発明は、囲碁ゲーム対局などのゲームを行なうゲーム装置、ゲーム装置が通信手段を介して囲碁ゲーム対局などを行なう際の各種サービスを提供するデータ検索装置、ゲーム装置及びサーバ装置により構成されるゲームシステム、ゲームプログラムが記憶された記憶媒体に関する。
【背景技術】
【0002】
囲碁等のゲームでは、定石、定型、常形などの、古来から研究されてきた双方最善と思われる一定の手順や部分的な形が存在する。そして、これらの定石や定型の、その後の変化や活用方法を研究する事を棋力上達などには有効である。そして、これらの定石や定型はプロの実戦にもしばしば現れるので、これらの実戦を研究することは、棋力上達のためにも非常に有効である。一方、現在、パーソナルコンピュータや専用の端末機等を用いて囲碁等のゲームを行うゲーム端末やゲームソフト等があり、これらには、大別して、パーソナルコンピュータ若しくは端末のみで楽しめるもの、ホストコンピュータ等に通信回線を介して接続して通信しながら楽しむものがある。
【0003】
現在では、パーソナルコンピュータやゲーム端末においては、以下のようなものが既に実現されている。すなわち、(1)あらかじめROM等に保存されている詰碁や詰将棋等の問題を、端末機等で再現し、解いて楽しむもの、(2)自分の対局した棋譜や、雑誌等から1人で入力した棋譜を検討等するもの、(3)機械がゲームの着手を考えて人間の相手をするもの、(4)通信によって離れた所にいる人同士で対局するもの、(5)通信対局に付随して、文字によるチャットもできるようになっているもの、などがある。
【0004】
従来では、パーソナルコンピュータの記憶装置やホストコンピュータの棋譜データベースに記憶されている棋譜を参考にして定石や定型を研究しようとする場合、目的とする定石や定型が用いられたであろう対局を予想して、その対局のタイトル戦名、対局棋士名、対局年月日などを指定して検索していた。
【発明の開示】
【発明が解決しようとする課題】
【0005】
(1)従来、棋譜データベース等に記憶されている棋譜の中から、ある定石や定型が出現した棋譜を検索する方法は実現されていなかった。このため、ある定石や定型の出現した棋譜を探そうとする場合には、ユーザが一つ一つの棋譜を再現してみて、目的とする定石や定型の有無を判断するという方法しかなかった。しかし、この方法では、目的とする定石や定型が現れなかった棋譜も含めて、全ての棋譜をユーザが再現・検討する必要があり、目的とする定石・棋譜を探すのが大変であった。
【0006】
(2)定石・定型は、必ずしも一定の手順によって出現するとは限らず、手順が前後したりする場合もある。しかしこの場合でも、手順こそ違えども最終的に同じ定型が出現したのであれば、その棋譜も研究対象として有効であり、このような棋譜も検索できることが望ましい。
【0007】
(3)ゲーム端末等の記憶装置に記憶できる棋譜データ量は、一般的には限られたものであるので、この記憶可能データ量は極力無駄に消費しないようにすることが望ましい。
【0008】
本発明は、前記のような問題に鑑みなされたもので、ユーザが希望するゲームパターン(定石や定型)が現れるゲームデータ(棋譜データ)を容易に検索することが可能なゲーム装置、データ検索装置、ゲームシステムを提供することを目的とする。
【0009】
また、ゲーム端末の記憶装置の記憶容量が限られている場合に、この容量を極力消費しないようにして、ユーザが希望するゲームパターン(定石や定型)が現れるゲーム結果(棋譜データ)を検索することが可能なゲーム装置、データ検索装置、ゲームシステムを提供することを目的とする。
【課題を解決するための手段】
【0010】
本発明は、記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記手順指定手段によって指定された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として表示する表示手段とを具備したことを特徴とする。
【0011】
これにより、ユーザがゲームのある手順を指定すると、記憶装置に記憶されているゲームデータ(例えば囲碁ゲームでは棋譜データ)のなかから、指定された手順と同じ手順を含むゲームデータが検索される。
【0012】
また、前記手順指定手段によって指定された手順を意味的に同じ手順に変換する変換手段を具備し、前記手順照合手段は、前記変換手段によって変換された手順を対象として比較照合することを特徴とする。
【0013】
これにより、ユーザの指定した手順を意味的に同じ手順、すなわち囲碁ゲームであれば、盤面上の4隅にそれぞれ移動させた手順及びそれらの各手順を線対称的に折り返した手順を含む棋譜データを、ユーザが指定した手順を含む棋譜データ(ゲームデータ)として出力される。
【0014】
また本発明は、記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記配置指定手段によって指定された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として表示する表示手段とを具備したことを特徴とする。
【0015】
これにより、ユーザがある局面配置(部分的なもの及び全局面に渡るものの双方を含む)を指定すると、記憶装置に記憶されているゲームデータのなかから、指定された局面と同じ局面が出現しているゲームデータが検索される。
【0016】
また、前記形配置指定手段によって指定された第1部分局面の配置を、回転または対称移動させることにより変換する変換手段を具備し、前記形状比較照合手段は、前記変換手段によって配置が変換された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする。
【0017】
これにより、ユーザの指定した局面の配置を回転または対称移動させることにより変換し、すなわち囲碁ゲームであれば盤面上の4隅にそれぞれ移動あるいは線対称的に折り返した8通りの局面配置に変換し、これら変換された局面配置により検索を行なうことにより、これら変換され局面配置を含む棋譜データ(ゲームデータ)も検索結果として出力される。
【0018】
また、前記形状比較照合手段により比較照合の対象となる第1部分局面における敵味方のデータ入力を反転させる反転手段を具備し、前記形状比較照合手段は、反転手段によって反転された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする。
【0019】
これにより、局面配置について敵味方(囲碁ゲームであれば白黒)反転させた局面配置が出現した棋譜についても、指定された局面配置が出現した棋譜に該当するものとして出力される。
【0020】
また、前記形状比較照合手段は、部分局面の配置を表す要素を直交するベクトル形式のデータを用いて表し、前記第1部分局面と前記第2部分局面との比較照合を行うことを特徴とする。
【0021】
これにより、部分局面の配置を表す要素、すなわち囲碁ゲームであれば白石や黒石、将棋やチェスであれば駒については、将棋やチェスのように種類が多い場合には、局面配置を表す内部データ表現を、例えば黒=1/白=−1といった整数データではなく、ベクトルデータを用いるようにすることで比較照合が確実となる。
【0022】
また、前記ベクトル形式のデータは、部分局面に前記要素がない状態である「空白」を表し、他の要素に対するベクトル形式のデータと直交する空白ベクトルデータを包含することを特徴とする。
【0023】
これにより、部分局面の配置を表す要素である駒等の置かれていないことを表す「空白点ベクトル」の次元を持たせることで、駒のみでなく空白の点も含めた局面マッチングを行うことで比較照合が確実となる。
【0024】
また本発明は、ゲーム装置とゲームサービスを提供するサーバ装置(データ検索装置)とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記手順指定手段によって指定された手順と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記ゲーム装置から検索依頼と共に検索対象とするゲームデータを指定する手順を受信する受信手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記受信手段によって受信された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とする。
【0025】
これにより、ユーザがゲーム装置においてある手順を指定すると、ゲーム装置はその手順をサーバ装置に送信する。そして、手順を受信したサーバ装置が、サーバ装置に設けられたデータベース装置に記憶されているゲームデータ(棋譜データ)のなかから指定された手順と同じ手順を含むゲームデータを検索する。そして、サーバ装置は、検索結果としてゲームデータをゲーム装置に返信する。
【0026】
また本発明は、ゲーム装置とゲームサービスを提供するサーバ装置(データ検索装置)とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記配置指定手段によって指定された部分局面の配置と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記受信手段によって受信された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記受信手段によって受信された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とする。
【0027】
これにより、ユーザがゲーム装置においてある局面配置を指定すると、ゲーム装置はその局面配置をサーバ装置に送信する。そして、局面配置を受信したサーバ装置が、サーバ装置に設けられたデータベース装置に記憶されているゲームデータ(棋譜データ)のなかから、指定された局面配置と同じ配置を含むゲームデータを検索する。そして、サーバ装置は、検索結果としてゲームデータをゲーム装置に返信する。
【発明の効果】
【0028】
以上のように本発明によれば、ユーザが希望するゲームパターン(定石や定型)が現れるゲームデータ(棋譜データ)を容易に検索することが可能なゲーム装置、サーバ装置、ゲームシステムを提供することができる。また、ゲーム端末の記憶装置の記憶容量が限られている場合に、この容量を極力消費しないようにして、ユーザが希望するゲームパターン(定石や定型)が現れるゲーム結果(棋譜データ)を検索することができる。
【発明を実施するための最良の形態】
【0029】
以下、図面を参照して本発明の実施の形態について説明する。図1は、本実施形態における通信手段を介して囲碁などの対局を行なう対局システムの構成を示す図である。図1に示すように、本実施形態における対局システムは、囲碁対局サービスサーバ10(サーバ装置)を有するサービスプロバイダ12に、通信回線網14を介してパーソナルコンピュータ18の他、ゲーム装置22,23,24が接続することにより通信手段を介した対局を行なうことができる。
【0030】
囲碁対局サービスサーバ10は、インターネットあるいは公衆回線網などを含む通信回線網14を介して外部との通信を行なうサービスプロバイダ12において、囲碁対局サービスを提供するために利用される。すなわち、囲碁対局サービスサーバ10は、囲碁の対局を行なう際には、対局を行なう両者に対して相互にサービスを提供すると共に、両者の間でサービスを相互に提供するための通信を制御する機能を有する。また、囲碁対局サービスサーバ10は、過去の対局に関する棋譜データをデータベースとして蓄積しており、ユーザからの要求に応じてユーザが所望する棋譜データをダウンロードするサービスも提供する(詳細については後述する)。
【0031】
通信回線網14を介して囲碁対局サービスサーバ10に接続される端末としては、パーソナルコンピュータ18の他に、囲碁ゲーム専用端末であるゲーム装置22,23,24などが接続される。なお、ゲーム装置22,23,24は、同等の機能を有するものとして、以下、ゲーム装置22のみを対象として説明する。
【0032】
図2は本発明の実施の形態に係わる囲碁対局サービスサーバ10の電子回路の構成を示すブロック図である。囲碁対局サービスサーバ10は、各種の記録媒体に記録されたプログラムを読み込み、この読み込んだプログラムによって動作が制御されるコンピュータによって構成される。
【0033】
囲碁対局サービスサーバ10は、図2に示すように、CPU30、電話通信ユニット31、通信ユニット32、記憶装置33、メモリ35、及びデータベース装置36を有して構成される。
【0034】
CPU30は、囲碁対局サービスサーバ10全体の制御を司るもので、メモリ35に格納されたプログラム(囲碁対局プログラム等)やデータ等に基づいて動作することにより各種の機能を実現する。囲碁対局プログラムにより実現される機能としては、通信手段を介した会員同士で対局を行なう対局サービス、データベース装置36に格納されている棋譜データから会員が所望するものを検索して提供する棋譜データ検索サービスなどがある。
【0035】
電話通信ユニット31は、公衆回線網を介した外部との通信を制御するユニットであり、CPU30によって指示された電話番号に応じて自動的に電話をかける機能を有している。通信ユニット32は、インターネットを介した外部との通信を制御するユニットである。記憶装置33は、各種プログラムやデータを格納するためのものであって、例えば対局の管理のために生成される各種リスト(会員リスト、対局データなど)のデータも必要に応じて格納される。記憶装置33は、プログラム、データ等が予め記録されている記録媒体34を有しており、この記録媒体34は磁気的、光学的記憶媒体、もしくは半導体メモリで構成されている。この記録媒体34は、記憶装置33に固定的に設けたもの、もしくは着脱自在に装着するものである。また、記録媒体34に記憶されるプログラム、データ等は、通信回線等を介して接続された他の機器から受信して記憶する構成にしても良く、さらに、通信回線等を介して接続された他の機器側に記録媒体を備えた記憶装置を設け、この記録媒体に記憶されているプログラム、データを通信回線を介して使用する構成にしても良い。
【0036】
メモリ35は、CPU30によってアクセスされるためのプログラムやデータが格納されるもので、必要に応じて記憶装置33またはデータベース装置36から読み出されて格納される。データベース装置36は、各種の情報を蓄積しておくための記憶装置であり、例えば会員に関する情報が登録された会員リスト36a、各会員についての過去の対局やプロ棋士同士の対局に関する棋譜データなど各種情報を含む対局データ36b(ゲームデータ)が格納されている。対局データ36bには、過去の対局に関する棋譜データの他に、対戦記録、棋士の情報、詰め碁、問題集、会員の勝敗記録等を集めた情報などを含み、棋譜データ検索サービスにより会員からの要求に応じて提供される。
【0037】
図3には、囲碁対局サービスサーバ10のデータベース装置36(あるいは記憶装置33)に格納される会員リスト36a、対局データ36bのデータ構造を示している。会員リスト36aは、囲碁対局サービスサーバ10からサービスの提供を受けられる会員に関する情報が予め登録されたもので、図3(a)に示すように、氏名、会員番号、電話番号、段級などの情報が会員毎に登録されている。
【0038】
対局データ36bは、対局に関する情報が登録されるもので、図3(b)に示すように、対局者の氏名(対局者(1)、対局者(2))と、それぞれの対局者の着手位置を示す棋譜データ(ゲームの履歴)などが登録される。
【0039】
図4は、本実施形態におけるゲーム装置22の電子回路の構成を示すブロック図である。ゲーム装置22は、各種の記録媒体に記録されたプログラムを読み込み、この読み込んだプログラムによって動作が制御されるコンピュータによって構成することができる。
【0040】
図4に示すように、本実施形態における囲碁ゲーム専用端末22は、CPU41、ROM42、タッチパネル44、SRAM46、棋譜記憶装置47、LCDドライバ周辺回路48、LCD50、無線通信I/F52、スピーカ53、アンテナ54、電池56、及び指定手順変換装置58によって構成されている。
【0041】
CPU41は、ROM42に格納された各種制御プログラムやデータに従って各種機能を実現するもので、囲碁ゲーム制御機能、通信相手との囲碁ゲーム対局のための通信機能、棋譜記憶装置47に格納された棋譜データ(ゲームデータ)をユーザからの指示に応じて検索する棋譜データ検索機能などを実行する。ROM42は、CPU41によって実行される各種制御プログラムやデータ等が格納されるものであり、囲碁ゲーム制御用プログラム、通信相手との囲碁ゲーム対局通信用プログラム、棋譜データ検索プログラムなどを含んでいる。タッチパネル44は、装置に対する動作を規定するためのソフトキーによる指示入力や、囲碁ゲーム実行中の石を置くべき位置を指定する座標データを入力するために使用される。棋譜データ検索機能により棋譜データの検索を行なう場合には、検索対象となる検索手順(着手パターン)がタッチパネル44を通じて入力される。
【0042】
SRAM46は、CPU41によって各種機能を実行する際の作業領域として使用され、例えば進行中の囲碁ゲームの状況(各石の置かれた位置など)に関するデータなどが格納される。棋譜記憶装置47は、過去の対局の棋譜データ(囲碁対局サービスサーバ10のデータベース装置36に格納された棋譜データをダウンロードしたもの、ゲーム装置22に対してユーザが独自に入力したもの、他の記憶媒体に記憶されていた棋譜データをコピーしたもの、通信によって取得したものなど)を記憶するもので、棋譜データ検索機能によって検索対象となる。
【0043】
LCDドライバ周辺回路48は、CPU41の制御のもとで、LCD50における表示を制御するもので、LCD50に設けられた本ゲーム表示装置固有のセグメントパターンに対する制御を行なう。LCD50は、囲碁ゲームを行なう上で必要な各種の情報を表示するもので、碁盤の盤面を表す盤面表示、ハマの数を黒石、白石それぞれについて表示するためのハマ表示、黒盤、白盤それぞれの時間を表示するための時間表示、動作を規定する指示を入力するための複数のソフトキー(ボタン)が設けられる。また、LCD50の盤面表示をする領域については、囲碁ゲームのゲームパターン表示(石や碁罫線など)に好適なセグメントパターンが設けられている。無線通信I/F52は、通信相手と囲碁ゲームを対戦する際に、CPU41の制御のもとでアンテナ54を介して無線通信を行なう。スピーカ53は、CPU41の制御のもとで音を発声させるもので、効果音や音声メッセージなどを出力するために用いられる。電池56は、ゲーム表示装置を屋外等に持ち出して携帯することができるように、各構成部に電力を供給するために使用される。指定手順変換装置58は、棋譜データ検索機能を実行する場合に、タッチパネル44を通じて入力される検索手順(着手パターン)に対して、同等の意味を持つ着手パターンに変換する装置であり、入力された検索手順に対して回転、対称移動により手順の変換を行なう。なお、指定手順変換装置58と同等の機能をCPU41により実行される指定手順変換プログラムとして実現することもできる。
【0044】
図5は、ゲーム装置22の外観構成を示している。ゲーム装置22は、携帯型に構成されており、筐体上面部にLCD22a(LCD50)(例えば大型モノクロ液晶)及びタッチパネル22b(タッチパネル44)が設けられている。LCD22aの表示面とタッチパネル22bのデータ入力面は、積層一体型に構成されており、LCD22aによって表示された対象物(例えば碁石を示す表示パターン、盤面を表す表示中の交点位置、キーなど)を、ペン22dや指先などによって直接的に指示することで、該当する位置の座標データを入力することができる。また、ゲーム装置22は、アンテナ22cを通じて、例えば図示しないモデムとの間で無線通信をすることができる。この場合、モデムには、ゲーム装置22(囲碁ゲーム専用端末)との間で無線通信を行なうための機能が設けられる。またモジュラージャックを介して公衆回線網(通信回線網14)と接続され、電話機が接続される。これにより、電話線の接続や差し替え等を行なうことなく、場所を選ばずにゲーム装置22を使用できるようになっている。なお、ゲーム装置22にモデムの機能が設けられた構成とすることも勿論可能である。
【0045】
図6には、ゲーム装置22のLCD22aによって表示される画面の一例を示している。図6に示すように、囲碁ゲームを行なう上で必要な情報として、碁盤の盤面を表す盤面表示、ハマの数を黒石、白石それぞれについて表示させるためのハマ表示、黒番、白番それぞれの持ち時間を表示するための時間表示、動作を規定する指示を入力するための複数のソフトキー(画面に表示されるキー)を含むキー入力部が設けられている。
【0046】
キー入力部には、対局中では、例えば上下左右方向のそれぞれを示すカーソルキー、パスを指示するための「パス」キー、投了を指示するための「投了」キー、対局の中断を指示するための「中断」キーなどが設けられる。また、キー入力部には、状況に応じて利用者からの所定の指示を入力するためのキーが設けられ、棋譜データ検索機能を実行する場合には、検索手順(着手パターン)を入力するために黒石、白石の着手位置を任意に指定するためのキーが必要に応じて設けられる。キー入力は、ペン22dや指先によってLCD22aの表示画面と一体化されたタッチパネル22bの検出面をタッチすることによって行なわれる。タッチパネル22bによってキーに該当する部分に対してタッチ入力があったことが検出されると、タッチされた位置(キー)に応じた処理が実行される。
【0047】
次に、本実施形態(実施形態1〜9)の動作について説明する。
(実施形態1)
図7は、実施形態1の動作を説明するためのフローチャートである。実施形態1は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、手順指定機能、手順照合機能、棋譜表示機能による棋譜検索処理を実現する。
【0048】
棋譜記憶装置47には、例えば、過去のプロ棋士の打碁データなどをあらかじめ記憶させておく。棋譜記憶装置47に記憶させる棋譜データの数は特に限定されないが、一般的にはある程度の数の棋譜データをデータベース化して記憶させておく方が、検索対象が増えるため、より効果的である。
【0049】
まず、手順指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップA1)。手順指定機能では、LCD22a(LCD50)によって表示された盤面表示に対して、ペン22dによってタッチパネル22b(タッチパネル44)の着手位置を黒番、白番のそれぞれを指定することにより検索手順(対局を進めるために入力されたデータ系列)を入力することができる。なお、ペン22dの操作によって検索手順を効率的に入力することができるように、ペン22dによる着手位置の指示に応じて、入力対象とする手番を黒番と白番で自動的に交互切り替えることで、ユーザが着手位置の指定のみを行なうことで検索手順を入力できるようにしても良い。また、キー入力部に着手位置の入力対象を黒番と白番の何れにするかを指定するキーを設け、このキーの操作に応じて着手位置を黒番と白番の何れかに固定するようにしても良い。この場合、例えば黒番の着手位置のみを連続して入力するといったことができる。また、予め複数の定石の着手パターンを登録しておき、この登録された中から検索対象とする着手パターンを選択し、検索手順として指定できるようにしても良い。
【0050】
図8(a)には、検索手順(着手パターン)が入力された盤面表示の一例を示している。図8(a)に示す例では、全8手の手順が指定されている。手順指定機能は、入力された検索手順を、図8(b)に示すように手順番号とそれぞれに対する着手位置を示すデータにして手順照合機能に送る。
【0051】
手順照合機能は、指定された検索手順を受け取ると、棋譜記憶装置47から棋譜データを一局分読み出す(ステップA2)。そして、その棋譜データに指定された検索手順が包含されているか否かを照合する(ステップA3)。この照合の結果、検索手順が棋譜データに包含されていれば(ステップA4)、その棋譜データを「検索手順を包含する棋譜」として出力し、包含されていなければ(ステップA4)、次の一局分の棋譜データを棋譜記憶装置47から読み出して同様の処理を繰り返す。
【0052】
棋譜表示機能は、出力された検索手順を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる。棋譜表示機能によって表示される初期画面では、検索手順が現れた局面を表示させるものとする。ただし、その他にも検索手順が現れた局面の前後の局面、あるいはその対局の序盤の局面などを初期画面において表示させ、ユーザからの指示に応じて手順を進める、あるいは戻すことによって、検索手順が現れた局面が表示されるようにしても良い。これらの機能によって、ユーザは指定した検索手順を包含する棋譜を鑑賞・研究等することができる。
【0053】
なお、図8に示した指定された検索手順の例において、手順番号として便宜上1から始まる数字を用いているが、これは実際の棋譜データにおいて、必ずしも一手目から当該指定手順を包含する事を意味してはおらず、相対的な着手の順番を表しているに過ぎないものである。従って、手順照合機能においては、棋譜中の任意の手数n手目から(n+7)手目が、当該指定手順と同一の位置であった場合には、当該棋譜は当該指定手順を包含するものとして当該棋譜データを出力するように構成する。
【0054】
このようにして、実施形態1では、例えば図8(a)に示したような、ユーザが希望した定石が用いられたプロ棋士などによる実戦棋譜データを検索し、定石等が打たれた対局がその後どうなったか等の研究・鑑賞することが可能となる。また、本実施形態の説明では囲碁ゲームを対象としているが、将棋等の場合でも、ある定石手順を検索手順として指定することによって、例えばプロ棋士の実戦譜の中から、相矢倉の戦形で指された将棋のみを検索して研究・鑑賞等することができるようになる。
【0055】
(実施形態2)
図9は、実施形態2の動作を説明するためのフローチャートである。実施形態2は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、実施形態1と同様にして手順指定機能、手順照合機能、棋譜表示機能による棋譜検索処理を実現する。また、実施形態2では、入力された検索手順に対して盤面において回転・対称移動させる指定手順変換装置58(変換手段)による変換機能を用いる。指定手順変換装置58は、入力された検索手順を意味的に同じ別の検索手順に変換するもので、回転若しくは対称移動を行って、盤面の2つの辺に対して相対的に同じ配列となる8通りの着手パターン(入力されたパターンを含む)を生成する機能を有している。すなわち、4つの隅(右上隅、左上隅、右下隅、左下隅)のそれぞれにおいて、2つの着手パターンが生成される。
【0056】
囲碁の場合、ある定石手順等の出現した棋譜を検索する場合、その定石手順は、必ずしも入力した手順と同じ向きで盤面上に出現していなければならないというわけではなく、四隅のいずれかで出現していれば同等の意味をもつという性質のものである。
【0057】
具体的には、図8(a)に示す検索手順を指定した場合には、この着手パターンについて回転若しくは対称移動を行って得られる盤面の2つの辺に対して相対的に同じ配列となる8通りの着手パターンのうちいずれかに該当する棋譜データを全て検索できる方が良い(図11に例を示す)。
【0058】
そこで実施形態2では、実施形態1のように、手順指定機能によって指定された検索手順を、そのまま手順照合機能に入力して照合するのではなく、図10に示すように構成された指定手順変換装置58によって変換し、検索手順を切り替えつつ、これらの8通り(入力された検索手順と変換によって得られた7通りの検索手順)の検索手順の全てと照合できるようにしたものである。図8(a)に示す検索手順(図11(a)と同じ)が入力された場合には、指定手順変換装置58によって、図11(b1)(c1)(d1)(e1)(f1)(g1)(h1)の検索手順(着手パターン)に変換される。各検索手順に対する手順番号とそれぞれに対する着手位置を示すデータは、それぞれ(b2)(c2)(d2)(e2)(f2)(g2)(h2)に示すようになる。
【0059】
まず、手順指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップB1)。検索手順の入力は、実施形態1と同様にして行われるものとする。手順指定機能によって検索手順が入力されると、この検索手順が手順変換機能へ送られる。
【0060】
手順照合機能は、指定された検索手順を受け取ると、まず棋譜照合機能に対して、棋譜記憶装置47から一局分の棋譜を読み出して照合する対象の棋譜データとするように指示を出す(ステップB2)。
【0061】
続いて、指定手順変換装置58に対して変換種別番号を1にセットする(ステップB3)。この変換種別番号は、図11に示した8通りの検索手順の着手パターンのうち、何れの変換を行うかを指定するものであり、図10に示す構成のマルチプレクサへの入力とするものである。指定手順変換装置58は、変換種別番号の数に応じて、入力された検索手順を変換し、その変換によって得られた検索手順を手順照合機能に送る(ステップB4)。
【0062】
手順照合機能は、棋譜記憶装置47から読み出した棋譜データ中に、指定手順変換装置58から取得した検索手順が包含されているか否かを照合する(ステップB5)。この照合の結果、検索手順が棋譜データに包含されていれば(ステップB6)、その棋譜データを出力し、出現していたら、現在照合対象となっている棋譜を、「検索手順を包含する棋譜」として出力する。
【0063】
棋譜表示機能は、出力された検索手順を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる(ステップB9)。なお、棋譜表示機能による棋譜の表示については実施形態1と同様にして行われるものとする。
【0064】
一方、棋譜データ中に検索手順が包含されていなければ(ステップB6)、手順照合機能は、検索手順が包含されていない旨を手順変換機能に返す。この場合には、手順変換機能は、変換種別番号を変更(+1)して(ステップB7)、指定手順変換装置58によって次の変換種別番号に応じた変換により検索手順の変換を行い、この変換された検索手順によって前述と同様にして棋譜データとの照合を行なう(ステップB4〜B6)。そして、変換種別番号=8までの全ての変換について照合した結果(ステップB8)、その何れの検索手順も棋譜データに包含されていない場合には、この棋譜データには、検索手順が包含されていないと判断し、次の一局分の棋譜データを棋譜記憶装置47から読み出して同様の処理を繰り返す(ステップB2〜)。
【0065】
なお、前述した説明では、図10に示すように、マルチプレクサを用いて構成された指定手順変換装置58を用いて入力された検索手順の変換を行なうものとして説明しているが、指定手順変換装置58が実行する処理と同等の処理を実行する指定手順変換プログラムを設け、このプログラムによって実現される機能を利用するようにしても良い。
【0066】
このようにして、実施形態2では、ユーザが指定した検索手順に対して回転・対称変換することによって、入力された検索手順と同じ意味を持つ8通りの検索手順を生成して、それぞれの検索手順によって棋譜記憶装置47に記憶された棋譜データに対する検索を実行することができる。従って、ユーザが指定した定石を示す検索手順が、位置や向きのみ異なって出現した対局についても、当該検索手順が出現した棋譜データ(対局)を判別することができる。
【0067】
(実施形態3)
図12は、実施形態3の動作を説明するためのフローチャートである。実施形態3は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、配置指定機能、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、棋譜表示機能による棋譜検索処理を実現する。
【0068】
実施形態3では、図13(1)のような定石形が出現した棋譜データを検索する場合に、図13(2)のように手抜きが入って打たれた(途中に別の着手が挿入された)場合の棋譜データや、図13(3)のように異なる手順で結果的に同じ定石形となった棋譜なども、当該定石形を含むものであるとして検索できるようにする。
【0069】
囲碁や将棋の場合、手順前後などが起きたことによって手順が違っていても、結局同じ形が出現することは多い。また、囲碁の場合ならば、ある隅の定石が手順そのままに打たれるのではなく、途中で別の所に1手ずつ打たれたりするような交換(例えば、ある隅での定石進行途中に、別の隅でのアタリとツギなどの交換が打たれるなど)が入ったり、コウダテとして少しずつ定石形が完成していくなどの場合も多い。
【0070】
こうした場合に、当該定石形を研究するとするならば、異なる手順であっても、同じ形が出現した棋譜を研究することは有意義であるし、また定石手順と異なる手順でできた同一形を研究することは、当該定石形の理解を深める上で大変意義のあることである。
【0071】
実施形態3では、ユーザが配置指定機能によって入力した定石形を表す局面配置(対局の部分局面)を、その手順ではなくて、黒白の石の配置(着手パターン)によって検索するようにしている。なお、局面配置は、部分的なもの及び全局面に渡るものの双方を含むものとする。
【0072】
まず、配置指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップC1)。局面配置の入力は、実施形態1と同様にして行われるものとする。ただし、手順の指定は必ずしも必要できないので、単に白石と黒石の配置(着手パターン)を指定すれば良い。配置指定機能によって局面配置(着手パターン)が入力されると、この局面配置が形状比較照合機能へ送られる。
【0073】
図14には、ある定石形を検索する場合の指定データの一例を示している。例えば、図14(a)に示すような局面配置(着手パターン)がユーザによって入力された場合、その配置が図14(b)に示すように、位置(Xn,Yn)における盤面の状態
STFn=Form(Xn,Yn)
の集合として表され、これが形状比較照合機能に送られる。
【0074】
形状比較照合機能では、この指定配置を受け取ると、棋譜再現機能、部分局面切り出し機能に対して、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し、その棋譜データをもとに棋譜(局面)を再現し、比較照合の対象となる部分局面を切り出すよう指示する。
【0075】
棋譜再現機能は、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し(ステップC2)、この棋譜データを一手進める。部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送る(ステップC3)。この際、切り出す部分局面の範囲については、予め、LCD22aによって表示された盤面表示に対して、ペン22dによってタッチパネル22b上でユーザに範囲指定させるか、あるいはユーザが指定した範囲をもとにして切り出す範囲を決定する(例えば、ユーザによって指定された範囲の1路増しの範囲)などの方法を用いる。
【0076】
ここで形状比較照合機能は、局面配置(着手パターン)と切り出された指定範囲の局面とを照合して(ステップC4)、全部の石(着手)が一致しているかを判別する(ステップC5)。例えば、形状比較照合機能では、図14(b)に示すように、各座標(盤面の点)毎に、黒=1、白=−1、空点=0のように決めた値を用いて、指定配置と棋譜データから取得した部分局面との、各座標における積の和を取る。すなわち
【数1】
を計算する。
【0077】
例えば、黒=1、白=−1、空点=0のような各座標を表すデータを用いると、上式(1)の値は、全ての石の配置が一致している場合が最大であり、その場合の値はnとなる。従って、上式(1)の値がnの時に、棋譜データは局面配置を含むものとして判別することができる。この場合、形状比較照合機能は、その棋譜データを「指定された局面配置を包含する棋譜」として出力する。
【0078】
棋譜表示機能は、出力された局面配置を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる(ステップC7)。なお、棋譜表示機能による棋譜の表示については実施形態1と同様にして行われるものとする。
【0079】
一方、形状比較照合機能によって局面配置(着手パターン)と切り出された指定範囲の局面とが一致していないと判別された場合(ステップC5)、前述のようにして、棋譜再現機能は、検索対象とする棋譜データを一手進め、部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送り照合させる(ステップC3)。これを検索対象としている棋譜データに次の手が無くなるまで繰り返して実行し(ステップC6)、最後の着手までに局面照合で合致しなかった場合には、棋譜記憶装置47から次に検索対象とする一局分の棋譜データを読み出して(ステップC2)、前述と同様の処理を繰り返し実行する(ステップC3〜)。
【0080】
このようにして、実施形態3では、ユーザの指定した定石形などが、その手順には関係なく、その「形」(着手パターン)そのものから検索できるため、手順前後があった棋譜や、その定石形とは別の着手が間で打たれたような棋譜なども検索することができる。従って、コウ争いをしながら少しずつ定石形が完成していった場合や、単なる過誤ではない手順前後を含む棋譜などを研究することができ、その定石形について、より深く研究することができる。
【0081】
(実施形態4)
図15は、実施形態4の動作を説明するためのフローチャートである。実施形態4は、前述した実施形態2と実施形態3とを組み合わせたもので、ユーザから指定された局面配置(着手パターン)を実施形態2のようにして8通りのパターンに変換して、それぞれのパターンを実施形態3のようにして局面配置として棋譜データに対して検索を行なうものである。
【0082】
実施形態4は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、配置指定機能、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、棋譜表示機能を実現し、また実施形態2と同様にして指定手順変換装置58によって盤面において回転・対称移動させる変換機能を用いることで棋譜検索処理を実行する。
【0083】
まず、配置指定機能によって、検索を希望する定石等の手順をユーザからの指示に応じて入力する(ステップD1)。局面配置の入力は、実施形態1と同様にして行われるものとする(ただし手順の指定は不要)。配置指定機能によって局面配置が入力されると、この局面配置が形状比較照合機能へ送られる。
【0084】
形状比較照合機能では、この指定配置を受け取ると、棋譜再現機能、部分局面切り出し機能に対して、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し、その棋譜データをもとに棋譜(局面)を再現し、比較照合の対象となる部分局面を切り出すよう指示する。
【0085】
棋譜再現機能は、棋譜記憶装置47から検索対象とする一局分の棋譜データを読み出し(ステップD2)、指定手順変換装置58に対して変換種別番号を1にセットする(ステップD3)。この変換種別番号は、8通りの局面配置の着手パターン(図11参照)のうちの、どの変換を行うかを指定するものであり、指定手順変換装置58は、変換種別番号の数に応じて、入力された局面配置を変換し、その変換によって得られた局面配置を棋譜再現機能に送る(ステップD4)。
【0086】
棋譜再現機能は、検索対象とする棋譜データを一手進め、部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送る(ステップD5)。
【0087】
ここで形状比較照合機能は、変換種別番号に応じた局面配置と切り出された指定範囲の局面とを照合して(ステップD6)、全部の石(着手)が一致しているかを判別する(ステップD7)。
【0088】
形状比較照合機能によって局面配置の局面と切り出された指定範囲の局面とが一致していないと判別された場合(ステップD7)、前述のようにして、棋譜再現機能は、検索対象とする棋譜データを一手進め、部分局面切り出し機能は、棋譜再現機能によって一手進められた局面の一部を切り出して形状比較照合機能に送り照合させる(ステップD5)。
【0089】
これを検索対象としている棋譜データに次の手が無くなるまで繰り返して実行し(ステップD8)、最後の着手までに局面照合で合致しなかった場合には、棋譜再現機能は、変換種別番号を変更(+1)して(ステップD9)、指定手順変換装置58によって次の変換種別番号に応じた変換により局面配置の変換を実行させる(ステップD4)。以下、同様にして、変換された局面配置によって前述と同様にして棋譜データとの照合を行なう(ステップD5〜D8)。そして、変換種別番号=8までの全ての変換について照合した結果(ステップD10)、その何れの局面配置も棋譜データに包含されていない場合には、この棋譜データには、局面配置が包含されていないと判断し、次の一局分の棋譜データを棋譜記憶装置47から読み出して同様の処理を繰り返す(ステップD2〜)。
【0090】
一方、形状比較照合機能は、局面配置の局面と切り出された指定範囲の局面とを照合して(ステップD6)、全部の石(着手)が一致しているかと判別した場合(ステップD7)、その棋譜データを「指定された局面配置を包含する棋譜」として出力する。
【0091】
棋譜表示機能は、出力された局面配置を含む棋譜データをもとに、棋譜をLCD22a(LCD50)において表示させる(ステップD11)。なお、棋譜表示機能による棋譜の表示については実施形態1と同様にして行われるものとする。
【0092】
なお、各機能の詳細な動作については、前述した実施形態2,3と同様であるものとして説明を省略する。
【0093】
このようにして、実施形態4では、実施形態2,3と同様の効果を得ることができ、ユーザの指定した定石形(局面配置)が、位置や向きのみ異なって出現した対局についても、局面配置に対する指定配置(局面)について回転・対称変換を行った8通りの指定配置のそれぞれについて、検索対象とする棋譜データが示す局面と合致しているかを手順と関係なく判別することができるようになる。
【0094】
(実施形態5)
図16は、実施形態5の動作を説明するためのフローチャートである。実施形態5は、前述した実施形態4において、ユーザから指定された局面配置による検索だけでなく、局面配置の白黒(敵味方のそれぞれの着手(データ入力))を反転させた局面配置についても棋譜データに対して検索を行なうものである。
【0095】
実施形態5は、ゲーム装置22単体で行われるもので、CPU41により棋譜データ検索プログラムを実行することにより、配置指定機能、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、反転機能、棋譜表示機能を実現し、また実施形態2と同様にして指定手順変換装置58によって盤面において回転・対称移動させる変換機能を用いることで棋譜検索処理を実行する。
【0096】
なお、図16に示す実施形態5のフローチャートにおけるステップE1〜E10,E13は、図15に示す実施形態のフローチャートにおけるステップD1〜D10,D11のそれぞれと対応し、同様の処理を実行するものとして詳細な説明を省略する。
【0097】
判定機構は、ユーザによって入力された局面配置に対して指定手順変換装置58により8通のパターンに変換して、それぞれについて検索対象とする棋譜データと照合した結果、合致しなかった場合には、入力された局面配置の白黒を反転させる(ステップE11,E12)。そして、入力された局面配置に対する処理と同様の処理を実行する(ステップE3〜E10)。
【0098】
例えば、図17(a1)(a2)に示すような局面配置(着手パターン)によって検索を行っても検索対象とする棋譜データと合致しなかった場合には、図17(b1)(b2)に示すようにして、白黒を反転させた着手パターンを生成して検索を実行する。
【0099】
従って、ユーザが指定した局面配置(着手パターン)について、指定手順変換装置58による変換により8通りのパターンについて照合し、さらに白黒反転させた場合の配置に対しても8通りのパターンについて照合することになり、結局、合計で16通りの着手パターンについて照合を行なうことになる。
【0100】
このようにして、実施形態5では、ユーザが指定した局面配置(着手パターン)だけでなく、入力された着手パターンの白黒を入れ替えたパターンが出現した対局の棋譜データについても、ユーザが指定した形が出現したものとして検索することができる。囲碁の場合では、白番と黒番が反対であって同様に「ある定石形が打たれた棋譜」に該当するので、ユーザが指定した着手パターンに該当する棋譜データを検索する場合には有効である。
【0101】
なお、前述した説明では、実施形態4の処理に対してユーザから入力された局面配置の白番と黒番とを反転させる機能を付加するものとして説明しているが、実施形態3に対して付加して実行することもできる。すなわち、ステップC6の後にステップE11,12の処理を実行し、局面配置を白黒反転させた後にステップC3から同様の処理を実行すれば良い。
【0102】
(実施形態6)
実施形態6では、将棋やチェスなど、囲碁と異なり、駒の種類が多種類であるゲームの場合に適用して好適なものである。将棋などの駒の種類が多い場合、各駒に適当な整数値等を割り当ててみても、実施形態3において説明した式(1)の値は、局面が同一の場合に最大とはならない。従って、式(1)からは、局面の同一性を判定することはできない。そこで、実施形態6では、実施形態3から実施形態5に係る発明において、(1次元)整数値データによって表現していた局面配置(部分局面の配置)を表す要素である各駒(石)を、多次元ベクトルデータによって表現するようにしたものである。
【0103】
具体的には、実施形態3において説明した、形状比較照合機能に入力される配置指定機能からの出力データSTFn=Form(Xn,Yn)、及び部分局面切り出し機能からの出力データSTBn=BAN(Xn,Yn)を、図14に示したような整数値データではなく、その座標毎に単位ベクトルデータを用いるようにする。例えば、図18に示すような駒の配置の盤面に対して、図19(a)の各駒ベクトルに示した各駒に対する単位ベクトルデータを用いることで、図19(b)に示すベクトルデータによって表すことができる。
【0104】
この際、一方の対局者の駒については、ある方向の正の単位ベクトルを、もう一方の対局者の駒については、負の単位ベクトルを用いる。具体的には例えば、ある対局者の駒については、ある1要素のみが1であるような単位ベクトルを、もう一方の対局者の駒には当該要素のみが−1であるような単位ベクトルを、それぞれ用いる等の方法がある。そして、実施形態3の形状比較照合機能で計算される式(1)に示すような整数値の積ではなく、以下の式(2)に示すようにベクトルの内積演算を求めるように形状比較照合機能を構成する。
【0105】
【数2】
【0106】
これにより各駒ベクトルはそれぞれ直交しているから、式(2)の値は、配置指定機能で指定されたものと同じ駒が、検索対象としている局面でも同じ場所にある場合にのみ正の値1をとり、その他の場合には0若しくは−1(駒の種類は同じで、敵味方が逆の場合に−1となる)をとる。
【0107】
従って、式(2)の値は、配置指定機能によって指定された局面と、現在調べている棋譜のうち、切り出された部分局面とが同一の時に最大になる。
【0108】
このようにして、実施形態6では、将棋やチェスなど、駒の種類が多岐に渡るゲームについても、ユーザの指定した部分局面と同一の局面の出現した棋譜を検索する機能を構成することができる。
【0109】
(実施形態7)
前述した実施形態3〜6であれば、ある定石形(局面配置)を指定することで同じ定石形が出現した棋譜データを検索することができる。しかし、そのままでは定石形と同じ局面配置を持つ定石ではない棋譜データも検索される場合がある。
【0110】
図20には、定石形と同じ局面配置を持つ定石ではない棋譜データの一例を示している。図20(a)は、配置指定機能によってユーザが指定した「検索したい形」である定石形(局面配置)を示し、図20(b)は、その定石形を含んではいるものの、ユーザが希望する「定石形」ではなく、例えば終盤になって偶然に当該定石と同じように石が配置された局面の一例を示している。ユーザは、図20(a)に示したような「ツケノビ定石」が打たれた棋譜を検索しようとしたにも拘わらず、全く別の形が打たれた碁で偶然に終盤のヨセになってから黒星に示す着手があって、ツケノビ定石と同じ位置に同じ色の石が来てしまったような図20(b)に示す対局の棋譜も検索されてしまう。
【0111】
これは、実施形態5,6において、ユーザが特に指定しなかった空白の点について、「空白である」事を条件とせず、「ユーザの指定した位置に、指定の駒がある棋譜」を検索していたためである。
【0112】
そこで、実施形態7では、各駒ベクトルの他に、「空白」を表す次元を一つ増やし、式(1)のForm(Xn,Yn)及び、BAN(Xn,Yn)について、空白点を零ベクトルではなくて、この空白単位ベクトルをもって表すように配置指定機能などの機能を構成する。図21には空白単位ベクトルを用いる場合の各駒ベクトル例を示している。囲碁の場合には、図21(a)に示したような黒石、白石を表すベクトルの他に空点を表す駒ベクトルを用い、将棋の場合には、図21(b)に示したような各駒の他に空点を表す駒ベクトルを用いて、局面配置と検索対象としている棋譜データの部分局面をデータ化し、この空白ベクトルを含むデータによって式(1)を計算するように各機能を構成する。
【0113】
このようにすることによって、図20(a)のように指定した局面配置の各空白点が図20(b)では空白ではないので、その点について内積がゼロとなり、結局、図20(b)に示す棋譜データでは式(1)が最大とならないため、この棋譜データが検索されないようになる。
【0114】
このようにして、実施形態7では、ある定石形等を検索しようとした時に、その趣旨とは全く異なり、偶然に当該定石形等と同じ場所に同じ石(または駒)があるような配置が出現してしまった棋譜を検索対象から除外することができる。将棋やチェスの場合は、使用する駒数が変化しないため、上記の問題は比較的発生しにくいと考えられるが、囲碁の場合には、対局が進行していくにつれて石の数が増えていくため、終盤になって偶然にある定石形と同じ場所に石が配置されてしまうといったことは充分に考えられる。実施形態7の方法を用いることで、このようなケースを排除することができ、ユーザが意図しない棋譜データが検索されることを予防できる。
【0115】
(実施形態8)
図22は、実施形態8の動作を説明するためのフローチャートである。実施形態8は、実施形態1,2の処理をゲーム装置22と囲碁対局サービスサーバ10によって行なうもので、ゲーム装置22ではCPU41により棋譜データ検索プログラムを実行することにより、実施形態1,2と同等の機能をもつ手順指定機能、棋譜表示機能を実現し、囲碁対局サービスサーバ10ではCPU30により囲碁対局プログラム33aを実行することにより、手順照合機能、指定手順変換機能(指定手順変換装置58と同等の機能)を実現する。また、囲碁対局サービスサーバ10のデータベース装置36に記憶された対局データ36bを検索対象とする。
【0116】
一般に、検索対象とする棋譜データベースには、過去のプロ棋士による対局や江戸時代の本因坊家などの御城基など、多くの棋譜データを保持させて使用する場合が多いと考えられ、また多くの棋譜データを保持させておく方がユーザの希望する棋譜データを提供し易くなる。しかし、過去の膨大な棋譜データを記憶するためには、多大な記憶容量が必要となってしまう。従って、各ユーザが使用するそれぞれの端末全てに大容量を持つ棋譜記憶装置47を設ける必要がでてくるが、これでは効率が悪く、またゲーム装置22における負担も大きくなってしまう。また、膨大な棋譜データを各ゲーム装置で記憶していたとしても、ユーザ毎に検索・研究したい棋譜が異なっている場合も多く、ユーザが棋譜鑑賞できる棋譜数にも限界があること等から、実際に、ある一人のユーザが棋譜記憶装置47から読み出して鑑賞等する棋譜の数は、記憶されている棋譜数に比して、相当程度少ないものであると考えられる。こうした意味でも膨大な量の同一棋譜データを各端末が記憶しているのは非常に効率が悪い。
【0117】
実施形態8では、ゲーム装置における棋譜記憶装置47の代わりとなるデータベース装置36、手順照合機能、実施形態2における指定手順変換機能を囲碁対局サービスサーバ10側に持たせ、手順指定機能、棋譜表示機能とを各ゲーム装置側に持たせるようにし、複数のゲーム装置からこの囲碁対局サービスサーバ10にアクセスして、希望する棋譜のみを検索して、ダウンロードするようにしたものである。また、囲碁対局サービスサーバ10とゲーム装置とは、相互に通信回線網14を介して通信を行なうための通信機能を有している。
【0118】
まず、ゲーム装置22は、手順指定機能によって、検索を希望する定石等の手順(検索手順)をユーザからの指示に応じて入力する(ステップF1)。検索手順の入力は、実施形態1と同様にして行われるものとする。手順指定機能によって検索手順が入力されると、ゲーム装置22は、通信機能によって、囲碁対局サービスサーバ10に対して棋譜検索依頼(検索サービス要求)と共にユーザから入力された検索手順を送信する(ステップF2)。
【0119】
囲碁対局サービスサーバ10は、ゲーム装置22から棋譜検索依頼を受信すると(ステップG1)、受信した検索手順をもとにデータベース装置36に格納された対局データ36bに対する棋譜検索処理を実行する(ステップG2)。なお、ステップG2における棋譜検索処理は、前述した実施形態2(図9のフローチャートに示す)と同様の処理を実行するものとして詳細な説明を省略する(なお、実施形態1と同様の処理を実行するようにしても良い)。
【0120】
棋譜検索処理によってユーザによって指定された検索手順を包含する棋譜データが検索されると、該当する棋譜データを蓄積し(ステップG4)、その他の対局データ36bに対する棋譜検索処理を実行する(ステップG2〜G4)。
【0121】
こうして対局データ36bに対する検索が終了すると、囲碁対局サービスサーバ10は、ユーザが指定した検索手順を包含する全ての棋譜データを検索結果として、ゲーム装置22に対して通信回線網14を介して返信する(ステップG5)。なお、囲碁対局サービスサーバ10は対局データ36bから検索手順に該当する全ての棋譜データを検索するとデータ量が多くなる場合には、ユーザから希望するデータ数の指定を入力し、そのデータ数の範囲に限定したり、対局者、対局日などの他の項目について指定させることにより、検索対象を制限するようにしても良い。
【0122】
一方、ゲーム装置22は、囲碁対局サービスサーバ10から検索された棋譜データを受信すると(ステップF3)、棋譜表示機能によって返信されてきた棋譜データをもとに棋譜を表示する(ステップF4)。
【0123】
このようにして、実施形態8では、ゲーム装置22において検索手順を入力して、囲碁対局サービスサーバ10に対して棋譜検索依頼を送信することで、ゲーム装置22では囲碁対局サービスサーバ10のデータベース装置36に蓄積されている対局データ36bから該当する棋譜データを取得することができる。このため、ゲーム装置22では、棋譜データをデータベースとして蓄積しておくための大容量の棋譜記憶装置47を持つ必要がなくなり負担が軽減される。また、囲碁対局サービスサーバ10のデータベース装置36を対象として、各ゲーム装置が共通して検索することができるので、効率が良く、また、棋譜データベースへの棋譜データの追加や変更、消去などのメンテナンスが容易に行えるようになる。さらに、手順照合機能を囲碁対局サービスサーバ10側に持たせることにより、負荷のかかる棋譜データの検索処理をサーバで行わせることができるようになる。これによりゲーム装置の処理負荷を軽減でき、処理能力の強化をする場合もサーバの処理能力を上げることで容易に実現できる。
【0124】
(実施形態9)
実施形態9は、実施形態8の説明で用いた図22のフローチャートと同様にして動作する。実施形態9は、実施形態3〜7の処理をゲーム装置22と囲碁対局サービスサーバ10によって行なうもので、ゲーム装置22ではCPU41により棋譜データ検索プログラムを実行することにより、実施形態3〜5と同等の機能をもつ配置指定機能、棋譜表示機能を実現し、囲碁対局サービスサーバ10ではCPU30により囲碁対局プログラム33aを実行することにより、形状比較照合機能、棋譜再現機能、部分局面切り出し機能、反転機能、指定手順変換機能(指定手順変換装置58と同等の機能)を実現する。また、囲碁対局サービスサーバ10のデータベース装置36に記憶された対局データ36bを検索対象とする。また、囲碁対局サービスサーバ10とゲーム装置とは、相互に通信回線網14を介して通信を行なうための通信機能を有している。
【0125】
実施形態9における処理は、前述した実施形態8とは、ゲーム装置22において配置指定機能により局面配置を入力して、囲碁対局サービスサーバ10に対して棋譜検索依頼を送信し、囲碁対局サービスサーバ10ではゲーム装置22からの検索依頼に対して受信した局面配置によりデータベース装置36の検索を行なう点が異なるだけで他は同じであるので詳細な説明を省略する。囲碁対局サービスサーバ10においては、前述した実施形態3〜5の何れかと同様の手順によって棋譜検索処理を実行する。また、実施形態6または実施形態7と組み合わせて実行する。
【0126】
このようにして、実施形態9では、実施形態8と同様の効果を得ることができるもので、ゲーム装置における棋譜検索処理に係る負荷を減少することができ、また、複数のゲーム装置から囲碁対局サービスサーバ10のデータベース装置36を対象として検索することができるため効率を良くすることができる。
【0127】
以上、前述した各実施形態における説明においては、主に囲碁ゲームを行なう場合について説明しているが、例えば将棋・チェス・オセロ・連珠・各種トランプゲーム・麻雀等、所定の手順(順番)でゲームを進行させるためのデータを入力させる他のゲームにおいても、ユーザが希望するゲームパターン(あるゲーム状況)を包含するゲームデータを検索する機能として本発明を適用することが可能である。
【0128】
また、前述した各実施形態において、ゲーム装置に対する指示は、キー入力部に必要に応じて設けられるソフトキーを用いて行われるものとして説明しているが、キー入力部以外において任意に設けられるボタンや、ゲーム装置に設けられている物理的(機械的)なボタンを用いて行われるものでも良い。
【0129】
また、前述した説明では、検索結果を表示させて出力するものとして説明しているが、印刷装置(プリンタ)により紙媒体に対して出力するようにしても良い。また、ゲームを行なうための囲碁ゲーム専用端末であるゲーム装置22,23,24を対象として主に説明しているが、パーソナルコンピュータ18に前述したゲーム装置の機能を実現するプログラムを実行させることで、パーソナルコンピュータ18をゲーム装置として使用することも可能である。この場合、図4に示すゲーム装置22の構成のうち棋譜記憶装置47は、ハードディスク装置などの記憶装置により実現し、指定手順変換装置58は、同等の機能を指定手順変換プログラムとして実現することができる。
【0130】
また、本発明は、前述した実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、前述した実施形態の各機能は可能な限り適宜組み合わせて実施しても良い。前述した実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜の組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、効果が得られるので有れば、この構成要件が削除された構成が発明として抽出され得る。
【図面の簡単な説明】
【0131】
【図1】本実施形態における通信手段を介して囲碁などの対局を行なう対局システムの構成を示す図。
【図2】本発明の実施の形態に係わる囲碁対局サービスサーバ10の電子回路の構成を示すブロック図。
【図3】囲碁対局サービスサーバ10のデータベース装置36(あるいは記憶装置33)に格納される会員リスト36a、対局データ36bのデータ構造を示す図。
【図4】本実施形態におけるゲーム装置22の電子回路の構成を示すブロック図。
【図5】ゲーム装置22の外観構成を示す図。
【図6】ゲーム装置22のLCD22aによって表示される画面の一例を示す図。
【図7】実施形態1の動作を説明するためのフローチャート。
【図8】検索手順(着手パターン)が入力された盤面表示の一例を示す図。
【図9】実施形態2の動作を説明するためのフローチャート。
【図10】指定手順変換装置58の構成の一例を示す図。
【図11】指定手順変換装置58によって変換された検索手順(着手パターン)の一例を示す図。
【図12】実施形態3の動作を説明するためのフローチャート。
【図13】定石形と異なる手順で結果的に同じ定石形となった棋譜の一例を示す図。
【図14】ある定石形を検索する場合の指定データの一例を示す図。
【図15】実施形態4の動作を説明するためのフローチャート。
【図16】実施形態5の動作を説明するためのフローチャート。
【図17】指定された局面配置を白黒反転させた配置の一例を示す図。
【図18】駒の配置の一例を示す図。
【図19】各駒ベクトルと盤面をベクトルデータにした例を示す図。
【図20】定石形と同じ局面配置を持つ定石ではない棋譜データの一例を示す図。
【図21】空白単位ベクトルを用いる場合の各駒ベクトル例を示す図。
【図22】実施形態8,9の動作を説明するためのフローチャート。
【符号の説明】
【0132】
10…囲碁対局サービスサーバ
12…サービスプロバイダ
14…通信回線網
18…パーソナルコンピュータ
22,23,24…ゲーム装置
22a…LCD(液晶ディスプレイ)
22b…タッチパネル
22c…アンテナ
22d…ペン
30…CPU
31…電話通信ユニット
32…通信ユニット
33…記憶装置
33a…囲碁対局プログラム
34…記録媒体
35…メモリ
36…データベース装置
36a…会員リスト
36b…対局データ
41…CPU
42…ROM
44…タッチパネル
46…SRAM
48…LCDドライバ周辺回路
50…LCD
52…無線通信I/F
53…スピーカ
54…アンテナ
55…タイマ
56…電池
【特許請求の範囲】
【請求項1】
記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記手順指定手段によって指定された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として表示する表示手段とを具備したことを特徴とするゲーム装置。
【請求項2】
前記手順指定手段によって指定された手順を意味的に同じ手順に変換する変換手段を具備し、前記手順照合手段は、前記変換手段によって変換された手順を対象として比較照合することを特徴とする請求項1記載のゲーム装置。
【請求項3】
前記手順指定手段によって指定される手順がパターンによって表される場合に、このパターンを回転・対称移動させることで手順を変換することを特徴とする請求項2記載のゲーム装置。
【請求項4】
記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記配置指定手段によって指定された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として表示する表示手段とを具備したことを特徴とするゲーム装置。
【請求項5】
前記形配置指定手段によって指定された第1部分局面の配置を、回転または対称移動させることにより変換する変換手段を具備し、前記形状比較照合手段は、前記変換手段によって配置が変換された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする請求項4記載のゲーム手段。
【請求項6】
前記形状比較照合手段により比較照合の対象となる第1部分局面における敵味方のデータ入力を反転させる反転手段を具備し、前記形状比較照合手段は、反転手段によって反転された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする請求項4または請求項5記載のゲーム装置。
【請求項7】
前記形状比較照合手段は、部分局面の配置を表す要素を直交するベクトル形式のデータを用いて表し、前記第1部分局面と前記第2部分局面との比較照合を行うことを特徴とする請求項4記載のゲーム装置。
【請求項8】
前記ベクトル形式のデータは、部分局面に前記要素がない状態である「空白」を表し、他の要素に対するベクトル形式のデータと直交する空白ベクトルデータを包含することを特徴とする請求項7記載のゲーム装置。
【請求項9】
データベース装置に記憶されているゲームデータを検索するデータ検索装置において、通信回線を通じて、ゲームデータの検索依頼と共にゲームを進めるための手順による検索対象とするゲームデータの指定を受信する受信手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記受信手段によって受信された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを、通信回線を通じて、前記検索依頼元に返信する検索結果返信手段とを具備したことを特徴とするデータ検索装置。
【請求項10】
データベース装置に記憶されているゲームデータを検索するデータ検索装置において、通信回線を通じて、ゲームデータの検索依頼と共にゲームのある部分局面の配置による検索対象とするゲームデータの指定を受信する受信手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記受信手段によって受信した部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを、通信回線を通じて、前記検索依頼元に返信する検索結果返信手段とを具備したことを特徴とするデータ検索装置。
【請求項11】
ゲーム装置とゲームサービスを提供するサーバ装置とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記手順指定手段によって指定された手順と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記ゲーム装置から検索依頼と共に検索対象とするゲームデータを指定する手順を受信する受信手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記受信手段によって受信された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とするゲームシステム。
【請求項12】
ゲーム装置とゲームサービスを提供するサーバ装置とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記配置指定手段によって指定された部分局面の配置と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記受信手段によって受信された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記受信手段によって受信された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とするゲームシステム。
【請求項13】
記憶手段に記憶されているゲームデータを検索するためのプログラムが記憶された記憶媒体であって、コンピュータを、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記手順指定手段によって指定された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として表示する表示手段とに機能させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体。
【請求項14】
記憶手段に記憶されているゲームデータを検索するためのプログラムが記憶された記憶媒体であって、コンピュータを、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記配置指定手段によって指定された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として表示する表示手段とに機能させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体。
【請求項1】
記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記手順指定手段によって指定された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として表示する表示手段とを具備したことを特徴とするゲーム装置。
【請求項2】
前記手順指定手段によって指定された手順を意味的に同じ手順に変換する変換手段を具備し、前記手順照合手段は、前記変換手段によって変換された手順を対象として比較照合することを特徴とする請求項1記載のゲーム装置。
【請求項3】
前記手順指定手段によって指定される手順がパターンによって表される場合に、このパターンを回転・対称移動させることで手順を変換することを特徴とする請求項2記載のゲーム装置。
【請求項4】
記憶手段に記憶されているゲームデータを検索するゲーム装置において、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記配置指定手段によって指定された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として表示する表示手段とを具備したことを特徴とするゲーム装置。
【請求項5】
前記形配置指定手段によって指定された第1部分局面の配置を、回転または対称移動させることにより変換する変換手段を具備し、前記形状比較照合手段は、前記変換手段によって配置が変換された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする請求項4記載のゲーム手段。
【請求項6】
前記形状比較照合手段により比較照合の対象となる第1部分局面における敵味方のデータ入力を反転させる反転手段を具備し、前記形状比較照合手段は、反転手段によって反転された第1部分局面を対象として前記第2部分局面と比較照合することを特徴とする請求項4または請求項5記載のゲーム装置。
【請求項7】
前記形状比較照合手段は、部分局面の配置を表す要素を直交するベクトル形式のデータを用いて表し、前記第1部分局面と前記第2部分局面との比較照合を行うことを特徴とする請求項4記載のゲーム装置。
【請求項8】
前記ベクトル形式のデータは、部分局面に前記要素がない状態である「空白」を表し、他の要素に対するベクトル形式のデータと直交する空白ベクトルデータを包含することを特徴とする請求項7記載のゲーム装置。
【請求項9】
データベース装置に記憶されているゲームデータを検索するデータ検索装置において、通信回線を通じて、ゲームデータの検索依頼と共にゲームを進めるための手順による検索対象とするゲームデータの指定を受信する受信手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記受信手段によって受信された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを、通信回線を通じて、前記検索依頼元に返信する検索結果返信手段とを具備したことを特徴とするデータ検索装置。
【請求項10】
データベース装置に記憶されているゲームデータを検索するデータ検索装置において、通信回線を通じて、ゲームデータの検索依頼と共にゲームのある部分局面の配置による検索対象とするゲームデータの指定を受信する受信手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記受信手段によって受信した部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを、通信回線を通じて、前記検索依頼元に返信する検索結果返信手段とを具備したことを特徴とするデータ検索装置。
【請求項11】
ゲーム装置とゲームサービスを提供するサーバ装置とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記手順指定手段によって指定された手順と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記ゲーム装置から検索依頼と共に検索対象とするゲームデータを指定する手順を受信する受信手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記受信手段によって受信された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とするゲームシステム。
【請求項12】
ゲーム装置とゲームサービスを提供するサーバ装置とが通信回線を介して接続されたゲームシステムにおいて、前記ゲーム装置は、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記配置指定手段によって指定された部分局面の配置と共に検索依頼を前記サーバ装置に送信する検索依頼送信手段と、前記検索依頼送信手段によって送信した検索依頼に対して、前記サーバ装置から返信された検索結果を表示する表示手段とを有し、前記サーバ装置は、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記受信手段によって受信された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記受信手段によって受信された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として前記ゲーム装置に返信する返信手段とを有したことを特徴とするゲームシステム。
【請求項13】
記憶手段に記憶されているゲームデータを検索するためのプログラムが記憶された記憶媒体であって、コンピュータを、ゲームを進めるための手順により検索対象とするゲームデータを指定する手順指定手段と、前記記憶手段に記憶されているゲームデータの手順中に、前記手順指定手段によって指定された手順と一致する部分があるか否かを比較照合する手順照合手段と、前記手順照合手段に前記手順と一致する部分があると判定されたゲームデータを検索結果として表示する表示手段とに機能させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体。
【請求項14】
記憶手段に記憶されているゲームデータを検索するためのプログラムが記憶された記憶媒体であって、コンピュータを、ゲームのある部分局面の配置により検索対象とするゲームデータを指定する配置指定手段と、前記記憶手段に記憶されているゲームデータをもとにゲームの各時点での局面を再現する再現手段と、前記再現手段によって再現されたゲームの各時点での局面のうち、前記配置指定手段によって指定された部分局面に対応する部分局面を切り出す部分局面切り出し手段と、前記配置指定手段によって指定された第1部分局面と前記部分局面切り出し手段によって切り出された第2部分局面との配置を比較照合する形状比較照合手段と、前記形状比較照合手段によって第1部分局面と第2部分局面との配置が一致すると判定された場合に当該ゲームデータを検索結果として表示する表示手段とに機能させるためのプログラムが記憶されたコンピュータ読み取り可能な記憶媒体。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図18】
【図19】
【図20】
【図21】
【図22】
【公開番号】特開2008−119502(P2008−119502A)
【公開日】平成20年5月29日(2008.5.29)
【国際特許分類】
【出願番号】特願2008−27130(P2008−27130)
【出願日】平成20年2月7日(2008.2.7)
【分割の表示】特願2000−301504(P2000−301504)の分割
【原出願日】平成12年9月29日(2000.9.29)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
【公開日】平成20年5月29日(2008.5.29)
【国際特許分類】
【出願日】平成20年2月7日(2008.2.7)
【分割の表示】特願2000−301504(P2000−301504)の分割
【原出願日】平成12年9月29日(2000.9.29)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】
[ Back to top ]