主要内容

开始优化实时编辑器任务

这个示例脚本帮助您使用Optimize Live Editor任务进行优化或求解方程。针对您自己的问题修改脚本。

该脚本解决了一个具有非线性约束的非线性优化问题。

包括参数或数据

通常,您有数据或值要传递给求解器。将这些值放在输入部分(您可以看到的地方)x0),并通过选择来运行该部分>运行部分或按控制+ Enter

设定起始点x0和规模一个的优化。

x0 = (2, 1);一个= 100;

x0值和任何其他问题数据进入工作区在继续之前先运行本节。

优化实时编辑器任务

该任务包含目标约束函数和非线性约束函数。要更改这些函数,请编辑任务下面的函数列表。

要更改约束,请选择适当的约束类型并在输入框中输入值。您可能需要在包含的部分中输入值x0然后运行该部分,将值放入工作区中。

通过单击左边的条纹条或通过选择来运行任务运行>运行部分,或按控制+ Enter

结果

优化将解决方案保存到工作区变量解决方案,并将目标函数值保存在工作区变量的解处objectiveValue.的顶部可以看到并修改这些变量名优化的任务。

查看这些变量。

观察非线性约束函数在解处的值。

辅助函数-局部函数

下面的代码创建目标函数。针对您的问题修改此代码。

函数f = objectiveFcn f (x) = a * x (x (2) - (1) ^ 2) ^ 2 + (1 - x (1)) ^ 2;结束

下面的代码创建约束函数。针对您的问题修改此代码。

函数测查[c] = constraintFcn (x) c (1) = x (1) ^ 2 + (2) ^ 2 - 5;C (2) = 3 - x(1)^2 - x(2)^2;测查= [];没有相等约束结束

另请参阅

相关的话题