数学建模模型算法——线性规划
本文介绍了线性规划在数学建模中的应用。线性规划是研究线性约束条件下目标函数极值问题的数学方法,包含决策变量、目标函数和约束条件三要素。建模步骤包括确定决策变量、建立目标函数和设置约束条件。线性规划模型具有优化性质,要求目标函数和约束条件均为线性关系。求解方法推荐使用Matlab的linprog函数,需将问题转化为标准形式(最小化目标函数、约束条件为≤或=)。文章还提供了函数参数说明和求解注意事项,
一、模型引出
XXX共有多少多少,怎么样去安排或者分配,使……最大/最小/最优。
数学建模比赛中比较常见的题型,简单来说就是求最大/最小也即是极值的问题,线性规划就是解决这些问题常用的工具之一。
线性规划
线性规划(Linear programming,简称LP),是运筹学中研究较早、发展较快、应用广泛、方法较成熟的一个重要分支,是辅助人们进行科学管理的一种数学方法,是研究线性约束条件下线性目标函数的极值问题的数学理论和方法。
二、模型原理
2.1线性规划模型三要素
1.决策变量: 问题中要确定的未知量,用于表明规划问题中的用数量表示的方案、措施等,可由决 策者决定和控制;
2.目标函数:决策变量的函数,优化目标通常是求该函数的最大值或最小值;
3.约束条件:决策变量的取值所受到的约束和限制条件,通常用含有决策变量的等式或不等式表示。
2.2模型建立步骤
从实际问题中建立数学模型一般有以下三个步骤:
1.根据影响所要达到目的的因素找到决策变量
2. 由决策变量和所在达到目的之间的函数关系确定目标函数
3. 由决策变量所受的限制条件确定决策变量所要满足的约束条件
2.3线性规划的表现形式
一般形式/代数形式:
2.4线性规划模型特点
1.要解决的问题是优化类的(即在有限的资源条件下,获取最大的收益)
2.目标函数和约束条件都是决策变量的线性函数,即不存在等
3.线性规划模型:在一组线性约束条件下,求线性目标函数的最大值或最小值。
而数学建模的过程,就是把题目“翻译”成数学语言的过程一组公式,加上对这组公式含义的解释,就是一个数学模型。
2.5线型规划模型求解
1.线性规划求解可采用单纯形法
2.推荐采用matlab、python的相关函数进行求解
三、代码求解
在代码求解这一部分,其中要用到 Matlab linprog函数这一函数:

f——目标函数的系数向量(必须是求最小值形式下的)
A , b——不等式约束条件的变量系数矩阵和常数项矩阵(必须是≤形式)
Aeq , beq——等式约束条件的系数矩阵和常数项矩阵
lb , ub——决策变量的最小取值和最大取值
x是返回的最优解的变量取值, fval返回目标函数的最优值
注意: 要调用linprog函数,变量必须是标准形式,即目标函数是求最小值,约束条件都是小于等于号或等号;如果不满足标准形式,我们可以用同乘 ”- ”变号来继续求解。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)