idea-tournament について
idea-tournamentは、具体的な研究案の生成と順位付けを支援する研究者向けスキルです。アイデアをツリー状に展開し、Elo方式のペア比較で評価した後、上位案を研究提案へ発展させます。
主な機能
- 01ツリー構造によるアイデア展開
- 02実現困難な分岐の除外
- 034基準によるEloペア比較
- 04上位3案の方向性を統合
- 05研究提案の構成
活用シーン
- 01研究テーマの異なるアプローチを探る
- 02決定前に候補案を比較する
- 03上位案を研究提案にまとめる
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ evoscientist/ evoskills --skill idea-tournamentインストール後、Claude Code で/idea-tournamentを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
assets/direction-summary-template.mdidea-candidate-template.mdranking-scorecard-template.mdreferences/elo-ranking-guide.mdproposal-extension.mdtree-search-protocol.md詳細
アイデアトーナメント
ツリー形式の展開を通じて多様な研究アイデアを生み出し、4 つの品質評価軸にわたる Elo 評価付きのペアワイズトーナメントによって最有力候補を選定する、体系的なフレームワークです。
このスキルを使う場面
research-ideationで研究の方向性を定めており、具体的で順位付けされたアイデアが必要な場合- 複数の研究アイデアを本格的に進める前に、体系的に比較したい場合
- アイデアの順位付け、競争的な選定、提案の作成について質問された場合
- 研究のコンセプトのさまざまなバリエーションを探り、最善のものを選びたい場合
- 「アイデアトーナメント」「アイデアを順位付け」「アプローチを比較」「研究提案」「どのアイデアが最善か」といった話題が出た場合
方向性から提案へ
「研究の方向性は決まっている」から「具体的な提案ができている」までの隔たりで、多くの研究者が行き詰まります。最初のアイデアに決めてしまう(よりよい選択肢を見逃す)か、収束しないままブレインストーミングを延々と続ける(分析麻痺)かのどちらかになりがちです。
このトーナメントは、その両方の問題を解決します。フェーズ 1 では幅広く検討することを促し、手法、分野、定式化を体系的に変化させて、最大 N_I=21 件の候補を生成します(論文で定められた上限です)。フェーズ 2 では収束を促し、ペアワイズの Elo 比較によって、すべての候補を同時に頭の中で保持せずとも最有力のアイデアを特定します。
開始前に:
- アイデエーションメモリー(M_I)から過去の知見を読み込みます:
- evo-memory スキルを参照し、
/memory/ideation-memory.mdにある M_I を読み込みます - 各エントリの Summary と Retrieval Tags をユーザーの現在の目標と照合し、最も関連性の高い上位 2 件(k_I=2)を選びます
- 実現可能な方向性はツリーの種となるため、フェーズ 1 のレベル 1 の分岐に組み込みます
- 成果が得られなかった方向性(根本的な失敗に限る)は枝刈りの際に使用し、根本的な失敗パターンに一致するツリーの枝をすべて取り除きます
- M_I がまだ存在しない場合(最初のサイクル)は、この手順を省略します
- evo-memory スキルを参照し、
- ユーザーの目標 G に関連する文献 L を取得します。論文では、アイデアツリー検索を IdeaTreeSearch(G, L, K_I) と定義しています。つまり、文献はユーザーの目標や取得したメモリーと並ぶ正式な入力です。ウェブ検索または提供された論文を使い、既存の研究に基づいてアイデアを生成します。
フェーズ 1:ツリー構造によるアイデア生成
各レベルで 1 つの軸を変化させ、種となるアイデアを候補のツリーへと展開します。ツリー構造によって多様性が確保されます。それぞれの枝が、同じコンセプトの小さな変更ではなく、根本的に異なるバリエーションを探ります。
3 つの軸
| レベル | 軸 | 変化させる要素 | 例 |
|---|---|---|---|
| 0 | 種 | 出発点となる研究の方向性 | 「効率的な LLM 推論」 |
| 1 | 手法 | 中核となる技術的アプローチ | プルーニング、量子化、蒸留 |
| 2 | 分野 | 応用するコンテキスト | エッジデバイス、マルチモーダル、長文脈 |
| 3 | 定式化 | 問題の枠組み | レイテンシ制約、メモリー制約、精度維持 |
展開プロセス
レベル 0 — 種(ノード 1 件):research-ideation で定めた研究の方向性から始めます。これをルートノードとします。
レベル 1 — 手法のバリエーション(ノード 3 件):種となる方向性に対して、根本的に異なる技術的アプローチを 3 つ生成します。同じ手法のバリエーションではなく、異なるパラダイムにしてください。それぞれが本当に異なるアプローチか、慎重に検討して確認します。
レベル 2 — 分野への適用(ノード 6~9 件):レベル 1 の各ノードについて、分野固有の適用方法を 2~3 件生成します。この手法は、異なるコンテキストではどのように適用されるでしょうか。分野固有のどのような制約が新たな課題を生み出すでしょうか。
レベル 3 — 定式化のバリエーション(葉は合計最大 N_I=21 件):レベル 2 の各ノードを、具体的な問題の定式化 1~3 件へと洗練させます。定式化によって、入力、出力、制約、評価基準を含む正確な問題文を定めます。論文では、候補となるアイデアの最大数を N_I=21 としています。ツリーの葉が 15 件未満の場合は、レベル 2 またはレベル 3 をさらに展開します。21 件を超える場合は、N_I の上限内に収まるよう枝刈りします。
ノードごとのサイクル:提案 → レビュー → 洗練
新しいノードごとに、次の手順を実行します。
- 提案:アイデアを2~3文で説明します
- レビュー:批判的に評価します。同じ階層の他のノードと本当に異なりますか?少なくとも実現可能性はありますか?
- 洗練:レビューに基づいて説明を磨きます。曖昧な表現を取り除き、新規性の主張を具体的にします。
枝刈り
各階層を展開した後、明らかに実現不可能な枝を剪定します。次の場合、その枝は「明らかに実現不可能」です。
- 根本的に利用できないリソースが必要な場合(例:アクセスできない独自のデータセット)
- 確立された理論的な結果に反する場合
- 意味のある違いがなく、既存の確立されたソリューションと重複する場合
evo-memoryの失敗した方向性に、根本的な失敗(実装上の失敗ではなく)として記載されている場合
重要:枝刈りの対象は、明らかに実行不可能なアイデアだけです。リスクが高い、型破り、または現在の専門知識の範囲外であるという理由で、アイデアを枝刈りしてはいけません。こうしたアイデアこそ、公平に評価するためにトーナメントが設計されています。
ツリー全体を /idea-tree.md に保存します。
詳細な展開ルールと多様性の指標については、references/tree-search-protocol.md を参照してください。
フェーズ2:Eloトーナメントによるランキング
4つの品質基準に基づくペア比較を通じて、すべての末端候補をランキングします。スイス式の組み合わせにより、信頼性の高いランキングを維持しながら、比較回数を抑えます。
4つの基準
| 基準 | 重み | 評価内容 |
|---|---|---|
| 新規性 | 25% | 既存の公開研究とどれほど異なりますか? |
| 実現可能性 | 25% | 妥当な期間とリソース内で実装し、検証できますか? |
| 関連性 | 25% | この分野の重要な未解決課題に取り組んでいますか? |
| 明確さ | 25% | すぐに取り組み始められるほど、アイデアが明確に定義されていますか? |
すべての基準を同じ重みで評価します。研究者は新規性を過大評価し、実現可能性を過小評価しがちです。同じ重みを適用することで、この偏りを補正できます。
トーナメントの仕組み
開始時のElo:すべての候補が1500です。
K係数:32(新規プレイヤーの標準値で、数回の対戦でもレーティングが大きく変動します)。
スイス式の組み合わせ(4~5ラウンド):
- 第1ラウンド:ランダムに組み合わせます
- 以降のラウンド:再対戦を避けつつ、現在のEloレーティングが近い候補同士を組み合わせます
- 15~21候補の場合、安定したランキングを作成するには4~5ラウンドで十分です
各対戦の手順:
- 両方の候補を、説明文全体とともに並べて提示します
- 4つすべての基準について、それぞれを採点します(1~10点)
- 総合スコアを算出します(4基準の平均)
- 対戦の勝者を決定します(総合スコアが高い方)
- 標準的な計算式を用いてEloレーティングを更新します(計算式、計算例、収束基準については elo-ranking-guide.md を参照してください)
ランキングを /idea-rankings.md に保存します。
詳細な評価基準と収束基準については、references/elo-ranking-guide.md を参照してください。
フェーズ3:方向性の要約
上位3つのアイデアを統合し、「有望な方向性」の要約を作成します。これは2つの目的を果たします。選択肢を残すこと(最良のアイデアは複数の候補の要素を組み合わせたものかもしれません)と、今後のサイクルに向けて evo-memory に情報を提供することです。
要約プロセス
上位3つのアイデアそれぞれについて:
- 研究の中心的な方向性を抽出します(具体的な実装の詳細は抽象化します)
- この方向性が有望である理由となる重要な洞察を特定します
- 主なリスクまたは不確実性を記録します
evo-memoryと照合します。この方向性は以前に検討されていますか?そこから何が分かりましたか?
次に、上位3つのアイデア全体をまとめます:
- 上位3つに共通するテーマは何ですか?さらに有望な統合方向につながる可能性があります。
- 上位のアイデアは、どの評価軸で優れていますか?(たとえば、上位のアイデアすべてが実現可能性は高いものの、新規性は中程度などの傾向がありますか?)
- 何が不足していますか?元のシードにある重要な側面のうち、上位のアイデアがどれも扱っていないものはありますか?
/direction-summary.md に保存します。
完了したら、evo-memory IDE(Idea Direction Evolution)を実行して、有望な方向性をイデーションメモリーに反映します。
フェーズ4:提案の拡張
トーナメントの勝者(ランク1)を、実装に着手できるだけの詳細を備えた、完全な研究提案に拡張します。
提案の構成
論文では、提案Pは5つのセクション、背景、関連研究、手法、実験計画、期待される結果で構成されると定義されています。これに、実践的な6つ目のセクション(リスクと緩和策)を追加します。
1. 背景:問題を正確に定義します。入力、出力、制約、および既存の解決策が不十分な理由を明確にします。具体的に記述してください。「90%を超えるフルモデル精度を維持しながら、メモリが2GB未満のエッジデバイスでLLMを推論する」は背景の記述ですが、「LLMを高速化する」は該当しません。背景と動機を含めてください。
2. 関連研究:既存の文献におけるアイデアの位置づけを示します。これまでに何が試みられていますか?どのようなギャップがありますか?このセクションでは、フェーズ1のツリー生成中にLが取得した文献を活用してください。
3. 提案手法:実装に十分な詳細レベルで技術的なアプローチを説明します。先行研究と異なる重要な洞察を含めてください。前提を明示してください。検証可能な貢献を3つ挙げてください。
4. 実験計画:データセット、ベースライン、評価指標、アブレーション設計を記載します。これは、experiment-pipeline のステージ4で必要となる内容に合わせてください。必要に応じて、定量的指標と定性的評価の両方を含めてください。
5. 期待される結果:定量的な目標(例:「精度の低下を2%未満に抑えながら、レイテンシを15~20%削減」)と定性的な見通しを示します。期待される結果を具体的にすることで、アイデアが現実的かどうかを検討できます。
6. リスクと緩和策(実践的な拡張):成功を妨げる可能性のある技術的リスクと、それぞれの代替計画を示します。リスクを記載しない提案は、誠実さを欠いているか、分析が不十分です。このセクションは論文にはありませんが、実践的な研究計画において有用です。
/research-proposal.md に保存します。
各セクションの詳細なガイダンスについては、references/proposal-extension.md を参照してください。
直感に反するトーナメントのルール
アイデアの生成と順位付けでは、以下のルールを優先してください。
-
質より量を優先する:評価を始める前に、多くの候補を生成してください。早まった絞り込みは多様性を損ないます。選択肢を見比べるまでは、どのアイデアが最も優れているかはわかりません。最良のアイデアは、思いがけない枝から生まれることもよくあります。
-
各レベルで変える軸は1つだけにする:複数の軸を同時に変えると、アイデアは異なるものの、意味のある多様性は生まれません。ツリーの各レベルでは、変化させる次元を1つだけにして、各枝の独自性を明確に把握できるようにしてください。
-
実現可能性は必須です:優れたアイデアでも実現不可能であれば、研究サイクル全体を無駄にします。制約内で検証できない新しいアイデアは、貢献ではなく思考実験にすぎません。実現可能性を新規性と同等に重視してください。
-
トーナメントは意外な発見をもたらします:構造化されたペア比較を行うと、最初に気に入ったアイデアが実際には最も優れていないとわかることがよくあります。自分の直感よりも順位を信頼してください。結果に驚いたなら、それはトーナメントが機能している証拠です。直感だけでは得られなかった情報が明らかになっています。
-
枝刈りと選定は別物です:明らかに実現不可能な枝だけを刈り込んでください。質の順位付けはトーナメントに任せます。トーナメントの前に大幅に枝を刈り込むと、体系的な比較の代わりに最初の直感を使うことになります。まさに、トーナメントが正そうとしている偏りです。
-
最上位は1件ではなく3件:勝者だけでなく、上位3つの方向性をまとめることで、選択の余地を保てます。最終的に最適なアプローチは、上位候補の複数から要素を組み合わせたものになる場合があります。早い段階でアイデアを1つに絞ると、価値ある情報を捨てることになります。
計画への引き継ぎ
トーナメントが完了し、提案書を作成したら、以下の成果物をpaper-planningに渡してください。
| 成果物 | フェーズ | 使用目的 |
|---|---|---|
| 研究提案書(5+1セクション) | フェーズ4 | ストーリー設計、実験計画 |
| アイデアツリー(全構造) | フェーズ1 | 関連研究における位置付け |
| Elo順位とスコア | フェーズ2 | 選択した方向性の根拠 |
| 方向性の要約(上位3件) | フェーズ3 | 主な方向性が失敗した場合の代替案 |
| トーナメントのスコアカード | フェーズ2 | アイデアの強みと弱みの把握 |
結果は、進化に関する更新のためにevo-memoryにも渡してください。
- フェーズ3の上位3つの方向性を使ってIDE(Idea Direction Evolution)を実行します
スキルの連携
開始前(メモリを読み込む)
evo-memoryスキルを参照し、アイデア生成メモリを読み込みます。
→ /memory/ideation-memory.mdのM_Iを読み込みます
フェーズ3の後(メモリを更新する)
evo-memoryスキルを参照し、IDEを実行します。
→ /direction-summary.mdを使ってIDEプロトコルを実行します
フェーズ4の後(計画に引き継ぐ)
paper-planningスキルを参照します。
→ /research-proposal.mdを渡します
参考資料の案内
| トピック | 参考ファイル | 使用する場面 |
|---|---|---|
| ツリー展開のルールと多様性 | tree-search-protocol.md | 多様なアイデア候補の生成 |
| Eloの計算式、評価基準、組み合わせ | elo-ranking-guide.md | トーナメントの実施 |
| 提案書の各セクションの指針 | proposal-extension.md | 研究提案書の作成 |
| アイデア候補のテンプレート | idea-candidate-template.md | 個々のアイデアの説明 |
| 順位付けスコアカードのテンプレート | ranking-scorecard-template.md | ペア比較の記録 |
| 方向性の要約テンプレート | direction-summary-template.md | 上位3つの方向性の統合 |