SuperCon2011

SuperCon2011に参加しました。

8/22

朝起きて、ホテルの位置を確認していないことに気づく。iPadのマップで場所を表示しておく。雨が降っていてNAE。新横浜から新幹線に乗り、新大阪へ。
新大阪駅ホームで、HziwarAと合流。HziwarAは「新横浜から」「のぞみ」「自由席」だったにもかかわらず、座れたらしい。ちょうど全席埋まった感じだったらしい。
そこから、地下鉄とモノレールで、阪大へ行く。いろいろ知っている人に会う。生物から直行してきたtozangezanと合流。
その後、開会式をして、簡単な課題説明を聞く。今年の課題は「なくろん」。盤面を傾けてボールを穴に落とし、ボールの色=穴の色となる落下の数を最大化する問題。最初はgreedyぐらいしか思いつかなかった。
学食で昼飯を食べた後、詳細な課題説明と、スパコンの使い方を聞く。スパコンにプログラム投げるの面倒。面倒な処理を簡略化するためバッチファイルを作成。
この日は、サンプルプログラムを適当に改造して、14800程度のスコアのプログラムを提出して終了。
電車に乗って江坂のホテルに帰る。近くのサイゼリアで夕飯。BOOKOFFを見た。

8/23

この日も、サンプルプログラムを改造するぐらいのことしかやっていない。
HziwarAがコードを書いて(詳細は忘れた)、tozangezanがパラメータをいじってスコアが15000を超える。
Meadow付属のテトリスが流行。全くいい解法が思いつかないので気晴らしにテトリスをした。しかし、それでも思いつかなかった。
「ランダム列を生成し、1箇所ほかの手に入れ替えて、よくなったら採用することを繰り返す」という非常にバカなことを思いつく。実装したが、最初のランダム列から改善されないので廃棄。
評価関数を、事前計算によってunvectorizeからvectorizeにするということをHziwarAが思いつき、実装した。

夜、「greedyにおいて1個だけ覚えておくのを、もっとたくさんにしたらどう?」という案が千里中央サイゼリアで浮かぶ。本当に良い解法かわからないが、次の日実装してみることに。
千里中央のホームで、知らない人に「エターナルフォースブリザード云々」とかいって話しかけられた。大阪の印象の5%はそれになった

8/24

昨日思いついたコードを1時間で実装する。あまりスコアが出ない。結果をみたところ、同じような手にはまっていることが判明。乱数を用いて同じような手をかき乱すコードを書くと、かなりスコアが向上。ここで、このプログラムに魔法少女の素質を見出す。
しかし、ケースが変わるとスコアが激減(12000とか出ることも)。真面目に千日手対策を施し、今度は確実に高いスコアを出せるようになった。

結果を見ると、メモリが31GB使えるのに大量に余っていたり、計算時間も余っていたりするので、探索範囲を資源の許す限り思いっきり広げて、よい解を出せるようにする。スコアが17000弱まで届く。
ここで、評価関数におけるベクトル長に注目すると、全然良くなっていないことがわかる。これを書き換えて、ベクトル長を限界まで高めてやると、全体ベクトル率も99%を超え、計算時間も30%近く短くなった。
HziwarAが「右左右左いらないよね」ということを思いつく。HziwarAがそれを実装し、スコアが上がる。(実は右左右の地点でいらないのだが気にしてなかった)

8/25

TLEしない範囲で昨日のコードの改善(パラメータ調整)。昼ごろ提出。

他の人の方針を聞く。他の人は大方greedy方針だったらしい。

午後はスパコン見学(自由)を解いて日本橋へ行く。
電気街組(semiexpとa_kawashiroさんとnikollsonさん)とゲーセン組に別れて行動。
デジットとかシリコンハウスを見る。デジットは面白いものが多かった。特大16セグLED1個50円とか。シリコンハウスで、ネットがつながるらしいのでiPadをつなげてみると、tozangezanに戻って来いと言われていることがわかり、とらのあなにいると聞いてそこへ向かう。
とらのあなはある程度広く、全探査が大変。kawashiroさんの体力ゲージがかなり減っていた。HziwarAは、tozangezanがjubeatを100円でしている間、「おかしをとるゲーム」で1000円以上使ってしまったらしい。そのため同人誌を買えないとか言っていた。
夜は、なんばのラーメン屋で食べる。ラーメンに+100円でライスと餃子とドリンクがついてかなりお得だった。
tozangezanが特急券を買っていないのでJR難波駅へ行く。南海難波駅を見つけて、そこから簡単にいけないかと思ったが、JR線への案内が途中で消え、地上で難しい道を歩くはめに。難波は「難」という漢字が含まれているだけあって難しい。
地下鉄なんば駅に向かう途中にたこ焼き屋があったので、買って帰る。たこやきうまかった。

夜はtozangezanがHziwarAのふとんを奪ったり、HziwarAが変な発言をしたりしていた。

8/26

「21世紀懐徳堂」とかいうところで発表会とかをやるらしい。
千里中央でtacosufestivalさんに会う。
「21世紀懐徳堂」は、だいたいの位置はわかるものの地図にもなく場所が不明だった。それらしいところを歩いている途中、kyuridenamidaたちが向かってきて、階段の上ということがわかる。荷物が多くて疲れた。

発表会では、他の人のアルゴリズムがわかる。だいたい深さ優先greedy。RiSxKiHとFOYSOUNDがすごい解法をしていた。(PANAIは、しいて言うなら幅優先greedy)

午後、表彰式。まず特別賞の発表がある。特別賞はPANAIとか言われてびっくり。
その後、結果発表。「ぱない」「やめろ」「ひとは」。優勝賞品で「EeePad」なるものを「3人で1台」もらった。
表彰式中も誰か「女装」とか言っていたような…あれUstで配信されてるんじゃなかったっけ
写真撮影のあと、懇親会。普段の休憩ではお菓子が置いてあるので、その類推でお菓子がたくさんあるのかなと思ったら、普通に食事がおいてあってびっくり。昼飯を解けばよかった。懇親会で、領収書を出して交通費をもらう。

4時ごろ会場を出て、帰る。千里中央あたりで、東京が大雨で大変だということを知る。池袋駅のホームで傘を指している写真や、バスが浸水している写真があった。東海道新幹線が運転再開したらしく(すなわち止まっていた)、けっこう不安になる。
新大阪について、少しお土産を買って、改札へ入る。HziwarAが「EeePad」を持って帰ることになっていたが、なぜか荷物が重そうなので、semiexpが持って帰ることになった(新横浜から近いし)。
新幹線は、指定席を取ってあったが、17:20発のぞみの自由席がかなり空いていたので、指定券を解いて3人で自由席で帰った(他の2人は自由席券を買っていた)。
新横浜から地下鉄で帰る。降りた駅で、PASMOの残額がやばいのでチャージしようとして、まちがえて10000ボタンを押してしまったので取り消しを押したら、カードをお取りくださいとか書いてあるのにロックされていてカードが取れなくてけっこう焦る。
雨が降っていてNAEだったがそこまで強くなくて普通に歩いて帰れた。あまり強かったらタクシーで帰っていた。

家に帰ってから知ったのだが、8時頃からまた大雨のせいで新幹線が止まったらしい。新横浜に着いたのは8時前だったのでぎりぎり大丈夫だった。