最優化技術——線性規劃

最優化技術——線性規劃

線性規劃基本概念

線性規劃問題就是在一組線性約束條件下,求解目標函數最優解的問題

標準形式

線性規劃問題的標準形式:

  • 目標函數求最大值
  • 所有約束條件均由等式表示
  • 每個約束條件右端常數常爲非負值
  • 所有決策變量爲非負值

改造方法

所有的情況與改造方法

  • 目標函數求最小值則應該改爲求最大值

    • 方法——添加負號

      minF=ΣcjxjmaxF=Σcjxj min F = \Sigma c_jx_j \rightarrow maxF = -\Sigma c_jx_j

  • 約束條件中,某些常數項bi爲負數

    • 方法——在約束條件兩邊乘以負號

      Σai,jxj>3Σai,jxj<3\Sigma a_{i,j}x_j>-3 \rightarrow -\Sigma a_{i,j}x_j<3

  • 約束條件不等式符號爲<=

    • 方法——在不等式左邊加上一個非負變量(松馳變量)

      Σai,jxjbiΣj=1maijxj+xm+1=bi\Sigma a_{i,j}x_j \leq b_i \rightarrow \Sigma_{j=1}^m a_{ij}x_j+x_{m+1}=b_i

  • 約束條件**不等式符號爲>= **

    • 在不等式左邊減去一個非負變量(剩餘變量)

      Σai,jxjbiΣj=1maijxjxm+1=bi\Sigma a_{i,j}x_j \geq b_i \rightarrow \Sigma_{j=1}^m a_{ij}x_j-x_{m+1}=b_i

  • 約束條件中某變量有如下限制:

    • 一、某變量必須爲負數,即:xj0x_j \leq0:

      • 方法——設置一個新的變量

        xj=xjx_j' = -x_j

    • 二、某個變量無符號限制

      • 方法——將該變量拆分成兩個正數的差

        Vk0,Uk0,Xk=VkUkV_k \geq 0, U_k \geq 0,X_k = V_k - U_k

例題

一、

minF=3x1+4x22x3+5x4min F = -3x_1 + 4x_2 -2x_3 + 5x_4

s.t.s.t.

4x1x2+2x3x4=24x_1 - x_2+2x_3-x_4=-2

x1+x2+2x3x414x_1+x_2+2x_3-x_4 \leq14

2x1+3x2x3+2x42-2x_1+3x_2-x_3+2x_4\geq2

x10,x20,x30x_1\geq0,x_2\leq0,x_3\geq0

將上面的式子化成標準型,首先需要檢查上面的式子中有哪些地方不符合我們的要求:

  1. 目標函數爲最小值minF=3x1+4x22x3+5x4min F = -3x_1 + 4x_2 -2x_3 + 5x_4
  2. 等式約束右邊爲負數4x1x2+2x3x4=24x_1 - x_2+2x_3-x_4=-2
  3. 不等式約束x1+x2+2x3x414x_1+x_2+2x_3-x_4 \leq142x1+3x2x3+2x42-2x_1+3x_2-x_3+2x_4\geq2
  4. 約束中有小於零的x10,x20,x30x_1\geq0,x_2\leq0,x_3\geq0

額,經過整理我們發現。。。都不符合,所以需要一條一條的改:

改前 改後
minF=3x1+4x22x3+5x4min F = -3x_1 + 4x_2 -2x_3 + 5x_4 maxS=minF=3x14x2+2x35x4maxS=-minF = 3x_1-4x_2+2x_3-5x_4
4x1x2+2x3x4=24x_1 - x_2+2x_3-x_4=-2 4x1+x22x3+x4=2-4x_1+x_2-2x_3+x_4 = 2
x1+x2+2x3x414x_1+x_2+2x_3-x_4 \leq14 x1+x2+2x3x4+x5=14x_1+x_2+2x_3-x_4+x_5 =14
2x1+3x2x3+2x42-2x_1+3x_2-x_3+2x_4\geq2 2x1+3x2x3+2x4x6=2-2x_1+3x_2-x_3+2x_4 -x_6= 2
x20x_2\leq0 x70,x7=x2x_7 \geq 0 , x_7 = - x_2
x4x_4 無約束 x8,x90,x4=x8x9x_8,x_9\geq0,x_4 = x_8-x_9

整理之後得到:

maxS=minF=3x1+4x7+2x35x8+5x9maxS=-minF = 3x_1+4x_7+2x_3-5x_8+5x_9

s.t.s.t.

4x1x72x3+x8x9=2-4x_1-x_7-2x_3+x_8-x_9 = 2

