一个简单的优化问题是求

的最大值,并使得点

在以原点为圆心的单位圆内.
Maximize 的第一个参数将函数和约束置于一个列表中;第二个参数列出变量:
这个输出是一个列表,第一个元素是得到的最大值;第二个元素

是给出这个最大值的独立变量值的规则列表. 符号

是
Part
的缩写形式:
通过将解代回原始问题,可以检查结果是否满足约束条件. 要这样做,将

跟在原始问题后面. 符号

是
ReplaceAll 的缩写形式:
如果您的目标是得到数值结果,从一开始就使用数值版本的
NMinimize 和
NMaximize 会更加有效. 注意
NMinimize 和
NMaximize 使用数值算法,给出的结果可能会不属于全局最优解:
Maximize 和
Minimize 对要优化的表达式进行符号式分析,给出经证实的全局最优. 如果您的表达式不能通过符号技术分析,
NMaximize 和
NMinimize 将更加有用和高效.
一类常见的优化问题是求使得曲线和数据之间误差最小的参数. 这个例子调用
FindFit 来求这些数据点的二次拟合:
FindFit 的参数是数据、表达式、它的参数列表和变量. 这里对问题求解:
您可以添加约束. 例如,假设所有参数必须为正;将这些约束与表达式放在一个列表中: