AtCoder Heuristic Contest 002 参加記

atcoder.jp

スコア4.32M 107位 パフォ2117でした。

解法

  • mmlang (https://github.com/colun/mmlang) を使ってビームサーチ
  • 点数は見ない
  • 36分割して一筆書きのルートを設定し、できるだけ進みが遅い方を加点、ルートからはみ出たら減点
  • 評価がタイのものは乱数を入れてランダムに評価

dfsの方が良かった説とか、焼きなましをしないと最上位は厳しいという話はありますが、ビームサーチにベットする戦略をとったのである程度しょうがないですね。

mmlang

github.com

mmlangを改造して以下のような機能を追加して使いました。結局使ったのは標準エラー出力機能のみでしたが。

  • パラメータを引数で読み込む機能
  • 標準エラー出力に出力する機能
  • ファイルに出力する機能
  • ファイルに結果をJSONで出力する機能

mmlang無しにはこのスコアは出せていないと思うので神です。 一方で、入力をバグらせて最初の1時間溶かしたので、もう少し慣れたり、デバッグ用機能を拡充したほうが良さそうですね。

Cloud Run

Cloud Runに投げて並列でパラメータチューニングを試みましたが、

  • そもそも変えるパラメータが無かった
  • 結果が安定しない、確率的にエラーが発生するなどの複数の問題が発生した

という点で、結局使用することは無く。