ICFP2日目

6 Jun

眠気はある程度を過ぎると軽減するのをいい事に、作業を続ける。
もっとみんな精神不安定になるかと思ってたけど、そうでもないみたいだ。心配してたよりずうっと普通だ。よかった。

今日の欄には、出てきた用語をまとめておきます。情報科学科のうちの学年では今後常識的に使われる??

用語集:
A語、Ant語、アリ語、Ant Language、アリアセンブラ、アリバイナリ
課題文中で説明されていた、アリのステートマシンを記述する言語。アリの本能をこの形式で記述して、コンテストに提出する。

A++、APP
24時頃完成したアリの行動を記述するための言語。APPCompilerによってAnt語に変換できる。T橋さんが命名。拡張子は.app。当然C++を文字っている。

A#、APPng
36-48時頃に完成したアリの行動を記述するための言語。A++の上位互換。命名したT見によればAPPngのngはNewGenerationを意味するらしいがNotGoodに聞こえる。後にA#となり、APPngは開発コード名という事に。
拡張子は.as。当然C#を文字っている。

A++コンパイラ、APPCompiler
A++で書かれたコードをAnt語に変換するコマンドラインプログラム

A#コンパイラ、APPngCompiler
A#で書かれたコードをAnt語に変換するコマンドラインプログラム。A#はA++の上位互換なので、当然A++ソースもコンパイルできる。

AntMatch,APPMatch,APPngMatch
グラフィカルシミュレータ。それぞれ、Ant語、A++,A#のコードを直接読み込んで実行できる。

リーグシミュレータ
ぼくが寝ている間にいつの間にかできていたソフト。コマンドラインで複数のアリの種を指定して起動すると、その総当たり戦の結果を表示する。

AMI、あみちゃん、神様、あみ様、ありの神様
遺伝的アルゴリズムによるパラメータ最適化システム。「あみ」の名はY下が命名。100台のコンピュータで動いているSimulationServerとAMIプロトコル通信して動作する。また、このシステムのクライアントソフトもAMI。

AMI2、あみちゃん、神様、努力家あみちゃん
遺伝的アルゴリズムをあきらめて、探索による方法を取ったパラメータ最適化システム。サーバー側やプロトコルはAMIと同じで、クライアント側の設定パラメータが違う。

SimulationServer
パラメータの抜けたコードと、パラメータを渡すと対戦させて結果を返すソフト。AMIプロトコルを処理できる。

AMIプロトコル
AMIやAMI2とSimultionServerを結ぶプロトコル。TCP/IPベース。命令は3つしかなく、動作しているかの確認、シミュレーションの実行、終了のみ。クライアントがサーバーを落とすためのコマンドが準備されているという画期的なプロトコル。

—ここからアリ関連—
markNET Framework
アリの向いている方向を保存するために6つの大きなステートを考え、同じ関数が全て6種類あるというアリの構成法。当然、dotNET Frameworkを文字った。

fastver
ロボコンK岡の、「戦いには速く動く奴、きちんとする奴、守る奴、攻める奴が必要」という考えに基づいて生み出された速く動く奴。fast versionの略。本人の発音からすると、「ファーストバー」というより「ファストバー」。

mark012
0,1,2,0,1,2とマークをつけていけば、マークを2つ見たらどちらが巣かが分かるというアイディアによって生み出された種。0,1,2とマークするからmark012。

fast012
mark012のランダムウォークの部分を直線移動に変えたもの。fastverの動きに似ているため、fastを入れて、fast012。

hikky
自分の巣を守るため、自陣から外に出ない種。家から出ない引きこもりだから、hikky。

firewall
相手の陣地の前に来たら停止する種。何匹もがこれを行う事で相手の陣地を囲んでしまい、相手が自陣に入れないようになる。

myfirewall
相手にfirewallを作らせないために、自陣の1つ外側に囲いを作り、自分の巣を隠してしまう種。

nian
エサを探そうとせず、自分の陣地とそのちょっと外側だけを全てのアリがうろちょろする種。ランダムに動いていても、自然と入ってきた敵を5匹で囲む事になるので殺してエサにできる。画期的。相手がfirewallを構築しようとして来ると、全滅させる事ができる。名前は、開発者T橋さんのハンドルネーム。

round
nianの亜種。自陣の内部ではなく、周囲を主に狙う。命名はT橋さんで、「今回はまともな名前を付けた」とのこと。

marknet
最初、直線的に向かっている方向をマークしながら進めば、後で最短ルートで帰る事ができるというアイディアに基づいたもの。数字のマークで網を構成するからmarknet

marknetnian(marknet3)
marknetは前半で全てのエサを自陣に持ち帰れるため、その後はnianになって自分のエサを守るようにしたもの。

marknettriple
marknet初代バージョンでは2回目の折り返しまでマークをしたが、それを3回に変更したバージョン

nianhikky
nianとhikkyを組み合わせたもの。内部が動かず、外部が動くので、敵を囲みやすくなる。コンテストに提出

marknettrinian
marknettripleにnianの機能を加えたもの。

dragonwall、カメハメ波
できる限りでfirewallを構成する種。積極的にはエサを取りに行こうとはしない。

全部
味方全員が同時に動く種。ただ、壁にぶつかるとばらける。

4つかたまり
4匹がくっついて動くため、敵に殺されにくい種。

バイナリカウンタ
マークをつけ、マークのあり/なしを0,1の2進数とみなしてバイナリカウンタを構成したもの。時間は行動の判断に利用できないという常識を覆した。

魔貫光殺砲
DragonWallと同じ考え方だが、最初に敵を探す段階で、反射も利用する。

—その他—
I藤商店
参加者じゃないけど買い出しにI藤の事。買ってきたものを並べて、そのなかからみんなが好きなものをとって会計をしたのでこの名がついた。

yashiromann
うちの学年から個人で出た人。この人に勝つ事を目標にしていたのに、用事があって途中棄権。残念。

Leave a Reply

Your email address will not be published.