ipopt:在 ipopt 中定义决策变量时,-Inf < var < Inf 的效率如何?

ipopt: how efficient is -Inf < var < Inf when defining a decision variable in ipopt?

我正在使用 ipopt 来解决轨迹优化问题,并且想知道将决策变量的边界设置为 1) 任何实数、(-Inf,Inf) 和 2 之间的区别(在效率方面) ) 任何 "large" 实数,例如(-10^12,10^12)。我在这里使用引号是因为 "large" 是主观的并且取决于应用程序。

选择10^12作为我的"large"数字,如果var是一维决策变量,我想知道ipopt是否更有效地处理

-Inf < var < Inf

-10^12 < var < 10^12

从实用的角度来看,选项 2) 应该更有效,因为它缩小了设计 space,但是如果 ipopt 使用一些智能启发式方法来有效地处理 Inf,则可能必须存储和携带“大”数字(例如 10^12)变得不那么有效。有什么见解吗?

IPOPT 将对两者使用不同的方法,因为在 1) 中变量是无界的,它是不受约束的,而在 2) 中变量是有界的。搜索 space 缩小为 2),但 IPOPT 在处理 unconstrained/unbounded 变量时更有效 (1).