轨迹跟踪求解Fmincon函数(2)
1.Fmincon函数介绍
在matlab中,fmincon函数可以求解带约束的非线性多变量函数(Constrained nonlinear multivariable function)的最小值,即可以用来求解非线性规划问题
matlab中,非线性规划模型的写法如下
2.基本语法
[x,fval]=fmincon(fun,x0,A,b,Aeq,beq,lb,ub,nonlcon,options)
x的返回值是决策向量x的取值,fval的返回值是目标函数在x处的f(x)的取值。
fun是用M文件定义的函数f(x),代表了(非)线性目标函数;x0是x的初始值;A,b,Aeq,beq定义了线性约束 ,如果没有线性约束,则A=[ ],b=[ ],Aeq=[ ],beq=[ ]
lb和ub是变量x的下界和上界,如果下界和上界没有约束,则lb=[ ],ub=[ ],也可以写成lb的各分量都为 -inf,ub的各分量都为inf
nonlcon是用M文件定义的非线性向量函数约束;options定义了优化参数,不填写表示使用Matlab默认的参数设置
3.解题思路
如果我们要解这一道题目,我们的思维过程:
1.目标函数定义
function f=fun1(x);
f=x(1).^2+x(2).^2+x(3).^2+8;
2.定义非线性约束条件
function [g,h]=fun2(x);
g=[-x(1).^2+x(2)-x(3).^2x(1)+x(2).^2+x(3).^3-20];
h=[-x(1)-x(2).^2+2x(2)+2*x(3).^2-3];
3.编写主程序函数
[x,y]=fmincon('fun1',rand(3,1),[],[],[],[],zeros(3,1),[],'fun2')
4.得出结果
x1=0.5522,x2=1.2033,x3=0.9478最小值y=10.651
点击下方卡片,加入会员全年无限制学习后台(MPC各矩阵的底层逻辑、MPC纵向控制、模型验证、MPC自适应巡航控制、非线性系统如何线性化及MPC动力学跟踪任何轨迹、约束添加及新求解器的求解、轨迹规划、纵向规划等80个系列)会员专享爆品课程及资源,同时获得分佣资格,可赚回自己的学费!
轨迹跟踪求解Fmincon函数(2)相关推荐
- python改背景颜色_Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色
!!!本博客,是对图像的背景颜色的修改的基础讲解~!!! 还包括一个练习--是对背景色修改的一点应用尝试!!!--始终相信学习多一点探索,脚步会更坚定一些~ 愿所有正在努力的人都可以坚持自己的路一直走 ...
- Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色(末尾有一个小训练——是将所学得的图像颜色修改应用为画板一般的刷新)
文章目录 愿所有正在努力的人都可以坚持自己的路一直走下去! 实现轨迹(跟踪)栏功能的函数 函数主要参数讲解 代码实现 我们先创建一个窗体,为轨迹(跟踪)栏的挂载做准备 接着我们把需要的轨迹(跟踪)栏添 ...
- matlab中sqp的算法原理_利用fmincon函数中的SQP算法求解非线性规划问题,模型本身.......
本人利用matlab里的fmincon函数求解一个优化问题,主函数: clc clear all lb=[3 0 0 1 0 0 1 0 0 1 0 0 1 0 0 1]; ub=[3 5 5 4 5 ...
- Matlab求解非线性规划(fmincon函数的使用)
Matlab中fmincon函数的使用 1. 介绍 2. 语法 3. 示例 3.1 编写M函数fun1.m,定义目标函数 3.2 编写M函数fun2.m,定义非线性约束条件 3.3 编写主程序函数 最 ...
- Matlab求解非线性规划,fmincon函数的用法总结
Matlab求解非线性规划,fmincon函数的用法总结 1.简介 在matlab中,fmincon函数可以求解带约束的非线性多变量函数(Constrained nonlinear multivari ...
- Matlab求解规划问题之 fmincon函数
Matlab规划问题之 fmincon函数 常用来求解单决策函数的规划问题 语法:[X,FVAL] = fmincon(fun,x0,a,b,Aeq,Beq,LB,UB,nonlcon,options ...
- fmincon c语言 编译,fmincon函数c(x)非线性函数求解
想用Fmincon函数求最小值,但是不会弄非线性约束函数, x1=[4,0,0,0,0]; x1_step1.xoffset = [8;0.41;0.58;4;1.63]; x1_step1.gain ...
- 基于阻抗控制的工业机器人轨迹跟踪系统 Simulink/Simscape 仿真
本文是对文献 [1] 的复现. 文章目录 更新日志 关于阻抗控制 离散化阻抗控制控制器的实现 基于阻抗控制的工业机器人轨迹跟踪系统仿真 ■ 环境说明 ■ 系统说明 ■ 结果展示 后记 项目开源 参 ...
- 基于MPC的移动机器人轨迹跟踪控制qpOASES例程
参考了 一个模型预测控制(MPC)的简单实现 https://www.cnblogs.com/zhjblogs/p/13880682.html 与 基于MPC的移动机器人轨迹跟踪控制matlab例程 ...
最新文章
- linux服务器六个状态,六、Linux_SSH服务器状态
- java字符串缓冲池分析
- 网易微专业之《前端开发工程师》学习笔记(1)
- 关于无法把程序(Adobe Fireworks CS5)添加到打开方式的解决办法
- 1022.在线视频—IT售前营销讲座(三)售前情报、策划和资源协调
- html ie浏览器视频无法播放视频,HTML5视频以Chrome格式播放,但不播放IE9
- php mysql.x86 64_centos7.2yum安装php70w.x86_64
- 【SSH进阶】No result defined for action **的解决方案
- 透视宝移动端对Unity手机游戏引擎监控实现
- VSS2005源代码管理
- ARFoundation之路-人脸检测增强之一
- 电脑自动同步服务器时间bat,用Internet时间服务器来同步本机系统时间的批处理...
- 我的世界服务器自动西瓜,我的世界自动化红石教程 全自动西瓜农场
- Exynos4412 移植Linux Kernel 5.4过程记录(三)——根文件系统构建与SD卡挂载fs
- 箭头函数与this指向详解
- Predictive State Temporal Difference Learning 原文翻译预测状态时间差分学习
- Python语言程序设计基础_实验1 Python程序设计基础_答案_通识教育必修课程_上海师范大学
- c++(标准模板库STL)
- 基于python的租房网站
- 度过漫长又艰辛的 2020 年,我收集了 1273 人的年度感悟
热门文章
- 最新HCIE面试最新考试流程
- linux中screen的使用
- 一款APK,集成Lighttpd、phpMyAdmin、Drupal7、ownCloud等等工具
- 未来的呼叫中心:融合通信平台
- vue中echarts饼图实现循环高亮效果
- css 隐藏 scrollbar
- CSS隐藏滚动条样式 ::-webkit-scrollbar
- VUE:用vue实现的计算器实例
- QT入门第七天 网络编程TCP/IP/UDP+Http和JSON解析+qt事件软键盘【CSDN最详细】
- 安装FlexNet for Linux许可证服务器后,执行lmgrd报错