# 自動生成の実行

URL: https://help.koma-dori.com/timetable/auto-generate/
概要: 最適化ソルバーによる時間割の自動生成手順。制約を満たす配置を短時間で作成。

コマドリの核となる機能が、時間割の自動生成です。設定した制約ルールをすべて満たし、要望ルールをできる限り考慮した時間割を、数理最適化技術を使って自動で作成します。

## 自動生成の仕組み

コマドリは**数理最適化ソルバー**を使用して時間割を生成します。AIのような曖昧さはなく、設定した制約ルールを確実にクリアした時間割を作成します。

### 特徴

- すべての制約ルールを確実に満たす
- 要望ルールを優先度に応じて最大限考慮
- 約1分で生成完了
- 複数の候補から選択可能
- 生成後の手動調整も可能

## 自動生成の実行

1. **コマ組みを開く**
   
   サイドバーから「コマ組み」を選択し、生成したいコマ組みを開きます。

2. **ルールを確認**
   
   「ルール設定」タブで制約条件が正しく設定されているか確認します。
   特に担当教員の割り当ては必須に近い重要な設定です。

3. **「自動で生成」ボタンをクリック**
   
   画面右上の「自動で生成」ボタンをクリックします。

4. **生成を待つ**
   
   画面右下に「だいたいあと何秒」と、読み込み → 組み立て → 保存の段階が出ます。
   この画面を離れても大丈夫です。通常1分以内に出ます。
   「知らせる」を押すと、他のタブにいても終わったときに知らせます。コマドリのタブを閉じると届きません。

5. **結果を確認**
   
   「ルールに沿った時間割を生成しました。」と出たら、「時間割を確認する」を押します。
   エディターで手直しと判断に進めます。

## 生成中の表示

自動生成中は、フローティングウィンドウで待ちの目安が表示されます。

| 表示項目 | 説明 |
|----------|------|
| 残り時間 | 「だいたい 1 分以内」「あと 40 秒」など。見積が外れたら「まだ組んでいます」 |
| 段階 | 読み込み → 組み立て → 保存 |
| 離脱の案内 | この画面を離れても大丈夫です。生成ボタンを押した時点のルールで組んでいます |
| 知らせる | 他のタブにいても終わったら知らせます。タブを閉じると届きません |

> 生成中もコマドリの他の画面を操作できます。タブの先頭に「組み立て中」と出ます。
  フローティングウィンドウは最小化することも可能です。
  「知らせる」は生成ボタンとは別に、フローターから許可します。タブを閉じたあとに届ける通知はありません。

## 生成結果の確認

生成が完了すると、「生成済み時間割」タブに最新の結果が先頭に出ます。

### 一覧の見方

一覧は「どの案を開くか」を決める画面です。品質の詳細は開き先で見ます。

| 項目 | 説明 |
|------|------|
| 最新 | いちばん新しい生成。ここから「開いて確認する」 |
| 生成日時 | いつ作った案か |
| ステータス | 作業中 / 確定済み |
| 配置済み | スケジュールに置けた授業数 |
| 未配置 | まだ置いていない授業数（あるときだけ強調） |

> 制約違反や要望の未達は、一覧では表示しません。開いたエディターの「調整ナビ」で確認します。要望の未達は「できれば守りたい」ルールなので、多少あっても使えます。

### 生成結果の詳細確認

1. **「生成済み時間割」タブを開く**
2. **最新の「開いて確認する」を押す**（以前の案ならその日時を選ぶ）
3. **エディター画面で詳細を確認**

エディター画面では、右側の「調整ナビ」で残っている違反と、直前の一手で何が変わったかを確認できます。

## 生成に失敗した場合

制約ルールが矛盾している場合、生成に失敗することがあります。組めなかった理由によって、画面に出る案内が変わります。

| 画面の表示 | 意味 | 次にすること |
|------|------|------|
| この組み合わせでは組めませんでした | ルールの組み合わせでは組めない | 「直し方を見る」から原因と直し方を確認 |
| 時間内に組み合わせを見つけられませんでした | 組めないと決まったわけではなく、探す時間が足りなかった | 「時間を延ばして再実行」か「ルールを見直す」 |
| システム側の問題で生成できませんでした | コマドリ側の問題。設定を直す必要はない | 少し時間をおいて「もう一度試す」 |

### 解が見つからなかった場合

設定されたルールの組み合わせで時間割を作成できない場合、「この組み合わせでは組めませんでした」と出ます。次はここを直すと進みます。

- 「直し方を見る」から診断の詳細を確認できます
- どのルールが問題の原因になっているかヒントが表示されます（固定配置・利用不可などは授業名・クラス・時限まで具体化します）
- 固定した枠が週コマ数を超えている場合や、複数の許可時間ルールを同時に満たせる枠が無い場合も、生成前に具体的なメッセージで出ます。固定超過では「どこかに置きたいなら授業配置可能時間」という取り違え案内も出ます。固定した枠を含むコマの置き方がない場合（1コマの授業に2コマ分の枠を固定した、など）も、生成前に「固定枠に置けません」と出ます
- 1件だけでは特定できないときは、組み合わせて矛盾している複数ルールが並びます
- それでも特定できないときは「組合せが原因（単独では特定できず）」と出ます。ルール設定から固定配置などを見直してください
- 衝突しているスロットや、教員・クラスの容量（コマ数の過不足）を図で確認できます
- 容量が足りないときは、誰が何コマ不足しているかが名前つきで表示されます

