该代码对于其他示例运行良好,但对于少数示例,它显示该图不收敛。
“考虑更宽松的收敛标准或在“迭代选项”下选择“接受当前估计”。 失败:无法降低目标函数
代码如下,我附上了它不能正常工作的示例。
Names Default To Here( 1 );
dt= currentdatatable();
New Column( "Model",
Numeric,
"Continuous",
Format( "Best", 12 ),
Formula(
Parameter(
{p = 0.29, x0 = 15, m0 = 1.2, x1 = 30, m1 = 5},
p * (1 - Exp( -(X_mm / x0) ^ m0 )) + (1 - p) * (1
-Exp( -(X_mm / x1) ^ m1 ))
)
),
);
nlin = dt << Nonlinear(
SendToByGroup( Bygroup Default ),
Y( Ln_C ),
X( :Model ),
Iteration Limit( 1000 ),
Unthreaded( 1 ),
QuasiNewton BFGS,
//Newton,
Finish,
By( Sample_ID ),
);