用途:处理优化中的梯度方法问题,提供从基础梯度下降到拟牛顿法的求解策略与诊断思路。
主要能力:基础梯度下降更新 x_{k+1} = x_k - alpha * grad f(x_k),步长可选固定、递减或线搜索;收敛性方面凸函数为 O(1/k),强凸为线性。步长选择包括固定 alpha、回溯(Armijo 条件)、精确线搜索和自适应方法(Adam、RMSprop)。加速方法含动量、Nesterov 前瞻梯度和共轭梯度。牛顿法使用 x_{k+1} = x_k - H^{-1} * grad f,需 Hessian,具二次收敛;拟牛顿 BFGS 近似 Hessian。收敛诊断监控 ||grad f|| < tolerance、函数值下降并留意振荡(步长过大)。
使用方式:可用 SciPy 求解,如 uv run python -c "from scipy.optimize import minimize; res = minimize(lambda x: (x[0]-1)*2 + 100(x[1]-x[0]2)2, [0, 0], method='BFGS'); print('Rosenbrock min at', res.x)";共轭梯度示例 method='CG'。梯度计算可用 uv run python -m runtime.harness scripts/sympy_compute.py diff "x2 + y2" --var "[x, y]"。
适用场景:无约束优化、最优控制等梯度类问题。限制:牛顿法需 Hessian 且代价高;固定步长需调参;资料未提供更多平台、收费或效果信息。