数学建模之数学模型-1:线性规划

文章目录

线性规划

线性规划的基本概念

线性规划问题可以分为两类问题:

(1)如何合理地使用有限的资源以得到最大的效益。

(2)为了达到一定的目的,如何组织生产或安排相关计划以使消耗资源达到最少。
决策变量 :问题中可以控制的变化的因素,通常记为: x i , i = 1 , 2 , . . . , n x_i,i=1,2,...,n xi,i=1,2,...,n它的值可以至少在某一个范围内变化,决策变量可以分为两类:离散变量和连续变量。
目标函数 :通过决策变量构造的函数来表达决策者的某种愿望。
约束条件:问题中所满足的条件。

线性规划的数学模型

此类规划问题具有以下特征:

(1)用决策变量表示可控因素,变量的一组取值 ( x 1 , x 2 , . . . , x n ) (x_1,x_2,...,x_n) (x1,x2,...,xn)代表一个解决方案,通常要求非负

(2)存在一定的约束条件,可以用自变量的线性方程或者线性不等式来表示。

(3)都有一个需达成的目标,该目标是自变量的线性函数,称为目标函数,根据需要使目标函数最大化或者最小化。
其一般的模式
max ⁡ z = ∑ i = 1 n c i x i s . t . { ∑ j = 1 n a 1 j x j ⩽ b 1 ∑ j = 1 n a 2 j x j ⩽ b 2 . . . . . . ∑ j = 1 n a m j x j ⩽ b m x 1 . . . , x i . . . , x n ⩾ 0 \max z=\sum_{i=1}^n{c_ix_i} \\ s.t.\left\{ \begin{array}{c} \sum_{j=1}^n{a_{1j}x_j}\leqslant b_1\\ \sum_{j=1}^n{a_{2j}x_j}\leqslant b_2\\ ......\\ \sum_{j=1}^n{a_{mj}x_j}\leqslant b_m\\ x_1...,x_i...,x_n\geqslant 0\\ \end{array} \right. maxz=i=1∑ncixis.t.⎩ ⎨ ⎧∑j=1na1jxj⩽b1∑j=1na2jxj⩽b2......∑j=1namjxj⩽bmx1...,xi...,xn⩾0

线性规划的标准模型

由于线性规划模型的目标函数和约束条件各有多种表现形式,为了得到一种普适的求解方法,要将其标准化:

  • 目标函数一律是求最大值
  • 约束条件为等式
  • 约束条件右端的常数项 b i b_i bi一律为非负值,即 b i ⩾ 0 b_i\geqslant0 bi⩾0
  • 变量 x j x_j xj取值一律为非负值,即 x j ⩾ 0 x_j\geqslant0 xj⩾0
    标准形式的表示方法有如下三种:
  1. max ⁡ z = ∑ i = 1 n c i x i s . t . { ∑ j = 1 n a 1 j x j ⩽ b 1 ∑ j = 1 n a 2 j x j ⩽ b 2 . . . . . . ∑ j = 1 n a m j x j ⩽ b m x 1 . . . , x i . . . , x n ⩾ 0 \max z=\sum_{i=1}^n{c_ix_i} \\ s.t.\left\{ \begin{array}{c} \sum_{j=1}^n{a_{1j}x_j}\leqslant b_1\\ \sum_{j=1}^n{a_{2j}x_j}\leqslant b_2\\ ......\\ \sum_{j=1}^n{a_{mj}x_j}\leqslant b_m\\ x_1...,x_i...,x_n\geqslant 0\\ \end{array} \right. maxz=i=1∑ncixis.t.⎩ ⎨ ⎧∑j=1na1jxj⩽b1∑j=1na2jxj⩽b2......∑j=1namjxj⩽bmx1...,xi...,xn⩾0
  2. max ⁡ z = ∑ i = 1 n c i x i s . t . { ∑ j = 1 n a i j x j ⩽ b i , i = 1 , . . . , m x j ⩾ 0 , j = 1 , 2 , . . . , n \max z=\sum_{i=1}^n{c_ix_i} \\ s.t.\left\{ \begin{array}{c} \sum_{j=1}^n{a_{ij}x_j}\leqslant b_i,i=1,...,m\\ x_j\geqslant 0,j=1,2,...,n\\ \end{array} \right. maxz=i=1∑ncixis.t.{∑j=1naijxj⩽bi,i=1,...,mxj⩾0,j=1,2,...,n
    3. max ⁡ z = C X s . t . { A X = b X ⩾ 0 \max z=\boldsymbol{CX} \\ s.t.\left\{ \begin{array}{c} \boldsymbol{AX}=\boldsymbol{b}\\ \boldsymbol{X}\geqslant 0\\ \end{array} \right. maxz=CXs.t.{AX=bX⩾0

对非标准形式标准化

  • 目标函数的转化 :
    最小值的话就乘 − 1 -1 −1
  • 约束条件右端常数项化为非负值 :
    同乘 − 1 -1 −1,注意不等式要变号
  • 不等式约束转化为等式约束
    引入偏差变量:偏差变量恒正
  • 变量约束的转化
    如果 x j ⩽ 0 x_j\leqslant0 xj⩽0,令 x j ′ = − x j x_{j}^{'}=-x_j xj′=−xj即可,显然 x j ′ ⩾ 0 x_{j}^{'}\geqslant0 xj′⩾0
    如果无约束是自由变量可以: x j x_{j} xj= x j ′ − x j ′ ′ x_{j}^{'}-x_{j}^{''} xj′−xj′′ , x j ′ ⩾ 0 x_{j}^{'}\geqslant0 xj′⩾0, x j ′ ′ ⩾ 0 x_{j}^{''}\geqslant0 xj′′⩾0

线性规划的典型建模:运输问题

运输问题 :某物资有 m m m个产地 A 1 A_1 A1, A 2 A_2 A2... A m A_m Am,其产量分别为 a 1 a_1 a1, a 2 a_2 a2... a m a_m am;有 n n n个销地 B 1 B_1 B1, B 2 B_2 B2... B m B_m Bm,其销量分别为 b 1 b_1 b1, b 2 b_2 b2... b m b_m bm;从产地 A i A_{i} Ai到销地 B j B_{j} Bj的单位运价为 c i j c_{ij} cij,问怎样调运物资才能使得总运费最少?

数学模型的建立

设从 A i A_{i} Ai到销地 B j B_{j} Bj的运输量为 x i j x_{ij} xij则该问题的数学模型:
min ⁡ z = ∑ i = 1 m ∑ j = 1 n c i j x i j s . t . { ∑ i = 1 m x i j ⩾ b j , j = 1 , 2 , . . . , n ∑ j = 1 n x i j ⩽ a i , i = 1 , 2 , . . . , m x i j ⩾ 0 , j = 1 , 2 , . . . , n , i = 1 , 2 , . . . , m \min z=\sum_{i=1}^m{\sum_{j=1}^n{c_{ij}x_{ij}}} \\ s.t.\left\{ \begin{array}{c} \sum_{i=1}^m{x_{ij}}\geqslant b_j,j=1,2,...,n\\ \sum_{j=1}^n{x_{ij}}\leqslant a_i,i=1,2,...,m\\ x_{ij}\geqslant 0,j=1,2,...,n,i=1,2,...,m\\ \end{array} \right. minz=i=1∑mj=1∑ncijxijs.t.⎩ ⎨ ⎧∑i=1mxij⩾bj,j=1,2,...,n∑j=1nxij⩽ai,i=1,2,...,mxij⩾0,j=1,2,...,n,i=1,2,...,m

根据总供给量 ∑ i = 1 m a i \sum_{i=1}^{m}a_i ∑i=1mai和总需求量 ∑ j = 1 n b j \sum_{j=1}^{n}b_j ∑j=1nbj之间的关系,可以将运输问题分为两类:

(1)当 ∑ i = 1 m a i = ∑ j = 1 n b j \sum_{i=1}^{m}a_i=\sum_{j=1}^{n}b_j ∑i=1mai=∑j=1nbj,称为产销平衡运输问题

(2)当 ∑ i = 1 m a i ≠ ∑ j = 1 n b j \sum_{i=1}^{m}a_i\ne\sum_{j=1}^{n}b_j ∑i=1mai=∑j=1nbj,称为产销不平衡运输问题

  1. 产销平衡的运输问题数学模型建模为:
    min ⁡ z = ∑ i = 1 m ∑ j = 1 n c i j x i j s . t . { ∑ i = 1 m x i j = b j , j = 1 , 2 , . . . , n ∑ j = 1 n x i j = a i , i = 1 , 2 , . . . , m x i j ⩾ 0 , j = 1 , 2 , . . . , n , i = 1 , 2 , . . . , m ∑ i = 1 m a i = ∑ j = 1 n b j \min z=\sum_{i=1}^m{\sum_{j=1}^n{c_{ij}x_{ij}}} \\ s.t.\left\{ \begin{array}{c} \begin{array}{c} \sum_{i=1}^m{x_{ij}}=b_j,j=1,2,...,n\\ \sum_{j=1}^n{x_{ij}}=a_i,i=1,2,...,m\\ x_{ij}\geqslant 0,j=1,2,...,n,i=1,2,...,m\\ \end{array}\\ \sum_{i=1}^m{a_i}=\sum_{j=1}^n{b_j}\\ \end{array} \right. minz=i=1∑mj=1∑ncijxijs.t.⎩ ⎨ ⎧∑i=1mxij=bj,j=1,2,...,n∑j=1nxij=ai,i=1,2,...,mxij⩾0,j=1,2,...,n,i=1,2,...,m∑i=1mai=∑j=1nbj

  2. 产销不平衡的运输问题

    2.1 产大于销 :构造一个假象的销售地 B n + 1 B_{n+1} Bn+1,其需求量为总产量与总销量之差,即 b n + 1 = ∑ i = 1 m a i − ∑ j = 1 n b j b_{n+1}=\sum_{i=1}^m{a_i}-\sum_{j=1}^n{b_j} bn+1=i=1∑mai−j=1∑nbj
    c i , n + 1 = 0 c_{i,n+1}=0 ci,n+1=0

    那么模型可改写为:
    min ⁡ z = ∑ i = 1 m ∑ j = 1 n + 1 c i j x i j s . t . { ∑ i = 1 m x i j = b j , j = 1 , 2 , . . . , n + 1 ∑ j = 1 n + 1 x i j = a i , i = 1 , 2 , . . . , m x i j ⩾ 0 , j = 1 , 2 , . . . , n + 1 , i = 1 , 2 , . . . , m \min z=\sum_{i=1}^m{\sum_{j=1}^{n+1}{c_{ij}x_{ij}}} \\ s.t.\left\{ \begin{array}{c} \sum_{i=1}^m{x_{ij}}=b_j,j=1,2,...,n+1\\ \sum_{j=1}^{n+1}{x_{ij}}=a_i,i=1,2,...,m\\ x_{ij}\geqslant 0,j=1,2,...,n+1,i=1,2,...,m\\ \end{array} \right. minz=i=1∑mj=1∑n+1cijxijs.t.⎩ ⎨ ⎧∑i=1mxij=bj,j=1,2,...,n+1∑j=1n+1xij=ai,i=1,2,...,mxij⩾0,j=1,2,...,n+1,i=1,2,...,m

    2.2销大于产 :构造一个假想的产地 A m + 1 A_{m+1} Am+1,其产量为总产量与总销量之差,即 a m + 1 = ∑ j = 1 n b j − ∑ i = 1 m a i a_{m+1}=\sum_{j=1}^n{b_j}-\sum_{i=1}^m{a_i} am+1=j=1∑nbj−i=1∑mai
    c m + 1 , j = 0 c_{m+1,j}=0 cm+1,j=0

    那么模型可改写为:
    min ⁡ z = ∑ i = 1 m + 1 ∑ j = 1 n c i j x i j s . t . { ∑ i = 1 m + 1 x i j = b j , j = 1 , 2 , . . . , n ∑ j = 1 n x i j = a i , i = 1 , 2 , . . . , m + 1 x i j ⩾ 0 , j = 1 , 2 , . . . , n , i = 1 , 2 , . . . , m + 1 \min z=\sum_{i=1}^{m+1}{\sum_{j=1}^{n}{c_{ij}x_{ij}}} \\ s.t.\left\{ \begin{array}{c} \sum_{i=1}^{m+1}{x_{ij}}=b_j,j=1,2,...,n\\ \sum_{j=1}^{n}{x_{ij}}=a_i,i=1,2,...,m+1\\ x_{ij}\geqslant 0,j=1,2,...,n,i=1,2,...,m+1\\ \end{array} \right. minz=i=1∑m+1j=1∑ncijxijs.t.⎩ ⎨ ⎧∑i=1m+1xij=bj,j=1,2,...,n∑j=1nxij=ai,i=1,2,...,m+1xij⩾0,j=1,2,...,n,i=1,2,...,m+1

  3. 有转运的运输问题

    实际生活中一个站点不可能只做输入输出,于是就存在了中转站。

    转运问题的思路是将其转化为产销平衡问题,为此假设最大可能中转量 Q Q Q为某个大于等于总产量 ∑ i = 1 m a i \sum_{i=1}^{m}a_i ∑i=1mai的数,具有以下特点:

    (1)产销平衡时候: Q = ∑ i = 1 m a i = ∑ j = 1 m b j Q=\sum_{i=1}^{m}a_i=\sum_{j=1}^{m}b_j Q=i=1∑mai=j=1∑mbj

    (2)纯中转站视为输入输出量为 Q Q Q的一个产地和销地

    (3)兼中转站的产地 A i A_i Ai视为输入量为 Q − a i Q-a_i Q−ai的销地和输出量为 Q Q Q的产地

    (3)兼中转站的销地 B j B_j Bj视为输出量为 Q − b j Q-b_j Q−bj的销地和输入量为 Q Q Q的销地

相关推荐
数模竞赛Paid answer6 小时前
2024年国赛高教杯数学建模A题板凳龙闹元宵解题全过程文档及程序
数学建模·全国大学生数学建模竞赛·国赛高教杯
鸭鸭鸭进京赶烤8 小时前
数学建模:解锁智能计算的密码!
人工智能·计算机网络·算法·数学建模·信息可视化·机器人·信息与通信
金融OG1 天前
0.1 量海航行:量化因子列表汇总(持续更新)
人工智能·python·机器学习·数学建模·金融
瓦力的狗腿子2 天前
Starlink卫星动力学系统仿真建模番外篇5-太阳敏感器
算法·数学建模
数学建模BOOM4 天前
MATLAB更改图论的布局:设置layout
数学建模
青橘MATLAB学习4 天前
模糊综合评价法:原理、步骤与MATLAB实现
开发语言·算法·数学建模·matlab·分类
数模竞赛Paid answer4 天前
2021年全国研究生数学建模竞赛华为杯E题信号干扰下的超宽带(UWB)精确定位问题求解全过程文档及程序
数学建模·数据分析·研究生数学建模·华为杯数学建模
88号技师7 天前
2025年3月一区SCI-混沌进化优化算法Chaotic evolution optimization-附Matlab免费代码
开发语言·人工智能·算法·数学建模·matlab·优化算法
夏子曦7 天前
算法——数学建模的十大常用算法
算法·数学建模