最小化功能錯誤:“收斂失敗:無法降低目標功能”我正在JMP 16中的一個項目上工作,在這裡我使用“最小化”功能。 運行該函數時,我經常會遇到錯誤“會聚失敗:無法降低目標”。 查看腳本的最終結果,它們與預期的一樣。 因此,該誤差似乎對最終結果影響很小。 但是,為了確保腳本的有效性,我仍然想知道錯誤背後的原因。我很難找到有關此特定錯誤的任何文檔,因此希望JMP社區中的某人可以幫助確定原因。
使用最小化功能的“ << Details(Both)”選項,獲得以下日誌圖像:

最好的祝福,
路易
分析工具腳本編寫回复:最小化功能錯誤:“收斂失敗:無法減少目標功能”您使用了什麼Minimize()函數調用? 要評估的表達式是什麼? 表達式中的參數是什麼,如何對其進行初始化? 調用此函數時,JMP日誌中是否還有其他可用信息?
回复:最小化功能錯誤:“收斂失敗:無法減少目標功能”嗨,馬克,
感謝您的答复。
要回答您的問題:
- 最小化函數調用如下:
minfun = Minimize (mfun, {df},<<USENUMERICDERIV></USENUMERICDERIV> - 要評估的表達式如下:
mfun = Expr( Log10( (ChiSquare Quantile( alpha, df ) / df - Vratio) ^ 2 ) );
- 該函數的參數初始化如下:
- df:在運行Minimize()函數之前將其設置為2
- alpha和Vratio都是先前在腳本中計算的。 在失敗的特定情況下,參數具有以下值:
- alpha = 0.025
- 比例= 0.39135
- 在這裡可以添加,使用Vratio = 0.94917我沒有遇到警告。
最好的祝福,
路易
回复:最小化功能錯誤:“收斂失敗:無法減少目標功能”我根據您的答案使用了此腳本。
Names Default to Here( 1 );
alpha = 0.025;
variance ratio = 0.94917 ;
df = 2;
expression = Expr( Log10( (Chi Square Quantile( alpha, df ) / df - variance ratio) ^ 2 ) );
Minimize( expression, { df( 2, 1000 ) }, << Use Numeric Deriv( "true" ) );
使用您給我的兩個方差比,我得到以下信息:
//:*/
Names Default to Here( 1 );
alpha = 0.025;
variance ratio = 0.39135;
df = 2;
expression = Expr( Log10( (Chi Square Quantile( alpha, df ) / df - variance ratio) ^ 2 ) );
Minimize( expression, { df( 2, 1000 ) }, << Use Numeric Deriv( "true" ) );
/*:
Optimization failed: Failed: Cannot Decrease Objective Function
-19.6490758040614
//:*/
Names Default to Here( 1 );
alpha = 0.025;
variance ratio = 0.94917 ;
df = 2;
expression = Expr( Log10( (Chi Square Quantile( alpha, df ) / df - variance ratio) ^ 2 ) );
Minimize( expression, { df( 2, 1000 ) }, << Use Numeric Deriv( "true" ) );
/*:
-2.91402948948765回复:最小化函數錯誤:“收斂失敗:無法減少目標函數”查看函數的探查器(見下文和附加的數據表),看起來 Minimize() 確實給出了一個很好的答案。
可能@chris_gotwalt1可以解釋您從調用 Minimize() 收到的錯誤消息。
