1 需要解决的问题

能效优化问题:


优化目标为找到最小化J对应的u、v。
时间为从零点开始的24小时,每隔20分钟取一次值,不同时间段的u、v不同,最后得到的u、v为72维的向量。

2 fmincon函数

fmincon解决的是形如下面问题的最优化问题:

在使用fmincon求解最优值的过程中,可以有以下所示的多种形式:

x = fmincon(fun,x0,A,b)
x = fmincon(fun,x0,A,b,Aeq,be)
x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub)
x = fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon)

其中,fun为目标函数,x0为初始值,其他的都为约束条件
具体选择哪种形式,取决于问题的约束是什么类型的约束。
例如:如果约束只为一个线性不等式


min f(x)
x(1) + 2x(2) <= 1

将约束转化为矩阵表示,就为[1,2]*x <= 1
根据fmincon,令A=[1,2],b=1。

fun = @(x)100*(x(2)-x(1)^2)^2 + (1-x(1))^2;
x0 = [-1,2];
A = [1,2];
b = 1;
x = fmincon(fun,x0,A,b)

题中的各个条件

u为72维向量,v为72维向量,变量x=[u;v]为144维向量。

为边界条件,可设置lb,ub

lb = zeros(144,1)
ub = [1800*ones(72,1);3*ones(72,1)]


线性不等书约束条件,可设置A,b

A = -ts*[ones(1,72),zeros(1,72)]
b = -10800


非线性约束,可设置

function [c,ceq] = nonfun(x)
x = x(1:72)
v = x(73:end)
c = [-u./(3.6*vu./(3.6*v-177]
ceq = []

最终选择一个初值x0调用

fun = @cost  %定义的J函数
nonlcon = @nonfun
x = fmincon(fun,x0,A,b,[],[],lb,ub,nonlcon)

MATLAB优化函数fmincon的简介相关推荐

  1. matlab 参数优化函数,MATLAB优化函数fmincon解析

    MATLAB,优化函数fmincon解析 [x,fval,exitflag,output,lambda,grad,hessian]=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,n ...

  2. MATLAB优化函数fmincon解析

    MATLAB,优化函数fmincon解析 [x,fval,exitflag,output,lambda,grad,hessian]=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,n ...

  3. matlab是fmincon,matlab中fmincon

    标签: fmincon| MATLAB非线性优化fmincon_数学_自然科学_专业资料.MATLAB非线性优化函数fmincon的详细整理 active-set and sqp algorithms ...

  4. matlab优化函数fminunc

    一起来学演化计算-matlab优化函数fminunc 觉得有用的话,欢迎一起讨论相互学习~ fminunc 求无约束多变量函数的最小值 非线性编程求解器 找到指定问题的最小值, m i n x f ( ...

  5. matlab仿真疏散,276基于matlab的疏散仿真程序简介

    基于matlab的疏散仿真程序简介 朱伟向大海刘方 重庆大学城市建设与环境工程学院 400045 摘要:本文简要介绍了人员疏散仿真现状,作者基于matlab平台开发了疏散仿真模型,该仿真模型基于精细网 ...

  6. matlab中globalsearch,MATLAB中fmincon和globalsearch、multistart优化问题

    本帖最后由 wwwjjj7008 于 2018-3-21 10:24 编辑 问题描述:从四个参数的给定范围r1[200 300].r2[50 100].l1[150 200].l2[150 250]中 ...

  7. Matlab:Matlab软件界面的简介(上边菜单栏、中间工作区、右栏、底部栏、运行图像结果栏)、使用方法之详细攻略

    Matlab:Matlab软件界面的简介(上边菜单栏.中间工作区.右栏.底部栏.运行图像结果栏).使用方法之详细攻略 目录 Matlab软件界面的简介(上边菜单栏.中间工作区.右栏.底部栏.运行图像结 ...

  8. matlab悬链线方程的求解,Matlab建模教程-变分法简介.doc

    Matlab建模教程-变分法简介 §1 变分法简介 作为数学的一个分支,变分法的诞生,是现实世界许多现象不断探索的结果,人们可以追寻到这样一个轨迹: 约翰·伯努利(Johann Bernoulli,1 ...

  9. Matlab符号处理工具箱简介

    Matlab符号推理工具箱简介 一,微积分... 2 diff: 2 int: 3 limit:... 3 symsum:... 4 taylor: 4 二,线性代数... 4 det 4 diag. ...

最新文章

  1. 态势“知”多少,点开就知道
  2. c语言switch虚线,有以下程序:include<stdio.h>main(){int c;while((c=getchar())!='\n')switch(c-'2'){case 1:pu...
  3. 启明云端分享| 基于SSD201核心板的4.3寸彩屏开发板接口相关说明
  4. Python | numpy | np.split()与np.array_split()函数
  5. RocketMQ的安装与配置
  6. 【安全】一名安全数据科学家的日常生活
  7. C++基础——对函数模板的类型推导的补充
  8. 斯坦福大学公开课第四课 Views 视图
  9. 世纪三部曲(全9册) 读后感
  10. 新时达工业机器人技术储备_国内外工业机器人发展现状-工业机器人技术国内外发展现状与趋势...
  11. 利用镜像解决一系列下载速度慢的问题
  12. 免费安装office流程(官方自动批量激活)
  13. AACWallet 上线 小白也能一键发币啦
  14. dism 分割镜像_DISM修改WDS启动镜像实现自动捕获镜像
  15. utest:检验U型和倒U形关系
  16. 作文:The Harm of Divorce
  17. 快速实现分列转到行(SQL版)一个问题,三种解法!
  18. 015 Rust死灵书之Transmutes转换
  19. 想知道什么换发型软件好用吗?
  20. python最大团问题

热门文章

  1. 02.Javascript中的继承----Inherits
  2. 数据分享 | GLIMS全球冰川数据集
  3. 孕期补微量元素钙后不要马上喝茶
  4. H5播放器使用方法。
  5. Deeplabcut教程(二)使用
  6. 回调金字塔是什么意思_老梁:新的解释,埃及胡夫金字塔是地球上最难解开的谜底之一...
  7. UTONMOS链游将为GameFi游戏玩家带来更多的可能
  8. 聊一聊被 .NET程序员 遗忘的 COM 组件
  9. java中右移运算符和无符号右移运算符的区别
  10. 【沃顿商学院学习笔记】商业基础——Financing:06 期限结构 Term Structure