張大林 朱 昌
(黔南民族師范學(xué)院數(shù)學(xué)與統(tǒng)計學(xué)院,貴州 都勻 558000)
多目標(biāo)規(guī)劃是研究現(xiàn)實問題在一定約束條件下多個目標(biāo)函數(shù)的極值問題。它囊括著多項指標(biāo)、偏差變量、權(quán)系數(shù)等多項理論知識,在合理探究高等數(shù)學(xué)中的重要公式后,引用多目標(biāo)規(guī)劃問題并進(jìn)行主要目標(biāo)法、分層序列法、線性加權(quán)求和法三種分析求解。 利用計算機軟件進(jìn)行結(jié)果多類別分析, 得出適合問題的合理滿意解,展示出多目標(biāo)規(guī)劃原理巧妙的科學(xué)準(zhǔn)確性。
基于線性規(guī)劃的理論基礎(chǔ)上,分析多目標(biāo)規(guī)劃問題的思想便變得更加廣闊。 本文著重介紹三種基本方法:對于多項指標(biāo)的多目標(biāo)規(guī)劃問題, 保留決策者合理的首次要求, 對問題進(jìn)行主要目標(biāo)法優(yōu)化改變?yōu)橥荒繕?biāo)問題求解;也可以將實際問題按照管理的要求比重,在滿足第一級的規(guī)定要求后分析求解第二級,一級接著一級的分層序列求解;最后也能夠引用線性求和法思想。
線性規(guī)劃思想是多目標(biāo)規(guī)劃原理的重要基礎(chǔ),務(wù)實了在解決多目標(biāo)問題的各層面的可靠知識。 因此線性規(guī)劃的發(fā)展歷程是非常有必要了解的,尊重前輩們的艱苦探究, 到現(xiàn)如今已經(jīng)能夠在計算機領(lǐng)域上占領(lǐng)一座高峰,可見未來世界的管理者離不開線性規(guī)劃基礎(chǔ)之上的多目標(biāo)規(guī)劃原理。
圖1
學(xué)習(xí)的高等數(shù)學(xué)中多目標(biāo)規(guī)劃原理有不同的論述表達(dá),殊途同歸,在這里統(tǒng)一規(guī)范的書寫格式。首先多目標(biāo)規(guī)劃的也是由決策變量、約束條件、目標(biāo)函數(shù)三要素構(gòu)成線性規(guī)劃,然后對問題進(jìn)行分級比重指標(biāo),添加偏差變量,引入權(quán)系數(shù)進(jìn)行理論補充。
一般的,簡單形式進(jìn)行如下描述:
規(guī)定變量為xi,給出的參數(shù)為yi,未知的隨機因素為ξk,目標(biāo)的評價準(zhǔn)則為:U=f(xi,yi,ξk),約束條件是:g(xi,yi,ξk)≥0。 這 里g(xi,yi,ξk)=0,看 為 剛 好 足 夠,若 不 等時,理解為隨機模型。
一般的,優(yōu)化理論中線性規(guī)劃此類的問題需要設(shè)定目標(biāo)函數(shù),因此根據(jù)所求目標(biāo)值,合理的加入正、負(fù)偏差變量后是有效解答路徑。 可以依據(jù)規(guī)劃問題的要求,在絕對約束與目標(biāo)約束進(jìn)行互換確保合理準(zhǔn)確作答。
圖2
引入正偏差變量d+, 為目標(biāo)函數(shù)中目標(biāo)值比計算值小的情況;引入負(fù)偏差變量d-, 為目標(biāo)函數(shù)中目標(biāo)值比計算值大的情況,因此就能夠得到優(yōu)化的公式求出滿意解。 一般的,需要同時加入d+、d-,使得計算值盡可能等于目標(biāo)值。
上面說過,實際多目標(biāo)規(guī)劃問題中,由于決策者需要對多項要求有自我的把握程度,那么,對每一個具體目標(biāo)規(guī)劃問題,就依照分級要求考慮加入優(yōu)先因子來構(gòu)造目標(biāo)函數(shù)。
綜上,目標(biāo)規(guī)劃是有主觀性和模糊性的,要構(gòu)建目標(biāo)規(guī)劃的高效準(zhǔn)確數(shù)學(xué)模型時, 要有明確的目標(biāo)值、對問題要求進(jìn)行優(yōu)先等級、合理引入權(quán)系數(shù)等重要理論步驟。
如何分析求解多目標(biāo)規(guī)劃問題, 首先了解它的本質(zhì)。 多目標(biāo)規(guī)劃問題其實是在優(yōu)化過程中考慮的優(yōu)化目標(biāo)函數(shù)不只是單一的,通常都會存在兩個或兩個以上的目標(biāo)函數(shù), 而它們又會因為各自的最值要求互相矛盾,困擾決策者找不到極值解。 在優(yōu)化理論思想中,求出一個合理的滿意解是非常有必要的,決策者可以依據(jù)劃分的各級要求,調(diào)整出合理的分配或組合方案。
一般的,將多目標(biāo)規(guī)劃的問題寫成如下標(biāo)準(zhǔn)形式:
在多目標(biāo)優(yōu)化問題中,將實際要求分為主次目標(biāo)進(jìn)行求解,最主要的要求為f1(x),其余另外都為次要要求, 在一定的約束條件之下, 找出各自變量的的界限值,這樣一樣將次要目標(biāo)轉(zhuǎn)化為目標(biāo)優(yōu)化問題就顯得方便求解了。 求解如下:
令
其中界值取為:
綜上,求得的非線性規(guī)劃問題得最優(yōu)解同樣是原問題的弱有效解,也必然是多目標(biāo)優(yōu)化問題的弱有效解。
多目標(biāo)規(guī)劃原理的分析思想也可表達(dá)為,將實際問題的多項指標(biāo)問題,按照需要達(dá)到的要求重要程度進(jìn)行分層次,不妨設(shè)有p 個目標(biāo),假設(shè)f1(x)相對于整體要求是不可缺少的,f2(x)稍次之,f3(x)再次之,以此類推,直到結(jié)尾的目標(biāo)為fp(x)。 求解過程中,求解一級指標(biāo)的目標(biāo)函數(shù)f1(x),那么在其它約束條件不改變時,問題P1:
求出的最優(yōu)解,記為x(1)和符合原題意的最優(yōu)值,記為;接著求解在其它約束條件不改變時,問題P2:
同樣的,求出的最優(yōu)解,記為x(2),符合原題的最優(yōu)值,記為,即:
其中:
接著在R1為問題P2的可行域下,繼續(xù)求解問題P3:
得最優(yōu)解,記為x(3)和符合題意的最優(yōu)值,記為:…,以此類推下去,直到求解到第p 個問題pp:
得最優(yōu)解,記為x(p),符合題意最優(yōu)值,記為,則:x*=x(p)
綜上,多目標(biāo)規(guī)劃問題的分成序列求解思路過程中,求得的最優(yōu)解也就是滿意解為:
另外的一種方法,在不使用分層次目標(biāo)要求下,對p個目標(biāo)可以重要程度的相互關(guān)系,分別給出科學(xué)合理的權(quán)系數(shù):
且
求出的最優(yōu)解,記為x(0),不妨取x*=x(0)是多目標(biāo)規(guī)劃問題的初解。
不難看出,如果用分層序列法分析,假設(shè)對其中的某個問題, 若它的最優(yōu)解能夠求出并且是唯一確定的,那么問題,這時候用h(x)=
作為下一個的新目標(biāo)函數(shù),也就是線性規(guī)劃中的目標(biāo)函數(shù),繼續(xù)求解實際問題:
再按以上的求解過程,依次分析求解權(quán)系數(shù)下的問題P2,…,pp。
綜上,在一定約束條件下,多目標(biāo)規(guī)劃問題采用線性加權(quán)求和法得到的最優(yōu)解依然是原問題的滿意解。
設(shè)某市場上有n 種資產(chǎn)si(i=1,2,…,n)可以進(jìn)行選擇,如果有數(shù)額為M 的足夠多的資金可以是一個階段的投資。 其中,這n 種資產(chǎn)在這一時期內(nèi)購買si的平均收益率為ri,風(fēng)險出現(xiàn)的損失率為qi,且有投資越分散,總的風(fēng)險越少, 總體風(fēng)險可用投資的si中最大的一個風(fēng)險來度量。 購買si時要付交易費,(費率pi),當(dāng)購買額不超過給定值ui時,交易費按購買ui計算。 另外,假定同期銀行存款利率是r0,既無交易費又無風(fēng)險。 (r0=5%)
已知n=4 時相關(guān)數(shù)據(jù)如下表1。
表1
請給出這所公司的一種設(shè)計投資的組合方案,也就是用給定資金M, 科學(xué)合理的選擇購買若干種資產(chǎn),或者將資金存入存銀行收利息,最后能夠使決策者的凈收益足夠高,而且受到的總體風(fēng)險卻盡可能小。
1)符號規(guī)定:
si 第i 中投資項目,例如股票,債券等ri,pi,qi各項投資項目si 的平均收益率,產(chǎn)生的交易費率,需要承擔(dān)的風(fēng)險損失率ui si的交易需要的投資定額r0 投資者所能參考的同期的銀行利率xi 投資項目si的所需要的資金a 投資項目時,會出現(xiàn)的風(fēng)險度Q 投資者的收獲總收益
2)基本假設(shè):
(1)投資者可用的投資數(shù)額M 是足夠的,不妨設(shè)M=1;
(2)相對于投資本身,投資的項目越分散,投資者受到的風(fēng)險只會越?。?/p>
(3)假定整體的風(fēng)險可以用si中顯得風(fēng)險為第一來度量;
(4)n 種的各項資產(chǎn)是可以與各種投資項目si相互獨立的;
(5)投資者在投資后,收益所需要的時間內(nèi),ri,pi,qi,r0,為穩(wěn)定值,不受外界因素影響;
(6)投資者的純收益只會受到ri,pi,qi影響,不受其它因素干擾,總體風(fēng)險也是。
1) 總體風(fēng)險用所投資的si中最大的一個風(fēng)險來衡量,即:
2)購買si所付交易費是一個分段函數(shù),即:
而題目所給定的定值ui(單位:元)相對總投資M很少,piui更小, 可以忽略不計, 這樣購買si的凈收益為(ri-pi)xi。
3)要使凈收益盡可能大,總體風(fēng)險盡可能小,這是一個多目標(biāo)規(guī)劃模型:
目標(biāo)函數(shù)為:
4)模型簡化
(a)在實際投資情況中,投資者需要承受風(fēng)險的大小并不會一樣,此處假定風(fēng)險有一個界限a,使得最大出現(xiàn)的一個風(fēng)險,都是可以找到合理的投資組合,那么就建立了線性規(guī)劃的數(shù)學(xué)模型。模型一 固定風(fēng)險水平,優(yōu)化收益
(b) 假設(shè)投資者往往都期待于總盈利至少能有水平k 以上, 那么需要在風(fēng)險最小的情況下就得探究出科學(xué)合理的投資方案。
模型二 固定盈利水平,極小化風(fēng)險
(c)投入資金后,投資者都會矛盾于資產(chǎn)風(fēng)險和預(yù)期收益,到底如何合理選擇投資方案,在此處可以對風(fēng)險、收益分別賦予權(quán)重s(0
模型三
模型一:
因為a 是未知的,是出于需要給定的任意風(fēng)險度,而不同的投資者將會遇到不同的風(fēng)險大小。 不妨,將a=0 開始計算, 以步長Δa=0.001 進(jìn)行循環(huán)搜索求解,在計算機Matlab 軟件上編程如下:
模型一的編程:
clc,clear
a=0;
hold on
while a<0.05
c=[-0.05,-0.27,-0.19,-0.185,-0.185];
A=[zeros(4,1),diag([0.025,0.015,0.055,0.026])];
b=a*ones(4,1);
Aeq=[1,1.01,1.02,1.045,1.065];
beq=1;
LB=zeros(5,1);
[x,Q]=linprog(c,A,b,Aeq,beq,LB);
Q=-Q;
plot(a,Q,'*r');
a=a+0.001;
end
xlabel('a'),ylabel('Q')
(1)投資的風(fēng)險大,但是能夠得到的收益也是令人滿意的。
(2)如果將投資進(jìn)行不斷分散后,那么投資者需要接受的風(fēng)險也隨著減小。 可以這樣理解:鋌而走險的投資者通常選擇集中投資,理由如(1),保全自己的資產(chǎn)的投資者又想盡可能的收益,減少風(fēng)險會選擇分散投資。
(3)在a=0.006 周圍有一個轉(zhuǎn)折點,不能看出在此點的左側(cè)風(fēng)險增加變得逐漸減少時, 投資者得到的利潤是增長很快;相反,在此點的右側(cè)風(fēng)險增加逐漸變得很大時,投資者得到的利潤增長卻是有些減緩的。 這說明對于初學(xué)者或者是經(jīng)歷豐富的投資者, 選擇此處拐點是非常適合的,避免了風(fēng)險過大,收益過小的情形,拐點的數(shù)值為a=6%,Q=20%,其中方案可以為: 風(fēng)險度a=6%,收益Q=0.2019,x0=0,x1=0.24,x2=0.4,x3=0.1091,x4=0.2212。