x1x7+2x3x8+x9+x5=14x_1-x_7+2x_3-x_8+x_9+x_5 =14

2x13x7x3+2x82x9x6=2-2x_1-3x_7-x_3+2x_8-2x_9 - x_6= 2

xi0,j=1,3,5,6,7,8,9x_i \geq 0,j=1,3,5,6,7,8,9

概念之凸集

在這裏插入圖片描述

  • 凸集:如果集合C中任意兩點X1,X2X_1,X_2,其連線上的所有點也都是集合C中的點,稱C爲凸集。
  • 有限個凸集的交集仍然是凸集
  • 頂點:如果凸集C中不存在任何兩個不同的點X1,X2X_1,X_2,使XX成爲這兩個點連線上的一個點。

在這裏插入圖片描述

線性規劃的一些定義

  • 定義一:凡是滿足Ax=bAx=bx0x\geq0的解x=(x1,x2,..,xn)Tx = (x_1,x_2,..,x_n)^T稱爲線性規劃問題的可行解。同時滿足maxZ=cxmax Z = cx的可行解稱爲最優解

  • 定義二:設線性規劃約束方程組的係數矩陣AmnA_{m*n}的秩爲mm,則AA中某mm列組成的任一個mm階可逆陣BB稱爲該線性規劃問題的一個基矩陣,簡稱基。若記B=(p1,p2,,pm)B=(p_1,p_2,…,p_m),則稱pk(k=1,2,m)p_k(k=1,2,…m)爲基B中的一個基向量。則A中其餘n-m個列向量爲非基向量。

    感覺這裏很象最大線性無關組。

  • 定義3:當Ax=bAx=b式中A確定了一個基B後,與基向量pkp_k相對應的決策變量xkx_k稱爲關於基B的一個基變量,而與非基向量所對應的決策變量稱爲非基變量

  • 定義4:設B=(pk1,pk2,,pkm)B=(p_{k_1},p_{k_2},…,p_{k_m})是A中的一個基,對應的基變量爲xk1,xk2,,xkmx_{k_1},x_{k_2},…,x_{k_m},我們稱非基變量的取值均爲零且滿足約束條件的一個解x,爲關於基B的一個基本解

解的確定

基本解的確定

B爲一個基矩陣,XBX_B爲對應的基變量, NN爲非基矩陣,XNX_N爲對應的非基變量,那麼Ax=bAx=b可以寫成:
BXB+NXN=b BX_B+NX_N=b
由這個式子可以推出:
XB=B1bB1NXN X_B = B^{-1}b-B^{-1}NX_N
同時,根據基本解的定義,非基變量的解都是0,所以,最終的解是:
$$
\left[
\begin{matrix}
X_B\
X_N
\end{matrix}
\right]

\left[
\begin{matrix}
B^{-1}b\
0
\end{matrix}
\right]
$$
這樣的解也被稱爲關於基B的基本解,同時有定義五:

  • 滿足非負條件x0x\geq0的基本解稱爲基本可行解

例題

求下列方程組的一個基本解、基本可行解

x1+2x28x_1 + 2x_2 \leq 8

x22x_2\leq 2

解:

  1. 首先將他化成標準形式

    x1+2x2+x3=8x_1+2x_2 +x_3 = 8

    x2+x4=2x_2+x_4 = 2

  2. 根據上方方程得到係數矩陣:

    A=[13100101]A=\left[\begin{matrix}1 & 3 & 1 & 0\\0 & 1 & 0 & 1 \end{matrix} \right]

  3. 取前兩個列向量作爲基向量,後兩個就是非基向量

    B=[1201]B = \left[ \begin{matrix}1 & 2 \\ 0 &1 \end{matrix} \right]

  4. 令非基變量x3,x4=0x_3, x_4 = 0,可以得到基本解

    (4,2,0,0)T(4,2,0,0)^T

圖解法

假設解以下問題

在這裏插入圖片描述

我們可以用圖解法的方法解決(初中生就會的那種)

在這裏插入圖片描述

關於圖解法的一些定理:

  • 定理一:若線性規劃問題存在可行解,則該問題的可行域一定是凸集
  • 定理二:線性規劃問題的基本可行解X對應可行域(凸集)的頂點
  • **定理三:**若問題存在最優解,一定存在一個基本可行解是最優解

看到定理二忽然恍然大悟,原來我初中鋌而走險,每次都只試交點的方法是有科學依據的(逃

定理三也非常有意義,因爲它直接給我們提供了一種解決優化問題的方法:找出所有基本可行解然後再一個一個比較,直接得到最大的,但是可惜的是,這樣的做法時間複雜度過高,電腦有點遭不住。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章