生産スケジューリング.

Slides:



Advertisements
Similar presentations
情報基盤アルゴリズムとして のメタヒューリスティクスの 研究 茨木俊秀、巳波弘佳、藤原洋志、 千葉英史、関口良行(関西学院大 学)、 藤重悟(京都大学)、 柳浦睦憲(名古屋大学)、 野々部宏司(法政大学)、 梅谷俊治(電気通信大学)
Advertisements

三木 光範 (同志社大学工学部) 廣安 知之 (同志社大学工学部) 花田 良子 (同志社大学工学部学部 生) 水田 伯典 (同志社大学大学院) ジョブショップスケジューリング問 題への 分散遺伝的アルゴリズムの適用 Distributed Genetic Algorithm for Job-shop.
到着時刻と燃料消費量を同時に最適化する船速・航路計画
  スケジュール管理手法PERT-Time      解 説    “最早開始時間計算のアルゴリズム”
第2回 プロセス管理 ジョブ、プロセスとは? プロセスの状態遷移 プロセス制御ブロック スケジューリング.
プロダクション・マネジメント イントロダクション(第1回)
データ構造と アルゴリズム 第十二回 知能情報学部 知能情報学科 新田直也.
S-DBR理論の解説 S-DBR理論.
近似アルゴリズム 第10章 終了時刻最小化スケジューリング
© Yukiko Abe 2014 All rights reserved
設備管理(facility management)
2017/3/10 スケジューリング最適化 東京海洋大学 久保 幹雄.
経営情報学入門 ―生産管理(3) 2011年1月13日(木) 王 暁華 経営情報学入門-生産管理(3) 2011年1月13日.
 授業を設計する(その4) 情報科教育法 後期5回 2004/11/6 太田 剛.
An Algorithm for Enumerating Maximal Matchings of a Graph
モード付き並列機械における オンラインスケジューリング
人 工 知 能 第3回 探索法 (教科書21ページ~30ページ)
遺伝アルゴリズムによる NQueen解法 ~遺伝補修飾を用いた解探索の性能評価~
土木計画学 第11回(12月21日) 土木計画と説明責任 計画における代替案の作成1 担当:榊原 弘之.
P,Q比が変更可能なScaLAPACKの コスト見積もり関数の開発
資源制約スケジューリング問題 ―メタヒューリスティクスによるアプローチ
整数計画法を用いた ペグソリティアの解法 ver. 2.1
マイクロシミュレーションにおける 可変属性セル問題と解法
第 七 回 双対問題とその解法 山梨大学.
第11講: 平成18年12月 8日 (金) 4限 E352教室 グラフ (1).
1-1企業活動 1-1-1経営・組織 (Point) ・企業活動や経営管理に関する基本的な考え方を理解する。
~ 日本の製造業を応援する無料の本格的スケジューラ ~
早わかりアントコロニー最適化 (ACO: Ant Colony Optimization)
ロジスティクス工学 第9章 スケジューリングモデル 補助資料:OptSeqによるスケジューリング入門 logopt
応用社会システム計画 (第10回) ここで、学習すること 学籍番号: 氏名: ■これまでの講義内容の整理 ■計画問題の設定と手法
スケジューリング最適化エンジン ― RCPSPによるアプローチ
MPIを用いた並列処理 ~GAによるTSPの解法~
第25章 単一始点最短路 3節 Bellman-Fordのアルゴリズム
ネットワーク上での社会的効用と個人的効用の対立問題に対するアルゴリズム的研究
決定木とランダムフォレスト 和田 俊和.
最適設計と設備投資の経済計算 JMAセミナー 目標 6時間 期間 3ヶ月 講師 MEマネジメントサービス編
モデルの逆解析 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
付属書Ⅰ.5 ハザード分析と 重要管理点 (HACCP).
Webサービスによる 加工工程決定支援システム
第7章 疎な解を持つカーネルマシン 修士2年 山川佳洋.
加工工程決定支援システム 電子情報通信学会 2010年総合大会 2010年3月18日 松江工業高等専門学校  情報工学科 越田 高志.
加工工程決定支援に対する自動化 電子情報通信学会2008年総合大会 松江工業高等専門学校 情報工学科 越田 高志, 牧 聡史
シミュレーション学講義 第**回 スケジューリング問題とJSSP.
早わかりアントコロニー最適化 (Ant Colony Optimization)
第9回 優先度つき待ち行列,ヒープ,二分探索木
日程計画 (scheduling) 大規模なプロジェクトの日程を計画し、その進行を管理する手法。
担当者: 河田 正樹 年度 管理工学講義内容 担当者: 河田 正樹
エージェントベースモデリング によるプロジェクト内 行動ポリシーの影響分析
スケジューリング最適化システム WebSeqのご紹介
スケジューリング最適化システム OptSeq II 補助資料:OptSeq II によるスケジューリング入門 トライアルバージョン
決定木 Decision Tree DT 明治大学 理工学部 応用化学科 データ化学工学研究室 金子 弘昌.
連続領域におけるファジィ制約充足問題の 反復改善アルゴリズムによる解法 Solving by heuristic repair Algorithm of the Fuzzy Constraint Satisfaction Problems with Continuous Domains 北海道大学.
RDFの生産工程管理システムへの適用 情報処理学会 第74回全国大会 2012年3月6日 松江工業高等専門学校  情報工学科 越田 高志.
ナップサック問題 クマさん人形をめぐる熱いドラマの結末.
生産性向上 現場のビデオ映像 OTRSは現場映像から、各種シミュレーションを提供し、組織の生産性向上をサポートしています。
第2回  発見的探索(1).
配送計画最適化システム WebMETROのご紹介
第9回 優先度つき待ち行列,ヒープ,二分探索木
TOC 制約理論のひろば Copyright , Toshio Sasaki All Rights Reserved
All Rights Reserved, Copyright © 2004, Kobayashi
土木計画学 第12回(1月14日) 計画における代替案の作成2 担当:榊原 弘之.
セマンテックWebを利用した加工工程決定支援システム
2009/11/27 グラフ (1) 第9講: 平成21年11月27日 (金) 4限 E252教室 コンピュータアルゴリズム.
担当者: 河田 正樹 年度 管理工学講義内容 担当者: 河田 正樹
実験計画法 Design of Experiments (DoE)
第1章 現状メソッドの標準化 対象工程を流れる代表品種に対し作業を区分し、時間・頻度を 明らかにして、オペレーションリストを作成する。
コストのついたグラフの探索 分枝限定法 A*アルゴリズム.
演習問題 下記の表は木造家屋建築作業リストである。
割り当て問題(assignment problem)
スケジューリングってなんだ? -やり方ひとつで大きく変わる
Presentation transcript:

