提供: Internet Web School
(版間での差分)
|
|
40 行: |
40 行: |
| | | |
| | | |
- | '''Microsoft Excelのソルバーを用いた解法'''
| + | この問題を解くのにはMicrosoft Excelのソルバーや |
- | | + | フリーソフトのOpen Office で提供されるソルバーと同等の機能をもつソフトを用いることができる. |
- |
| + | この問題のMicrosoft Excelのソルバーによる解法例を示す。 |
- | '''1) ソルバーの導入'''
| + | [[ファイル:生産計画.pdf]] |
- | | + | |
- | '''Excel'''のメニュー「'''データ'''」に「'''分析'''」「'''ソルバー'''」がある場合は以下の手続きは不要である.そのまま'''2)ソルバー'''による解法の例を実行する.
| + | |
- | | + | |
- |
| + | |
- | '''Excel'''のメニュー「'''データ'''」に「'''分析'''」「'''ソルバー'''」がない場合
| + | |
- | | + | |
- | '''1-1)''' '''ファイル''' > '''オプション''' > '''アドイン''' の順に選択
| + | |
- | | + | |
- | '''1-2)''' アドインの表示窓'''アクティブでないアプリケーション'''に'''Excelソルバー'''があることを確認
| + | |
- | | + | |
- | '''1-3)''' 画面下の'''管理(A)'''と表示される小さい窓のドロップダウンリスト▼で'''Excelアドイン'''を選択後,
| + | |
- | | + | |
- | '''1-4)''' '''設定(G)'''をクリック
| + | |
- | '''有効なアドイン'''が小窓で表示される. その中の'''ソルバーアドイン'''を選択しチェックを入れ[OK]をクリックする.
| + | |
- | | + | |
- | | + | |
- | '''2) ソルバーによる解法の例'''
| + | |
- | | + | |
- | Excelに下記の作成例のように表1のデータを作成する.
| + | |
- | | + | |
- | [[ファイル:LP-Fig.2.jpg]] | + | |
- | | + | |
- | この作成例では
| + | |
- | セル B2,C2,D2 が 製品A,B,Cのそれぞれの生産量
| + | |
- | <math>x1,x2,x3</math>を表す.
| + | |
- | | + | |
- | 線形の一次式
| + | |
- | | + | |
- | <math>
| + | |
- | 4x_1+0x_2+7x_3 \\
| + | |
- | 1x_1+3x_2+9x_3\\
| + | |
- | 6x_1+0x_2+14x_3\\
| + | |
- | 4x_1+10x_2+1x_3
| + | |
- | </math>
| + | |
- | | + | |
- | をE3, E4, E5, E6に入力している.
| + | |
- | ここで,sumproduct(B4:D4,B$2:D$2)はベクトル(B4,C4,D4) と(B2,C2,D2)の内積B4*B2+C4*C2+D4*D2
| + | |
- | であり
| + | |
- | <math>4x_1+0x_2+7x_3</math>を表す.
| + | |
- | | + | |
- | F3,F4, F5, F6には,原材料Ⅰ,Ⅱ,Ⅲ,Ⅳの使用できる量の上限を入力している.
| + | |
- | | + | |
- | E7には
| + | |
- | | + | |
- | | + | |
- | <math>
| + | |
- | L\left(x_1,x_2, x_3 \right)=80x_1+110x_2+95x_3 \qquad (3)
| + | |
- | </math>
| + | |
- | | + | |
- | を表す式を入力している.
| + | |
- | | + | |
- | [[ファイル:LP-Fig.3.jpg]]
| + | |
- | | + | |
- | 表のデータを入力後,
| + | |
- | | + | |
- | メニュー 「データ」,「分析」,「ソルバー」の順にクリックしてソルバーのパラメータ入力用の窓を開く.
| + | |
- | | + | |
- | 目的の設定という欄にセルE7を指定する
| + | |
- | | + | |
- | 目標値には「最大値」を選択し,チェックを入れる.
| + | |
- | | + | |
- | 変数セルの変更欄には<math>x_1,x_2,x_3</math>を表すセルB2からD2をドラックして指定する.
| + | |
- | | + | |
- | | + | |
- | 制約条件の対象の欄には
| + | |
- | この例題の制約条件式
| + | |
- | | + | |
- | <math>
| + | |
- | 4x_1+0x_2+7x_3 \leq 90 \\
| + | |
- | 1x_1+3x_2+9x_3 \leq 60 \\
| + | |
- | 6x_1+0x_2+14x_3 \leq 110 \\
| + | |
- | 4x_1+10x_2+1x_3 \leq 75 \qquad (1)
| + | |
- | </math>
| + | |
- | | + | |
- | を表す式を入力する.
| + | |
- |
| + | |
- | このためには,入力窓の「追加」をクリックし制約条件の追加入力用の窓を表示させ,
| + | |
- | 例えば
| + | |
- | <math>
| + | |
- | 4x_1+0x_2+7x_3 \leq 90
| + | |
- | </math>
| + | |
- | を表す式を入力するのであれば
| + | |
- | セルの参照欄に
| + | |
- | <math>
| + | |
- | 4x_1+0x_2+7x_3 \leq 90
| + | |
- | </math>
| + | |
- | を表すセルE3を指定
| + | |
- | ≦,=,≧などのドロップダウンリストで≦を選択し,制約条件の欄には上限値の90を入力する.
| + | |
- | | + | |
- | 入力後さらに「追加」をクリックし他の3つの制約条件式も同様に入力する.
| + | |
- | | + | |
- | さらに, 制約条件式
| + | |
- | | + | |
- | <math>
| + | |
- | 0 \leq x_1,0 \leq x_2,0 \leq x_3 \qquad (2)
| + | |
- | </math>
| + | |
- | | + | |
- | を指定するため
| + | |
- | 「制約のない変数を非負数にする」 にチェックを入れる.
| + | |
- | | + | |
- | | + | |
- | [[ファイル:LP-Fig.4.jpg]]
| + | |
- | | + | |
- | | + | |
- | 最後に「解決」をクリックすると以下の結果が出力される.
| + | |
- | | + | |
- | | + | |
- | [[ファイル:LP-Fig.5.jpg]]
| + | |
- | | + | |
- | | + | |
- | <math>x_1=7.8,x_2=3.9,x_3=4.5</math>
| + | |
- | のときに
| + | |
- | | + | |
- | <math>
| + | |
- | L\left(x_1,x_2, x_3 \right)=80x_1+110x_2+95x_3
| + | |
- | </math>
| + | |
- | | + | |
- | が最大値1485をもつことを表す.制約条件は満たされている.
| + | |
2020年11月22日 (日) 04:28時点における版
生産計画
ある企業では製品A,B,Cを原料Ⅰ,Ⅱ,Ⅲ,Ⅳ用いて生産している. 製品A,B,C の1単位当たり利益をそれぞれ80,110,95とする.
また, 製品A,B,Cを1単位生産するのに必要な原料Ⅰ,Ⅱ,Ⅲ,Ⅳのそれぞれ量と使用可能な上限が次の表で与えられる.
これらの条件のもとに,利益を最大にするには製品A,B,Cをそれぞれ,どれだけ生産すれば良いか?.
この問題は以下のように数学的に定式化される.
線形計画法
製品A,B,Cをそれぞれ\(x_1,x_2,x_3\) 単位生産するとき\(x_1,x_2,x_3\)は以下の不等式を満たす.
\(
4x_1+0x_2+7x_3 \leq 90 \\
1x_1+3x_2+9x_3 \leq 60 \\
6x_1+0x_2+14x_3 \leq 110 \\
4x_1+10x_2+1x_3 \leq 75 \qquad (1)
\)
さらに各製品生産量は負ではないから
\(
0 \leq x_1,0 \leq x_2,0 \leq x_3 \qquad (2)
\)
この制約条件のもとに
\(
L\left(x_1,x_2, x_3 \right)=80x_1+110x_2+95x_3 \qquad (3)
\)
を最大にする\(x_1,x_2, x_3\)を求めよ.
\((1)\)式のように変数に関する制約条件式が1次式で与えられ,
\((3)\)式のように評価関数も1次式で与えられる問題は線形計画と呼ばれる.
この問題を解くのにはMicrosoft Excelのソルバーや
フリーソフトのOpen Office で提供されるソルバーと同等の機能をもつソフトを用いることができる.
この問題のMicrosoft Excelのソルバーによる解法例を示す。
ファイル:生産計画.pdf