Theory of Constraints と生産スケジューリング
最近は、ダイヤモンド社から発行されているザ・ゴール ― 企業の究極の目的とは何かという本を読んだからか、TOC(TheoryofConstraints: 制約条件の理論)とかDBR(ドラム・バッファ・ロープ)とかいう理論なんかに興味を持ってきた。そんなことがあって、今回、このブログのタイトルにもなっている論文Theory of Constraintsと生産スケジューリングを読んでみたので、そこで得たことをここにアウトプットしようと思う。なお、TOCやらDBRについてはその言葉すら最近知ったばかりということもあり、使い方や認識に間違いがある可能性があります。もし、間違いなどに気づかれた方はコメントやtwitter(@1987yama3)まで教えてくれたら幸いと思います。
TOC(Theory of Constraints)とは?
TOCとはTheory of Constraintsの略語で、日本語では制約条件の理論と呼ばれている。これは、経営管理のコンセプトと手法に関する理論であり、当初は生産スケジューリング手法だったものが、現在は問題解決/思考プロセス手法にも応用可能であることが実証されている。事実、最初は製造業で用いられていたのだが、製造業だけでなく、サービス業や米軍など幅広い組織での問題にも活用されている。
TOCの構成要素
TOCは以下の3つの部分から構成されている。
- ロジスティックス
- 業績測定システム
- 問題解決/思考プロセス
1つ目のロジスティックスについて。これは後述する5段階継続的改善プロセス、スケジューリングプロセス、V-A-T分析からなる。V-A-T分析は、製品プロセスの分類法であり、一般的な製品の製品フロー、コントロール・ポイント、戦略バッファの設置場所を確認できる。
2つ目の業績測定システムは、TOCで用いる3つの指標とその定義である。3つの指標とは、スループット、在庫、業務費用である。また、制約という言葉は、TOCにおいては「あるシステムが、そのシステムの目指すゴールに関して、より高いレベルを達成するのを妨げる要素や要因」を意味します。補足としては、マシンセンター、資材欠如などの物理的なものだけでなく方針、手順のような管理的なものも「制約」に含まれることを確認しておきたい。
3つ目の問題解決/思考プロセスについて。ここでの目的は、何を変更する?、何に変更する?、どのように変更を実現する?の3つです。これにはECE図と呼ばれる方法論が利用される。ECE図とは、「観察された結果を引き起こしたと考えられる原因を仮説としておき、それを裏付ける二次的な結果を見つけて因果関係を検証する」という手法である。
5段階継続的改善プロセス
- ステップ1:制約の同定。全体システムのスループットを制限する資源を見出す。
- ステップ2:制約の活用。システムの制約資源を最大限活用する。全体システムのスループット最大化のために優先順位付けも行う。
- ステップ3:制約への従属。制約資源以外の全ての決定をステップ2の決定に従属させる。制約でない資源は制約資源が必要とする以上には活用しない。
- ステップ4:制約の能力向上。制約資源に、全体的スループットを増加させる追加能力を調達する。
- ステップ5:惰性の回避。ステップ3とステップ4により制約が他の資源に移る可能性に注意しながらステップ1に戻る。
5段階継続的改善プロセスは上のようなステップ1からステップ5までのステップの繰り返しのことを指す。この改善プロセスは、生産システムにおける生産管理だけでなく、プロジェクト、サプライチェーン、会計管理など多くのシステムマネジメントに有効であるようだ。
ドラム・バッファ・ロープ(DBR)スケジューリング法
DBRスケジューリング法では、スループットを最大にする目的で「生産スケジュール作成手順」と「バッファ管理」から構成される。ここで、DBRの名前の由来について軽く書いておく。ドラム(D)とは、そのシステムの制約となる工程で設定される生産ペース、バッファ(F)は不確実性に対する防護のための時間的余裕、ロープ(R)は制約工程からシステムの最上流工程への伝達プロセスを表している。簡単にいうと、ロープを使って最上流工程ではシステムへの資材の投入量をチェック・制限して、投入量が制約条件の生産ペースに合致するように調整している。
DBRスケジュール作成手順
- キャパシティ分析を使い、制約を決定する。
- 制約を通過する構成部品を確認し、決定する。
- 各製品の制約資源での1分あたりの貢献利益などを使い、制約での優先順位を決める。
- この優先順位を使い、制約資源の使い方のガントチャートを作成する。
- 制約資源を通過する構成部品を使わない最終品目は基準生産計画内で平準化してスケジュールする。
- 制約資源での処理タイミングからバックワード日程計画により逆戻りしながら資材投入スケジュールを作成する。この際、制約バッファも設けておく。
- 制約資源での処理タイミングに出荷バッファを加え、フォワード日程計画で出荷スケジュールを作成する。この際、制約バッファ、出荷バッファも設けておく
このようなスケジューリングに似たことは大学での研究内容(グラフ理論)の一部にも最大フローなどの名で学習した。しかし、最大フローではDBRでいう制約が登場しない状況であったので、単純なアルゴリズムで済んだ。しかしDBRでは制約条件を中心としてフローの流れを組むということでなかなか面白そうな気がしてきた。とりあえず、フローを最大化させることが目的ではなく、フローを最適化させることが目的なんだろうな。
また、注意しておきたいことは、制約ベース・スケジューリングでは、”最適”スケジュールは遅れジョブを持つことを計画しない、という認識、ジョブの納期と能力は不変ではない、ということを理解しなければいけないようだ。
まとめ
自分でこの記事を書いていて、やはり自分の中でも完全にはまとまっていないなぁということを実感しました。とりあえず、これだけ長々と書いてみたが、自分の中でしっかり理解できたつもりの内容は、DBRスケジュール作成手順におけるアルゴリズムのコンセプトくらいだと思います。
参考文献
参考文献の参考文献で興味を持ったもの
- E.M. Goldratt: “What is the Theory of Constraints?”, APICS, The reformance Advantage, June(1993).
- J. V. Simons, Jr. and W. P. Simpson III, “An exposition of multiple constraint scheduling as implemented in the GOAL SYSTEM (Formerly DISASTER TM)”, Production and Operations Management, Vol.6, No. 1, 3-22(1997).
関連記事
- [PR] システムエンジニア派遣なら@ばる
- 最近ブックマークしたニュース記事 ~6/15
- 基本情報技術者の問題解説 【計算問題】 No1
- Windows7 RCのダウンロード中
- [情報処理技術者] システムの信頼性設計
[PR]
トラックバック
http://yamablo.com/2009/12/27-224910.php/trackback

