(本エントリーは、Tord Romstad 氏によるThe Universal Shogi Interface, draft 1
(2007-01-24) の ”1, Introduction” のTakodori による日本語訳である)
(2007/1/30, gg さんのコメントをもとに一部修正)
(2007/2/12, ggさんのコメントをもとに一部修正)
1. 導入
This is a preliminary draft of the Universal Shogi Interface, a protocol for communication between a shogi engine and GUI. It is my belief that such a protocol, if widely adopted, would give several benefits for the computer shogi community:
本文書は、将棋エンジンとGUI間の通信プロトコル、Universal Shogi Interface の下ごしらえのドラフトである。私は、このようなプロトコルが広く採用されれば、コンピューター将棋コミュニティにとって有益であることを信じるものである。
*For beginning shogi programmers, a standard protocol with supporting GUIs considerably reduces the amount of work required to write a shogi program. Instead of having to write a complete graphical application, they can write their shogi program as a simple console mode program, and plug this little program into an existing GUI.
将棋プログラマーを始める際、
複数の GUI をサポートしている複数の GUIからサポートされた標準プロトコルがあると、かなり将棋プログラムを書くのに必要な仕事量を減らすことができる。将棋ソフトのGUI部をいやいや書く代わりに,簡単なコンソールアプリとして書いてそれを既にあるGUIに繋ぐことができる。
*If the majority of shogi programs support a standard protocol, it becomes easy to run automatic tournament and matches between shogi programs. This is very useful for programmers, because a big number of games is often necessary in order to decide whether some change to a shogi program improves the strength.
もし、多数の将棋プログラムがひとつの標準プロトコルをサポートするなら、将棋プログラム間の自動トーナメントや試合を行うことが簡単になる。これはプログラマーにとって大変有益である。というのは、将棋プログラムへのある変更が強さを改善するかどうかを判断するのには、数多くの対戦がしばしば必要となるからだ。
*Portability between different operating systems becomes much easier when the engine is separated from the GUI. Porting a graphical application from Windows to Linux or Mac OS X is usually a big programming task, but simple text-mode programs can often be ported almost without any work. If all platforms have at least one GUI conforming to the protocol, a shogi programmer can make her program run on all platforms without doing much more than recompiling for each platform.
異なるOS間の移植性は、エンジンが GUI と分離しているときのほうが、はるかに簡単である。ウィンドウズからリナックスやマックOS Xにグラフィカルアプリケーションを移植するのはプログラミング上の大仕事である。対して、単純なテキストモードプログラムはしばしばほとんど労力をかけずに移植できる。もしすべてのプラットフォームに、
少なくとも標準プロトコルに準拠したGUI が少なくともひとつあれば、将棋プログラマーは、自身のプログラムをそれぞれのプラットフォーム用にリコンパイルすること以上のことをすることなく以上のことをせずに、あらゆるプラットフォームで走らせることができるようになる。
*For users of shogi software, a standardized protocol would make it possible to run several shogi engines in a single graphical interface. Instead of having to switch from one GUI to another whenever they want to use a different shogi program, they can use their favorite shogi GUI all the time, and load individual engines into the GUI.
将棋ソフトのユーザーにとっても、標準化されたプロトコルにより、いくつかの将棋エンジンをひとつのグラフィックインターフェースで走らせることができるようになる。異なる将棋プログラムを使いたいときに必ずあるGUIから別のGUIへの変更を余儀なくされるのではなく、
ユーザーは自身の好みの GUI を常に使うことができるし、また、それぞれのエンジンを自分のGUIに乗せることもできる。ユーザーは常に自身の好みの GUI を使い、各エンジンをその上で走らせることができる。
The USI protocol, as well as the textual description on the protocol below, is based on the UCI protocol used in computer chess. Almost all the current top computer chess programs support the UCI protocol, and compatible GUIs exist for Windows, Linux and Mac OS X.
USI プロトコルは、下記のプロトコル上のテキスト記述とともに、コンピュータチェスにおける UCI protocol に基づいている。ほとんどすべての現在のトップのチェスプログラムが、UCI プロトコルをサポートしており、互換性のあるGUI がウィンドウズ、リナックス、および、マックOS X用に存在している。
I am grateful to Stefan Meyer Kahlen, the author of the UCI protocol, for allowing me to use his work as the basis for my shogi protocol. Most of the text in section 5 below is copied verbatim from the official UCI protocol description.
私は、UCI プロトコルの作者のStefan Meyer Kahlen が、彼の仕事を私の将棋プロトコル用に使うことを許してくれたことに感謝している。セクション5におけるほとんどのテキストは、公式のUCIプロトコルの説明から逐語的に複製をしたものである。
ご苦労様です(_ _).少しお手伝いさせて下さい.お節介とは思いますが,あくまで参考程度にお考え下さい
>複数の GUI を
複数は不要(あるとおかしい)
>ひとつの標準プロトコル
ひとつのは不要
>Instead of having to write a complete graphical application, they can write their shogi program as a simple console mode program, and plug this little program into an existing GUI
将棋ソフトのGUI部をいやいや書く代わりに,簡単なコンソールアプリとして書いてそれを既にあるGUIに繋ぐことができる.<かなり意訳>
>少なくとも標準プロトコルに準拠したGUI がひとつあれば
「少なくとも」は「ひとつ」の前に移したほうが良いかと
>リコンパイルすること以上のことをすることなく」
「リコンパイル以上のことをせずに」
で十分かと
>they can use their favorite shogi GUI all the time, and load individual engines into the GUI.
ユーザーは常に自身の好みの GUI を使い、各エンジンをその上で走らせることができる。
では失礼します (_ _).
投稿情報: gg(加藤) | 2007年1 月27日 (土) 22:17
>gg さん コメントありがとうございます。冷や汗をかきながらやっております。
ご指摘の 「複数のGUI」、「ひとつの標準プロトコル」の部分ですが、原文は "GUIs"と複数形になっており、Romstad さんは、 自分は、Mac 用の GUI を書くので、誰か今提案しているプロトコルができたらそれ対応の他の OS で動く GUI を作ってほしい旨を、述べていましたので、最初の訳文でいいかと思います。
>Instead 以下
訳が抜けていました。貴訳を使わせていただきます。
>それ以後の点
ご説に従わせていただきます。
投稿情報: takodori | 2007年1 月30日 (火) 16:07
早速の対応ありがとうございます(_ _).
複数のGUIの件ですが,そういう意図なら
>複数のGUIを
を
複数のGUIが~している
あるいは
複数のGUIから~された
にされた方が日本語として意味が明確になるかと存じます.原文もwithがあるので「GUIをサポートする」という文型でもありませんし.
投稿情報: gg | 2007年2 月 1日 (木) 10:19
> gg さん 再度のコメントありがとうごさいます。反応が遅くなり申し訳ありません。花粉症のためか、長いこと画面を見続けることができない日が続き、遅れてしまいました。「複数のGUIから~された」に修正しました。
投稿情報: takodori | 2007年2 月12日 (月) 22:14