2022.04.18 DataScienceA 授業内容
この記事は職業訓練校の受業の内容の要点をまとめたものです。 職業訓練校を検討されている方が居たら参考にしてください。
DataScienceA 2022.04.18
OR手法
組織データによる最適化
- OR手法
- 価値ある情報・データ
- OR手法
Operations Research(オペレーションズリサーチ)
- 最適化
- 最大化
- 最小化
上記問題を線形計画法で解く
- 定式化とは
- 目的関数(Objective Function): max. Z = 100x + 150y
- 制約条件:
- A --> 2x + y ≦ 100
- B --> x + 2y ≦ 80
- x , y ≧ 0 //非負条件
- 製品は作るか作らないか(0個以上作る)
2x + y = 100 x + 2y = 80 y = 100 - 2x x = 80 - 2y
x + 2(100 - 2x) = 80 x + 200 - 4x = 80 200x - 4x = 80 x - 4x = -120 -3x = -120 x = 40
2(80 - 2y) + y = 100 160 -4y + y = 100 -3y = -60 y = 20 100 * 40 + 150 * 20 = 4000 + 3000 --> 7000
LP問題 連立方程式を解く
// 先生の解き方 ① 2x + y = 100 ② x + 2y = 80 ①' 4x + 2y = 200 // xを消すために全体に2をかける ①'-② 4x + 2y = 200 - x + 2y = 80 = 3x = 120 --> x = 40 ②にx=40を代入 40 + 2y = 80 --> 2y = 40 --> y = 20 Z = 100x + 150y に上記x, yを代入してZを求める。
なぜ連立方程式を解くのか!
グラフによる線形計画法の最適解 解放イメージ 端点(交点)で最適解 線形計画法の問題は、交点(端点と呼ぶ)にあり!
線形計画法の定式化
- 目的関数: z = x + y
- 制約条件
- ① 2x + 3y ≦ 12
- ② 2x + y ≦ 8
- x ≧ 0
- y ≧ 0 連立方程式は上記4つを全て満たしているということ。
目的関数 z の最大値及び最小値を求めよ。 ①の式にx=0を入れた時の点(x0, y4)となり、グラフに点を入れる。 ①の式にy=0を入れた時の点(x6, y0)となり、グラフに点を入れる。 --> 2点を繋ぐ線を引く(≦ 12を示している) ②の式にも同様にx=0, y=0 を入れ、2点を求め、線を引く。 ①かつ、②の範囲の四角形が出る(4つの角が出る = 交点) 上記2線がぶつかった点を③とする。
目的関数(慣例的にzとする) z = x + y z - x = y y = -x + z (x = z - y) zは定数、切片と呼ぶ。 -x は -45°の線 この-45°の線を動かしていく。 x ≧ 0, y ≧ 0 なので、最小化はx0, y0を通った時なので0 最大化は-45°の線が③と重なった時のyを求めると出る。 ※y = -x + z と z = x + y は同じ式(変形しただけ)
LP問題
- 生産
- 栄養
- 輸送
Excel (Solver)
手順
ファイル -> オプション -> アドイン -> 設定 -> ✅ソルバーアドイン -> ok
- Excelの四則演算
- -> +
- -> -
- × -> *
- ÷ -> /