解决约束 OLS 问题的有效方法?

计算科学 优化 最小二乘 约束优化
2021-12-21 22:20:53

我想知道是否有解决以下形式的约束二次近似的有效程序:

minkR||xikx0||2

对于x0,xiRd的固定值。对于固定x_0的大量x_i值,这需要递归求解(因此,如果有一种方法可以根据x_i参数化解决方案,那将很有帮助)。xix0xi

目前,我正在使用迭代算法(在 R 中):

set.seed(123)
d<-100
n<-50
xi<-matrix(rnorm(n*d),n,d)
x0<-rnorm(d)
ff<-function(k,xi,x0,ll){
    crossprod(xi[ll,]-k*x0)
}
optimize(ff,lower=-1000,upper=1000,xi=xi,x0=x0,ll=13)$min
2个回答

通过对表达式求平方并对 wrt进行微分,可以得出无约束解是如果是有界的,则通过在边界处裁剪解来获得最优解。kx0Txi/(x0Tx0)k

您可以通过受限最小二乘来做到这一点。的约束是线性的,你甚至应该有一个封闭形式的解决方案。kk^