在实时编辑器中优化或求解方程
这优化任务使您可以交互优化受各种类型约束的线性和非线性目标函数,并求解方程式的非线性系统。该任务自动生成MATLAB®实时脚本的代码。
使用此任务,您可以:
根据问题的特征选择求解器。如果你有全局优化工具箱,您也可以选择使用其求解器。
通过编写功能或浏览功能来指定目标和约束功能。
指定求解器选项。
运行优化。
有关如何使用的建议优化, 看使用优化实时编辑器任务有效。目前,您不能使用fseminf
,,,,GlobalSearch
, 或者Multistart
求解器优化。
有关实时编辑任务的一般信息,请参阅将交互式任务添加到实时脚本。
添加优化MATLAB编辑器中的实时脚本的任务,在实时编辑器上插入选项卡,选择任务>优化。
或者,在脚本中的代码块中,键入一个相关的关键字,例如最佳
或者Fmincon
。选择优化从建议的命令完成。
客观的
- 目标功能类型线性
|二次
|最小二乘
|非线性
|非平滑
目标函数类型,通过单击适当的标记按钮指定。选定的目标函数确定可用的求解器,并建议使用哪个求解器(请参阅求解器
)。
约束
- 约束类型不受限制
|下限
|上限
|线性不平等
|线性平等
|二阶锥体
|非线性
|整数
约束类型,通过单击适当的标记按钮指定。您可以指定多个约束类型。选定的约束确定哪些求解器可用,并建议使用哪个求解器(请参阅求解器
)。
求解器
- 优化求解器MATLAB用来解决问题的优化求解器,通过从可用求解器列表中选择求解器来指定。可用的求解器和推荐的求解器取决于您的许可证和选定的客观的
和约束
。
可用的求解器
约束类型 | 客观类型 | ||||
---|---|---|---|---|---|
线性 | 二次 | 最小二乘 | 非线性 | 非平滑 | |
不受限制 | 解决方案是微不足道的 | Quadprog |
lsqcurvefit ,,,,LSQNONLIN ,,,,LSQNONNEG ,,,,LSQLIN |
Fgoalattain ,,,,fminsearch ,,,,fminimax ,,,,fminunc ,,,,FSOLVE ,,,,fzero ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,颗粒处理 (全局优化工具箱),,,,simulanealbnd (全局优化工具箱) |
fminsearch ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,颗粒处理 (全局优化工具箱),,,,simulanealbnd (全局优化工具箱) |
仅界限 | linprog |
Quadprog |
lsqcurvefit ,,,,LSQNONLIN ,,,,LSQNONNEG ,,,,LSQLIN |
Fgoalattain ,,,,fminbnd ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,颗粒处理 (全局优化工具箱),,,,simulanealbnd (全局优化工具箱),,,,代理 (全局优化工具箱) |
fminbnd ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,颗粒处理 (全局优化工具箱),,,,simulanealbnd (全局优化工具箱),,,,代理 (全局优化工具箱) |
线性 | linprog |
Quadprog |
LSQLIN ,,,,Fmincon |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
线性 +整数 | intlinprog |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
二阶锥体 | Coneprog |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
非线性 | Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
Fgoalattain ,,,,Fmincon ,,,,fminimax ,,,,GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,gamultiobj (全局优化工具箱),,,,Paretosearch (全局优化工具箱),,,,模式搜索 (全局优化工具箱),,,,代理 (全局优化工具箱) |
非线性 +整数 | GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
GA (全局优化工具箱),,,,代理 (全局优化工具箱) |
例子:Fmincon
对于具有额外输入的功能,优化要求您选择优化变量,并指定哪些工作区变量包含固定数据输入。例如,请参阅将优化变量放在一个向量中,并将数据放在其他变量中,其中包含三个函数输入:
优化仅在指定所有功能输入之后才生成代码。
优化无法解析包含的函数varargin
输入或包含错误的函数。
如果您从文件中选择目标或非线性约束函数,优化将文件位置添加到您的MATLAB路径。
如果优化有解析错误或多个本地函数具有相同的名称,则可用本地功能的列表为空。