Mathematica 9 is now available
THIS IS DOCUMENTATION FOR AN OBSOLETE PRODUCT.
SEE THE DOCUMENTATION CENTER FOR THE LATEST INFORMATION.
Mathematica > 数学和算法 > 最优化 > FindArgMax >
Mathematica > 数学和算法 > 图与网络 > 图编程 > 最优化 > FindArgMax >
Mathematica > 可视化与图形 > 图与网络 > 图编程 > 最优化 > FindArgMax >

FindArgMax

FindArgMax
给出 f 的一个局部最大值的坐标 .
FindArgMax
给出 f 的一个局部最大值的坐标 ,通过从点 开始搜索求出.
FindArgMax
给出多元函数的一个局部最大值的坐标 .
FindArgMax
给出约束 cons 下的一个局部最大值的坐标.
FindArgMax
在约束定义的区域内的一个点开始.
  • 如果一个变量的起点以列表形式给出,则变量值采用有相同维数的列表.
  • 约束条件 cons 可以包含方程、等式或这些表达式的逻辑组合.
  • FindArgMax 首先局部化所有变量值,然后计算符号变量 f,然后重复进行计算数值结果.
  • FindArgMax 作为 x 的前 2 个值搜索 f 的局部最大值,避免使用导数.
  • FindArgMax 搜索局部最大值,如果 x 超出了 的范围,停止搜索.
  • 除了当 fcons 都是线性的, FindArgMax 求得的结果可能是局部的,但不是全局的最大数.
  • 在默认情况下,所有变量都假定为实数.
  • 对于线性 fconsxIntegers 可以用来指定一个变量仅采用整数值.
求出点 ,在该点一元函数 有一个最大值:
求出点 ,在该点函数 Sin[x]Sin[2y] 有一个最大值:
求出约束下函数在一个点有一个最大值:
求出点 ,在该点一元函数 有一个最大值:
In[1]:=
Click for copyable input
Out[1]=
 
求出点 ,在该点函数 Sin[x]Sin[2y] 有一个最大值:
In[1]:=
Click for copyable input
Out[1]=
 
求出约束下函数在一个点有一个最大值:
In[1]:=
Click for copyable input
Out[1]=
在不同起点下,得到不同局部最大值的坐标:
点开始,二元变量函数的一个局部最大值的坐标:
约束在一个圆内的一个局部最大值的坐标:
不提供起点:
对于线性对象和约束条件,可以加上整数约束条件:
可以指定 Or 约束:
下面指定收敛规则
下面指定收敛规则
提高 WorkingPrecision,将使得过程收敛:
绘制收敛于局部最大值:
下面用给定梯度,自动计算 Hessian:
下面用提供的梯度和 Hessian:
在这个例子中,用默认的基于导数的方式会有困难:
在这些例子中,不需要导数的直接搜索方式会有帮助:
NMaximize 也可以使用直接搜索方式的范围:
在求函数的最大值过程中,FindArgMax 采用的步长:
设置工作精度为 ;默认情况下 AccuracyGoalPrecisionGoal 设置为
FindMaximum 给出最大点和最小点的值:
FindArgMax 给出最大值的坐标:
FindMaxValue 给出最大点的值:
如果限定区域为空,算法不会收敛:
如果最大值不是有限的,算法不会收敛:
整数的线性程序算法仅对机器数问题有效:
某些时候提供一个适当的初始值,对收敛算法会有帮助:
版本 7 的新功能
Ask a question about this page  |  Suggest an improvement  |  Leave a message for the team
格式:   HTML  |  CDF