next up previous contents index
Next: 言語の発話例 Up: 標準コーチ言語 Previous: 標準コーチ言語   Contents   Index


一般的特性

異なる研究グループによって開発されたチームへのコーチの適用を可能にする ために,標準コーチ言語は開発された. 設計目的の一つは,プレイヤとコーチの間で解釈に違いが現れないような,明 解な意味論を持つことである. 低レベルの概念を組み合わせることで新しい高レベルの概念を構築することが できるという言語設計がなされている.

更に,プレイモードが`play_on'以外の場合に限り,自由な文字列 を使用可能なfreeformメッセージによってコーチとプレイヤのコミュニケーショ ンが可能である. 詳細は 7.6.2節を参照. コーチを他のチームへも適用することを計画しているならば,freeformメッセー ジは他のチームには理解されないであろうことを知っておかなければならない. [*]

以下で述べる言語仕様は,コミュニティによって開発された言語を改良,拡張 したバージョンで,バージョン8.x以降のサーバでサポートされる. 初期バージョンのCLangもまだサポートされているが,使用は推奨されない. 初期バージョン言語の完全な仕様はバージョン7のサーバマニュアルに記述さ れている. マルチエージェント研究のための有益なツールにするために,興味を持った研 究社たちによってCLangの開発が続けられることが期待される.

言語のいくつかのコンセプトは,Unilang[#!Unilang!#](定義やいくつかのア クションなど)とSFL[#!orca!#](変数や位置の算術演算など)からもたらされ た.

flexとbison(GNUによるlexとyaccの実装)を用いることで,サーバ自身が全て のコーチのメッセージを解析し,C++のクラス階層に基づいて単純な表現を構 築できることに注意. コーチのメッセージを解析するために,サーバ内のコードを編集して使用して もよい. その場合,特にcoach_lang* を参照.



Hidehisa Akiyama 2004-11-21