回覆列表
  • 1 # 使用者2458317293922

    1、你用的是什麼版本的Lingo?我用11.0不能識別下面的語句:

    f1=@IF(a*(i+k)>1.1,(q+m)*b,-1);

    f3=@IF(a*(p+n)>1.1,(t+j)*b,-1);

    需要改成

    f1=@IF(a*(i+k) #GT# 1.1,(q+m)*b,-1);

    f3=@IF(a*(p+n) #GT# 1.1,(t+j)*b,-1);

    2、輸入量和取什麼值的情況下有解?我試過幾組引數,都找不到可行解。

    3、這個是整數規劃問題,MATLAB在求解整數規劃方面的能力比較有限,幾個可用的函式主要包括:

    求解0-1規劃的;

    2011b之後的遺傳演算法,可求解混合整數規劃問題,但對於存在整數約束的情況,不允許同時指定等式約束;

    2014a引入的函式,可以處理混合整數線性規劃問題(Mixed-integer linear programming,MILP)。

    第三方函式,例如和,但前者年代久遠,問題比較多,後者需要動態連結庫,配置和使用都不太方便。

    對於你現在的這個問題來說,雖然約束條件都是線性的,但目標函式卻是非線性的,所以勉強可以試一試的只有、和,即使改寫了,求解結果也很難樂觀,所以,不建議使用MATLAB求解。

  • 中秋節和大豐收的關聯?
  • 08年凱越開空調後發動機怠速抖動厲害,怠速變低,請教一下是什麼原因?