学校(教育)ソフトウェアの開発・販売

高校の時間割作成

 ある高校の時間割を時間割作成ソフト『時間番』で実際に作成してみました。
 この高校は、1学年10クラスで、2年次からは文系と理系コースに分かれ、さらに文理コース内で選択科目がある、一般的な普通高校です。

  時間割作成の条件   時間割作成の結果   時間割作成の手順

▼強力な適正化機能によって手直し不要の実用的な時間割が短時間で完成
  

■時間割作成ソフト『時間番』の特徴
・誰でもすぐに使えるエクセル感覚のデータ入力
・教師、生徒、教室の3方向から実用的な時間割を自動作成
最終調整も紙要らずのマウス操作のみで完了

時間割作成の条件

 この高校の時間割作成の条件は、次のようになっています。

◎教師時間表について
・(必須条件)1日の授業時数を4時間以下にする。
・(必須条件)1日の連続授業時数を2時間以下にする。
・できるだけ同じ時限の授業時数を4時間以下にする。
◎クラス時間表について
・(必須条件)5単位以下の科目は同じ日に重ならないようにする。
・(必須条件)6単位以上の科目が同じ日に重なる場合は連続させない。
・(必須条件)2単位の科目は連続する曜日には配置しない。
・できるだけ同一教科が同じ日に重ならないようにする。
・(必須条件)同一教科が同じ日に重なる場合は連続させない。
・(必須条件)3年の家庭は2時間続きで調理室を使用し、1限を避け、昼休みをまたがない。
・(必須条件)体育と芸術は午前または午後において連続させない。
◎特別教室時間表について
・(必須条件)体育館の使用は最大2展開とし、同じ学年同士は同時展開しない。
・できるだけ体育館の使用は1展開とし、特に1限は1展開とする。

 データ入力に数時間、コマの割付および適正化に数十分かかりましたが、必須条件だけでなく「できるだけ…」の条件もすべて満たす時間割が自動で作成できました。

時間割作成の結果

 データ入力を除いてわずか数十分で、全教師、全クラス、全特別教室に対して下記の条件をすべて満たす時間割が作成できました。
 下記において青字の数字は、各学校の条件に応じて変更できます。⇒【処理可能な条件はこちら】
 (結果の時間割はサンプルとして製品内に収められています。なお、サンプルデータは予告なく変更されます。)

■教師時間表において
 沼田先生を例にとって説明しますが、全教師について同様になっています。
□〔1日の授業時数を 4 時間以下にする〕
 各曜日の授業時数はすべて4時間以下になりました。

□〔1日の連続授業時数を 2 時間以下にする〕
 各曜日の連続授業時数はすべて2時間以下になりました。

□〔同じ時限の授業時数を 4 時間以下にする〕
 各時限の授業時数が4時間以下になりました。

■クラス時間表において
 クラス1-1を例にとって説明しますが、全クラスについて同様になっています。
□〔同一科目を最大限別な日に配置する〕
 5単位以下の科目(国1A、国1B、政経、倫理、化1B、保健、英T、OCA、体育、芸術)はそれぞれすべて別な日に配置されました。
 7単位の数1Aは、週5日の内3日に1コマずつ、2日は2コマずつ配置されました。

□〔同一科目を 1 時間以上空けて配置する〕
 7単位の数1Aは、週5日の内2日は2コマずつ配置されましたが、2日とも1時間以上空けて配置されました。

□〔同一科目を 2 日以内の連続のみにしない〕
 2単位の科目(国1A、国1B、政経、倫理、保健、OCA)は、すべて中1日以上空けて配置されました。

□〔同一教科を最大限別な日に配置する〕
 合計5単位以下の同一教科(国1Aと国1B、政経と倫理)は、それぞれ別な日に配置されました。同一教科に設定されている4単位の英Tと2単位のOCAは、週5日の内1日だけ英TとOCAが入りましたが、残りの4日については英TとOCAのどちらか一方のみが配置されました。

□〔同一教科を 1 時間以上空けて配置する〕
 週1回は同じ日に重ならざるを得ない英TとOCAは、1時間以上空けて配置されました。

