表达式包含正
或南
优化建模函数不允许您指定复杂的,正
,或南
值。然而,正
或南
表达式可以在普通操作中出现。通常,这些表达式会导致错误的解。
优化表达式包含正
或南
不能显示。例如,双精度算法中最大实数约为1.8 e308
.所以2 e308
溢出来正
.
x = optimvar (“x”);y = 1 e308;expr = 2 * x * y
expr = OptimizationExpression表达式包含Inf或NaN。
同样的,因为Inf - Inf = NaN
,以下表达式无法显示。
Expr = 2*x*y - 3*x*y
expr = OptimizationExpression表达式包含Inf或NaN。
如果任何优化表达式包含正
或南
,尝试在调用之前消除这些值解决
.这样做:
方法搜索这些表达式
显示
或写
功能。检查表达式是否来自于除以零的除法,还是来自于大量的加法或乘法。如果是,请删除或更正这些表达。
通常,这些表达式是错误的结果。然而,有时它们是由糟糕的伸缩性引起的。如果有必要,将每个相关表达式除以一个足够大的标量,以使表达式不再溢出,或者使用另一个缩放操作。