本篇介紹一些筆者認為重要的整數規劃-圖形,邏輯建模技巧與概念,關於整數規劃的用途,可先參考之前這篇: http://discoverforgottenmath.blogspot.tw/2017/09/why-integer-programming-is-important-in.html 而建模技巧是把日常生活中的邏輯給正確的連結到方程式上!! 以下我們都把 $X \in \{0,1\}$ 視為 boolean 決策變數 ======================================= 刻劃出點 Node $i , j$ 跟邊 Arc $(i,j)$ 關係 ======================================= 定義: $X_{i} = 1 \text{ iff } $ 我選擇了點 $i$ $X_{ij} = 1 \text{ iff } $ 我選擇了邊 $(i,j)$ $$(E1) \quad \text{if $(i,j)$ is selected then ($i$ and $j$) are selected} $$ $$ \left\{\begin{array}{c} X_{(i,j)}\leq X_i \\ X_{(i,j)}\leq X_j \\ \end{array}\right.$$ $$(E2) \quad \text{if ($i$ and $j$) are selected then $(i,j)$ is selected } $$ $$ X_{i}+X_{j} \leq 1+X_{(i,j)} $$ $(E1)$ 是現實生活中自然的邏輯: 意涵代表,我選擇了這條邊 $(i,j)$ 則我自然會 cover $i , j$ 這兩個點 $(E2)$ 則不一定會有的邏輯,需思考 $(i,j)$ 的定義 例如: 我定義 $(i,j)$ 為直接從 $i$ 走到 $j$ 則走路徑 $(i \rightarrow j \rightarrow k \rightarrow w)$ 則 $X_{i}=1 , X_{w} =1 $ 但是 $X_{(i,w)} = 0$ ,就不滿足 $(E2)$ 的邏輯 註: 結合 $(E1)$ and $(E2)$ 兩個