方式と限界
ランダムなチーム分けの仕組み
このツールでは、チーム定員の計算、名前のシャッフル、任意ルールによる割り当て制限を別々の判断として扱います。
1. 表示名を変えずに名簿を準備
空でない各行を1人の参加者として扱います。先頭と末尾の空白は削除しますが、アクセント、非ラテン文字、絵文字は保持します。重複の可能性がある名前は通知され、残すか削除するかを選べます。
上限は500人、名前ごとに120文字(書記素クラスタ)、全体で50,000文字です。CSVはカンマ区切りの先頭列を1行につき1人として読み込みます。引用符内の改行には対応していません。名前はHTMLではなくテキストとして表示します。
2. チーム定員を計算
「チーム数」では、各チームの定員差が最大1名になるよう名簿を分けます。10人で3チームなら4–3–3です。「1チームの人数」では、目標人数から必要な空でないチーム数を計算します。
これは人数を均等にするルールにすぎません。能力、経験、役割、ジェンダー、社会的な公平性については何も示しません。
3. シードを作り、名簿全体をシャッフル
追加ルールを使わない場合、ブラウザがWeb Cryptoから初期シードを作ります。その後、バージョン管理された決定的生成器が偏りを避けた整数選択とFisher–Yatesシャッフルを動かし、計算済みの定員へ参加者を割り当てます。
名前の並び順、設定、ルール、シード、エンジンのバージョンが同じなら結果を再現できます。新しいシードでは新しい抽選になります。抽選IDは参照情報であり、能力のバランスを示す証拠ではありません。
4. 任意ルールを解決して検証
同じチームにするグループは1つのブロックとして扱います。別チームのペアは同じチームに入れず、固定リーダーは別々のチームを占めます。制約の強い項目から配置し、シードで順序を制御した上限付きバックトラッキング探索で割り当てを調べます。
解決後にすべての出力を検証します。既知の不可能な条件には具体的な説明を表示します。上限付き探索を使い切った場合、数学的な解がないと断定せず、ソルバーの上限に達したと報告します。
検証すること、保証しないこと
主要な不変条件は、受理した各参加者が1回だけ登場すること、人数ルールと選択した制約を守ること、同じエンジンのバージョンで再現性が保たれることです。小規模な事例は網羅的に、大規模な事例は実装上の明らかな偏りがないか標本調査できます。
ランダムまたは制約付きの結果は、専門的な評価、アクセシビリティ上の判断、公平な成績の保証ではありません。バランス調整には、別途明示されたデータと文書化された目標が必要です。