日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 )

發(fā)布時間:2025/6/17 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 ) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

  • 一、單純形法計算示例
  • 二、轉(zhuǎn)化標準形式
  • 三、查找初始基可行解
  • 四、列出單純形表
  • 五、最優(yōu)解判定



在上一篇博客 【運籌學】線性規(guī)劃數(shù)學模型 ( 單純形法 | 最優(yōu)解判定原則 | 單純形表 | 系數(shù)計算方法 | 根據(jù)系數(shù)是否小于等于 0 判定最優(yōu)解 ) 博客中講解了最優(yōu)解判定原則 , 基本原理就是

  • 目標函數(shù)推導后的結(jié)果 maxZ=b0+(CNT?CBTB?1N)XNmaxZ = b_0 + ( C_N^T - C_B^T B^{-1}N )X_NmaxZ=b0?+(CNT??CBT?B?1N)XN? ;

  • 如果滿足條件 : " XN=OX_N = OXN?=O 時 , 目標函數(shù)取值最大 " , 那么該 BBB 矩陣對應的基可行解就是最優(yōu)解 ( 根據(jù)定理得出 ) ;

  • (CNT?CBTB?1N)( C_N^T - C_B^T B^{-1}N )(CNT??CBT?B?1N) 計算結(jié)果中 , 每個分量的值都小于等于 000 時 , 該解就是最優(yōu)解 ;

  • CNC_NCN? , CBC_BCB? , B?1NB^{-1}NB?1N 寫入單純形表中 , 方便計算 ;

  • (CNT?CBTB?1N)=(cm+1cm+2?cn)?(c1c2?cm)×[a1,m+1?a1n???am,m+1?amn]( C_N^T - C_B^T B^{-1}N ) = \begin{pmatrix} c_{m+1} \quad c_{m+2} \quad \cdots \quad c_n \end{pmatrix} - \begin{pmatrix} c_{1} \quad c_{2} \quad \cdots \quad c_m \end{pmatrix} \times \begin{bmatrix} &a_{1,m+1} & \cdots & a_{1n} & \\\\ &\vdots & \vdots & \vdots & \\\\ &a_{m,m+1} & \cdots & a_{mn} & \end{bmatrix}(CNT??CBT?B?1N)=(cm+1?cm+2??cn??)?(c1?c2??cm??)×?????????a1,m+1??am,m+1??????a1n??amn???????????

  • 根據(jù)上述公式 , 每個系數(shù)的計算公式為 : σj=cj?∑ciaij\sigma_j = c_j - \sum c_i a_{ij}σj?=cj??ci?aij? , 其中 cjc_jcj? 對應的是非基變量在目標函數(shù)系數(shù) , cic_ici? 是基變量在目標函數(shù)中的系數(shù) , aija_{ij}aij?B?1NB^{-1}NB?1N 中的矩陣向量 , 代表一列 ;


單純形法解線性規(guī)劃的三大問題 : 查找初始基可行解 , 判定是否是最優(yōu)解 , 如何迭代基可行解 ;


在前幾篇博客中講解了 如何查找初始基可行解 , 與 判定是否是最優(yōu)解 , 本篇博客中講解 如何進行迭代 ;





一、單純形法計算示例



使用單純形法求解線性規(guī)劃最優(yōu)解 :


maxZ=3x1+4x2{2x1+x2≤40x1+3x2≤30xj≥0(j=1,2)\begin{array}{lcl} max Z = 3x_1 + 4x_2 \\ \\ \begin{cases} 2 x_1 + x_2 \leq 40 \\\\ x_1 + 3x_2 \leq 30 \\ \\x_j \geq 0 & (j = 1 , 2 ) \end{cases}\end{array}maxZ=3x1?+4x2?????????????????2x1?+x2?40x1?+3x2?30xj?0?(j=1,2)??





二、轉(zhuǎn)化標準形式



首先將該線性規(guī)劃轉(zhuǎn)為標準形式 :

參考 【運籌學】線性規(guī)劃數(shù)學模型標準形式 ( 標準形式 | 目標函數(shù)轉(zhuǎn)化 | 決策變量轉(zhuǎn)化 | 約束方程轉(zhuǎn)化 | 固定轉(zhuǎn)化順序 | 標準形式轉(zhuǎn)化實例 ) 線性規(guī)劃 普通形式 -> 標準形式 轉(zhuǎn)化順序說明 博客 , 先處理變量約束 , 再將不等式轉(zhuǎn)為等式 , 最后更新目標函數(shù) ;


① 變量約束 : 首先查看變量約束 , 兩個變量都是 ≥0\geq 00 的 , 符合線性規(guī)劃標準形式要求 ;

② 不等式轉(zhuǎn)換 : 兩個等式都是 小于等于不等式 , 需要 在不等式左側(cè)加入松弛變量 , 將其轉(zhuǎn)為等式 ;

  • 2x1+x2≤402 x_1 + x_2 \leq 402x1?+x2?40 , 左側(cè)加入松弛變量 x3x_3x3? , 變?yōu)?2x1+x2+x3=402 x_1 + x_2 + x_3 = 402x1?+x2?+x3?=40
  • x1+3x2≤30x_1 + 3x_2 \leq 30x1?+3x2?30 , 左側(cè)加入松弛變量 x4x_4x4? , 變?yōu)?x1+3x2+x4=30x_1 + 3x_2 + x_4 = 30x1?+3x2?+x4?=30