生産スケジューリング

スケジューリングの概念 スケジューリング問題 製造活動の3(M)要素 授業時間割表 電車運行時刻表 生産スケジューリング 配送スケジューリング 旅行スケジューリング 研修スケジューリング など 製造活動の3(M)要素 人間:作業者~能力 道具:作業順番~工程 対象:仕事~ジョブ

生産スケジューリングの分類 順序制約なし(巡回型) 順序制約あり(資源配置型) 配送スケジューリング 単一ジョブ(例:TSP) 複数ジョブ(例:VRP) 順序制約あり(資源配置型) 単一ジョブ(例:PERT) 複数ジョブ 同一加工順序 例:flow shop schedulings ジョブ1:①→②→③ ジョブ2:①→②→③ 異なる加工順序 例:job shop scheduling ジョブ1:①→②→③ ジョブ2:②→①→③ プロジェクト スケジューリング 加工スケジューリング

生産スケジューリングの目標 工程効率基準 滞留時間基準 納期基準 重み付き複合基準 稼働率 平準化 総所要時間 最大滞留時間 平均滞留時間 最大納期ずれ時間 平均納期ずれ時間 平均納期遅れ時間 重み付き複合基準

生産スケジューリングの制約(1) 組織目標の制約 品質目標(Q) 利益目標(C) 納期目標(D) 生産数量の目標 現場の安定性目標 残業費用の目標 生産性の目標

生産スケジューリングの制約(2) 物理、技術的制約 稼働率、利用率の制約 機械、設備の制約 加工時間の制約 段取り時間の制約 製造方法の制約 製造順序の制約 製造品質の制約 稼働率、利用率の制約 使用資源の予約 機械故障時間 シフト

生産スケジューリングの制約(3) 因果関係の制約 選好に関する制約 加工の代替案 機械の代替案 必要な工具類 資材所要量 加工所要人数 搬送時間 選好に関する制約 オペレーションの選好 機械設備の選好 加工順序の選好

