贊助廠商

娛樂城推薦

首頁

刊登資訊

  • 刊登者:匿名
  • 時間:2021-06-11 20:40:12

尚未解答MATLAB- 求解最佳解問題

MATLAB- 求解最佳解問題

各位matlab大神早安

小弟對於使用matlab不太熟悉

但現在必須使用matlab進行最佳化求解

也因此選擇上板詢問

若有打擾之處還請見諒

-

問題是這樣的

小弟有一個目標函數並設有兩限制式

欲在兩限制式下Minimize我的目標函數

並計算出不同決策變數下的最佳函數值

希望顯示出的有:最佳目標值、最佳值下的各決策變數值

表達式差不多是這樣:

Min TotalASN
s.t. (pa1 / (pa1+pr1)) >= 0.95
(pa2 / (pa2+pr2)) <= 0.1

-

code如下:

目標函數(TotalASN.m):

function [TotalASN] = TotalASN(n,ka,kr,C1,C2)
pa1 = 1- nctcdf(3*sqrt(n)*ka,(n-1),3*sqrt(n)*C1);
pr1 = nctcdf(3*sqrt(n)*kr,(n-1),3*sqrt(n)*C1);
ASN1 = n / (pa1+pr1)

pa2 = 1- nctcdf(3*sqrt(n)*ka,(n-1),3*sqrt(n)*C2);
pr2 = nctcdf(3*sqrt(n)*kr,(n-1),3*sqrt(n)*C2);
ASN2 = n / (pa2+pr2)

TotalASN = 0.5*(ASN1+ASN2)
end

限制式則有兩條(這邊我不知道我寫的對不對...):

function [TotalASN,ceq] = constraint(n,ka,kr,C1,C2)
pa1 = 1- nctcdf(3*sqrt(n)*ka,(n-1),3*sqrt(n)*C1);
pr1 = nctcdf(3*sqrt(n)*kr,(n-1),3*sqrt(n)*C1);

pa2 = 1- nctcdf(3*sqrt(n)*ka,(n-1),3*sqrt(n)*C2);
pr2 = nctcdf(3*sqrt(n)*kr,(n-1),3*sqrt(n)*C2);

TotalASN(1) = 0.05 - (pa1 / (pa1+pr1)) ;
TotalASN(2) = 0.1 - (pa2 / (pa2+pr2));
ceq = 0;
end

-
其中C1、C2為事先給定

使用optimization tool求解

卻一直說我的input arguments不足

頭很疼啊啊啊

希望有大神能夠點出我的問題

感謝QAQ

--

0個答案 MATLAB- 求解最佳解問題

其他問題

友站連結