数学建模如何用Matlab工具箱偷懒? OptimizationToolbox官方文档解读与快速上手,轻松解决优化问题。

前言

Matlab 中有很多工具箱是可以通过简单操作实现很多很强大的功能的,熟练使用Matlab的工具箱可以极大地便利我们日常的学习生活,在数学建模比赛中更是可以节约敲代码、debug的时间,在前期也能降低学习成本。本篇文章将重点介绍OptimizationToolbox工具箱的功能,以及通过实例教大家如何快速上手这个工具箱。本文基于的是Matlab的官方文档,使用的Matlab版本为R2021a本文不涉及任何数学原理或公式推导,这里不教如何制冷,只教如何使用冰箱!
未下载好工具箱的同学可以通过点击任意门中的工具箱下载学习如何下载。

Optimization Toolbox工具箱功能介绍

  • 本工具箱提供寻找满足让目标函数在限制条件下最大或最小时的参数。该工具箱可以解决以下问题,线性规划(linear programming/LP)混合整数线性规划(mixed-integer linear programming /MILP)二次规划( quadratic programming/QP)二阶锥规划(second-order cone programming/SOCP)nonlinear programming /非线性规划(NLP)约束线性最小二乘/constrained linear least squares非线性最小二乘/nonlinear least squares非线性方程/nonlinear equations,注意:本工具箱的求解器中包含遗传算法,因此也可以很轻松地实现遗传算法(翻译可能有错,以英文为准).
  • 可以用函数和矩阵或指定反映基础数学的变量表达式来定义优化问题,通过选择目标和约束函数的类型可以自动列出一些更快和更准确的解决方案。
  • 工具箱求解器可以解决连续离散问题,执行权衡分析,并将优化方法合并到算法和应用程序中。该工具箱允许自行执行设计优化任务,包括参数估计、组件选择和参数调优,在投资组合优化能源管理贸易以及生产计划等应用中找到最佳的解决方案。

界面介绍

如何打开工具箱

  • 命令行输入optimtool
    在这里插入图片描述
    回车键确认后会弹出一个提示框(如下)
    在这里插入图片描述
    点击中间的按钮即可。

工具箱界面详细介绍

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

简单实例(快速上手)

明确优化的目标函数以及约束条件

接下来我将以下面这个例子来简单介绍如何使用这个工具箱
寻找最优解使得F = 100*(y-x^2 )^2 -(1-x)^2取最小值
约束条件为
x^2+ y^2 ≤2
-2 ≤ x,y ≤ 2

输入参数

将初始点为x0(0,0)以及R = 2(将使用的参数)保存到工作区

  • 在红色框输入后同时按下CTRLENTER 即可保存到工作区,保存成功时右侧工作区可以见到这两个参数(蓝色框)这里我选择使用一个矩阵来代替x,y.在这里插入图片描述

选择求解器(优化器)

  • 根据自己的实际情况选择即可,选择完目标函数和约束条件后,工具箱会自动选择一个求解器(优化器).
    在这里插入图片描述

编写目标函数以及约束函数

  • 注意: 函数的返回值不能更改,只更改形参以及内容即可.
  • 注意约束函数中的不等式的书写方式
    在这里插入图片描述

确定目标和约束函数的参数

  • Objective function中选择Local function并选择你编写好的目标函数如果有多个点击new即可
  • 选择参数初值 Intial point
  • 选择约束函数方法和第一点一样
  • 选择函数输入
  • 选择需要画图展示的内容(工具箱执行优化后展示的内容),这里展示的是目标函数在每次迭代中的值
    在这里插入图片描述
    在这里插入图片描述

执行优化

在以上最好后选中Optimize Live Editor Task部分,然后同时按下CTRLENTER 即可,或在空白处点击鼠标右键选择Run Section即可
在这里插入图片描述

  • 点击后工具箱开始优化,并将结果展示出来(展示的为你前面选择需要展示的图)
    在这里插入图片描述

查看结果

除了在自动画出的图中查看结果也可以通过运行Results部分查看结果

  • 选中这个部分后同时按下CTRLENTER 即可.
    在这里插入图片描述

工具箱下载

  • 首先点击工具栏中的Apps,然后点击Gets More Apps,等待弹出的窗口。
    在这里插入图片描述

  • 在搜索框中输入 Optimization Toolbox
    在这里插入图片描述

  • 在搜索结果中点击蓝字进入详情页(这两个工具箱都下载)
    在这里插入图片描述

  • 进入详情页后点击Add,然后选择Add to matlab ,按提示安装即可。(由于我已经安装了,所以这没有显示Add按钮)
    在这里插入图片描述

总结

Matlat的工具箱有着强大的能力,而或许会有部分同学在看到全是英文的就放弃研究了,而学习这种最佳的方式应该是看官方文档,而官方文档也是全英的,所以希望通过这篇文章能够帮助有需要的同学简单了解如何使用这个工具箱,同时可以借助这篇文章研究下官方文档,本文并没有介绍完全工具箱所有的功能(功能太多)!还想学习什么工具箱可以评论下噢!都看到这了,要个赞不过分吧

  • 18
    点赞
  • 44
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值