回覆列表
  • 1 # 北枝夕夕

    1、我們首先需要知道,matlab中用於線性規劃最佳化計算的是linprog()函式,公式是[x,fval,exitflag,output,lambda]=linprog(f,A,b,Aeq,beq,lb,ub);,其中各個引數的意思可以看下面的註釋,如下圖所示:

    2、線性規劃最佳化計算求最優解的方法很多,有單純形法,大M法,內點法等,linprog函式集中了這幾種線性規劃演算法,如果感興趣的話,可以去了解一下這幾種演算法,下面透過一個例項來介紹linprog()函式求線性規劃問題最優解,如下圖所示:

    3、我們根據目標函式和約束條件,可以得出目標函式係數矩陣f=,不等式約束係數矩陣A =,不等式約束常向量b=,lb=zeros(3,1),如下圖所示:

    4、我們開啟matlab,在命令列視窗中,輸入f,A,b,lb,最後透過“[x,fval,exitflag,output,lambda]=linprog(f,A,b,,,lb)”求最優解,如下圖所示:

    5、按回車鍵之後,我們可以看到求出的最優解x,目標函式最優值fval,其中exitflag =1代表求解的結果是成功的,如果是其他數字代表失敗,如下圖所示:

    6、我們也可以看一下最佳化過程中的各種輸出資訊output,結構體,包含最優解處的拉格朗日乘子lambda,如下圖所示:

  • 中秋節和大豐收的關聯?
  • 如何給摩托車電瓶充電?