1. 线性规划问题(LP)

线性规划问题是要最小化或最大化一个受限于一组有限的线性约束的线性函数。

  • Matlab 中规定线性规划的标准形式为

第一个式子为目标函数,s.t. 式是约束条件。其中 c 和 x 为 n 维列向量,A、Aeq 为适当维数矩阵,b、beq 为适当维数列向量

  • 在 matlab 中,线性规划的函数为 linprog() ,有两种常用形式:

    • X = linprog(f,A,b,Aeq,beq,LB,UB,X0)
    • [X,FVAL]=linprog(f,A,b,Aeq,beq,LB,UB,X0)

返回的值 X 是向量 x 的值,FVAL 是目标函数的值,LB 和 UB 分别是变量 x 的下界和上界, 是 x 的初始值。

1.2 应用例子

  • 求下列线性规划问题:

依据 Matlab 的标准,默认求解是求最小值,而本例是求的最大值,把 z 的系数变为相反数,即 -1 就好了,同理下面的大于等于号也做同样处理,然后没有上界 UB,下界 LB 为三个变量都为 0,也就是一个全零的矩阵 zeros(3, 1)

  • 编写一个 .m 文件:

1.3 相关问题

  • 运输问题(产销平衡)
  • 指派问题(匈牙利算法)
  • 对偶理论与灵敏度分析
  • 投资的收益和风险

2. 非线性规划问题(NLP)

如果目标函数或者约束条件中至少有一个是非线性函数时的最优化问题就叫做非线性规划问题。

2.2 非线性规划的基本解法

  • 罚函数法
  • 近似规划法
    近似规划法的基本思想;是将问题(3)中的目标函数f(x)和约束条件g(x);h(x)近似为线性函数,并对变量的取值范围加以限制。从而得到一个近似线性规划问题。再用单纯形法求解。把其符合原始条件的最优解作为(3)解的近似。
    每得到一个近似解后,都从这点出发,重复以上操作。


2.3 相应问题

  • 无约束问题(一维搜索方法、二次插值法、无约束极值问题的解法)
  • 约束极值问题(二次规划、罚函数法)
  • 飞行管理问题

3. 整数规划问题(IP)

数学规划中的变量(全部或部分)限制为整数时,称为整数规划,例如,所求的解是机器的台数,人数,车辆船只数等等。

  • 整数规划的分类:

    • 纯整数规划:全部决策变量只能取整数的线性规划
    • 混合整数规划:决策变量中有一部分必须取整数,另一部分可以不取整数的线性规划
    • 0-1整数规划:决策变量只能取0,1的线性变化

3.1 混合整数规划问题(MIP)

  • 混合整数线性规划是整数线性规划模型的一种。

  • 整数线性规划模型分类:

    • 若I={0,1},J={1,…,n},即全部的决策变量仅取0或1,称之为0-1规划;
    • 若J是{1,2…n}的非空真子集,即仅有部分决策变量要求取整数,称为混合整数线性规划;
    • 若J={1,2,…n},即全部的决策变量都取整数,称为纯整数线性规划;
  • 常用的整数规划问题解法有:

    • 分枝定界法:可求纯或混合整数线性规划
    • 割平面法:可求纯或混合整数线性规划
    • 隐枚举法:用于求解0-1整数规划,有过滤法和分枝法。
    • 匈牙利法:解决指派问题(0-1规划特殊情形)
    • 蒙特卡罗法:求解各种类型规划

3.2 常用方法讲解


4. 二次规划问题(Quadratic Programming)

5. 混合整数二次规划问题(MIQP)

通过上面的定义我们不难看出混合整数二次规划问题本质就是一种混合整数规划问题的一种特例,其中他的目标函数为二次型,其约束条件满足混合整数规划问题。

6.参考的博客文章

  • https://blog.csdn.net/datase/article/details/80622019
  • https://zhuanlan.zhihu.com/p/27976866
  • https://blog.csdn.net/sanganqi_wusuierzi/article/details/54800341
  • https://blog.csdn.net/ouening/article/details/90549538