> **高校・中高一貫校: クラスの授業が枠を超えたとき**: 高校・中高一貫校では、クラスの週コマ数が枠を超えたときに、同じ週コマ数の授業が複数載っている場合、「生徒が選んで同じ時間に分かれる選択科目か、全員が毎週全部受ける授業か」を確認する案内が出ます。選択科目なら 1 つの「選択」としてまとめると枠に収まる見込みのコマ数も表示します。まとめる操作は現在準備中で、この案内は原因を見つける手がかりとして表示されます。中学校・小学校には表示されません。

### 組めない理由を特定できなかった場合

自動の診断でも組めない理由を特定できなかったときは、「組めない理由はまだ特定できていません。この条件は記録してあり、コマドリが引き続き調べます」と出ます。「確認できたことを見る」から、次の内容を確認できます。

- **確認できたこと**: 生成前の点検で問題が見つからなかった項目（先生ごとの担当コマ数、クラスごとの授業数、固定配置の重なり、特別教室の数など）と、外して試したルールのまとまり（教員利用不可時間・固定配置など）
- **今できること**: 「なるべく」のルールを減らす、最近足したルールや先生の都合を一時的に外して試す
- **コマドリに問い合わせる**: お問い合わせフォームが開き、内容の欄に生成ジョブ番号が自動で入ります。番号を書き写す必要はありません

組めなかったときの条件はコマドリが記録しているため、問い合わせのあとに設定を直しても、調べるのに支障はありません。調べた結果を個別にお返事するとは限りません。お問い合わせへの返信の目安は[サービスレベル方針](https://www.koma-dori.com/sla)をご覧ください（Free はベストエフォートです）。

### 時間内に組み合わせを見つけられなかった場合

ルールが多い学校では、組み合わせを探すのに時間がかかり、制限時間内に見つけられないことがあります。これは「組めない」と決まったわけではありません。

- **時間を延ばして再実行**: 通常の 2 倍の時間をかけて探し直します。待ち時間も長くなります（画面を離れても大丈夫です）
- **ルールを見直す**: コマ組みの「ルール設定」タブが開きます。「なるべく」のルールを減らすと見つかりやすくなります

時間を延ばしても見つからなかったときは、同じ延長はもう一度は出ず、ルールの見直しを案内します。

### システム側の問題で生成できなかった場合

コマドリ側の問題で生成が止まったときは「システム側の問題です。設定を直す必要はありません」と出ます。少し時間をおいて「もう一度試す」を押してください。何度試しても同じ表示になるときは、サイドバーの「お問い合わせ」からお知らせください。

コマ割り（時間割構造）が見つからないなど、設定が原因で止まったときは、どの設定を確認すればよいかが表示されます。

### ワンクリックで緩和して再生成

診断結果では、原因候補のルールに対して**このコマ組みだけ**ルールを緩めて再生成できます。学校全体のルールブックは変わりません。あとから元に戻せます。

| 操作 | 内容 |
|------|------|
| このコマ組みで外して再生成 | 対象ルールをこのコマ組みでのみ一時無効にして再生成 |
| このコマ組みで「なるべく」に緩めて再生成 | 必須扱いに近い要望を「なるべく」に下げて再生成 |

ボタンを押すと確認ダイアログが出ます。適用後は自動で再生成が走ります。

> **学校のルールはそのまま**: ワンクリック緩和はコマ組み単位の上書きです。ルールブックや他のコマ組みには影響しません。試したあと不要なら元に戻せます。

### よくある失敗原因

| 原因 | 対処法 |
|------|--------|
| 担当教員が設定されていない | 担当教員を割り当てる |
| 教員の授業数が多すぎる | 時限数を増やすか、教員を追加 |
| 勤務不可時間が多すぎる | 勤務不可時間を見直す |
| 制約が矛盾している | 制約ルールを見直す |

> **失敗時のヒント**: エラーメッセージに原因のヒントが表示されます。
  「教員Aの授業数が時間枠を超えています」などのメッセージを参考に、設定を見直してください。

### 手動で制約を無効化して再生成

ワンクリック緩和のほか、ルール設定タブから手動で無効化することもできます。

1. **「ルール設定」タブを開く**
2. **問題の原因と思われるルールを一時的に無効化**
3. **再度「自動で生成」を実行**
4. **生成後、手動でそのルールを考慮した調整を行う**

## 複数回の生成

同じ制約条件でも、複数回生成すると異なる時間割が作成される場合があります。
いくつかの候補を生成して比較することで、より良い時間割を選択できます。

> 生成された時間割はすべて保存されるため、後から比較・選択できます。
  不要になった時間割は削除することもできます。

## 生成時間の目安

| 規模 | 生成時間の目安 |
|------|--------------|
| 小規模（1学年3クラス） | 約30秒 |
| 中規模（3学年9クラス） | 約1分 |
| 大規模（3学年12クラス以上） | 1〜3分 |

制約ルールと要望ルールの複雑さによっても生成時間は変動します。

## 次のステップ

- [時間割エディターで編集](/timetable/editor/) - 生成後の確認と手動調整
- [ルール設定](/timetable/rules/) - ルールを見直す