スケジューリング手法の分類 アルゴリズミックなアプローチ シミュレーション マン・マシンインタラクション 最適化アルゴリズム ヒューリスティック・アルゴリズム シミュレーション モデリング シミュレーション分析 マン・マシンインタラクション アルゴリズムまたはモデリング パラメータ入力、変更

最適化アルゴリズ 汎用解法 特殊解法 構築型: 改造型: 構築型 完全列挙法、 分枝限定法 SA(アニーリング法)、タブサーチ、GA(遺伝的アルゴリズム) 特殊解法 構築型 ジョンション法 図解法

実行可能解法 汎用解法 構築型 盲目的探査 深さ優先探査 広さ優先探査 ヒューリスティック探査 山登り 最良優先探査 ビーム探査 フィルター付きビームサーチ

特殊解法 改善型 局所的最適代替案の選択 タブサーチ(TS,AMP) アニーリン グ(SA) 遺伝的アルゴリズム(GA) ディスパッチングルール 目標追跡法 ボトルネック指向スケジューリング セービング法 スウィープ法

フローショップスケジューリング

1.ジョンソン法 ジョンソン法 問題例: ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1  120 40 80 100 工程2 60   140 120 80 アルゴリズム 最小加工時間を選択する この時間が前工程であれはそのジョブを前から並べる この時間が後工程であればそのジョブを後ろから並べる。 未割り当てジョブが無くなるまでに上記3ステップを繰り返す。

ガントチャート (Gantt Chart) 50 100 150 200 250 300 350 400 450 J2 J3 J4 J1 P1 P2 J2 J3 J4 J1

ジョンション法の応用 2工程の時は最適性を保証 3工程以上の時は 多工程への応用 直接応用不可能 最適性を保証しない 複合工程を作成 逐次的にジョンション法を適用

ジョンソン法の問題点 問題例 ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1 20 140 40 100 ジョンション法の問題点 問題例 ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1  20  140 40   100    工程2 180 120 40    20 工程3 80  40  160    60 ジョンション法の問題点 工程1と2を対象にすると 1ー3ー2ー4 工程2と3を対象にすると 4ー3ー1ー2 工程1と3を対象にすると 1ー3ー4ー2

2.列挙法 (Enumeration Method) すべての可能性を調べる方法 1ー2ー3ー4 1ー2ー4ー3 1ー3ー2ー4 ・ ・ ・ 4x3x2x1=24通り 目的関数を計算し、最適解を持つスケジュールを選択する。

ツリーによる列挙法 ・ ・ ・ ・ ・ ・ 1 2 3 4 レベル0 レベル1 レベル2 レベル3 レベル4 レベル=深さ 0

3.分枝限定法(Branch and Bound Method) 列挙法に基づき、次に割付可能なジョブを選択する(分枝する)。 Lower Boundを計算し、一番有望なジョブを割り付ける(枝を伸ばす)。 Upper Boundを計算する。 バックトラッキングする。 枝刈りする。 最適解を確定する。

例題 ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1 20 140 40 100 工程2 180 120 40 20 工程3 80 40 160 60

一回目の分枝 0 1 2 3 4 LBー> 540 600 440 500

下界(Lower Bound) Lower Boundの概念 有望枝の判断基準 最小化目標関数の上限値(これより大きくならない) 計算方法:問題により異なる 計算式例 LBi=選択済みジョブの本工程までの加工完了時間   +残りジョブの本工程における総加工時間   +すべての後工程に対する残りジョブ加工時間和         の最小値 LB=max{LBi} }

LBの計算例(1) 問題 ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1 20 140 40 100 工程2 180 120 40 20 工程3 80 40 160 60 計算例(ジョブ1を最初に割り付ける時) LB(工程1、工程2、工程3)= (20、200、280) +(280、180、260) +(80、40、0) =(380、420、540)~ 最大値540を選択

LBの計算例(2) 問題 ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1 20 140 40 100 工程2 180 120 40 20 工程3 80 40 160 60 計算例 (ジョブ2を最初に割り付ける時) LB(工程1、工程2、工程3)= (140、260、300) +(160、240、300) +(80、40、0) =(380、540、600)~ 最大値600を選択