数学建模算法之优化模型【线性规划问题、非线性规划问题、整数规划问题、二次规划问题】相关推荐

  1. 数学建模算法(1)—规划模型及其python实现

    规划问题及其Python求解方法 什么是规划问题 规划问题的分类 线性规划及其Python解法 非线性规划及其Python解法 什么是规划问题 在人们的生产实践中,经常会遇到如何利用现有资源来安排生产 ...

  2. matlab中x从0到5不含0,关于MATLAB的数学建模算法学习笔记

    关于MATLAB的数学建模算法学习笔记 目录 线性规划中应用: (3) 非线性规划: (3) 指派问题;投资问题:(0-1问题) (3) 1)应用fmincon命令语句 (3) 2)应用指令函数:bi ...

  3. 司守奎《数学建模算法与应用》课后习题:线性规划

    系列目录 司守奎<数学建模算法与应用>课后习题:线性规划 模拟退火算法解决旅行商问题详解 遗传算法解决旅行商问题 MATLAB实现 基于模拟退火优化的投影寻踪评价法求解供货能力评价模型 目 ...

  4. 数学建模算法与应用 线性规划(cvxpy包)

    数学建模算法与应用 线性规划(使用cvxpy包) 说明 使用python中cvxpy库完成<数学建模算法与应用>中课后习题 因为本人也是初学者,若代码有错误还请各位指出 cvxpy库的使用 ...

  5. 数学建模算法与应用学习day1——线性规划问题整数规划问题

    以下内容来自司守奎编写的数学建模算法与应用学习,主要是记录自己的学习历程,转载还请标明出处! 一.线性规划 知识点 1.1线性规划问题 1.1.2线性规划解的概念 f = [-2 ; -3 ; 5]; ...

  6. 数学建模:现代优化算法之遗传算法

    数学建模:现代优化算法之遗传算法 开始了开始了!!! 数学建模 数学建模:现代优化算法之遗传算法 前言 一.Genetic Algorithms(GA算法) 1.模型及算法 2.模型计算法 (1)编码 ...

  7. 数学建模算法学习笔记 已完结

    这是为了准备国赛突击学习的模型算法,我在原有的基础上加上自己的理解虽然不知道对不对,就是为了记录下自己学的模型他究竟是个什么东西,语言通俗,但是极不准确,只适合做一个大概的了解,建议大家详细的还是要看 ...

  8. Python小白的数学建模课-09.微分方程模型

    小白往往听到微分方程就觉得害怕,其实数学建模中的微分方程模型不仅没那么复杂,而且很容易写出高水平的数模论文. 本文介绍微分方程模型的建模与求解,通过常微分方程.常微分方程组.高阶常微分方程 3个案例手 ...

  9. 数学建模算法:支持向量机_从零开始的算法:支持向量机

    数学建模算法:支持向量机 从零开始的算法 (Algorithms From Scratch) A popular algorithm that is capable of performing lin ...

最新文章

  1. 轻松搞定日志的可视化(第一部分)
  2. C++ 二维数组和指针数组
  3. 【BZOJ 2323】 2323: [ZJOI2011]细胞 (DP+矩阵乘法+快速幂*)
  4. gzip(来源百度百科)
  5. python函数参数定义顺序_Python函数定义-位置参数-返回值
  6. github开源推荐:SuperSocket, 可扩展的 Socket 服务器框架
  7. server2016做文件服务器,『配置』服务器搭建 Office Online Server2016 实现文档预览 番外 错误篇...
  8. 显示纯服务器_BBT三行代码搭建服务器,让Dynamo跳出IronPython的封锁
  9. [Java][Android][Process] 暴力的服务可以解决一切,暴力的方式执行命令行语句
  10. Python爬虫入门:初识爬虫
  11. iOs LightBlue与cc2540 BLE开发板之间的通信实验 [原创, 多图]
  12. Dell 电脑的重装系统以及关键散热驱动建议
  13. 视频教程-【CVPR2018】A Causal And-Or Graph Model for Visibil-计算机视觉
  14. 微软的MSR paraphrase数据集
  15. java面试题:编写java程序,随机生成n个m以内的加减法算式,形如a±b=c,其中n,m∈N+,a,b,c∈[0,m].请结合自身请款勾选作答的题目,然后在下面写出代(伪)码.
  16. android底部导航切换实现(md)
  17. Python--面向对象进阶
  18. Oracle中序列的操作以及使用前对序列的初始化
  19. 【Learning】虚树题目汇总
  20. 从第三方企业邮箱迁移至Office 365(21V) Exchange Online

热门文章

  1. C语言的集成测试工具,Tessy-嵌入式软件单元测试/ 集成测试工具-研发工具-恒润科技...
  2. Linux离线升级redis-6.2.7
  3. day day day upupupup
  4. 超宽带UWB实时精准定位,短距离无缝交互应用,物联网厘米级精度方案
  5. 图像处理——图像灰度变换
  6. CODEVS 1012
  7. AMEYA360报道:智能扫地机器人 SLAM技术与A算法
  8. 站长在线python精讲:在Python中使用len()函数计算字符串的长度详解
  9. UXD阶段最后的 华
  10. 【IOS账号分享】《反叛公司》