ランダムグループ作成ツール
- 部分参加全員が毎回参加する前提ではなく、参加者ごとに出席するセッションを設定できます。
- グループ / セッション別定員グループごとの定員を設定し、部屋や担当者が変わる場合はセッションごとに上書きできます。
- セッション別ルール同席、分離、固定配置、繰り返し、バランスのルールを必要なセッションだけに適用できます。
- 重み付きソフト制約必要なら破ってもよい希望条件を追加し、他の目標に対する重みを調整できます。
- ペアの出会い目標特定のペアが何回出会うべきかを、ちょうど・最小・最大の目標として指定できます。
- 高度な制約チューニング繰り返し制限、属性バランスのモード、ペナルティなど、制約の詳細を調整できます。
- ソルバー設定実行時間、再現用シード、ソルバー種別などの最適化設定を調整できます。
- 結果分析スコア内訳、制約の達成状況、ペナルティ、保存済み結果を詳しく確認できます。
授業・ワークショップ・イベントに便利!
まずはシンプルなランダム分けから。より細かい調整が必要になったら、GroupMixer がそのまま対応します。
授業のグループ分け
生徒名簿を貼り付けるだけで、数秒でバランスのよいグループを作成できます。
ワークショップのブレイクアウト
単発セッションの分割にも、複数ラウンドのローテーションにも対応できます。
スピードネットワーキング
毎回できるだけ新しい相手に会えるよう、複数ラウンドを自動で作成します。
チームプロジェクト
クラスやチームを班に分け、必要に応じて役割やスキルで均衡化します。
会議のセッション
制約を守りながら、参加者をテーブルや並行セッションに割り当てます。
交流イベント
毎回新しい人と会えるアイスブレイク用の組み合わせを作成できます。
よくある質問
GroupMixer の使い方
名前を(1行に1人ずつ)テキストボックスに貼り付け、グループ数または1グループあたりの人数を設定して、「グループを生成」をクリックします。グループはすぐに表示されます。
プライバシー、アクセス、制限
はい。GroupMixer は完全に無料で使えます。役に立つと感じ、開発を支援したい場合は、GitHub Sponsors から寄付できます。 GitHub Sponsors で寄付する。
いいえ。GroupMixer に利用制限はありません。
いいえ。アカウント登録やサインアップは不要です。名前を貼り付け、設定を調整すれば、すぐにグループを生成できます。
このデバイス上のブラウザー内で処理されます。作業中、参加者リストや入力したその他すべてのデータはデバイス上に留まります。
はい。ページの読み込み後は、ブラウザー内で GroupMixer をオフラインでも使い続けられます。
操作と高度な設定
はい。詳細オプションを開くと、Keep Together(同じグループにする)と Keep Apart(別々にする)のルール、複数セッション、属性バランスを追加できます。
はい。参加者に役割、スキル、性別、部署などの属性を追加し、グループ間でバランスを取る属性を選択できます。
はい。詳細オプションの Pinned people(固定された人)を使うと、特定の人をすべてのセッションで特定のグループに固定できます。リーダー、発表者、または既知のグループに留まる必要がある人に便利です。
はい。セッション数を設定し、「Avoid repeat pairings(ペアの重複を避ける)」を有効にすると、ラウンド間の重複を減らせます。
はい。部分参加にはシナリオエディターを使います。スケジュールを生成する前に、各セッションに参加する参加者を設定できます。
はい。シナリオエディターを使うと、グループごとやセッションごとに異なる定員を含め、カスタムのグループ定員を設定できます。
はい。シナリオエディターの Group Visits(グループ訪問)を使うと、選択した人と選択したグループについて、選択したセッション全体で訪問回数を正確値・最小値・最大値として設定できます。ステーションローテーション、タスクの経験割り当て、訪問回数の上限に便利です。
部分参加、グループやセッション別のカスタム定員、セッション固有のルール、重み付きの希望条件、Pair Encounters(ペア遭遇)、Group Visits(グループ訪問)、高度なチューニング、ソルバー設定、過去の結果、結果分析など、このページに表示されない制御が必要な場合にシナリオエディターを使います。
自動アルゴリズム
GroupMixer はハイブリッド最適化パイプラインを使います。シナリオを密なインデックス表現にコンパイルし、高品質で実行可能な初期スケジュールを構築したうえで、スコアを保つ移動プレビュー、record-to-record 受理、適応的な移動ファミリー選択、多様化、実行時間に応じた停止条件を備えた局所探索オプティマイザーを実行します。 Auto ソルバーのアーキテクチャマップを見る。
ソルバーは重み付きスコアを最小化します。主な項目は、重複遭遇ペナルティ、属性バランスのペナルティ、重み付きソフト制約ペナルティ、そして一意の接触への報酬です。低いほど良く、重複や制約違反はスコアを増やし、新しい一意のペアはスコアを下げます。
GroupMixer は純粋にランダムなグループ分けから始めるわけではありません。まず、制限付きの制約シナリオ/オラクル誘導コンストラクターを試します。このコンストラクターはハード制約を満たす足場を構築し、重複削減に役立つ場合は純粋な Social Golfer 構造を使い、その構造を実際のシナリオへ投影し、探索開始前に結果を検証します。
密な探索エンジンが現在のスケジュールに対して局所的な変更を繰り返し提案します。各候補変更は、オプティマイザーが採用するかどうかを決める前にスコアリングモデルに対してプレビューされるため、ハード制約の妥当性を保ちながらスケジュールを改善できます。
探索と重複削減
はい。主な探索は、record-to-record または threshold accepting の挙動を持つ反復局所探索型のオプティマイザーです。改善する移動は受理され、探索が局所最適から抜け出せるよう、初期段階では範囲内の非改善移動も受理されることがあります。GroupMixer はさらに、特殊な重複最小化経路で適応的な近傍選択、多様化バースト、タブー探索に着想を得た仕組みも使います。単一の教科書的メタヒューリスティクスではなく、グループ割り当てのスコアリングモデルを中心に複数の探索アイデアを組み合わせています。
重複削減は局所探索の前から始まります。GroupMixer は、シナリオに合う場合は厳密またはほぼ厳密なゼロ重複構造を使い、強力な Social Golfer 風の接触パターンの構築を試みます。その後、密な探索がペア接触回数を追跡し、初回接触に報酬を与え、過剰な重複にペナルティを課し、要件を壊さずにスケジュールを改善します。
制約と最適性
出席、定員、Fixed Placements(固定配置)、Keep Together、Keep Apart などの要件は、スケジュール構築中に強制され、探索前に検証されます。Repeat Limit(重複上限)、Balance Attributes(属性バランス)、Attribute Totals(属性合計)、Prefer Together(できれば同じ)、Prefer Apart(できれば別々)、Pair Encounters、Group Visits などの希望条件は、重み付きペナルティまたは目的として表現されるため、シナリオが過剰制約になっている場合にトレードオフできます。
要件は、GroupMixer がスケジュールを返すために必ず満たさなければならないルールです。これには出席、グループ定員、Fixed Placements、Keep Together、Keep Apart が含まれます。希望条件はスコア化される目標で、違反は許されますがスコアが増加します。これには Repeat Limit、Balance Attributes、Attribute Totals、Prefer Together、Prefer Apart、Pair Encounters、Group Visits、一意接触の目的が含まれます。
GroupMixer がスコア 0 を見つけた場合、それは有効なスコアリングモデルに対する最適性を示します。改善すべきスコア付き違反や重複ペナルティが残っていないためです。ただし、多くの制約付きシナリオでは、要件が衝突している、または設計が数学的に不可能なため、真の最適値が 0 より大きい場合があります。GroupMixer は正のスコアが大域的に最適であることを証明するようには設計されておらず、多くの複雑なシナリオではその証明は実務上まったく現実的ではありません。
いいえ。要件は提案ではなく、実行可能性のルールとして扱われます。GroupMixer はまず品質重視のコンストラクターを試します。それらがスケジュールを構築できない場合は、SAT ベースの実行可能性コンストラクターにフォールバックできます。SAT ソルバーが要件を満たせないと証明した場合、GroupMixer は要件を緩和せずに失敗します。満たすスケジュールが見つかった場合、GroupMixer はそれを出発点として使い、希望条件やその他の品質目標の最適化を続けます。
ベンチマークとより良い結果
ほとんどの場合、おそらくありません。OR-Tools のような汎用最適化ツールでこの問題の一部をモデル化することはできますが、ほとんどの実務シナリオでは、汎用ソルバーだけを使って GroupMixer より良いスケジュールを得るのは非常に困難です。GroupMixer は、汎用の制約探索では安価に再発見できない問題特化の構築ヒューリスティクスと探索を組み合わせています。総当たりリーグ形式のペアスケジュール、Kirkman および準 Kirkman 三重系、有限体アフィン平面および横断デザイン構成、MOLS と MOLR 構成、準差行列 RTD、可解 BIBD、独自の Social Golfer 初期バンク、公開スケジュールバンク、再帰的リフティングなどです。GroupMixer を上回るには、通常、単なる汎用モデルではなく、別の組み合わせアルゴリズムが必要です。
機能リクエストページから報告してください。シナリオの形、GroupMixer の結果、より良いスケジュール、そしてその採点方法を含めてください。他の方法が GroupMixer を上回るケースは、ソルバー改善のための回帰テストやベンチマークケースになり得るため、特に有用です。 機能リクエストを送る。
決定論的シードが指定されていない限り、探索はランダム化された探索を使います。そのため、実行ごとに、同じスコアまたは近いスコアの異なる高品質スケジュールが見つかることがあります。シナリオエディターでは、再現性が重要な場合に上級ユーザーがシードを設定できます。