【发布时间】:2010-11-24 23:55:02
【问题描述】:
让
f[x_,y_,z_] := Sqrt[3x+1]+Sqrt[3y+1]+Sqrt[3z+1]
我想使用mathematica 获得x>=0&&y>=0&&z>=0&&x+y+z==1 的f 的最小值。
PS:我确实知道如何通过数学方法获得最小值:
Since 0<=x<=1,0<=y<=1,0<=z<=1, we have
0<=x^2<=x,0<=y^2<=y,0<=z^2<=z.
Hence,
3a+1 >= a^2 + 2a + 1 = (a+1)^2, where a in {x,y,z}.
Consequently,
f[x,y,z] >= x+1+y+1+z+1 = 4,
Where the equality holds if and only if (x==0&&y==0||z==1)||...
PS2:我预计下面的代码会起作用,但它没有。
Minimize[{f[x,y,z],x>=0&&y>=0&&z>=0&&x+y+z==1},{x,y,z}]
实际上,正如 Simon 指出的那样,它有效...运行时间比我预期的要长,我在 Mahtematica 显示结果之前关闭了它。
【问题讨论】:
-
嗯?我看到的只有两个可行的选项是 x=y=z=(1/3), f(x,y,z)=3*sqrt(2) .... 或 x=y=0, z=1 导致f(x,y,z)=1+1+sqrt(4)=1+1+2=4
-
@jon_darkstar 最小值,不是最大值
-
是的,我后来就抓住了=P。但中间选项是否值得探索?
-
正确无约束,但请注意 x + y + z = 1。需要一个或两个拉格朗日乘数。
-
f w.r.t 任何三个变量的偏导数显然总是在减少,因此您希望将所有 x+y+z=1 约束“合并”到一个变量中。勒格朗日?为什么?我想也许你需要一个证明或者想以一种奇怪的方式概括 f(概括约束没有区别 - 用 x+y+z=k 替换 x+y+z=1 并且你仍然希望其中一个相等到 k),但直观上它非常简单
标签: wolfram-mathematica constraints minimization