③ 更新目標函數(shù) :x3x_3x3?x4x_4x4? 加入到目標函數(shù)中 , 得到新的目標函數(shù) maxZ=3x1+4x2+0x3+0x4max Z = 3x_1 + 4x_2 + 0x_3 + 0x_4maxZ=3x1?+4x2?+0x3?+0x4? ;



此時線性規(guī)劃標準形式為 :

maxZ=3x1+4x2+0x3+0x4{2x1+x2+x3+0x4=40x1+3x2+0x3+x4=30xj≥0(j=1,2,3,4)\begin{array}{lcl} max Z = 3x_1 + 4x_2 + 0x_3 + 0x_4 \\ \\ \begin{cases} 2 x_1 + x_2 + x_3 + 0x_4 = 40 \\\\ x_1 + 3x_2 + 0x_3 + x_4 = 30 \\\\ x_j \geq 0 & (j = 1 , 2 , 3 , 4 ) \end{cases}\end{array}maxZ=3x1?+4x2?+0x3?+0x4?????????????????2x1?+x2?+x3?+0x4?=40x1?+3x2?+0x3?+x4?=30xj?0?(j=1,2,3,4)??





三、查找初始基可行解



找基矩陣 :


上述線性規(guī)劃標準形式的系數(shù)矩陣為 [21101301]\begin{bmatrix} &2 & 1 & 1 & 0 & \\\\ & 1 & 3 & 0 & 1 & \end{bmatrix}????21?13?10?01????? , 其中子矩陣中有 [1001]\begin{bmatrix} & 1 & 0 & \\\\ & 0 & 1 & \end{bmatrix}????10?01????? 單位陣 III ;


使用該單位陣 III 作為基矩陣 , 單位陣肯定是可逆的 , 其對應的基解 , 解出后的值就是右側(cè)的常數(shù)值 , 肯定大于等于 000 , 是基可行解 ;





四、列出單純形表



列出單純形表 :



cjc_jcj?cjc_jcj?333444000000
CBC_BCB? 基變量系數(shù) (目標函數(shù))基變量常數(shù) bbbx1x_1x1?x2x_2x2?x3x_3x3?x4x_4x4?θi\theta_iθi?
000 ( 目標函數(shù) x3x_3x3? 系數(shù) c3c_3c3? )x3x_3x3?404040222111111000
000 ( 目標函數(shù) x4x_4x4? 系數(shù) c4c_4c4?)x4x_4x4?303030111333000111
σj\sigma_jσj?333444000000

基變量是 x3x_3x3?x4x_4x4? , 基變量在約束條件中的系數(shù)矩陣 [1001]\begin{bmatrix} &1 & 0 & \\\\ &0 & 1 & \end{bmatrix}????10?01????? 就是基矩陣 , 這是個單位陣 ;

基變量是 x3x_3x3?x4x_4x4? 在目標函數(shù)中的系數(shù)是 (00)\begin{pmatrix} \quad 0 \quad 0 \quad \end{pmatrix}(00?) ;

此時的基解是 (004030)\begin{pmatrix} \quad 0 \quad \\ \quad 0 \quad \\ \quad 40 \quad \\ \quad 30 \quad \\ \end{pmatrix}?????004030?????? , 該解是初始解 , 下面判定該解是否是最優(yōu)解 ;





五、最優(yōu)解判定



使用 檢驗數(shù)矩陣 (CNT?CBTB?1N)( C_N^T - C_B^T B^{-1}N )(CNT??CBT?B?1N) 判斷上述解 , 是否是最優(yōu)解 , 該矩陣計算結(jié)果中所有的數(shù) , 都是檢驗數(shù) σ\sigmaσ , 如果 所有的數(shù)都小于等于 000 , 說明該解就是最優(yōu)解 ;


這里只求非基變量的檢驗數(shù) , 即 x1x_1x1? , x2x_2x2? 的檢驗數(shù) ;


列出目標函數(shù)非基變量系數(shù) (CNT?CBTB?1N)( C_N^T - C_B^T B^{-1}N )(CNT??CBT?B?1N) 矩陣 :

  • 非基變量在目標函數(shù)中的系數(shù)矩陣 : CNT=(34)C_N^T=\begin{pmatrix} \quad 3 \quad 4 \quad \end{pmatrix}CNT?=(34?)

  • 基變量在目標函數(shù)中的敘述矩陣 : CBT=(00)C_B^T = \begin{pmatrix} \quad 0 \quad 0 \quad \end{pmatrix}CBT?=(00?)

  • B?1NB^{-1}NB?1N 是系數(shù)矩陣中經(jīng)過矩陣變換后 , 基變量系數(shù)是單位陣 III , 非基變量系數(shù)是 B?1NB^{-1}NB?1N : B?1N=[2113]B^{-1}N =\begin{bmatrix} &2 & 1 & \\\\ &1 & 3 & \end{bmatrix}B?1N=????21?13?????


(CNT?CBTB?1N)=CNT=(34)?(00)×[2113]( C_N^T - C_B^T B^{-1}N ) = C_N^T=\begin{pmatrix} \quad 3 \quad 4 \quad \end{pmatrix} - \begin{pmatrix} \quad 0 \quad 0 \quad \end{pmatrix} \times \begin{bmatrix} &2 & 1 & \\\\ &1 & 3 & \end{bmatrix}(CNT??CBT?B?1N)=CNT?=(34?)?(00?)×????21?13?????

=(σ1σ2)= \begin{pmatrix} \quad \sigma_{1} \quad \sigma_{2} \quad \end{pmatrix}=(σ1?σ2??)


其中 σ1\sigma_{1}σ1? 是目標函數(shù)中 x1x_1x1? 的系數(shù) , σ2\sigma_{2}σ2? 是目標函數(shù)中的 x2x_2x2? 的系數(shù) ;

如果上述兩個系數(shù)都小于等于 000 , 那么當 非基變量 XN=(x1x2)X_N =\begin{pmatrix} x_{1} \\ x_{2} \end{pmatrix}XN?=(x1?x2??) 取值為 000 , 目標函數(shù)取值最大 ;


系數(shù)的計算公式為 : σj=cj?∑ciaij\sigma_j = c_j - \sum c_i a_{ij}σj?=cj??ci?aij? , 其中 cjc_jcj? 對應的是非基變量在目標函數(shù)系數(shù) , cic_ici? 是基變量在目標函數(shù)中的系數(shù) , aija_{ij}aij?B?1NB^{-1}NB?1N 中的矩陣向量 , 代表一列 ;



σ1=c1?(c3a11+c4a12)\sigma_{1} = c_1 - ( c_3 a_{11} + c_4 a_{12} )σ1?=c1??(c3?a11?+c4?a12?)

σ1=3?(0×2)?(0×1)=3\sigma_{1} =3 - (0 \times 2) - (0 \times 1) = 3σ1?=3?(0×2)?(0×1)=3 , 是從下面的單純形表中的如下位置提取的數(shù)值 ;

σ2=c2?(c3a21+c4a22)\sigma_{2} = c_2 - ( c_3 a_{21} + c_4 a_{22} )σ2?=c2??(c3?a21?+c4?a22?)

σ2=4?(0×1)?(0×3)=4\sigma_{2} =4 - (0 \times 1) - (0 \times 3) = 4σ2?=4?(0×1)?(0×3)=4 , 是從下面的單純形表中的如下位置提取的數(shù)值 ;


如果這兩個系數(shù) , 如果都小于等于 000 , 該 基可行解(004030)\begin{pmatrix} \quad 0 \quad \\ \quad 0 \quad \\ \quad 40 \quad \\ \quad 30 \quad \\ \end{pmatrix}?????004030?????? 才是最優(yōu)解 , 這兩個系數(shù)都大于 000 , 因此不是最優(yōu)解 ;

總結(jié)

以上是生活随笔為你收集整理的【运筹学】线性规划数学模型 ( 单纯形法 | 最优解判定原则 | 线性规划求解示例 )的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。