最佳化基礎

Python 的供應鏈分析

Aaren Stubberfield

Supply Chain Analytics Mgr.

什麼是供應鏈

  • 供應鏈包含所有直接或間接滿足顧客需求的相關方。¹
  • 包含:
    • 供應商
    • 內部製造
    • 外包物流供應商(如第三方供應商)
1 Chopra, Sunil, and Peter Meindl. _Supply Chain Management: Strategy, Planning, and Operations._ Pearson Prentice-Hall, 2007.
Python 的供應鏈分析

什麼是供應鏈最佳化

  • 在限制條件下,找出達成目標的最佳路徑。

物料由供應商流向顧客的示意圖

Python 的供應鏈分析

LP 速成

  • 線性規劃(LP)是強大的最佳化建模工具。

  • 以需求為線性關係的數學模型來進行最佳化

  • LP 有 3 個基本元件:

    • 決策變數——你可控制的量
    • 目標函式——用變數表達目標的數學式
    • 限制式——描述解的限制的數學式
Python 的供應鏈分析

入門範例

用 LP 規劃運動菜單,在固定時間內燃燒最多熱量。

伏地挺身 跑步
分鐘 每下 0.2 分鐘 每英里 10 分鐘
卡路里 每下 3 卡 每英里 130 卡

限制——只有 10 分鐘可運動

Python 的供應鏈分析

LP 的基本元件

決策變數——可控制的是:

  • 伏地挺身次數與跑步英里數

目標函式——用變數表達目標的數學式:

  • Max (3 * 伏地挺身次數 + 130 * 跑步英里數)

限制式——描述解的限制的數學式:

  • 0.2 * 伏地挺身次數 + 10 * 跑步英里數 ≤ 10
  • 伏地挺身次數 ≥ 0
  • 跑步英里數 ≥ 0
Python 的供應鏈分析

範例解答

最佳解:

  • 伏地挺身 50 下
  • 跑步 0 英里

燃燒卡路里:150

運動範例可行解的圖表(含最佳點)

Python 的供應鏈分析

LP vs IP vs MIP

術語 決策變數型態
Linear Programing (LP) 僅連續型
Integer Programing (IP) 僅離散或整數
Mixed Integer Programing (MIP) 連續與離散混合
Python 的供應鏈分析

重點總結

  • 說明了供應鏈最佳化。
  • 定義了線性規劃與其基本元件:
    • 決策變數
    • 目標函式
    • 限制式
  • 說明了 LP 與 IP、MIP 的差異。
Python 的供應鏈分析

一起來練習吧!

Python 的供應鏈分析

Preparing Video For Download...