ケー・ティー・システムスケジューラー(神戸製鋼所)ケー・ティー・システムは製造業向けSIerとして、工場現場の効率化・コストダウンを推進します。以下の点において改善すべきポイントがあった。複数の作業員が画一的に扱われているため、作業員の稼働予定を正確に表現できない。設備を使用する作業員の稼働可能時間が正確に表現できないため、スケジューリングの結果が不正確である。作業の途中で作業員を交代させることができないため、昼勤と夜勤の切り替え時にスケジューリング結果が不正確になる。これらの課題を解決し、かつ、高速にスケジューリングを行うシステムの構築がプロジェクトの目的であった。本システムは2010年より神戸製鋼所様の基幹システムとして稼働中である。作業員の稼働予定を正確に表現できる本スケジューリングシステムでは作業員ごとのカレンダーを持ち、稼働日ごとの稼働時間を管理している。これにより作業員個人の稼働可能時間を表現することが可能となっている。設備を使用する作業員の稼働可能時間を正確に表現できる本スケジューリングシステムでは設備を利用するグループを作成し、そのグループに作業員を割り付ける形で作業員全体の作業可能時間を計算する。具体的には、グループに所属する作業員の作業可能時間をすべて結合してそれをグループの作業可能時間として扱う。ある作業員が作業を行う場合、該当する作業員の作業を行っている時間帯を作業可能時間から削除し、該当する作業員の所属する全グループの作業可能時間を再計算することによってグループの作業可能時間を更新する。この処理により、グループの作業可能時間は正確であることが保証される。作業の途中で作業員を交代させることができる上で記述したグループの概念を利用して作業を行う時間帯をグループの作業可能時間から取得(休憩時間や非稼働日もあるため、作業を行う時間帯は連続であるとは限らない)し、そののちに作業を行う作業員を重複度の低い順(所属しているグループが少ない順)から順に選択していく。選択した作業員の作業時間と作業を行う時間帯を相殺し、作業を行う時間帯がなくなるまでこれを繰り返すことにより、複数の作業員が交代しながら作業を行うことが表現できる。作業員のカレンダーを一時的に変更してスケジューリングを行うことができる本システムではそのほかに作業員のカレンダーを一時的に変更してスケジューリングを行う機能も含まれている。この機能は残業を行った場合のスケジューリング結果を見ながら残業時間を決定するなどということにも利用されている。読み込み回数の最小化により高速でスケジューリングを行う事ができる本システムには全作業員(数百人規模)の作業員を想定しており、カレンダー読み込み回数を減らすために読み込み結果をメモリ上にキャッシュして通常はキャッシュの値を利用することによって正確でかつ高速に動作するスケジューリングシステムを保っている。作業員の作業時間が削除された後、即座にグループの作業時間を再計算するのではなく、該当する範囲を無効化された時間帯として記録する。無効化された時間帯が計算に必要になった場合、無効化された時間帯のみ作業時間の再計算を行い、正確でかつ高速に動作するスケジューリングシステムを保っている。以上の特徴により、本システムの計算するスケジューリングの結果は現実をよりよく反映したものとなっており、現在ではほぼスケジューリング結果通りに作業を行うことが可能になっている。