新人求解,谢谢各位大神。NMaximize[{y, 3.5
mathematica吧
全部回复
仅看楼主
level 5
Xiejjiwk
楼主
新人求解,谢谢各位大神。
NMaximize[{y, 3.5 < yx^5 < 6, 1.732051 < 4 y*x^4 < 5.6713, y < 1, x > 1}, {y, x}]
2019年01月23日 02点01分
1
level 7
云淡风轻_2024
yx^5中间你少打了一个乘号。。。
另外我个人经验,mma和matlab的求非线性约束的最值的算法并不是非常可靠,可能的话还是自己分析求解(比如求出一阶条件)
2019年01月23日 04点01分
2
level 7
云淡风轻_2024
举个我碰到的例子:
NMaximize[{(-2 + 4 a) x^2 + (-3 - a + 2 a^2) x^3 - 2 a x^(a + 1) +
2 x^(2 + a), 0 <= x <= 1 && 0 <= a <= 1/2}, {x, a}]
mma输出结果是:{-3.78047*10^-19, {x -> 5.21459*10^-17, a -> 0.00425127}}
但实际上很容易看到x=0时,(-2 + 4 a) x^2 + (-3 - a + 2 a^2) x^3 - 2 a x^(a + 1) +
2 x^(2 + a) = 0,比mma算出的最大值还要大。。。。。。。
2019年01月23日 04点01分
3
Xiejjiwk
谢谢谢谢
2019年01月27日 10点01分
xzcyr
加WorkingPrecision -> 32就能找到0了。
2019年02月02日 15点02分
云淡风轻_2024
@xzcyr
谢谢!原来是计算精度不够。请问mma最大的workingprecision值是多少?
2019年02月02日 19点02分
xzcyr
@云淡风轻_2024
应该是约等于 Log[10,$MaxNumber]。但是要注意的是,影响数值计算精度的因素很多,加大WorkingPrecision并不总是有效。
2019年03月02日 06点03分
1