解决
全局优化工具箱有两种优化方法:基于问题和基于求解器。看到在基于问题和基于求解器的方法之间做出决定.在基于问题的优化中,您将创建符号风格的优化变量。然后在这些变量中创建表示目标和约束的表达式。最后,解决使用问题解决
.有关详细信息,请参见具体问题具体分析优化工作流程.
注意:如果你有一个非线性函数,它不是由多项式、有理表达式和初等函数组成的经验值
,然后使用以下命令将函数转换为优化表达式fcn2optimexpr
.看到将非线性函数转换为优化表达式和金宝app支持优化变量和表达式的操作.
有关基本示例,请参见比较几种基于问题的全局求解器.
OptimizationConstraint |
优化的约束 |
OptimizationEquality |
等式和等式约束 |
OptimizationExpression |
用优化变量表示的算术或函数表达式 |
OptimizationInequality |
不等式约束 |
OptimizationProblem |
优化问题 |
OptimizationVariable |
为优化变量 |
学习解决优化问题的基于问题的步骤。
定义目标和约束的表达式。
在基于问题的方法中传递额外的参数、数据或固定变量。
为变量创建并使用命名索引。
检查或修改问题元素,如变量和约束。
评估解决方案及其质量。
探讨基于问题和基于求解器的优化的考虑全局优化工具箱解决者。
确定可以在基于问题的方法中解决的问题类型,以及它们关联的默认解决程序。
指定初始点全局优化工具箱基于问题的解决方法。
了解如何基于问题的优化功能prob2struct
和解决
处理整数约束。
当问题有整数约束时,获得更快或更准确的解决方案,并在创建问题时避免循环。
通过将模型与数据分离,创建可重用的、可伸缩的问题。
学习如何解决两个具有相同名称的优化变量的问题。
创建初始点解决
方法命名索引变量时findindex
函数。
优化表达式包含正
或南
无法显示,可能导致意外结果。
在基于问题的方法中,当目标函数和非线性约束函数共用计算时,可以节省时间。
求由生成的非线性函数中额外参数的值prob2struct
.
在基于问题的方法中使用输出函数来记录迭代历史并制作自定义图。
了解求解器如何为并行计算分配工作。
指导求解器或混合函数使用多个进程。
显示两个求解器并行计算有效性的示例:fmincon
和遗传算法
.
研究加速优化的因素。