《一》線性規劃的解法——matlab學習

數學建模我們隊伍中我主要負責程序編碼部分,所以在這里做學習記錄,方便之后的查找使用。
我會盡量的做一個數學建模系列的專題。本次是第一個關于線性規劃的解法。

matlab系列

前期知識儲備

一.matlab 安裝(本文不做介紹,簡書上有很多)

二.矩陣乘法知識儲備

  • 1.行向量 1*m的矩陣
  • 2.列向量 n*1的矩陣
  • 3.矩陣乘法 mp的矩陣A和Pn的矩陣B相乘 得到m*n的結果矩陣。

三了解matlab函數中的方法調用

首先在matlab中有著關于這種線性方程的基本形式,我們首先要將我們要進行計算的方程化成基本形式,然后套用內部公式即可。

線性方程的基本形式

其次我們查看一下線性函數的基本方法參數

線性函數的方法

之后我們介紹一下方法參數的含義
在基本形式的那個圖片中我們可以看到,f,x,b,beq,ub都是向量,而A和aeq是矩陣。

  • f:這里指的是我們要的目標函數的系數,(這里的函數是指我們經過我們標準化之后的,如果要求最大值,可以加負號)
  • A: 矩陣,是表示圖中的不等關系的矩陣,將所有的不等關系化為<= ,然后系數構成我們的系數矩陣A
  • b: 不等關系的結果,不等號后面的結果構成的矩陣
  • Aeq: 恒等關系的系數矩陣,等號左邊。
  • beq: 恒等關系的結果矩陣,等號右邊。
  • lb: 參數的下限,每個參數的最小值構成的向量
  • ub:參數的上限,每個參數的最大值構成的向量
  • x0:官方解釋是設為初始值,個人感覺應該是說 參數》=0的意思。
    個人感覺用不到,知道上面這些就足夠了。

正式開始解題

例題一.求最大值

線性方程求解例題一

首先我們分析有恒等式,也有不等式,所以我們肯定要使用我們圖二的第三個或者第四個方法
當我們使用第三個方法的時候我們利用寫出我們的matlab程序

%注意這里有一個巧妙的轉換,我們要求的是最大值,然后我們在最后的方程這個地方由于要算最小值,所以給加了一個負號,最后結果要變回來
c=[2;3;-5];
A=[-2, 5, -1
   1 , 3,  1 ];
b=[-10;12];
Aeq=[1,1,1];
beq=[7];
x =linprog(-c,A,b,Aeq,beq,zeros(3,1))
value=c'*x

例題二 同樣求最大值

線性方程求解例題二

直接參照例題一得出我們的代碼

z=[4;3];
A=[2,1;1,1];
b=[10;8];
x=linprog(-z,A,b,[],[],zeros(2,1),[Inf,7])
value=z'*x

例題三,求最小值

線性方程求解,例題四

參照我們例題一寫出代碼,注意現在就不需要在我們最后的linprog中添加負號了,但是要看到給的式子中是大于號,需要我們進行轉化。

c=[2;3;1];
A=[1,4,2;3,2,0];
b=[8;6];
%這里的y就是我們通過后面的函數計算出來的最小值
[x,y]=linprog(c,-A,-b,[],[],zeros(3,1))
value=c'*x

最后寫點值得pay attention的東西

  • 1 關于方法中的上下限問題比如說
    a<x1<c
    b<x2<d
    他這個地方格式是這樣的
    lb=[a,b] ub=[c,d]

  • 2 zeros(a,b) 生成一個大小為a*b數值都是0的矩陣

  • 3 Inf 無窮大

  • 4 -Inf 無窮小

  • 5如果是寫了一個matlab腳本函數,最后的最后如果你是以;結尾的,那么會報這個Optimization terminated錯誤,可以稍微注意一下。

應該差不多了。關于數學建模的線性規劃部分,用matlab進行解決的話應該以上就是可以的。
當然由于我是matlab新手,再加上線代學過好久了,所以可能文章中有不對的地方,如果大家看到,請一定給我評論或者給我簡信,在這里先謝謝大家~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,825評論 6 546
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,814評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,980評論 0 384
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 64,064評論 1 319
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,779評論 6 414
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,109評論 1 330
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,099評論 3 450
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,287評論 0 291
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,799評論 1 338
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,515評論 3 361
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,750評論 1 375
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,221評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,933評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,327評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,667評論 1 296
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,492評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,703評論 2 380

推薦閱讀更多精彩內容