編成ガイド

デッキ編成

目標、最適性の証明と探索の方針

目次
01

最適化する目標

目標ごとに一つの値があり、探索はその値をできるだけ大きくします。撃奏ライブとフリーライブでは選んだ曲・難易度の期待スコア、イベントPTでは 1 回あたりの期待イベントPT、総合力では編成の総合力です。

期待スコア:ライブごとに 5 人のスキル発動順はランダムに入れ替わります。5 人の 120 通りの順番を等確率とみなし、順番ごとにライブ全体(スキル、Snap 効果、撃奏ライブでは激走区間と順位ボーナスも)をシミュレートして平均します。スキルやミッションに抽選がある場合は、ゲームの確率で抽選結果の期待値をとります。

演奏条件:既定は理論上最良の演奏で、すべて Perfect、撃奏ライブでは Just 判定できるノーツはすべて Just です。「演奏条件」で Great 率や Just 率を変えると、その割合の Great と Just 以外の判定を譜面全体に均等に配置して計算し直します。これは宣言した演奏であり、実際のプレイの予測ではありません。

編成はリーダー、残り 4 人のメンバー、各メンバーと組む Snap からなります。4 人の並び順を入れ替えてもスコアは変わらないため、結果の並び順は表示用です。

02

候補の範囲

候補の範囲 D は、手持ちのカードで組めるすべての有効な編成です。ゲームの編成ルールと、「カード制限」で指定した必須・除外を満たすものに限ります。リーダー、メンバーの組み合わせ、Snap の組み方が違えば別の候補です。

計算には入力したカードの育成(レベル、特訓、ランク、スキルレベル)とプレイヤーボーナスを使います。足りない値は先に一覧で入力を求めます。結果が手持ちのすべてのカードを含まない場合は、その旨を表示します。

03

「最適と証明済み」の定義

「最適と証明済み」とは、有効な候補全体 D のうち、表示した結果が「目標値の降順 → 総合力の降順 → 正規 ID 順」で並べた先頭 min(K, |D|) 編成とちょうど一致することです。K はページが返す数(5)です。編成の選択、順位、同値のときの並びまですべて確定しています。

証明のためにすべての編成を計算する必要はありません。各候補は結果と正確に比較済みか、確かな上界によって除外済みです。つまり、その候補が到達できる最良値はすでに K 位の正確な値を下回っています。これはサンプリングでも近似でもありません。

D が空の場合、「証明済み」はこの条件で組める編成がないことを意味します。

これは宣言した計算モデルに対するアルゴリズム上の証明で、モデル、上界、プログラムが正しいことを前提にしています。入力していないカード、誤った育成値、実際の演奏でのミスは計算に含まれません。

目標値
選んだ目標の正確な値。たとえば 120 通りの順番の平均スコア。
上界
真の値を下回らないことが保証された見積もり。上界がすでに基準を下回る候補は、真の値もそれ以下なので除外できます。
正規 ID 順
目標値と総合力が同じとき、カード ID の決まった順で並べます。同じ入力からは常に同じ結果になります。
04

「未証明」と現時点の最良

「未証明」とは、厳密な探索がまだ最適性の証明を終えていないことです。現在の結果は最適かもしれませんし、そうでないかもしれません。

選んだ計算時間の上限に達したときや、手動で止めたときに表示されます。ページはこれまでに見つかった最良の編成を正確な値つきで示し、「現在の最良」と「最適値は … 以下」の二つの数も示します。どの編成も後者を超えないので、真の最適値はその間にあり、差が小さいほど最適に近い結果です。

証明が必要なら、計算時間を長くするか「無制限」を選んで計算し直してください。

06

結果の読み方

各結果には目標値、総合力、ゲームと同じ見た目の編成、そして位置ごとのメンバーカード、育成、組んだ Snap を表示します。

目標値が区間で表示されることがあります。正確な値はその区間内にあります。抽選のあるスキルをまだ詰めていない場合などです。

計算が終わると、各編成について 120 通りのうちスコアが最も低い順番、中央の順番、最も高い順番も示します。スキル順による振れ幅の目安になります。

07

ソースコード

計算モデル(crates/ournotes-sim)と探索アルゴリズム(crates/ournotes-search)は GitHub の empty-sekai/ournotes-deck リポジトリで公開しています。編成ページの上部から直接開けます。