【运筹学】表上作业法 ( 求初始基可行解 | 最小元素法 )
文章目錄
- 一、表上作業法 第一步 : 確定初始基可行解
- 二、最小元素法
一、表上作業法 第一步 : 確定初始基可行解
運輸問題如下 : 下面的表格代表 333 個產地 , 444 個銷地 的運輸規劃問題 , 表格中的內容是 某產地運往某銷地的運費 ;
上述運輸規劃問題 總共有 m×n=3×4=12\rm m \times n = 3 \times 4 = 12m×n=3×4=12 個變量 ;
基變量個數 =m+n?1=3+4?1=6\rm = m + n - 1 = 3 + 4 - 1 = 6=m+n?1=3+4?1=6 ;
初始基可行解中需要找 666 個變量作為基變量 , 其取值是非 000 的 ; 剩余的 666 個變量是非基變量 , 取值為 000 ;
運輸規劃的目的是使總運費最小 ,
這里引入 最小元素法 思想 , 基本原則是 " 安排運輸方案時 , 從單位成本最小的開始安排 " , 優先滿足運費最小的運輸 , 然后再考慮其它情況 ;
二、最小元素法
最小元素法基本思想 :
就近供應 , 從運費最小的地方開始供應 , 然后逐步供應運費稍高的地方 , 直到最終供應完畢為止 ;
每個表格中需要填寫兩部分 , 第一部分是 cij\rm c_{ij}cij? 運費 , 第二部分是變量 xij\rm x_{ij}xij? ;
第 111 個基變量 :
從所有 沒有被劃掉 的并且 沒有被安排 的的運費中找到最小的 , 即 111 ; 對應表格第 222 行第 111 列 , A2\rm A_2A2? 產地運往 B1\rm B_1B1? 銷地的運費 ;
產地分析 : 對于產地 A2\rm A_2A2? 來說 , 其生產 444 個 , 已經安排了 000 個 , 還可以再安排 444 個 ;
銷地分析 : 對于銷地 B1\rm B_1B1? 來說需求 333 個 , 已經安排了 000 個 , 還可以再安排 333 個 ;
如果要使運費最低 , 優先讓運費最低的情況 , 最大量運輸 , 這里直接從 A2\rm A_2A2? 向 B1\rm B_1B1? 運輸 333 個產品 ;
| A1\rm A_1A1? | 333 | 111111 | 333 | 101010 | 777 |
| A2\rm A_2A2? | 1,31, 31,3 | 999 | 222 | 888 | 444 |
| A3\rm A_3A3? | 777 | 444 | 101010 | 555 | 999 |
| 銷量 | 333 | 666 | 555 | 666 |
此時 B1\rm B_1B1? 的銷量已經全部消耗完畢 , 該列就不需要安排其它產地向 B1\rm B_1B1? 銷地運輸了 , 可以劃掉這一列 , 討論其它列的運輸問題 ;
第 222 個基變量 :
從所有 沒有被劃掉 的并且 沒有被安排 的運費中找到最小的 , 即 222 ; 對應表格第 222 行第 333 列 , A2\rm A_2A2? 產地運往 B3\rm B_3B3? 銷地的運費 ;
產地分析 : 對于產地 A2\rm A_2A2? 來說 , 其生產 444 個 , 已經安排了 333 個 , 還可以再安排 111 個 ;
銷地分析 : 對于銷地 B3\rm B_3B3? 來說需求 555 個 , 已經安排了 000 個 , 還可以再安排 555 個 ;
如果要使運費最低 , 優先讓運費最低的情況 , 最大量運輸 , 這里直接從 A2\rm A_2A2? 向 B3\rm B_3B3? 運輸 111 個產品 ;
| A1\rm A_1A1? | 333 | 111111 | 333 | 101010 | 777 |
| A2\rm A_2A2? | 1,31, 31,3 | 999 | 2,12,12,1 | 888 | 444 |
| A3\rm A_3A3? | 777 | 444 | 101010 | 555 | 999 |
| 銷量 | 333 | 666 | 555 | 666 |
此時 A2\rm A_2A2? 的產量已經全部消耗完畢 , 該行就不需要安排向其它銷地運輸了 , 可以劃掉這一行 , 討論其它行列的運輸問題 ;
第 333 個基變量 :
從所有 沒有被劃掉 的并且 沒有被安排 的的運費中找到最小的 , 即 333 ; 對應表格第 111 行第 333 列 , A1\rm A_1A1? 產地運往 B3\rm B_3B3? 銷地的運費 ;
產地分析 : 對于產地 A1\rm A_1A1? 來說 , 其生產 777 個 , 已經安排了 000 個 , 還可以再安排 777 個 ;
銷地分析 : 對于銷地 B3\rm B_3B3? 來說需求 555 個 , 已經安排了 111 個 , 還可以再安排 444 個 ;
如果要使運費最低 , 優先讓運費最低的情況 , 最大量運輸 , 這里直接從 A1\rm A_1A1? 向 B3\rm B_3B3? 運輸 444 個產品 ;
| A1\rm A_1A1? | 333 | 111111 | 3,43, 43,4 | 101010 | 777 |
| A2\rm A_2A2? | 1,31, 31,3 | 999 | 2,12,12,1 | 888 | 444 |
| A3\rm A_3A3? | 777 | 444 | 101010 | 555 | 999 |
| 銷量 | 333 | 666 | 555 | 666 |
此時 B3\rm B_3B3? 的銷量已經全部消耗完畢 , 該列就不需要安排向其它產地向 B3\rm B_3B3? 銷地運輸了 , 可以劃掉這一列 , 討論其它行列的運輸問題 ;
第 444 個基變量 :
從所有 沒有被劃掉 的并且 沒有被安排 的的運費中找到最小的 , 即 444 ; 對應表格第 333 行第 222 列 , A3\rm A_3A3? 產地運往 B2\rm B_2B2? 銷地的運費 ;
產地分析 : 對于產地 A3\rm A_3A3? 來說 , 其生產 999 個 , 已經安排了 000 個 , 還可以再安排 999 個 ;
銷地分析 : 對于銷地 B2\rm B_2B2? 來說需求 666 個 , 已經安排了 000 個 , 還可以再安排 666 個 ;
如果要使運費最低 , 優先讓運費最低的情況 , 最大量運輸 , 這里直接從 A3\rm A_3A3? 向 B2\rm B_2B2? 運輸 666 個產品 ;
| A1\rm A_1A1? | 333 | 111111 | 3,43, 43,4 | 101010 | 777 |
| A2\rm A_2A2? | 1,31, 31,3 | 999 | 2,12,12,1 | 888 | 444 |
| A3\rm A_3A3? | 777 | 4,64,64,6 | 101010 | 555 | 999 |
| 銷量 | 333 | 666 | 555 | 666 |
此時 B2\rm B_2B2? 的銷量已經全部消耗完畢 , 該列就不需要安排向其它產地向 B2\rm B_2B2? 銷地運輸了 , 可以劃掉這一列 , 討論其它行列的運輸問題 ;
第 555 個基變量 :
從所有 沒有被劃掉 的并且 沒有被安排 的的運費中找到最小的 , 即 555 ; 對應表格第 333 行第 444 列 , A3\rm A_3A3? 產地運往 B4\rm B_4B4? 銷地的運費 ;
產地分析 : 對于產地 A3\rm A_3A3? 來說 , 其生產 999 個 , 已經安排了 666 個 , 還可以再安排 333 個 ;
銷地分析 : 對于銷地 B4\rm B_4B4? 來說需求 666 個 , 已經安排了 000 個 , 還可以再安排 666 個 ;
如果要使運費最低 , 優先讓運費最低的情況 , 最大量運輸 , 這里直接從 A3\rm A_3A3? 向 B4\rm B_4B4? 運輸 333 個產品 ;
| A1\rm A_1A1? | 333 | 111111 | 3,43, 43,4 | 101010 | 777 |
| A2\rm A_2A2? | 1,31, 31,3 | 999 | 2,12,12,1 | 888 | 444 |
| A3\rm A_3A3? | 777 | 4,64,64,6 | 101010 | 5,35,35,3 | 999 |
| 銷量 | 333 | 666 | 555 | 666 |
此時 A3\rm A_3A3? 的產量已經全部消耗完畢 , 該行就不需要安排向其它銷地運輸了 , 可以劃掉這一行 , 討論其它行列的運輸問題 ;
第 666 個基變量 :
從所有 沒有被劃掉 的并且 沒有被安排 的的運費中找到最小的 , 即 101010 ; 對應表格第 111 行第 444 列 , A1\rm A_1A1? 產地運往 B4\rm B_4B4? 銷地的運費 ;
產地分析 : 對于產地 A1\rm A_1A1? 來說 , 其生產 777 個 , 已經安排了 444 個 , 還可以再安排 333 個 ;
銷地分析 : 對于銷地 B4\rm B_4B4? 來說需求 666 個 , 已經安排了 333 個 , 還可以再安排 333 個 ;
如果要使運費最低 , 優先讓運費最低的情況 , 最大量運輸 , 這里直接從 A1\rm A_1A1? 向 B4\rm B_4B4? 運輸 333 個產品 ;
| A1\rm A_1A1? | 333 | 111111 | 3,43, 43,4 | 10,310,310,3 | 777 |
| A2\rm A_2A2? | 1,31, 31,3 | 999 | 2,12,12,1 | 888 | 444 |
| A3\rm A_3A3? | 777 | 4,64,64,6 | 101010 | 5,35,35,3 | 999 |
| 銷量 | 333 | 666 | 555 | 666 |
此時 A1\rm A_1A1? 的產量已經全部消耗完畢 , 該行就不需要安排向其它銷地運輸了 , 可以劃掉這一行 , 討論其它行列的運輸問題 ;
此時 B4\rm B_4B4? 的銷量已經全部消耗完畢 , 該列就不需要安排向其它產地向 B4\rm B_4B4? 銷地運輸了 , 可以劃掉這一列 , 討論其它行列的運輸問題 ;
至此所有的行列全部劃掉 , 所有的產銷全部安排完畢 ;
此時找到的解就是運輸問題的可行解 , 并且是基可行解 ;
基變量個數分析 : 在上述找基變量的時候 , 有 m\rm mm 行 n\rm nn 列 , 每找到一個基變量 , 或者劃掉一行 , 或者劃掉一列 , 最后的一個基變量同時花掉了一行一列 , 因此這里有 m+n?1\rm m + n - 1m+n?1 個基變量 ;
總結
以上是生活随笔為你收集整理的【运筹学】表上作业法 ( 求初始基可行解 | 最小元素法 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【运筹学】运输规划 ( 运输规划问题模型
- 下一篇: 【运筹学】表上作业法 ( 最小元素法分析