コードゲームチャレンジ

多くの場合、学生のオリンピックは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

Source: https://habr.com/ru/post/J71355/


All Articles