線性規劃模型的基本原理與案例
一,原理與引例:
這個在matlab裡面其實是有一個標準庫來處理相應的資料的。如果題目要求最大值的話,只要在Ax前面加上一個負號就好了。
這個稍微解釋一下,目標函式不是線性函式,所以這個地方用到了運籌學的知識。上面的u和v其實只是存在關係。對於現在的我來說只要記住就好了。這樣就把之前的非線性問題轉化為了線性的問題了。然後直接用matlab來求解就好了。
二,案例分析與學習:
這個ui其實就是s1只是這個地方打錯了。其實從這個地方其實就已經可以發現這個其實是一個多目標規劃問題,具體怎麼轉化為一個單目標優化問題還是要看後面的內容。
這個L是一個省略號。這個符號規定認真看一下。
認真思考一下這些假設條件吧。
1,先假設這個M是很大的數,這個1其實就只是一個整體,不是簡單的數字1.
2,第二個假設其實是題目裡面的內容
3,這個假設是肯定的。因為如果這個風險是所有的投資的和,那麼這個風險肯定就會變得非常大了。所以這個地方假設這個風險就是所有投資中分線最大的哪一個
4,這個資產之間是相互獨立的一定要說,避免不同資產之間的擾動。這個點比較重要,如果不加的話會讓評委感覺很不嚴謹。
5和6也是很重要的內容,避免確定的因素髮生變化。
注意上面的含義,qixi其實是風險所導致的虧損,我要取所有風險中的最大值。,這個東西就是平均收益率減去費率再乘上投資的金額。還有這個相對於很少的問題,這個很明顯感覺把這個相對給模糊化了。就是在淨收益裡面會忽略了這個分段的影響,但是這個分段是需要呈現出來的。
所以現在的優化模型的建立就是這下面的式子(目標函式和約束條件):
這兩個約束條件其實就是總收益的約束還有就是每一筆投資都要大於0.但是這個很明顯是一個多目標規劃問題。那麼這個其實我們是沒辦法用matlab來求解的,所以我們要想辦法來把這個多目標規劃變成單目標的規劃。具體方法如下:
第一種就是不考慮分風險,把風險確定在一個有界的範圍內。這個東西其實就是我們能接受風險佔的比例。假設一個a是能夠接受的範圍。
剩下的兩種也是很好的思路要自己學習一下。
後面我們來著重的講解第一種方法:
因為matlab沒有求最大值,所以這個地方是要加上負數的。還有就是這個a的指定,其實這個我一開始也是沒有思路的。這個地方的思路就是從0開始以0
001為步長增加進行迴圈搜尋。
這個是程式:
這個是的出來的圖
後面就是對這個圖的分析。這個自己可以認真看一下。