□〔連続禁止科目を午前または午後の時限間で連続させない〕
 体育と芸術は午前または午後において連続しないように配置されました。

 なお、クラス時間表における上記の条件は、選択授業に含まれる各科目にも適用されます。
 クラス3-10を例にとって説明すると、次のようになります。
 選択科目 ブカ1 は物Uと化1B、カセU は化Uと生Uの選択授業です。
 ブカ1、カセUともそれぞれすべて別な日に配置され、さらに同一教科に設定されている科目を含む ブカ1 と カセU は、週5日の内1日だけ重なって入りましたが、残りの4日については ブカ1 と カセU のどちらか一方のみが配置されています。さらに、週1回は同じ日に重ならざるを得ない ブカ1 と カセU は、1時間以上空けて配置されています。
 3単位の数Cは単独授業で、4単位の数Vは3-9と3-10を3人で担当する選択授業ですが、この授業に対しても上記の条件が満たされています。

 手作業でここまで調整するのは至難の業だと思います。

■特別時間表において
 体育館の使用に関しては、次のようにコマが配置されました。
□〔同時展開数を最大許容数以下にする〕
 体育館の使用は2展開以下になりました。
□〔同時展開数を設定した許容数以下にする〕
 1限はすべて1展開となり、さらに2展開は最小になりました。
 (金曜7限はHRですので、体育館の空きがありません。)
□〔同じ分類名を持つコマを同時展開しない〕
 2展開の曜日・時限には、異なる学年の授業が配置されました。
 (実行時には右クリックで使用中のクラス名を表示できます。)

 ここまでできるとは、すばらしい!

時間割作成の手順

 それでは具体的な作業手順を見ていきましょう。

1.コマの割付(〜1分)

 コマの割付は、まず必須条件を守りながら割付を行い、その条件では割付できない場合にはもう少し緩い条件で割付する方法で行います。この方法は、コマの割付には多少時間がかかりますが、時間割の適正化および最終調整が短時間で済む利点があります。しかし、最初からすべての条件を取り入れると、コマが代入できなくなりますので、コマの割付では優先順位の高い必須条件やコマを割付した後では解消が難しいと思われる条件だけにします。優先順位が低くしかもその日の中でコマを移動することによって解消可能な条件については適正化で行います。
 今回は時間割の作成条件を考慮して、次の2段階を用意して割付を行いました。

●NO.1の条件(ほぼ理想的な条件)
◎コマの移動回数 10回
◎教師時間表における割付条件
 ・〔1日の授業時数を 4 時間以下にする〕
 ・〔1日の連続授業時数を 2 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔同一教科を最大限別な日に配置する〕
 ・〔同一教科を 1 時間以上空けて配置する〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
◎特別教室時間表における割付条件
 ・〔同時展開数を最大許容数以下にする〕(体育館の最大許容数は 2 に設定)
 ・〔同じ分類名を持つコマを同時展開しない〕

●NO.2の条件(緩めの条件)
◎教師時間表における割付条件
 ・〔1日の授業時数を 4 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
◎特別教室時間表における割付条件
 ・〔同時展開数を最大許容数以下にする〕
 ・〔同じ分類名を持つコマを同時展開しない〕

【結果】
 NO.2の条件で割付したコマは数コマで、残りのコマはすべてNO.1の条件で、コマの割付が終了しました。
パスコマはありませんでした。

2.時間割の適正化(全体で数十分)

 コマの割付が終了した段階では、教師時間表において特定の曜日または時限に授業が集中していたり、授業時間が連続していたり、あるいはクラス時間表において特定の科目が午前または午後に集中していたりしますので、これらの片寄りを解消する必要があります。
 一般に適正化にはコマの割付よりも、長い時間を必要とします。なぜ長い時間を必要とするのかというと、適正化ではすでにコマの割付が済んだ時間割の調整を行うため、あるコマの移動を行おうとすると必ず別なコマも移動しなければならないためです。コマの移動にあたっては常に割付条件を守りながら移動しますので、最初から割付条件を厳しく設定しておくと、コマの移動がほとんど行われなくなります。そこで、適正化を行うときは、必ず満たしてほしい必須条件から初めて、できれば満たしてほしい条件を徐々に取り入れながら、教師、クラス、特別教室についてそれぞれ適正化を行います。
 適正化の途中で、優先順位の高い条件が満たされていない場合は、一度他の条件を緩めてから再度適正化を行うか、時間割の修正でコマの移動を行います。
 今回は時間割の作成条件を考慮して、次の6段階に分けて時間割の適正化を実行しました。(ただし、6段階目はおまけです。)

