「シミュレーション」 森戸担当分 第1回 線形計画モデル(1) 12/02/2005 森戸 晋 生産計画問題(2製品、3リソース) • 早稲田工場では、鉄鋼、電力、労働力という3種類の リソースを使って、2種類の製品を生産している • 来週の生産計画を立案したい • 限られたリソースの範囲内で、利益最大の製品の生 産単位数(非負実数ならよいものと仮定)を決めたい 製品1 製品2 来週使えるリソース許容上限 鉄鋼 1 2 14 電力 1 1 8 労働力 3 1 18 利益 2 3 生産計画問題の定式化 線形計画問題 • 変数(決めること) – 製品1の生産量 – 製品2の生産量 x1 x2 • 最大化 z =2 x1 + 3 x 2 (目的関数:利益) • 制約(条件) x1 + 2 x 2 ≦ 14 (鉄鋼) x1 + x 2 ≦ 8 (電力) 3 x1 + x 2 ≦ 18 (労働力) x1, x2 ≧0 生産計画問題の幾何学的表現 x2 z=一定 0 x1 線形計画問題による定式化 • 定数 与えられた問題のデータ • 変数(variables)の定義 なにが制御可能か。なにを動かして最適化を達 成しようとするのか。 • 目的関数(objective function)の定義 計画をどう評価するのか。評価値を大きくしたい のか、小さくしたいのか。 • 制約条件(constraints)の定義 どのような制約条件があるのか。 線形計画問題(LP) (Linear Programming) • 目的関数、制約条件がすべて線形(1次)関数 からなる • 変数は(原則として非負の)実数(連続変数) • 最大化 z = Σj=1,...,ncj xj 制約条件 Σj=1,...,naij xj = bi , i=1,...,m xj ≧0 , j=1,...,n • 最小化問題や、制約条件が不等式(≦、≧)の問 題、変数の非負条件がない問題などあり • 効率のよい解法が存在(単体法、内点法) 線形関数とは • 変数x(たとえば、生産量)の値が倍になれば、 必要となる資源も倍になる – 世の中は必ずしも線形でないが、多くの実際問題が 線形モデルで表現、あるいは、近似できる 目的関数あれこれ • • • • • • • • • 利益の最大化 費用の最小化 効用の最大化 リスクの最小化(分散の 最小化) 売上高の最大化 純現在価値の最大化 余剰従業員数の最小化 従業員数の最小化 顧客満足の最大化 • 納期遅れの最小化 • 最大完了時刻の最小化 • 移動距離(移動費用)の 最小化 • 配送費用の最小化 • 段取り回数(段取り費用) の最小化 • 流量の最大化 • 渋滞(滞留時間)の最小 化 • ... 制約条件あれこれ • 個別の変数に上下限制約がついている Astro_sales ≦ 50 • 流量(水、エネルギー、交通量等)に制限がある Supply1 + Supply2 + Supply3 ≦ 100 • 資源が限られている 6・Product1 + 9・Product2 ≦ 300 (原料供給制約) • 一定品質を守らなければならない 6・Iron1 + 9・Iron2 ≧ 7 (原料品質制約) • 流量がバランスしなければならない Stockt= Stockt-1 + Productiont - Salest(期末在庫 量) 数理計画法の有効性 • 大規模な線形計画問題(LP)を高速に解く解法とパッ ケージが存在 どれぐらいの問題が解ける? • かなりの規模の整数計画問題(IP)/組合せ最適化問 題も解ける • 単に最適解を得るだけでなく、問題の入力データ(具体 的には、制約条件や目的関数の係数)が変化した場合 の「感度分析」が容易 • 線形計画問題や整数計画問題として定式化可能な問 題が多く存在(線形計画は石油業界、鉄鋼業界等、整 数計画や組合せ最適化の応用領域は極めて広範) (3製品版)生産計画問題 • 早稲田工場では、3つの製品、製品1、製品2、 製品3を生産) • 原料として、鉄鋼、電力、労働力を使用 • 1個当たり 製品1 製品2 製品3 保有量 利益 2万円 3万円 4万円 鉄鋼 1 2 3 14 電力 1 1 2 8 労働力 3 1 2 18 生産計画問題のEXCELによる求解 • 変数(決めること) → 変化させるセル – 製品1、2、3の生産量 x1,x2,x3 • 最大化 z=2 x1+3 x 2+4 x 3 (目的関数:利 益) → 目的セル • 制約条件 x1+2 x 2+3 x 3 ≦ 14(鉄鋼) x1+ x 2+2 x 3 ≦ 8 (電力) 3 x1+ x 2+2 x 3 ≦ 18(労働力) x1,x2 ,x3≧0 ソルバー オプション設定 ソルバー使用上の留意点 • 「変化させるセル」(変数セル)はなるべく一箇 所にまとめる – 複数の部分に分かれている場合はコンマ区切り • 式をコピーする場合は、セルの相対参照と絶対 参照を使いわける(セルの絶対参照切替はF4) • 「オプション」で、「線形モデルで計算」と「非負 数を仮定する」にチェックを忘れずに • 整数条件や0-1条件が必要なときは、制約条 件の指定の中で、変化させるセルを「区間」(= 整数)または「デー」(0-1)に Microsoft Excel 8.0d 解答レポート ワークシート名: [鉄鋼電力労働力.xls]3製品(鉄鋼電力労働力) レポート作成日: 01/10/08 15:59:40 目的セル (最大値) セル 名前 $G$3 利益 変化させるセル セル 名前 $B$3 製品1生産量 $C$3 製品2生産量 $D$3 製品3生産量 制約条件 セル 名前 $E$5 鉄鋼 資源使用量 $E$6 電力 資源使用量 $E$7 労働力 資源使用量 計算前の値 セルの値 0 計算前の値 セルの値 0 0 0 セルの値 22 2 6 0 制約条件 ステータス 条件との差 14 $E$5<=$G$5 満たす 0 8 $E$6<=$G$6 満たす 0 12 $E$7<=$G$7 部分的に満たす 6 Microsoft Excel 8.0d 感度レポート ワークシート名: [鉄鋼電力労働力.xls]3製品(鉄鋼電力労働力) レポート作成日: 01/10/08 15:59:40 変化させるセル セル 名前 $B$3 製品1生産量 $C$3 製品2生産量 $D$3 製品3生産量 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 2 0 2 1 0.5 6 0 3 1 1 0 -1 4 1 1E+30 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $E$5 鉄鋼 資源使用量 14 1 14 2 3 $E$6 電力 資源使用量 8 1 8 1.2 1 $E$7 労働力 資源使用量 12 0 18 1E+30 6 限界コスト、被約費用(reduced cost) • 変数(列)に対応 • 二つの解釈が可能 ①xj=0である変数を無理に正にしようとしたと きの、xj単位当たりの目的関数値の増加の度合 い ②xj=0である変数を正にする可能性が生じる (つまり、最適解が最適でなくなる)目的関数の 係数cjの変化量 潜在価格(shadow price),双対価格(dual price) • 制約条件式(行)に対応(別名: 単体乗数 (simplex multiplier), 双対変数(dual variable)) • 当該制約条件の右辺定数以外のすべての係数 を元の問題のままにした上で、当該制約条件の 右辺定数を微小量増加させたときの、増加単位 量当たりの最適目的関数値の改善/改悪の度 合い 「最適(目的関数)値」関数 生産計画問題の鉄鋼リソースを例に (問題の)他の条件が変わらないとしたときに、○○(例:鉄鋼)リ ソースが変化したときの最適(目的関数)値の変化を示したグラフ 最 適 値 24 22 19 0 1 赤字は傾き 1.4 12 2 6 11 14 16 鉄鋼リソース許容量 家具の生産計画: 問題の提示 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 7 5 2 B 160 8 4 8 C 40 3 8 4 D 生産能力(時間) 100 5 1000 5 720 2 640 a)切断時間の能力の余裕はいくらあるか。 b)製品Aを生産するようになるためには、製品Aの利益がいくらに なる必要があるか。 c)製品B、1台当たりの利益が$100に落ちたときの最大総利益 はいくらになるか。 d)外部から研磨機が1時間当たり$20で借りられるとしたとき、 研磨機を借りるのがよいか。 e)無理に製品Cを作ろうとした場合、どんなことが言えるか。 f)仕上げ工程の生産能力を100時間追加したときに、最大利益 はどうなるといえるか。 家具の生産計画: ソルバー結果 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 家具の生産計画: 質問a) a)切断時間の能力の余裕はいくらか。 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 家具の生産計画: 質問b) b)製品Aを生産するようになるためには、製品Aの利益がいくらに なる必要があるか。 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 家具の生産計画: 質問c) c)製品B、1台当たりの利益が$100に落ちたときの最大総利益 はいくらになるか。 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 家具の生産計画: 質問d) d)外部から研磨機が1時間当たり$20で借りられるとしたとき、 研磨機を借りるのがよいか。 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 家具の生産計画: 質問e) e)無理に製品Cを作ろうとした場合、どんなことが言えるか。 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 家具の生産計画: 質問f) f)仕上げ工程の生産能力を100時間追加したときに、最大利益 はどうなるといえるか。 家具の種類 家具1台当たりの利益(ドル) 家具1台当たりの切断時間(時間) 家具1台当たりの研磨時間(時間) 家具1台当たりの仕上げ時間(時間) A 90 0 7 5 2 B 160 55 8 4 8 C 40 0 3 8 4 D 実際の生産時間 総利益 100 18800 100 生産能力(時間) 5 940 ≦ 1000 5 720 ≦ 720 2 640 ≦ 640 変化させるセル セル $B$14 $C$14 $D$14 $E$14 名前 A B C D 計算 限界 目的セル 許容範囲内 許容範囲内 値 コスト 係数 増加 減少 0 -10 90 10 1E+30 55 0 160 240 80 0 -130 40 130 1E+30 100 0 100 100 10 制約条件 計算 潜在 制約条件 許容範囲内 許容範囲内 セル 名前 値 価格 右辺 増加 減少 $F$15 家具1台当たりの切断時間(時間) 実際の生産時間 940 0 1000 1E+30 60 $F$16 家具1台当たりの研磨時間(時間) 実際の生産時間 720 15 720 80 400 $F$17 家具1台当たりの仕上げ時間(時間) 実際の生産時間 640 12.5 640 96 352 鉄鉱石配合問題(Blending Problem) • 4鉱山から鉄鉱石を購入し、配合して使用 • 配合されたものは、一定の品質基準を満たす必 要あり(ここでは、元素A,B,C) • 最小費用の配合割合を決めたい(具体的に「何 ton必要」という情報はなし) • この種の配合問題は、いろいろなシナリオで しょっちゅう発生する(dog foodの配合、農薬の 配合、金属の配合、...) 鉄鉱石配合 問題データ 元素 1 A 10 B 90 C 45 コスト 800 ($/ton) 鉱山 2 3 3 8 150 75 25 20 400 600 4 2 175 37 500 必要 最小量 5 100 30 鉄鉱石配合問題のLP定式化 • 変数: Ti=鉱山iの配合比率 (≧0) • 目的関数:最小化 ton当たりの費用 • 制約条件:各元素(A-C)の品質基準満足 配合比率の合計は1 • Min z=800T1+400T2+600T3+500T4 (費用) • s.t. 10T1+ 3T2 + 8T3+ 2T4≧ 5 (元素A) 90T1+150T2+75T3+175T4≧100 (元素B) 45T1+ 25T2+20T3+ 37T4≧ 30 (元素C) T1, T2, T3, T4 ≧ 0(非負条件) この解答は間違い!!! 鉄鉱石配合問題のLP定式化 • 変数: Ti=鉱山iの配合比率 (≧0) • 目的関数:最小化 ton当たりの費用 • 制約条件:各元素(A-C)の品質基準満足 配合比率の合計は1 • Min z=800T1+400T2+600T3+500T4 (費用) • s.t. 10T1+ 3T2 + 8T3+ 2T4≧ 5 (元素A) 90T1+150T2+75T3+175T4≧100 (元素B) 45T1+ 25T2+20T3+ 37T4≧ 30 (元素C) T1+ T2+ T3+ T4= 1 (合計1) T1, T2, T3, T4 ≧ 0(非負条件) 農場経営(Buster Sod) 問題 • • • • 灌漑設備付1,200acresの農場の年間計画 wheat, alfalfa, beefの生産 2,000 acre feet(水量の単位)の用水割当 beef($600/t) wheat($1.60/bushel; 50 bushel/acre) alfalfa(sell $34/t, buy $36/t; 3t/acre) • 「技術的」条件(問題文中の表) • 最大利益(または、最小費用)の計画立案 農場経営問題 「技術的」データ 農場経営(Buster Sod)問題の技術的条件 労働・機械 水 土地 alfalfa Activity 等コスト($) (acre ft)(acres)(tons) 1 acre wheat 8 1.5 1 1 acre alfalfa 30 2.5 1 1 ton of beef 40 0.1 0.05 4 農場経営問題のLP定式化 • ①変数(variables) ②目的関数(objective function) ③制約条件(constraints) • (決定)変数:wheat、alfalfa、beefの生産量 alfalfaの販売・購入量 • 目的関数:「収益ー費用」最大 • 制約条件:土地の許容上限 用水の許容上限 alfalfaのバランス 第1回のキーワード • 数理計画法(数理計画問題)、変数、制約条件、 目的関数(評価関数) • 線形関数とはなにか • 定式化 • 線形計画問題の定式化 • EXCELソルバーによる求解 • 最適解、最適(目的関数)値、限界コスト、潜在 コスト
© Copyright 2025 ExpyDoc