A - Layered Barcode Display 解説 by ika_no_osushi
【With AI暫定14位】問題文を読まずにAIと取り組んだ結果Claude Code のエージェントを並べて 10 日間回し、With AI 部門で暫定 14 位でした(最終順位は追って追記します)。
私は問題文を読んでおらず、判断と提出のみを行いました。
10 日間がどう進んだかと、どこで何を決めたかを書きます。エージェントの組み方は別記事で図にまとめる予定です。
10 日間の流れ
10/30〜31: エージェント 5 本で始め、翌日には 6 本に増設しました。この時期は提出のたびに大きく伸び、方針を細かく見る必要はほとんどありませんでした。
11/1〜4: 伸びが鈍り、手元の比較で「良い」と出た案が提出すると伸びない、ということが続きました。手元では反復回数をそろえて比べていたため、時間のかかる案ほど良く見えていたのが原因です。11/2 の未明から AWS に評価用の VM を立て、本番と同じ時間制限で、同じ入力に対する差で比べる形に切り替えました。11/3〜4 には、エージェントを系統ごとに担当別の 3 本(計画、設計、後処理と時間配分)に組み直しました。
11/5〜7: 構造そのものを変える係を 1 本足し、これだけ Web 検索を許しました。暫定順位はこの頃が一番良く、9〜10 位あたりを行き来して、一度だけ 7 位まで上がりました。
11/8〜9: 周りの伸びが速く、こちらは 1 回の改善が小さくなって 11〜12 位に下がりました。最終日は構造の変更は断念し、パラメータの調整に集中しました。
自分が決めたこと
決めたことは、だいたい次の 4 種類です。
- エージェントを足す・止める・延長する。止める前には、必ず最新の点数とメモを読み直させてから決めました。
- エージェントへの指示を送るかどうか。指示は統括役のエージェントが書き、原則として(私が寝てるとき以外は)私が OK を出して送る形にしました。10 日間で 403 回です。
- いつ、どの版を提出するか。提出は毎回、私が手で行いました。
- 攻め/守り/撤退の判断。このままの順位を固めるための調整をするか、一位を目指すために構造を大きく変えるか。
印象に残っている判断は 2 つあります。1 つは、締め切りの数時間前に「途中で出しても順位表で得られる情報は小さい」と考え、最終提出 1 回に賭けたことです。もう 1 つは、週の使用量が残り 1 割ほどになったときに、エージェントを 1 本だけ残して止めたことです。統括役が止まると提出する版を用意できなくなるので、その分を最後まで残すことを優先しました。
振り返り
比べ方を「本番と同じ条件で、同じ入力で」にそろえた後の中盤は、1 桁の順位にいられました。終盤に引き離されたのは、改善の種が尽きていたのに、エージェントが細かい値の調整や探索の改良を続けていたからだと思います。
コンテスト中の順位表から、一位の方の解法がこちらより少なくとも2万点以上良いことはわかっていました。このまま一位を目指しに行くべきか、10位前後を固める方向にシフトするかをもっと早く判断すべきでした。
使ったもの
- Claude Ultra: Claude Code(Opus 5.5、一部Fable 5.1)
- ChatGPT Pro: Codex (最終提出には寄与なし)
- AWS EC2: 評価用の VM(c7a.8xlarge)。