(1)特別教室時間表の適正化
 体育館の1限が1展開となるようにしました。
◎教師時間表における割付条件
 ・〔1日の授業時数を 4 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
◎特別教室時間表における割付条件
 ・〔同時展開数を最大許容数以下にする〕(体育館の最大許容数は 2 に設定)
 ・〔同時展開数を設定した許容数以下にする〕(体育館の1限の許容数をすべて 1 に設定)
 ・〔同じ分類名を持つコマを同時展開しない〕
【結果】
 すべて条件を満たすようにコマを移動できました。

(2)特別教室時間表の適正化
 できるだけ体育館の使用は1展開となるようにしました。
◎教師時間表における割付条件
 ・〔1日の授業時数を 4 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
◎特別教室時間表における割付条件
 ・〔同時展開数を最大許容数以下にする〕(体育館の最大許容数を 1 に設定
 ・〔同時展開数を設定した許容数以下にする〕(体育館の1限をすべて 1 に設定)
 ・〔同じ分類名を持つコマを同時展開しない〕
【結果】
 すべて条件を満たすようにコマを移動できました。

 以下、特別教室時間表における割付条件は、上記と同じですので省略します。

(3)クラス時間表の適正化
 クラス時間表において同一教科ができるだけ同じ日に重ならないように、同じ日に重なる場合は連続しないようにしました。
◎コマの移動回数 10回
◎教師時間表における割付条件
・〔1日の授業時数を 4 時間以下にする〕
・〔1日の連続授業時数を 2 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔同一教科を最大限別な日に配置する〕
 ・〔同一教科を 1 時間以上空けて配置する〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
【結果】
 すべて条件を満たすようにコマを移動できました。

(4)教師時間表の適正化
 教師時間表において1日の連続授業時数が 2 時間以下になるようにしました。
◎教師時間表における割付条件
 ・〔1日の授業時数を 4 時間以下にする〕
 ・〔1日の連続授業時数を 2 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
【結果】
 すべて条件を満たすようにコマを移動できました。

(5)教師時間表の適正化
 教師時間表において同じ時限の授業時数が 4 時間以下になるようにしました。
◎コマの移動回数 10回
◎教師時間表における割付条件
・〔1日の授業時数を 4 時間以下にする〕
・〔1日の連続授業時数を 2 時間以下にする〕
〔同じ時限の授業時数を 4 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔同一教科を最大限別な日に配置する〕
 ・〔同一教科を 1 時間以上空けて配置する〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
【結果】
 すべて条件を満たすようにコマを移動できました。

(6)クラス時間表の適正化
 おまけで、クラス時間表において同じ科目を異なる時限に配置しました。
◎コマの移動回数 10回
◎教師時間表における割付条件
・〔1日の授業時数を 4 時間以下にする〕
・〔1日の連続授業時数を 2 時間以下にする〕
・〔同じ時限の授業時数を 4 時間以下にする〕
◎クラス時間表における割付条件
 ・〔同一科目を最大限別な日に配置する〕
 ・〔同一科目を 1 時間以上空けて配置する〕
 ・〔同一科目を 2 日以内の連続のみにしない〕
 ・〔同一教科を最大限別な日に配置する〕
 ・〔同一教科を 1 時間以上空けて配置する〕
 ・〔時間続きのコマが指定された時限をまたがないようにする〕
 ・〔連続禁止科目を午前または午後の時限間で連続させない〕
 ・〔同じ科目を異なる時限に配置する〕
【結果】
 1クラスに付き数科目を除き、ほとんどの科目を異なる時限に配置できました。