グループジェネレーター

チーム分配システム // v1.0

1行に1つずつ名前を入力

設定
合計:0
グループ:0

Cmd/Ctrl + Enter ↵

このツールでできること

1 行に 1 項目を入力し、2〜20 グループを選んで生成します。空行は無視され、同じ行を複数入力した場合は別々の項目として残ります。指定するグループ数は、読み取られた項目数以下である必要があります。Web Crypto getRandomValues と rejection sampling で Fisher–Yates のインデックスを選び、並べ替えた項目を round-robin で配ります。グループの人数差は最大 1 です。1 グループだけ、または固定見出し「グループ 1」「グループ 2」…を含む全グループをコピーできます。抽選に使う情報は入力行とグループ数だけで、名前、人間関係、役割、能力は解析しません。各順列は同じ確率ですが、定員が異なる場合、特定のグループに入る確率はそのグループの出力位置数に応じて変わります。

1 行に 1 項目

2〜20 グループ

人数差は最大 1

2 種類のコピー

ランダムグループ生成ツールでできること

1 行に 1 項目を入力し、2〜20 グループを選んで生成します。空行は無視され、同じ行を複数入力した場合は別々の項目として残ります。指定するグループ数は、読み取られた項目数以下である必要があります。Web Crypto getRandomValues と rejection sampling で Fisher–Yates のインデックスを選び、並べ替えた項目を round-robin で配ります。グループの人数差は最大 1 です。1 グループだけ、または固定見出し「グループ 1」「グループ 2」…を含む全グループをコピーできます。抽選に使う情報は入力行とグループ数だけで、名前、人間関係、役割、能力は解析しません。各順列は同じ確率ですが、定員が異なる場合、特定のグループに入る確率はそのグループの出力位置数に応じて変わります。

利用例

🧑‍🏫

教員

名簿を指定した数の学習グループに分けます。

🏢

進行役

参加者リストから分科会グループを作ります。

指導者

練習グループの最初の抽選を行います。

🎉

ゲームの主催者

参加者を指定した数のチームに分けます。

パネルの機能

01

1 行に 1 項目

空白でない各行が抽選対象になります。

02

2〜20 グループ

項目数を超えない範囲でグループ数を指定します。

03

人数差は最大 1

Round-robin により、可能な範囲で近い人数になります。

04

2 種類のコピー

1 グループ、または固定見出し付きの全グループをコピーします。

クラス名簿

24 名を入力して 6 グループを選びます。

「グループ 1」以降の固定見出し付きで、4 名ずつの 6 グループが表示されます。

ワークショップ

17 名を入力して 5 グループを選びます。

各グループの人数は 4、4、3、3、3 となり、結果全体をまとめてコピーできます。

ゲーム会

12 名を入力して 3 グループを選びます。

4 名ずつの 3 チームが表示され、1 チームだけでも全チームでもコピーできます。

使い方

  1. 1.

    項目を入力

    1 行に 1 項目を入力します。空行は無視されます。

  2. 2.

    数を選択

    2〜20 グループを指定します。

  3. 3.

    生成

    リストを並べ替え、round-robin で配ります。

  4. 4.

    コピー

    各グループのボタンか「すべてコピー」を使います。

結果について

並べ替え順はどのように決まりますか?

Fisher–Yates の各インデックスを Web Crypto getRandomValues から取得します。Rejection sampling により、必要な範囲へ変換する前に Uint32 の余分な末尾を除きます。

同じ確率になるのは何ですか?

各順列は同じ確率です。そのため、各参加者が並べ替え後の特定の位置を占める確率も同じです。

どのグループに入る確率も同じですか?

各グループの定員が同じ場合だけです。定員が異なれば確率も異なり、全 n 個の出力位置のうち c 個を持つグループに入る確率は c/n です。

人数差はどのくらいですか?

Round-robin により、どの 2 グループ間でも人数差は最大 1 です。

技能や実力を考慮しますか?

いいえ。パネルが使うのは入力された行とグループ数だけで、技能や実力の情報はありません。

アルゴリズムの範囲

Web Crypto getRandomValues が Uint32 値を供給します。Fisher–Yates の各段階で、必要なインデックス数では割り切れない Uint32 範囲の短い末尾を rejection sampling で捨て、採用した値だけを必要な範囲へ変換します。これによりインデックス選択の modulo bias を除き、各順列を同じ確率にします。その後、round-robin で位置 1、2、3…を順番に各グループへ割り当て、最後のグループの次はグループ 1 に戻ります。この構造で人数差は最大 1 になります。全グループの定員が同じならグループごとの確率も同じです。定員が異なる場合、全 n 位置のうち c 位置を持つグループに特定の項目が入る確率は c/n です。人間関係、役割、能力などの属性は評価しません。

共同スタジオで、参加者が空白カードと色付きマグネットを使い、ホワイトボード上で公平なグループに分けています。
共同スタジオで、参加者が空白カードと色付きマグネットを使い、ホワイトボード上で公平なグループに分けています。
空白カードと色付きトークンで、クラス、ワークショップ、ゲーム向けのランダムで公平なグループ分けを見える化します。