フローショップ・スケジューリング問題 (FSP) とは
フローショップ・スケジューリング問題(Flowshop Scheduling Problem, FSP)は、複数の作業が特定の順序で処理される機械群の管理において、稼働時間や納期遅れを最適化するための課題です。この問題は、組み合わせ最適化の一種で、作業を処理する順序が全ての機械で同じであるため、順列フローショップ・スケジューリング問題(Permutation Flowshop Scheduling Problem, PFSP)と呼ばれる特別なケースが存在します。
問題の概要
FSPでは、 n 個の作業と m 個の機械があり、各機械は常に1つの作業しか処理できません。また、一度作業を始めると、処理を中断することはできません。作業ごとに処理にかかる時間は異なります。したがって、作業の処理順序を最適化することが求められます。
仮定条件
FSPでは以下の仮定が成り立ちます:
- - すべての作業は互いに独立して処理される
- - いつでも作業を開始できる
- - 各機械は連続して使用可能
- - 一度に高々1つの作業しか処理できない
- - 処理が開始されると、途中で中断はできない
- - 各工程間の段取り時間は無視される
仕事数 n と機械数 m によって、実行可能なスケジュールの数は (n!)^m となります。また、PFSPの場合は n! になります。作業と機械の数が増えると、最適解を見つけることが非常に困難になります。
評価尺度
FSPで最も一般的に使用される評価尺度はメイクスパン(総所要時間)ですが、他にもいくつかの尺度が存在します。代表的な評価尺度は以下の通りです:
- - メイクスパン(総所要時間): C_max
- - 総納期遅れ: ∑max(0, d_i)
- - 納期遅れ仕事数: ∑U_i
これらの尺度は、FSPの解法を探る際に重要な指標となります。
メイクスパンを最小化するFSP
メイクスパンを最小化するFSPでは、機械1から仕事を開始し、機械mで完了するまでの時間を最小にするための処理順序を求めます。この問題は、機械の数が3以上になると
NP困難とされていますが、機械2または特定の条件下の機械3の場合には、ジョンソン法を用いることで、O(n log n) の計算量で最適な順序を算出できます。
関連問題
FSPの理解を深めるためには、他のスケジューリング問題も知っておくと良いでしょう。例えば、仕事の作業順序の制約がある
ジョブショップ・スケジューリング問題や、作業順序に制約がないオープンショップ・スケジューリング問題などがあります。
参考文献
FSPに関する詳細な研究や実践的アプローチは、多くの文献で扱われています。以下はその一部です:
- - Baker, K. R. (1974). Introduction to Sequencing and Scheduling.
- - 鍋島一郎. (1974). スケジューリング理論.
- - 久保幹雄. (2022). Pythonによる実務で役立つ最適化問題100+.
- - M.R. Garey et al. (1976). “The Complexity of Flowshop and Jobshop Scheduling”.
フローショップ・スケジューリング問題は、製造業やサービス業において効率化を図る上で重要なテーマとなっており、その解決方法は経済的な効果をもたらすことが期待されています。