コードゲームチャレンジ

多くの場合、学生のオリンピックはACM ICPC形式での競技からなるだけでなく、他の競技も伴います。これは全体の結果に影響を与えず、競技への関心を高めるのに役立ちます。



これらの競技の中で、コードゲームチャレンジにとどまりたいと思います。





Code Game Challenge形式のコンペティションは、いくつかの提案された世界の作戦戦略(大まかに言えば、人工知能)のコンペティションです。



3人のチームには、次のソフトウェアがインストールされた1台のコンピューターが与えられます。





言語のセットはオリンピアードからオリンピアードまでさまざまですが、常にACM ICPCの規則で許可されている言語が含まれています。



決定を送信して結果を表示するソフトウェアを使用すると、ソリューションをサーバーに送信してシミュレーション結果を表示できます。



通常、戦略プロジェクトテンプレートには、必要なすべてのライブラリが接続され、空の戦略が含まれるファイルが含まれます(管理対象ユニットは静止しています)。



さらに、1日か2日で、参加者にはゲームワールドのルールが与えられます。ルールはゲームワールドの物理的性質を説明し、基本定数(たとえば、最大加速度)を決定します。そして最も重要なことは、ルールはユニットを管理し、外の世界とやり取りするためのAPIを提供します。



戦略開発時間は通常4時間です。 この期間中、参加者は何度でも意思決定をサーバーに送信できます。 ペナルティポイントは付与されません。 参加者によって送信された最終決定は最終とみなされます。



戦略の質を評価するために、参加者はソリューションをサーバーに送信し、そこでソリューションをコンパイルします。その後、ユニットが敵にどのように抵抗するかを確認できます。 これを行うために、ユニット間の戦いをプレイできる特別な視覚化モジュールがあります。



段階的な戦闘のシミュレーション。 つまり ゲームの世界の時間は離散的です。 ターンごとに、シミュレーターはゲーム戦略をポーリングし(通常は戦闘参加者のリスト内のプレイヤーの順序で)、戦略はアクティブなユニットの「希望」を記述するいくつかの構造を埋め、その後、この構造の値が制限に調整されて適用されます。



それでは、わかりやすくするために例を見てみましょう。



ジャンルの古典は戦車との競争でした。 そのため、より詳細に例を検討します。



そのため、2048 x 1536の長方形のゲームワールドが与えられます。戦闘中、フィールドにボーナスが表示される場合があります。半径10のオブジェクトは、ユニットをヒットすると、現在のHPレベルまで5ユニット増加します。



戦闘では、4ユニットが参加します。



各ユニットは、半径20ユニットの円です。 ユニットには、移動方向に向けられた武器が装備されています。 武器は10ターン以内にリロードします。 発射体は、3ユニット/サイクルの速度で飛行します。



戦闘は500回の移動で構成されます。



通常、ルールは10〜15枚のシートに書かれていますが、ここに簡単な要約があります。



このようなゲームの世界では、次のAPIが期待されます。

ゲームの世界に関する情報を取得するための関数:





ユニット制御機能:





敵ユニットに関する情報を取得するための機能:





ボーナス情報を受け取るための機能:





それだけです。 かなり短いAPIですが、十分です)



自分で実装する必要がある他のすべて。



以下は、解決しなければならないタスクの簡単なリストです。





これらの4時間が経過した後、通常は数時間の休憩があり、参加者は少しリラックスし、噛んで暖を取ることができます。 夕方には、彼らは再び大きなスクリーンとホールで組み立てられ、CGCの最もカラフルなステージ-コードゲームショー。 参加者はランダムにグループにグループ化され、すべての戦闘の表示が開始されます。 原則として、勝者チームがグループから次のステージに進むと、敗者は船外に残ります。 など、勝者が決定されるまで。



そして最後に、そのような競争のいくつかのビデオは、すべてのビデオが良質ではないので、怒ってはいけません。



一般的に、CGCは興味深いものであり、ACM ICPCは興味深いものです。



2007年にTTI SFUオリンピアードで開催されたCGC





CGCは2007年にサラトフでの準々決勝で開催されました





2007年にVolzhskyで開催されたCGC





2009年にボルゴグラードで開催されたCGC





UPD.1 CGCは、サラトフ市南部地域で2009年に準々決勝で開催されました。





興味がある場合はどこに行くか(リンクは現状のまま提供されます):

  1. http://antru.ru/crobots3d/
  2. http://robocode.sourceforge.net/
  3. http://www.pureai.com/tankai/default.aspx



All Articles