二回目の分枝 0 * 1 2 3 4 540 600 440 500 * 2 4 1 440 560 500

LB計算例(3) 問題 ジョブ1 ジョブ2 ジョブ3 ジョブ4 計算例(最初にジョブ3を選択した後) 問題 ジョブ1 ジョブ2 ジョブ3 ジョブ4 工程1 20 140   40 100 工程2 180 120   40 20 工程3 80 40 160  60 計算例(最初にジョブ3を選択した後) ジョブ1のLBを計算する LB(工程1、工程2、工程3) =(60、260、340(40+40+180+80)) +(240、140、100) +(80、40、0) =(380、440、440)~ 最大値440を選択 最大値パス 選択基準

ガントチャートの利用 40+40+180=260 40+20=60 工程1 工程2 工程3 40+40+max(180,160)+80=340 ジョブ3 ジョブ1

計算量=(4+3+2+1)/(4+12+24+24)=1/6.4 レベル0 0 540 600 440 500 レベル1 1 2 3 4 レベル2 440 500 2 3 4 1 3 4 1 2 4 1 2 3 560 レベル3 3 4 2 4 ・ ・ ・ 1 3 1 2 2 4 480 460 レベル4 4 3 4 2 ・ ・ ・ 2 3 1 2 1 460

ジョブショップスケジューリング

1. 図解法 2製品の加工スケジュールを決める問題 工程1 工程2 工程3 工程4 製品1 M1:4 M2:2 M3:3 製品2 M1:2

M2:3 M1:2 M3:4 M1:2 M1:4 M2:2 M3:3 M2:2

2. 競合解消法 与えられたデータ LB(下界値)行列Cの求め方 加工経路行列M(JxM) 加工時間行列P(JxM) 納期ベクトルD(J) LB行列C(JxM) LB(下界値)行列Cの求め方

競合処理 競合アイテムの判断方法 Pを参照に、競合相手を競合加工時間分遅らせ、新しいLB行列(C行列)をそれぞれ作成する。 これらのLB行列に基づいて目的関数をそれぞれ計算し、最大目的関数に対応するLB行列を選択する。 競合アイテムの判断方法 Mを参考に加工順にLBの実行可能性をチェックする。

例題 M1 M2 M3 D J1 5(1) 3(2) 2(3) 13 J2 2(1) 6(3) 4(2) 12 4(2) 3(1) 4(3) 5(1) 3(2) 2(3) 13 J2 2(1) 6(3) 4(2) 12 4(2) 3(1) 4(3) 17 J3 J:ジョブ M:機械(工程) データ:加工時間(加工順番)

C1 L=0 C2 L=5 C3 C4 L=4 C5 L=2 C6 C7 C8 目的関数:最大遅れを最小化すること Min. L=∑max(0,Ci3-Di)

3. ディスパッチングルール(Dispatching Rules) 概念 計算量が莫大であるケース 複数ジョブから一つ選択して工程に割り付けるジョブ選択の基準、ルールの総称 よく使われるDR SPT(Shortst Processing Time) LPT(Largest Processing Time) SLACK(納期ー現時刻ー残加工時間) EDD(Earliest Due Date、残りの加工時間を考慮せず)

DRのアルゴリズム ステップ1: それぞれの工程(機械)で加工が終了した時点で、その工程で加工が可能となっているジョブ(加工待ちのジョブと、その時点でちょうど前の工程が終わったジョブ)を見つける。 ステップ2: そのようなジョブがない時には単位時間ずつ、加工開始可能なジョブが見つかるまで、スケジューリング時刻を進める。その間、この工程は遊休(アイドル)状態となる ステップ3: 加工開始可能なジョブが一つのとき、このジョブを工程に直ちに割り付ける。 ステップ4: 加工開始可能なジョブが複数あるとき(競合、あるいはコンフリクトという)、これらのジョブにディスパッチングルールを適用し、その内の一つを選択し、そのジョブを工程に割り付ける。 ステップ5:スケジューリング時刻を順次進め、同様手続きで各工程に対するジョブの割付を行う。

例題 下の表に与えられたジョブショップスケジューリング問題を、競合解消法を用いて解き、その解をガントチャートに示せ。ただし評価基準は、総完了時刻最小とする。 上記の問題にSPTルールを適用するとどのようになるか? 上記の4つのジョブの納期は、いずれも20とする。このときジャストインタイム基準(ただし、納期遅れは許さない)で最適となる解を、ガントチャートで示せ。 ジョブ/機械 M1 M2 M3 J1 J2 J3 J4 5(1)  5(2)   2(3) 2(1) 6(3) 4(2) 4(2)  3(1) 4(3) 3(3) 5(2) 4(1) 注:( )の中の数字は加工順番を表わす。

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C= 5 10 12 2 6 12 3 7 11 4 9 12 5 10 15 20 J1 M1 M2 M3 M3 J2 M1 M2 J3 M2 M1 M3 J4 M3 M2 M1 C1= 7 12 14 2 6 12 3 7 11 4 9 12 C2= 5 10 12 7 11 17 3 7 11 4 9 12 L=max(Ci3) L1=14, L2=17

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C1= 7 12 14 2 6 12 3 7 11 4 9 12 J1 M1 M2 M3 5 10 15 20 J2 J3 J4 C3= 7 12 14 2 8 14 3 7 11 4 9 12 C4= 7 12 14 2 6 12 3 7 11 10 15 18 L=max(Ci3) L3=14, L4=18

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C3= 7 12 14 2 8 14 3 7 11 4 9 12 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 12 17 19 2 8 14 3 7 11 4 9 12 C6= 7 12 14 2 8 14 3 11 15 4 9 12 C5= L=max(Ci3) L5=19, L6=15

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C6= 7 12 14 2 8 14 3 11 15 4 9 12 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 7 14 16 2 8 14 3 11 15 4 9 12 C8= 7 12 14 2 8 14 3 11 15 4 17 20 C7= L=max(Ci3) L7=16, L8=20

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C7= 7 14 16 2 8 14 3 11 15 4 9 12 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 7 14 16 2 8 15 3 11 15 4 9 12 C10= 7 14 16 2 8 14 3 11 15 4 19 22 C9= L=max(Ci3) L9=16, L10=22

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C9= 7 14 16 2 8 15 3 11 15 4 9 12 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 7 14 16 2 8 15 3 11 15 4 9 14 C12= 7 14 16 2 8 15 3 18 22 4 9 12 C11= L=max(Ci3) L11=16, L12=22

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 7 14 16 2 8 15 3 11 15 4 9 14 C11= 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 7 20 22 2 8 15 3 11 15 4 9 14 C14= 7 14 16 2 8 20 3 11 15 4 9 14 C13= L=max(Ci3) L13=22, L14=20

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 7 14 16 2 8 20 3 11 15 4 9 14 C14= 5 10 15 20 J1 M1 M2 M3 M2 J2 M1 M3 J3 M2 M1 M3 J4 M3 M2 M1 7 14 17 2 8 20 3 11 15 4 9 14 C16= 7 14 16 2 8 20 3 11 20 4 9 14 C15= L=max(Ci3) L15=20, L16=20

M= 1 2 3 1 3 2 2 1 3 3 2 1 P= 5 5 2 2 4 6 3 4 4 4 5 3 C1= 7 14 17 2 8 20 3 11 15 4 9 14 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 5 10 15 20 M1 J2 J1 J3 J4 M2 J3 J4 J1 J2 J4 J2 M3 J3 J1

SPTルールの適用 J1 M1 M2 M3 5 10 15 20 J2 J3 J4 5 2

J1 M1 M2 M3 5 10 15 20 J2 J3 J4 4 4

5 J1 M1 M2 M3 J2 M1 M3 M2 4 J3 M2 M1 M3 J4 M3 M2 M1

5 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 5 J4 M3 M2 M1

J1 M1 M2 M3 J2 M1 M3 M2 4 J3 M2 M1 M3 3 J4 M3 M2 M1

J1 M1 M2 M3 6 J2 M1 M3 M2 J3 M2 M1 M3 4 J4 M3 M2 M1

競合発生 SPTルールで決定 5 J1 M1 M2 M3 6 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1

J1 M1 M2 M3 J2 J3 J4 6 5 4 5 10 15 20 M1 J2 J1 J3 J4 M2 J3 J4 J1 J2 J4 J2 M3 J3 J1

総加工時間同じ 競合解消法 5 10 15 20 J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1 SPT J1 M1 M2 M3 J2 M1 M3 M2 J3 M2 M1 M3 J4 M3 M2 M1