带框约束的小尺度线性最小二乘算法描述

计算科学 算法 约束优化 最小二乘
2021-11-29 23:42:11

我有盒子约束的小规模密集最小二乘问题

argmin||Axb||2
subject tolixiui,

变量的数量约为 10-50,最坏的情况下有数百个。约束的数量等于变量的数量。所以我可以分解A和/或ATA. 同样在我的特定问题中,解决方案通常只会“触及”几个“盒子的侧面”。

我知道许多现代数值包都具有处理此类 QP 问题的功能。我寻求的是有效算法的详细描述或论文(首先是速度,然后是准确性),因为我想了解它是如何工作的并自己实现它。

目前我只找到了这篇基于活动集的论文。但它看起来(如果我没记错的话)它只将一个变量添加到每次迭代设置的“自由”变量中,这对我来说似乎不是很有效。

1个回答

你应该看看 Nocedal 和 Wright 关于“数值优化”的优秀书籍。它有大量关于这类问题的资料。

书中详细描述了您所指的算法,其中一次只向活动集添加或减去一个变量。一次只添加或减去一个变量的原因是,如果你做的不止一个,人们可以想出算法循环而不收敛的例子。然而,在这方面有更自由的其他方法(例如,“原始对偶活动集方法”)。