找回密码
 欢迎注册
查看: 785|回复: 11

[求助] 求最小值为什么运行不出来?

[复制链接]
发表于 2023-10-4 15:32:24 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?欢迎注册

×
在mathematica里面,为什么这个求最小值运行大概10分钟
\[ \text{Minimize}\left[\left\{(b-a) \sqrt{a^2+2 a b+b^2+1}+(c-b) \sqrt{b^2+2 b c+c^2+1},(a+b) (b+c)=-1\land a<b\land b<c\right\},\{a,b,c\}\right] \]
可以得到结果
\[\left\{\frac{3 \sqrt{3}}{2},\left\{a\to -\frac{1}{2 \left(\sqrt{2}-\frac{1}{\sqrt{2}}\right)},b\to -\frac{1}{\sqrt{2}},c\to \sqrt{2}\right\}\right\}\]

\[ \text{Minimize}\left[\left\{(c-a) \sqrt{a^2+2 a c+c^2+1}+(c-b) \sqrt{b^2+2 b c+c^2+1},(a+c) (b+c)=-1\land a<b\land b<c\right\},\{a,b,c\}\right] \]
运行几个小时却还在运行中?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2023-10-4 15:36:13 | 显示全部楼层
这个可以
  1. Minimize[{(-a + b) Sqrt[1 + a^2 + 2 a b + b^2] + (-b + c) Sqrt[1 + b^2 + 2 b c + c^2], (a + b) (b + c) == -1 && a < b &&  b < c}, {a, b, c}]
复制代码


这个不行
  1. Minimize[{(-a + c) Sqrt[1 + a^2 + 2 a c + c^2] + (-b + c) Sqrt[ 1 + b^2 + 2 b c + c^2], (a + c) (b + c) == -1 && a < b && b < c}, {a, b, c}]
复制代码


毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-10-5 20:17:49 | 显示全部楼层
上下两行不是一样的吗?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-10-6 08:14:39 | 显示全部楼层
改用 NMinimize 命令试试。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2023-10-7 10:03:52 | 显示全部楼层
lihpb00 发表于 2023-10-5 20:17
上下两行不是一样的吗?

大致一样,唯一就是b和c的位置有点差别。我也奇怪,程序长时间运行没有结果,不知发现了什么情况,请问有办法诊断和调试吗?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-10-7 10:44:27 | 显示全部楼层
第二个求解结果

\[\left\{\frac{3 \sqrt{3}}{2},\left\{a\to -\sqrt{2},b\to \frac{1}{\sqrt{2}},c\to \frac{1}{\sqrt{2}}\right\}\right\}\]

建议你把其中的a<b b<c修改成a<=b b<=c
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-10-7 16:34:50 | 显示全部楼层
  1. x=FindMinimum[{(c-a) Sqrt[1+(a+c)^2]+(c-b) Sqrt[1+(b+c)^2],(a+c) (b+c)==-1&&a<=b<=c},{a,b,c},WorkingPrecision->50]
复制代码


FindMinimum也很快。

点评

nyy
你这个是局部极值吧?  发表于 2023-10-8 08:27
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2023-10-9 19:16:25 | 显示全部楼层
nyy 发表于 2023-10-7 10:44
第二个求解结果

\[\left\{\frac{3 \sqrt{3}}{2},\left\{a\to -\sqrt{2},b\to \frac{1}{\sqrt{2}},c\to \fr ...

只把<改成<=没有用,是不是我计算机配置太差?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2023-10-9 19:17:09 | 显示全部楼层

FindMinimum这个可以,只是变成结果是小数,不再是无理数的形式了。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2023-10-9 21:00:10 | 显示全部楼层
本帖最后由 northwolves 于 2023-10-9 22:18 编辑
  1. x=FindMinimum[{(c-a) Sqrt[1+(a+c)^2]+(c-b) Sqrt[1+(b+c)^2],(a+c) (b+c)==-1&&a<=b<=c},{a,b,c},WorkingPrecision->20]
复制代码


{2.5980762013711028316,{a->-1.4142135606850823049,b->0.70710678472156829333,c->0.70710678134554538765}}

目测b=c or a+b+c=0,添加到条件之中:

  1. Minimize[{(c-a) Sqrt[1+(a+c)^2]+(c-b) Sqrt[1+(b+c)^2],(a+c) (b+c)==-1&&a<=b<=c&&b=c},{a,b,c}]
复制代码

  1. Minimize[{(c-a) Sqrt[1+(a+c)^2]+(c-b) Sqrt[1+(b+c)^2],(a+c) (b+c)==-1&&a<=b<=c&&b+c+a==0},{a,b,c}]
复制代码



秒出

$\{\frac{3 \sqrt{3}}{2},\{a\to -\sqrt{2},b\to \frac{1}{\sqrt{2}},c\to \frac{1}{\sqrt{2}}\}\}$
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-4-28 03:56 , Processed in 0.073929 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表