Smart Game Format

Smart Game FormatSGF)はボードゲーム棋譜保存に使われるコンピュータファイルフォーマットであり、オープン・コンテント・ライセンスで提供されている[1]。1987年に第1版(FF[1])が提案され、1999年の第4版(FF[4])が最新版である。SGFフォーマットが最も一般に普及しているゲームは囲碁であるが、複数のボードゲームに対応している。

沿革

SGFは、Smart Go Boardの作者としても知られるAnders Kierulfにより1987年に提案された[2]。このときはコンピュータ囲碁における標準としての提案だったが、広く受け入れられなかったため、1990年に発表された自身の博士論文Smart Go Board用のファイルフォーマットとして仕様書を付録に入れた[2][3]。この1987年/1990年版が第1版(FF[1])であり、FF[1]では対応するボードゲームが囲碁リバーシチェスナイン・メンズ・モリスの4種類だった[4]

1993年にマルティン・ミュラー(Martin Müller)がSGFの仕様を整理して第3版(FF[3])を発表し[1]、対応するゲームがFF[1]で対応していた4種類に五目並べ連珠シャンチー将棋を加えた7種類(仕様では五目並べと連珠が同一として扱われている)[5]。その後、1997年にアルノ・ホロシ(Arno Hollosi)が第3版から新機能を追加した第4版(FF[4])を発表した[1]

1999年に第5版(FF[5])制定に向けた議論が開始されたが、正式発表には至っていない[6]。また、2002年にXMLを採用するXGFフォーマット(XML Game Format)が提案されたが[7]、やはり広く採用されていない。

対応ボードゲーム

SGFファイルのGMプロパティはゲーム種類を示しており、FF[4]では1から40までの40種が定義されている[8]

SGFが対応している主要なボードゲームには以下のものがある。

SGFが対応している主要なボードゲーム[8]
GMプロパティボードゲーム注釈
1囲碁
2リバーシ
3チェスPortable Game Notation形式が一般的。
4五目並べ連珠五目並べと連珠は同一扱い
5ナイン・メンズ・モリス
6バックギャモン
7シャンチー
8将棋
11ヘックス
12闘獣棋
17タントリックス
21ツイクスト

仕様

データ形式

SGFはテキストベースのデータ形式を採用し、ゲーム情報の保存に木構造表現を使用するが、この木構造では単純な変化を追加することができる[9]。この木構造ではセミコロン;)で親ノードと子ノードを区切り、半角丸括弧(())で兄弟ノードのグループを表記する[9]。また、ノードにはプロパティ名[プロパティ値]という形でプロパティが指定される[9]

プロパティ

プロパティ名は大文字アルファベットでのみ定義されており、ノードにおける指定では順不同で指定できる[9]。プロパティは根(SGFバージョン(FF)、ゲーム種類(GM)など根ノードでのみ指定できる)、ゲーム情報(黒番と白番のプレイヤー名(PB, PW)、コミ(KM)など一局ごとの情報)、セットアップ(最初から置かれている黒石と白石(AB, AW)など、最初の局面を示す情報)、着手(黒番の着手(B)、白番の着手(W)など)、その他(コメント(C)、悪手(BM)など)に大別される[8][9]

主要なプロパティ[8]
プロパティ名種類プロパティ値の例説明
FF根プロパティ4SGFのバージョン
GM根プロパティ1ゲームの種類(#対応ボードゲームを参照)
CA根プロパティUTF-8文字セット
AP根プロパティCGoban:1.6.2アプリケーション名とバージョン
SZ根プロパティ19、9:10ゲームボードのサイズ
DTゲーム情報2020-09-21対局日付
EVゲーム情報ABCトーナメント大会名
HAゲーム情報2置き石の数(囲碁専用プロパティ)
KMゲーム情報5.5コミ(囲碁専用プロパティ)
PBゲーム情報田中黒番のプレイヤー名
PWゲーム情報佐藤白番のプレイヤー名
REゲーム情報W+0.5対局結果
RUゲーム情報Japanese適用ルール
TMゲーム情報3600持ち時間
ABセットアップcc最初から置かれている黒石
AWセットアップdd最初から置かれている白石
PLセットアップW手番
B着手プロパティcc黒番の着手
W着手プロパティdd白番の着手
BM着手プロパティ悪手
IT着手プロパティ妙手
TE着手プロパティ手筋
Cその他これはコメントです。コメント

脚注

  1. Hollosi, Arno (12 September 1999). "SGF User Guide Version 1.2" (英語). 2020年9月21日閲覧
  2. Ormerod, David (1 May 2011). "An interview with Anders Kierulf of SmartGo" (英語). Go Game Guru. 2016年12月24日時点のオリジナルよりアーカイブ。2020年9月21日閲覧
  3. Keirulf, Anders (1990). Smart Game Board: a Workbench for Game-Playing Programs, with Go and Othello as Case Studies (Thesis) (英語). Zürich: ETH Zürich. doi:10.3929/ethz-a-000578364
  4. Kierulf, Anders (30 January 1995) [1990]. Müller, Martin (ed.). "File Format FF[1]" (英語). 2020年9月21日閲覧
  5. Müller, Martin (1 March 1995). "Smart Game File Format FF[3]" (英語). 2020年9月21日閲覧
  6. "SGF FF[5] - Discussion" (英語). 19 March 1999. 2020年9月21日閲覧
  7. Hollosi, Arno (7 April 2002). "XGF - An XML Game Format" (英語). 2020年9月21日閲覧
  8. "SGF Properties (FF[4])" (英語). 25 June 2006. 2020年9月21日閲覧
  9. "SGF file format FF[4]" (英語). 6 August 2006. 2020年9月21日閲覧

関連項目

外部リンク

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.